From 265c228f4a8f233d863f35df9f8e888918902cdc Mon Sep 17 00:00:00 2001 From: Robert Attard Date: Mon, 3 Jan 2022 18:51:10 -0500 Subject: Int.digits & int.undigits --- test/gleam/int_test.gleam | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) (limited to 'test') diff --git a/test/gleam/int_test.gleam b/test/gleam/int_test.gleam index 07832dd..1fbc102 100644 --- a/test/gleam/int_test.gleam +++ b/test/gleam/int_test.gleam @@ -282,3 +282,37 @@ pub fn product_test() { int.product([1, 2, 3]) |> should.equal(6) } + +pub fn digits_test() { + int.digits(123, 10) + |> should.equal(Ok([1, 2, 3])) + + int.digits(-123, 10) + |> should.equal(Ok([-1, -2, -3])) + + int.digits(123, 2) + |> should.equal(Ok([1, 1, 1, 1, 0, 1, 1])) + + int.digits(123, 1) + |> should.equal(Error(int.InvalidBase)) +} + +pub fn undigits_test() { + int.undigits([], 10) + |> should.equal(Ok(0)) + + int.undigits([1, 2, 3], 10) + |> should.equal(Ok(123)) + + int.undigits([-1, -2, -3], 10) + |> should.equal(Ok(-123)) + + int.undigits([1, 1, 1, 1, 0, 1, 1], 2) + |> should.equal(Ok(123)) + + int.undigits([1, 2, 3], 1) + |> should.equal(Error(int.InvalidBase)) + + int.undigits([1, 1, 2], 2) + |> should.equal(Error(int.InvalidBase)) +} -- cgit v1.2.3