diff options
author | Louis Pilfold <louis@lpil.uk> | 2023-10-26 12:13:33 +0100 |
---|---|---|
committer | Louis Pilfold <louis@lpil.uk> | 2023-10-26 12:24:40 +0100 |
commit | 82c7406c84e90c1dadb85fc65925565812dd28ae (patch) | |
tree | e11d97e64637464610c0c9cd2c845dd5ba97a1c1 /test | |
parent | 368252c059ffd951958664013001b4037d6b8953 (diff) | |
download | gleam_stdlib-82c7406c84e90c1dadb85fc65925565812dd28ae.tar.gz gleam_stdlib-82c7406c84e90c1dadb85fc65925565812dd28ae.zip |
Deprecate gleam/base
Diffstat (limited to 'test')
-rw-r--r-- | test/gleam/bit_array_test.gleam | 86 |
1 files changed, 86 insertions, 0 deletions
diff --git a/test/gleam/bit_array_test.gleam b/test/gleam/bit_array_test.gleam index 65a8009..7095205 100644 --- a/test/gleam/bit_array_test.gleam +++ b/test/gleam/bit_array_test.gleam @@ -133,3 +133,89 @@ pub fn is_utf8_test() { |> bit_array.is_utf8 |> should.be_false } + +pub fn base64_encode_test() { + <<255, 127, 254, 252>> + |> bit_array.base64_encode(True) + |> should.equal("/3/+/A==") + + <<255, 127, 254, 252>> + |> bit_array.base64_encode(False) + |> should.equal("/3/+/A") + + <<0, 0, 0>> + |> bit_array.base64_encode(True) + |> should.equal("AAAA") + + <<>> + |> bit_array.base64_encode(True) + |> should.equal("") +} + +pub fn base64_decode_test() { + "/3/+/A==" + |> bit_array.base64_decode() + |> should.equal(Ok(<<255, 127, 254, 252>>)) + + "/3/+/A" + |> bit_array.base64_decode() + |> should.equal(Ok(<<255, 127, 254, 252>>)) + + "AAAA" + |> bit_array.base64_decode() + |> should.equal(Ok(<<0, 0, 0>>)) + + "" + |> bit_array.base64_decode() + |> should.equal(Ok(<<>>)) + + ")!" + |> bit_array.base64_decode() + |> should.equal(Error(Nil)) +} + +pub fn base64_url_encode_test() { + <<255, 127, 254, 252>> + |> bit_array.base64_url_encode(True) + |> should.equal("_3_-_A==") + + <<255, 127, 254, 252>> + |> bit_array.base64_url_encode(False) + |> should.equal("_3_-_A") + + <<0, 0, 0>> + |> bit_array.base64_url_encode(True) + |> should.equal("AAAA") + + <<>> + |> bit_array.base64_url_encode(True) + |> should.equal("") +} + +pub fn base64_url_decode_test() { + "_3_-_A==" + |> bit_array.base64_url_decode() + |> should.equal(Ok(<<255, 127, 254, 252>>)) + + "_3_-_A" + |> bit_array.base64_url_decode() + |> should.equal(Ok(<<255, 127, 254, 252>>)) + + "AAAA" + |> bit_array.base64_url_decode() + |> should.equal(Ok(<<0, 0, 0>>)) + + "" + |> bit_array.base64_url_decode() + |> should.equal(Ok(<<>>)) + + ")!" + |> bit_array.base64_url_decode() + |> should.equal(Error(Nil)) +} + +pub fn decode64_crash_regression_1_test() { + "aGktdGhlcmU.uWUWvrAleKQ2jsWcU97H-RPJ5qRRcE_s" + |> bit_array.base64_decode() + |> should.equal(Error(Nil)) +} |