mirror of
https://github.com/gpujs/gpu.js.git
synced 2025-12-08 20:35:56 +00:00
63 lines
2.0 KiB
JavaScript
63 lines
2.0 KiB
JavaScript
const { assert, skip, test, module: describe } = require('qunit');
|
|
const { GPU, WebGLKernel, WebGL2Kernel, HeadlessGLKernel, CPUKernel } = require('../../src');
|
|
|
|
describe('internal: modes');
|
|
|
|
test('modes no settings auto', () => {
|
|
const gpu = new GPU();
|
|
if (GPU.isHeadlessGLSupported) {
|
|
assert.equal(gpu.Kernel, HeadlessGLKernel);
|
|
} else if (GPU.isWebGL2Supported) {
|
|
assert.equal(gpu.Kernel, WebGL2Kernel);
|
|
} else if (GPU.isWebGLSupported) {
|
|
assert.equal(gpu.Kernel, WebGLKernel);
|
|
}
|
|
});
|
|
test('modes null settings auto', () => {
|
|
const gpu = new GPU(null);
|
|
if (GPU.isHeadlessGLSupported) {
|
|
assert.equal(gpu.Kernel, HeadlessGLKernel);
|
|
} else if (GPU.isWebGL2Supported) {
|
|
assert.equal(gpu.Kernel, WebGL2Kernel);
|
|
} else if (GPU.isWebGLSupported) {
|
|
assert.equal(gpu.Kernel, WebGLKernel);
|
|
}
|
|
});
|
|
test('modes empty object auto', () => {
|
|
const gpu = new GPU({});
|
|
if (GPU.isHeadlessGLSupported) {
|
|
assert.equal(gpu.Kernel, HeadlessGLKernel);
|
|
} else if (GPU.isWebGL2Supported) {
|
|
assert.equal(gpu.Kernel, WebGL2Kernel);
|
|
} else if (GPU.isWebGLSupported) {
|
|
assert.equal(gpu.Kernel, WebGLKernel);
|
|
}
|
|
});
|
|
test('modes gpu', () => {
|
|
const gpu = new GPU({ mode: 'gpu' });
|
|
if (GPU.isHeadlessGLSupported) {
|
|
assert.equal(gpu.Kernel, HeadlessGLKernel);
|
|
} else if (GPU.isWebGL2Supported) {
|
|
assert.equal(gpu.Kernel, WebGL2Kernel);
|
|
} else if (GPU.isWebGLSupported) {
|
|
assert.equal(gpu.Kernel, WebGLKernel);
|
|
}
|
|
});
|
|
test('modes cpu', () => {
|
|
const gpu = new GPU({ mode: 'cpu' });
|
|
assert.equal(gpu.Kernel, CPUKernel);
|
|
});
|
|
(GPU.isWebGLSupported ? test : skip)('modes webgl', () => {
|
|
const gpu = new GPU({ mode: 'webgl' });
|
|
assert.equal(gpu.Kernel, WebGLKernel);
|
|
});
|
|
(GPU.isWebGL2Supported ? test : skip)('modes webgl2', () => {
|
|
const gpu = new GPU({ mode: 'webgl2' });
|
|
assert.equal(gpu.Kernel, WebGL2Kernel);
|
|
});
|
|
(GPU.isHeadlessGLSupported ? test : skip)('modes headlessgl', () => {
|
|
const gpu = new GPU({ mode: 'headlessgl' });
|
|
assert.equal(gpu.Kernel, HeadlessGLKernel
|
|
);
|
|
});
|