Example #1
0
    def test_poll_updated(self, storage, get_project_triggers, get_projdef):
        project_triggers = {
            "foo": git_poller.PollerEntry(
                git_poller.ProjectTrigger(12, "t", "proj", "user", 1)
            ),
        }
        get_project_triggers.return_value = {
            "foo": git_poller.ProjectTrigger(12, "t", "proj", "user", 0, "r"),
        }
        get_projdef.return_value = None  # prevents trying to really poll

        git_poller._poll(project_triggers)
        self.assertEqual(0, project_triggers["foo"].trigger.queue_priority)
        self.assertEqual("r", project_triggers["foo"].trigger.definition_repo)
Example #2
0
    def test_poll_updated(self, storage, get_project_triggers, get_projdef):
        project_triggers = {
            'foo':
            git_poller.PollerEntry(
                git_poller.ProjectTrigger(12, 't', 'proj', 'user', 1)),
        }
        get_project_triggers.return_value = {
            'foo': git_poller.ProjectTrigger(12, 't', 'proj', 'user', 0, 'r'),
        }
        get_projdef.return_value = None  # prevents trying to really poll

        git_poller._poll(project_triggers)
        self.assertEqual(0, project_triggers['foo'].trigger.queue_priority)
        self.assertEqual('r', project_triggers['foo'].trigger.definition_repo)
Example #3
0
def _fake_trigger() -> git_poller.ProjectTrigger:
    return git_poller.ProjectTrigger(
        12,
        't',
        'proj',
        'user',
        1,
    )
Example #4
0
def _fake_trigger() -> git_poller.ProjectTrigger:
    return git_poller.ProjectTrigger(
        12,
        "t",
        "proj",
        "user",
        1,
    )
Example #5
0
    def test_poll_add(self, storage, get_project_triggers, get_projdef):
        get_project_triggers.return_value = {
            'foo': git_poller.ProjectTrigger(12, 't', 'proj', 'user', 1),
        }
        get_projdef.return_value = None  # prevents trying to really poll

        project_triggers = {}
        git_poller._poll(project_triggers)
        self.assertEqual(['foo'], list(project_triggers.keys()))
Example #6
0
    def test_poll_add(self, storage, get_project_triggers, get_projdef):
        get_project_triggers.return_value = {
            "foo": git_poller.ProjectTrigger(12, "t", "proj", "user", 1),
        }
        get_projdef.return_value = None  # prevents trying to really poll

        project_triggers = {}
        git_poller._poll(project_triggers)
        self.assertEqual(["foo"], list(project_triggers.keys()))
Example #7
0
 def test_get_refs_fatal(self, requests):
     requests.get().status_code = 500
     requests.get().text = "foobar"
     trigger = git_poller.ProjectTrigger(
         id=1, type="t", project="p", user="******", queue_priority=1
     )
     vals = []
     for sha, ref in git_poller._get_refs("doesnot matter", trigger):
         vals.append((sha, ref))
     self.assertEqual([], vals)
Example #8
0
 def test_get_refs_fatal(self, requests):
     requests.get().status_code = 500
     requests.get().text = 'foobar'
     trigger = git_poller.ProjectTrigger(id=1,
                                         type='t',
                                         project='p',
                                         user='******',
                                         queue_priority=1)
     vals = []
     for sha, ref in git_poller._get_refs('doesnot matter', trigger):
         vals.append((sha, ref))
     self.assertEqual([], vals)
Example #9
0
    def test_repo_changes_first_run(self, get_refs):
        trigger = git_poller.ProjectTrigger(
            id=1, type="t", project="p", user="******", queue_priority=1
        )
        refs = ["ref1"]
        get_refs.return_value = [
            ("sha1", "ref1"),
            ("sha2", "ref2"),
        ]
        cache = {}
        change_params = git_poller._get_repo_changes(cache, "url1", refs, trigger)
        self.assertEqual([], list(change_params))
        self.assertEqual({"url1": {"ref1": "sha1"}}, cache)

        refs = ["refs1", "ref2"]
        change_params = git_poller._get_repo_changes(cache, "url1", refs, trigger)
        self.assertEqual([], list(change_params))
        self.assertEqual({"url1": {"ref1": "sha1", "ref2": "sha2"}}, cache)
