diff options
| author | Jamis Buck <jamis@37signals.com> | 2008-03-21 08:17:59 -0600 |
|---|---|---|
| committer | Jamis Buck <jamis@37signals.com> | 2008-03-21 08:17:59 -0600 |
| commit | 677c0e16e67f0a7e7f930062fa40569c002058bb (patch) | |
| tree | 683caf919f4fc8bdffe9933f22e8a71e90c4ab08 /test | |
| parent | 1530638283922fac1685d47162b26bd1be0876e2 (diff) | |
| download | net-ssh-677c0e16e67f0a7e7f930062fa40569c002058bb.tar.gz | |
get rid of readers/writers and consolidate that into listeners. certainly less optimized, but let's aim for simplicity first
Diffstat (limited to 'test')
| -rw-r--r-- | test/connection/test_session.rb | 36 |
1 files changed, 9 insertions, 27 deletions
diff --git a/test/connection/test_session.rb b/test/connection/test_session.rb index 35cffa4..9ea5e5d 100644 --- a/test/connection/test_session.rb +++ b/test/connection/test_session.rb @@ -8,10 +8,8 @@ module Connection def test_constructor_should_set_defaults assert session.channels.empty? - assert session.listeners.empty? assert session.pending_requests.empty? - assert_equal [socket], session.readers - assert_equal [socket], session.writers + assert_equal({ socket => nil }, session.listeners) end def test_on_open_channel_should_register_block_with_given_channel_type @@ -27,20 +25,11 @@ module Connection assert_equal session.forward.object_id, session.forward.object_id end - def test_listen_to_should_add_argument_to_readers_list + def test_listen_to_without_callback_should_add_argument_as_listener io = stub("io") session.listen_to(io) - assert session.readers.include?(io) - assert !session.writers.include?(io) - assert !session.listeners.key?(io) - end - - def test_listen_to_should_add_argument_to_writers_list_if_it_responds_to_pending_write - io = stub("io", :pending_write? => true) - session.listen_to(io) - assert session.readers.include?(io) - assert session.writers.include?(io) - assert !session.listeners.key?(io) + assert session.listeners.key?(io) + assert_nil session.listeners[io] end def test_listen_to_should_add_argument_to_listeners_list_if_block_is_given @@ -48,24 +37,18 @@ module Connection flag = false session.listen_to(io) { flag = true } assert !flag, "callback should not be invoked immediately" - assert session.readers.include?(io) - assert session.writers.include?(io) assert session.listeners.key?(io) session.listeners[io].call assert flag, "callback should have been invoked" end - def test_stop_listening_to_should_remove_argument_from_lists + def test_stop_listening_to_should_remove_argument_from_listeners io = stub("io", :pending_write? => true) - session.listen_to(io) { } - assert session.readers.include?(io) - assert session.writers.include?(io) + session.listen_to(io) assert session.listeners.key?(io) session.stop_listening_to(io) - assert !session.readers.include?(io) - assert !session.writers.include?(io) assert !session.listeners.key?(io) end @@ -340,7 +323,7 @@ module Connection socket.expects(:recv).returns("this is some data") IO.expects(:select).with([socket],[],nil,nil).returns([[socket],[],[]]) session.process - assert_equal [socket], session.readers + assert_equal [socket], session.listeners.keys end def test_ready_readers_that_cant_be_filled_should_be_removed @@ -348,12 +331,11 @@ module Connection socket.expects(:close) IO.expects(:select).with([socket],[],nil,nil).returns([[socket],[],[]]) session.process - assert_equal [], session.readers - assert_equal [], session.writers + assert session.listeners.empty? end def test_ready_readers_that_are_registered_with_a_block_should_call_block_instead_of_fill - io = stub("io") + io = stub("io", :pending_write? => false) flag = false session.listen_to(io) { flag = true } IO.expects(:select).with([socket,io],[],nil,nil).returns([[io],[],[]]) |
