.. index:: single: Tests; Assertions
When doing functional tests, sometimes you need to make complex assertions in
order to check whether the Request
, the Response
or the Crawler
contain the expected information to make your test succeed.
Here is an example with plain PHPUnit:
$this->assertGreaterThan( 0, $crawler->filter('html:contains("Hello World")')->count() );
Now here is the example with the assertions specific to Symfony:
$this->assertSelectorTextContains('html', 'Hello World');
Note
These assertions only work if a request has been made with the Client
in a test case extending the WebTestCase
class.
assertResponseIsSuccessful()
assertResponseStatusCodeSame()
assertResponseRedirects()
assertResponseHasHeader()
assertResponseNotHasHeader()
assertResponseHeaderSame()
assertResponseHeaderNotSame()
assertResponseHasCookie()
assertResponseNotHasCookie()
assertResponseCookieValueSame()
assertRequestAttributeValueSame()
assertRouteSame()
assertBrowserHasCookie()
assertBrowserNotHasCookie()
assertBrowserCookieValueSame()
Note
You cannot use the :doc:`Crawler </components/dom_crawler>` assertions, when using symfony/panther for end-to-end testing.
assertSelectorExists()
assertSelectorNotExists()
assertSelectorTextContains()
assertSelectorTextSame()
assertSelectorTextNotContains()
assertPageTitleSame()
assertPageTitleContains()
assertInputValueSame()
assertInputValueNotSame()
assertEmailCount()
assertQueuedEmailCount()
assertEmailIsQueued()
assertEmailIsNotQueued()
assertEmailAttachementCount()
assertEmailTextBodyContains()
assertEmailTextBodyNotContains()
assertEmailHtmlBodyContains()
assertEmailHtmlBodyNotContains()
assertEmailHasHeader()
assertEmailNotHasHeader()
assertEmailHeaderSame()
assertEmailHeaderNotSame()
assertEmailAddressContains()