diff options
Diffstat (limited to 'test')
-rw-r--r-- | test/gleam/float_test.gleam | 60 |
1 files changed, 18 insertions, 42 deletions
diff --git a/test/gleam/float_test.gleam b/test/gleam/float_test.gleam index 6fb894f..4c49f69 100644 --- a/test/gleam/float_test.gleam +++ b/test/gleam/float_test.gleam @@ -3,6 +3,7 @@ import gleam/int import gleam/iterator import gleam/list import gleam/order +import gleam/result import gleam/should pub fn parse_test() { @@ -385,53 +386,28 @@ pub fn random_test() { } pub fn modulo_test() { - float.modulo(3.0, by: 2.0) - |> should.equal(Ok(1.0)) - - float.modulo(1.0, by: 0.0) + float.modulo(13.3, by: 0.0) |> should.equal(Error(Nil)) - float.modulo(10.0, by: -1.0) - |> should.equal(Ok(0.0)) - - float.modulo(13.0, by: 3.0) - |> should.equal(Ok(1.0)) - - float.modulo(-13.0, by: 3.0) - |> should.equal(Ok(2.0)) - - float.modulo(13.0, by: -3.0) - |> should.equal(Ok(-2.0)) - - float.modulo(-13.0, by: -3.0) - |> should.equal(Ok(-1.0)) - - float.modulo(3.3, 2.3) - |> should.equal(Ok(1.0)) - - float.modulo(13.3, by: 3.0) - |> should.equal(Ok(1.3)) - - float.modulo(13.0, by: 3.3) - |> should.equal(Ok(3.1)) - - float.modulo(-13.3, by: 3.0) - |> should.equal(Ok(1.3)) - - float.modulo(-13.0, by: 3.3) - |> should.equal(Ok(3.1)) - - float.modulo(13.3, by: -3.0) - |> should.equal(Ok(-1.3)) + float.modulo(13.3, by: 3.3) + |> result.unwrap(or: 0.0) + |> float.loosely_equals(with: 0.1, tolerating: 0.001) + |> should.be_true - float.modulo(13.0, by: -3.3) - |> should.equal(Ok(-3.1)) + float.modulo(-13.3, by: 3.3) + |> result.unwrap(or: 0.0) + |> float.loosely_equals(with: 3.2, tolerating: 0.001) + |> should.be_true - float.modulo(-13.3, by: -3.0) - |> should.equal(Ok(1.3)) + float.modulo(13.3, by: -3.3) + |> result.unwrap(or: 0.0) + |> float.loosely_equals(with: -3.2, tolerating: 0.001) + |> should.be_true - float.modulo(-13.0, by: -3.3) - |> should.equal(Ok(3.1)) + float.modulo(-13.3, by: -3.3) + |> result.unwrap(or: 0.0) + |> float.loosely_equals(with: -0.1, tolerating: 0.001) + |> should.be_true } pub fn divide_test() { |