def test_keyboard_interupt(self, subprocess): """Testing a value server installlation.""" subprocess.return_value.returncode = 1 subprocess.return_value.communicate.side_effect = KeyboardInterrupt() mock_ansible_logs = 'test0\ntest1\n' byte_ansible_logs = bytes(mock_ansible_logs, 'utf-8') subprocess.return_value.stdout = io.BytesIO(byte_ansible_logs) cred_out = io.StringIO() cac = InstallServerCommand(SUBPARSER) with redirect_stdout(cred_out): cac.main(self.args) expected = mock_ansible_logs + _(messages.INSTALLATION_CANCELED) self.assertIn(expected, cred_out.getvalue().strip())
def test_install_cli_failure(self, subprocess): """Testing a failed CLI installlation.""" subprocess.return_value.returncode = 1 subprocess.return_value.communicate.side_effect = self.effect mock_ansible_logs = 'test0\ntest1\n' byte_ansible_logs = bytes(mock_ansible_logs, 'utf-8') subprocess.return_value.stdout = io.BytesIO(byte_ansible_logs) cred_out = io.StringIO() cac = InstallCLICommand(SUBPARSER) with redirect_stdout(cred_out): cac.main(self.args) expected = mock_ansible_logs + _(messages.CLI_INSTALLATION_FAILED) self.assertIn(expected, cred_out.getvalue().strip())
def test_configure_server_missing_host(self): """Testing option to configure server missing host.""" cred_out = io.StringIO() cac = InstallCLICommand(SUBPARSER) args = Namespace(server_host=None, server_port=9433, offline_files=None, home_dir=None) with redirect_stdout(cred_out): with self.assertRaises(SystemExit): cac.main(args) expected = _(messages.CLI_INSTALL_MUST_SPECIFY_PORT_AND_HOST) self.assertIn(expected, cred_out.getvalue().strip())
def test_install_server_success(self, subprocess): """Testing the installation of server command was successful.""" subprocess.return_value.returncode = 0 subprocess.return_value.communicate.side_effect = self.effect mock_ansible_logs = 'test0\ntest1\n' byte_ansible_logs = bytes(mock_ansible_logs, 'utf-8') subprocess.return_value.stdout = io.BytesIO(byte_ansible_logs) cred_out = io.StringIO() cac = InstallServerCommand(SUBPARSER) with redirect_stdout(cred_out): cac.main(self.args) expected = mock_ansible_logs + _( messages.SERVER_INSTALLATION_SUCCESSFUL) self.assertIn(expected, cred_out.getvalue().strip())
def test_downstream_vars(self, subprocess, downstream): """Test that args are included if downstream is set to true.""" downstream.return_value = True subprocess.return_value.returncode = 0 subprocess.return_value.communicate.side_effect = self.effect mock_ansible_logs = 'test0\ntest1\n' byte_ansible_logs = bytes(mock_ansible_logs, 'utf-8') subprocess.return_value.stdout = io.BytesIO(byte_ansible_logs) cred_out = io.StringIO() cac = InstallServerCommand(SUBPARSER) with redirect_stdout(cred_out): cac.main(self.args) expected = mock_ansible_logs + _( messages.SERVER_INSTALLATION_SUCCESSFUL) self.assertIn(expected, cred_out.getvalue().strip())
def test_install_server_critical_failure(self, subprocess): """Testing a failed server installlation.""" subprocess.return_value.returncode = 1 subprocess.return_value.communicate.side_effect = self.effect_error mock_ansible_logs = 'test0\ntest1\n' byte_ansible_logs = bytes(mock_ansible_logs, 'utf-8') subprocess.return_value.stdout = io.BytesIO(byte_ansible_logs) cred_out = io.StringIO() cac = InstallServerCommand(SUBPARSER) with redirect_stdout(cred_out): cac.main(self.args) expected = mock_ansible_logs + _( messages.SERVER_INSTALLATION_FAILED) cred_output = cred_out.getvalue().strip() self.assertIn(expected, cred_output) byte_string = self.effect_error[0][1] self.assertIn(byte_string.decode('utf-8'), cred_output)
def test_configure_server(self, subprocess): """Testing option to configure server.""" subprocess.return_value.returncode = 1 subprocess.return_value.communicate.side_effect = ValueError() mock_ansible_logs = 'test0\ntest1\n' byte_ansible_logs = bytes(mock_ansible_logs, 'utf-8') subprocess.return_value.stdout = io.BytesIO(byte_ansible_logs) cred_out = io.StringIO() cac = InstallCLICommand(SUBPARSER) args = Namespace(server_port='9433', server_host='127.0.0.1', offline_files=None, home_dir=None) with redirect_stdout(cred_out): cac.main(args) expected = mock_ansible_logs + _(messages.CLI_INSTALLATION_FAILED) self.assertIn(expected, cred_out.getvalue().strip())