Skip to content

Commit aad9fbf

Browse files
committed
green: Fixing all tests from previous refactorings
1 parent 1a6d920 commit aad9fbf

File tree

6 files changed

+351
-282
lines changed

6 files changed

+351
-282
lines changed

src/libgreen/basic.rs

Lines changed: 58 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -223,3 +223,61 @@ impl Drop for BasicPausable {
223223
}
224224
}
225225
}
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+
}

src/libgreen/lib.rs

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -58,8 +58,6 @@ pub mod sleeper_list;
5858
pub mod stack;
5959
pub mod task;
6060

61-
#[cfg(test)] mod tests;
62-
6361
#[cfg(stage0)]
6462
#[lang = "start"]
6563
pub fn lang_start(main: *u8, argc: int, argv: **u8) -> int {

0 commit comments

Comments
 (0)