decons/test-csys.lisp

20 lines
619 B
Common Lisp

;;;; decons/test-csys - tests for the csys (cybernetic ommunication systems) package
(in-package :decons/test-decons)
(defun probe (msg state syns env)
(let ((t:*test-suite* env))
(== (actor:content msg) (pop state))
(lambda (msg) (probe msg state syns env))
))
(deftest test-neuron ()
(let* ((prb (csys:neuron #'probe :env t:*test-suite* :state '(43 44)))
(syn (csys:synapse prb (csys:set-content (lambda (c) (+ 1 c)))))
(fw (csys:neuron #'csys:forward :syns (list syn))))
(actor:send fw 42)
(actor:send fw 43)
(sleep 0.1)
(actor:stop prb)
(actor:stop fw)
))