chore: initial import for test contour

This commit is contained in:
sova-bootstrap
2026-05-27 19:36:32 +03:00
commit 166cdb148e
282 changed files with 84872 additions and 0 deletions
+42
View File
@@ -0,0 +1,42 @@
<?php
// tests/Integration/Messenger/SchedulerTransportTest.php
namespace Tests\Service;
use Symfony\Bundle\FrameworkBundle\Test\KernelTestCase;
use Symfony\Component\Console\Messenger\RunCommandMessage;
use Symfony\Component\Messenger\MessageBusInterface;
use Symfony\Component\Messenger\Transport\TransportInterface;
class SchedulerTransportTest extends KernelTestCase
{
public function testMessageIsSentToSchedulerTransport(): void
{
self::bootKernel();
// 1. Получаем MessageBusInterface (правильный способ)
/** @var MessageBusInterface $messageBus */
$messageBus = self::getContainer()->get(MessageBusInterface::class);
// 2. Получаем транспорт scheduler_default
/** @var TransportInterface $transport */
$transport = self::getContainer()->get('messenger.transport.scheduler_default');
// 3. Очищаем очередь перед тестом (если транспорт поддерживает)
if (method_exists($transport, 'reset')) {
$transport->reset();
}
// 4. Отправляем сообщение
$messageBus->dispatch(new RunCommandMessage('debug:container'));
// 5. Проверяем очередь
$envelopes = $transport->get();
$this->assertCount(1, $envelopes);
$receivedMessage = $envelopes[0]->getMessage();
$this->assertInstanceOf(RunCommandMessage::class, $receivedMessage);
$this->assertEquals('debug:container', $receivedMessage->getCommand());
}
}