aboutsummaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
Diffstat (limited to 'test')
-rw-r--r--test/gleam/dynamic_test.gleam12
-rwxr-xr-xtest/gleam_stdlib_test_ffi.mjs9
2 files changed, 21 insertions, 0 deletions
diff --git a/test/gleam/dynamic_test.gleam b/test/gleam/dynamic_test.gleam
index 104c1fa..9d1aeba 100644
--- a/test/gleam/dynamic_test.gleam
+++ b/test/gleam/dynamic_test.gleam
@@ -39,6 +39,18 @@ if erlang {
}
}
+if javascript {
+ external fn uint8array(List(Int)) -> dynamic.Dynamic =
+ "../gleam_stdlib_test_ffi.mjs" "uint8array"
+
+ pub fn bit_string_erlang_test() {
+ [1, 1, 2, 3, 5, 8]
+ |> uint8array
+ |> dynamic.bit_string
+ |> should.equal(Ok(<<1, 1, 2, 3, 5, 8>>))
+ }
+}
+
pub fn string_test() {
""
|> dynamic.from
diff --git a/test/gleam_stdlib_test_ffi.mjs b/test/gleam_stdlib_test_ffi.mjs
index 90eeaf0..cbf0382 100755
--- a/test/gleam_stdlib_test_ffi.mjs
+++ b/test/gleam_stdlib_test_ffi.mjs
@@ -33,3 +33,12 @@ ${passes} passes
${failures} failures`);
process.exit(failures ? 1 : 0);
}
+
+export function uint8array(list) {
+ let ints = list.toArray();
+ let array = new Uint8Array(ints.length);
+ for (let i = 0; i < ints.length; i++) {
+ array[i] = ints[i];
+ }
+ return array;
+}