Commit 97de02c2 authored by Giovanni La Mura's avatar Giovanni La Mura
Browse files

Implement noise detection logic on ratios

parent 854e50e1
Loading
Loading
Loading
Loading
+20 −12
Original line number Diff line number Diff line
@@ -118,7 +118,7 @@ def compare_files(config):
            )
            l_file.write("  </header>\n")
            l_file.write("  <body>\n")
            l_file.write("    <div>Numeric noise is marked <span style=\"font-weight: bold; color: rgb(0,255,0)\">"
            l_file.write("    <div>Numeric noise is marked <span style=\"font-weight: bold; color: rgb(0,185,0)\">"
                         + "GREEN</span>, warnings are marked <span style=\"font-weight: bold; color: rgb(0,0,255)\">"
                         + "BLUE</span> and errors are marked <span style=\"font-weight: bold; color: rgb(255,0,0)\">"
                         + "RED</span>.</div>\n")
@@ -183,7 +183,6 @@ def compare_lines(f_line, c_line, config, line_num=0, num_len=1, log_file=None):
            c_groups.append(ci.group())

        if (len(f_groups) == len(c_groups)):
            #INDENT    
            severities = mismatch_severities(f_groups, c_groups, config)
            if log_file is not None:
                num_format = "    <div><pre><code>{0:0%dd}"%num_len
@@ -198,7 +197,7 @@ def compare_lines(f_line, c_line, config, line_num=0, num_len=1, log_file=None):
                        log_line = log_line + c_groups[si] + c_line[c_ends[si]:c_starts[si + 1]]
                    elif (severities[si] == 1):
                        log_line = (
                            log_line + "</code><span style=\"font-weight: bold; color: rgb(0,255,0)\"><code>"
                            log_line + "</code><span style=\"font-weight: bold; color: rgb(0,185,0)\"><code>"
                            + c_groups[si] + "</code></span><code>" + c_line[c_ends[si]:c_starts[si + 1]]
                        )
                    elif (severities[si] == 2):
@@ -211,10 +210,13 @@ def compare_lines(f_line, c_line, config, line_num=0, num_len=1, log_file=None):
                            log_line + "</code><span style=\"font-weight: bold; color: rgb(255,0,0)\"><code>"
                            + c_groups[si] + "</code></span><code>" + c_line[c_ends[si]:c_starts[si + 1]]
                        )
            if (len(severities) > 1):
            if (len(severities) > 0):
                # Single errror test modification
                if (severities[-1] == 1): noisy += 1
                elif (severities[-1] == 2): warnings += 1
                elif (severities[-1] == 3): errors += 1
                elif (severities[-1] == 3):
                    split_c_line = c_line.split('/')
                    if (len(split_c_line) != 2): errors += 1
            if log_file is not None:
                if (len(severities) > 0):
                    if (severities[-1] == 0):
@@ -223,7 +225,7 @@ def compare_lines(f_line, c_line, config, line_num=0, num_len=1, log_file=None):
                        )
                    elif (severities[-1] == 1):
                        log_line = (
                            log_line + "</code><span style=\"font-weight: bold; color: rgb(0,255,0)\"><code>"
                            log_line + "</code><span style=\"font-weight: bold; color: rgb(0,185,0)\"><code>"
                            + c_groups[-1] + "</code></span><code>" + c_line[c_ends[-1]:len(c_line) - 2]
                        )
                    elif (severities[-1] == 2):
@@ -232,13 +234,19 @@ def compare_lines(f_line, c_line, config, line_num=0, num_len=1, log_file=None):
                            + c_groups[-1] + "</code></span><code>" + c_line[c_ends[-1]:len(c_line) - 2]
                        )
                    elif (severities[-1] == 3):
                        split_c_line = c_line.split('/')
                        if (len(split_c_line) == 2):
                            log_line = (
                                log_line + "</code><span style=\"font-weight: bold; color: rgb(0,185,0)\"><code>"
                                + c_groups[-1] + "</code></span><code>" + c_line[c_ends[-1]:len(c_line) - 2]
                            )
                        else:
                            log_line = (
                                log_line + "</code><span style=\"font-weight: bold; color: rgb(255,0,0)\"><code>"
                                + c_groups[-1] + "</code></span><code>" + c_line[c_ends[-1]:len(c_line) - 2]
                            )
                log_file.write(log_line + "</code></pre></div>\n")
            #END INDENT
        else:
        else: # The two lines contain a different number of numeric values
            if (log_file is not None):
                num_format = "    <div><pre><code>{0:0%dd}"%num_len
                log_line = (num_format + ": ").format(line_num)