Skip to content

Commit 69062ac

Browse files
committed
merge versions with identical test results
1 parent 55d0714 commit 69062ac

File tree

1 file changed

+19
-3
lines changed

1 file changed

+19
-3
lines changed

.github/workflows/results.py

Lines changed: 19 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
import itertools
22
import json
33
import operator
4+
import re
45
import sys
56

67
import subprocess
@@ -35,20 +36,35 @@ def status(s):
3536
GET_PAY = operator.itemgetter('payload')
3637

3738
by_payload = {payload:
38-
{ver(version): status(list(o2)[0]['status'])
39+
{ver(version): list(o2)[0]['status']
3940
for version, o2 in itertools.groupby(sorted(o1, key=GET_VER), GET_VER)}
4041
for payload, o1 in itertools.groupby(sorted(data, key=GET_PAY), GET_PAY)}
4142

43+
by_version = {ver(version):
44+
{payload: list(o2)[0]['status']
45+
for payload, o2 in itertools.groupby(sorted(o1, key=GET_PAY), GET_PAY)}
46+
for version, o1 in itertools.groupby(sorted(data, key=GET_VER), GET_VER)}
47+
48+
sorted_ver = sorted(by_version.items(), key=lambda v: list(map(int, re.split(r'[._]', v[0]))))
49+
50+
ver_groups = [list(v for v, r in vers) for res, vers in itertools.groupby(sorted_ver, operator.itemgetter(1))]
51+
52+
ver_ranges = [[vs[0], vs[-1]] for vs in ver_groups]
53+
54+
55+
print('\n'.join(repr(v) for v in ver_groups))
56+
#
4257
# print(repr(by_payload))
58+
# print(repr(by_version))
4359

4460
vers = list(list(by_payload.items())[0][1].keys())
4561

4662
# print(vers)
4763

4864
md = pytablewriter.MarkdownTableWriter()
4965
md.table_name = ''
50-
md.header_list = [''] + vers
51-
md.value_matrix = [[p] + [o[v] for v in vers] for p, o in sorted(by_payload.items())]
66+
md.header_list = [''] + ['{} - {}'.format(vs, ve) if vs != ve else vs for vs, ve in ver_ranges]
67+
md.value_matrix = [[p] + [status(o[vs]) for vs, ve in ver_ranges] for p, o in sorted(by_payload.items())]
5268
md.margin = 1
5369

5470
md.write_table()

0 commit comments

Comments
 (0)