Example #1
0
    def test_get_filter(self, compile):
        compile.return_value = 'compiled'
        f = gerrit.get_filter(
            dict(projects='p1,p2,p3',
                 comment_re='comment_re',
                 ignore_usernames='ignore_username1,ignore_username2'))

        print(f.filters[0].filters[1].fltr.authors)

        self.assertEquals('ignore_username1',
                          f.filters[0].filters[1].fltr.authors[0])
        self.assertEquals('ignore_username2',
                          f.filters[0].filters[1].fltr.authors[1])
        self.assertEquals('compiled', f.filters[0].filters[2].matcher)
        self.assertEquals(['p1', 'p2', 'p3'], f.filters[0].filters[3].projects)

        self.assertEquals(
            '('
            '(event is CommentAddedEvent)'
            ' AND ( NOT (author in [\'ignore_username1\', \'ignore_username2\']))'
            ' AND (comment matches comment_re)'
            ' AND (branch==master, project in [p1,p2,p3])'
            ') OR ('
            '(event is PatchsetCreatedEvent)'
            ' AND (branch==master, project in [p1,p2,p3])'
            ')', str(f))
    def __init__(self, env=None):
        logging.getLogger('sqlalchemy').setLevel(logging.DEBUG)
        env = env or dict()
        self.database = None
        self.queue = None

        dburl = env.get('dburl')

        if dburl:
            log.info('dburl=%s', dburl)
            self.database = db.DB(dburl)
            self.queue = job_queue.JobQueue(
                database=self.database,
                nodepool=None,
                filesystem=None,
                uploader=None,
                executor=None
            )

        self.gerrit_client = gerrit.get_client(env)
        self.event_filter = gerrit.get_filter(env)
        self.error_filter = gerrit.get_error_filter(env)
        log.info("Event filter: %s", self.event_filter)
        self.event_target = event_target.get_target(dict(env, queue=self.queue))
        self.sleep_timeout = int(env.get('sleep_timeout',
                                         self.DEFAULT_SLEEP_TIMEOUT))
        recent_seconds = int(env.get('recent_event_time', self.DEFAULT_EVENT_TIME))
        self.recent_event_time = datetime.timedelta(seconds=recent_seconds)
    def __init__(self, env=None):
        logging.getLogger('sqlalchemy').setLevel(logging.DEBUG)
        env = env or dict()
        self.database = None
        self.queue = None

        dburl = env.get('dburl')

        if dburl:
            log.info('dburl=%s', dburl)
            self.database = db.DB(dburl)
            self.queue = job_queue.JobQueue(
                database=self.database,
                nodepool=None,
                filesystem=None,
                uploader=None,
                executor=None
            )

        self.gerrit_client = gerrit.get_client(env)
        self.event_filter = gerrit.get_filter(env)
        self.error_filter = gerrit.get_error_filter(env)
        log.info("Event filter: %s", self.event_filter)
        self.event_target = event_target.get_target(dict(env, queue=self.queue))
        self.sleep_timeout = int(env.get('sleep_timeout',
                                         self.DEFAULT_SLEEP_TIMEOUT))
        recent_seconds = int(env.get('recent_event_time', self.DEFAULT_EVENT_TIME))
        self.recent_event_time = datetime.timedelta(seconds=recent_seconds)
    def test_passing(self):
        e = FakeCommentEvent("hello")

        f = gerrit.get_filter(dict(
            projects='nova',
            comment_re='hello'
        ))

        self.assertTrue(f.is_event_matching_criteria(e))
Example #5
0
    def test_passing(self):
        e = FakeCommentEvent("hello")

        f = gerrit.get_filter(
            dict(
                projects='nova',
                comment_re='hello',
                ignore_usernames=None,
            ))

        self.assertTrue(f.is_event_matching_criteria(e))
    def test_get_filter(self, compile):
        compile.return_value = 'compiled'
        f = gerrit.get_filter(
            dict(projects='p1,p2,p3', comment_re='comment_re'))

        self.assertEquals('compiled', f.filters[0].filters[1].matcher)
        self.assertEquals(['p1', 'p2', 'p3'], f.filters[0].filters[2].projects)

        self.assertEquals(
            '('
                '(event is CommentAddedEvent)'
                ' AND (comment matches compiled)'
                ' AND (branch==master, project in [p1,p2,p3])'
            ') OR ('
                '(event is PatchsetCreatedEvent)'
                ' AND (branch==master, project in [p1,p2,p3])'
            ')', str(f))
    def test_get_filter(self, compile):
        compile.return_value = 'compiled'
        f = gerrit.get_filter(
            dict(projects='p1,p2,p3', comment_re='comment_re', ignore_usernames='ignore_username1,ignore_username2'))

        print(f.filters[0].filters[1].fltr.authors)

        self.assertEquals('ignore_username1', f.filters[0].filters[1].fltr.authors[0])
        self.assertEquals('ignore_username2', f.filters[0].filters[1].fltr.authors[1])
        self.assertEquals('compiled', f.filters[0].filters[2].matcher)
        self.assertEquals(['p1', 'p2', 'p3'], f.filters[0].filters[3].projects)

        self.assertEquals(
            '('
                '(event is CommentAddedEvent)'
                ' AND ( NOT (author in [\'ignore_username1\', \'ignore_username2\']))'
                ' AND (comment matches comment_re)'
                ' AND (branch==master, project in [p1,p2,p3])'
            ') OR ('
                '(event is PatchsetCreatedEvent)'
                ' AND (branch==master, project in [p1,p2,p3])'
            ')', str(f))