Viewing file: MessageTest.php (7.86 KB) -rw-r--r-- Select action/file-type: (+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
<?php
namespace Plivo\Tests\Resources;
use Plivo\Http\PlivoRequest; use Plivo\Http\PlivoResponse; use Plivo\Tests\BaseTestCase;
/** * Class MessageTest * @package Plivo\Tests\Resources */ class MessageTest extends BaseTestCase {
public function testMessageCreateWithoutSrcPowerpackException() { $this->expectPlivoException('Plivo\Exceptions\PlivoValidationException'); $body = file_get_contents(__DIR__ . '/../Mocks/messageSendResponse.json');
$this->mock(new PlivoResponse(new PlivoRequest(),200, $body));
$this->client->messages->create(null, ["+919012345678"], "Test", [], null);
}
public function testMessageCreateWithSrcPowerpackException() { $this->expectPlivoException('Plivo\Exceptions\PlivoValidationException'); $body = file_get_contents(__DIR__ . '/../Mocks/messageSendResponse.json');
$this->mock(new PlivoResponse(new PlivoRequest(),200, $body));
$this->client->messages->create("+919999999999", ["+919012345678"], "Test", [], "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa");
}
public function testMessageCreate() { $request = new PlivoRequest( 'POST', 'Account/MAXXXXXXXXXXXXXXXXXX/Message/', [ "dst" => "+919012345678", "text" => "Test", "src" => "+919999999999" ]); $body = file_get_contents(__DIR__ . '/../Mocks/messageSendResponse.json');
$this->mock(new PlivoResponse($request,200, $body));
$actual = $this->client->messages->create("+919999999999", ["+919012345678"], "Test", [], null);
self::assertNotNull($actual); }
public function testnewMessageCreate() { $request = new PlivoRequest( 'POST', 'Account/MAXXXXXXXXXXXXXXXXXX/Message/', [ "dst" => "+919012345678", "text" => "Test", "src" => "+919999999999" ]); $body = file_get_contents(__DIR__ . '/../Mocks/messageSendResponse.json');
$this->mock(new PlivoResponse($request,200, $body));
$actual = $this->client->messages->create([ "src" => "+919999999999", "dst" => "+919012345678", "text" =>"Test"]);
self::assertNotNull($actual); }
public function testwhatsappTemplateMessageCreate() { $request = new PlivoRequest( 'POST', 'Account/MAXXXXXXXXXXXXXXXXXX/Message/', [ "dst" => "+919012345678", "text" => "Test", "src" => "+919999999999" ]); $body = file_get_contents(__DIR__ . '/../Mocks/messageSendResponse.json');
$this->mock(new PlivoResponse($request,200, $body));
$template = '{ "name": "hello_world", "language": "en_US", "components": null }';
$actual = $this->client->messages->create([ "src" => "+919999999999", "dst" => "+919012345678", "template" =>$template]);
self::assertNotNull($actual); }
public function testMessageGet() { $messageUuid = "5b40a428-bfc7-4daf-9d06-726c558bf3b8"; $requesterIP = "192.168.1.1"; $dltEntityID = "1234"; $dltTemplateID = "5678"; $dltTemplateCategory = "service_implicit"; $conversationID = "9876"; $conversationOrigin = "utility"; $conversationExpirationTimestamp = "2023-08-03 23:02:00+05:30"; $request = new PlivoRequest( 'GET', 'Account/MAXXXXXXXXXXXXXXXXXX/Message/'.$messageUuid.'/', []); $body = file_get_contents(__DIR__ . '/../Mocks/messageGetResponse.json');
$this->mock(new PlivoResponse($request,200, $body));
$actual = $this->client->messages->get($messageUuid);
$this->assertRequest($request);
self::assertNotNull($actual);
self::assertEquals($actual->messageUuid, $messageUuid); self::assertEquals($actual->requesterIP, $requesterIP); self::assertEquals($actual->dltEntityID, $dltEntityID); self::assertEquals($actual->dltTemplateID, $dltTemplateID); self::assertEquals($actual->dltTemplateCategory, $dltTemplateCategory); self::assertEquals($actual->conversationID, $conversationID); self::assertEquals($actual->conversationOrigin, $conversationOrigin); self::assertEquals($actual->conversationExpirationTimestamp, $conversationExpirationTimestamp); }
public function testMessageGetwithPowerpack() { $messageUuid = "5b40a428-bfc7-4daf-9d06-726c558bf3b8"; $expected_ppk = "15c01cc2-4b9f-4d3b-bd15-3c4b38984cc4"; $request = new PlivoRequest( 'GET', 'Account/MAXXXXXXXXXXXXXXXXXX/Message/'.$messageUuid.'/', []); $body = file_get_contents(__DIR__ . '/../Mocks/messageGetResponse.json');
$this->mock(new PlivoResponse($request,200, $body));
$actual = $this->client->messages->get($messageUuid);
self::assertEquals($actual->powerpackID, $expected_ppk); } public function testMediaList() { $messageUuid = "5b40a428-bfc7-4daf-9d06-726c558bf3b8"; $request = new PlivoRequest( 'GET', 'Account/MAXXXXXXXXXXXXXXXXXX/Message/'.$messageUuid.'/', []); $body = file_get_contents(__DIR__ . '/../Mocks/messageGetResponse.json');
$this->mock(new PlivoResponse($request,200, $body));
$actual = $this->client->messages->get($messageUuid); $request = new PlivoRequest( 'GET', 'Account/MAXXXXXXXXXXXXXXXXXX/Message/'.$messageUuid.'/Media/', []); $body = file_get_contents(__DIR__ . '/../Mocks/mediaListResponse.json');
$this->mock(new PlivoResponse($request,200, $body));
$mediaList = $actual->listMedia(); self::assertNotNull($mediaList);
} function testMessageList() { $requesterIP1 = "192.168.1.1"; $requesterIP2 = "192.168.1.20"; $dltEntityID = "9876"; $dltTemplateID = "5432"; $dltTemplateCategory = "promotional"; $conversationID = "1234"; $conversationOrigin = "service"; $conversationExpirationTimestamp = "2023-08-03 23:02:00+05:30"; $request = new PlivoRequest( 'Get', 'Account/MAXXXXXXXXXXXXXXXXXX/Message/', []); $body = file_get_contents(__DIR__ . '/../Mocks/messageListResponse.json'); $this->mock(new PlivoResponse($request,202, $body)); $actual = $this->client->messages->list; $this->assertRequest($request); self::assertNotNull($actual); self::assertEquals($actual->resources[0]->requesterIP, $requesterIP1); self::assertEquals($actual->resources[19]->requesterIP, $requesterIP2);
self::assertEquals($actual->resources[0]->dltEntityID, $dltEntityID); self::assertEquals($actual->resources[0]->dltTemplateID, $dltTemplateID); self::assertEquals($actual->resources[0]->dltTemplateCategory, $dltTemplateCategory);
self::assertEquals($actual->resources[0]->conversationID, $conversationID); self::assertEquals($actual->resources[0]->conversationOrigin, $conversationOrigin); self::assertEquals($actual->resources[0]->conversationExpirationTimestamp, $conversationExpirationTimestamp); self::assertObjectNotHasAttribute('dltEntityID', $actual->resources[19]); self::assertObjectNotHasAttribute('dltTemplateID', $actual->resources[19]); self::assertObjectNotHasAttribute('dltTemplateCategory', $actual->resources[19]);
self::assertObjectNotHasAttribute('conversationID', $actual->resources[19]); self::assertObjectNotHasAttribute('conversationOrigin', $actual->resources[19]); self::assertObjectNotHasAttribute('conversationExpirationTimestamp', $actual->resources[19]); }
}
|