defmodule Scopes.CSysTest do use ExUnit.Case, async: true @moduletag timeout: 5000 alias Scopes.Core.Actor alias Scopes.CSys describe "basic:" do test "minimal-neural-net" do zero = Actor.create(CSys.neuron(&CSys.std_proc/2, {nil, [], self()})) Actor.send(zero, "Hello Zero!") assert_receive "Hello Zero!" Actor.send(zero, {:parent}) receive do {:created, new} -> Actor.send(new, "Hello New!") end assert_receive "Hello New!" :timer.sleep(50) # Actor.stop(zero) refute_received msg, "unhandled message(s): #{inspect(msg)}" end end end