Update to drupal 8.0.0-rc1. For more information, see https://www.drupal.org/node/2582663
This commit is contained in:
parent
eb34d130a8
commit
f32e58e4b1
8476 changed files with 211648 additions and 170042 deletions
181
vendor/behat/mink-browserkit-driver/tests/Custom/ErrorHandlingTest.php
vendored
Normal file
181
vendor/behat/mink-browserkit-driver/tests/Custom/ErrorHandlingTest.php
vendored
Normal file
|
@ -0,0 +1,181 @@
|
|||
<?php
|
||||
|
||||
namespace Behat\Mink\Tests\Driver\Custom;
|
||||
|
||||
use Behat\Mink\Driver\BrowserKitDriver;
|
||||
use Symfony\Component\BrowserKit\Client;
|
||||
use Symfony\Component\BrowserKit\Response;
|
||||
|
||||
class ErrorHandlingTest extends \PHPUnit_Framework_TestCase
|
||||
{
|
||||
/**
|
||||
* @var TestClient
|
||||
*/
|
||||
private $client;
|
||||
|
||||
protected function setUp()
|
||||
{
|
||||
$this->client = new TestClient();
|
||||
}
|
||||
|
||||
public function testGetClient()
|
||||
{
|
||||
$this->assertSame($this->client, $this->getDriver()->getClient());
|
||||
}
|
||||
|
||||
/**
|
||||
* @expectedException \Behat\Mink\Exception\DriverException
|
||||
* @expectedExceptionMessage Unable to access the response before visiting a page
|
||||
*/
|
||||
public function testGetResponseHeaderWithoutVisit()
|
||||
{
|
||||
$this->getDriver()->getResponseHeaders();
|
||||
}
|
||||
|
||||
/**
|
||||
* @expectedException \Behat\Mink\Exception\DriverException
|
||||
* @expectedExceptionMessage Unable to access the response content before visiting a page
|
||||
*/
|
||||
public function testFindWithoutVisit()
|
||||
{
|
||||
$this->getDriver()->find('//html');
|
||||
}
|
||||
|
||||
/**
|
||||
* @expectedException \Behat\Mink\Exception\DriverException
|
||||
* @expectedExceptionMessage Unable to access the request before visiting a page
|
||||
*/
|
||||
public function testGetCurrentUrlWithoutVisit()
|
||||
{
|
||||
$this->getDriver()->getCurrentUrl();
|
||||
}
|
||||
|
||||
/**
|
||||
* @expectedException \Behat\Mink\Exception\DriverException
|
||||
* @expectedExceptionMessage The selected node has an invalid form attribute (foo)
|
||||
*/
|
||||
public function testNotMatchingHtml5FormId()
|
||||
{
|
||||
$html = <<<'HTML'
|
||||
<html>
|
||||
<body>
|
||||
<form id="test">
|
||||
<input name="test" value="foo" form="foo">
|
||||
<input type="submit">
|
||||
</form>
|
||||
</body>
|
||||
</html>
|
||||
HTML;
|
||||
|
||||
$this->client->setNextResponse(new Response($html));
|
||||
|
||||
$driver = $this->getDriver();
|
||||
$driver->visit('/index.php');
|
||||
$driver->setValue('//input[./@name="test"]', 'bar');
|
||||
}
|
||||
|
||||
/**
|
||||
* @expectedException \Behat\Mink\Exception\DriverException
|
||||
* @expectedExceptionMessage The selected node has an invalid form attribute (foo)
|
||||
*/
|
||||
public function testInvalidHtml5FormId()
|
||||
{
|
||||
$html = <<<'HTML'
|
||||
<html>
|
||||
<body>
|
||||
<form id="test">
|
||||
<input name="test" value="foo" form="foo">
|
||||
<input type="submit">
|
||||
</form>
|
||||
<div id="foo"></div>
|
||||
</body>
|
||||
</html>
|
||||
HTML;
|
||||
|
||||
$this->client->setNextResponse(new Response($html));
|
||||
|
||||
$driver = $this->getDriver();
|
||||
$driver->visit('/index.php');
|
||||
$driver->setValue('//input[./@name="test"]', 'bar');
|
||||
}
|
||||
|
||||
/**
|
||||
* @expectedException \Behat\Mink\Exception\DriverException
|
||||
* @expectedExceptionMessage The selected node does not have a form ancestor.
|
||||
*/
|
||||
public function testManipulateInputWithoutForm()
|
||||
{
|
||||
$html = <<<'HTML'
|
||||
<html>
|
||||
<body>
|
||||
<form id="test">
|
||||
<input type="submit">
|
||||
</form>
|
||||
<div id="foo">
|
||||
<input name="test" value="foo">
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
HTML;
|
||||
|
||||
$this->client->setNextResponse(new Response($html));
|
||||
|
||||
$driver = $this->getDriver();
|
||||
$driver->visit('/index.php');
|
||||
$driver->setValue('//input[./@name="test"]', 'bar');
|
||||
}
|
||||
|
||||
/**
|
||||
* @expectedException \Behat\Mink\Exception\DriverException
|
||||
* @expectedExceptionMessage Behat\Mink\Driver\BrowserKitDriver supports clicking on links and submit or reset buttons only. But "div" provided
|
||||
*/
|
||||
public function testClickOnUnsupportedElement()
|
||||
{
|
||||
$html = <<<'HTML'
|
||||
<html>
|
||||
<body>
|
||||
<div></div>
|
||||
</body>
|
||||
</html>
|
||||
HTML;
|
||||
|
||||
$this->client->setNextResponse(new Response($html));
|
||||
|
||||
$driver = $this->getDriver();
|
||||
$driver->visit('/index.php');
|
||||
$driver->click('//div');
|
||||
}
|
||||
|
||||
private function getDriver()
|
||||
{
|
||||
return new BrowserKitDriver($this->client);
|
||||
}
|
||||
}
|
||||
|
||||
class TestClient extends Client
|
||||
{
|
||||
protected $nextResponse = null;
|
||||
protected $nextScript = null;
|
||||
|
||||
public function setNextResponse(Response $response)
|
||||
{
|
||||
$this->nextResponse = $response;
|
||||
}
|
||||
|
||||
public function setNextScript($script)
|
||||
{
|
||||
$this->nextScript = $script;
|
||||
}
|
||||
|
||||
protected function doRequest($request)
|
||||
{
|
||||
if (null === $this->nextResponse) {
|
||||
return new Response();
|
||||
}
|
||||
|
||||
$response = $this->nextResponse;
|
||||
$this->nextResponse = null;
|
||||
|
||||
return $response;
|
||||
}
|
||||
}
|
Reference in a new issue