diff --git a/modules/ts/misc/summary.py b/modules/ts/misc/summary.py index df7f1d460c..dc207f7367 100644 --- a/modules/ts/misc/summary.py +++ b/modules/ts/misc/summary.py @@ -124,14 +124,24 @@ if __name__ == "__main__": i += 1 # rows + prevGroupName = None needNewRow = True + lastRow = None for name in sorted(test_cases.iterkeys(), key=alphanum_keyselector): cases = test_cases[name] if needNewRow: - tbl.newRow() + lastRow = tbl.newRow() if not options.showall: needNewRow = False tbl.newCell("name", name) + + groupName = next(c for c in cases if c).shortName() + if groupName != prevGroupName: + prop = lastRow.props.get("cssclass", "") + if "firstingroup" not in prop: + lastRow.props["cssclass"] = prop + " firstingroup" + prevGroupName = groupName + for i in range(setsCount): case = cases[i] if case is None: diff --git a/modules/ts/misc/table_formatter.py b/modules/ts/misc/table_formatter.py index aa3940e5d2..3b66ce7f21 100644 --- a/modules/ts/misc/table_formatter.py +++ b/modules/ts/misc/table_formatter.py @@ -44,7 +44,8 @@ class table(object): self.rows.append(tblRow(len(self.columns), properties)) else: self.rows[ridx + 1].props = properties - self.ridx += 1 + self.ridx += 1 + return self.rows[self.ridx] def trimLastRow(self): if self.rows: @@ -377,8 +378,12 @@ class table(object): rows = [row for row in self.rows if not self.getValue("header")] for r in range(len(rows)): - row = rows[r] - out.write("