diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-06-12 05:43:14 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-06-12 05:43:14 +0000 |
commit | 8dd16259287f58f9273002717ec4d27e97127719 (patch) | |
tree | 3863e62a53829a84037444beab3abd4ed9dfc7d0 /testing/web-platform/mozilla/tests/webgpu/common/runtime/helper/options.js | |
parent | Releasing progress-linux version 126.0.1-1~progress7.99u1. (diff) | |
download | firefox-8dd16259287f58f9273002717ec4d27e97127719.tar.xz firefox-8dd16259287f58f9273002717ec4d27e97127719.zip |
Merging upstream version 127.0.
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'testing/web-platform/mozilla/tests/webgpu/common/runtime/helper/options.js')
-rw-r--r-- | testing/web-platform/mozilla/tests/webgpu/common/runtime/helper/options.js | 53 |
1 files changed, 46 insertions, 7 deletions
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/' } }; /** |