Skip to content

Commit 7bb3d07

Browse files
committed
Issue #3082: Add tests.
1 parent 4d98a70 commit 7bb3d07

File tree

2 files changed

+37
-2
lines changed

2 files changed

+37
-2
lines changed
Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
<?php
2+
3+
/*
4+
* This file is part of the API Platform project.
5+
*
6+
* (c) Sergii Pavlenko <[email protected]>
7+
*
8+
* For the full copyright and license information, please view the LICENSE
9+
* file that was distributed with this source code.
10+
*/
11+
12+
declare(strict_types=1);
13+
14+
namespace ApiPlatform\Core\Tests\Bridge\Symfony\Messenger;
15+
16+
use ApiPlatform\Core\Bridge\Symfony\Messenger\ContextStamp;
17+
use PHPUnit\Framework\TestCase;
18+
use Symfony\Component\Messenger\Stamp\StampInterface;
19+
20+
/**
21+
* @author Sergii Pavlenko <[email protected]>
22+
*/
23+
class ContextStampTest extends TestCase
24+
{
25+
public function testConstruct()
26+
{
27+
$this->assertInstanceOf(StampInterface::class, new ContextStamp());
28+
}
29+
}

tests/Bridge/Symfony/Messenger/DataPersisterTest.php

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@
1515

1616
use ApiPlatform\Core\Bridge\Symfony\Messenger\DataPersister;
1717
use ApiPlatform\Core\Bridge\Symfony\Messenger\RemoveStamp;
18+
use ApiPlatform\Core\Bridge\Symfony\Messenger\ContextStamp;
1819
use ApiPlatform\Core\Exception\ResourceClassNotFoundException;
1920
use ApiPlatform\Core\Metadata\Resource\Factory\ResourceMetadataFactoryInterface;
2021
use ApiPlatform\Core\Metadata\Resource\ResourceMetadata;
@@ -56,7 +57,9 @@ public function testPersist()
5657
$dummy = new Dummy();
5758

5859
$messageBus = $this->prophesize(MessageBusInterface::class);
59-
$messageBus->dispatch($dummy)->willReturn(new Envelope($dummy))->shouldBeCalled();
60+
$messageBus->dispatch(Argument::that(function (Envelope $envelope) use ($dummy) {
61+
return $dummy === $envelope->getMessage() && null !== $envelope->last(ContextStamp::class);
62+
}))->willReturn(new Envelope($dummy))->shouldBeCalled();
6063

6164
$dataPersister = new DataPersister($this->prophesize(ResourceMetadataFactoryInterface::class)->reveal(), $messageBus->reveal());
6265
$this->assertSame($dummy, $dataPersister->persist($dummy));
@@ -67,6 +70,7 @@ public function testRemove()
6770
$dummy = new Dummy();
6871

6972
$messageBus = $this->prophesize(MessageBusInterface::class);
73+
7074
$messageBus->dispatch(Argument::that(function (Envelope $envelope) use ($dummy) {
7175
return $dummy === $envelope->getMessage() && null !== $envelope->last(RemoveStamp::class);
7276
}))->willReturn(new Envelope($dummy))->shouldBeCalled();
@@ -80,7 +84,9 @@ public function testHandle()
8084
$dummy = new Dummy();
8185

8286
$messageBus = $this->prophesize(MessageBusInterface::class);
83-
$messageBus->dispatch($dummy)->willReturn((new Envelope($dummy))->with(new HandledStamp($dummy, 'DummyHandler::__invoke')))->shouldBeCalled();
87+
$messageBus->dispatch(Argument::that(function (Envelope $envelope) use ($dummy) {
88+
return $dummy === $envelope->getMessage() && null !== $envelope->last(ContextStamp::class);
89+
}))->willReturn((new Envelope($dummy))->with(new HandledStamp($dummy, 'DummyHandler::__invoke')))->shouldBeCalled();
8490

8591
$dataPersister = new DataPersister($this->prophesize(ResourceMetadataFactoryInterface::class)->reveal(), $messageBus->reveal());
8692
$this->assertSame($dummy, $dataPersister->persist($dummy));

0 commit comments

Comments
 (0)