31 lines
842 B
Elixir
31 lines
842 B
Elixir
defmodule TreeSitterTest do
|
|
use ExUnit.Case, async: true
|
|
|
|
@version TreeSitter.latest_version()
|
|
|
|
test "runs" do
|
|
assert ExUnit.CaptureIO.capture_io(fn ->
|
|
assert TreeSitter.run(["--version"]) == 0
|
|
end) =~ @version
|
|
end
|
|
|
|
test "updates on install" do
|
|
Application.put_env(:tree_sitter, :version, "0.20.6")
|
|
|
|
Mix.Task.rerun("tree_sitter.install", ["--if-missing"])
|
|
|
|
assert ExUnit.CaptureIO.capture_io(fn ->
|
|
assert TreeSitter.run(["--version"]) == 0
|
|
end) =~ "0.20.6"
|
|
|
|
Application.delete_env(:tree_sitter, :version)
|
|
|
|
Mix.Task.rerun("tree_sitter.install", ["--if-missing"])
|
|
|
|
assert ExUnit.CaptureIO.capture_io(fn ->
|
|
assert TreeSitter.run(["--version"]) == 0
|
|
end) =~ @version
|
|
after
|
|
Application.delete_env(:tree_sitter, :version)
|
|
end
|
|
end
|