beam_js/test/beam_js_test.exs
2026-03-30 15:43:34 -05:00

19 lines
537 B
Elixir

defmodule BeamJsTest do
use BeamJs.JsCase
doctest BeamJs
test "can run JS code", %{js: js} do
assert run(js, "1") == {:ok, 1}
end
test "can encode and import", %{js: js} do
js_src =
Example
|> BeamJs.Module.to_ast(only: ["fact$1"])
|> BeamJs.Encoder.encode_module()
File.write!("tmp/example.mjs", js_src)
assert {:ok, [[_label, [["func_info", "Elixir.Example", "fact", 1]]]| _rest]} = run(js, ~s|const Example = await import('./tmp/example.mjs');JSON.stringify(Example.fact$1)|)
end
end