Every // ---- section banner dies (132 -> 0): names carry the WHAT. Narration deleted (filename restatements, run-with lines, what-the- next-line-does); every ref/hare cite, task cite, divergence, ABI/ layout contract, and ownership qualifier kept (borrowed-view lines restored where the sweep over-cut). Comment-only proven: all 442 walk-workdir .s and 32 import-probe .s byte-identical before/after; libbyteid 56-roster all-ID.
22 lines
669 B
Plaintext
22 lines
669 B
Plaintext
// Vectors mirror ref/hare/bytes/equal.ha (task #5 @test conversion).
|
|
|
|
package bytes_test;
|
|
|
|
import bytes;
|
|
|
|
// ref/hare/bytes/equal.ha:21.
|
|
|
|
@test fn equal_cases() void = {
|
|
let a: [3]u8; a[0] = 1u8; a[1] = 2u8; a[2] = 3u8;
|
|
let b: [3]u8; b[0] = 1u8; b[1] = 2u8; b[2] = 3u8;
|
|
let c: [3]u8; c[0] = 1u8; c[1] = 4u8; c[2] = 5u8;
|
|
let d: [4]u8; d[0] = 1u8; d[1] = 2u8; d[2] = 3u8; d[3] = 4u8;
|
|
let e: [2]u8; e[0] = 1u8; e[1] = 2u8;
|
|
let z: [1]u8;
|
|
assert(!(!bytes.equal(a[0:3], b[0:3])));
|
|
assert(!( bytes.equal(a[0:3], c[0:3])));
|
|
assert(!( bytes.equal(a[0:3], d[0:4])));
|
|
assert(!( bytes.equal(a[0:3], e[0:2])));
|
|
assert(!(!bytes.equal(z[0:0], z[0:0]))); // empty-empty
|
|
};
|