1
- Module: channels-tests
1
+ Module: channels-test-suite
2
2
Author: Jason Trenouth
3
3
Copyright: Original Code is Copyright (c) 1995 -2004 Functional Objects, Inc.
4
4
All rights reserved.
@@ -10,8 +10,8 @@ Warranty: Distributed WITHOUT WARRANTY OF ANY KIND
10
10
// / typical uses
11
11
// / mapper
12
12
13
- define test channels-test-1 (name: "Default (object is callback)" ,
14
- description: "Check channel callbacks called only once while tuned-in." )
13
+ // Check channel callbacks called only once while tuned-in.
14
+ define test test-defaults--object-is-callback ( )
15
15
let channel = make (<channel>);
16
16
let count1 = 1 ;
17
17
let count2 = 2 ;
@@ -43,13 +43,14 @@ define test channels-test-1 (name: "Default (object is callback)",
43
43
check-true("Count2 still 4" , count2 = 4 );
44
44
end test;
45
45
46
- define test channels-test-2 (name: "Object plus callback" ,
47
- description: "Make unique object as receiver key." )
46
+ define test test-unique-object-as-receiver-key ()
48
47
let channel = make (<channel>);
49
48
let object = pair (#f , #f );
50
49
let count = 0 ;
51
50
52
- tune-in(channel, object, callback: method (message) count := count + message end method );
51
+ tune-in(channel, object, callback: method (message)
52
+ count := count + message
53
+ end );
53
54
broadcast(channel, 1 );
54
55
check-true("Count now 1" , count = 1 );
55
56
@@ -58,93 +59,116 @@ define test channels-test-2 (name: "Object plus callback",
58
59
check-true("Count still 1" , count = 1 );
59
60
end test;
60
61
61
- define test channels- test-3 (name: "No message passed ( channel property)" )
62
+ define test test-no- message- passed-- channel- property ( )
62
63
let channel = make (<channel>, message?: #f );
63
64
let count = 0 ;
64
- local method inc-count () count := count + 2 end method ;
65
+ local method inc-count ()
66
+ count := count + 2
67
+ end ;
65
68
tune-in(channel, inc-count);
66
69
broadcast(channel, 1 );
67
70
check-true("Count now 2" , count = 2 );
68
71
end test;
69
72
70
- define test channels- test-4 (name: "No message passed ( receiver property)" )
73
+ define test test-no- message- passed-- receiver- property ( )
71
74
let channel = make (<channel>);
72
75
let count = 0 ;
73
- local method inc-count () count := count + 2 end method ;
76
+ local method inc-count ()
77
+ count := count + 2
78
+ end ;
74
79
tune-in(channel, inc-count, message?: #f );
75
80
broadcast(channel, 1 );
76
81
check-true("Count now 2" , count = 2 );
77
82
end test;
78
83
79
- define test channels- test-5 (name: "Receiver passed ( channel property)" )
84
+ define test test-receiver- passed-- channel- property ( )
80
85
let channel = make (<channel>, receiver?: #t );
81
86
let object = pair (-1 , -1 );
82
87
let maybe-object = #f ;
83
- local method inc-count (message, passed-object) maybe-object := passed-object end method ;
88
+ local method inc-count (message, passed-object)
89
+ maybe-object := passed-object
90
+ end ;
84
91
tune-in(channel, object, callback: inc-count);
85
92
broadcast(channel, 1 );
86
93
check-true("Receiver passed" , object == maybe-object);
87
94
end test;
88
95
89
- define test channels- test-6 (name: "Receiver passed ( receiver property)" )
96
+ define test test-receiver- passed-- receiver- property ( )
90
97
let channel = make (<channel>);
91
98
let object = pair (-1 , -1 );
92
99
let maybe-object = #f ;
93
- local method set-maybe-object (message, passed-object) maybe-object := passed-object end method ;
100
+ local method set-maybe-object (message, passed-object)
101
+ maybe-object := passed-object
102
+ end ;
94
103
tune-in(channel, object, receiver?: #t , callback: set-maybe-object);
95
104
broadcast(channel, 1 );
96
105
check-true("Receiver passed" , object == maybe-object);
97
106
end test;
98
107
99
- define test channels- test-7 (name: "Matches message type" )
108
+ define test test-message- type ( )
100
109
let channel = make (<channel>);
101
110
let message = list (1 );
102
111
let maybe-message = #f ;
103
- local method set-maybe-message (passed-message) maybe-message := passed-message end method ;
112
+ local method set-maybe-message (passed-message)
113
+ maybe-message := passed-message
114
+ end ;
104
115
105
116
tune-in(channel, set-maybe-message, message-type: <list> );
106
117
broadcast(channel, vector (1 ));
107
- check-true ("Maybe-message still #F" , maybe-message == #f );
118
+ check-false ("Maybe-message still #F" , maybe-message);
108
119
109
120
broadcast(channel, message);
110
- check-true ("Maybe-message now message" , maybe-message = message);
121
+ check-equal ("Maybe-message now message" , maybe-message, message);
111
122
end test;
112
123
113
- define test channels- test-8 (name: "Channel defines callback" )
124
+ define test test-channel- defines- callback ( )
114
125
let count = 0 ;
115
- local method inc-count (message) count := count + message end method ;
126
+ local method inc-count (message)
127
+ count := count + message
128
+ end ;
116
129
let channel = make (<channel>, callback: inc-count);
117
130
tune-in(channel, #f );
118
131
tune-in(channel, #t );
119
132
broadcast(channel, 1 );
120
133
check-true("Count now 2" , count = 2 );
121
134
end test;
122
135
123
- define test channels- test-9 (name: "Receiver overrides channel" )
136
+ define test test-receiver- overrides- channel ( )
124
137
let count = 0 ;
125
138
let receiver = #f ;
126
- local method inc-count (message) count := count + message end method ;
139
+ local method inc-count (message)
140
+ count := count + message
141
+ end ;
127
142
let channel = make (<channel>, callback: inc-count);
128
143
tune-in(channel, #f );
129
- tune-in(channel, #t , message?: #f , receiver?: #t , callback: method (x) receiver := x; count := count + 9 end method );
144
+ tune-in(channel, #t , message?: #f , receiver?: #t ,
145
+ callback: method (x)
146
+ receiver := x;
147
+ count := count + 9
148
+ end );
130
149
broadcast(channel, 1 );
131
150
check-true("Count now 10" , count = 10 );
132
151
check-true("Receiver now #t" , receiver = #t );
133
152
end test;
134
153
135
- define test channels- test-10 (name: "Broadcaster passes extra arguments" )
154
+ define test test-broadcaster- passes- extra- arguments ( )
136
155
let channel = make (<channel>);
137
156
let count = 0 ;
138
- local method inc-count (message, extra-arg) count := count + message + extra-arg end method ;
157
+ local method inc-count (message, extra-arg)
158
+ count := count + message + extra-arg
159
+ end ;
139
160
tune-in(channel, inc-count);
140
161
broadcast(channel, 1 , 99 );
141
162
check-true("Count now 100" , count = 100 );
142
163
end test;
143
164
144
- define test channels- test-11 (name: "Override channel" )
165
+ define test test-override-channel ( )
145
166
let channel = make (<channel>);
146
167
let count = 0 ;
147
- local method inc-count (receiver) count := count + receiver; #t end method ;
168
+ local method inc-count (receiver)
169
+ count := count + receiver;
170
+ #t
171
+ end ;
148
172
tune-in(channel, 1 );
149
173
tune-in(channel, 2 );
150
174
let result = broadcast(override-channel(channel,
0 commit comments