<?php
namespace Laravel\Ui\Tests\AuthBackend;
use Illuminate\Foundation\Auth\ThrottlesLogins as ThrottlesLoginsTrait;
use Orchestra\Testbench\TestCase;
use Illuminate\Http\Request;
use PHPUnit\Framework\Attributes\DataProvider;
use PHPUnit\Framework\Attributes\Test;
class ThrottleLoginsTest extends TestCase
{
#[Test]
#[DataProvider('emailProvider')]
public function it_can_generate_throttle_key(string $email, string $expectedEmail): void
{
$throttle = $this->createMock(ThrottlesLogins::class);
$throttle->method('username')->willReturn('email');
$reflection = new \ReflectionClass($throttle);
$method = $reflection->getMethod('throttleKey');
$method->setAccessible(true);
$request = $this->mock(Request::class);
$request->expects('input')->with('email')->andReturn($email);
$request->expects('ip')->andReturn('192.168.0.1');
$this->assertSame($expectedEmail . '|192.168.0.1', $method->invoke($throttle, $request));
}
public static function emailProvider(): array
{
return [
'lowercase special characters' => ['ⓣⓔⓢⓣ@ⓛⓐⓡⓐⓥⓔⓛ.ⓒⓞⓜ', 'test@laravel.com'],
'uppercase special characters' => ['ⓉⒺⓈⓉ@ⓁⒶⓇⒶⓋⒺⓁ.ⒸⓄⓂ', 'test@laravel.com'],
'special character numbers' => ['test⑩⓸③@laravel.com', 'test1043@laravel.com'],
'default email' => ['test@laravel.com', 'test@laravel.com'],
];
}
}
class ThrottlesLogins
{
use ThrottlesLoginsTrait;
public function username()
{
return 'email';
}
}
Checks the status of a payment.
**Response: SUCCESS (200 OK)**
{
"message": {
"success": [
"Success"
]
},
"data": {
"token": "2zMRmT3KeYT2BWMAyGhqEfuw4tOYOfGXKeyKqehZ8mF1E35hMwE69gPpyo3e",
"trx_id": "CP44657864",
"payer": {
"username": "testuser",
"email": "user@appdevs.net"
}
"status": "Test",
},
"type": "success"
}