File tree Expand file tree Collapse file tree 7 files changed +352
-283
lines changed Expand file tree Collapse file tree 7 files changed +352
-283
lines changed Original file line number Diff line number Diff line change @@ -6,7 +6,7 @@ refs/heads/try: c274a6888410ce3e357e014568b43310ed787d36
6
6
refs/tags/release-0.1: 1f5c5126e96c79d22cb7862f75304136e204f105
7
7
refs/heads/ndm: f3868061cd7988080c30d6d5bf352a5a5fe2460b
8
8
refs/heads/try2: 147ecfdd8221e4a4d4e090486829a06da1e0ca3c
9
- refs/heads/dist-snap: 1a6d920e3df3d48168b22879a194538ec10c951a
9
+ refs/heads/dist-snap: aad9fbf6b65137f278d74cc84e0028a8f8aeed03
10
10
refs/tags/release-0.2: c870d2dffb391e14efb05aa27898f1f6333a9596
11
11
refs/tags/release-0.3: b5f0d0f648d9a6153664837026ba1be43d3e2503
12
12
refs/heads/try3: 9387340aab40a73e8424c48fd42f0c521a4875c0
Original file line number Diff line number Diff line change @@ -223,3 +223,61 @@ impl Drop for BasicPausable {
223
223
}
224
224
}
225
225
}
226
+
227
+ #[ cfg( test) ]
228
+ mod test {
229
+ use std:: task:: TaskOpts ;
230
+
231
+ use basic;
232
+ use PoolConfig ;
233
+ use SchedPool ;
234
+
235
+ fn pool ( ) -> SchedPool {
236
+ SchedPool :: new ( PoolConfig {
237
+ threads : 1 ,
238
+ event_loop_factory : Some ( basic:: event_loop) ,
239
+ } )
240
+ }
241
+
242
+ fn run ( f : proc ( ) ) {
243
+ let mut pool = pool ( ) ;
244
+ pool. spawn ( TaskOpts :: new ( ) , f) ;
245
+ pool. shutdown ( ) ;
246
+ }
247
+
248
+ #[ test]
249
+ fn smoke ( ) {
250
+ do run { }
251
+ }
252
+
253
+ #[ test]
254
+ fn some_channels ( ) {
255
+ do run {
256
+ let ( p, c) = Chan :: new ( ) ;
257
+ do spawn {
258
+ c. send ( ( ) ) ;
259
+ }
260
+ p. recv( ) ;
261
+ }
262
+ }
263
+
264
+ #[ test]
265
+ fn multi_thread ( ) {
266
+ let mut pool = SchedPool :: new ( PoolConfig {
267
+ threads : 2 ,
268
+ event_loop_factory : Some ( basic:: event_loop) ,
269
+ } ) ;
270
+
271
+ for _ in range ( 0 , 20 ) {
272
+ do pool. spawn ( TaskOpts :: new ( ) ) {
273
+ let ( p, c) = Chan :: new ( ) ;
274
+ do spawn {
275
+ c. send ( ( ) ) ;
276
+ }
277
+ p. recv ( ) ;
278
+ }
279
+ }
280
+
281
+ pool. shutdown ( ) ;
282
+ }
283
+ }
Original file line number Diff line number Diff line change @@ -58,8 +58,6 @@ pub mod sleeper_list;
58
58
pub mod stack;
59
59
pub mod task;
60
60
61
- #[ cfg( test) ] mod tests;
62
-
63
61
#[ cfg( stage0) ]
64
62
#[ lang = "start" ]
65
63
pub fn lang_start ( main : * u8 , argc : int , argv : * * u8 ) -> int {
You can’t perform that action at this time.
0 commit comments