diff --git a/src/user_engine/service.py b/src/user_engine/service.py index 9395ea0..0feef6f 100644 --- a/src/user_engine/service.py +++ b/src/user_engine/service.py @@ -1713,6 +1713,7 @@ class UserEngineService: resource_id=actor.subject, tenant=actor.tenant, correlation_id=correlation_id, + context={"self": True}, ) identity = self.store.find_identity(*actor.identity_key) if identity is not None: diff --git a/tests/test_isolated_mvp.py b/tests/test_isolated_mvp.py index eeb7e52..907dea2 100644 --- a/tests/test_isolated_mvp.py +++ b/tests/test_isolated_mvp.py @@ -28,7 +28,7 @@ from user_engine.testing.fixtures import ( class IsolatedMvpTests(unittest.TestCase): def test_me_creates_user_account_and_identity_once(self): - service, store, _ = _service() + service, store, authorization = _service() session = service.me(human_actor_claims(), correlation_id="corr-me") again = service.me(human_actor_claims(), correlation_id="corr-me-again") @@ -40,6 +40,12 @@ class IsolatedMvpTests(unittest.TestCase): self.assertEqual(len(store.users), 1) self.assertEqual(len(store.identities), 1) self.assertEqual(len(service.outbox_events()), 1) + me_requests = [ + request for request in authorization.requests + if request.action == "me.read" + ] + self.assertEqual(2, len(me_requests)) + self.assertTrue(all(request.context["self"] for request in me_requests)) def test_account_lifecycle_and_identity_linking(self): service, _, authorization = _service()