url assertContains (): лучшие практики тестирования - PullRequest
1 голос
/ 15 октября 2019

Есть тест на электронную почту, которая работает. Однако до того, как я добавил строку URL, я получал эту ошибку: Не удалось утверждать, что 'TESTCODE1234' содержит "http://bidbird.test/invitations/TESTCODE1234".

Как бы вы улучшили сравнение URL для элегантности?



    /** @test**/
    public function email_contains_a_link_to_accept_the_invitation()
    {
            // test stuff...
            $this->assertContains(url('/invitations/TESTCODE1234'), "http://bidbird.test/invitations/{$mail->invitation->invitation_code}");

            return true;
        });
    }

1 Ответ

0 голосов
/ 15 октября 2019

Это должно работать для вас

$url = 'http://bidbird.test/invitations/{$mail->invitation->invitation_code}';

$this->assertContains('TESTCODE1234', $url);

В качестве альтернативы вы можете использовать проверку регулярных выражений для данной строки

$this->assertRegexp('/TESTCODE1234/', $url);

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...