feature #26381 Transform both switchToXHR() and removeXhr() to xmlHttpRequest() (Simperfit)
This PR was merged into the 4.1-dev branch.
Discussion
----------
Transform both switchToXHR() and removeXhr() to xmlHttpRequest()
| Q | A
| ------------- | ---
| Branch? | 4.1
| Bug fix? | no
| New feature? | yes <!-- don't forget to update src/**/CHANGELOG.md files -->
| BC breaks? | no <!-- see https://symfony.com/bc -->
| Deprecations? | no <!-- don't forget to update UPGRADE-*.md files -->
| Tests pass? | yes <!-- please add some, will be required by reviewers -->
| Fixed tickets | none <!-- #-prefixed issue number(s), if any -->
| License | MIT
| Doc PR | Will do.
See https://github.com/symfony/symfony/pull/24778#issuecomment-369879079 for more information about this.
We are switching from a possible global estate change to just only one request affected.
Commits
-------
4ed08896fa
feature: transform both switchToXHR and removeXhr to a xhrRequest
This commit is contained in:
commit
1fffb8554c
@ -151,14 +151,15 @@ abstract class Client
|
|||||||
return isset($this->server[$key]) ? $this->server[$key] : $default;
|
return isset($this->server[$key]) ? $this->server[$key] : $default;
|
||||||
}
|
}
|
||||||
|
|
||||||
public function switchToXHR()
|
public function xmlHttpRequest(string $method, string $uri, array $parameters = array(), array $files = array(), array $server = array(), string $content = null, bool $changeHistory = true): Crawler
|
||||||
{
|
{
|
||||||
$this->setServerParameter('HTTP_X_REQUESTED_WITH', 'XMLHttpRequest');
|
$this->setServerParameter('HTTP_X_REQUESTED_WITH', 'XMLHttpRequest');
|
||||||
}
|
|
||||||
|
|
||||||
public function removeXHR()
|
try {
|
||||||
{
|
return $this->request($method, $uri, $parameters, $files, $server, $content, $changeHistory);
|
||||||
unset($this->server['HTTP_X_REQUESTED_WITH']);
|
} finally {
|
||||||
|
unset($this->server['HTTP_X_REQUESTED_WITH']);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -104,13 +104,11 @@ class ClientTest extends TestCase
|
|||||||
$this->assertNull($client->getRequest());
|
$this->assertNull($client->getRequest());
|
||||||
}
|
}
|
||||||
|
|
||||||
public function testGetRequestWithXHR()
|
public function testXmlHttpRequest()
|
||||||
{
|
{
|
||||||
$client = new TestClient();
|
$client = new TestClient();
|
||||||
$client->switchToXHR();
|
$client->xmlHttpRequest('GET', 'http://example.com/', array(), array(), array(), null, true);
|
||||||
$client->request('GET', 'http://example.com/', array(), array(), array(), null, true, true);
|
|
||||||
$this->assertEquals($client->getRequest()->getServer()['HTTP_X_REQUESTED_WITH'], 'XMLHttpRequest');
|
$this->assertEquals($client->getRequest()->getServer()['HTTP_X_REQUESTED_WITH'], 'XMLHttpRequest');
|
||||||
$client->removeXHR();
|
|
||||||
$this->assertFalse($client->getServerParameter('HTTP_X_REQUESTED_WITH', false));
|
$this->assertFalse($client->getServerParameter('HTTP_X_REQUESTED_WITH', false));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user