diff options
author | Peter Saxton <peterhsaxton@gmail.com> | 2020-05-28 14:15:02 +0100 |
---|---|---|
committer | Louis Pilfold <louis@lpil.uk> | 2020-05-29 13:06:51 +0100 |
commit | e69407b2e9efb230814fbf356975c22f5a826767 (patch) | |
tree | 3034c68d72de0f0a584fc5c79125cecb307d3884 /test | |
parent | 8d08dbc56cd67261259f557248f99581561248bc (diff) | |
download | gleam_stdlib-e69407b2e9efb230814fbf356975c22f5a826767.tar.gz gleam_stdlib-e69407b2e9efb230814fbf356975c22f5a826767.zip |
add a binary module
Diffstat (limited to 'test')
-rw-r--r-- | test/gleam/binary_test.gleam | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/test/gleam/binary_test.gleam b/test/gleam/binary_test.gleam new file mode 100644 index 0000000..580aff7 --- /dev/null +++ b/test/gleam/binary_test.gleam @@ -0,0 +1,42 @@ +import gleam/binary +import gleam/should + +pub fn length_test() { + binary.byte_size(binary.from_string("hello")) + |> should.equal(5) + + binary.byte_size(binary.from_string("")) + |> should.equal(0) + +} + +pub fn part_test() { + binary.from_string("hello") + |> binary.part(0, 5) + |> should.equal(binary.from_string("hello")) + + binary.from_string("hello") + |> binary.part(0, 0) + |> should.equal(binary.from_string("")) + + binary.from_string("hello") + |> binary.part(2, 2) + |> should.equal(binary.from_string("ll")) + + binary.from_string("hello") + |> binary.part(5, -2) + |> should.equal(binary.from_string("lo")) +} + +pub fn u32_test() { + let Ok(bin) = binary.int_to_u32(0) + should.equal(4, binary.byte_size(bin)) + should.equal(Ok(0), binary.int_from_u32(bin)) + + let Ok(bin) = binary.int_to_u32(4294967295) + should.equal(4, binary.byte_size(bin)) + should.equal(Ok(4294967295), binary.int_from_u32(bin)) + + should.equal(Error(Nil), binary.int_from_u32(binary.from_string(""))) + should.equal(Error(Nil), binary.int_from_u32(binary.from_string("12345"))) +} |