aboutsummaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
Diffstat (limited to 'test')
-rw-r--r--test/gleam/float_test.gleam60
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() {