mirror of
https://github.com/bitwarden/browser.git
synced 2024-12-21 16:18:28 +01:00
36b7d30804
* Change everything to Uint8Array related to https://github.com/jestjs/jest/issues/14379 * Work on failing type tests * Revert changes to custom matcher setup * Remove last BufferArrays from tests * Fix custom matcher type errors in vscode * Remove errant `.buffer` calls on Uint8Arrays * Encryption Pair should serialize Array Buffer and Uint8Array * Fix EncArrayBuffer encryption --------- Co-authored-by: Thomas Rittson <trittson@bitwarden.com>
32 lines
847 B
TypeScript
32 lines
847 B
TypeScript
/**
|
|
* The inbuilt toEqual() matcher will always return TRUE when provided with 2 ArrayBuffers.
|
|
* This is because an ArrayBuffer must be wrapped in a new Uint8Array to be accessible.
|
|
* This custom matcher will automatically instantiate a new Uint8Array on the received value
|
|
* (and optionally, the expected value) and then call toEqual() on the resulting Uint8Arrays.
|
|
*/
|
|
export const toEqualBuffer: jest.CustomMatcher = function (
|
|
received: ArrayBuffer | Uint8Array,
|
|
expected: ArrayBuffer | Uint8Array
|
|
) {
|
|
received = new Uint8Array(received);
|
|
expected = new Uint8Array(expected);
|
|
|
|
if (this.equals(received, expected)) {
|
|
return {
|
|
message: () => `expected
|
|
${received}
|
|
not to match
|
|
${expected}`,
|
|
pass: true,
|
|
};
|
|
}
|
|
|
|
return {
|
|
message: () => `expected
|
|
${received}
|
|
to match
|
|
${expected}`,
|
|
pass: false,
|
|
};
|
|
};
|