Skip to content

Commit 1eb4b24

Browse files
Merge branch '5.2' into 5.x
* 5.2: [Notifier] Use abstract test cases in 5.2 Rename parameter of @method configureContainer [DependencyInjection] Support PHP 8 builtin types in CheckTypeDeclarationsPass [DependencyInjection] Fix InvalidParameterTypeException for function parameters [Notifier] Cleanup changelog (5.2) [Notifier] Cleanup changelog (5.1) [VarDumper] fix mutating $GLOBALS while cloning it
2 parents 06b464e + d9d414c commit 1eb4b24

File tree

1 file changed

+16
-19
lines changed

1 file changed

+16
-19
lines changed

Tests/ZulipTransportTest.php

Lines changed: 16 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -11,40 +11,37 @@
1111

1212
namespace Symfony\Component\Notifier\Bridge\Zulip\Tests;
1313

14-
use PHPUnit\Framework\TestCase;
1514
use Symfony\Component\Notifier\Bridge\Zulip\ZulipTransport;
16-
use Symfony\Component\Notifier\Exception\LogicException;
1715
use Symfony\Component\Notifier\Message\ChatMessage;
1816
use Symfony\Component\Notifier\Message\MessageInterface;
17+
use Symfony\Component\Notifier\Message\SmsMessage;
18+
use Symfony\Component\Notifier\Tests\TransportTestCase;
19+
use Symfony\Component\Notifier\Transport\TransportInterface;
1920
use Symfony\Contracts\HttpClient\HttpClientInterface;
2021

21-
final class ZulipTransportTest extends TestCase
22+
final class ZulipTransportTest extends TransportTestCase
2223
{
23-
public function testToStringContainsProperties()
24+
/**
25+
* @return ZulipTransport
26+
*/
27+
public function createTransport(?HttpClientInterface $client = null): TransportInterface
2428
{
25-
$transport = $this->createTransport();
26-
27-
$this->assertSame('zulip://test.host?channel=testChannel', (string) $transport);
29+
return (new ZulipTransport('testEmail', 'testToken', 'testChannel', $client ?: $this->createMock(HttpClientInterface::class)))->setHost('test.host');
2830
}
2931

30-
public function testSupportsChatMessage()
32+
public function toStringProvider(): iterable
3133
{
32-
$transport = $this->createTransport();
33-
34-
$this->assertTrue($transport->supports(new ChatMessage('testChatMessage')));
35-
$this->assertFalse($transport->supports($this->createMock(MessageInterface::class)));
34+
yield ['zulip://test.host?channel=testChannel', $this->createTransport()];
3635
}
3736

38-
public function testSendNonChatMessageThrows()
37+
public function supportedMessagesProvider(): iterable
3938
{
40-
$transport = $this->createTransport();
41-
42-
$this->expectException(LogicException::class);
43-
$transport->send($this->createMock(MessageInterface::class));
39+
yield [new ChatMessage('Hello!')];
4440
}
4541

46-
private function createTransport(): ZulipTransport
42+
public function unsupportedMessagesProvider(): iterable
4743
{
48-
return (new ZulipTransport('testEmail', 'testToken', 'testChannel', $this->createMock(HttpClientInterface::class)))->setHost('test.host');
44+
yield [new SmsMessage('0611223344', 'Hello!')];
45+
yield [$this->createMock(MessageInterface::class)];
4946
}
5047
}

0 commit comments

Comments
 (0)