aboutsummaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorLouis Pilfold <louis@lpil.uk>2021-09-11 14:56:20 +0100
committerLouis Pilfold <louis@lpil.uk>2021-09-11 14:56:20 +0100
commitff8be8c4e25220e1fae4bbb4cbd20d1f2072aae0 (patch)
tree740d47b3b2e93545fbddc7fd6858517f4092aa71 /test
parenta6b75f614c97f7cf2bede89b5769bfcd13c31571 (diff)
downloadgleam_stdlib-ff8be8c4e25220e1fae4bbb4cbd20d1f2072aae0.tar.gz
gleam_stdlib-ff8be8c4e25220e1fae4bbb4cbd20d1f2072aae0.zip
JS decode field for objects
Diffstat (limited to 'test')
-rw-r--r--test/gleam/dynamic_test.gleam22
1 files changed, 22 insertions, 0 deletions
diff --git a/test/gleam/dynamic_test.gleam b/test/gleam/dynamic_test.gleam
index c062d91..ae3285b 100644
--- a/test/gleam/dynamic_test.gleam
+++ b/test/gleam/dynamic_test.gleam
@@ -224,6 +224,28 @@ pub fn optional_test() {
|> should.be_error
}
+if javascript {
+ pub fn javascript_object_field_test() {
+ Ok(123)
+ |> dynamic.from
+ |> dynamic.field("0")
+ |> should.equal(Ok(dynamic.from(123)))
+
+ Ok(123)
+ |> dynamic.from
+ |> dynamic.field(0)
+ |> should.equal(Ok(dynamic.from(123)))
+
+ Ok(123)
+ |> dynamic.from
+ |> dynamic.field("Nope")
+ |> should.equal(Error(DecodeError(
+ expected: "Value with field \"Nope\"",
+ found: "Result",
+ )))
+ }
+}
+
if erlang {
pub fn field_test() {
map.new()