1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46
|
require 'common'
require 'net/ssh/verifiers/always'
require 'ostruct'
class TestAlways < NetSSHTest
def test_raises_unknown_key_error_if_empty
secure_verifier = Net::SSH::Verifiers::Always.new
host_keys = []
def host_keys.host
'foo'
end
assert_raises(Net::SSH::HostKeyUnknown) {
secure_verifier.verify(session: OpenStruct.new(host_keys: host_keys))
}
end
def test_passess_if_sam
secure_verifier = Net::SSH::Verifiers::Always.new
key = OpenStruct.new(ssh_type: 'key_type', to_blob: 'keyblob')
host_keys = [key]
def host_keys.host
'foo'
end
secure_verifier.verify(session: OpenStruct.new(host_keys: host_keys), key: key)
end
def test_raises_mismatch_error_if_not_the_same
secure_verifier = Net::SSH::Verifiers::Always.new
key_in_known_hosts = OpenStruct.new(ssh_type: 'key_type', to_blob: 'keyblob')
key_actual = OpenStruct.new(ssh_type: 'key_type', to_blob: 'not keyblob')
host_keys = [key_in_known_hosts]
def host_keys.host
'foo'
end
assert_raises(Net::SSH::HostKeyMismatch) {
secure_verifier.verify(session: OpenStruct.new(host_keys: host_keys), key: key_actual)
}
end
def test_verify_signature
secure_verifier = Net::SSH::Verifiers::Always.new
assert(true, secure_verifier.verify_signature { true })
end
end
|