def test_resultcontainer_contains_only_result_objects(self, mock_get): mock_response = mock.Mock() mock_response.json.return_value = self.mock_results_data mock_response.status_code = 200 mock_get.return_value = mock_response results = self.client.results(Run(self.mock_runs_data[0])) self.assertTrue(all([isinstance(r, Result) for r in results]))
def test_resultcontainer_oldest_plan(self, mock_get): mock_response = mock.Mock() mock_response.json.return_value = self.mock_results_data mock_response.status_code = 200 mock_get.return_value = mock_response results = self.client.results(Run(self.mock_runs_data[0])) oldest_result = results.oldest() self.assertTrue(isinstance(oldest_result, Result)) self.assertEqual(oldest_result.id, 22)
def test_resultcontainer_untested_results(self, mock_get): mock_response = mock.Mock() mock_response.json.side_effect = [ self.mock_results_data, self.mock_status_data ] mock_response.status_code = 200 mock_get.return_value = mock_response results = self.client.results(Run(self.mock_runs_data[0])) untested = results.untested() self.assertEqual(len(untested), 1) self.assertTrue([lambda x: isinstance(x, Result) for x in untested]) self.assertEqual(untested[0].id, 33)
def add_plan_entry(self, plan_name, entry_name, suite_name, description, case_ids=None): suite = self.suite(suite_name) obj = PlanEntry() obj.plan_id = self.plan(plan_name).id obj.suite_id = suite.id obj.name = entry_name obj.description = description if case_ids: obj.cases = case_ids obj.include_all = True entries = self.api.add_plan_entry(obj.raw_data()) return Run(entries["runs"][0])
def _close_run(self, obj): return Run(self.api.close_run(obj.id))
def _update_run(self, obj): return Run(self.api.update_run(obj.raw_data()))
def _add_run(self, obj): obj.project = obj.project or self.project(self._project_id) return Run(self.api.add_run(obj.raw_data()))
def run(self): return Run()
def run(self): return Run(self.api.run_with_id(self._content.get('run_id')))
def setUp(self): self.mock_run_data = [{ "assignedto_id": 6, "blocked_count": 1, "case_ids": [8, 9], "completed_on": None, "config": "Mock Config", "config_ids": [2, 6], "created_by": 5, "created_on": 1393845644, "custom_status1_count": 0, "custom_status2_count": 0, "custom_status3_count": 0, "custom_status4_count": 0, "custom_status5_count": 0, "custom_status6_count": 0, "custom_status7_count": 0, "description": "Mock description", "failed_count": 2, "id": 81, "include_all": False, "is_completed": False, "milestone_id": 9, "name": "Mock Name", "passed_count": 3, "plan_id": 80, "project_id": 1, "retest_count": 7, "suite_id": 1, "untested_count": 17, "url": "http://mock_server/testrail/index.php?/runs/view/81" }, { "assignedto_id": 7, "blocked_count": 1, "completed_on": 100000, "config": "Mock Config", "config_ids": [2, 6], "created_by": 1, "created_on": None, "custom_status1_count": 0, "custom_status2_count": 0, "custom_status3_count": 0, "custom_status4_count": 0, "custom_status5_count": 0, "custom_status6_count": 0, "custom_status7_count": 0, "description": None, "failed_count": 2, "id": 81, "include_all": False, "is_completed": False, "milestone_id": None, "name": "Mock Name", "passed_count": 2, "plan_id": 80, "project_id": 1, "retest_count": 1, "suite_id": 4, "untested_count": 3, "url": "http://mock_server/testrail/index.php?/runs/view/81" }] self.mock_run_user = [{ "email": "*****@*****.**", "id": 5, "is_active": True, "name": "Mock Name 1" }, { "email": "*****@*****.**", "id": 6, "is_active": True, "name": "Mock Name 2" }] self.mock_run_cases = [ { "created_by": 5, "created_on": 1392300984, "estimate": "1m 5s", "estimate_forecast": None, "id": 8, "milestone_id": 9, "priority_id": 2, "refs": "RF-1, RF-2", "section_id": 1, "suite_id": 1, "title": "Change document attributes (author, title, organization)", "type_id": 4, "updated_by": 6, "updated_on": 1393586511 }, { "created_by": 5, "created_on": 1392300984, "estimate": "1m 5s", "estimate_forecast": None, "id": 9, "milestone_id": 9, "priority_id": 2, "refs": "RF-1, RF-2", "section_id": 1, "suite_id": 2, "title": "Change document attributes (author, title, organization)", "type_id": 4, "updated_by": 6, "updated_on": 1393586511 }, ] self.mock_mstone_data = [{ "completed_on": 1389968184, "description": "Mock milestone description", "due_on": 1391968184, "id": 9, "is_completed": True, "name": "Release 1.5", "project_id": 1, "url": "http://<server>/testrail/index.php?/milestones/view/1" }] self.mock_suite_data = [ { "description": "suite description", "id": 1, "name": "Setup & Installation", "project_id": 1, "url": "http://<server>/index.php?/suites/view/1", "is_baseline": False, "is_completed": True, "is_master": True, "completed_on": 1453504099 }, { "description": "suite description 2", "id": 2, "name": "Setup & Installation", "project_id": 1, "url": "http://<server>/index.php?/suites/view/1", "is_baseline": False, "is_completed": False, "is_master": True, "completed_on": None }, ] self.mock_plan_data = [ { "id": 80, }, ] self.mock_project_data = [{ "id": 1, }, { "id": 99, }] self.run = Run(self.mock_run_data[0]) self.run2 = Run(self.mock_run_data[1])