Skip to content

Commit 20b2702

Browse files
author
Yang Gu
committed
Make fromPixels tests more clear
1 parent 9516ba1 commit 20b2702

File tree

1 file changed

+30
-15
lines changed

1 file changed

+30
-15
lines changed

tfjs-backend-webgpu/src/backend_webgpu_test.ts

Lines changed: 30 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -220,7 +220,6 @@ describeWebGPU('backend webgpu', () => {
220220
const useImport = tf.env().getBool('WEBGPU_USE_IMPORT');
221221
const backend = tf.backend() as WebGPUBackend;
222222
const textureManager = backend.getTextureManager();
223-
textureManager.dispose();
224223

225224
{
226225
const video = document.createElement('video');
@@ -244,23 +243,38 @@ describeWebGPU('backend webgpu', () => {
244243
await new Promise(go => (video as any).requestVideoFrameCallback(go));
245244
}
246245

247-
for (const tmpUseImport of [false, true]) {
248-
tf.env().set('WEBGPU_USE_IMPORT', tmpUseImport);
246+
{
247+
textureManager.dispose();
248+
tf.env().set('WEBGPU_USE_IMPORT', true);
249249
const res = await tf.browser.fromPixelsAsync(video);
250250
expect(res.shape).toEqual([90, 160, 3]);
251251
const data = await res.data();
252252
expect(data.length).toEqual(90 * 160 * 3);
253-
const freeTexturesAfterFromPixel = textureManager.getNumFreeTextures();
254-
const usedTexturesAfterFromPixel = textureManager.getNumUsedTextures();
255-
expect(freeTexturesAfterFromPixel).toEqual(1);
256-
expect(usedTexturesAfterFromPixel).toEqual(0);
253+
const freeTexturesAfterFromPixels = textureManager.getNumFreeTextures();
254+
expect(freeTexturesAfterFromPixels).toEqual(0);
255+
const usedTexturesAfterFromPixels = textureManager.getNumUsedTextures();
256+
expect(usedTexturesAfterFromPixels).toEqual(0);
257+
}
258+
259+
{
260+
textureManager.dispose();
261+
tf.env().set('WEBGPU_USE_IMPORT', false);
262+
const res = await tf.browser.fromPixelsAsync(video);
263+
expect(res.shape).toEqual([90, 160, 3]);
264+
const data = await res.data();
265+
expect(data.length).toEqual(90 * 160 * 3);
266+
const freeTexturesAfterFromPixels = textureManager.getNumFreeTextures();
267+
expect(freeTexturesAfterFromPixels).toEqual(1);
268+
const usedTexturesAfterFromPixels = textureManager.getNumUsedTextures();
269+
expect(usedTexturesAfterFromPixels).toEqual(0);
257270
}
258271

259272
document.body.removeChild(video);
260273
tf.env().set('WEBGPU_USE_IMPORT', useImport);
261274
}
262275

263276
{
277+
textureManager.dispose();
264278
const img = new Image(10, 10);
265279
img.src = 'data:image/gif;base64' +
266280
',R0lGODlhAQABAIAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==';
@@ -275,13 +289,14 @@ describeWebGPU('backend webgpu', () => {
275289
const dataImage = await resImage.data();
276290
expect(dataImage[0]).toEqual(0);
277291
expect(dataImage.length).toEqual(10 * 10 * 3);
278-
const freeTexturesAfterFromPixel = textureManager.getNumFreeTextures();
279-
const usedTexturesAfterFromPixel = textureManager.getNumUsedTextures();
280-
expect(freeTexturesAfterFromPixel).toEqual(2);
281-
expect(usedTexturesAfterFromPixel).toEqual(0);
292+
const freeTexturesAfterFromPixels = textureManager.getNumFreeTextures();
293+
expect(freeTexturesAfterFromPixels).toEqual(1);
294+
const usedTexturesAfterFromPixels = textureManager.getNumUsedTextures();
295+
expect(usedTexturesAfterFromPixels).toEqual(0);
282296
}
283297

284298
{
299+
textureManager.dispose();
285300
const img = new Image(10, 10);
286301
img.src =
287302
'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAIAAAACUFjqAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAAEnQAABJ0Ad5mH3gAAABfSURBVChTY/gPBu8NLd/KqLxT1oZw4QAqDZSDoPeWDj9WrYUIAgG6NBAhm4FFGoIgxuCUBiKgMfikv1bW4pQGav334wdUGshBk/6SVQAUh0p/mzIDTQ6oFSGNHfz/DwAwi8mNzTi6rwAAAABJRU5ErkJggg==';
@@ -294,10 +309,10 @@ describeWebGPU('backend webgpu', () => {
294309
const dataImage = await resImage.data();
295310
expect(dataImage[0]).toEqual(255);
296311
expect(dataImage.length).toEqual(10 * 10 * 3);
297-
const freeTexturesAfterFromPixel = textureManager.getNumFreeTextures();
298-
const usedTexturesAfterFromPixel = textureManager.getNumUsedTextures();
299-
expect(freeTexturesAfterFromPixel).toEqual(2);
300-
expect(usedTexturesAfterFromPixel).toEqual(0);
312+
const freeTexturesAfterFromPixels = textureManager.getNumFreeTextures();
313+
expect(freeTexturesAfterFromPixels).toEqual(1);
314+
const usedTexturesAfterFromPixels = textureManager.getNumUsedTextures();
315+
expect(usedTexturesAfterFromPixels).toEqual(0);
301316
}
302317
});
303318
});

0 commit comments

Comments
 (0)