|
@@ -28,6 +28,8 @@ use Symfony\Component\BrowserKit\Client;
|
|
|
* you need to also implement the getScript() method.
|
|
|
*
|
|
|
* @author Fabien Potencier <fabien@symfony.com>
|
|
|
+ *
|
|
|
+ * @api
|
|
|
*/
|
|
|
abstract class Client
|
|
|
{
|
|
@@ -47,6 +49,8 @@ abstract class Client
|
|
|
* @param array $server The server parameters (equivalent of $_SERVER)
|
|
|
* @param History $history A History instance to store the browser history
|
|
|
* @param CookieJar $cookieJar A CookieJar instance to store the cookies
|
|
|
+ *
|
|
|
+ * @api
|
|
|
*/
|
|
|
public function __construct(array $server = array(), History $history = null, CookieJar $cookieJar = null)
|
|
|
{
|
|
@@ -61,6 +65,8 @@ abstract class Client
|
|
|
* Sets whether to automatically follow redirects or not.
|
|
|
*
|
|
|
* @param Boolean $followRedirect Whether to follow redirects
|
|
|
+ *
|
|
|
+ * @api
|
|
|
*/
|
|
|
public function followRedirects($followRedirect = true)
|
|
|
{
|
|
@@ -73,6 +79,8 @@ abstract class Client
|
|
|
* @param Boolean $insulated Whether to insulate the requests or not
|
|
|
*
|
|
|
* @throws \RuntimeException When Symfony Process Component is not installed
|
|
|
+ *
|
|
|
+ * @api
|
|
|
*/
|
|
|
public function insulate($insulated = true)
|
|
|
{
|
|
@@ -89,6 +97,8 @@ abstract class Client
|
|
|
* Sets server parameters.
|
|
|
*
|
|
|
* @param array $server An array of server parameters
|
|
|
+ *
|
|
|
+ * @api
|
|
|
*/
|
|
|
public function setServerParameters(array $server)
|
|
|
{
|
|
@@ -102,6 +112,8 @@ abstract class Client
|
|
|
* Returns the History instance.
|
|
|
*
|
|
|
* @return History A History instance
|
|
|
+ *
|
|
|
+ * @api
|
|
|
*/
|
|
|
public function getHistory()
|
|
|
{
|
|
@@ -112,6 +124,8 @@ abstract class Client
|
|
|
* Returns the CookieJar instance.
|
|
|
*
|
|
|
* @return CookieJar A CookieJar instance
|
|
|
+ *
|
|
|
+ * @api
|
|
|
*/
|
|
|
public function getCookieJar()
|
|
|
{
|
|
@@ -122,6 +136,8 @@ abstract class Client
|
|
|
* Returns the current Crawler instance.
|
|
|
*
|
|
|
* @return Crawler A Crawler instance
|
|
|
+ *
|
|
|
+ * @api
|
|
|
*/
|
|
|
public function getCrawler()
|
|
|
{
|
|
@@ -132,6 +148,8 @@ abstract class Client
|
|
|
* Returns the current Response instance.
|
|
|
*
|
|
|
* @return Response A Response instance
|
|
|
+ *
|
|
|
+ * @api
|
|
|
*/
|
|
|
public function getResponse()
|
|
|
{
|
|
@@ -142,6 +160,8 @@ abstract class Client
|
|
|
* Returns the current Request instance.
|
|
|
*
|
|
|
* @return Request A Request instance
|
|
|
+ *
|
|
|
+ * @api
|
|
|
*/
|
|
|
public function getRequest()
|
|
|
{
|
|
@@ -152,6 +172,8 @@ abstract class Client
|
|
|
* Clicks on a given link.
|
|
|
*
|
|
|
* @param Link $link A Link instance
|
|
|
+ *
|
|
|
+ * @api
|
|
|
*/
|
|
|
public function click(Link $link)
|
|
|
{
|
|
@@ -163,6 +185,8 @@ abstract class Client
|
|
|
*
|
|
|
* @param Form $form A Form instance
|
|
|
* @param array $values An array of form field values
|
|
|
+ *
|
|
|
+ * @api
|
|
|
*/
|
|
|
public function submit(Form $form, array $values = array())
|
|
|
{
|
|
@@ -183,6 +207,8 @@ abstract class Client
|
|
|
* @param Boolean $changeHistory Whether to update the history or not (only used internally for back(), forward(), and reload())
|
|
|
*
|
|
|
* @return Crawler
|
|
|
+ *
|
|
|
+ * @api
|
|
|
*/
|
|
|
public function request($method, $uri, array $parameters = array(), array $files = array(), array $server = array(), $content = null, $changeHistory = true)
|
|
|
{
|
|
@@ -195,7 +221,7 @@ abstract class Client
|
|
|
$server['HTTP_HOST'] = parse_url($uri, PHP_URL_HOST);
|
|
|
$server['HTTPS'] = 'https' == parse_url($uri, PHP_URL_SCHEME);
|
|
|
|
|
|
- $request = new Request($uri, $method, $parameters, $files, $this->cookieJar->getValues($uri), $server, $content);
|
|
|
+ $request = new Request($uri, $method, $parameters, $files, $this->cookieJar->allValues($uri), $server, $content);
|
|
|
|
|
|
$this->request = $this->filterRequest($request);
|
|
|
|
|
@@ -311,6 +337,8 @@ abstract class Client
|
|
|
* Goes back in the browser history.
|
|
|
*
|
|
|
* @return Crawler
|
|
|
+ *
|
|
|
+ * @api
|
|
|
*/
|
|
|
public function back()
|
|
|
{
|
|
@@ -321,6 +349,8 @@ abstract class Client
|
|
|
* Goes forward in the browser history.
|
|
|
*
|
|
|
* @return Crawler
|
|
|
+ *
|
|
|
+ * @api
|
|
|
*/
|
|
|
public function forward()
|
|
|
{
|
|
@@ -331,6 +361,8 @@ abstract class Client
|
|
|
* Reloads the current browser.
|
|
|
*
|
|
|
* @return Crawler
|
|
|
+ *
|
|
|
+ * @api
|
|
|
*/
|
|
|
public function reload()
|
|
|
{
|
|
@@ -343,6 +375,8 @@ abstract class Client
|
|
|
* @return Crawler
|
|
|
*
|
|
|
* @throws \LogicException If request was not a redirect
|
|
|
+ *
|
|
|
+ * @api
|
|
|
*/
|
|
|
public function followRedirect()
|
|
|
{
|
|
@@ -357,6 +391,8 @@ abstract class Client
|
|
|
* Restarts the client.
|
|
|
*
|
|
|
* It flushes all cookies.
|
|
|
+ *
|
|
|
+ * @api
|
|
|
*/
|
|
|
public function restart()
|
|
|
{
|