Uint8Array migration
This commit is contained in:
parent
daf75190b8
commit
4ef0bf96cc
137 changed files with 2202 additions and 3170 deletions
40
ts/test-electron/util/canvasToBytes_test.ts
Normal file
40
ts/test-electron/util/canvasToBytes_test.ts
Normal file
|
@ -0,0 +1,40 @@
|
|||
// Copyright 2021 Signal Messenger, LLC
|
||||
// SPDX-License-Identifier: AGPL-3.0-only
|
||||
|
||||
import { assert } from 'chai';
|
||||
import { IMAGE_JPEG, IMAGE_PNG } from '../../types/MIME';
|
||||
import { sniffImageMimeType } from '../../util/sniffImageMimeType';
|
||||
|
||||
import { canvasToBytes } from '../../util/canvasToBytes';
|
||||
|
||||
describe('canvasToBytes', () => {
|
||||
let canvas: HTMLCanvasElement;
|
||||
beforeEach(() => {
|
||||
canvas = document.createElement('canvas');
|
||||
canvas.width = 100;
|
||||
canvas.height = 200;
|
||||
|
||||
const context = canvas.getContext('2d');
|
||||
if (!context) {
|
||||
throw new Error('Test setup error: cannot get canvas rendering context');
|
||||
}
|
||||
context.fillStyle = '#ff9900';
|
||||
context.fillRect(10, 10, 20, 20);
|
||||
});
|
||||
|
||||
it('converts a canvas to an Uint8Array, JPEG by default', async () => {
|
||||
const result = await canvasToBytes(canvas);
|
||||
|
||||
assert.strictEqual(sniffImageMimeType(result), IMAGE_JPEG);
|
||||
|
||||
// These are just smoke tests.
|
||||
assert.instanceOf(result, Uint8Array);
|
||||
assert.isAtLeast(result.byteLength, 50);
|
||||
});
|
||||
|
||||
it('can convert a canvas to a PNG Uint8Array', async () => {
|
||||
const result = await canvasToBytes(canvas, IMAGE_PNG);
|
||||
|
||||
assert.strictEqual(sniffImageMimeType(result), IMAGE_PNG);
|
||||
});
|
||||
});
|
Loading…
Add table
Add a link
Reference in a new issue