packages/sql-faker/tests/Unit/Generation/Coverage/CoverageExceptionTest.php

1<?php
2
3declare(strict_types=1);
4
5namespace Tests\Unit\SqlFaker\Generation\Coverage;
6
7use PHPUnit\Framework\Attributes\CoversClass;
8use PHPUnit\Framework\TestCase;
9use RuntimeException;
10use SqlFaker\Generation\Coverage\CoverageException;
11
12#[CoversClass(CoverageException::class)]
13final class CoverageExceptionTest extends TestCase
14{
15    public function testGetPreviousRetainsTheMeasurementFailureCause(): void
16    {
17        $cause = new RuntimeException('disk full');
18        $failure = new CoverageException('checkpoint failed', 0, $cause);
19        self::assertSame($cause, $failure->getPrevious());
20        self::assertSame('checkpoint failed', $failure->getMessage());
21    }
22}
23