def test_get_last_output(self):
     host = '127.0.0.9'
     server = OpenSSHServer(listen_ip=host, port=self.port)
     server.start_server()
     try:
         hosts = [self.host, host]
         client = ParallelSSHClient(hosts,
                                    port=self.port,
                                    pkey=self.user_key)
         self.assertTrue(client.cmds is None)
         self.assertTrue(client.get_last_output() is None)
         client.run_command(self.cmd)
         self.assertTrue(client.cmds is not None)
         self.assertEqual(len(client.cmds), len(hosts))
         expected_stdout = [self.resp]
         expected_stderr = []
         output = client.get_last_output()
         self.assertIsInstance(output, list)
         self.assertEqual(len(output), len(hosts))
         self.assertIsInstance(output[0], HostOutput)
         client.join(output)
         for i, host in enumerate(hosts):
             self.assertEqual(output[i].host, host)
             exit_code = output[i].exit_code
             _stdout = list(output[i].stdout)
             _stderr = list(output[i].stderr)
             self.assertEqual(exit_code, 0)
             self.assertListEqual(expected_stdout, _stdout)
             self.assertListEqual(expected_stderr, _stderr)
     finally:
         server.stop()
 def test_get_last_output(self):
     host = '127.0.0.9'
     server = OpenSSHServer(listen_ip=host, port=self.port)
     server.start_server()
     try:
         hosts = [self.host, host]
         client = ParallelSSHClient(hosts, port=self.port, pkey=self.user_key)
         self.assertTrue(client.cmds is None)
         self.assertTrue(client.get_last_output() is None)
         client.run_command(self.cmd)
         self.assertTrue(client.cmds is not None)
         self.assertEqual(len(client.cmds), len(hosts))
         output = client.get_last_output()
         self.assertTrue(len(output), len(hosts))
         client.join(output)
         for i, host in enumerate(hosts):
             self.assertEqual(output[i].host, host)
             exit_code = output[i].exit_code
             self.assertEqual(exit_code, 0)
     finally:
         server.stop()