diff --git a/tests/test_processes.rb b/tests/test_processes.rb index 1210fbb2f..b3ba9f73f 100644 --- a/tests/test_processes.rb +++ b/tests/test_processes.rb @@ -99,6 +99,24 @@ def test_em_system_spaced_arguments assert_equal("hello\n", $out) end + + def test_em_popen_pause_resume + c_rx = 0 + + test_client = Module.new do + define_method :receive_data do |data| + c_rx += 1 + pause + EM.add_timer(0.5) { EM.stop } + end + end + + EM.run{ + EM.popen('cat /dev/random', test_client) + } + + assert_equal 1, c_rx + end else warn "EM.popen not implemented, skipping tests in #{__FILE__}"