def test_positive_report_help(self): """hammer level of help included in test: Base level hammer help includes report-templates, Command level hammer help contains usage details, Subcommand level hammer help contains usage details :id: ec395f47-a55f-441a-9cc6-e49400c83e8e :setup: Any satellite user :steps: 1. hammer --help 2. hammer report-template --help 3. hammer report-template create --help :expectedresults: report-templates command is included in help, report-templates command details are displayed, report-templates create command details are displayed :CaseImportance: High """ base = Base().execute('--help') self.assertGreater(len([i for i in base if 'report-template' in i]), 0) base = Base().execute('report-template --help') self.assertGreater(len([i for i in base if 'hammer report-template' in i]), 0) self.assertGreater(len([i for i in base if 'info' and 'report template' in i]), 0) self.assertGreater(len([i for i in base if 'generate' and 'report' in i]), 0) base = Base().execute('report-template create --help') self.assertGreater(len([i for i in base if 'hammer report-template create' in i]), 0) self.assertGreater(len([i for i in base if '--audit-comment' in i]), 0) self.assertGreater(len([i for i in base if '--interactive' in i]), 0)
def test_handle_response_error(self): """Check handle_response raise ``CLIReturnCodeError`` when return_code is not 0 """ base = Base() response = mock.Mock() response.return_code = 1 self.assertRaises(CLIReturnCodeError, base._handle_response, response)
def test_handle_response_success(self): """Check handle_response returns stdout when the is no problem on ssh execution """ base = Base() response = mock.Mock() response.status = 0 response.stderr = [] assert response.stdout == base._handle_response(response)
def test_handle_response_success(self): """Check handle_response returns stdout when the is no problem on ssh execution """ base = Base() response = mock.Mock() response.return_code = 0 response.stderr = [] self.assertEqual(response.stdout, base._handle_response(response))
def test_handle_response_logging_when_stderr_not_empty(self, warning): """Check handle_response log stderr when it is not empty""" base = Base() response = mock.Mock() response.status = 0 response.stderr = ['not empty'] assert response.stdout == base._handle_response(response) warning.assert_called_once_with(f'stderr contains following message:\n{response.stderr}') warning.reset_mock() assert response.stdout == base._handle_response(response, True) assert not warning.called, 'Should not be called when ignore_stderr is True'
def assert_response_error(self, expected_error, stderr=u'some error'): """Check error is raised when handling cli response :param expected_error: expected error (class) :param stderr: error present on stderr (str) :return: """ base = Base() response = mock.Mock() response.return_code = 1 response.stderr = [stderr] self.assertRaises(expected_error, base._handle_response, response)
def assert_response_error(self, expected_error, stderr='some error'): """Check error is raised when handling cli response :param expected_error: expected error (class) :param stderr: error present on stderr (str) :return: """ base = Base() response = mock.Mock() response.status = 1 response.stderr = [stderr] with pytest.raises(expected_error): base._handle_response(response)
def test_positive_report_help(): """hammer level of help included in test: Base level hammer help includes report-templates, Command level hammer help contains usage details, Subcommand level hammer help contains usage details :id: ec395f47-a55f-441a-9cc6-e49400c83e8e :setup: Any satellite user :steps: 1. hammer --help 2. hammer report-template --help 3. hammer report-template create --help :expectedresults: report-templates command is included in help, report-templates command details are displayed, report-templates create command details are displayed """ command_output = '\n'.join(Base().execute('--help')) assert 'report-template' in command_output command_output = '\n'.join(Base().execute('report-template --help')) assert all([ phrase in command_output for phrase in [ 'hammer report-template', 'info', 'report template', 'generate', 'report', ] ]) command_output = '\n'.join(Base().execute('report-template create --help')) assert all([ phrase in command_output for phrase in ['hammer report-template create', '--audit-comment', '--interactive'] ])
def test_handle_response_logging_when_stderr_not_empty(self, warning): """Check handle_response log stderr when it is not empty""" base = Base() response = mock.Mock() response.return_code = 0 response.stderr = [u'not empty'] self.assertEqual(response.stdout, base._handle_response(response)) warning.assert_called_once_with( u'stderr contains following message:\n{}'.format(response.stderr)) warning.reset_mock() self.assertEqual(response.stdout, base._handle_response(response, True)) self.assertFalse(warning.called, u'Should not be called when ignore_stderr is True')