Move to protobufjs in ts/groups.ts
This commit is contained in:
parent
972a4cba0c
commit
9f0c630574
30 changed files with 1424 additions and 964 deletions
90
ts/test-both/util/Bytes_test.ts
Normal file
90
ts/test-both/util/Bytes_test.ts
Normal file
|
@ -0,0 +1,90 @@
|
|||
// Copyright 2021 Signal Messenger, LLC
|
||||
// SPDX-License-Identifier: AGPL-3.0-only
|
||||
|
||||
import { assert } from 'chai';
|
||||
|
||||
import * as Bytes from '../../Bytes';
|
||||
|
||||
describe('Bytes', () => {
|
||||
it('converts to base64 and back', () => {
|
||||
const bytes = new Uint8Array([1, 2, 3]);
|
||||
|
||||
const base64 = Bytes.toBase64(bytes);
|
||||
assert.strictEqual(base64, 'AQID');
|
||||
|
||||
assert.deepEqual(Bytes.fromBase64(base64), bytes);
|
||||
});
|
||||
|
||||
it('converts to hex and back', () => {
|
||||
const bytes = new Uint8Array([1, 2, 3]);
|
||||
|
||||
const hex = Bytes.toHex(bytes);
|
||||
assert.strictEqual(hex, '010203');
|
||||
|
||||
assert.deepEqual(Bytes.fromHex(hex), bytes);
|
||||
});
|
||||
|
||||
it('converts to string and back', () => {
|
||||
const bytes = new Uint8Array([0x61, 0x62, 0x63]);
|
||||
|
||||
const binary = Bytes.toString(bytes);
|
||||
assert.strictEqual(binary, 'abc');
|
||||
|
||||
assert.deepEqual(Bytes.fromString(binary), bytes);
|
||||
});
|
||||
|
||||
it('converts to binary and back', () => {
|
||||
const bytes = new Uint8Array([0xff, 0x01]);
|
||||
|
||||
const binary = Bytes.toBinary(bytes);
|
||||
assert.strictEqual(binary, '\xff\x01');
|
||||
|
||||
assert.deepEqual(Bytes.fromBinary(binary), bytes);
|
||||
});
|
||||
|
||||
it('concatenates bytes', () => {
|
||||
const result = Bytes.concatenate([
|
||||
Bytes.fromString('hello'),
|
||||
Bytes.fromString(' '),
|
||||
Bytes.fromString('world'),
|
||||
]);
|
||||
|
||||
assert.strictEqual(Bytes.toString(result), 'hello world');
|
||||
});
|
||||
|
||||
describe('isEmpty', () => {
|
||||
it('returns true for `undefined`', () => {
|
||||
assert.strictEqual(Bytes.isEmpty(undefined), true);
|
||||
});
|
||||
|
||||
it('returns true for `null`', () => {
|
||||
assert.strictEqual(Bytes.isEmpty(null), true);
|
||||
});
|
||||
|
||||
it('returns true for an empty Uint8Array', () => {
|
||||
assert.strictEqual(Bytes.isEmpty(new Uint8Array(0)), true);
|
||||
});
|
||||
|
||||
it('returns false for not empty Uint8Array', () => {
|
||||
assert.strictEqual(Bytes.isEmpty(new Uint8Array(123)), false);
|
||||
});
|
||||
});
|
||||
|
||||
describe('isNotEmpty', () => {
|
||||
it('returns false for `undefined`', () => {
|
||||
assert.strictEqual(Bytes.isNotEmpty(undefined), false);
|
||||
});
|
||||
|
||||
it('returns false for `null`', () => {
|
||||
assert.strictEqual(Bytes.isNotEmpty(null), false);
|
||||
});
|
||||
|
||||
it('returns false for an empty Uint8Array', () => {
|
||||
assert.strictEqual(Bytes.isNotEmpty(new Uint8Array(0)), false);
|
||||
});
|
||||
|
||||
it('returns true for not empty Uint8Array', () => {
|
||||
assert.strictEqual(Bytes.isNotEmpty(new Uint8Array(123)), true);
|
||||
});
|
||||
});
|
||||
});
|
Loading…
Add table
Add a link
Reference in a new issue