Example #10
0
    def test_get_refs(self, requests):
        requests.get().status_code = 200
        requests.get().text = """ignore
ignore
004015f12d4181355604efa7b429fc3bcbae08d27f40 refs/heads/master
004015f12d4181355604efa7b429fc3bcbae08d27f41 refs/pulls/123
"""
        trigger = git_poller.ProjectTrigger(
            id=1, type="t", project="p", user="******", queue_priority=1
        )
        vals = []
        for sha, ref in git_poller._get_refs("doesnot matter", trigger):
            vals.append((sha, ref))
        expected = [
            ("15f12d4181355604efa7b429fc3bcbae08d27f40", "refs/heads/master"),
            ("15f12d4181355604efa7b429fc3bcbae08d27f41", "refs/pulls/123"),
        ]
        self.assertEqual(expected, vals)
Example #11
0
    def test_get_refs(self, requests):
        requests.get().status_code = 200
        requests.get().text = '''ignore
ignore
004015f12d4181355604efa7b429fc3bcbae08d27f40 refs/heads/master
004015f12d4181355604efa7b429fc3bcbae08d27f41 refs/pulls/123
'''
        trigger = git_poller.ProjectTrigger(id=1,
                                            type='t',
                                            project='p',
                                            user='******',
                                            queue_priority=1)
        vals = []
        for sha, ref in git_poller._get_refs('doesnot matter', trigger):
            vals.append((sha, ref))
        expected = [
            ('15f12d4181355604efa7b429fc3bcbae08d27f40', 'refs/heads/master'),
            ('15f12d4181355604efa7b429fc3bcbae08d27f41', 'refs/pulls/123'),
        ]
        self.assertEqual(expected, vals)
Example #12
0
 def test_repo_changes_changed(self, get_refs):
     trigger = git_poller.ProjectTrigger(
         id=1, type="t", project="p", user="******", queue_priority=1
     )
     refs = ["ref1", "ref2"]
     get_refs.return_value = [
         ("sha1", "ref1"),
         ("sha2", "ref2"),
     ]
     cache = {"url1": {"ref1": "oldsha", "ref2": "sha2"}}
     change_params = git_poller._get_repo_changes(cache, "url1", refs, trigger)
     expected = [
         {
             "GIT_URL": "url1",
             "GIT_OLD_SHA": "oldsha",
             "GIT_SHA": "sha1",
             "GIT_REF": "ref1",
         }
     ]
     self.assertEqual(expected, list(change_params))
Example #13
0
 def test_repo_changes_changed(self, get_refs):
     trigger = git_poller.ProjectTrigger(id=1,
                                         type='t',
                                         project='p',
                                         user='******',
                                         queue_priority=1)
     refs = ['ref1', 'ref2']
     get_refs.return_value = [
         ('sha1', 'ref1'),
         ('sha2', 'ref2'),
     ]
     cache = {'url1': {'ref1': 'oldsha', 'ref2': 'sha2'}}
     change_params = git_poller._get_repo_changes(cache, 'url1', refs,
                                                  trigger)
     expected = [{
         'GIT_URL': 'url1',
         'GIT_OLD_SHA': 'oldsha',
         'GIT_SHA': 'sha1',
         'GIT_REF': 'ref1',
     }]
     self.assertEqual(expected, list(change_params))
Example #14
0
    def test_repo_changes_first_run(self, get_refs):
        trigger = git_poller.ProjectTrigger(id=1,
                                            type='t',
                                            project='p',
                                            user='******',
                                            queue_priority=1)
        refs = ['ref1']
        get_refs.return_value = [
            ('sha1', 'ref1'),
            ('sha2', 'ref2'),
        ]
        cache = {}
        change_params = git_poller._get_repo_changes(cache, 'url1', refs,
                                                     trigger)
        self.assertEqual([], list(change_params))
        self.assertEqual({'url1': {'ref1': 'sha1'}}, cache)

        refs = ['refs1', 'ref2']
        change_params = git_poller._get_repo_changes(cache, 'url1', refs,
                                                     trigger)
        self.assertEqual([], list(change_params))
        self.assertEqual({'url1': {'ref1': 'sha1', 'ref2': 'sha2'}}, cache)