10
10
use Bref \Symfony \Messenger \Service \Sns \SnsTransportFactory ;
11
11
use Bref \Symfony \Messenger \Test \Functional \BaseFunctionalTest ;
12
12
use Bref \Symfony \Messenger \Test \Resources \TestMessage \TestMessage ;
13
+ use Nyholm \BundleTest \TestKernel ;
13
14
use Symfony \Component \Messenger \Envelope ;
14
15
use Symfony \Component \Messenger \MessageBusInterface ;
15
16
use Symfony \Component \Messenger \Transport \Serialization \PhpSerializer ;
16
17
use Symfony \Component \Messenger \Transport \Serialization \SerializerInterface ;
17
18
18
19
class SnsTransportTest extends BaseFunctionalTest
19
20
{
20
- protected function getDefaultConfig (): array
21
+ protected function setUp (): void
21
22
{
22
- return ['sns.yaml ' ];
23
+ parent ::setUp ();
24
+
25
+ self ::bootKernel ([
26
+ 'config ' => static function (TestKernel $ kernel ) {
27
+ $ kernel ->addTestConfig (dirname (__DIR__ , 3 ).'/Resources/config/sns.yaml ' );
28
+ },
29
+ ]);
23
30
}
24
31
25
32
public function test factory (): void
26
33
{
27
34
/** @var SnsTransportFactory $factory */
28
- $ factory = $ this -> container ->get (SnsTransportFactory::class);
35
+ $ factory = self :: getContainer () ->get (SnsTransportFactory::class);
29
36
$ this ->assertInstanceOf (SnsTransportFactory::class, $ factory );
30
37
31
38
$ this ->assertTrue ($ factory ->supports ('sns://arn:aws:sns:us-east-1:1234567890:test ' , []));
@@ -50,17 +57,17 @@ public function test send message(): void
50
57
return true ;
51
58
}))
52
59
->willReturn (ResultMockFactory::create (PublishResponse::class, ['MessageId ' => 4711 ]));
53
- $ this -> container ->set ('bref.messenger.sns_client ' , $ sns );
60
+ self :: getContainer () ->set ('bref.messenger.sns_client ' , $ sns );
54
61
55
62
/** @var MessageBusInterface $bus */
56
- $ bus = $ this -> container ->get (MessageBusInterface::class);
63
+ $ bus = self :: getContainer () ->get (MessageBusInterface::class);
57
64
$ bus ->dispatch (new TestMessage ('hello ' ));
58
65
}
59
66
60
67
public function testRejectsMessageWhenQueueIsFifoWithoutStamp ()
61
68
{
62
69
$ snsClient = $ this ->getMockBuilder (SnsClient::class)->disableOriginalConstructor ()->getMock ();
63
- $ serializer = $ this -> container ->get (SerializerInterface::class);
70
+ $ serializer = self :: getContainer () ->get (SerializerInterface::class);
64
71
$ snsTransport = new SnsTransport ($ snsClient , $ serializer , "arn:aws:sns:us-east-1:1234567890:test.fifo' " ); // fifo suffix designates fifo queue
65
72
$ msg = new TestMessage ("hello " );
66
73
$ envelope = new Envelope ($ msg );
@@ -70,7 +77,7 @@ public function testRejectsMessageWhenQueueIsFifoWithoutStamp()
70
77
public function testAcceptsMessageWhenQueueIsFifoWithStamp (){
71
78
$ snsClient = $ this ->getMockBuilder (SnsClient::class)->disableOriginalConstructor ()->getMock ();
72
79
$ snsClient ->expects ($ this ->once ())->method ("publish " )->willReturn (ResultMockFactory::create (PublishResponse::class, ['MessageId ' => 4711 ]));
73
- $ serializer = $ this -> container ->get (SerializerInterface::class);
80
+ $ serializer = self :: getContainer () ->get (SerializerInterface::class);
74
81
$ snsTransport = new SnsTransport ($ snsClient , $ serializer , "arn:aws:sns:us-east-1:1234567890:test.fifo' " ); // fifo suffix designates fifo queue
75
82
$ msg = new TestMessage ("hello " );
76
83
$ envelope = new Envelope ($ msg , [new SnsFifoStamp ("123 " ,"456 " )]);
@@ -85,7 +92,7 @@ public function testAttachingSnsFifoStampToMessageAppliesMessageGroupId(){
85
92
return true ;
86
93
}))
87
94
->willReturn (ResultMockFactory::create (PublishResponse::class, ['MessageId ' => 4711 ]));
88
- $ serializer = $ this -> container ->get (SerializerInterface::class);
95
+ $ serializer = self :: getContainer () ->get (SerializerInterface::class);
89
96
$ snsTransport = new SnsTransport ($ snsClient , $ serializer , "arn:aws:sns:us-east-1:1234567890:test.fifo' " ); // fifo suffix designates fifo queue
90
97
$ msg = new TestMessage ("hello " );
91
98
$ envelope = new Envelope ($ msg , [new SnsFifoStamp ("123 " ,"456 " )]);
@@ -100,7 +107,7 @@ public function testAttachingSnsFifoStampToMessageAppliesMessageDeDeuplicatId(){
100
107
return true ;
101
108
}))
102
109
->willReturn (ResultMockFactory::create (PublishResponse::class, ['MessageId ' => 4711 ]));
103
- $ serializer = $ this -> container ->get (SerializerInterface::class);
110
+ $ serializer = self :: getContainer () ->get (SerializerInterface::class);
104
111
$ snsTransport = new SnsTransport ($ snsClient , $ serializer , "arn:aws:sns:us-east-1:1234567890:test.fifo' " ); // fifo suffix designates fifo queue
105
112
$ msg = new TestMessage ("hello " );
106
113
$ envelope = new Envelope ($ msg , [new SnsFifoStamp ("123 " ,"456 " )]);
@@ -112,7 +119,7 @@ public function testAttachingSnsFifoStampToMessageAllowsNullMessageGroupId(){
112
119
$ snsClient = $ this ->getMockBuilder (SnsClient::class)->disableOriginalConstructor ()->getMock ();
113
120
$ snsClient ->expects ($ this ->once ())->method ("publish " )
114
121
->willReturn (ResultMockFactory::create (PublishResponse::class, ['MessageId ' => 4711 ]));
115
- $ serializer = $ this -> container ->get (SerializerInterface::class);
122
+ $ serializer = self :: getContainer () ->get (SerializerInterface::class);
116
123
$ snsTransport = new SnsTransport ($ snsClient , $ serializer , "arn:aws:sns:us-east-1:1234567890:test.fifo' " ); // fifo suffix designates fifo queue
117
124
$ msg = new TestMessage ("hello " );
118
125
$ envelope = new Envelope ($ msg , [new SnsFifoStamp (null ,"456 " )]);
0 commit comments