Beispiel #1
0
def list_problems(args):
    probs = sort_problems(problem.list(auth=args.auth))

    if args.since:
        probs = filter_since_timestamp(probs, args.since)

    if args.until:
        probs = filter_until_timestamp(probs, args.until)

    if args.not_reported:
        probs = filter_not_reported(probs)

    if not args.fmt:
        fmt = config.MEDIUM_FMT
    else:
        fmt = args.fmt

    if args.pretty != 'medium':
        fmt = getattr(config, '{}_FMT'.format(args.pretty.upper()))

    out = fmt_problems(probs, fmt=fmt)

    if out:
        print(out)
    else:
        print(_('No problems'))
Beispiel #2
0
def match_lookup(patterns,
                 authenticate=False,
                 executables=None,
                 components=None,
                 since=None,
                 until=None,
                 n_latest=None,
                 not_reported=False):
    '''
    Return problems that match `in_arg` passed on command line
    '''

    problems = problem.list(auth=authenticate)

    if not patterns:
        return sort_problems(problems)[:1]

    if '*' not in patterns:
        id_matches = filter_ids(problems, patterns)
        path_matches = filter_paths(problems, patterns)

        problems = list(set(id_matches) | set(path_matches))

    problems = filter_executables(problems, executables)
    problems = filter_components(problems, components)

    if since:
        problems = filter_since_timestamp(problems, since)
    if until:
        problems = filter_until_timestamp(problems, until)

    if n_latest:
        problems = sort_problems(problems)[:n_latest]

    if not_reported:
        problems = filter_not_reported(problems)

    return problems
Beispiel #3
0
 def test_filter_until_timestamp(self):
     pl = problem.list()
     until = datetime.datetime(2015, 1, 1, 1, 1, 1)
     until_ts = until.strftime('%s')
     res = filter_until_timestamp(pl, until_ts)
     self.assertEqual(len(res), 2)
Beispiel #4
0
 def test_filter_until_timestamp(self):
     pl = problem.list()
     until = datetime.datetime(2015, 1, 1, 1, 1, 1)
     until_ts = until.strftime('%s')
     res = filter_until_timestamp(pl, until_ts)
     self.assertEqual(len(res), 2)