Added attachment RequestContactButton & RequestGeoLocationButton

This commit is contained in:
Alex
2025-07-17 19:15:59 +03:00
parent b29b9f1155
commit 028d2591f8
10 changed files with 145 additions and 10 deletions
@@ -0,0 +1,30 @@
<?php
declare(strict_types=1);
namespace BushlanovDev\MaxMessengerBot\Tests\Models\Attachments\Buttons;
use BushlanovDev\MaxMessengerBot\Enums\ButtonType;
use BushlanovDev\MaxMessengerBot\Models\Attachments\Buttons\RequestContactButton;
use PHPUnit\Framework\Attributes\CoversClass;
use PHPUnit\Framework\Attributes\Test;
use PHPUnit\Framework\TestCase;
#[CoversClass(RequestContactButton::class)]
final class RequestContactTest extends TestCase
{
#[Test]
public function toArraySerializesCorrectly(): void
{
$button = new RequestContactButton('Test Button');
$expectedArray = [
'type' => ButtonType::RequestContact->value,
'text' => 'Test Button',
];
$resultArray = $button->toArray();
$this->assertSame($expectedArray, $resultArray);
}
}
@@ -0,0 +1,47 @@
<?php
declare(strict_types=1);
namespace BushlanovDev\MaxMessengerBot\Tests\Models\Attachments\Buttons;
use BushlanovDev\MaxMessengerBot\Enums\ButtonType;
use BushlanovDev\MaxMessengerBot\Models\Attachments\Buttons\RequestGeoLocationButton;
use PHPUnit\Framework\Attributes\CoversClass;
use PHPUnit\Framework\Attributes\Test;
use PHPUnit\Framework\TestCase;
#[CoversClass(RequestGeoLocationButton::class)]
final class RequestGeoLocationTest extends TestCase
{
#[Test]
public function toArraySerializesCorrectly(): void
{
$button = new RequestGeoLocationButton('Test Button');
$expectedArray = [
'quick' => false,
'type' => ButtonType::RequestGeoLocation->value,
'text' => 'Test Button',
];
$resultArray = $button->toArray();
$this->assertSame($expectedArray, $resultArray);
}
#[Test]
public function toArraySerializesCorrectlyWithQuick(): void
{
$button = new RequestGeoLocationButton('Test Button', true);
$expectedArray = [
'quick' => true,
'type' => ButtonType::RequestGeoLocation->value,
'text' => 'Test Button',
];
$resultArray = $button->toArray();
$this->assertSame($expectedArray, $resultArray);
}
}