diff --git a/src/workos/types/user_management/organization_membership.py b/src/workos/types/user_management/organization_membership.py index 0990129a..9fa94321 100644 --- a/src/workos/types/user_management/organization_membership.py +++ b/src/workos/types/user_management/organization_membership.py @@ -13,7 +13,7 @@ class BaseOrganizationMembership(WorkOSModel): id: str user_id: str organization_id: str - organization_name: str + organization_name: Optional[str] = None status: LiteralOrUntyped[OrganizationMembershipStatus] directory_managed: bool = False created_at: str diff --git a/tests/test_events.py b/tests/test_events.py index 9a830557..cd287e2f 100644 --- a/tests/test_events.py +++ b/tests/test_events.py @@ -1,4 +1,5 @@ from typing import Union + import pytest from tests.utils.fixtures.mock_event import MockEvent @@ -86,3 +87,48 @@ def test_list_events_organization_membership_missing_custom_attributes( event = events.data[0] assert isinstance(event, OrganizationMembershipCreatedEvent) assert event.data.custom_attributes == {} + + def test_list_events_organization_membership_missing_organization_name( + self, + module_instance: Union[Events, AsyncEvents], + capture_and_mock_http_client_request, + ): + mock_response = { + "object": "list", + "data": [ + { + "object": "event", + "id": "event_01234", + "event": "organization_membership.created", + "data": { + "object": "organization_membership", + "id": "om_01234", + "user_id": "user_01234", + "organization_id": "org_01234", + "role": {"slug": "member"}, + "status": "active", + "created_at": "2024-01-01T00:00:00.000Z", + "updated_at": "2024-01-01T00:00:00.000Z", + }, + "created_at": "2024-01-01T00:00:00.000Z", + } + ], + "list_metadata": { + "after": None, + }, + } + + capture_and_mock_http_client_request( + http_client=module_instance._http_client, + status_code=200, + response_dict=mock_response, + ) + + events: EventsListResource = syncify( + module_instance.list_events(events=["organization_membership.created"]) + ) + + event = events.data[0] + assert isinstance(event, OrganizationMembershipCreatedEvent) + assert event.data.organization_name is None + assert event.data.custom_attributes == {}