Current section
Files
Jump to
Current section
Files
test/bakeware_script_test.exs
defmodule Bakeware.ScriptTest do
use ExUnit.Case, async: true
require Bakeware.Script
alias Bakeware.Script
test "get_argc!/0" do
System.delete_env("BAKEWARE_ARGC")
assert 0 == Script.get_argc!()
end
test "get_args/1" do
envs = [
"There's a",
"snake",
"in my",
"boot!"
]
for {v, i} <- Enum.with_index(envs, 1), do: System.put_env("BAKEWARE_ARG#{i}", v)
assert envs == Script.get_args(length(envs))
end
test "result_to_halt/1" do
status_int = :random.uniform(10)
Enum.each(
[
{:ok, 0},
{:error, 1},
{:abort, :abort},
{status_int, status_int},
{[status_int, status_int], [status_int, status_int]},
{"asdf", 'asdf'}
],
fn {result, status} ->
assert status == Script.result_to_halt(result)
end
)
end
end