Example #1
0
 def get_issue(self, issue_key):
     issue = Issue(issue_key)
     issue.summary = 'Example issue'
     issue.description = None
     issue.status = 'Open'
     issue.creator = 'kyle'
     issue.assignee = 'kyle'
     issue.links = []
     return issue
Example #2
0
    def test_issue_creation_from_json(self):
        json = {
            'key': 'GOJI-1',
            'fields': {
                'status': {
                    'name': 'closed'
                },
                'summary': 'Issue Summary',
                'description': 'An awesome issue description',
                'creator': {
                    'name': 'kyle',
                    'displayName': 'Kyle Fuller',
                },
                'assignee': {
                    'name': 'kyle',
                    'displayName': 'Kyle Fuller',
                },
                'status': {
                    'name': 'To Do',
                },
                'issuelinks': [
                    {
                        'type': {
                            'name': 'Relates',
                            'inward': 'related to',
                            'outward': 'relates to',
                        },
                        'outwardIssue': {
                            'key': 'GOJI-2',
                            'fields': {
                                'summary': 'Hello world',
                                'status': {
                                    'name': 'Open',
                                },
                            }
                        }
                    }
                ]
            },
        }

        issue = Issue.from_json(json)

        self.assertEqual(issue.key, 'GOJI-1')
        self.assertEqual(issue.summary, 'Issue Summary')
        self.assertEqual(issue.description, 'An awesome issue description')
        self.assertEqual(issue.creator.username, 'kyle')
        self.assertEqual(issue.assignee.username, 'kyle')
        self.assertEqual(issue.status, 'To Do')
        self.assertEqual(issue.links[0].outward_issue.key, 'GOJI-2')
        self.assertEqual(issue.links[0].link_type.name, 'Relates')
        self.assertEqual(issue.links[0].link_type.inward, 'related to')
        self.assertEqual(issue.links[0].link_type.outward, 'relates to')
Example #3
0
 def test_string_conversion(self):
     issue = Issue(key='GOJI-1')
     self.assertEqual(str(issue), 'GOJI-1')
Example #4
0
    def test_inward_string_conversion(self):
        link = IssueLink(IssueLinkType('relates', 'related to', 'relates to'))
        link.inward_issue = Issue('GOJI-15')
        link.inward_issue.status = 'Open'

        self.assertEqual(str(link), 'Related to: GOJI-15 (Open)')
Example #5
0
File: client.py Project: kylef/goji
 def create_issue(self, fields):
     response = self.post('issue', {'fields': fields})
     return Issue.from_json(response.json())
Example #6
0
File: client.py Project: kylef/goji
 def get_issue(self, issue_key):
     response = self.get('issue/%s' % issue_key)
     response.raise_for_status()
     return Issue.from_json(response.json())
Example #7
0
 def get_issue(self, issue_key):
     response = self.get('issue/%s' % issue_key)
     return Issue.from_json(response.json())
Example #8
0
 def get_issue(self, issue_key):
     url = urljoin(self.rest_base_url, 'issue/%s' % issue_key)
     request = requests.get(url, auth=self.auth)
     return Issue.from_json(request.json())
Example #9
0
File: client.py Project: lkbm/goji
 def create_issue(self, fields):
     response = self.post('issue', {'fields': fields})
     return Issue.from_json(response.json())