Example #1
0
    def _filters(self):
        filters = []

        def arg_filters():
            result = []
            for arg in self.args:
                if re.match(Filter.ORDINAL_TAG_MATCH, arg):
                    argfilter = Filter.OrdinalTagFilter(arg)
                elif len(arg) > 1 and arg[0] == '-':
                    # when a word starts with -, exclude it
                    argfilter = Filter.GrepFilter(arg[1:])
                    argfilter = Filter.NegationFilter(argfilter)
                else:
                    argfilter = Filter.GrepFilter(arg)

                result.append(argfilter)

            return result

        if not self.show_all:
            filters.append(Filter.DependencyFilter(self.todolist))
            filters.append(Filter.RelevanceFilter())

        filters += arg_filters()

        if not self.show_all:
            filters.append(Filter.LimitFilter(config().list_limit()))

        return filters
Example #2
0
    def _filters(self):
        filters = []

        if not self.show_all:
            filters.append(Filter.DependencyFilter(self.todolist))
            filters.append(Filter.RelevanceFilter())

        args = self.args[:-1] if self.last_argument else self.args
        filters += Filter.get_filter_list(args)

        if not self.show_all:
            filters.append(Filter.LimitFilter(self.limit))

        return filters
Example #3
0
    def test_filter3(self):
        todo = Todo("(C) Relevant")
        relevance = Filter.RelevanceFilter()
        result = relevance.filter([todo])

        self.assertEquals(result, [todo])