-
-
Notifications
You must be signed in to change notification settings - Fork 14
Closed
Description
I'm adding deduplicate stamp on all my messages, but now in tests it always fail:
[2025-06-02T11:38:07.492513+00:00] messenger.INFO: Sending message App\Media\Message\DeleteObjectMessage with async sender using Zenstruck\Messenger\Test\Transport\TestTransport {"class":"App\\Media\\Message\\DeleteObjectMessage","alias":"async","sender":"Zenstruck\\Messenger\\Test\\Transport\\TestTransport"} []
[2025-06-02T11:38:07.494405+00:00] request.CRITICAL: Uncaught PHP Exception PHPUnit\Framework\AssertionFailedError: "A problem occurred in the serialization process." at Assert.php line 3105 {"exception":"[object] (PHPUnit\\Framework\\AssertionFailedError(code: 0): A problem occurred in the serialization process. at /app/vendor/phpunit/phpunit/src/Framework/Assert.php:3105)"} []
this does not properly exposes the problem, so here is a detailed trace:
2025-06-02T11:41:34.491045+00:00] messenger.INFO: Sending message App\Media\Message\DeleteObjectMessage with async sender using Zenstruck\Messenger\Test\Transport\TestTransport {"class":"App\\Media\\Message\\DeleteObjectMessage","alias":"async","sender":"Zenstruck\\Messenger\\Test\\Transport\\TestTransport"} []
[2025-06-02T11:41:34.491812+00:00] request.CRITICAL: Uncaught PHP Exception Symfony\Component\Lock\Exception\UnserializableKeyException: "The key cannot be serialized." at Key.php line 95 {"exception":"[object] (Symfony\\Component\\Lock\\Exception\\UnserializableKeyException(code: 0): The key cannot be serialized. at /app/vendor/symfony/lock/Key.php:95)
[stacktrace]
#0 [internal function]: Symfony\\Component\\Lock\\Key->__sleep()
#1 /app/vendor/symfony/messenger/Transport/Serialization/PhpSerializer.php(61): serialize(Object(Symfony\\Component\\Messenger\\Envelope))
#2 /app/vendor/zenstruck/messenger-test/src/Transport/TestTransport.php(340): Symfony\\Component\\Messenger\\Transport\\Serialization\\PhpSerializer->encode(Object(Symfony\\Component\\Messenger\\Envelope))
#3 /app/vendor/symfony/messenger/Middleware/SendMessageMiddleware.php(62): Zenstruck\\Messenger\\Test\\Transport\\TestTransport->send(Object(Symfony\\Component\\Messenger\\Envelope))
#4 /app/vendor/symfony/messenger/Middleware/DeduplicateMiddleware.php(42): Symfony\\Component\\Messenger\\Middleware\\SendMessageMiddleware->handle(Object(Symfony\\Component\\Messenger\\Envelope), Object(Symfony\\Component\\Messenger\\Middleware\\StackMiddleware))
#5 /app/vendor/symfony/messenger/Middleware/FailedMessageProcessingMiddleware.php(34): Symfony\\Component\\Messenger\\Middleware\\DeduplicateMiddleware->handle(Object(Symfony\\Component\\Messenger\\Envelope), Object(Symfony\\Component\\Messenger\\Middleware\\StackMiddleware))
#6 /app/vendor/symfony/messenger/Middleware/DispatchAfterCurrentBusMiddleware.php(68): Symfony\\Component\\Messenger\\Middleware\\FailedMessageProcessingMiddleware->handle(Object(Symfony\\Component\\Messenger\\Envelope), Object(Symfony\\Component\\Messenger\\Middleware\\StackMiddleware))
#7 /app/vendor/symfony/messenger/Middleware/RejectRedeliveredMessageMiddleware.php(41): Symfony\\Component\\Messenger\\Middleware\\DispatchAfterCurrentBusMiddleware->handle(Object(Symfony\\Component\\Messenger\\Envelope), Object(Symfony\\Component\\Messenger\\Middleware\\StackMiddleware))
#8 /app/vendor/symfony/messenger/Middleware/AddBusNameStampMiddleware.php(35): Symfony\\Component\\Messenger\\Middleware\\RejectRedeliveredMessageMiddleware->handle(Object(Symfony\\Component\\Messenger\\Envelope), Object(Symfony\\Component\\Messenger\\Middleware\\StackMiddleware))
#9 /app/vendor/symfony/messenger/MessageBus.php(69): Symfony\\Component\\Messenger\\Middleware\\AddBusNameStampMiddleware->handle(Object(Symfony\\Component\\Messenger\\Envelope), Object(Symfony\\Component\\Messenger\\Middleware\\StackMiddleware))
#10 /app/vendor/symfony/messenger/TraceableMessageBus.php(30): Symfony\\Component\\Messenger\\MessageBus->dispatch(Object(App\\Media\\Message\\DeleteObjectMessage), Array)
#11 /app/vendor/zenstruck/messenger-test/src/Bus/TestBus.php(38): Symfony\\Component\\Messenger\\TraceableMessageBus->dispatch(Object(App\\Media\\Message\\DeleteObjectMessage), Array)
#12 /app/src/User/Controller/Account/AvatarDeleteController.php(52): Zenstruck\\Messenger\\Test\\Bus\\TestBus->dispatch(Object(App\\Media\\Message\\DeleteObjectMessage), Array)
#13 /app/vendor/symfony/http-kernel/HttpKernel.php(183): App\\User\\Controller\\Account\\AvatarDeleteController->__invoke(Object(Symfony\\Component\\HttpFoundation\\Request), Object(App\\User\\Security\\SecurityIdentity), Object(App\\User\\Entity\\User))
#14 /app/vendor/symfony/http-kernel/HttpKernel.php(76): Symfony\\Component\\HttpKernel\\HttpKernel->handleRaw(Object(Symfony\\Component\\HttpFoundation\\Request), 1)
#15 /app/vendor/symfony/http-kernel/Kernel.php(182): Symfony\\Component\\HttpKernel\\HttpKernel->handle(Object(Symfony\\Component\\HttpFoundation\\Request), 1, true)
#16 /app/vendor/symfony/http-kernel/HttpKernelBrowser.php(62): Symfony\\Component\\HttpKernel\\Kernel->handle(Object(Symfony\\Component\\HttpFoundation\\Request), 1, true)
#17 /app/vendor/symfony/framework-bundle/KernelBrowser.php(157): Symfony\\Component\\HttpKernel\\HttpKernelBrowser->doRequest(Object(Symfony\\Component\\HttpFoundation\\Request))
#18 /app/vendor/symfony/browser-kit/AbstractBrowser.php(378): Symfony\\Bundle\\FrameworkBundle\\KernelBrowser->doRequest(Object(Symfony\\Component\\HttpFoundation\\Request))
#19 /app/vendor/symfony/browser-kit/AbstractBrowser.php(298): Symfony\\Component\\BrowserKit\\AbstractBrowser->request('POST', 'http://localhos...', Array, Array, Array)
#20 /app/vendor/zenstruck/browser/src/Browser/Session/Driver/BrowserKitDriver.php(577): Symfony\\Component\\BrowserKit\\AbstractBrowser->submit(Object(Symfony\\Component\\DomCrawler\\Form), Array, Array)
#21 /app/vendor/zenstruck/browser/src/Browser/Session/Driver/BrowserKitDriver.php(713): Zenstruck\\Browser\\Session\\Driver\\BrowserKitDriver->{closure:Zenstruck\\Browser\\Session\\Driver\\BrowserKitDriver::submit():577}()
#22 /app/vendor/zenstruck/browser/src/Browser/Session/Driver/BrowserKitDriver.php(577): Zenstruck\\Browser\\Session\\Driver\\BrowserKitDriver->wrapRequest(Object(Closure))
#23 /app/vendor/zenstruck/browser/src/Browser/Session/Driver/BrowserKitDriver.php(332): Zenstruck\\Browser\\Session\\Driver\\BrowserKitDriver->submit(Object(Symfony\\Component\\DomCrawler\\Form))
#24 /app/vendor/behat/mink/src/Element/NodeElement.php(176): Zenstruck\\Browser\\Session\\Driver\\BrowserKitDriver->click('(//html/.//inpu...')
#25 /app/vendor/zenstruck/browser/src/Browser.php(325): Behat\\Mink\\Element\\NodeElement->click()
#26 /app/tests/User/Controller/Account/AvatarDeleteTest.php(48): Zenstruck\\Browser->click('remove avatar')
#27 /app/vendor/phpunit/phpunit/src/Framework/TestCase.php(1656): App\\Tests\\User\\Controller\\Account\\AvatarDeleteTest->testDelete()
#28 /app/vendor/phpunit/phpunit/src/Framework/TestCase.php(514): PHPUnit\\Framework\\TestCase->runTest()
#29 /app/vendor/phpunit/phpunit/src/Framework/TestRunner/TestRunner.php(87): PHPUnit\\Framework\\TestCase->runBare()
#30 /app/vendor/phpunit/phpunit/src/Framework/TestCase.php(361): PHPUnit\\Framework\\TestRunner->run(Object(App\\Tests\\User\\Controller\\Account\\AvatarDeleteTest))
#31 /app/vendor/phpunit/phpunit/src/Framework/TestSuite.php(369): PHPUnit\\Framework\\TestCase->run()
#32 /app/vendor/phpunit/phpunit/src/TextUI/TestRunner.php(64): PHPUnit\\Framework\\TestSuite->run()
#33 /app/vendor/phpunit/phpunit/src/TextUI/Application.php(210): PHPUnit\\TextUI\\TestRunner->run(Object(PHPUnit\\TextUI\\Configuration\\Configuration), Object(PHPUnit\\Runner\\ResultCache\\DefaultResultCache), Object(PHPUnit\\Framework\\TestSuite))
#34 /app/vendor/phpunit/phpunit/phpunit(104): PHPUnit\\TextUI\\Application->run(Array)
#35 /app/vendor/bin/phpunit(122): include('/app/vendor/php...')
#36 {main}
For workaround i can disable test_serialization
option, but that is a workaround. Or this won't be supported?
Metadata
Metadata
Assignees
Labels
No labels