about summary refs log tree commit diff
path: root/src/libstd
diff options
context:
space:
mode:
authorBrian Anderson <banderson@mozilla.com>2013-01-24 23:53:42 -0800
committerBrian Anderson <banderson@mozilla.com>2013-01-24 23:55:11 -0800
commit19aa88cd64c81b77b874f9396a43fedfa28f14ee (patch)
tree999412ca6a090c8bd291cc5675e7bfb449709b9c /src/libstd
parentbc0c5bb447ac8eba0a80599305c23db6c8a1ed6a (diff)
Stop using oldcomm in uv_global_loop tests
Diffstat (limited to 'src/libstd')
-rw-r--r--src/libstd/uv_global_loop.rs35
1 files changed, 18 insertions, 17 deletions
diff --git a/src/libstd/uv_global_loop.rs b/src/libstd/uv_global_loop.rs
index c99bcaa54fa..8637470dd54 100644
--- a/src/libstd/uv_global_loop.rs
+++ b/src/libstd/uv_global_loop.rs
@@ -126,15 +126,17 @@ mod test {
 
     use core::iter;
     use core::libc;
-    use core::oldcomm;
     use core::ptr;
     use core::task;
+    use core::cast::transmute;
+    use core::libc::c_void;
+    use core::pipes::{stream, SharedChan, Chan};
 
     extern fn simple_timer_close_cb(timer_ptr: *ll::uv_timer_t) unsafe {
         let exit_ch_ptr = ll::get_data_for_uv_handle(
-            timer_ptr as *libc::c_void) as *oldcomm::Chan<bool>;
-        let exit_ch = *exit_ch_ptr;
-        oldcomm::send(exit_ch, true);
+            timer_ptr as *libc::c_void);
+        let exit_ch = transmute::<*c_void, ~Chan<bool>>(exit_ch_ptr);
+        exit_ch.send(true);
         log(debug, fmt!("EXIT_CH_PTR simple_timer_close_cb exit_ch_ptr: %?",
                        exit_ch_ptr));
     }
@@ -153,9 +155,8 @@ mod test {
     }
 
     fn impl_uv_hl_simple_timer(iotask: &IoTask) unsafe {
-        let exit_po = oldcomm::Port::<bool>();
-        let exit_ch = oldcomm::Chan(&exit_po);
-        let exit_ch_ptr = ptr::addr_of(&exit_ch);
+        let (exit_po, exit_ch) = stream::<bool>();
+        let exit_ch_ptr: *libc::c_void = transmute(~exit_ch);
         log(debug, fmt!("EXIT_CH_PTR newly created exit_ch_ptr: %?",
                        exit_ch_ptr));
         let timer_handle = ll::timer_t();
@@ -166,7 +167,7 @@ mod test {
             if(init_status == 0i32) {
                 ll::set_data_for_uv_handle(
                     timer_ptr as *libc::c_void,
-                    exit_ch_ptr as *libc::c_void);
+                    exit_ch_ptr);
                 let start_status = ll::timer_start(timer_ptr, simple_timer_cb,
                                                    1u, 0u);
                 if(start_status == 0i32) {
@@ -179,22 +180,21 @@ mod test {
                 fail ~"failure on ll::timer_init()";
             }
         };
-        oldcomm::recv(exit_po);
+        exit_po.recv();
         log(debug, ~"global_loop timer test: msg recv on exit_po, done..");
     }
 
     #[test]
     fn test_gl_uv_global_loop_high_level_global_timer() unsafe {
         let hl_loop = &get_gl();
-        let exit_po = oldcomm::Port::<()>();
-        let exit_ch = oldcomm::Chan(&exit_po);
+        let (exit_po, exit_ch) = stream::<()>();
         task::spawn_sched(task::ManualThreads(1u), || {
             let hl_loop = &get_gl();
             impl_uv_hl_simple_timer(hl_loop);
-            oldcomm::send(exit_ch, ());
+            exit_ch.send(());
         });
         impl_uv_hl_simple_timer(hl_loop);
-        oldcomm::recv(exit_po);
+        exit_po.recv();
     }
 
     // keeping this test ignored until some kind of stress-test-harness
@@ -202,18 +202,19 @@ mod test {
     #[test]
     #[ignore]
     fn test_stress_gl_uv_global_loop_high_level_global_timer() unsafe {
-        let exit_po = oldcomm::Port::<()>();
-        let exit_ch = oldcomm::Chan(&exit_po);
+        let (exit_po, exit_ch) = stream::<()>();
+        let exit_ch = SharedChan(exit_ch);
         let cycles = 5000u;
         for iter::repeat(cycles) {
+            let exit_ch_clone = exit_ch.clone();
             task::spawn_sched(task::ManualThreads(1u), || {
                 let hl_loop = &get_gl();
                 impl_uv_hl_simple_timer(hl_loop);
-                oldcomm::send(exit_ch, ());
+                exit_ch_clone.send(());
             });
         };
         for iter::repeat(cycles) {
-            oldcomm::recv(exit_po);
+            exit_po.recv();
         };
         log(debug, ~"test_stress_gl_uv_global_loop_high_level_global_timer"+
             ~" exiting sucessfully!");