|
5 | 5 | namespace Yokai\Batch\Tests\Bridge\Symfony\Messenger; |
6 | 6 |
|
7 | 7 | use PHPUnit\Framework\TestCase; |
8 | | -use Prophecy\PhpUnit\ProphecyTrait; |
9 | 8 | use Yokai\Batch\Bridge\Symfony\Messenger\LaunchJobMessage; |
10 | 9 | use Yokai\Batch\Bridge\Symfony\Messenger\LaunchJobMessageHandler; |
11 | | -use Yokai\Batch\JobExecution; |
12 | | -use Yokai\Batch\Launcher\JobLauncherInterface; |
| 10 | +use Yokai\Batch\Test\Factory\SequenceJobExecutionIdGenerator; |
| 11 | +use Yokai\Batch\Test\Launcher\BufferingJobLauncher; |
13 | 12 |
|
14 | 13 | final class LaunchJobMessageHandlerTest extends TestCase |
15 | 14 | { |
16 | | - use ProphecyTrait; |
17 | | - |
18 | 15 | public function testInvoke(): void |
19 | 16 | { |
20 | | - $jobLauncher = $this->prophesize(JobLauncherInterface::class); |
21 | | - $jobLauncher->launch('foo', ['bar' => 'BAR']) |
22 | | - ->shouldBeCalled() |
23 | | - ->willReturn(JobExecution::createRoot('123456', 'foo')); |
| 17 | + $launcher = new BufferingJobLauncher(new SequenceJobExecutionIdGenerator(['123456'])); |
24 | 18 |
|
25 | | - $handler = new LaunchJobMessageHandler($jobLauncher->reveal()); |
| 19 | + $handler = new LaunchJobMessageHandler($launcher); |
26 | 20 | $handler->__invoke(new LaunchJobMessage('foo', ['bar' => 'BAR'])); |
| 21 | + |
| 22 | + self::assertCount(1, $launcher->getExecutions()); |
| 23 | + self::assertSame('foo', $launcher->getExecutions()[0]->getJobName()); |
| 24 | + self::assertSame('123456', $launcher->getExecutions()[0]->getId()); |
| 25 | + self::assertSame( |
| 26 | + ['bar' => 'BAR', '_id' => '123456'], |
| 27 | + \iterator_to_array($launcher->getExecutions()[0]->getParameters()->getIterator()) |
| 28 | + ); |
27 | 29 | } |
28 | 30 | } |
0 commit comments