0
@@ -3,80 +3,96 @@ require 'net/ssh/multi/server'
0
class ServerTest < Test::Unit::TestCase
0
- @master =
mock('multi-session')
0
+ @master =
stub('multi-session', :default_user => "bob")
0
def test_accessor_without_properties_should_access_empty_hash
0
- assert_nil server('host'
, 'user')[:foo]
0
+ assert_nil server('host'
)[:foo]
0
def test_accessor_with_properties_should_access_properties
0
- assert_equal "hello", server('host',
'user', :properties => { :foo => "hello" })[:foo]
0
+ assert_equal "hello", server('host',
:properties => { :foo => "hello" })[:foo]
0
def test_port_should_return_22_by_default
0
- assert_equal 22, server('host'
, 'user').port
0
+ assert_equal 22, server('host'
).port
0
def test_port_should_return_given_port_when_present
0
- assert_equal 1234, server('host', 'user', :port => 1234).port
0
+ assert_equal 1234, server('host', :port => 1234).port
0
+ def test_port_should_return_parsed_port_when_present
0
+ assert_equal 1234, server('host:1234', :port => 1235).port
0
+ def test_user_should_return_default_user_by_default
0
+ assert_equal "bob", server('host').user
0
+ def test_user_should_return_given_user_when_present
0
+ assert_equal "jim", server('host', :user => "jim").user
0
+ def test_user_should_return_parsed_user_when_present
0
+ assert_equal "jim", server('jim@host', :user => "john").user
0
def test_equivalence_when_host_and_user_and_port_match
0
- s1 = server('host', 'user', :port => 1234)
0
- s2 = server('host', 'user', :port => 1234)
0
+ s1 = server('user@host:1234')
0
+ s2 = server('user@host:1234')
0
assert_equal s1.hash, s2.hash
0
def test_equivalence_when_host_mismatch
0
- s1 = server('host1', 'user', :port => 1234)
0
- s2 = server('host2', 'user', :port => 1234)
0
+ s1 = server('user@host1:1234')
0
+ s2 = server('user@host2:1234')
0
assert_not_equal s1.hash, s2.hash
0
def test_equivalence_when_port_mismatch
0
- s1 = server('host', 'user', :port => 1234)
0
- s2 = server('host', 'user', :port => 1235)
0
+ s1 = server('user@host:1234')
0
+ s2 = server('user@host:1235')
0
assert_not_equal s1.hash, s2.hash
0
def test_equivalence_when_user_mismatch
0
- s1 = server('host', 'user1', :port => 1234)
0
- s2 = server('host', 'user2', :port => 1234)
0
+ s1 = server('user1@host:1234')
0
+ s2 = server('user2@host:1234')
0
assert_not_equal s1.hash, s2.hash
0
def test_to_s_should_include_user_and_host
0
- assert_equal "user@host", server('
host', 'user').to_s
0
+ assert_equal "user@host", server('
user@host').to_s
0
def test_to_s_should_include_user_and_host_and_port_when_port_is_given
0
- assert_equal "user@host:1234", server('
host', 'user', :port => 1234).to_s
0
+ assert_equal "user@host:1234", server('
user@host:1234').to_s
0
def test_gateway_should_be_nil_by_default
0
- assert_nil server('host'
, 'user').gateway
0
+ assert_nil server('host'
).gateway
0
def test_gateway_should_be_set_with_the_via_value
0
gateway = mock('gateway')
0
- assert_equal gateway, server('host',
'user', :via => gateway).gateway
0
+ assert_equal gateway, server('host',
:via => gateway).gateway
0
def test_session_with_default_argument_should_not_instantiate_session
0
- assert_nil server('host'
, 'user').session
0
+ assert_nil server('host'
).session
0
def test_session_with_true_argument_should_instantiate_and_cache_session
0
- srv = server('host'
, 'user', :port => 1234)
0
session = expect_connection_to(srv)
0
assert_equal session, srv.session(true)
0
assert_equal session, srv.session(true)
0
@@ -84,23 +100,23 @@ class ServerTest < Test::Unit::TestCase
0
def test_session_that_cannot_authenticate_adds_host_to_exception_message
0
- srv = server('host', 'user')
0
- Net::SSH.expects(:start).with('host', 'user', {}).raises(Net::SSH::AuthenticationFailed.new('user'))
0
+ Net::SSH.expects(:start).with('host', 'bob', {}).raises(Net::SSH::AuthenticationFailed.new('bob'))
0
rescue Net::SSH::AuthenticationFailed => e
0
- assert_equal "
user@host", e.message
0
+ assert_equal "
bob@host", e.message
0
def test_close_channels_when_session_is_not_open_should_not_do_anything
0
- assert_nothing_raised { server('host'
, 'user').close_channels }
0
+ assert_nothing_raised { server('host'
).close_channels }
0
def test_close_channels_when_session_is_open_should_iterate_over_open_channels_and_close_them
0
- srv = server('host'
, 'user')
0
session = expect_connection_to(srv)
0
c1 = mock('channel', :close => nil)
0
c2 = mock('channel', :close => nil)
0
@@ -111,11 +127,11 @@ class ServerTest < Test::Unit::TestCase
0
def test_close_when_session_is_not_open_should_not_do_anything
0
- assert_nothing_raised { server('host'
, 'user').close }
0
+ assert_nothing_raised { server('host'
).close }
0
def test_close_when_session_is_open_should_close_session
0
- srv = server('host'
, 'user')
0
session = expect_connection_to(srv)
0
session.expects(:close)
0
@master.expects(:server_closed).with(srv)
0
@@ -124,11 +140,11 @@ class ServerTest < Test::Unit::TestCase
0
def test_busy_should_be_false_when_session_is_not_open
0
- assert !server('host'
, 'user').busy?
0
+ assert !server('host'
).busy?
0
def test_busy_should_be_false_when_session_is_not_busy
0
- srv = server('host'
, 'user')
0
session = expect_connection_to(srv)
0
session.expects(:busy?).returns(false)
0
@@ -136,7 +152,7 @@ class ServerTest < Test::Unit::TestCase
0
def test_busy_should_be_true_when_session_is_busy
0
- srv = server('host'
, 'user')
0
session = expect_connection_to(srv)
0
session.expects(:busy?).returns(true)
0
@@ -144,11 +160,11 @@ class ServerTest < Test::Unit::TestCase
0
def test_preprocess_should_be_nil_when_session_is_not_open
0
- assert_nil server('host'
, 'user').preprocess
0
+ assert_nil server('host'
).preprocess
0
def test_preprocess_should_return_result_of_session_preprocess
0
- srv = server('host'
, 'user')
0
session = expect_connection_to(srv)
0
session.expects(:preprocess).returns(:result)
0
@@ -156,11 +172,11 @@ class ServerTest < Test::Unit::TestCase
0
def test_readers_should_return_empty_array_when_session_is_not_open
0
- assert_equal [], server('host'
, 'user').readers
0
+ assert_equal [], server('host'
).readers
0
def test_readers_should_return_all_listeners_when_session_is_open
0
- srv = server('host'
, 'user')
0
session = expect_connection_to(srv)
0
session.expects(:listeners).returns(1 => 2, 3 => 4, 5 => 6, 7 => 8)
0
@@ -168,11 +184,11 @@ class ServerTest < Test::Unit::TestCase
0
def test_writers_should_return_empty_array_when_session_is_not_open
0
- assert_equal [], server('host'
, 'user').writers
0
+ assert_equal [], server('host'
).writers
0
def test_writers_should_return_all_listeners_that_are_pending_writes_when_session_is_open
0
- srv = server('host'
, 'user')
0
session = expect_connection_to(srv)
0
listeners = { writer(:ready) => 1, writer(:reader) => 2,
0
writer(:reader) => 3, writer(:idle) => 4, writer(:ready) => 5 }
0
@@ -182,11 +198,11 @@ class ServerTest < Test::Unit::TestCase
0
def test_postprocess_should_return_true_when_session_is_not_open
0
- assert_equal true, server('host'
, 'user').postprocess([], [])
0
+ assert_equal true, server('host'
).postprocess([], [])
0
def test_postprocess_should_call_session_postprocess_with_ios_belonging_to_session
0
- srv = server('host'
, 'user')
0
session = expect_connection_to(srv)
0
session.expects(:listeners).returns(1 => 2, 3 => 4, 5 => 6, 7 => 8)
0
session.expects(:postprocess).with([1,3], [7]).returns(:result)
0
@@ -196,8 +212,8 @@ class ServerTest < Test::Unit::TestCase
0
- def server(host, user, options={})
0
- Net::SSH::Multi::Server.new(@master, host, user, options)
0
+ def server(host, options={})
0
+ Net::SSH::Multi::Server.new(@master, host, options)
0
def expect_connection_to(server)
Comments
No one has commented yet.