getProperty('id'); $idProperty->setValue($ticket, 1); $event = new class (TicketUpdateKindEnum::UPDATE_MOTIVE, $ticket) extends TicketUpdateEvent {}; $messageBus = $this->prophesize(MessageBusInterface::class); $messageBus->dispatch(Argument::that(fn ($arg) => $arg instanceof PostTicketUpdateMessage && TicketUpdateKindEnum::UPDATE_MOTIVE === $arg->updateKind && 1 === $arg->ticketId)) ->will(fn ($args) => new Envelope($args[0])) ->shouldBeCalled(); $eventSubscriber = new GeneratePostUpdateTicketEventSubscriber($messageBus->reveal()); $eventSubscriber->onTicketUpdate($event); $kernel = $this->prophesize(KernelInterface::class); $terminate = new TerminateEvent($kernel->reveal(), new Request(), new Response()); $eventSubscriber->onKernelTerminate($terminate); } }