Пример #1
0
 def setUp(self):
     self.fake_cmd = 'echo "me"'
     self.fake_resp = 'me'
     self.long_cmd = lambda lines: 'for (( i=0; i<%s; i+=1 )) do echo $i; sleep 1; done' % (lines,)
     self.user_key = USER_KEY
     self.host = '127.0.0.1'
     self.listen_socket = make_socket(self.host)
     self.listen_port = self.listen_socket.getsockname()[1]
     self.server = start_server(self.listen_socket)
     self.agent = FakeAgent()
     self.agent.add_key(USER_KEY)
     self.client = ParallelSSHClient([self.host], port=self.listen_port,
                                     pkey=self.user_key,
                                     agent=self.agent)
Пример #2
0
 def test_ssh_agent_authentication(self):
     """Test authentication via SSH agent.
     Do not provide public key to use when creating SSHClient,
     instead override the client's agent with our own fake SSH agent,
     add our to key to agent and try to login to server.
     Key should be automatically picked up from the overriden agent"""
     agent = FakeAgent()
     agent.add_key(USER_KEY)
     client = SSHClient(self.host, port=self.listen_port, agent=agent)
     channel, host, stdout, stderr = client.exec_command(self.fake_cmd)
     output = list(stdout)
     stderr = list(stderr)
     expected = [self.fake_resp]
     self.assertEqual(expected,
                      output,
                      msg="Got unexpected command output - %s" % (output, ))
     del client