Back | Home
الـ Path الحالي: /home/picotech/domains/instantly.picotech.app/public_html/public/./../app/.././../../finland.picotech.app/public_html/storage/../vendor/./nikic/../dompdf/../alexandr-mironov/../guzzlehttp/../././sebastian/lines-of-code/.././version/../../phpunit/../stripe/../markbaker/./.././africastalking/africastalking/./tests
الملفات الموجودة في هذا الـ Path:
.
..
AfricasTalkingTest.php
AirtimeTest.php
ApplicationTest.php
ContentTest.php
Fixtures.php.tpl
PaymentsTest.php
SMSTest.php
TokenTest.php
VoiceTest.php
مشاهدة ملف: SMSTest.php
<?php
namespace AfricasTalking\SDK\Tests;
use AfricasTalking\SDK\AfricasTalking;
use GuzzleHttp\Exception\GuzzleException;
class SMSTest extends \PHPUnit\Framework\TestCase
{
public function setUp(): void
{
$this->username = Fixtures::$username;
$this->apiKey = Fixtures::$apiKey;
$at = new AfricasTalking($this->username, $this->apiKey);
$this->client = $at->sms();
$this->tokenClient = $at->token();
}
public function testSMSWithEmptyMessage()
{
$response = $this->client->send([
'to' => Fixtures::$multiplePhoneNumbersSMS,
]);
$this->assertArrayHasKey('status',$response);
$this->assertEquals('error',$response['status']);
}
public function testSMSWithEmptyRecipient()
{
$response = $this->client->send([
'message' => 'Testing...'
]);
$this->assertArrayHasKey('status',$response);
$this->assertEquals('error',$response['status']);
}
public function testSingleSMSSending()
{
$response = $this->client->send([
'to' => Fixtures::$phoneNumber,
'message' => 'Testing SMS...'
]);
$this->assertObjectHasAttribute('SMSMessageData', $response['data']);
}
public function testMultipleSMSSending()
{
$response = $this->client->send([
'to' => Fixtures::$multiplePhoneNumbersSMS,
'message' => 'Testing multiple sending...'
]);
$this->assertObjectHasAttribute('SMSMessageData', $response['data']);
}
public function testSMSSendingWithShortcode()
{
$response = $this->client->send([
'to' => Fixtures::$multiplePhoneNumbersSMS,
'message' => 'Testing with short code...',
'from' => Fixtures::$shortCode
]);
$this->assertObjectHasAttribute('SMSMessageData', $response['data']);
}
public function testSMSSendingWithAlphanumeric()
{
$response = $this->client->send([
'to' => Fixtures::$multiplePhoneNumbersSMS,
'message' => 'Testing with AlphaNumeric...',
'from' => Fixtures::$alphanumeric
]);
$this->assertObjectHasAttribute('SMSMessageData', $response['data']);
}
public function testPremiumSMSSending()
{
$response = $this->client->sendPremium([
'to' => Fixtures::$multiplePhoneNumbersSMS,
'linkId' => 'messageLinkId',
'keyword' => Fixtures::$keyword,
'from' => Fixtures::$shortCode,
'message' => 'Testing Premium...'
]);
$this->assertObjectHasAttribute('SMSMessageData', $response['data']);
}
public function testFetchMessages()
{
$response = $this->client->fetchMessages(['lastReceivedId' => '8796']);
$this->assertObjectHasAttribute('SMSMessageData', $response['data']);
}
public function testCreateSubscription()
{
$checkoutTokenResponse = $this->tokenClient->createCheckoutToken([
'phoneNumber' => Fixtures::$phoneNumber
]);
$response = $this->client->createSubscription([
'phoneNumber' => Fixtures::$phoneNumber,
'shortCode' => Fixtures::$shortCode,
'keyword' => Fixtures::$keyword,
'checkoutToken' => $checkoutTokenResponse['data']->token
]);
$this->assertArrayHasKey('status',$response);
$this->assertEquals('success',$response['status']);
}
public function testDeleteSubscription()
{
$response = $this->client->deleteSubscription([
'phoneNumber' => Fixtures::$phoneNumber,
'shortCode' => Fixtures::$shortCode,
'keyword' => Fixtures::$keyword
]);
$this->assertArrayHasKey('status',$response);
$this->assertEquals('success',$response['status']);
}
public function testFetchSubscriptions()
{
$response = $this->client->fetchSubscriptions([
'shortCode' => Fixtures::$shortCode,
'keyword' => Fixtures::$keyword
]);
$this->assertObjectHasAttribute('responses', $response['data']);
}
}