summaryrefslogtreecommitdiff
path: root/serde_dhall
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--serde_dhall/Cargo.toml3
-rw-r--r--serde_dhall/tests/de.rs2
-rw-r--r--serde_dhall/tests/wasm.rs12
3 files changed, 16 insertions, 1 deletions
diff --git a/serde_dhall/Cargo.toml b/serde_dhall/Cargo.toml
index 1b66aa1..05a7255 100644
--- a/serde_dhall/Cargo.toml
+++ b/serde_dhall/Cargo.toml
@@ -17,5 +17,8 @@ dhall_proc_macros = { version = "= 0.5.0", path = "../dhall_proc_macros" }
doc-comment = "0.3"
url = "2.1"
+[target.'cfg(target_arch = "wasm32")'.dev-dependencies]
+wasm-bindgen-test = "0.2"
+
[dev-dependencies]
version-sync = "0.8"
diff --git a/serde_dhall/tests/de.rs b/serde_dhall/tests/de.rs
index 1932e26..a418563 100644
--- a/serde_dhall/tests/de.rs
+++ b/serde_dhall/tests/de.rs
@@ -21,7 +21,7 @@ fn test_de_typed() {
assert_eq!(parse::<f32>("1.0"), 1.0);
assert_eq!(parse::<String>(r#""foo""#), "foo".to_owned());
- assert_eq!(parse::<Vec<u64>>("[] : List Natural"), vec![]);
+ assert_eq!(parse::<Vec<u64>>("[] : List Natural"), <Vec<u64>>::new());
assert_eq!(parse::<Vec<u64>>("[1, 2]"), vec![1, 2]);
assert_eq!(parse::<Option<u64>>("None Natural"), None);
assert_eq!(parse::<Option<u64>>("Some 1"), Some(1));
diff --git a/serde_dhall/tests/wasm.rs b/serde_dhall/tests/wasm.rs
new file mode 100644
index 0000000..c719d84
--- /dev/null
+++ b/serde_dhall/tests/wasm.rs
@@ -0,0 +1,12 @@
+#![cfg(target_arch = "wasm32")]
+use wasm_bindgen_test::*;
+
+use serde_dhall::{from_str, FromDhall, StaticType};
+
+#[wasm_bindgen_test]
+fn test() {
+ fn parse<T: FromDhall + StaticType>(s: &str) -> T {
+ from_str(s).static_type_annotation().parse().unwrap()
+ }
+ assert_eq!(parse::<Vec<u64>>("[1, 2]"), vec![1, 2]);
+}