diff --git a/config/config.exs b/config/config.exs index eb9ad71..c5c2b5b 100644 --- a/config/config.exs +++ b/config/config.exs @@ -4,6 +4,7 @@ import Config config :logger, :default_formatter, format: "$date $time [$level] $metadata $message\n", + colors: [enabled: false], metadata: [:mfa] import_config "#{config_env()}.exs" diff --git a/lib/csys/program.ex b/lib/csys/program.ex index 04e2e67..5afae88 100644 --- a/lib/csys/program.ex +++ b/lib/csys/program.ex @@ -78,7 +78,7 @@ alias Scopes.CSys data = Shape.data(msg) state = CSys.state(scope) value_n = state.value + data.value - Logger.info([data: data.value, state: state.value, threshold: state.threshold]) + Logger.info data: data.value, state: state.value, threshold: state.threshold if value_n >= state.threshold do msg = Shape.create(Shape.head(msg), data: %{data | value: value_n}) CSys.forward(msg, scope) || CSys.notify(msg, scope) @@ -144,4 +144,12 @@ alias Scopes.CSys end ] end + + def init_recursive_1() do [ + fn [zero] -> + CSys.send_message(zero, ~w(csys connect)a, %{target: zero, op: negate()}) + CSys.send_message(zero, ~w(csys create succ)a, %{name: ~w(csys e01 001)a}) + end + ] + end end diff --git a/test/csys_test.exs b/test/csys_test.exs index 1546a5d..e58eba6 100644 --- a/test/csys_test.exs +++ b/test/csys_test.exs @@ -16,8 +16,8 @@ defmodule Scopes.CSysTest do Shape.data(receive_select(head)) end - describe "basic:" do - test "minimal-neural-net" do + describe "basic-program:" do + test "minimal-b1" do _env = Environ.setup(Program.prepare_basic(), Program.init_seq_b1()) zero = receive_data(~w(csys created)a).new CSys.send_value(zero, 0) @@ -25,7 +25,7 @@ defmodule Scopes.CSysTest do one = receive_data(~w(csys created)a).new _two = receive_data(~w(csys created)a).new three = receive_data(~w(csys created)a).new - Process.sleep(50) + Process.sleep(10) CSys.send_value(one, 1) assert receive_data().value == 1 #assert receive_data().value in [-1, 1] @@ -34,22 +34,12 @@ defmodule Scopes.CSysTest do assert receive_data().value in [2, 3] refute_received msg, "unhandled message(s): #{inspect(msg)}" end - end - def init_recursive_1() do [ - fn [zero] -> - CSys.send_message(zero, ~w(csys connect)a, %{target: zero, op: Program.negate()}) - CSys.send_message(zero, ~w(csys create succ)a) - end - ] - end - - describe "recursive:" do - test "zero + effector" do - _env = Environ.setup(Program.prepare_basic(), init_recursive_1()) + test "recursive-1" do + _env = Environ.setup(Program.prepare_basic(), Program.init_recursive_1()) zero = receive_data(~w(csys created)a).new _eff = receive_data(~w(csys created)a).new - Process.sleep(50) + Process.sleep(10) CSys.send_value(zero, 42) assert receive_data().value == 42 refute_received msg, "unhandled message(s): #{inspect(msg)}"