]> gitweb.factorcode.org Git - factor.git/blob - basis/ui/tools/interactor/interactor-tests.factor
Fix permission bits
[factor.git] / basis / ui / tools / interactor / interactor-tests.factor
1 IN: ui.tools.interactor.tests
2 USING: ui.tools.interactor ui.gadgets.panes namespaces
3 ui.gadgets.editors concurrency.promises threads listener
4 tools.test kernel calendar parser accessors calendar io ;
5
6 \ <interactor> must-infer
7
8 [
9     [ ] [ <pane> <pane-stream> <interactor> "interactor" set ] unit-test
10
11     [ ] [ "interactor" get register-self ] unit-test
12
13     [ ] [ "[ 1 2 3" "interactor" get set-editor-string ] unit-test
14
15     [ ] [ <promise> "promise" set ] unit-test
16
17     [
18         self "interactor" get (>>thread)
19         "interactor" get stream-read-quot "promise" get fulfill
20     ] "Interactor test" spawn drop
21
22     ! This should not throw an exception
23     [ ] [ "interactor" get evaluate-input ] unit-test
24
25     [ ] [ [ "interactor" get interactor-busy? ] [ yield ] [ ] while ] unit-test
26
27     [ ] [ "[ 1 2 3 ]" "interactor" get set-editor-string ] unit-test
28
29     [ ] [ "interactor" get evaluate-input ] unit-test
30
31     [ [ [ 1 2 3 ] ] ] [ "promise" get 5 seconds ?promise-timeout ] unit-test
32 ] with-interactive-vocabs
33
34 ! Hang
35 [ ] [ <pane> <pane-stream> <interactor> "interactor" set ] unit-test
36
37 [ ] [ [ "interactor" get stream-read-quot drop ] "A" spawn drop ] unit-test
38
39 [ ] [ [ "interactor" get stream-read-quot drop ] "B" spawn drop ] unit-test
40
41 [ ] [ 1000 sleep ] unit-test
42
43 [ ] [ "interactor" get interactor-eof ] unit-test
44
45 [ ] [ <pane> <pane-stream> <interactor> "interactor" set ] unit-test
46
47 : text "Hello world.\nThis is a test." ;
48
49 [ ] [ text "interactor" get set-editor-string ] unit-test
50
51 [ ] [ <promise> "promise" set ] unit-test
52
53 [ ] [
54     [
55         "interactor" get register-self
56         "interactor" get contents "promise" get fulfill
57     ] in-thread
58 ] unit-test
59
60 [ ] [ 100 sleep ] unit-test
61
62 [ ] [ "interactor" get evaluate-input ] unit-test
63
64 [ ] [ 100 sleep ] unit-test
65     
66 [ ] [ "interactor" get interactor-eof ] unit-test
67
68 [ t ] [ "promise" get 2 seconds ?promise-timeout text = ] unit-test
69
70 [ ] [ <pane> <pane-stream> <interactor> "interactor" set ] unit-test
71
72 [ ] [ text "interactor" get set-editor-string ] unit-test
73
74 [ ] [ <promise> "promise" set ] unit-test
75
76 [ ] [
77     [
78         "interactor" get register-self
79         "interactor" get stream-read1 "promise" get fulfill
80     ] in-thread
81 ] unit-test
82
83 [ ] [ 100 sleep ] unit-test
84
85 [ ] [ "interactor" get evaluate-input ] unit-test
86
87 [ CHAR: H ] [ "promise" get 2 seconds ?promise-timeout ] unit-test