coverage_diff_list.py 1.0 KB
Newer Older
L
Liu Xudong 已提交
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 46 47 48 49 50 51 52 53
#!/usr/bin/env python
# -*- coding: utf-8 -*-
"""
usage: coverage_diff_list.py list_file max_rate > coverage-diff-list-90.out
"""

import sys


def filter_by(list_file, max_rate):
    """
    Args:
        list_file (str): File of list.  
        max_rate (float): Max rate.  

    Returns:
        tuple: File and coverage rate.
    """
    with open(list_file) as list_file:
        for line in list_file:
            line = line.strip()

            split = line.split('|')

            # name

            name = split[0].strip()

            if name.startswith('/paddle/'):
                name = name[len('/paddle/'):]

            # rate

            try:
                rate = split[1].split()[0].strip('%')
                rate = float(rate)

                if rate >= max_rate:
                    continue
            except:
                pass

            print name, rate


if __name__ == '__main__':
    if len(sys.argv) < 2:
        exit()

    list_file = sys.argv[1]
    max_rate = float(sys.argv[2])

    filter_by(list_file, max_rate)