mirror of
https://github.com/ash-project/ash.git
synced 2024-09-21 05:53:06 +12:00
28 lines
646 B
Elixir
28 lines
646 B
Elixir
|
defmodule Ash.Test.AshTest do
|
||
|
@moduledoc false
|
||
|
use ExUnit.Case, async: true
|
||
|
|
||
|
describe "non_executable_binary_to_term/1" do
|
||
|
test "it works for simple terms" do
|
||
|
for data <- [nil, %{}, [], "foo", 1, :blah, 1.1] do
|
||
|
result =
|
||
|
data
|
||
|
|> :erlang.term_to_binary()
|
||
|
|> Ash.Helpers.non_executable_binary_to_term()
|
||
|
|
||
|
assert result == data
|
||
|
end
|
||
|
end
|
||
|
|
||
|
test "it fails on functions" do
|
||
|
func = fn x, y -> x + y end
|
||
|
|
||
|
binary = :erlang.term_to_binary(func)
|
||
|
|
||
|
assert_raise ArgumentError, fn ->
|
||
|
Ash.Helpers.non_executable_binary_to_term(binary)
|
||
|
end
|
||
|
end
|
||
|
end
|
||
|
end
|