aboutsummaryrefslogtreecommitdiff
path: root/functional/unittests.py
blob: a70f0332a611bb6d4649d49334b80f679483296d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
#!/usr/bin/python3

import os
import sys
import argparse
import fileinput


def main(lava=False, files='-'):
    for line in fileinput.input(files):
        line = line.strip()
        print(line)
        if line.lower().startswith('test') or line.startswith('linaro_dashboard_bundle.tests'):
            line = line.replace('.', '_')
            line = line.replace(' ', '_')
            line = line.replace('\'', '_')
            line = line.replace('/', '_')
            line = line.replace('(', '')
            line = line.replace(')', '')
            if line.endswith('ok'):
                line = line.replace('_____ok', '')
                if lava:
                    os.system("lava-test-case %s --result pass" % line.split(':')[0])
                else:
                    print("lava-test-case %s --result pass" % line.split(':')[0])
            elif '_skipped_' in line:
                if lava:
                    os.system("lava-test-case %s --result skip" % line.split(':')[0])
                else:
                    print("lava-test-case %s --result skip" % line.split(':')[0])
            elif line.endswith('FAIL') or line.endswith('ERROR'):
                line = line.replace('_____FAIL', '')
                line = line.replace('_____ERROR', '')
                if lava:
                    os.system("lava-test-case %s --result fail" % line.split(':')[0])
                else:
                    print("lava-test-case %s --result fail" % line.split(':')[0])


if __name__ == '__main__':
    parser = argparse.ArgumentParser()
    parser.add_argument('--lava', dest='lava', action='store_true', help='call lava-test-case')
    parser.add_argument('files', metavar='FILE', nargs='*', help='files to read, if empty, stdin is used')
    args = parser.parse_args()
    main(lava=vars(args)['lava'], files=args.files)