Skip to content

Commit aad86a8

Browse files
committed
Add test for Worker + Offscreen canvas
1 parent dca8de2 commit aad86a8

File tree

2 files changed

+37
-0
lines changed

2 files changed

+37
-0
lines changed

test/all.html

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,8 @@
4343
<script src="features/read-color-texture.js"></script>
4444
<script src="features/read-from-texture.js"></script>
4545
<script src="features/sum-ab.js"></script>
46+
<script src="features/float-output.js"></script>
47+
<script src="features/offscreen-canvas.js"></script>
4648

4749
<!-- internal -->
4850
<script src="internal/context-inheritance.js"></script>

test/features/offscreen-canvas.js

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
(function() {
2+
if (typeof(document) === 'undefined') {
3+
// inside Worker
4+
window = {};
5+
importScripts('../../bin/gpu.js');
6+
7+
onmessage = function(e) {
8+
const gpu = new window.GPU();
9+
10+
postMessage(gpu.getMode());
11+
};
12+
13+
return;
14+
}
15+
16+
// skip test if browser doesn't support Workers or OffscreenCanvas
17+
var test = (typeof(Worker) === 'undefined') || (typeof(OffscreenCanvas) === 'undefined') ?
18+
QUnit.skip : QUnit.test;
19+
20+
test( 'OffscreenCanvas used in Worker', function(assert) {
21+
var worker = new Worker('features/offscreen-canvas.js');
22+
var done = assert.async();
23+
24+
worker.onmessage = function(e) {
25+
var mode = e.data;
26+
27+
assert.equal( mode, 'gpu', 'GPU mode used in Worker' );
28+
29+
done();
30+
};
31+
32+
worker.postMessage('test');
33+
});
34+
35+
})();

0 commit comments

Comments
 (0)