From b4ccb291b2576ef363519d2397d714255aeccd2f Mon Sep 17 00:00:00 2001 From: Jesse Schwartzentruber Date: Fri, 31 May 2024 14:29:47 -0400 Subject: [PATCH] Fix serialization of reducer metadata. --- grizzly/common/status.py | 4 +++- grizzly/common/test_status.py | 4 ++-- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/grizzly/common/status.py b/grizzly/common/status.py index c8e3de2b..34b6a86f 100644 --- a/grizzly/common/status.py +++ b/grizzly/common/status.py @@ -1307,7 +1307,9 @@ def add_to_reporter( """ # only add detailed stats for expected results if expected: - reporter.add_extra_metadata("reducer-stats", self.finished_steps) + reporter.add_extra_metadata( + "reducer-stats", [astuple(step) for step in self.finished_steps] + ) # other parameters if self.analysis: reporter.add_extra_metadata("reducer-analysis", self.analysis) diff --git a/grizzly/common/test_status.py b/grizzly/common/test_status.py index 7c5abe57..2ac2c5b1 100644 --- a/grizzly/common/test_status.py +++ b/grizzly/common/test_status.py @@ -5,7 +5,7 @@ # pylint: disable=protected-access from contextlib import closing -from dataclasses import fields +from dataclasses import astuple, fields from itertools import count from multiprocessing import Event, Process from sqlite3 import connect @@ -547,7 +547,7 @@ def test_reduce_status_07(mocker, tmp_path): status.signature_info["dumb"] = True status.add_to_reporter(reporter) assert reporter.add_extra_metadata.call_args_list == [ - mocker.call("reducer-stats", status.finished_steps), + mocker.call("reducer-stats", [astuple(s) for s in status.finished_steps]), mocker.call("reducer-analysis", status.analysis), mocker.call("reducer-params", status.run_params), mocker.call("reducer-sig", status.signature_info),