class RedmineExtractIssueTests(TestCase): def setUp(self): self.issue_data = { 'id': sentinel.issue_id, 'subject': sentinel.title } self.tracker = Redmine('http://the_base_url') def _issue(self): return self.tracker.extract_issue(self.issue_data) def test_issue_id(self): eq_(self._issue().issue_id, sentinel.issue_id) def test_issue_title(self): eq_(self._issue().title, sentinel.title) def test_tag_default(self): eq_(self._issue().tag, 'Issue') def test_tag(self): self.issue_data['tracker'] = {'name': sentinel.tag} eq_(self._issue().tag, sentinel.tag) def test_parent_default(self): eq_(self._issue().parent, None) def test_parent(self): self.issue_data['parent'] = {'id': sentinel.parent} eq_(self._issue().parent, sentinel.parent) def test_status_default(self): eq_(self._issue().status, None) def test_status(self): self.issue_data['status'] = {'name': sentinel.status} eq_(self._issue().status, sentinel.status) def test_priority_default(self): eq_(self._issue().priority, None) def test_priority(self): self.issue_data['priority'] = {'name': sentinel.priority} eq_(self._issue().priority, sentinel.priority) def test_assignee_default(self): eq_(self._issue().assignee, None) def test_assignee(self): self.issue_data['assigned_to'] = {'name': sentinel.assignee} eq_(self._issue().assignee, sentinel.assignee) def test_project_default(self): eq_(self._issue().project, None) def test_project(self): self.issue_data['project'] = {'name': sentinel.project} eq_(self._issue().project, sentinel.project) def test_description_default(self): eq_(self._issue().description, None) def test_description(self): self.issue_data['description'] = sentinel.description eq_(self._issue().description, sentinel.description)