Skip to content

Commit 5b42b1e

Browse files
committed
Add unit tests
1 parent ebd34b8 commit 5b42b1e

File tree

1 file changed

+34
-0
lines changed

1 file changed

+34
-0
lines changed

Tests/Spec/SnsQsContextTest.php

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,13 +3,47 @@
33
namespace Enqueue\SnsQs\Tests\Spec;
44

55
use Enqueue\Sns\SnsContext;
6+
use Enqueue\Sns\SnsSubscribe;
67
use Enqueue\SnsQs\SnsQsContext;
8+
use Enqueue\SnsQs\SnsQsQueue;
9+
use Enqueue\SnsQs\SnsQsTopic;
710
use Enqueue\Sqs\SqsConsumer;
811
use Enqueue\Sqs\SqsContext;
912
use Interop\Queue\Spec\ContextSpec;
1013

1114
class SnsQsContextTest extends ContextSpec
1215
{
16+
public function testSetsSubscriptionAttributes(): void
17+
{
18+
$topic = new SnsQsTopic('topic1');
19+
20+
$snsContext = $this->createMock(SnsContext::class);
21+
$snsContext->expects($this->once())
22+
->method('setSubscriptionAttributes')
23+
->with($this->equalTo(new SnsSubscribe(
24+
$topic,
25+
'queueArn1',
26+
'sqs',
27+
false,
28+
['attr1' => 'value1'],
29+
)));
30+
31+
$sqsContext = $this->createMock(SqsContext::class);
32+
$sqsContext->expects($this->any())
33+
->method('createConsumer')
34+
->willReturn($this->createMock(SqsConsumer::class));
35+
$sqsContext->expects($this->any())
36+
->method('getQueueArn')
37+
->willReturn('queueArn1');
38+
39+
$context = new SnsQsContext($snsContext, $sqsContext);
40+
$context->setSubscriptionAttributes(
41+
$topic,
42+
new SnsQsQueue('queue1'),
43+
['attr1' => 'value1'],
44+
);
45+
}
46+
1347
protected function createContext()
1448
{
1549
$sqsContext = $this->createMock(SqsContext::class);

0 commit comments

Comments
 (0)