diff options
author | Chris Knight <cknight1234@gmail.com> | 2020-06-25 11:40:51 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-06-25 06:40:51 -0400 |
commit | d9896d64ce919a46a6e8c6666c3b87cc9ae79b7b (patch) | |
tree | d91a28318521361d7c559cb5380051df466b7589 /std/bytes/test.ts | |
parent | c98038a03228d527cd90d9f1fc0118a3fe47dce0 (diff) |
refactor: shift copyBytes and tweak deps to reduce dependencies (#6469)
Diffstat (limited to 'std/bytes/test.ts')
-rw-r--r-- | std/bytes/test.ts | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/std/bytes/test.ts b/std/bytes/test.ts index 8b03de926..25af2a35b 100644 --- a/std/bytes/test.ts +++ b/std/bytes/test.ts @@ -9,6 +9,7 @@ import { repeat, concat, contains, + copyBytes, } from "./mod.ts"; import { assertEquals, assertThrows, assert } from "../testing/asserts.ts"; import { encode, decode } from "../encoding/utf8.ts"; @@ -117,3 +118,37 @@ Deno.test("[bytes] contain", () => { assert(contains(new Uint8Array([0, 1, 2, 3]), new Uint8Array([2, 3]))); }); + +Deno.test("[io/tuil] copyBytes", function (): void { + const dst = new Uint8Array(4); + + dst.fill(0); + let src = Uint8Array.of(1, 2); + let len = copyBytes(src, dst, 0); + assert(len === 2); + assertEquals(dst, Uint8Array.of(1, 2, 0, 0)); + + dst.fill(0); + src = Uint8Array.of(1, 2); + len = copyBytes(src, dst, 1); + assert(len === 2); + assertEquals(dst, Uint8Array.of(0, 1, 2, 0)); + + dst.fill(0); + src = Uint8Array.of(1, 2, 3, 4, 5); + len = copyBytes(src, dst); + assert(len === 4); + assertEquals(dst, Uint8Array.of(1, 2, 3, 4)); + + dst.fill(0); + src = Uint8Array.of(1, 2); + len = copyBytes(src, dst, 100); + assert(len === 0); + assertEquals(dst, Uint8Array.of(0, 0, 0, 0)); + + dst.fill(0); + src = Uint8Array.of(3, 4); + len = copyBytes(src, dst, -2); + assert(len === 2); + assertEquals(dst, Uint8Array.of(3, 4, 0, 0)); +}); |