1 USING: http http.server.dispatchers http.server.responses
2 http.server furnace furnace.utilities tools.test kernel
3 namespaces accessors io.streams.string urls xml.writer ;
6 TUPLE: funny-dispatcher < dispatcher ;
8 : <funny-dispatcher> ( -- dispatcher ) funny-dispatcher new-dispatcher ;
10 TUPLE: base-path-check-responder ;
12 C: <base-path-check-responder> base-path-check-responder
14 M: base-path-check-responder call-responder*
16 "$funny-dispatcher" resolve-base-path
23 <base-path-check-responder> "c" add-responder
30 V{ } responder-nesting set
31 "a/b/c" split-path main-responder get call-responder body>>
34 { "<input type=\"hidden\" value=\"&&&\" name=\"foo\"/>" }
35 [ "&&&" "foo" hidden-form-field xml>string ]
38 { f } [ <request> request [ referrer ] with-variable ] unit-test
40 { t } [ URL" http://foo" dup url [ same-host? ] with-variable ] unit-test
42 { f } [ f URL" http://foo" url [ same-host? ] with-variable ] unit-test