Symfony2 functional testing InvalidArgumentException: The current node list is empty

VitalyP picture VitalyP · Feb 27, 2012 · Viewed 22.8k times · Source

I get "InvalidArgumentException: The current node list is empty." running functional tests through PHPUnit. Here is test i wrote:

public function testAdd()
{
    $client = static::createClientWithAuthentication('main');

    $crawler = $client->request('GET', 'en/manage');

    $send_button = $crawler->selectButton('submit');

    $form = $send_button->form(array(
        'PrCompany[email]' => '[email protected]',
        'PrCompany[first_name]' => 'Anton',
        'PrCompany[last_name]' => 'Tverdiuh',
        'PrCompany[timezone]' => 'Europe/Amsterdam'
    ));

    $form['PrCompany[companies][1]']->tick();

    $client->submit($form);


    $this->assertTrue($crawler->filter('html:contains("User is invited")')->count() > 0);

}

Answer

greg0ire picture greg0ire · Feb 27, 2012

You can debug the problem by using var_dump($client->getResponse()->getContent());

Additionally, I think you should write this:

$crawler = $client->submit($form);

Otherwise you'll be testing the response of the first url, before form submission.