aboutsummaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorPeter Saxton <peterhsaxton@gmail.com>2023-01-11 07:58:30 +0100
committerLouis Pilfold <louis@lpil.uk>2023-01-12 13:22:23 +0000
commit1be6de82550b88562ecb16822beb0bb3791a3d30 (patch)
tree1c1c193c1124747bd1d42e7356ef31292c83694e /test
parenta7fccb80940c9ce3dd6d8b08bd279d492a9ba97d (diff)
downloadgleam_stdlib-1be6de82550b88562ecb16822beb0bb3791a3d30.tar.gz
gleam_stdlib-1be6de82550b88562ecb16822beb0bb3791a3d30.zip
add decode1 function
Diffstat (limited to 'test')
-rw-r--r--test/gleam/dynamic_test.gleam20
1 files changed, 20 insertions, 0 deletions
diff --git a/test/gleam/dynamic_test.gleam b/test/gleam/dynamic_test.gleam
index 9d1aeba..0caf8c5 100644
--- a/test/gleam/dynamic_test.gleam
+++ b/test/gleam/dynamic_test.gleam
@@ -838,6 +838,26 @@ pub fn any_test() {
|> should.equal(Error([DecodeError("another type", "String", path: [])]))
}
+type One(a) {
+ One(a)
+}
+
+pub fn decode1_test() {
+ let decoder = dynamic.decode1(One, dynamic.element(0, dynamic.int))
+
+ #(1)
+ |> dynamic.from
+ |> decoder
+ |> should.equal(Ok(One(1)))
+
+ #(1.3)
+ |> dynamic.from
+ |> decoder
+ |> should.equal(Error([
+ DecodeError(expected: "Int", found: "Float", path: ["0"]),
+ ]))
+}
+
type Two(a, b) {
Two(a, b)
}