ex-scopes/test/actor_test.exs

19 lines
456 B
Elixir

defmodule ActorTest do
use ExUnit.Case, async: true
alias Xplore.Actor
describe "simple-actors:" do
test "basic-life-cycle" do
this = self()
ac = Actor.create(fn msg -> send(this, msg) end)
Actor.send(ac, "Hello Actor!")
Actor.become(ac, fn _msg -> send(this, "Goodbye") end)
Actor.send(ac, "Hello Actor!")
Actor.stop(ac)
assert_receive "Hello Actor!"
assert_receive "Goodbye"
end
end
end