def test_positive_end_to_end_crud_and_list(self): """CRUD test + list test for report templates :id: 2a143ddf-683f-49e2-badb-f9a387cfc53c :setup: User with reporting access rights and following setup: create - doesn't require other setup list - at least two report templates info - some report template update - some report template that is not locked delete - some report template that is not locked :steps: 1. hammer report-template create ... 2. hammer report-template list ... 3. hammer report-template info ... 4. hammer report-template update ... # change some value 5. hammer report-template delete ... :expectedresults: Report is created, report templates are listed, data about report template is showed, report template is updated, and deleted. :CaseImportance: Critical """ # create name = gen_string('alpha') report_template = make_report_template({'name': name}) self.assertEqual(report_template['name'], name) # list - create second template tmp_name = gen_string('alpha') tmp_report_template = make_report_template({'name': tmp_name}) result_list = ReportTemplate.list() self.assertIn(name, [rt['name'] for rt in result_list]) # info result = ReportTemplate.info({'id': report_template['id']}) self.assertEqual(result['name'], name) # update new_name = gen_string('alpha') result = ReportTemplate.update({ 'name': report_template['name'], 'new-name': new_name }) self.assertEqual(result[0]['name'], new_name) rt_list = ReportTemplate.list() self.assertNotIn(name, [rt['name'] for rt in rt_list]) # delete tmp ReportTemplate.delete({'name': tmp_report_template['name']}) with self.assertRaises(CLIReturnCodeError): ReportTemplate.info({'id': tmp_report_template['id']})
def test_negative_delete_locked_report(self): """Try to delete a locked report template :id: 84b577db-144e-4871-a42e-e93887464986 :setup: User with reporting access rights, some report template that is locked :steps: 1. hammer report-template delete ... :expectedresults: Report is not deleted :CaseImportance: Medium """ name = gen_string('alpha') report_template = make_report_template({'name': name}) ReportTemplate.update({'name': report_template['name'], 'locked': 1}) with self.assertRaises(CLIReturnCodeError): ReportTemplate.delete({'name': report_template['name']})