コード例 #1
0
    def setUp(self):
        super(TestIsNewContributor, self).setUp()

        self.payload = payload.Payload({'repository': {'fork': False}})
        self.handler = HighfiveHandlerMock(
            self.payload, integration_token=''
        ).handler
コード例 #2
0
    def new_pr(number=7,
               pr_body='The PR comment.',
               pr_url='https://the.url/',
               repo_name='repo-name',
               repo_owner='repo-owner',
               pr_author='prAuthor'):
        with open(get_fake_filename('open-pr.payload'), 'r') as fin:
            p = json.load(fin)

        p['number'] = number
        p['pull_request']['body'] = pr_body
        p['pull_request']['url'] = pr_url
        p['pull_request']['base']['repo']['name'] = repo_name
        p['pull_request']['base']['repo']['owner']['login'] = repo_owner
        p['pull_request']['user']['login'] = pr_author

        return payload.Payload(p)
コード例 #3
0
 def new_comment():
     with open(get_fake_filename('create-comment.payload'), 'r') as fin:
         p = json.load(fin)
     return payload.Payload(p)
コード例 #4
0
 def mock_handler(cls):
     cls.handler = HighfiveHandlerMock(
         payload.Payload({'repository': {'fork': False}}), integration_token=''
     ).handler
コード例 #5
0
        if not (author == commenter or (
                    self.payload['issue', 'assignee'] \
                    and commenter == self.payload['issue', 'assignee', 'login']
        )):
            # Check if commenter is a collaborator.
            if not self.is_collaborator(commenter, owner, repo):
                return

        # Check for r? and set the assignee.
        msg = self.payload['comment', 'body']
        reviewer = self.find_reviewer(msg)
        if reviewer:
            issue = str(self.payload['issue', 'number'])
            self.set_assignee(reviewer, owner, repo, issue,
                              self.integration_user, author, None)


if __name__ == "__main__":
    print "Content-Type: text/html;charset=utf-8"
    print

    cgitb.enable()

    post = cgi.FieldStorage()
    payload_raw = post.getfirst("payload", '')
    try:
        handler = HighfiveHandler(payload.Payload(json.loads(payload_raw)))
        handler.run()
    except UnsupportedRepoError:
        print "Unsupported repository"