Server IP : / Your IP : 10.244.4.16 [ Web Server : nginx/1.25.3 System : Linux escuela-portal-app-54f56585bc-kst6g 5.15.0-1084-azure #93-Ubuntu SMP Sat Mar 15 14:12:29 UTC 2025 x86_64 User : root ( 0) PHP Version : 8.2.13 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals, Domains : 0 Domains MySQL : OFF | cURL : ON | WGET : OFF | Perl : ON | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /proc/449/root/var/www/app/vendor/inertiajs/inertia-laravel/src/Testing/ |
Upload File : |
<?php namespace Inertia\Testing; use InvalidArgumentException; use Illuminate\Testing\TestResponse; use PHPUnit\Framework\Assert as PHPUnit; use PHPUnit\Framework\AssertionFailedError; use Illuminate\Testing\Fluent\AssertableJson; class AssertableInertia extends AssertableJson { /** @var string */ private $component; /** @var string */ private $url; /** @var string|null */ private $version; public static function fromTestResponse(TestResponse $response): self { try { $response->assertViewHas('page'); $page = json_decode(json_encode($response->viewData('page')), true); PHPUnit::assertIsArray($page); PHPUnit::assertArrayHasKey('component', $page); PHPUnit::assertArrayHasKey('props', $page); PHPUnit::assertArrayHasKey('url', $page); PHPUnit::assertArrayHasKey('version', $page); } catch (AssertionFailedError $e) { PHPUnit::fail('Not a valid Inertia response.'); } $instance = static::fromArray($page['props']); $instance->component = $page['component']; $instance->url = $page['url']; $instance->version = $page['version']; return $instance; } public function component(string $value = null, $shouldExist = null): self { PHPUnit::assertSame($value, $this->component, 'Unexpected Inertia page component.'); if ($shouldExist || (is_null($shouldExist) && config('inertia.testing.ensure_pages_exist', true))) { try { app('inertia.testing.view-finder')->find($value); } catch (InvalidArgumentException $exception) { PHPUnit::fail(sprintf('Inertia page component file [%s] does not exist.', $value)); } } return $this; } public function url(string $value): self { PHPUnit::assertSame($value, $this->url, 'Unexpected Inertia page url.'); return $this; } public function version(string $value): self { PHPUnit::assertSame($value, $this->version, 'Unexpected Inertia asset version.'); return $this; } public function toArray() { return [ 'component' => $this->component, 'props' => $this->prop(), 'url' => $this->url, 'version' => $this->version, ]; } }