| … | … | @@ -88,15 +88,34 @@ |
| 88 | 88 | (define (stop-named-cogserver csn) |
| 89 | 89 | (cog-set-value! csn (Predicate "*-stop-*") (VoidValue))) |
| 90 | 90 | |
| 91 | ;; Helper to check if a cogserver is running |
| 92 | (define (cogserver-running? csn) |
| 93 | (define val (cog-value csn (Predicate "*-is-running?-*"))) |
| 94 | (and val (car (cog-value->list val)))) |
| 95 | |
| 91 | 96 | ;; ===== Single cogserver ===== |
| 92 | 97 | (define single-telnet-port 17101) |
| 93 | 98 | (define single-web-port 18181) |
| 94 | | (define single-csn #f) |
| 99 | |
| 100 | ;; Create the CogServerNode but don't start it yet |
| 101 | (define single-csn (CogServerNode "cogserver-single")) |
| 102 | (cog-set-value! single-csn (Predicate "*-telnet-port-*") (FloatValue single-telnet-port)) |
| 103 | (cog-set-value! single-csn (Predicate "*-web-port-*") (FloatValue single-web-port)) |
| 104 | (cog-set-value! single-csn (Predicate "*-mcp-port-*") (FloatValue 0)) |
| 105 | |
| 106 | ;; Test *-is-running?-* before start |
| 107 | (test-assert "single-not-running-before-start" |
| 108 | (not (cogserver-running? single-csn))) |
| 109 | |
| 110 | ;; Start the cogserver |
| 111 | (cog-set-value! single-csn (Predicate "*-start-*") (VoidValue)) |
| 95 | 112 | |
| 96 | 113 | (test-assert "single-start" |
| 97 | | (begin |
| 98 | | (set! single-csn (start-named-cogserver "cogserver-single" single-telnet-port single-web-port)) |
| 99 | | (cog-atom? single-csn))) |
| 114 | (cog-atom? single-csn)) |
| 115 | |
| 116 | ;; Test *-is-running?-* after start |
| 117 | (test-assert "single-running-after-start" |
| 118 | (cogserver-running? single-csn)) |
| 100 | 119 | |
| 101 | 120 | (test-assert "single-telnet-reachable" |
| 102 | 121 | (can-connect-to-port? single-telnet-port)) |
| … | … | @@ -104,10 +123,15 @@ |
| 104 | 123 | (test-assert "single-web-reachable" |
| 105 | 124 | (can-connect-to-port? single-web-port)) |
| 106 | 125 | |
| 126 | ;; Stop the cogserver |
| 127 | (stop-named-cogserver single-csn) |
| 128 | |
| 107 | 129 | (test-assert "single-stop" |
| 108 | | (begin |
| 109 | | (stop-named-cogserver single-csn) |
| 110 | | #t)) |
| 130 | (not (can-connect-to-port? single-telnet-port))) |
| 131 | |
| 132 | ;; Test *-is-running?-* after stop |
| 133 | (test-assert "single-not-running-after-stop" |
| 134 | (not (cogserver-running? single-csn))) |
| 111 | 135 | |
| 112 | 136 | (test-assert "single-telnet-closed" |
| 113 | 137 | (not (can-connect-to-port? single-telnet-port))) |