Exemplo n.º 1
0
 def make_fakes(cls):
     cls.fakes = {
         'diff': {
             'normal': load_fake('normal.diff'),
         },
         'config': fakes.get_repo_configs(),
         'global_': fakes.get_global_configs(),
     }
Exemplo n.º 2
0
    def make_mocks(cls, patcherize):
        cls.mocks = patcherize((
            ('ConfigParser', 'highfive.newpr.ConfigParser'),
            ('load_json_file', 'highfive.newpr.HighfiveHandler._load_json_file'),
        ))

        cls.mocks['load_json_file'].side_effect = (
            fakes.get_repo_configs()['individuals_no_dirs'],
            fakes.get_global_configs()['base'],
        )
Exemplo n.º 3
0
 def make_fakes(cls):
     cls.fakes = {
         'diff': {
             'normal': load_fake('normal.diff'),
             'travis-yml': load_fake('travis-yml.diff'),
             'mentions': load_fake('mentions.diff'),
         },
         'config': fakes.get_repo_configs(),
         'global_': fakes.get_global_configs(),
     }
    def test_new_pr_contributor_with_labels(self):
        self.mocks['load_json_file'].side_effect = (
            fakes.get_repo_configs()['individuals_no_dirs_labels'],
            fakes.get_global_configs()['base'],
        )
        payload = fakes.Payload.new_pr(repo_owner='rust-lang',
                                       repo_name='rust',
                                       pr_author='pnkfelix')
        handler = newpr.HighfiveHandler(payload, dummy_config())

        api_req_mock = ApiReqMocker([
            (
                ('GET', 'https://the.url/', None,
                 'application/vnd.github.v3.diff'),
                {
                    'body': fakes.load_fake('normal.diff')
                },
            ),
            (
                ('PATCH', newpr.issue_url % ('rust-lang', 'rust', '7'), {
                    'assignee': 'nrc'
                }),
                {
                    'body': {}
                },
            ),
            (
                ('GET',
                 newpr.commit_search_url % ('rust-lang', 'rust', 'pnkfelix'),
                 None, 'application/vnd.github.cloak-preview'),
                {
                    'body': '{"total_count": 1}'
                },
            ),
            (
                ('POST', newpr.post_comment_url % ('rust-lang', 'rust', '7'), {
                    'body':
                    'r? @nrc\n\n(rust_highfive has picked a reviewer for you, use r? to override)'
                }),
                {
                    'body': {}
                },
            ),
            (
                ('POST', newpr.issue_labels_url % ('rust-lang', 'rust', '7'),
                 ['a', 'b']),
                {
                    'body': {}
                },
            ),
        ])
        handler.new_pr()

        api_req_mock.verify_calls()
Exemplo n.º 5
0
    def make_mocks(cls, patcherize):
        cls.mocks = patcherize((
            ('get_irc_nick', 'highfive.newpr.HighfiveHandler.get_irc_nick'),
            ('ConfigParser', 'highfive.newpr.ConfigParser'),
            ('load_json_file', 'highfive.newpr.HighfiveHandler._load_json_file'),
        ))

        cls.mocks['get_irc_nick'].return_value = None

        cls.mocks['load_json_file'].side_effect = (
            fakes.get_repo_configs()['individuals_no_dirs'],
            fakes.get_global_configs()['base'],
        )
Exemplo n.º 6
0
    def test_new_pr_contributor_with_labels(self):
        self.mocks['load_json_file'].side_effect = (
            fakes.get_repo_configs()['individuals_no_dirs_labels'],
            fakes.get_global_configs()['base'],
        )
        payload = fakes.Payload.new_pr(
            repo_owner='rust-lang', repo_name='rust', pr_author='pnkfelix'
        )
        handler = newpr.HighfiveHandler(payload, dummy_config())

        api_req_mock = ApiReqMocker([
            (
                (
                    'GET', 'https://the.url/', None,
                    'application/vnd.github.v3.diff'
                ),
                {'body': fakes.load_fake('normal.diff')},
            ),
            (
                (
                    'PATCH', newpr.issue_url % ('rust-lang', 'rust', '7'),
                    {'assignee': 'nrc'}
                ),
                {'body': {}},
            ),
            (
                (
                    'GET', newpr.commit_search_url % ('rust-lang', 'rust', 'pnkfelix'),
                    None, 'application/vnd.github.cloak-preview'
                ),
                {'body': '{"total_count": 1}'},
            ),
            (
                (
                    'POST', newpr.post_comment_url % ('rust-lang', 'rust', '7'),
                    {'body': 'r? @nrc\n\n(rust_highfive has picked a reviewer for you, use r? to override)'}
                ),
                {'body': {}},
            ),
            (
                (
                    'POST', newpr.issue_labels_url % ('rust-lang', 'rust', '7'),
                    ['a', 'b']
                ),
                {'body': {}},
            ),
        ])
        handler.new_pr()

        api_req_mock.verify_calls()
Exemplo n.º 7
0
    def setUp(self):
        super(TestNewPr, self).setUp((
            ('get_irc_nick', 'highfive.newpr.HighfiveHandler.get_irc_nick'),
            ('ConfigParser', 'highfive.newpr.ConfigParser'),
            ('load_json_file', 'highfive.newpr.HighfiveHandler._load_json_file'),
        ))

        self.mocks['get_irc_nick'].return_value = None

        config_mock = mock.Mock()
        config_mock.get.side_effect = ('integration-user', 'integration-token')
        self.mocks['ConfigParser'].RawConfigParser.return_value = config_mock

        self.mocks['load_json_file'].side_effect = (
            fakes.get_repo_configs()['individuals_no_dirs'],
            fakes.get_global_configs()['base'],
        )
    def make_mocks(cls, patcherize):
        cls.mocks = patcherize((
            ('get_irc_nick', 'highfive.newpr.HighfiveHandler.get_irc_nick'),
            ('ConfigParser', 'highfive.newpr.ConfigParser'),
            ('load_json_file',
             'highfive.newpr.HighfiveHandler._load_json_file'),
        ))

        cls.mocks['get_irc_nick'].return_value = None

        config_mock = mock.Mock()
        config_mock.get.side_effect = ('integration-user', 'integration-token')
        cls.mocks['ConfigParser'].RawConfigParser.return_value = config_mock

        cls.mocks['load_json_file'].side_effect = (
            fakes.get_repo_configs()['individuals_no_dirs'],
            fakes.get_global_configs()['base'],
        )