forked from Imagelibrary/littlefs
scripts: Fixed diff result sorting
This was a bit broken when r was None. Which is unusual, but happens when rendering added/removed diff results.
This commit is contained in:
@@ -763,14 +763,17 @@ def table(Result, results, diff_results=None, *,
|
|||||||
# sort again, now with diff info, note that python's sort is stable
|
# sort again, now with diff info, note that python's sort is stable
|
||||||
names_.sort(key=lambda n: (
|
names_.sort(key=lambda n: (
|
||||||
# sort by explicit sort fields
|
# sort by explicit sort fields
|
||||||
tuple((Rev
|
next(
|
||||||
if reverse ^ (not k or k in Result._fields)
|
tuple((Rev
|
||||||
else lambda x: x)(
|
if reverse ^ (not k or k in Result._fields)
|
||||||
tuple((getattr(table_[n], k_),)
|
else lambda x: x)(
|
||||||
if getattr(table_.get(n), k_, None) is not None
|
tuple((getattr(r_, k_),)
|
||||||
else ()
|
if getattr(r_, k_) is not None
|
||||||
for k_ in ([k] if k else Result._sort)))
|
else ()
|
||||||
for k, reverse in (sort or [])),
|
for k_ in ([k] if k else Result._sort)))
|
||||||
|
for k, reverse in (sort or []))
|
||||||
|
for r_ in [table_.get(n), diff_table_.get(n)]
|
||||||
|
if r_ is not None),
|
||||||
# sort by ratio if diffing
|
# sort by ratio if diffing
|
||||||
Rev(tuple(types[k].ratio(
|
Rev(tuple(types[k].ratio(
|
||||||
getattr(table_.get(n), k, None),
|
getattr(table_.get(n), k, None),
|
||||||
|
|||||||
@@ -624,14 +624,17 @@ def table(Result, results, diff_results=None, *,
|
|||||||
# sort again, now with diff info, note that python's sort is stable
|
# sort again, now with diff info, note that python's sort is stable
|
||||||
names_.sort(key=lambda n: (
|
names_.sort(key=lambda n: (
|
||||||
# sort by explicit sort fields
|
# sort by explicit sort fields
|
||||||
tuple((Rev
|
next(
|
||||||
if reverse ^ (not k or k in Result._fields)
|
tuple((Rev
|
||||||
else lambda x: x)(
|
if reverse ^ (not k or k in Result._fields)
|
||||||
tuple((getattr(table_[n], k_),)
|
else lambda x: x)(
|
||||||
if getattr(table_.get(n), k_, None) is not None
|
tuple((getattr(r_, k_),)
|
||||||
else ()
|
if getattr(r_, k_) is not None
|
||||||
for k_ in ([k] if k else Result._sort)))
|
else ()
|
||||||
for k, reverse in (sort or [])),
|
for k_ in ([k] if k else Result._sort)))
|
||||||
|
for k, reverse in (sort or []))
|
||||||
|
for r_ in [table_.get(n), diff_table_.get(n)]
|
||||||
|
if r_ is not None),
|
||||||
# sort by ratio if diffing
|
# sort by ratio if diffing
|
||||||
Rev(tuple(types[k].ratio(
|
Rev(tuple(types[k].ratio(
|
||||||
getattr(table_.get(n), k, None),
|
getattr(table_.get(n), k, None),
|
||||||
|
|||||||
@@ -1906,14 +1906,17 @@ def table(Result, results, diff_results=None, *,
|
|||||||
# sort again, now with diff info, note that python's sort is stable
|
# sort again, now with diff info, note that python's sort is stable
|
||||||
names_.sort(key=lambda n: (
|
names_.sort(key=lambda n: (
|
||||||
# sort by explicit sort fields
|
# sort by explicit sort fields
|
||||||
tuple((Rev
|
next(
|
||||||
if reverse ^ (not k or k in Result._fields)
|
tuple((Rev
|
||||||
else lambda x: x)(
|
if reverse ^ (not k or k in Result._fields)
|
||||||
tuple((getattr(table_[n], k_),)
|
else lambda x: x)(
|
||||||
if getattr(table_.get(n), k_, None) is not None
|
tuple((getattr(r_, k_),)
|
||||||
else ()
|
if getattr(r_, k_) is not None
|
||||||
for k_ in ([k] if k else Result._sort)))
|
else ()
|
||||||
for k, reverse in (sort or [])),
|
for k_ in ([k] if k else Result._sort)))
|
||||||
|
for k, reverse in (sort or []))
|
||||||
|
for r_ in [table_.get(n), diff_table_.get(n)]
|
||||||
|
if r_ is not None),
|
||||||
# sort by ratio if diffing
|
# sort by ratio if diffing
|
||||||
Rev(tuple(types[k].ratio(
|
Rev(tuple(types[k].ratio(
|
||||||
getattr(table_.get(n), k, None),
|
getattr(table_.get(n), k, None),
|
||||||
|
|||||||
@@ -1021,14 +1021,17 @@ def table(Result, results, diff_results=None, *,
|
|||||||
# sort again, now with diff info, note that python's sort is stable
|
# sort again, now with diff info, note that python's sort is stable
|
||||||
names_.sort(key=lambda n: (
|
names_.sort(key=lambda n: (
|
||||||
# sort by explicit sort fields
|
# sort by explicit sort fields
|
||||||
tuple((Rev
|
next(
|
||||||
if reverse ^ (not k or k in Result._fields)
|
tuple((Rev
|
||||||
else lambda x: x)(
|
if reverse ^ (not k or k in Result._fields)
|
||||||
tuple((getattr(table_[n], k_),)
|
else lambda x: x)(
|
||||||
if getattr(table_.get(n), k_, None) is not None
|
tuple((getattr(r_, k_),)
|
||||||
else ()
|
if getattr(r_, k_) is not None
|
||||||
for k_ in ([k] if k else Result._sort)))
|
else ()
|
||||||
for k, reverse in (sort or [])),
|
for k_ in ([k] if k else Result._sort)))
|
||||||
|
for k, reverse in (sort or []))
|
||||||
|
for r_ in [table_.get(n), diff_table_.get(n)]
|
||||||
|
if r_ is not None),
|
||||||
# sort by ratio if diffing
|
# sort by ratio if diffing
|
||||||
Rev(tuple(types[k].ratio(
|
Rev(tuple(types[k].ratio(
|
||||||
getattr(table_.get(n), k, None),
|
getattr(table_.get(n), k, None),
|
||||||
|
|||||||
@@ -763,14 +763,17 @@ def table(Result, results, diff_results=None, *,
|
|||||||
# sort again, now with diff info, note that python's sort is stable
|
# sort again, now with diff info, note that python's sort is stable
|
||||||
names_.sort(key=lambda n: (
|
names_.sort(key=lambda n: (
|
||||||
# sort by explicit sort fields
|
# sort by explicit sort fields
|
||||||
tuple((Rev
|
next(
|
||||||
if reverse ^ (not k or k in Result._fields)
|
tuple((Rev
|
||||||
else lambda x: x)(
|
if reverse ^ (not k or k in Result._fields)
|
||||||
tuple((getattr(table_[n], k_),)
|
else lambda x: x)(
|
||||||
if getattr(table_.get(n), k_, None) is not None
|
tuple((getattr(r_, k_),)
|
||||||
else ()
|
if getattr(r_, k_) is not None
|
||||||
for k_ in ([k] if k else Result._sort)))
|
else ()
|
||||||
for k, reverse in (sort or [])),
|
for k_ in ([k] if k else Result._sort)))
|
||||||
|
for k, reverse in (sort or []))
|
||||||
|
for r_ in [table_.get(n), diff_table_.get(n)]
|
||||||
|
if r_ is not None),
|
||||||
# sort by ratio if diffing
|
# sort by ratio if diffing
|
||||||
Rev(tuple(types[k].ratio(
|
Rev(tuple(types[k].ratio(
|
||||||
getattr(table_.get(n), k, None),
|
getattr(table_.get(n), k, None),
|
||||||
|
|||||||
@@ -1125,14 +1125,17 @@ def table(Result, results, diff_results=None, *,
|
|||||||
# sort again, now with diff info, note that python's sort is stable
|
# sort again, now with diff info, note that python's sort is stable
|
||||||
names_.sort(key=lambda n: (
|
names_.sort(key=lambda n: (
|
||||||
# sort by explicit sort fields
|
# sort by explicit sort fields
|
||||||
tuple((Rev
|
next(
|
||||||
if reverse ^ (not k or k in Result._fields)
|
tuple((Rev
|
||||||
else lambda x: x)(
|
if reverse ^ (not k or k in Result._fields)
|
||||||
tuple((getattr(table_[n], k_),)
|
else lambda x: x)(
|
||||||
if getattr(table_.get(n), k_, None) is not None
|
tuple((getattr(r_, k_),)
|
||||||
else ()
|
if getattr(r_, k_) is not None
|
||||||
for k_ in ([k] if k else Result._sort)))
|
else ()
|
||||||
for k, reverse in (sort or [])),
|
for k_ in ([k] if k else Result._sort)))
|
||||||
|
for k, reverse in (sort or []))
|
||||||
|
for r_ in [table_.get(n), diff_table_.get(n)]
|
||||||
|
if r_ is not None),
|
||||||
# sort by ratio if diffing
|
# sort by ratio if diffing
|
||||||
Rev(tuple(types[k].ratio(
|
Rev(tuple(types[k].ratio(
|
||||||
getattr(table_.get(n), k, None),
|
getattr(table_.get(n), k, None),
|
||||||
|
|||||||
@@ -1095,14 +1095,17 @@ def table(Result, results, diff_results=None, *,
|
|||||||
# sort again, now with diff info, note that python's sort is stable
|
# sort again, now with diff info, note that python's sort is stable
|
||||||
names_.sort(key=lambda n: (
|
names_.sort(key=lambda n: (
|
||||||
# sort by explicit sort fields
|
# sort by explicit sort fields
|
||||||
tuple((Rev
|
next(
|
||||||
if reverse ^ (not k or k in Result._fields)
|
tuple((Rev
|
||||||
else lambda x: x)(
|
if reverse ^ (not k or k in Result._fields)
|
||||||
tuple((getattr(table_[n], k_),)
|
else lambda x: x)(
|
||||||
if getattr(table_.get(n), k_, None) is not None
|
tuple((getattr(r_, k_),)
|
||||||
else ()
|
if getattr(r_, k_) is not None
|
||||||
for k_ in ([k] if k else Result._sort)))
|
else ()
|
||||||
for k, reverse in (sort or [])),
|
for k_ in ([k] if k else Result._sort)))
|
||||||
|
for k, reverse in (sort or []))
|
||||||
|
for r_ in [table_.get(n), diff_table_.get(n)]
|
||||||
|
if r_ is not None),
|
||||||
# sort by ratio if diffing
|
# sort by ratio if diffing
|
||||||
Rev(tuple(types[k].ratio(
|
Rev(tuple(types[k].ratio(
|
||||||
getattr(table_.get(n), k, None),
|
getattr(table_.get(n), k, None),
|
||||||
|
|||||||
@@ -767,14 +767,17 @@ def table(Result, results, diff_results=None, *,
|
|||||||
# sort again, now with diff info, note that python's sort is stable
|
# sort again, now with diff info, note that python's sort is stable
|
||||||
names_.sort(key=lambda n: (
|
names_.sort(key=lambda n: (
|
||||||
# sort by explicit sort fields
|
# sort by explicit sort fields
|
||||||
tuple((Rev
|
next(
|
||||||
if reverse ^ (not k or k in Result._fields)
|
tuple((Rev
|
||||||
else lambda x: x)(
|
if reverse ^ (not k or k in Result._fields)
|
||||||
tuple((getattr(table_[n], k_),)
|
else lambda x: x)(
|
||||||
if getattr(table_.get(n), k_, None) is not None
|
tuple((getattr(r_, k_),)
|
||||||
else ()
|
if getattr(r_, k_) is not None
|
||||||
for k_ in ([k] if k else Result._sort)))
|
else ()
|
||||||
for k, reverse in (sort or [])),
|
for k_ in ([k] if k else Result._sort)))
|
||||||
|
for k, reverse in (sort or []))
|
||||||
|
for r_ in [table_.get(n), diff_table_.get(n)]
|
||||||
|
if r_ is not None),
|
||||||
# sort by ratio if diffing
|
# sort by ratio if diffing
|
||||||
Rev(tuple(types[k].ratio(
|
Rev(tuple(types[k].ratio(
|
||||||
getattr(table_.get(n), k, None),
|
getattr(table_.get(n), k, None),
|
||||||
|
|||||||
@@ -841,14 +841,17 @@ def table(Result, results, diff_results=None, *,
|
|||||||
# sort again, now with diff info, note that python's sort is stable
|
# sort again, now with diff info, note that python's sort is stable
|
||||||
names_.sort(key=lambda n: (
|
names_.sort(key=lambda n: (
|
||||||
# sort by explicit sort fields
|
# sort by explicit sort fields
|
||||||
tuple((Rev
|
next(
|
||||||
if reverse ^ (not k or k in Result._fields)
|
tuple((Rev
|
||||||
else lambda x: x)(
|
if reverse ^ (not k or k in Result._fields)
|
||||||
tuple((getattr(table_[n], k_),)
|
else lambda x: x)(
|
||||||
if getattr(table_.get(n), k_, None) is not None
|
tuple((getattr(r_, k_),)
|
||||||
else ()
|
if getattr(r_, k_) is not None
|
||||||
for k_ in ([k] if k else Result._sort)))
|
else ()
|
||||||
for k, reverse in (sort or [])),
|
for k_ in ([k] if k else Result._sort)))
|
||||||
|
for k, reverse in (sort or []))
|
||||||
|
for r_ in [table_.get(n), diff_table_.get(n)]
|
||||||
|
if r_ is not None),
|
||||||
# sort by ratio if diffing
|
# sort by ratio if diffing
|
||||||
Rev(tuple(types[k].ratio(
|
Rev(tuple(types[k].ratio(
|
||||||
getattr(table_.get(n), k, None),
|
getattr(table_.get(n), k, None),
|
||||||
|
|||||||
Reference in New Issue
Block a user