Laravel Auth

PHP MIT

Laravel Auth by GhostCompiler adds advanced authentication for Laravel with TOTP 2FA, passkeys via WebAuthn, OTP channels (email, SMS, WhatsApp), trusted devices, and tenant-aware social login.

Stars
2
Forks
0
Downloads
N/A
Open Issues
0
Files main

Repository Files

Loading file structure...
tests/Unit/TwoFactorExceptionTest.php
<?php

declare(strict_types=1);

namespace GhostCompiler\LaravelAuth\Tests\Unit;

use GhostCompiler\LaravelAuth\Exceptions\TwoFactorRequiredException;
use GhostCompiler\LaravelAuth\Tests\TestCase;
use RuntimeException;

class TwoFactorExceptionTest extends TestCase
{
    public function test_exception_has_default_message(): void
    {
        $exception = new TwoFactorRequiredException;
        self::assertSame('Two-factor verification is required.', $exception->getMessage());
    }

    public function test_exception_accepts_custom_message(): void
    {
        $exception = new TwoFactorRequiredException('Custom 2FA message');
        self::assertSame('Custom 2FA message', $exception->getMessage());
    }

    public function test_exception_extends_runtime_exception(): void
    {
        $exception = new TwoFactorRequiredException;
        self::assertInstanceOf(RuntimeException::class, $exception);
    }

    public function test_exception_can_be_caught_as_runtime_exception(): void
    {
        $caught = null;

        try {
            throw new TwoFactorRequiredException;
        } catch (RuntimeException $e) {
            $caught = $e;
        }

        self::assertNotNull($caught);
        self::assertInstanceOf(TwoFactorRequiredException::class, $caught);
    }
}