diff --git a/meta b/meta index 5dcd6aeb03..c6e391473e 160000 --- a/meta +++ b/meta @@ -1 +1 @@ -Subproject commit 5dcd6aeb03b83cc2620fae92222c9197c5b5da02 +Subproject commit c6e391473ea75459b61c527731776c6f5fd2937a diff --git a/openslides_backend/action/action.py b/openslides_backend/action/action.py index f2d3e61689..53f9de661e 100644 --- a/openslides_backend/action/action.py +++ b/openslides_backend/action/action.py @@ -781,8 +781,10 @@ def merge_history_informations( if fqid in a: if entries := information.get("entries"): a[fqid].setdefault("entries", list()).extend(entries) - if changed_fields := information.get("changed_fields"): - a[fqid].setdefault("changed_fields", dict()).update(changed_fields) + if structured_information := information.get("structured_information"): + a[fqid].setdefault("structured_information", dict()).update( + structured_information + ) else: a[fqid] = information return a diff --git a/openslides_backend/action/actions/meeting_user/base_delete.py b/openslides_backend/action/actions/meeting_user/base_delete.py index af6465b1df..9f39d9677e 100644 --- a/openslides_backend/action/actions/meeting_user/base_delete.py +++ b/openslides_backend/action/actions/meeting_user/base_delete.py @@ -45,5 +45,7 @@ def get_history_information(self) -> HistoryInformation | None: ): information[ fqid_from_collection_and_id("meeting_user", meeting_user["id"]) - ] = build_history_information_data(changed_fields={"is_present": False}) + ] = build_history_information_data( + structured_information={"is_present": False} + ) return information diff --git a/openslides_backend/action/actions/meeting_user/history_mixin.py b/openslides_backend/action/actions/meeting_user/history_mixin.py index 49fe694acc..260599b13b 100644 --- a/openslides_backend/action/actions/meeting_user/history_mixin.py +++ b/openslides_backend/action/actions/meeting_user/history_mixin.py @@ -15,7 +15,7 @@ class ActionHistoryInformationData(TypedDict): entries: NotRequired[list[tuple[str, ...]]] - changed_fields: NotRequired[dict[Field, Any]] + structured_information: NotRequired[dict[Field, Any]] ActionHistoryInformation = dict[FullQualifiedId, ActionHistoryInformationData] @@ -109,7 +109,7 @@ def get_history_information(self) -> HistoryInformation | None: return { fqid: build_history_information_data( [string for entry in history.get("entries", []) for string in entry], - history.get("changed_fields", {}), + history.get("structured_information", {}), ) for fqid, history in information.items() } @@ -121,7 +121,7 @@ def add_updated_meeting_user_history_information( information: ActionHistoryInformation, ) -> None: user_entries: list[tuple[str, ...]] = [] - meeting_user_changed_fields: dict[str, dict[str, list[int]]] = {} + meeting_user_structured_information: dict[str, dict[str, list[int]]] = {} user_id = db_instance["user_id"] meeting_id = db_instance["meeting_id"] @@ -143,7 +143,7 @@ def add_updated_meeting_user_history_information( self.handle_group_updates( user_entries, - meeting_user_changed_fields, + meeting_user_structured_information, instance, db_instance, ) @@ -155,10 +155,10 @@ def add_updated_meeting_user_history_information( user_entries, for_user_id=user_id, ) - if meeting_user_changed_fields: + if meeting_user_structured_information: information[ fqid_from_collection_and_id("meeting_user", db_instance["id"]) - ] = {"changed_fields": meeting_user_changed_fields} + ] = {"structured_information": meeting_user_structured_information} def add_created_meeting_user_history_information( self, @@ -205,7 +205,7 @@ def add_created_meeting_user_history_information( for_user_id=db_instance["user_id"], ) if "group_ids" in instance: - changed_fields: dict[str, dict[str, list[int]] | bool] = { + structured_information: dict[str, dict[str, list[int]] | bool] = { "group_ids": {"added": instance["group_ids"]} } is_present_in_meeting_ids = self.datastore.get( @@ -214,9 +214,9 @@ def add_created_meeting_user_history_information( lock_result=False, ).get("is_present_in_meeting_ids", []) if db_instance["meeting_id"] in is_present_in_meeting_ids: - changed_fields["is_present"] = True + structured_information["is_present"] = True information[fqid_from_collection_and_id("meeting_user", instance["id"])] = { - "changed_fields": changed_fields + "structured_information": structured_information } def add_entries_to_history_information( @@ -225,7 +225,7 @@ def add_entries_to_history_information( entries: list[tuple[str, ...]] = [], for_user_id: int | None = None, for_meeting_user_id: int | None = None, - changed_fields: dict[Field, Any] | None = None, + structured_information: dict[Field, Any] | None = None, ) -> None: if not for_user_id: if not for_meeting_user_id: @@ -241,15 +241,15 @@ def add_entries_to_history_information( if fqid not in information: if entries: information[fqid] = {"entries": entries} - if changed_fields: - information[fqid]["changed_fields"] = changed_fields + if structured_information: + information[fqid]["structured_information"] = structured_information else: for entry in entries: if entry not in information[fqid]["entries"]: information[fqid]["entries"].append(entry) - if changed_fields: - information[fqid].setdefault("changed_fields", dict()).update( - changed_fields + if structured_information: + information[fqid].setdefault("structured_information", dict()).update( + structured_information ) def compose_history_string( @@ -281,7 +281,7 @@ def compose_history_string( def handle_group_updates( self, entries: list[tuple[str, ...]], - meeting_user_changed_fields: dict[str, dict[str, list[int]]], + meeting_user_structured_information: dict[str, dict[str, list[int]]], instance: dict[str, Any], db_instance: dict[str, Any], ) -> None: @@ -294,11 +294,13 @@ def handle_group_updates( # Calculate history information for meeting_user if added: - meeting_user_changed_fields["group_ids"] = {"added": list(added)} + meeting_user_structured_information["group_ids"] = { + "added": list(added) + } if removed: - meeting_user_changed_fields.setdefault("group_ids", dict()).update( - {"removed": list(removed)} - ) + meeting_user_structured_information.setdefault( + "group_ids", dict() + ).update({"removed": list(removed)}) # remove default groups meeting = self.datastore.get( diff --git a/openslides_backend/action/actions/user/set_present.py b/openslides_backend/action/actions/user/set_present.py index 0e3e044d16..0c0748878e 100644 --- a/openslides_backend/action/actions/user/set_present.py +++ b/openslides_backend/action/actions/user/set_present.py @@ -131,6 +131,6 @@ def get_history_information(self) -> HistoryInformation | None: information[ fqid_from_collection_and_id("meeting_user", meeting_user["id"]) ] = build_history_information_data( - changed_fields={"is_present": present} + structured_information={"is_present": present} ) return information diff --git a/openslides_backend/models/models.py b/openslides_backend/models/models.py index 57aa2322e5..bf17bf33df 100644 --- a/openslides_backend/models/models.py +++ b/openslides_backend/models/models.py @@ -529,7 +529,7 @@ class HistoryEntry(Model): id = fields.IntegerField(required=True, constant=True) entries = fields.TextArrayField() - changed_fields = fields.JSONField() + structured_information = fields.JSONField() original_model_id = fields.CharField(constant=True) model_id = fields.GenericRelationField( to={ diff --git a/openslides_backend/shared/history_events.py b/openslides_backend/shared/history_events.py index 796b35e9b3..8f88a6404e 100644 --- a/openslides_backend/shared/history_events.py +++ b/openslides_backend/shared/history_events.py @@ -13,13 +13,13 @@ def build_history_information_data( entries: list[str] | None = None, - changed_fields: dict[str, Any] | None = None, + structured_information: dict[str, Any] | None = None, ) -> HistoryInformationData: data: HistoryInformationData = {} if entries is not None: data["entries"] = entries - if changed_fields is not None: - data["changed_fields"] = changed_fields + if structured_information is not None: + data["structured_information"] = structured_information return data @@ -27,17 +27,19 @@ def update_history_information( information: HistoryInformation, fqid: FullQualifiedId, entries: list[str] | None = None, - changed_fields: dict[str, Any] | None = None, + structured_information: dict[str, Any] | None = None, ) -> None: """Updates history information for fqid""" if fqid not in information: - information[fqid] = build_history_information_data(entries, changed_fields) + information[fqid] = build_history_information_data( + entries, structured_information + ) else: if entries: information[fqid].setdefault("entries", list()).extend(entries) - if changed_fields: - information[fqid].setdefault("changed_fields", dict()).update( - changed_fields + if structured_information: + information[fqid].setdefault("structured_information", dict()).update( + structured_information ) @@ -45,13 +47,13 @@ def update_history_information_multi( information: HistoryInformation, fqids: list[FullQualifiedId], entries: list[str] | None = None, - changed_fields: dict[str, Any] | None = None, + structured_information: dict[str, Any] | None = None, ) -> None: """ Adds given HistoryInformation to the given information for every fqid in fqids. """ for fqid in fqids: - update_history_information(information, fqid, entries, changed_fields) + update_history_information(information, fqid, entries, structured_information) def calculate_history_event_payloads( @@ -68,7 +70,7 @@ def calculate_history_event_payloads( model_fqid_to_entry_id[fqid], fqid, data.get("entries") or None, - data.get("changed_fields"), + data.get("structured_information"), ) for fqid, data in information.items() ] @@ -78,14 +80,16 @@ def calculate_history_event_payloads( { "id": id_, "entries": entries, - "changed_fields": Jsonb(changed_fields) if changed_fields else None, + "structured_information": ( + Jsonb(structured_information) if structured_information else None + ), "position_id": position_id, "original_model_id": fqid, "model_id": (fqid if fqid in existing_fqids else None), "meeting_id": model_fqid_to_meeting_id.get(fqid, None), }, ) - for id_, fqid, entries, changed_fields in transformed_information + for id_, fqid, entries, structured_information in transformed_information ] create_events.append( ( diff --git a/openslides_backend/shared/typing.py b/openslides_backend/shared/typing.py index e0a2d531f6..e8d2b03c3f 100644 --- a/openslides_backend/shared/typing.py +++ b/openslides_backend/shared/typing.py @@ -11,7 +11,7 @@ class HistoryInformationData(TypedDict): entries: NotRequired[list[str]] - changed_fields: NotRequired[dict[Field, Any]] + structured_information: NotRequired[dict[Field, Any]] HistoryInformation = dict[FullQualifiedId, HistoryInformationData] diff --git a/tests/database/reader/system/test_filter.py b/tests/database/reader/system/test_filter.py index e3704b671b..624e39b42f 100644 --- a/tests/database/reader/system/test_filter.py +++ b/tests/database/reader/system/test_filter.py @@ -176,7 +176,7 @@ def test_types_str_list(db_connection: Connection) -> None: 1: { "id": 1, "entries": ["User added to meetings"], - "changed_fields": None, + "structured_information": None, "meeting_id": 1, "model_id": "user/1", "model_id_assignment_id": None, diff --git a/tests/system/action/base.py b/tests/system/action/base.py index e7cb6cc4bb..64efcd363d 100644 --- a/tests/system/action/base.py +++ b/tests/system/action/base.py @@ -310,7 +310,7 @@ def get_last_history_information( if entry_id: return self.datastore.get( fqid_from_collection_and_id("history_entry", entry_id), - ["entries", "changed_fields"], + ["entries", "structured_information"], lock_result=False, ) else: @@ -320,13 +320,13 @@ def assert_history_information( self, fqid: FullQualifiedId, entries: list[str] | None = None, - changed_fields: dict[str, Any] | None = None, + structured_information: dict[str, Any] | None = None, ) -> None: """ Asserts that the last history information for the given model is the given information. """ last_information = self.get_last_history_information(fqid) - if entries is None and changed_fields is None: + if entries is None and structured_information is None: assert ( not last_information ), f"Expected no history information to be generated for {fqid}. Got:\n{last_information}" @@ -335,7 +335,9 @@ def assert_history_information( last_information ), f"No history information was be generated for {fqid}." self.assertEqual(last_information.get("entries"), entries) - self.assertEqual(last_information.get("changed_fields"), changed_fields) + self.assertEqual( + last_information.get("structured_information"), structured_information + ) def assert_history_information_contains( self, fqid: FullQualifiedId, entry: str diff --git a/tests/system/action/user/test_create.py b/tests/system/action/user/test_create.py index d4af5c602c..b1379a791e 100644 --- a/tests/system/action/user/test_create.py +++ b/tests/system/action/user/test_create.py @@ -136,7 +136,7 @@ def test_create_some_more_fields(self) -> None: ) self.assert_history_information( "meeting_user/1", - changed_fields={"group_ids": {"added": [114]}}, + structured_information={"group_ids": {"added": [114]}}, ) def test_create_comment(self) -> None: diff --git a/tests/system/action/user/test_delegation_history.py b/tests/system/action/user/test_delegation_history.py index a5f3531475..d9d0d822eb 100644 --- a/tests/system/action/user/test_delegation_history.py +++ b/tests/system/action/user/test_delegation_history.py @@ -94,14 +94,14 @@ def assert_alice_redelegated_to(self, who_id: int, prepend: list[str] = []) -> N ], ) - def assert_meeting_user_changed_fields(self, user_id: int) -> None: + def assert_meeting_user_structured_information(self, user_id: int) -> None: self.assert_model_exists( f"meeting_user/{self.next_meeting_user_id}", {"user_id": user_id, "meeting_id": 1, "group_ids": [3]}, ) self.assert_history_information( f"meeting_user/{self.next_meeting_user_id}", - changed_fields={"group_ids": {"added": [3]}}, + structured_information={"group_ids": {"added": [3]}}, ) def test_update_delegate_vote(self) -> None: @@ -128,7 +128,7 @@ def test_create_delegate_vote(self) -> None: "meeting/1", ], ) - self.assert_meeting_user_changed_fields(self.next_user_id) + self.assert_meeting_user_structured_information(self.next_user_id) def test_create_receive_delegated_vote(self) -> None: self.make_request( @@ -146,7 +146,7 @@ def test_create_receive_delegated_vote(self) -> None: "meeting/1", ], ) - self.assert_meeting_user_changed_fields(self.next_user_id) + self.assert_meeting_user_structured_information(self.next_user_id) def test_update_re_delegate_vote(self) -> None: self.setup_delegation() @@ -176,7 +176,7 @@ def test_create_re_delegate_vote_reverse(self) -> None: "meeting/1", ], ) - self.assert_meeting_user_changed_fields(self.next_user_id) + self.assert_meeting_user_structured_information(self.next_user_id) def test_update_re_delegate_received_votes(self) -> None: self.setup_delegation() @@ -387,7 +387,7 @@ def test_create_multiple_from_ids(self) -> None: "meeting/1", ], ) - self.assert_meeting_user_changed_fields(self.next_user_id + 2) + self.assert_meeting_user_structured_information(self.next_user_id + 2) for id_ in [self.alice_id, self.bob_id, self.colin_id, eric_id, fredric_id]: self.assert_history_information( f"user/{id_}", @@ -421,7 +421,7 @@ def test_update_create_meeting_user_receiving_delegation(self) -> None: "meeting/1", ], ) - self.assert_meeting_user_changed_fields(debra_id) + self.assert_meeting_user_structured_information(debra_id) def test_update_create_meeting_user_with_delegation(self) -> None: debra_id = self.create_user("debra") @@ -449,4 +449,4 @@ def test_update_create_meeting_user_with_delegation(self) -> None: "meeting/1", ], ) - self.assert_meeting_user_changed_fields(debra_id) + self.assert_meeting_user_structured_information(debra_id) diff --git a/tests/system/action/user/test_merge_together.py b/tests/system/action/user/test_merge_together.py index b8e6159507..8e1e269564 100644 --- a/tests/system/action/user/test_merge_together.py +++ b/tests/system/action/user/test_merge_together.py @@ -499,7 +499,7 @@ def setup_complex_user_fields(self) -> None: "original_model_id": "meeting_user/12", "model_id": "meeting_user/12", "position_id": 1, - "changed_fields": Jsonb({"group_ids": {"added": [1, 2]}}), + "structured_information": Jsonb({"group_ids": {"added": [1, 2]}}), }, "history_entry/3": { "original_model_id": "user/3", @@ -521,19 +521,19 @@ def setup_complex_user_fields(self) -> None: "original_model_id": "meeting_user/14", "model_id": "meeting_user/14", "position_id": 1, - "changed_fields": Jsonb({"group_ids": {"added": [2]}}), + "structured_information": Jsonb({"group_ids": {"added": [2]}}), }, "history_entry/6": { "original_model_id": "meeting_user/44", "model_id": "meeting_user/44", "position_id": 1, - "changed_fields": Jsonb({"group_ids": {"added": [4]}}), + "structured_information": Jsonb({"group_ids": {"added": [4]}}), }, "history_entry/7": { "original_model_id": "meeting_user/74", "model_id": "meeting_user/74", "position_id": 1, - "changed_fields": Jsonb({"group_ids": {"added": [9]}}), + "structured_information": Jsonb({"group_ids": {"added": [9]}}), }, "history_position/2": { "timestamp": datetime.fromtimestamp(200000, ZoneInfo("UTC")), @@ -553,7 +553,7 @@ def setup_complex_user_fields(self) -> None: "original_model_id": "meeting_user/42", "model_id": "meeting_user/42", "position_id": 2, - "changed_fields": Jsonb({"group_ids": {"added": [5]}}), + "structured_information": Jsonb({"group_ids": {"added": [5]}}), }, "history_entry/10": { "original_model_id": "user/3", @@ -568,13 +568,13 @@ def setup_complex_user_fields(self) -> None: "original_model_id": "meeting_user/43", "model_id": "meeting_user/43", "position_id": 2, - "changed_fields": Jsonb({"group_ids": {"added": [4, 5]}}), + "structured_information": Jsonb({"group_ids": {"added": [4, 5]}}), }, "history_entry/12": { "original_model_id": "meeting_user/73", "model_id": "meeting_user/73", "position_id": 2, - "changed_fields": Jsonb({"group_ids": {"added": [8]}}), + "structured_information": Jsonb({"group_ids": {"added": [8]}}), }, "history_entry/13": { "original_model_id": "user/5", @@ -590,7 +590,7 @@ def setup_complex_user_fields(self) -> None: "original_model_id": "meeting_user/105", "model_id": "meeting_user/105", "position_id": 2, - "changed_fields": Jsonb({"group_ids": {"added": [10]}}), + "structured_information": Jsonb({"group_ids": {"added": [10]}}), }, "history_entry/15": { "original_model_id": "user/6", @@ -735,7 +735,7 @@ def test_merge_with_user_fields(self) -> None: "original_model_id": "meeting_user/12", "model_id": "meeting_user/12", "position_id": 1, - "changed_fields": {"group_ids": {"added": [1, 2]}}, + "structured_information": {"group_ids": {"added": [1, 2]}}, }, "history_entry/3": { "original_model_id": "user/3", @@ -757,19 +757,19 @@ def test_merge_with_user_fields(self) -> None: "original_model_id": "meeting_user/14", "model_id": "meeting_user/12", "position_id": 1, - "changed_fields": {"group_ids": {"added": [2]}}, + "structured_information": {"group_ids": {"added": [2]}}, }, "history_entry/6": { "original_model_id": "meeting_user/44", "model_id": "meeting_user/42", "position_id": 1, - "changed_fields": {"group_ids": {"added": [4]}}, + "structured_information": {"group_ids": {"added": [4]}}, }, "history_entry/7": { "original_model_id": "meeting_user/74", "model_id": "meeting_user/106", "position_id": 1, - "changed_fields": {"group_ids": {"added": [9]}}, + "structured_information": {"group_ids": {"added": [9]}}, }, "history_position/2": { "timestamp": datetime.fromtimestamp(200000, ZoneInfo("UTC")), @@ -790,7 +790,7 @@ def test_merge_with_user_fields(self) -> None: "original_model_id": "meeting_user/42", "model_id": "meeting_user/42", "position_id": 2, - "changed_fields": {"group_ids": {"added": [5]}}, + "structured_information": {"group_ids": {"added": [5]}}, }, "history_entry/10": { "original_model_id": "user/3", @@ -805,13 +805,13 @@ def test_merge_with_user_fields(self) -> None: "original_model_id": "meeting_user/43", "model_id": "meeting_user/42", "position_id": 2, - "changed_fields": {"group_ids": {"added": [4, 5]}}, + "structured_information": {"group_ids": {"added": [4, 5]}}, }, "history_entry/12": { "original_model_id": "meeting_user/73", "model_id": "meeting_user/106", "position_id": 2, - "changed_fields": {"group_ids": {"added": [8]}}, + "structured_information": {"group_ids": {"added": [8]}}, }, "history_entry/13": { "original_model_id": "user/5", @@ -827,7 +827,7 @@ def test_merge_with_user_fields(self) -> None: "original_model_id": "meeting_user/105", "model_id": "meeting_user/107", "position_id": 2, - "changed_fields": {"group_ids": {"added": [10]}}, + "structured_information": {"group_ids": {"added": [10]}}, }, "history_entry/15": { "original_model_id": "user/6", diff --git a/tests/system/action/user/test_set_present.py b/tests/system/action/user/test_set_present.py index 32035968df..024928200d 100644 --- a/tests/system/action/user/test_set_present.py +++ b/tests/system/action/user/test_set_present.py @@ -25,7 +25,7 @@ def base_test_set_present_add_correct(self, with_meeting_user: bool) -> None: if with_meeting_user: self.assert_history_information( "meeting_user/1", - changed_fields={"is_present": True}, + structured_information={"is_present": True}, ) def test_set_present_add_correct(self) -> None: @@ -65,7 +65,7 @@ def base_test_set_present_add_second_correct(self, with_meeting_user: bool) -> N ) self.assert_history_information( "meeting_user/2", - changed_fields={"is_present": True}, + structured_information={"is_present": True}, ) def test_set_present_add_second_correct(self) -> None: @@ -96,7 +96,7 @@ def base_test_set_present_del_correct(self, with_meeting_user: bool) -> None: if with_meeting_user: self.assert_history_information( "meeting_user/1", - changed_fields={"is_present": False}, + structured_information={"is_present": False}, ) def test_set_present_del_correct(self) -> None: diff --git a/tests/system/action/user/test_update.py b/tests/system/action/user/test_update.py index 4424976f79..8644285743 100644 --- a/tests/system/action/user/test_update.py +++ b/tests/system/action/user/test_update.py @@ -291,7 +291,7 @@ def test_update_with_meeting_user_fields(self) -> None: ], ) self.assert_history_information( - "meeting_user/224", changed_fields={"group_ids": {"added": [1]}} + "meeting_user/224", structured_information={"group_ids": {"added": [1]}} ) self.assert_history_information( "user/23", ["Vote delegated to {} in meeting {}", "user/22", "meeting/1"] @@ -497,7 +497,7 @@ def test_committee_manager_without_committee_ids(self) -> None: ) self.assert_history_information( "meeting_user/1111", - changed_fields={"group_ids": {"removed": [600]}}, + structured_information={"group_ids": {"removed": [600]}}, ) def test_committee_manager_remove_committee_ids(self) -> None: @@ -2691,7 +2691,7 @@ def test_update_history_add_group(self) -> None: ) self.assert_history_information( "meeting_user/1", - changed_fields={"group_ids": {"added": [3]}}, + structured_information={"group_ids": {"added": [3]}}, ) self.assert_history_information("meeting_user/2") @@ -2716,7 +2716,7 @@ def test_update_history_add_group_to_default_group(self) -> None: ) self.assert_history_information( "meeting_user/1", - changed_fields={ + structured_information={ "group_ids": { "added": [2], "removed": [1], @@ -2746,7 +2746,7 @@ def test_update_history_add_multiple_groups(self) -> None: ) self.assert_history_information( "meeting_user/1", - changed_fields={ + structured_information={ "group_ids": { "added": [2, 3], "removed": [1], @@ -2775,7 +2775,7 @@ def test_update_history_add_multiple_groups_with_default_group(self) -> None: ) self.assert_history_information( "meeting_user/1", - changed_fields={"group_ids": {"added": [2]}}, + structured_information={"group_ids": {"added": [2]}}, ) def test_update_history_remove_group(self) -> None: @@ -2803,7 +2803,7 @@ def test_update_history_remove_group(self) -> None: ) self.assert_history_information( "meeting_user/1", - changed_fields={"group_ids": {"removed": [1]}}, + structured_information={"group_ids": {"removed": [1]}}, ) def test_update_fields_with_equal_value_no_history(self) -> None: @@ -2904,7 +2904,7 @@ def test_update_participant_data_with_existing_meetings(self) -> None: self.assert_history_information("meeting_user/1") self.assert_history_information( "meeting_user/2", - changed_fields={"group_ids": {"added": [4]}}, + structured_information={"group_ids": {"added": [4]}}, ) def test_update_participant_data_in_multiple_meetings_with_existing_meetings( @@ -2958,11 +2958,11 @@ def test_update_participant_data_in_multiple_meetings_with_existing_meetings( self.assert_history_information("meeting_user/1") self.assert_history_information( "meeting_user/2", - changed_fields={"group_ids": {"added": [4]}}, + structured_information={"group_ids": {"added": [4]}}, ) self.assert_history_information( "meeting_user/3", - changed_fields={"group_ids": {"added": [7]}}, + structured_information={"group_ids": {"added": [7]}}, ) def test_update_participant_data_in_multiple_meetings_log_is_present( @@ -3011,11 +3011,11 @@ def test_update_participant_data_in_multiple_meetings_log_is_present( self.assert_history_information("meeting_user/1") self.assert_history_information( "meeting_user/2", - changed_fields={"group_ids": {"added": [4]}, "is_present": True}, + structured_information={"group_ids": {"added": [4]}, "is_present": True}, ) self.assert_history_information( "meeting_user/3", - changed_fields={"group_ids": {"added": [7]}}, + structured_information={"group_ids": {"added": [7]}}, ) def test_update_remove_participant_from_multiple_meetings_log_is_present( @@ -3056,11 +3056,11 @@ def test_update_remove_participant_from_multiple_meetings_log_is_present( self.assert_history_information("meeting_user/1") self.assert_history_information( "meeting_user/2", - changed_fields={"group_ids": {"removed": [4]}, "is_present": False}, + structured_information={"group_ids": {"removed": [4]}, "is_present": False}, ) self.assert_history_information( "meeting_user/3", - changed_fields={"group_ids": {"removed": [7]}}, + structured_information={"group_ids": {"removed": [7]}}, ) def test_update_saml_id__can_change_own_password_error(self) -> None: