UNPKG

printmaker

Version:

Generate PDF documents and from JavaScript objects

41 lines (32 loc) 1.25 kB
import { describe, expect, it } from '@jest/globals'; import { parseBinaryData } from '../src/binary-data.js'; describe('binary-data', () => { const data = Uint8Array.of(1, 183, 0); describe('parseBinaryData', () => { it('returns original Uint8Array', () => { expect(parseBinaryData(data)).toBe(data); }); it('returns Uint8Array for ArrayBuffer', () => { expect(parseBinaryData(data.buffer)).toEqual(data); }); it('returns Uint8Array for base64-encoded string', () => { expect(parseBinaryData('Abc=`')).toEqual(data); }); it('returns Uint8Array for data URL', () => { expect(parseBinaryData('data:image/jpeg;base64,Abc=`')).toEqual(data); }); it('throws for arrays', () => { expect(() => parseBinaryData([1, 2, 3])).toThrowError( 'Expected Uint8Array, ArrayBuffer, or base64-encoded string, got: [1, 2, 3]' ); }); it('throws for other types', () => { expect(() => parseBinaryData(23)).toThrowError( 'Expected Uint8Array, ArrayBuffer, or base64-encoded string, got: 23' ); expect(() => parseBinaryData(null)).toThrowError( 'Expected Uint8Array, ArrayBuffer, or base64-encoded string, got: null' ); }); }); });