def setUp(self): super(TestGetProxySocket, self).setUp() self.proxy_patcher = mock.patch.object(paramiko, "ProxyCommand") self.proxy_patcher.start() self.proxy = ssh.SSH('proxy.address', username='******') self.client = ssh.SSH('123.546.789.0', username='******') self.mutable = [True]
def test_connect_with_proxy_socket(self): self.client = ssh.SSH('123.456.789.0', username='******', proxy=self.proxy) self.client.connect() paramiko.ProxyCommand.assert_called_with( 'ssh -o ConnectTimeout=20 ' ' -A [email protected] nc 123.456.789.0 22')
def test_connect_with_proxy_socket_and_options(self): options = { 'BatchMode': 'yes', 'CheckHostIP': 'yes', 'ChallengeResponseAuthentication': 'no', 'Ciphers': 'cast128-cbc,aes256-ctr', } self.proxy = ssh.SSH('proxy.address', username='******', options=options) self.client = ssh.SSH('123.456.789.0', username='******', proxy=self.proxy) self.client.connect() paramiko.ProxyCommand.assert_called_with( 'ssh -o ConnectTimeout=20 -o BatchMode=yes ' '-o ChallengeResponseAuthentication=no ' '-o CheckHostIP=yes -o Ciphers=cast128-cbc,aes256-ctr ' '-A [email protected] nc 123.456.789.0 22')
def setUp(self): super(TestRemoteExecuteWithProxy, self).setUp() self.proxy_patcher = mock.patch.object(paramiko, "ProxyCommand") self.proxy_patcher.start() proxy = ssh.SSH('proxy-address', username='******') self.client = ssh.SSH('123.456.789.0', username='******', proxy=proxy) self.client._handle_tty_required = mock.Mock(return_value=False) self.client._handle_password_prompt = mock.Mock(return_value=False) self.mock_chan = mock.MagicMock() mock_transport = mock.MagicMock() mock_transport.open_session.return_value = self.mock_chan self.client.get_transport = mock.MagicMock(return_value=mock_transport) self.mock_chan.exec_command = mock.MagicMock() self.mock_chan.makefile.side_effect = self.mkfile self.mock_chan.makefile_stderr.side_effect = ( lambda x: self.mkfile(x, err=True)) self.example_command = 'echo hello' self.example_output = 'hello'
def test_connect_with_proxy_socket_private_key(self): """Test when proxy inits with private key string. Overrides self.client and self.proxy from setUp. """ self.proxy.private_key = self.rsakey self.client = ssh.SSH('123.456.789.0', username='******', proxy=self.proxy) self.client.connect() self.assertTrue(paramiko.ProxyCommand.called) ident = ' -i ' begin = paramiko.ProxyCommand.call_args[0][0].index(ident) end = paramiko.ProxyCommand.call_args[0][0].find( ' ', begin + len(ident)) tempfilepath = (paramiko.ProxyCommand.call_args[0][0][begin + len(ident):end]) paramiko.ProxyCommand.assert_called_with( 'ssh -o ConnectTimeout=20 ' ' -A [email protected] ' '-i %s nc 123.456.789.0 22' % tempfilepath)
def setUp(self): super(TestPasswordPrompt, self).setUp() ssh.LOG = mock.MagicMock() self.client = ssh.SSH('123.456.789.0', password='******') self.stdout = mock.MagicMock() self.stdin = mock.MagicMock()
def test_test_connection_fail_other(self): self.client = ssh.SSH('123.456.789.0', username='******', proxy=self.proxy) self.mock_connect.side_effect = Exception self.assertFalse(self.client.test_connection())
def test_test_connection_valid_key(self): self.client = ssh.SSH('123.456.789.0', username='******', proxy=self.proxy) self.client.private_key = self.dsakey self.assertTrue(self.client.test_connection())
def test_test_connection(self): self.client = ssh.SSH('123.456.789.0', username='******', proxy=self.proxy) self.assertTrue(self.client.test_connection())
def setUp(self): super(TestProxy, self).setUp() self.proxy_patcher = mock.patch.object(paramiko, "ProxyCommand") self.proxy_patcher.start() self.proxy = ssh.SSH('proxy.address', username='******')
def setUp(self): super(TestTestConnection, self).setUp() self.host = '123.456.789.0' self.client = ssh.SSH(self.host, username='******')
def test_default_user_is_root(self, mock_LOG): self.client = ssh.SSH('123.456.789.0') self.client._connect() default = self.mock_connect.call_args[1]['username'] self.assertEqual(default, 'root')
def setUp(self): super(TestSSHKeyString, self).setUp() self.host = '123.456.789.0' self.client = ssh.SSH(self.host, username='******')
def setUp(self): super(TestTTYRequired, self).setUp() self.client = ssh.SSH('123.456.789.0', password='******') self.stdout = mock.MagicMock() self.stdin = mock.MagicMock()
def setUp(self): super(TestProxy, self).setUp() self.gateway = ssh.SSH('gateway.address', username='******')