28 lines
1.5 KiB
PHP
28 lines
1.5 KiB
PHP
|
|
<?php
|
||
|
|
|
||
|
|
declare(strict_types=1);
|
||
|
|
|
||
|
|
/**
|
||
|
|
* Страница разборов «Как это работает» — единственное, что бот присылает ГОСТЮ.
|
||
|
|
* На боевом лендинг отдаётся только по адресу «/», все остальные пути уходят в портал,
|
||
|
|
* поэтому страницу отдаёт сам портал по красивому адресу /kak-eto-rabotaet (nginx не трогаем).
|
||
|
|
*/
|
||
|
|
it('страница разборов открывается гостю по адресу /kak-eto-rabotaet', function () {
|
||
|
|
$page = public_path('kak-eto-rabotaet.html');
|
||
|
|
|
||
|
|
expect(file_exists($page))->toBeTrue('Страница разборов должна лежать в public/kak-eto-rabotaet.html');
|
||
|
|
|
||
|
|
$response = $this->get('/kak-eto-rabotaet');
|
||
|
|
|
||
|
|
$response->assertOk();
|
||
|
|
expect($response->headers->get('content-type'))->toContain('text/html');
|
||
|
|
// Страница отдаётся файлом (BinaryFileResponse), тело в тесте пустое — смотрим сам файл.
|
||
|
|
expect(file_get_contents($page))->toContain('Как это работает');
|
||
|
|
});
|
||
|
|
|
||
|
|
it('страница разборов не требует входа в кабинет', function () {
|
||
|
|
// Гость с лендинга не аутентифицирован — если маршрут случайно попадёт под auth,
|
||
|
|
// бот будет слать людей на страницу входа.
|
||
|
|
$this->get('/kak-eto-rabotaet')->assertOk();
|
||
|
|
});
|