deno.land / std@0.224.0 / webgpu / _test_util.ts

_test_util.ts
View Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
// Copyright 2018-2024 the Deno authors. All rights reserved. MIT license.
async function checkIsWsl() { return Deno.build.os === "linux" && await hasMicrosoftProcVersion();
async function hasMicrosoftProcVersion() { // https://github.com/microsoft/WSL/issues/423#issuecomment-221627364 try { const procVersion = await Deno.readTextFile("/proc/version"); return /microsoft/i.test(procVersion); } catch { return false; } }}
let isCI: boolean;try { isCI = (Deno.env.get("CI")?.length ?? 0) > 0;} catch { isCI = true;}
// Skip these tests on linux CI, because the vulkan emulator is not good enough// yet, and skip on macOS CI because these do not have virtual GPUs.const isLinuxOrMacCI = (Deno.build.os === "linux" || Deno.build.os === "darwin") && isCI;// Skip these tests in WSL because it doesn't have good GPU support.const isWsl = await checkIsWsl();
export const ignore = isWsl || isLinuxOrMacCI;
export function cleanUp(device: GPUDevice) { device.destroy();
// TODO(lucacasonato): webgpu spec should add a explicit destroy method for // adapters. // @ts-ignore Until WebGPU resources cleanup is automatically handled. const resources = Object.keys(Deno[Deno.internal].core.resources()); // @ts-ignore Until WebGPU resources cleanup is automatically handled. Deno[Deno.internal].core.close(Number(resources[resources.length - 1]));}
std

Version Info

Tagged at
6 months ago