diff --git a/composer.json b/composer.json
index 901e0fb..c792643 100644
--- a/composer.json
+++ b/composer.json
@@ -37,6 +37,14 @@
   },
   "scripts": {
     "pre-autoload-dump": "Drupal\\Core\\Composer\\Composer::preAutoloadDump",
-    "post-autoload-dump": "Drupal\\Core\\Composer\\Composer::ensureHtaccess"
+    "post-autoload-dump": [
+      "Drupal\\Core\\Composer\\Composer::ensureHtaccess"
+    ],
+    "post-package-install": [
+      "Drupal\\Core\\Composer\\Composer::vendorTestCodeCleanup"
+    ],
+    "post-package-update": [
+      "Drupal\\Core\\Composer\\Composer::vendorTestCodeCleanup"
+    ]
   }
 }
diff --git a/core/lib/Drupal/Core/Composer/Composer.php b/core/lib/Drupal/Core/Composer/Composer.php
index 12164c3..89cfcc9 100644
--- a/core/lib/Drupal/Core/Composer/Composer.php
+++ b/core/lib/Drupal/Core/Composer/Composer.php
@@ -9,6 +9,7 @@
 
 use Drupal\Component\PhpStorage\FileStorage;
 use Composer\Script\Event;
+use Composer\Installer\PackageEvent;
 
 /**
  * Provides static functions for composer script events.
@@ -17,6 +18,55 @@
  */
 class Composer {
 
+  protected static $packageToCleanup = [
+    'behat/mink' => ['tests', 'driver-testsuite'],
+    'behat/mink-browserkit-driver' => ['tests'],
+    'behat/mink-goutte-driver' => ['tests'],
+    'doctrine/cache' => ['tests'],
+    'doctrine/collections' => ['tests'],
+    'doctrine/common' => ['tests'],
+    'doctrine/inflector' => ['tests'],
+    'doctrine/instantiator' => ['tests'],
+    'egulias/email-validator' => ['documentation', 'tests'],
+    'fabpot/goutte' => ['Goutte/Tests'],
+    'guzzlehttp/promises' => ['tests'],
+    'guzzlehttp/psr7' => ['tests'],
+    'masterminds/html5' => ['test'],
+    'mikey179/vfsStream' => ['src/test'],
+    'phpdocumentor/reflection-docblock' => ['tests'],
+    'phpunit/php-code-coverage' => ['tests'],
+    'phpunit/php-timer' => ['tests'],
+    'phpunit/php-token-stream' => ['tests'],
+    'phpunit/phpunit' => ['tests'],
+    'phpunit/php-mock-objects' => ['tests'],
+    'sebastian/comparator' => ['tests'],
+    'sebastian/diff' => ['tests'],
+    'sebastian/environment' => ['tests'],
+    'sebastian/exporter' => ['tests'],
+    'sebastian/global-state' => ['tests'],
+    'sebastian/recursion-context' => ['tests'],
+    'stack/builder' => ['tests'],
+    'symfony/browser-kit' => ['Tests'],
+    'symfony/class-loader' => ['Tests'],
+    'symfony/console' => ['Tests'],
+    'symfony/css-selector' => ['Tests'],
+    'symfony/debug' => ['Tests'],
+    'symfony/dependency-injection' => ['Tests'],
+    'symfony/dom-crawler' => ['Tests'],
+    'symfony/event-dispatcher' => ['Tests'],
+    'symfony/http-foundation' => ['Tests'],
+    'symfony/http-kernel' => ['Tests'],
+    'symfony/process' => ['Tests'],
+    'symfony/psr-http-message-bridge' => ['Tests'],
+    'symfony/routing' => ['Tests'],
+    'symfony/serializer' => ['Tests'],
+    'symfony/translation' => ['Tests'],
+    'symfony/validator' => ['Tests'],
+    'symfony/yaml' => ['Tests'],
+    'symfony-cmf/routing' => ['Test', 'Tests'],
+    'twig/twig' => ['doc', 'ext', 'test'],
+  ];
+
   /**
    * Add vendor classes to composers static classmap.
    */
@@ -70,4 +120,52 @@ public static function ensureHtaccess(Event $event) {
     }
   }
 
+  /**
+   * Remove possibly problematic test files from vendored projects.
+   *
+   * @param \Composer\Script\Event $event
+   */
+  public static function vendorTestCodeCleanup(PackageEvent $event) {
+    $vendor_dir = $event->getComposer()->getConfig()->get('vendor-dir');
+    $package = $event->getOperation()->getPackage();
+    $package_name = $package->getName();
+    if (isset(static::$packageToCleanup[$package_name])) {
+      foreach (static::$packageToCleanup[$package_name] as $path) {
+        $dir_to_remove = $vendor_dir . '/' . $package_name . '/' . $path;
+        if (is_dir($dir_to_remove)) {
+          static::deleteRecursive($dir_to_remove);
+        }
+        else {
+          throw new \RuntimeException(sprintf("The directory '%s' in package '%s' does not exist.", $path, $package->getPrettyName()));
+        }
+      }
+    }
+  }
+
+  /**
+   * Helper method to remove directories and the files they contain.
+   *
+   * @param string $path
+   *   The directory or file to remove. It must exist.
+   *
+   * @return bool
+   *   TRUE on success or FALSE on failure.
+   */
+  protected static function deleteRecursive($path) {
+    if (is_file($path)) {
+      return unlink($path);
+    }
+    $dir = dir($path);
+    while (($entry = $dir->read()) !== FALSE) {
+      if ($entry == '.' || $entry == '..') {
+        continue;
+      }
+      $entry_path = $path . '/' . $entry;
+      static::deleteRecursive($entry_path);
+    }
+    $dir->close();
+
+    return rmdir($path);
+  }
 }
+
diff --git a/vendor/behat/mink-browserkit-driver/README.md b/vendor/behat/mink-browserkit-driver/README.md
old mode 100755
new mode 100644
diff --git a/vendor/behat/mink-browserkit-driver/tests/BrowserKitConfig.php b/vendor/behat/mink-browserkit-driver/tests/BrowserKitConfig.php
deleted file mode 100644
index b80a2fb..0000000
--- a/vendor/behat/mink-browserkit-driver/tests/BrowserKitConfig.php
+++ /dev/null
@@ -1,37 +0,0 @@
-<?php
-
-namespace Behat\Mink\Tests\Driver;
-
-use Behat\Mink\Driver\BrowserKitDriver;
-use Symfony\Component\HttpKernel\Client;
-
-class BrowserKitConfig extends AbstractConfig
-{
-    public static function getInstance()
-    {
-        return new self();
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    public function createDriver()
-    {
-        $client = new Client(require(__DIR__.'/app.php'));
-
-        return new BrowserKitDriver($client);
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    public function getWebFixturesUrl()
-    {
-        return 'http://localhost';
-    }
-
-    protected function supportsJs()
-    {
-        return false;
-    }
-}
diff --git a/vendor/behat/mink-browserkit-driver/tests/Custom/BaseUrlTest.php b/vendor/behat/mink-browserkit-driver/tests/Custom/BaseUrlTest.php
deleted file mode 100644
index 779426e..0000000
--- a/vendor/behat/mink-browserkit-driver/tests/Custom/BaseUrlTest.php
+++ /dev/null
@@ -1,24 +0,0 @@
-<?php
-
-namespace Behat\Mink\Tests\Driver\Custom;
-
-use Behat\Mink\Driver\BrowserKitDriver;
-use Behat\Mink\Session;
-use Symfony\Component\HttpKernel\Client;
-
-/**
- * @group functional
- */
-class BaseUrlTest extends \PHPUnit_Framework_TestCase
-{
-    public function testBaseUrl()
-    {
-        $client = new Client(require(__DIR__.'/../app.php'));
-        $driver = new BrowserKitDriver($client, 'http://localhost/foo/');
-        $session = new Session($driver);
-
-        $session->visit('http://localhost/foo/index.html');
-        $this->assertEquals(200, $session->getStatusCode());
-        $this->assertEquals('http://localhost/foo/index.html', $session->getCurrentUrl());
-    }
-}
diff --git a/vendor/behat/mink-browserkit-driver/tests/Custom/ErrorHandlingTest.php b/vendor/behat/mink-browserkit-driver/tests/Custom/ErrorHandlingTest.php
deleted file mode 100644
index 9e2643c..0000000
--- a/vendor/behat/mink-browserkit-driver/tests/Custom/ErrorHandlingTest.php
+++ /dev/null
@@ -1,181 +0,0 @@
-<?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;
-    }
-}
diff --git a/vendor/behat/mink-browserkit-driver/tests/app.php b/vendor/behat/mink-browserkit-driver/tests/app.php
deleted file mode 100644
index d3f1236..0000000
--- a/vendor/behat/mink-browserkit-driver/tests/app.php
+++ /dev/null
@@ -1,37 +0,0 @@
-<?php
-
-namespace app;
-
-$app = new \Silex\Application();
-$app->register(new \Silex\Provider\SessionServiceProvider());
-
-$def = realpath(__DIR__.'/../vendor/behat/mink/driver-testsuite/web-fixtures');
-$ovr = realpath(__DIR__.'/web-fixtures');
-$cbk = function ($file) use ($app, $def, $ovr) {
-    $file = str_replace('.file', '.php', $file);
-    $path = file_exists($ovr.'/'.$file) ? $ovr.'/'.$file : $def.'/'.$file;
-    $resp = null;
-
-    ob_start();
-    include($path);
-    $content = ob_get_clean();
-
-    if ($resp) {
-        if ('' === $resp->getContent()) {
-            $resp->setContent($content);
-        }
-
-        return $resp;
-    }
-
-    return $content;
-};
-
-$app->get('/{file}', $cbk)->assert('file', '.*');
-$app->post('/{file}', $cbk)->assert('file', '.*');
-
-$app['debug'] = true;
-$app['exception_handler']->disable();
-$app['session.test'] = true;
-
-return $app;
diff --git a/vendor/behat/mink-browserkit-driver/tests/web-fixtures/404.php b/vendor/behat/mink-browserkit-driver/tests/web-fixtures/404.php
deleted file mode 100644
index 2ae1ff9..0000000
--- a/vendor/behat/mink-browserkit-driver/tests/web-fixtures/404.php
+++ /dev/null
@@ -1,3 +0,0 @@
-<?php
-
-$resp = new Symfony\Component\HttpFoundation\Response('Sorry, page not found', 404);
diff --git a/vendor/behat/mink-browserkit-driver/tests/web-fixtures/500.php b/vendor/behat/mink-browserkit-driver/tests/web-fixtures/500.php
deleted file mode 100644
index 8f1ebb3..0000000
--- a/vendor/behat/mink-browserkit-driver/tests/web-fixtures/500.php
+++ /dev/null
@@ -1,3 +0,0 @@
-<?php
-
-$resp = new Symfony\Component\HttpFoundation\Response('Sorry, a server error happened', 500);
diff --git a/vendor/behat/mink-browserkit-driver/tests/web-fixtures/advanced_form_post.php b/vendor/behat/mink-browserkit-driver/tests/web-fixtures/advanced_form_post.php
deleted file mode 100644
index 71d1c8d..0000000
--- a/vendor/behat/mink-browserkit-driver/tests/web-fixtures/advanced_form_post.php
+++ /dev/null
@@ -1,32 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ru">
-<head>
-    <title>Advanced form save</title>
-    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
-</head>
-<body>
-<?php
-error_reporting(0);
-
-$request = $app['request'];
-$POST = $request->request->all();
-$FILES = $request->files->all();
-
-if (isset($POST['select_multiple_numbers']) && false !== strpos($POST['select_multiple_numbers'][0], ',')) {
-    $POST['select_multiple_numbers'] = explode(',', $POST['select_multiple_numbers'][0]);
-}
-
-// checkbox can have any value and will be successful in case "on"
-// http://www.w3.org/TR/html401/interact/forms.html#checkbox
-$POST['agreement'] = isset($POST['agreement']) ? 'on' : 'off';
-ksort($POST);
-echo str_replace('>', '', var_export($POST, true)) . "\n";
-if (isset($FILES['about']) && file_exists($FILES['about']->getPathname())) {
-    echo $FILES['about']->getClientOriginalName() . "\n";
-    echo file_get_contents($FILES['about']->getPathname());
-} else {
-    echo "no file";
-}
-?>
-</body>
-</html>
diff --git a/vendor/behat/mink-browserkit-driver/tests/web-fixtures/basic_auth.php b/vendor/behat/mink-browserkit-driver/tests/web-fixtures/basic_auth.php
deleted file mode 100644
index 48132b6..0000000
--- a/vendor/behat/mink-browserkit-driver/tests/web-fixtures/basic_auth.php
+++ /dev/null
@@ -1,15 +0,0 @@
-<?php
-$SERVER = $app['request']->server->all();
-
-$username = isset($SERVER['PHP_AUTH_USER']) ? $SERVER['PHP_AUTH_USER'] : false;
-$password = isset($SERVER['PHP_AUTH_PW']) ? $SERVER['PHP_AUTH_PW'] : false;
-
-if ($username == 'mink-user' && $password == 'mink-password') {
-    echo 'is authenticated';
-} else {
-    $resp = new \Symfony\Component\HttpFoundation\Response();
-    $resp->setStatusCode(401);
-    $resp->headers->set('WWW-Authenticate', 'Basic realm="Mink Testing Area"');
-
-    echo 'is not authenticated';
-}
diff --git a/vendor/behat/mink-browserkit-driver/tests/web-fixtures/basic_form_post.php b/vendor/behat/mink-browserkit-driver/tests/web-fixtures/basic_form_post.php
deleted file mode 100644
index 1efe45e..0000000
--- a/vendor/behat/mink-browserkit-driver/tests/web-fixtures/basic_form_post.php
+++ /dev/null
@@ -1,14 +0,0 @@
-<?php  ?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ru">
-<head>
-    <title>Basic Form Saving</title>
-    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/>
-</head>
-<body>
-    <h1>Anket for <?php echo $app['request']->request->get('first_name') ?></h1>
-
-    <span id="first">Firstname: <?php echo $app['request']->request->get('first_name') ?></span>
-    <span id="last">Lastname: <?php echo $app['request']->request->get('last_name') ?></span>
-</body>
-</html>
diff --git a/vendor/behat/mink-browserkit-driver/tests/web-fixtures/basic_get_form.php b/vendor/behat/mink-browserkit-driver/tests/web-fixtures/basic_get_form.php
deleted file mode 100644
index fd2817d..0000000
--- a/vendor/behat/mink-browserkit-driver/tests/web-fixtures/basic_get_form.php
+++ /dev/null
@@ -1,23 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ru">
-<head>
-    <title>Basic Get Form</title>
-    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/>
-</head>
-<body>
-    <h1>Basic Get Form Page</h1>
-
-    <div id="serach">
-        <?php
-        $GET = $app['request']->query->all();
-        echo isset($GET['q']) && $GET['q'] ? $GET['q'] : 'No search query'
-        ?>
-    </div>
-
-    <form>
-        <input name="q" value="" type="text" />
-
-        <input type="submit" value="Find" />
-    </form>
-</body>
-</html>
diff --git a/vendor/behat/mink-browserkit-driver/tests/web-fixtures/cookie_page1.php b/vendor/behat/mink-browserkit-driver/tests/web-fixtures/cookie_page1.php
deleted file mode 100644
index a928b2f..0000000
--- a/vendor/behat/mink-browserkit-driver/tests/web-fixtures/cookie_page1.php
+++ /dev/null
@@ -1,17 +0,0 @@
-<?php
-    $resp = new Symfony\Component\HttpFoundation\Response();
-    $cook = new Symfony\Component\HttpFoundation\Cookie('srvr_cookie', 'srv_var_is_set', 0, '/');
-    $resp->headers->setCookie($cook);
-?>
-<!doctype html public "-//w3c//dtd xhtml 1.1//en" "http://www.w3.org/tr/xhtml11/dtd/xhtml11.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ru">
-<head>
-    <title>basic form</title>
-    <meta http-equiv="content-type" content="text/html;charset=utf-8"/>
-    <script>
-    </script>
-</head>
-<body>
-    basic page with cookie set from server side
-</body>
-</html>
diff --git a/vendor/behat/mink-browserkit-driver/tests/web-fixtures/cookie_page2.php b/vendor/behat/mink-browserkit-driver/tests/web-fixtures/cookie_page2.php
deleted file mode 100644
index ab54243..0000000
--- a/vendor/behat/mink-browserkit-driver/tests/web-fixtures/cookie_page2.php
+++ /dev/null
@@ -1,14 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ru">
-<head>
-    <title>Basic Form</title>
-    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/>
-    <script>
-    </script>
-</head>
-<body>
-    Previous cookie: <?php
-        echo $app['request']->cookies->has('srvr_cookie') ? $app['request']->cookies->get('srvr_cookie') : 'NO';
-    ?>
-</body>
-</html>
diff --git a/vendor/behat/mink-browserkit-driver/tests/web-fixtures/cookie_page3.php b/vendor/behat/mink-browserkit-driver/tests/web-fixtures/cookie_page3.php
deleted file mode 100644
index f24d587..0000000
--- a/vendor/behat/mink-browserkit-driver/tests/web-fixtures/cookie_page3.php
+++ /dev/null
@@ -1,20 +0,0 @@
-<?php
-
-$hasCookie = $app['request']->cookies->has('foo');
-$resp = new Symfony\Component\HttpFoundation\Response();
-$cook = new Symfony\Component\HttpFoundation\Cookie('foo', 'bar');
-$resp->headers->setCookie($cook);
-
-?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ru">
-<head>
-    <title>HttpOnly Cookie Test</title>
-    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/>
-    <script>
-    </script>
-</head>
-<body>
-    <div id="cookie-status">Has Cookie: <?php echo json_encode($hasCookie) ?></div>
-</body>
-</html>
diff --git a/vendor/behat/mink-browserkit-driver/tests/web-fixtures/headers.php b/vendor/behat/mink-browserkit-driver/tests/web-fixtures/headers.php
deleted file mode 100644
index b829425..0000000
--- a/vendor/behat/mink-browserkit-driver/tests/web-fixtures/headers.php
+++ /dev/null
@@ -1,10 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ru">
-<head>
-    <title>Headers page</title>
-    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/>
-</head>
-<body>
-    <?php print_r($app['request']->server->all()); ?>
-</body>
-</html>
diff --git a/vendor/behat/mink-browserkit-driver/tests/web-fixtures/issue130.php b/vendor/behat/mink-browserkit-driver/tests/web-fixtures/issue130.php
deleted file mode 100644
index 2079673..0000000
--- a/vendor/behat/mink-browserkit-driver/tests/web-fixtures/issue130.php
+++ /dev/null
@@ -1,14 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
-    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-
-<html>
-<body>
-    <?php
-    if ('1' === $app['request']->query->get('p')) {
-        echo '<a href="/issue130.php?p=2">Go to 2</a>';
-    } else {
-        echo '<strong>'.$app['request']->headers->get('referer').'</strong>';
-    }
-    ?>
-</body>
diff --git a/vendor/behat/mink-browserkit-driver/tests/web-fixtures/issue140.php b/vendor/behat/mink-browserkit-driver/tests/web-fixtures/issue140.php
deleted file mode 100644
index 42d8437..0000000
--- a/vendor/behat/mink-browserkit-driver/tests/web-fixtures/issue140.php
+++ /dev/null
@@ -1,20 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
-    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-
-<html>
-<body>
-<?php if ($app['request']->isMethod('POST')) {
-    $resp = new Symfony\Component\HttpFoundation\Response();
-    $cook = new Symfony\Component\HttpFoundation\Cookie('tc', $app['request']->request->get('cookie_value'));
-    $resp->headers->setCookie($cook);
-} elseif ($app['request']->query->has('show_value')) {
-    echo $app['request']->cookies->get('tc');
-    return;
-}
-?>
-    <form method="post">
-        <input name="cookie_value">
-        <input type="submit" value="Set cookie">
-    </form>
-</body>
diff --git a/vendor/behat/mink-browserkit-driver/tests/web-fixtures/print_cookies.php b/vendor/behat/mink-browserkit-driver/tests/web-fixtures/print_cookies.php
deleted file mode 100644
index ac6f078..0000000
--- a/vendor/behat/mink-browserkit-driver/tests/web-fixtures/print_cookies.php
+++ /dev/null
@@ -1,25 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ru">
-<head>
-    <title>Cookies page</title>
-    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/>
-</head>
-<body>
-    <?php
-    $cookies = $app['request']->cookies->all();
-    unset($cookies['MOCKSESSID']);
-
-    if (isset($cookies['srvr_cookie'])) {
-        $srvrCookie = $cookies['srvr_cookie'];
-        unset($cookies['srvr_cookie']);
-        $cookies['_SESS'] = '';
-        $cookies['srvr_cookie'] = $srvrCookie;
-    }
-
-    foreach ($cookies as $name => $val) {
-        $cookies[$name] = (string)$val;
-    }
-    echo str_replace(array('>'), '', var_export($cookies, true));
-    ?>
-</body>
-</html>
diff --git a/vendor/behat/mink-browserkit-driver/tests/web-fixtures/redirector.php b/vendor/behat/mink-browserkit-driver/tests/web-fixtures/redirector.php
deleted file mode 100644
index 39e8a53..0000000
--- a/vendor/behat/mink-browserkit-driver/tests/web-fixtures/redirector.php
+++ /dev/null
@@ -1,3 +0,0 @@
-<?php
-
-$resp = new Symfony\Component\HttpFoundation\RedirectResponse('/redirect_destination.html');
diff --git a/vendor/behat/mink-browserkit-driver/tests/web-fixtures/response_headers.php b/vendor/behat/mink-browserkit-driver/tests/web-fixtures/response_headers.php
deleted file mode 100644
index a2f48f8..0000000
--- a/vendor/behat/mink-browserkit-driver/tests/web-fixtures/response_headers.php
+++ /dev/null
@@ -1,15 +0,0 @@
-<?php
-    $resp = new Symfony\Component\HttpFoundation\Response();
-    $resp->headers->set('X-Mink-Test', 'response-headers');
-?>
-<!DOCTYPE html>
-<html lang="en">
-<head>
-    <title>Response headers</title>
-    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
-</head>
-<body>
-    <h1>Response headers</h1>
-</body>
-</html>
-
diff --git a/vendor/behat/mink-browserkit-driver/tests/web-fixtures/session_test.php b/vendor/behat/mink-browserkit-driver/tests/web-fixtures/session_test.php
deleted file mode 100644
index 58576e3..0000000
--- a/vendor/behat/mink-browserkit-driver/tests/web-fixtures/session_test.php
+++ /dev/null
@@ -1,19 +0,0 @@
-<?php
-$session = $app['request']->getSession();
-
-if ($app['request']->query->has('login')) {
-    $session->migrate();
-}
-?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ru">
-<head>
-    <title>Session Test</title>
-    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/>
-    <script>
-    </script>
-</head>
-<body>
-    <div id="session-id"><?php echo $session->getId() ?></div>
-</body>
-</html>
diff --git a/vendor/behat/mink-browserkit-driver/tests/web-fixtures/sub-folder/cookie_page1.php b/vendor/behat/mink-browserkit-driver/tests/web-fixtures/sub-folder/cookie_page1.php
deleted file mode 100644
index 807c23e..0000000
--- a/vendor/behat/mink-browserkit-driver/tests/web-fixtures/sub-folder/cookie_page1.php
+++ /dev/null
@@ -1,18 +0,0 @@
-<?php
-    $requestUri = $app['request']->server->get('REQUEST_URI');
-    $resp = new Symfony\Component\HttpFoundation\Response();
-    $cook = new Symfony\Component\HttpFoundation\Cookie('srvr_cookie', 'srv_var_is_set_sub_folder', 0, dirname($requestUri));
-    $resp->headers->setCookie($cook);
-?>
-<!doctype html public "-//w3c//dtd xhtml 1.1//en" "http://www.w3.org/tr/xhtml11/dtd/xhtml11.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ru">
-<head>
-    <title>basic form</title>
-    <meta http-equiv="content-type" content="text/html;charset=utf-8"/>
-    <script>
-    </script>
-</head>
-<body>
-    basic page with cookie set from server side
-</body>
-</html>
diff --git a/vendor/behat/mink-browserkit-driver/tests/web-fixtures/sub-folder/cookie_page2.php b/vendor/behat/mink-browserkit-driver/tests/web-fixtures/sub-folder/cookie_page2.php
deleted file mode 100644
index 22a7dab..0000000
--- a/vendor/behat/mink-browserkit-driver/tests/web-fixtures/sub-folder/cookie_page2.php
+++ /dev/null
@@ -1,18 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ru">
-<head>
-    <title>Basic Form</title>
-    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/>
-    <script>
-    </script>
-</head>
-<body>
-    Previous cookie: <?php
-    if ($app['request']->cookies->has('srvr_cookie')) {
-        echo $app['request']->cookies->get('srvr_cookie');
-    } else {
-        echo 'NO';
-    }
-    ?>
-</body>
-</html>
diff --git a/vendor/behat/mink-goutte-driver/tests/Custom/InstantiationTest.php b/vendor/behat/mink-goutte-driver/tests/Custom/InstantiationTest.php
deleted file mode 100644
index db75a18..0000000
--- a/vendor/behat/mink-goutte-driver/tests/Custom/InstantiationTest.php
+++ /dev/null
@@ -1,27 +0,0 @@
-<?php
-
-namespace Behat\Mink\Tests\Driver\Custom;
-
-use Behat\Mink\Driver\GoutteDriver;
-
-class InstantiationTest extends \PHPUnit_Framework_TestCase
-{
-    public function testInstantiateWithClient()
-    {
-        $client = $this->getMockBuilder('Goutte\Client')->disableOriginalConstructor()->getMock();
-        $client->expects($this->once())
-            ->method('followRedirects')
-            ->with(true);
-
-        $driver = new GoutteDriver($client);
-
-        $this->assertSame($client, $driver->getClient());
-    }
-
-    public function testInstantiateWithoutClient()
-    {
-        $driver = new GoutteDriver();
-
-        $this->assertInstanceOf('Behat\Mink\Driver\Goutte\Client', $driver->getClient());
-    }
-}
diff --git a/vendor/behat/mink-goutte-driver/tests/GoutteConfig.php b/vendor/behat/mink-goutte-driver/tests/GoutteConfig.php
deleted file mode 100644
index bbe90f7..0000000
--- a/vendor/behat/mink-goutte-driver/tests/GoutteConfig.php
+++ /dev/null
@@ -1,26 +0,0 @@
-<?php
-
-namespace Behat\Mink\Tests\Driver;
-
-use Behat\Mink\Driver\GoutteDriver;
-
-class GoutteConfig extends AbstractConfig
-{
-    public static function getInstance()
-    {
-        return new self();
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    public function createDriver()
-    {
-        return new GoutteDriver();
-    }
-
-    protected function supportsJs()
-    {
-        return false;
-    }
-}
diff --git a/vendor/behat/mink/driver-testsuite/README.md b/vendor/behat/mink/driver-testsuite/README.md
deleted file mode 100644
index f2af9a8..0000000
--- a/vendor/behat/mink/driver-testsuite/README.md
+++ /dev/null
@@ -1,96 +0,0 @@
-Mink Driver testsuite
-=====================
-
-This is the common testsuite for Mink drivers to ensure consistency among implementations.
-
-Usage
------
-
-The testsuite of a driver should be based as follow:
-
-```json
-{
-    "require": {
-        "behat/mink": "~1.6@dev"
-    },
-
-    "autoload-dev": {
-        "psr-4": {
-            "Acme\\MyDriver\\Tests\\": "tests"
-        }
-    }
-}
-```
-
-```xml
-<!-- phpunit.xml.dist -->
-<?xml version="1.0" encoding="UTF-8"?>
-
-<phpunit colors="true" bootstrap="vendor/behat/mink/driver-testsuite/bootstrap.php">
-    <php>
-        <var name="driver_config_factory" value="Acme\MyDriver\Tests\Config::getInstance" />
-
-        <server name="WEB_FIXTURES_HOST" value="http://test.mink.dev" />
-    </php>
-
-    <testsuites>
-        <testsuite name="Functional tests">
-            <directory>vendor/behat/mink/driver-testsuite/tests</directory>
-        </testsuite>
-        <!-- if needed to add more tests -->
-        <testsuite name="Driver tests">
-            <directory>./tests/</directory>
-        </testsuite>
-    </testsuites>
-
-    <filter>
-        <whitelist>
-            <directory>./src</directory>
-        </whitelist>
-    </filter>
-</phpunit>
-```
-
-Then create the driver config for the testsuite:
-
-```php
-// tests/Config.php
-
-namespace Acme\MyDriver\Tests;
-
-use Behat\Mink\Tests\Driver\AbstractConfig;
-
-class Config extends AbstractConfig
-{
-    /**
-     * Creates an instance of the config.
-     *
-     * This is the callable registered as a php variable in the phpunit.xml config file.
-     * It could be outside the class but this is convenient.
-     */
-    public static function getInstance()
-    {
-        return new self();
-    }
-
-    /**
-     * Creates driver instance.
-     *
-     * @return \Behat\Mink\Driver\DriverInterface
-     */
-    public function createDriver()
-    {
-        return new \Acme\MyDriver\MyDriver();
-    }
-}
-```
-
-Some other methods are available in the AbstractConfig which can be overwritten to adapt the testsuite to
-the needs of the driver (skipping some tests for instance).
-
-Adding Driver-specific Tests
-----------------------------
-
-When adding extra test cases specific to the driver, either use your own namespace or put them in the
-``Behat\Mink\Tests\Driver\Custom`` subnamespace to ensure that you will not create conflicts with test cases
-added in the driver testsuite in the future.
diff --git a/vendor/behat/mink/driver-testsuite/bootstrap.php b/vendor/behat/mink/driver-testsuite/bootstrap.php
deleted file mode 100644
index f69a45b..0000000
--- a/vendor/behat/mink/driver-testsuite/bootstrap.php
+++ /dev/null
@@ -1,28 +0,0 @@
-<?php
-
-$file = __DIR__.'/../../../autoload.php';
-
-if (!file_exists($file)) {
-    echo PHP_EOL.'The Mink driver testsuite expects Mink to be installed as a composer dependency of your project'.PHP_EOL;
-    exit(1);
-}
-
-/** @var \Composer\Autoload\ClassLoader $loader */
-$loader = require $file;
-
-$loader->addPsr4('Behat\Mink\Tests\Driver\\', __DIR__.'/tests');
-
-// Clean the global variables
-unset($file);
-unset($loader);
-
-// Check the definition of the driverLoaderFactory
-
-if (!isset($GLOBALS['driver_config_factory'])) {
-    echo PHP_EOL.'The "driver_config_factory" global variable must be set.'.PHP_EOL;
-    exit(1);
-}
-if (!is_callable($GLOBALS['driver_config_factory'])) {
-    echo PHP_EOL.'The "driver_config_factory" global variable must be a callable.'.PHP_EOL;
-    exit(1);
-}
diff --git a/vendor/behat/mink/driver-testsuite/tests/AbstractConfig.php b/vendor/behat/mink/driver-testsuite/tests/AbstractConfig.php
deleted file mode 100644
index 057e6fd..0000000
--- a/vendor/behat/mink/driver-testsuite/tests/AbstractConfig.php
+++ /dev/null
@@ -1,83 +0,0 @@
-<?php
-
-namespace Behat\Mink\Tests\Driver;
-
-use Behat\Mink\Driver\DriverInterface;
-
-abstract class AbstractConfig
-{
-    /**
-     * Creates driver instance.
-     *
-     * @return DriverInterface
-     */
-    abstract public function createDriver();
-
-    /**
-     * Map remote file path.
-     *
-     * @param string $file File path.
-     *
-     * @return string
-     */
-    public function mapRemoteFilePath($file)
-    {
-        if (!isset($_SERVER['TEST_MACHINE_BASE_PATH']) || !isset($_SERVER['DRIVER_MACHINE_BASE_PATH'])) {
-            return $file;
-        }
-
-        $pattern = '/^'.preg_quote($_SERVER['TEST_MACHINE_BASE_PATH'], '/').'/';
-        $basePath = $_SERVER['DRIVER_MACHINE_BASE_PATH'];
-
-        return preg_replace($pattern, $basePath, $file, 1);
-    }
-
-    /**
-     * Gets the base url to the fixture folder.
-     *
-     * @return string
-     */
-    public function getWebFixturesUrl()
-    {
-        return $_SERVER['WEB_FIXTURES_HOST'];
-    }
-
-    /**
-     * @param string $testCase The name of the TestCase class
-     * @param string $test     The name of the test method
-     *
-     * @return string|null A message explaining why the test should be skipped, or null to run the test.
-     */
-    public function skipMessage($testCase, $test)
-    {
-        if (!$this->supportsCss() && 0 === strpos($testCase, 'Behat\Mink\Tests\Driver\Css\\')) {
-            return 'This driver does not support CSS.';
-        }
-
-        if (!$this->supportsJs() && 0 === strpos($testCase, 'Behat\Mink\Tests\Driver\Js\\')) {
-            return 'This driver does not support JavaScript.';
-        }
-
-        return null;
-    }
-
-    /**
-     * Whether the JS tests should run or no.
-     *
-     * @return bool
-     */
-    protected function supportsJs()
-    {
-        return true;
-    }
-
-    /**
-     * Whether the CSS tests should run or no.
-     *
-     * @return bool
-     */
-    protected function supportsCss()
-    {
-        return false;
-    }
-}
diff --git a/vendor/behat/mink/driver-testsuite/tests/Basic/BasicAuthTest.php b/vendor/behat/mink/driver-testsuite/tests/Basic/BasicAuthTest.php
deleted file mode 100644
index 40d932d..0000000
--- a/vendor/behat/mink/driver-testsuite/tests/Basic/BasicAuthTest.php
+++ /dev/null
@@ -1,64 +0,0 @@
-<?php
-
-namespace Behat\Mink\Tests\Driver\Basic;
-
-use Behat\Mink\Tests\Driver\TestCase;
-
-class BasicAuthTest extends TestCase
-{
-    /**
-     * @dataProvider setBasicAuthDataProvider
-     */
-    public function testSetBasicAuth($user, $pass, $pageText)
-    {
-        $session = $this->getSession();
-
-        $session->setBasicAuth($user, $pass);
-
-        $session->visit($this->pathTo('/basic_auth.php'));
-
-        $this->assertContains($pageText, $session->getPage()->getContent());
-    }
-
-    public function setBasicAuthDataProvider()
-    {
-        return array(
-            array('mink-user', 'mink-password', 'is authenticated'),
-            array('', '', 'is not authenticated'),
-        );
-    }
-
-    public function testResetBasicAuth()
-    {
-        $session = $this->getSession();
-
-        $session->setBasicAuth('mink-user', 'mink-password');
-
-        $session->visit($this->pathTo('/basic_auth.php'));
-
-        $this->assertContains('is authenticated', $session->getPage()->getContent());
-
-        $session->setBasicAuth(false);
-
-        $session->visit($this->pathTo('/headers.php'));
-
-        $this->assertNotContains('PHP_AUTH_USER', $session->getPage()->getContent());
-    }
-
-    public function testResetWithBasicAuth()
-    {
-        $session = $this->getSession();
-
-        $session->setBasicAuth('mink-user', 'mink-password');
-
-        $session->visit($this->pathTo('/basic_auth.php'));
-
-        $this->assertContains('is authenticated', $session->getPage()->getContent());
-
-        $session->reset();
-
-        $session->visit($this->pathTo('/headers.php'));
-
-        $this->assertNotContains('PHP_AUTH_USER', $session->getPage()->getContent());
-    }
-}
diff --git a/vendor/behat/mink/driver-testsuite/tests/Basic/BestPracticesTest.php b/vendor/behat/mink/driver-testsuite/tests/Basic/BestPracticesTest.php
deleted file mode 100644
index d6cda7d..0000000
--- a/vendor/behat/mink/driver-testsuite/tests/Basic/BestPracticesTest.php
+++ /dev/null
@@ -1,84 +0,0 @@
-<?php
-
-namespace Behat\Mink\Tests\Driver\Basic;
-
-use Behat\Mink\Tests\Driver\TestCase;
-
-/**
- * This testcase ensures that the driver implementation follows recommended practices for drivers.
- */
-class BestPracticesTest extends TestCase
-{
-    public function testExtendsCoreDriver()
-    {
-        $driver = $this->createDriver();
-
-        $this->assertInstanceOf('Behat\Mink\Driver\CoreDriver', $driver);
-
-        return $driver;
-    }
-
-    /**
-     * @depends testExtendsCoreDriver
-     */
-    public function testImplementFindXpath()
-    {
-        $driver = $this->createDriver();
-
-        $this->assertNotImplementMethod('find', $driver, 'The driver should overwrite `findElementXpaths` rather than `find` for forward compatibility with Mink 2.');
-        $this->assertImplementMethod('findElementXpaths', $driver, 'The driver must be able to find elements.');
-        $this->assertNotImplementMethod('setSession', $driver, 'The driver should not deal with the Session directly for forward compatibility with Mink 2.');
-    }
-
-    /**
-     * @dataProvider provideRequiredMethods
-     */
-    public function testImplementBasicApi($method)
-    {
-        $driver = $this->createDriver();
-
-        $this->assertImplementMethod($method, $driver, 'The driver is unusable when this method is not implemented.');
-    }
-
-    public function provideRequiredMethods()
-    {
-        return array(
-            array('start'),
-            array('isStarted'),
-            array('stop'),
-            array('reset'),
-            array('visit'),
-            array('getCurrentUrl'),
-            array('getContent'),
-            array('click'),
-        );
-    }
-
-    private function assertImplementMethod($method, $object, $reason = '')
-    {
-        $ref = new \ReflectionClass(get_class($object));
-        $refMethod = $ref->getMethod($method);
-
-        $message = sprintf('The driver should implement the `%s` method.', $method);
-
-        if ('' !== $reason) {
-            $message .= ' '.$reason;
-        }
-
-        $this->assertSame($ref->name, $refMethod->getDeclaringClass()->name, $message);
-    }
-
-    private function assertNotImplementMethod($method, $object, $reason = '')
-    {
-        $ref = new \ReflectionClass(get_class($object));
-        $refMethod = $ref->getMethod($method);
-
-        $message = sprintf('The driver should not implement the `%s` method.', $method);
-
-        if ('' !== $reason) {
-            $message .= ' '.$reason;
-        }
-
-        $this->assertNotSame($ref->name, $refMethod->getDeclaringClass()->name, $message);
-    }
-}
diff --git a/vendor/behat/mink/driver-testsuite/tests/Basic/ContentTest.php b/vendor/behat/mink/driver-testsuite/tests/Basic/ContentTest.php
deleted file mode 100644
index fdd0ffa..0000000
--- a/vendor/behat/mink/driver-testsuite/tests/Basic/ContentTest.php
+++ /dev/null
@@ -1,86 +0,0 @@
-<?php
-
-namespace Behat\Mink\Tests\Driver\Basic;
-
-use Behat\Mink\Tests\Driver\TestCase;
-
-class ContentTest extends TestCase
-{
-    public function testOuterHtml()
-    {
-        $this->getSession()->visit($this->pathTo('/index.html'));
-
-        $element = $this->getAssertSession()->elementExists('css', '.travers');
-
-        $this->assertEquals(
-            "<div class=\"travers\">\n            <div class=\"sub\">el1</div>\n".
-            "            <div class=\"sub\">el2</div>\n            <div class=\"sub\">\n".
-            "                <a href=\"some_url\">some <strong>deep</strong> url</a>\n".
-            "            </div>\n        </div>",
-            $element->getOuterHtml()
-        );
-    }
-
-    public function testDumpingEmptyElements()
-    {
-        $this->getSession()->visit($this->pathTo('/index.html'));
-
-        $element = $this->getAssertSession()->elementExists('css', '#empty');
-
-        $this->assertEquals(
-            'An empty <em></em> tag should be rendered with both open and close tags.',
-            trim($element->getHtml())
-        );
-    }
-
-    /**
-     * @dataProvider getAttributeDataProvider
-     */
-    public function testGetAttribute($attributeName, $attributeValue)
-    {
-        $this->getSession()->visit($this->pathTo('/index.html'));
-
-        $element = $this->getSession()->getPage()->findById('attr-elem['.$attributeName.']');
-
-        $this->assertNotNull($element);
-        $this->assertSame($attributeValue, $element->getAttribute($attributeName));
-    }
-
-    public function getAttributeDataProvider()
-    {
-        return array(
-            array('with-value', 'some-value'),
-            array('without-value', ''),
-            array('with-empty-value', ''),
-            array('with-missing', null),
-        );
-    }
-
-    public function testJson()
-    {
-        $this->getSession()->visit($this->pathTo('/json.php'));
-        $this->assertContains(
-            '{"key1":"val1","key2":234,"key3":[1,2,3]}',
-            $this->getSession()->getPage()->getContent()
-        );
-    }
-
-    public function testHtmlDecodingNotPerformed()
-    {
-        $session = $this->getSession();
-        $webAssert = $this->getAssertSession();
-        $session->visit($this->pathTo('/html_decoding.html'));
-        $page = $session->getPage();
-
-        $span = $webAssert->elementExists('css', 'span');
-        $input = $webAssert->elementExists('css', 'input');
-
-        $expectedHtml = '<span custom-attr="&amp;">some text</span>';
-        $this->assertContains($expectedHtml, $page->getHtml(), '.innerHTML is returned as-is');
-        $this->assertContains($expectedHtml, $page->getContent(), '.outerHTML is returned as-is');
-
-        $this->assertEquals('&', $span->getAttribute('custom-attr'), '.getAttribute value is decoded');
-        $this->assertEquals('&', $input->getAttribute('value'), '.getAttribute value is decoded');
-        $this->assertEquals('&', $input->getValue(), 'node value is decoded');
-    }
-}
diff --git a/vendor/behat/mink/driver-testsuite/tests/Basic/CookieTest.php b/vendor/behat/mink/driver-testsuite/tests/Basic/CookieTest.php
deleted file mode 100644
index 5636c11..0000000
--- a/vendor/behat/mink/driver-testsuite/tests/Basic/CookieTest.php
+++ /dev/null
@@ -1,168 +0,0 @@
-<?php
-
-namespace Behat\Mink\Tests\Driver\Basic;
-
-use Behat\Mink\Tests\Driver\TestCase;
-
-class CookieTest extends TestCase
-{
-    /**
-     * test cookie decoding.
-     *
-     * @group issue140
-     */
-    public function testIssue140()
-    {
-        $this->getSession()->visit($this->pathTo('/issue140.php'));
-
-        $this->getSession()->getPage()->fillField('cookie_value', 'some:value;');
-        $this->getSession()->getPage()->pressButton('Set cookie');
-
-        $this->getSession()->visit($this->pathTo('/issue140.php?show_value'));
-        $this->assertEquals('some:value;', $this->getSession()->getCookie('tc'));
-        $this->assertEquals('some:value;', $this->getSession()->getPage()->getText());
-    }
-
-    public function testCookie()
-    {
-        $this->getSession()->visit($this->pathTo('/cookie_page2.php'));
-        $this->assertContains('Previous cookie: NO', $this->getSession()->getPage()->getText());
-        $this->assertNull($this->getSession()->getCookie('srvr_cookie'));
-
-        $this->getSession()->setCookie('srvr_cookie', 'client cookie set');
-        $this->getSession()->reload();
-        $this->assertContains('Previous cookie: client cookie set', $this->getSession()->getPage()->getText());
-        $this->assertEquals('client cookie set', $this->getSession()->getCookie('srvr_cookie'));
-
-        $this->getSession()->setCookie('srvr_cookie', null);
-        $this->getSession()->reload();
-        $this->assertContains('Previous cookie: NO', $this->getSession()->getPage()->getText());
-
-        $this->getSession()->visit($this->pathTo('/cookie_page1.php'));
-        $this->getSession()->visit($this->pathTo('/cookie_page2.php'));
-
-        $this->assertContains('Previous cookie: srv_var_is_set', $this->getSession()->getPage()->getText());
-        $this->getSession()->setCookie('srvr_cookie', null);
-        $this->getSession()->reload();
-        $this->assertContains('Previous cookie: NO', $this->getSession()->getPage()->getText());
-    }
-
-    /**
-     * @dataProvider cookieWithPathsDataProvider
-     */
-    public function testCookieWithPaths($cookieRemovalMode)
-    {
-        // start clean
-        $session = $this->getSession();
-        $session->visit($this->pathTo('/sub-folder/cookie_page2.php'));
-        $this->assertContains('Previous cookie: NO', $session->getPage()->getText());
-
-        // cookie from root path is accessible in sub-folder
-        $session->visit($this->pathTo('/cookie_page1.php'));
-        $session->visit($this->pathTo('/sub-folder/cookie_page2.php'));
-        $this->assertContains('Previous cookie: srv_var_is_set', $session->getPage()->getText());
-
-        // cookie from sub-folder overrides cookie from root path
-        $session->visit($this->pathTo('/sub-folder/cookie_page1.php'));
-        $session->visit($this->pathTo('/sub-folder/cookie_page2.php'));
-        $this->assertContains('Previous cookie: srv_var_is_set_sub_folder', $session->getPage()->getText());
-
-        if ($cookieRemovalMode == 'session_reset') {
-            $session->reset();
-        } elseif ($cookieRemovalMode == 'cookie_delete') {
-            $session->setCookie('srvr_cookie', null);
-        }
-
-        // cookie is removed from all paths
-        $session->visit($this->pathTo('/sub-folder/cookie_page2.php'));
-        $this->assertContains('Previous cookie: NO', $session->getPage()->getText());
-    }
-
-    public function cookieWithPathsDataProvider()
-    {
-        return array(
-            array('session_reset'),
-            array('cookie_delete'),
-        );
-    }
-
-    public function testReset()
-    {
-        $this->getSession()->visit($this->pathTo('/cookie_page1.php'));
-        $this->getSession()->visit($this->pathTo('/cookie_page2.php'));
-        $this->assertContains('Previous cookie: srv_var_is_set', $this->getSession()->getPage()->getText());
-
-        $this->getSession()->reset();
-        $this->getSession()->visit($this->pathTo('/cookie_page2.php'));
-
-        $this->assertContains('Previous cookie: NO', $this->getSession()->getPage()->getText());
-
-        $this->getSession()->setCookie('srvr_cookie', 'test_cookie');
-        $this->getSession()->visit($this->pathTo('/cookie_page2.php'));
-        $this->assertContains('Previous cookie: test_cookie', $this->getSession()->getPage()->getText());
-        $this->getSession()->reset();
-        $this->getSession()->visit($this->pathTo('/cookie_page2.php'));
-        $this->assertContains('Previous cookie: NO', $this->getSession()->getPage()->getText());
-
-        $this->getSession()->setCookie('client_cookie1', 'some_val');
-        $this->getSession()->setCookie('client_cookie2', 123);
-        $this->getSession()->visit($this->pathTo('/session_test.php'));
-        $this->getSession()->visit($this->pathTo('/cookie_page1.php'));
-
-        $this->getSession()->visit($this->pathTo('/print_cookies.php'));
-        $this->assertContains(
-            "'client_cookie1' = 'some_val'",
-            $this->getSession()->getPage()->getText()
-        );
-        $this->assertContains(
-            "'client_cookie2' = '123'",
-            $this->getSession()->getPage()->getText()
-        );
-        $this->assertContains(
-            "_SESS' = ",
-            $this->getSession()->getPage()->getText()
-        );
-        $this->assertContains(
-            " 'srvr_cookie' = 'srv_var_is_set'",
-            $this->getSession()->getPage()->getText()
-        );
-
-        $this->getSession()->reset();
-        $this->getSession()->visit($this->pathTo('/print_cookies.php'));
-        $this->assertContains('array ( )', $this->getSession()->getPage()->getText());
-    }
-
-    public function testHttpOnlyCookieIsDeleted()
-    {
-        $this->getSession()->restart();
-        $this->getSession()->visit($this->pathTo('/cookie_page3.php'));
-        $this->assertEquals('Has Cookie: false', $this->findById('cookie-status')->getText());
-
-        $this->getSession()->reload();
-        $this->assertEquals('Has Cookie: true', $this->findById('cookie-status')->getText());
-
-        $this->getSession()->restart();
-        $this->getSession()->visit($this->pathTo('/cookie_page3.php'));
-        $this->assertEquals('Has Cookie: false', $this->findById('cookie-status')->getText());
-    }
-
-    public function testSessionPersistsBetweenRequests()
-    {
-        $this->getSession()->visit($this->pathTo('/session_test.php'));
-        $webAssert = $this->getAssertSession();
-        $node = $webAssert->elementExists('css', '#session-id');
-        $sessionId = $node->getText();
-
-        $this->getSession()->visit($this->pathTo('/session_test.php'));
-        $node = $webAssert->elementExists('css', '#session-id');
-        $this->assertEquals($sessionId, $node->getText());
-
-        $this->getSession()->visit($this->pathTo('/session_test.php?login'));
-        $node = $webAssert->elementExists('css', '#session-id');
-        $this->assertNotEquals($sessionId, $newSessionId = $node->getText());
-
-        $this->getSession()->visit($this->pathTo('/session_test.php'));
-        $node = $webAssert->elementExists('css', '#session-id');
-        $this->assertEquals($newSessionId, $node->getText());
-    }
-}
diff --git a/vendor/behat/mink/driver-testsuite/tests/Basic/ErrorHandlingTest.php b/vendor/behat/mink/driver-testsuite/tests/Basic/ErrorHandlingTest.php
deleted file mode 100644
index bb4bb2d..0000000
--- a/vendor/behat/mink/driver-testsuite/tests/Basic/ErrorHandlingTest.php
+++ /dev/null
@@ -1,265 +0,0 @@
-<?php
-
-namespace Behat\Mink\Tests\Driver\Basic;
-
-use Behat\Mink\Tests\Driver\TestCase;
-
-/**
- * @group slow
- */
-class ErrorHandlingTest extends TestCase
-{
-    const NOT_FOUND_XPATH = '//html/./invalid';
-
-    const NOT_FOUND_EXCEPTION = 'Exception';
-
-    const INVALID_EXCEPTION = 'Exception';
-
-    public function testVisitErrorPage()
-    {
-        $this->getSession()->visit($this->pathTo('/500.php'));
-
-        $this->assertContains(
-            'Sorry, a server error happened',
-            $this->getSession()->getPage()->getContent(),
-            'Drivers allow loading pages with a 500 status code'
-        );
-    }
-
-    public function testCheckInvalidElement()
-    {
-        $this->getSession()->visit($this->pathTo('/index.html'));
-        $element = $this->findById('user-name');
-
-        $this->setExpectedException(self::INVALID_EXCEPTION);
-        $this->getSession()->getDriver()->check($element->getXpath());
-    }
-
-    public function testCheckNotFoundElement()
-    {
-        $this->getSession()->visit($this->pathTo('/index.html'));
-
-        $this->setExpectedException(self::NOT_FOUND_EXCEPTION);
-        $this->getSession()->getDriver()->check(self::NOT_FOUND_XPATH);
-    }
-
-    public function testUncheckInvalidElement()
-    {
-        $this->getSession()->visit($this->pathTo('/index.html'));
-        $element = $this->findById('user-name');
-
-        $this->setExpectedException(self::INVALID_EXCEPTION);
-        $this->getSession()->getDriver()->uncheck($element->getXpath());
-    }
-
-    public function testUncheckNotFoundElement()
-    {
-        $this->getSession()->visit($this->pathTo('/index.html'));
-
-        $this->setExpectedException(self::NOT_FOUND_EXCEPTION);
-        $this->getSession()->getDriver()->uncheck(self::NOT_FOUND_XPATH);
-    }
-
-    public function testSelectOptionInvalidElement()
-    {
-        $this->getSession()->visit($this->pathTo('/index.html'));
-        $element = $this->findById('user-name');
-
-        $this->setExpectedException(self::INVALID_EXCEPTION);
-        $this->getSession()->getDriver()->selectOption($element->getXpath(), 'test');
-    }
-
-    public function testSelectOptionNotFoundElement()
-    {
-        $this->getSession()->visit($this->pathTo('/index.html'));
-
-        $this->setExpectedException(self::NOT_FOUND_EXCEPTION);
-        $this->getSession()->getDriver()->selectOption(self::NOT_FOUND_XPATH, 'test');
-    }
-
-    public function testAttachFileInvalidElement()
-    {
-        $this->getSession()->visit($this->pathTo('/index.html'));
-        $element = $this->findById('user-name');
-
-        $this->setExpectedException(self::INVALID_EXCEPTION);
-        $this->getSession()->getDriver()->attachFile($element->getXpath(), __FILE__);
-    }
-
-    public function testAttachFileNotFoundElement()
-    {
-        $this->getSession()->visit($this->pathTo('/index.html'));
-
-        $this->setExpectedException(self::NOT_FOUND_EXCEPTION);
-        $this->getSession()->getDriver()->attachFile(self::NOT_FOUND_XPATH, __FILE__);
-    }
-
-    public function testSubmitFormInvalidElement()
-    {
-        $this->getSession()->visit($this->pathTo('/index.html'));
-        $element = $this->findById('core');
-
-        $this->setExpectedException(self::INVALID_EXCEPTION);
-        $this->getSession()->getDriver()->submitForm($element->getXpath());
-    }
-
-    public function testSubmitFormNotFoundElement()
-    {
-        $this->getSession()->visit($this->pathTo('/index.html'));
-
-        $this->setExpectedException(self::NOT_FOUND_EXCEPTION);
-        $this->getSession()->getDriver()->submitForm(self::NOT_FOUND_XPATH);
-    }
-
-    public function testGetTagNameNotFoundElement()
-    {
-        $this->getSession()->visit($this->pathTo('/index.html'));
-
-        $this->setExpectedException(self::NOT_FOUND_EXCEPTION);
-        $this->getSession()->getDriver()->getTagName(self::NOT_FOUND_XPATH);
-    }
-
-    public function testGetTextNotFoundElement()
-    {
-        $this->getSession()->visit($this->pathTo('/index.html'));
-
-        $this->setExpectedException(self::NOT_FOUND_EXCEPTION);
-        $this->getSession()->getDriver()->getText(self::NOT_FOUND_XPATH);
-    }
-
-    public function testGetHtmlNotFoundElement()
-    {
-        $this->getSession()->visit($this->pathTo('/index.html'));
-
-        $this->setExpectedException(self::NOT_FOUND_EXCEPTION);
-        $this->getSession()->getDriver()->getHtml(self::NOT_FOUND_XPATH);
-    }
-
-    public function testGetOuterHtmlNotFoundElement()
-    {
-        $this->getSession()->visit($this->pathTo('/index.html'));
-
-        $this->setExpectedException(self::NOT_FOUND_EXCEPTION);
-        $this->getSession()->getDriver()->getOuterHtml(self::NOT_FOUND_XPATH);
-    }
-
-    public function testGetValueNotFoundElement()
-    {
-        $this->getSession()->visit($this->pathTo('/index.html'));
-
-        $this->setExpectedException(self::NOT_FOUND_EXCEPTION);
-        $this->getSession()->getDriver()->getValue(self::NOT_FOUND_XPATH);
-    }
-
-    public function testSetValueNotFoundElement()
-    {
-        $this->getSession()->visit($this->pathTo('/index.html'));
-
-        $this->setExpectedException(self::NOT_FOUND_EXCEPTION);
-        $this->getSession()->getDriver()->setValue(self::NOT_FOUND_XPATH, 'test');
-    }
-
-    public function testIsSelectedNotFoundElement()
-    {
-        $this->getSession()->visit($this->pathTo('/index.html'));
-
-        $this->setExpectedException(self::NOT_FOUND_EXCEPTION);
-        $this->getSession()->getDriver()->isSelected(self::NOT_FOUND_XPATH);
-    }
-
-    public function testIsCheckedNotFoundElement()
-    {
-        $this->getSession()->visit($this->pathTo('/index.html'));
-
-        $this->setExpectedException(self::NOT_FOUND_EXCEPTION);
-        $this->getSession()->getDriver()->isChecked(self::NOT_FOUND_XPATH);
-    }
-
-    public function testIsVisibleNotFoundElement()
-    {
-        $this->getSession()->visit($this->pathTo('/index.html'));
-
-        $this->setExpectedException(self::NOT_FOUND_EXCEPTION);
-        $this->getSession()->getDriver()->isVisible(self::NOT_FOUND_XPATH);
-    }
-
-    public function testClickNotFoundElement()
-    {
-        $this->getSession()->visit($this->pathTo('/index.html'));
-
-        $this->setExpectedException(self::NOT_FOUND_EXCEPTION);
-        $this->getSession()->getDriver()->click(self::NOT_FOUND_XPATH);
-    }
-
-    public function testDoubleClickNotFoundElement()
-    {
-        $this->getSession()->visit($this->pathTo('/index.html'));
-
-        $this->setExpectedException(self::NOT_FOUND_EXCEPTION);
-        $this->getSession()->getDriver()->doubleClick(self::NOT_FOUND_XPATH);
-    }
-
-    public function testRightClickNotFoundElement()
-    {
-        $this->getSession()->visit($this->pathTo('/index.html'));
-
-        $this->setExpectedException(self::NOT_FOUND_EXCEPTION);
-        $this->getSession()->getDriver()->rightClick(self::NOT_FOUND_XPATH);
-    }
-
-    public function testGetAttributeNotFoundElement()
-    {
-        $this->getSession()->visit($this->pathTo('/index.html'));
-
-        $this->setExpectedException(self::NOT_FOUND_EXCEPTION);
-        $this->getSession()->getDriver()->getAttribute(self::NOT_FOUND_XPATH, 'id');
-    }
-
-    public function testMouseOverNotFoundElement()
-    {
-        $this->getSession()->visit($this->pathTo('/index.html'));
-
-        $this->setExpectedException(self::NOT_FOUND_EXCEPTION);
-        $this->getSession()->getDriver()->mouseOver(self::NOT_FOUND_XPATH);
-    }
-
-    public function testFocusNotFoundElement()
-    {
-        $this->getSession()->visit($this->pathTo('/index.html'));
-
-        $this->setExpectedException(self::NOT_FOUND_EXCEPTION);
-        $this->getSession()->getDriver()->focus(self::NOT_FOUND_XPATH);
-    }
-
-    public function testBlurNotFoundElement()
-    {
-        $this->getSession()->visit($this->pathTo('/index.html'));
-
-        $this->setExpectedException(self::NOT_FOUND_EXCEPTION);
-        $this->getSession()->getDriver()->blur(self::NOT_FOUND_XPATH);
-    }
-
-    public function testKeyPressNotFoundElement()
-    {
-        $this->getSession()->visit($this->pathTo('/index.html'));
-
-        $this->setExpectedException(self::NOT_FOUND_EXCEPTION);
-        $this->getSession()->getDriver()->keyPress(self::NOT_FOUND_XPATH, 'a');
-    }
-
-    public function testKeyDownNotFoundElement()
-    {
-        $this->getSession()->visit($this->pathTo('/index.html'));
-
-        $this->setExpectedException(self::NOT_FOUND_EXCEPTION);
-        $this->getSession()->getDriver()->keyDown(self::NOT_FOUND_XPATH, 'a');
-    }
-
-    public function testKeyUpNotFoundElement()
-    {
-        $this->getSession()->visit($this->pathTo('/index.html'));
-
-        $this->setExpectedException(self::NOT_FOUND_EXCEPTION);
-        $this->getSession()->getDriver()->keyUp(self::NOT_FOUND_XPATH, 'a');
-    }
-}
diff --git a/vendor/behat/mink/driver-testsuite/tests/Basic/HeaderTest.php b/vendor/behat/mink/driver-testsuite/tests/Basic/HeaderTest.php
deleted file mode 100644
index 072ceb4..0000000
--- a/vendor/behat/mink/driver-testsuite/tests/Basic/HeaderTest.php
+++ /dev/null
@@ -1,78 +0,0 @@
-<?php
-
-namespace Behat\Mink\Tests\Driver\Basic;
-
-use Behat\Mink\Tests\Driver\TestCase;
-
-class HeaderTest extends TestCase
-{
-    /**
-     * test referrer.
-     *
-     * @group issue130
-     */
-    public function testIssue130()
-    {
-        $this->getSession()->visit($this->pathTo('/issue130.php?p=1'));
-        $page = $this->getSession()->getPage();
-
-        $page->clickLink('Go to 2');
-        $this->assertEquals($this->pathTo('/issue130.php?p=1'), $page->getText());
-    }
-
-    public function testHeaders()
-    {
-        $this->getSession()->setRequestHeader('Accept-Language', 'fr');
-        $this->getSession()->visit($this->pathTo('/headers.php'));
-
-        $this->assertContains('[HTTP_ACCEPT_LANGUAGE] => fr', $this->getSession()->getPage()->getContent());
-    }
-
-    public function testSetUserAgent()
-    {
-        $session = $this->getSession();
-
-        $session->setRequestHeader('user-agent', 'foo bar');
-        $session->visit($this->pathTo('/headers.php'));
-        $this->assertContains('[HTTP_USER_AGENT] => foo bar', $session->getPage()->getContent());
-    }
-
-    public function testResetHeaders()
-    {
-        $session = $this->getSession();
-
-        $session->setRequestHeader('X-Mink-Test', 'test');
-        $session->visit($this->pathTo('/headers.php'));
-
-        $this->assertContains(
-            '[HTTP_X_MINK_TEST] => test',
-            $session->getPage()->getContent(),
-            'The custom header should be sent',
-            true
-        );
-
-        $session->reset();
-        $session->visit($this->pathTo('/headers.php'));
-
-        $this->assertNotContains(
-            '[HTTP_X_MINK_TEST] => test',
-            $session->getPage()->getContent(),
-            'The custom header should not be sent after resetting',
-            true
-        );
-    }
-
-    public function testResponseHeaders()
-    {
-        $this->getSession()->visit($this->pathTo('/response_headers.php'));
-
-        $headers = $this->getSession()->getResponseHeaders();
-
-        $lowercasedHeaders = array();
-        foreach ($headers as $name => $value) {
-            $lowercasedHeaders[str_replace('_', '-', strtolower($name))] = $value;
-        }
-
-        $this->assertArrayHasKey('x-mink-test', $lowercasedHeaders);
-    }
-}
diff --git a/vendor/behat/mink/driver-testsuite/tests/Basic/IFrameTest.php b/vendor/behat/mink/driver-testsuite/tests/Basic/IFrameTest.php
deleted file mode 100644
index 0ed0f9e..0000000
--- a/vendor/behat/mink/driver-testsuite/tests/Basic/IFrameTest.php
+++ /dev/null
@@ -1,27 +0,0 @@
-<?php
-
-namespace Behat\Mink\Tests\Driver\Basic;
-
-use Behat\Mink\Tests\Driver\TestCase;
-
-class IFrameTest extends TestCase
-{
-    public function testIFrame()
-    {
-        $this->getSession()->visit($this->pathTo('/iframe.html'));
-        $webAssert = $this->getAssertSession();
-
-        $el = $webAssert->elementExists('css', '#text');
-        $this->assertSame('Main window div text', $el->getText());
-
-        $this->getSession()->switchToIFrame('subframe');
-
-        $el = $webAssert->elementExists('css', '#text');
-        $this->assertSame('iFrame div text', $el->getText());
-
-        $this->getSession()->switchToIFrame();
-
-        $el = $webAssert->elementExists('css', '#text');
-        $this->assertSame('Main window div text', $el->getText());
-    }
-}
diff --git a/vendor/behat/mink/driver-testsuite/tests/Basic/NavigationTest.php b/vendor/behat/mink/driver-testsuite/tests/Basic/NavigationTest.php
deleted file mode 100644
index 7056316..0000000
--- a/vendor/behat/mink/driver-testsuite/tests/Basic/NavigationTest.php
+++ /dev/null
@@ -1,69 +0,0 @@
-<?php
-
-namespace Behat\Mink\Tests\Driver\Basic;
-
-use Behat\Mink\Tests\Driver\TestCase;
-
-class NavigationTest extends TestCase
-{
-    public function testRedirect()
-    {
-        $this->getSession()->visit($this->pathTo('/redirector.php'));
-        $this->assertEquals($this->pathTo('/redirect_destination.html'), $this->getSession()->getCurrentUrl());
-    }
-
-    public function testPageControls()
-    {
-        $this->getSession()->visit($this->pathTo('/randomizer.php'));
-        $number1 = $this->getAssertSession()->elementExists('css', '#number')->getText();
-
-        $this->getSession()->reload();
-        $number2 = $this->getAssertSession()->elementExists('css', '#number')->getText();
-
-        $this->assertNotEquals($number1, $number2);
-
-        $this->getSession()->visit($this->pathTo('/links.html'));
-        $this->getSession()->getPage()->clickLink('Random number page');
-
-        $this->assertEquals($this->pathTo('/randomizer.php'), $this->getSession()->getCurrentUrl());
-
-        $this->getSession()->back();
-        $this->assertEquals($this->pathTo('/links.html'), $this->getSession()->getCurrentUrl());
-
-        $this->getSession()->forward();
-        $this->assertEquals($this->pathTo('/randomizer.php'), $this->getSession()->getCurrentUrl());
-    }
-
-    public function testLinks()
-    {
-        $this->getSession()->visit($this->pathTo('/links.html'));
-        $page = $this->getSession()->getPage();
-        $link = $page->findLink('Redirect me to');
-
-        $this->assertNotNull($link);
-        $this->assertRegExp('/redirector\.php$/', $link->getAttribute('href'));
-        $link->click();
-
-        $this->assertEquals($this->pathTo('/redirect_destination.html'), $this->getSession()->getCurrentUrl());
-
-        $this->getSession()->visit($this->pathTo('/links.html'));
-        $page = $this->getSession()->getPage();
-        $link = $page->findLink('basic form image');
-
-        $this->assertNotNull($link);
-        $this->assertRegExp('/basic_form\.html$/', $link->getAttribute('href'));
-        $link->click();
-
-        $this->assertEquals($this->pathTo('/basic_form.html'), $this->getSession()->getCurrentUrl());
-
-        $this->getSession()->visit($this->pathTo('/links.html'));
-        $page = $this->getSession()->getPage();
-        $link = $page->findLink('Link with a ');
-
-        $this->assertNotNull($link);
-        $this->assertRegExp('/links\.html\?quoted$/', $link->getAttribute('href'));
-        $link->click();
-
-        $this->assertEquals($this->pathTo('/links.html?quoted'), $this->getSession()->getCurrentUrl());
-    }
-}
diff --git a/vendor/behat/mink/driver-testsuite/tests/Basic/ScreenshotTest.php b/vendor/behat/mink/driver-testsuite/tests/Basic/ScreenshotTest.php
deleted file mode 100644
index 329f2d3..0000000
--- a/vendor/behat/mink/driver-testsuite/tests/Basic/ScreenshotTest.php
+++ /dev/null
@@ -1,30 +0,0 @@
-<?php
-
-namespace Behat\Mink\Tests\Driver\Basic;
-
-use Behat\Mink\Tests\Driver\TestCase;
-
-class ScreenshotTest extends TestCase
-{
-    public function testScreenshot()
-    {
-        if (!extension_loaded('gd')) {
-            $this->markTestSkipped('Testing screenshots requires the GD extension');
-        }
-
-        $this->getSession()->visit($this->pathTo('/index.html'));
-
-        $screenShot = $this->getSession()->getScreenshot();
-
-        $this->assertInternalType('string', $screenShot);
-        $this->assertFalse(base64_decode($screenShot, true), 'The returned screenshot should not be base64-encoded');
-
-        $img = imagecreatefromstring($screenShot);
-
-        if (false === $img) {
-            $this->fail('The screenshot should be a valid image');
-        }
-
-        imagedestroy($img);
-    }
-}
diff --git a/vendor/behat/mink/driver-testsuite/tests/Basic/StatusCodeTest.php b/vendor/behat/mink/driver-testsuite/tests/Basic/StatusCodeTest.php
deleted file mode 100644
index 34ca7f0..0000000
--- a/vendor/behat/mink/driver-testsuite/tests/Basic/StatusCodeTest.php
+++ /dev/null
@@ -1,22 +0,0 @@
-<?php
-
-namespace Behat\Mink\Tests\Driver\Basic;
-
-use Behat\Mink\Tests\Driver\TestCase;
-
-class StatusCodeTest extends TestCase
-{
-    public function testStatuses()
-    {
-        $this->getSession()->visit($this->pathTo('/index.html'));
-
-        $this->assertEquals(200, $this->getSession()->getStatusCode());
-        $this->assertEquals($this->pathTo('/index.html'), $this->getSession()->getCurrentUrl());
-
-        $this->getSession()->visit($this->pathTo('/404.php'));
-
-        $this->assertEquals($this->pathTo('/404.php'), $this->getSession()->getCurrentUrl());
-        $this->assertEquals(404, $this->getSession()->getStatusCode());
-        $this->assertEquals('Sorry, page not found', $this->getSession()->getPage()->getContent());
-    }
-}
diff --git a/vendor/behat/mink/driver-testsuite/tests/Basic/TraversingTest.php b/vendor/behat/mink/driver-testsuite/tests/Basic/TraversingTest.php
deleted file mode 100644
index 6f1ebcb..0000000
--- a/vendor/behat/mink/driver-testsuite/tests/Basic/TraversingTest.php
+++ /dev/null
@@ -1,143 +0,0 @@
-<?php
-
-namespace Behat\Mink\Tests\Driver\Basic;
-
-use Behat\Mink\Tests\Driver\TestCase;
-
-class TraversingTest extends TestCase
-{
-    /**
-     * find by label.
-     *
-     * @group issue211
-     */
-    public function testIssue211()
-    {
-        $this->getSession()->visit($this->pathTo('/issue211.html'));
-        $field = $this->getSession()->getPage()->findField('Téléphone');
-
-        $this->assertNotNull($field);
-    }
-
-    public function testElementsTraversing()
-    {
-        $this->getSession()->visit($this->pathTo('/index.html'));
-
-        $page = $this->getSession()->getPage();
-
-        $title = $page->find('css', 'h1');
-        $this->assertNotNull($title);
-        $this->assertEquals('Extremely useless page', $title->getText());
-        $this->assertEquals('h1', $title->getTagName());
-
-        $strong = $page->find('xpath', '//div/strong[3]');
-        $this->assertNotNull($strong);
-        $this->assertEquals('pariatur', $strong->getText());
-        $this->assertEquals('super-duper', $strong->getAttribute('class'));
-        $this->assertTrue($strong->hasAttribute('class'));
-
-        $strong2 = $page->find('xpath', '//div/strong[2]');
-        $this->assertNotNull($strong2);
-        $this->assertEquals('veniam', $strong2->getText());
-        $this->assertEquals('strong', $strong2->getTagName());
-        $this->assertNull($strong2->getAttribute('class'));
-        $this->assertFalse($strong2->hasAttribute('class'));
-
-        $strongs = $page->findAll('css', 'div#core > strong');
-        $this->assertCount(3, $strongs);
-        $this->assertEquals('Lorem', $strongs[0]->getText());
-        $this->assertEquals('pariatur', $strongs[2]->getText());
-
-        $element = $page->find('css', '#some-element');
-
-        $this->assertNotNull($element);
-        $this->assertEquals('some very interesting text', $element->getText());
-        $this->assertEquals(
-            "\n            some <div>very\n            </div>\n".
-            "<em>interesting</em>      text\n        ",
-            $element->getHtml()
-        );
-
-        $this->assertTrue($element->hasAttribute('data-href'));
-        $this->assertFalse($element->hasAttribute('data-url'));
-        $this->assertEquals('http://mink.behat.org', $element->getAttribute('data-href'));
-        $this->assertNull($element->getAttribute('data-url'));
-        $this->assertEquals('div', $element->getTagName());
-    }
-
-    public function testVeryDeepElementsTraversing()
-    {
-        $this->getSession()->visit($this->pathTo('/index.html'));
-
-        $page = $this->getSession()->getPage();
-
-        $footer = $page->find('css', 'footer');
-        $this->assertNotNull($footer);
-
-        $searchForm = $footer->find('css', 'form#search-form');
-        $this->assertNotNull($searchForm);
-        $this->assertEquals('search-form', $searchForm->getAttribute('id'));
-
-        $searchInput = $searchForm->findField('Search site...');
-        $this->assertNotNull($searchInput);
-        $this->assertEquals('text', $searchInput->getAttribute('type'));
-
-        $searchInput = $searchForm->findField('Search site...');
-        $this->assertNotNull($searchInput);
-        $this->assertEquals('text', $searchInput->getAttribute('type'));
-
-        $profileForm = $footer->find('css', '#profile');
-        $this->assertNotNull($profileForm);
-
-        $profileFormDiv = $profileForm->find('css', 'div');
-        $this->assertNotNull($profileFormDiv);
-
-        $profileFormDivLabel = $profileFormDiv->find('css', 'label');
-        $this->assertNotNull($profileFormDivLabel);
-
-        $profileFormDivParent = $profileFormDivLabel->getParent();
-        $this->assertNotNull($profileFormDivParent);
-
-        $profileFormDivParent = $profileFormDivLabel->getParent();
-        $this->assertEquals('something', $profileFormDivParent->getAttribute('data-custom'));
-
-        $profileFormInput = $profileFormDivLabel->findField('user-name');
-        $this->assertNotNull($profileFormInput);
-        $this->assertEquals('username', $profileFormInput->getAttribute('name'));
-    }
-
-    public function testDeepTraversing()
-    {
-        $this->getSession()->visit($this->pathTo('/index.html'));
-
-        $traversDivs = $this->getSession()->getPage()->findAll('css', 'div.travers');
-
-        $this->assertCount(1, $traversDivs);
-
-        $subDivs = $traversDivs[0]->findAll('css', 'div.sub');
-        $this->assertCount(3, $subDivs);
-
-        $this->assertTrue($subDivs[2]->hasLink('some deep url'));
-        $this->assertFalse($subDivs[2]->hasLink('come deep url'));
-        $subUrl = $subDivs[2]->findLink('some deep url');
-        $this->assertNotNull($subUrl);
-
-        $this->assertRegExp('/some_url$/', $subUrl->getAttribute('href'));
-        $this->assertEquals('some deep url', $subUrl->getText());
-        $this->assertEquals('some <strong>deep</strong> url', $subUrl->getHtml());
-
-        $this->assertTrue($subUrl->has('css', 'strong'));
-        $this->assertFalse($subUrl->has('css', 'em'));
-        $this->assertEquals('deep', $subUrl->find('css', 'strong')->getText());
-    }
-
-    public function testFindingChild()
-    {
-        $this->getSession()->visit($this->pathTo('/index.html'));
-
-        $form = $this->getSession()->getPage()->find('css', 'footer form');
-        $this->assertNotNull($form);
-
-        $this->assertCount(1, $form->findAll('css', 'input'), 'Elements are searched only in the element, not in all previous matches');
-    }
-}
diff --git a/vendor/behat/mink/driver-testsuite/tests/Basic/VisibilityTest.php b/vendor/behat/mink/driver-testsuite/tests/Basic/VisibilityTest.php
deleted file mode 100644
index bb5634e..0000000
--- a/vendor/behat/mink/driver-testsuite/tests/Basic/VisibilityTest.php
+++ /dev/null
@@ -1,20 +0,0 @@
-<?php
-
-namespace Behat\Mink\Tests\Driver\Basic;
-
-use Behat\Mink\Tests\Driver\TestCase;
-
-class VisibilityTest extends TestCase
-{
-    public function testVisibility()
-    {
-        $this->getSession()->visit($this->pathTo('/js_test.html'));
-        $webAssert = $this->getAssertSession();
-
-        $clicker = $webAssert->elementExists('css', '.elements div#clicker');
-        $invisible = $webAssert->elementExists('css', '#invisible');
-
-        $this->assertFalse($invisible->isVisible());
-        $this->assertTrue($clicker->isVisible());
-    }
-}
diff --git a/vendor/behat/mink/driver-testsuite/tests/Css/HoverTest.php b/vendor/behat/mink/driver-testsuite/tests/Css/HoverTest.php
deleted file mode 100644
index 87041d4..0000000
--- a/vendor/behat/mink/driver-testsuite/tests/Css/HoverTest.php
+++ /dev/null
@@ -1,76 +0,0 @@
-<?php
-
-namespace Behat\Mink\Tests\Driver\Css;
-
-use Behat\Mink\Tests\Driver\TestCase;
-
-class HoverTest extends TestCase
-{
-    /**
-     * @group mouse-events
-     */
-    public function testMouseOverHover()
-    {
-        $this->getSession()->visit($this->pathTo('/css_mouse_events.html'));
-
-        $this->findById('reset-square')->mouseOver();
-        $this->assertActionSquareHeight(100);
-
-        $this->findById('action-square')->mouseOver();
-        $this->assertActionSquareHeight(200);
-    }
-
-    /**
-     * @group mouse-events
-     * @depends testMouseOverHover
-     */
-    public function testClickHover()
-    {
-        $this->getSession()->visit($this->pathTo('/css_mouse_events.html'));
-
-        $this->findById('reset-square')->mouseOver();
-        $this->assertActionSquareHeight(100);
-
-        $this->findById('action-square')->click();
-        $this->assertActionSquareHeight(200);
-    }
-
-    /**
-     * @group mouse-events
-     * @depends testMouseOverHover
-     */
-    public function testDoubleClickHover()
-    {
-        $this->getSession()->visit($this->pathTo('/css_mouse_events.html'));
-
-        $this->findById('reset-square')->mouseOver();
-        $this->assertActionSquareHeight(100);
-
-        $this->findById('action-square')->doubleClick();
-        $this->assertActionSquareHeight(200);
-    }
-
-    /**
-     * @group mouse-events
-     * @depends testMouseOverHover
-     */
-    public function testRightClickHover()
-    {
-        $this->getSession()->visit($this->pathTo('/css_mouse_events.html'));
-
-        $this->findById('reset-square')->mouseOver();
-        $this->assertActionSquareHeight(100);
-
-        $this->findById('action-square')->rightClick();
-        $this->assertActionSquareHeight(200);
-    }
-
-    private function assertActionSquareHeight($expected)
-    {
-        $this->assertEquals(
-            $expected,
-            $this->getSession()->evaluateScript("return window.$('#action-square').height();"),
-            'Mouse is located over the object when mouse-related action is performed'
-        );
-    }
-}
diff --git a/vendor/behat/mink/driver-testsuite/tests/Form/CheckboxTest.php b/vendor/behat/mink/driver-testsuite/tests/Form/CheckboxTest.php
deleted file mode 100644
index 18c4088..0000000
--- a/vendor/behat/mink/driver-testsuite/tests/Form/CheckboxTest.php
+++ /dev/null
@@ -1,73 +0,0 @@
-<?php
-
-namespace Behat\Mink\Tests\Driver\Form;
-
-use Behat\Mink\Tests\Driver\TestCase;
-
-class CheckboxTest extends TestCase
-{
-    public function testManipulate()
-    {
-        $this->getSession()->visit($this->pathTo('advanced_form.html'));
-
-        $checkbox = $this->getAssertSession()->fieldExists('agreement');
-
-        $this->assertNull($checkbox->getValue());
-        $this->assertFalse($checkbox->isChecked());
-
-        $checkbox->check();
-
-        $this->assertEquals('yes', $checkbox->getValue());
-        $this->assertTrue($checkbox->isChecked());
-
-        $checkbox->uncheck();
-
-        $this->assertNull($checkbox->getValue());
-        $this->assertFalse($checkbox->isChecked());
-    }
-
-    public function testSetValue()
-    {
-        $this->getSession()->visit($this->pathTo('advanced_form.html'));
-
-        $checkbox = $this->getAssertSession()->fieldExists('agreement');
-
-        $this->assertNull($checkbox->getValue());
-        $this->assertFalse($checkbox->isChecked());
-
-        $checkbox->setValue(true);
-
-        $this->assertEquals('yes', $checkbox->getValue());
-        $this->assertTrue($checkbox->isChecked());
-
-        $checkbox->setValue(false);
-
-        $this->assertNull($checkbox->getValue());
-        $this->assertFalse($checkbox->isChecked());
-    }
-
-    public function testCheckboxMultiple()
-    {
-        $this->getSession()->visit($this->pathTo('/multicheckbox_form.html'));
-        $webAssert = $this->getAssertSession();
-
-        $this->assertEquals('Multicheckbox Test', $webAssert->elementExists('css', 'h1')->getText());
-
-        $updateMail = $webAssert->elementExists('css', '[name="mail_types[]"][value="update"]');
-        $spamMail = $webAssert->elementExists('css', '[name="mail_types[]"][value="spam"]');
-
-        $this->assertEquals('update', $updateMail->getValue());
-        $this->assertNull($spamMail->getValue());
-
-        $this->assertTrue($updateMail->isChecked());
-        $this->assertFalse($spamMail->isChecked());
-
-        $updateMail->uncheck();
-        $this->assertFalse($updateMail->isChecked());
-        $this->assertFalse($spamMail->isChecked());
-
-        $spamMail->check();
-        $this->assertFalse($updateMail->isChecked());
-        $this->assertTrue($spamMail->isChecked());
-    }
-}
diff --git a/vendor/behat/mink/driver-testsuite/tests/Form/GeneralTest.php b/vendor/behat/mink/driver-testsuite/tests/Form/GeneralTest.php
deleted file mode 100644
index 0e08d34..0000000
--- a/vendor/behat/mink/driver-testsuite/tests/Form/GeneralTest.php
+++ /dev/null
@@ -1,312 +0,0 @@
-<?php
-
-namespace Behat\Mink\Tests\Driver\Form;
-
-use Behat\Mink\Tests\Driver\TestCase;
-
-class GeneralTest extends TestCase
-{
-    // test multiple submit buttons
-    public function testIssue212()
-    {
-        $session = $this->getSession();
-
-        $session->visit($this->pathTo('/issue212.html'));
-
-        $field = $this->findById('poney-button');
-        $this->assertEquals('poney', $field->getValue());
-    }
-
-    public function testBasicForm()
-    {
-        $this->getSession()->visit($this->pathTo('/basic_form.html'));
-
-        $webAssert = $this->getAssertSession();
-        $page = $this->getSession()->getPage();
-        $this->assertEquals('Basic Form Page', $webAssert->elementExists('css', 'h1')->getText());
-
-        $firstname = $webAssert->fieldExists('first_name');
-        $lastname = $webAssert->fieldExists('lastn');
-
-        $this->assertEquals('Firstname', $firstname->getValue());
-        $this->assertEquals('Lastname', $lastname->getValue());
-
-        $firstname->setValue('Konstantin');
-        $page->fillField('last_name', 'Kudryashov');
-
-        $this->assertEquals('Konstantin', $firstname->getValue());
-        $this->assertEquals('Kudryashov', $lastname->getValue());
-
-        $page->findButton('Reset')->click();
-
-        $this->assertEquals('Firstname', $firstname->getValue());
-        $this->assertEquals('Lastname', $lastname->getValue());
-
-        $firstname->setValue('Konstantin');
-        $page->fillField('last_name', 'Kudryashov');
-
-        $page->findButton('Save')->click();
-
-        if ($this->safePageWait(5000, 'document.getElementById("first") !== null')) {
-            $this->assertEquals('Anket for Konstantin', $webAssert->elementExists('css', 'h1')->getText());
-            $this->assertEquals('Firstname: Konstantin', $webAssert->elementExists('css', '#first')->getText());
-            $this->assertEquals('Lastname: Kudryashov', $webAssert->elementExists('css', '#last')->getText());
-        }
-    }
-
-    /**
-     * @dataProvider formSubmitWaysDataProvider
-     */
-    public function testFormSubmitWays($submitVia)
-    {
-        $session = $this->getSession();
-        $session->visit($this->pathTo('/basic_form.html'));
-        $page = $session->getPage();
-        $webAssert = $this->getAssertSession();
-
-        $firstname = $webAssert->fieldExists('first_name');
-        $firstname->setValue('Konstantin');
-
-        $page->findButton($submitVia)->click();
-
-        if ($this->safePageWait(5000, 'document.getElementById("first") !== null')) {
-            $this->assertEquals('Firstname: Konstantin', $webAssert->elementExists('css', '#first')->getText());
-        } else {
-            $this->fail('Form was never submitted');
-        }
-    }
-
-    public function formSubmitWaysDataProvider()
-    {
-        return array(
-            array('Save'),
-            array('input-type-image'),
-            array('button-without-type'),
-            array('button-type-submit'),
-        );
-    }
-
-    public function testFormSubmit()
-    {
-        $session = $this->getSession();
-        $session->visit($this->pathTo('/basic_form.html'));
-
-        $webAssert = $this->getAssertSession();
-        $webAssert->fieldExists('first_name')->setValue('Konstantin');
-
-        $webAssert->elementExists('xpath', 'descendant-or-self::form[1]')->submit();
-
-        if ($this->safePageWait(5000, 'document.getElementById("first") !== null')) {
-            $this->assertEquals('Firstname: Konstantin', $webAssert->elementExists('css', '#first')->getText());
-        };
-    }
-
-    public function testFormSubmitWithoutButton()
-    {
-        $session = $this->getSession();
-        $session->visit($this->pathTo('/form_without_button.html'));
-
-        $webAssert = $this->getAssertSession();
-        $webAssert->fieldExists('first_name')->setValue('Konstantin');
-
-        $webAssert->elementExists('xpath', 'descendant-or-self::form[1]')->submit();
-
-        if ($this->safePageWait(5000, 'document.getElementById("first") !== null')) {
-            $this->assertEquals('Firstname: Konstantin', $webAssert->elementExists('css', '#first')->getText());
-        };
-    }
-
-    public function testBasicGetForm()
-    {
-        $this->getSession()->visit($this->pathTo('/basic_get_form.php'));
-        $webAssert = $this->getAssertSession();
-
-        $page = $this->getSession()->getPage();
-        $this->assertEquals('Basic Get Form Page', $webAssert->elementExists('css', 'h1')->getText());
-
-        $search = $webAssert->fieldExists('q');
-        $search->setValue('some#query');
-        $page->pressButton('Find');
-
-        $div = $webAssert->elementExists('css', 'div');
-        $this->assertEquals('some#query', $div->getText());
-    }
-
-    public function testAdvancedForm()
-    {
-        $this->getSession()->visit($this->pathTo('/advanced_form.html'));
-        $page = $this->getSession()->getPage();
-
-        $page->fillField('first_name', 'ever');
-        $page->fillField('last_name', 'zet');
-
-        $page->pressButton('Register');
-
-        $this->assertContains('no file', $page->getContent());
-
-        $this->getSession()->visit($this->pathTo('/advanced_form.html'));
-
-        $webAssert = $this->getAssertSession();
-        $page = $this->getSession()->getPage();
-        $this->assertEquals('ADvanced Form Page', $webAssert->elementExists('css', 'h1')->getText());
-
-        $firstname = $webAssert->fieldExists('first_name');
-        $lastname = $webAssert->fieldExists('lastn');
-        $email = $webAssert->fieldExists('Your email:');
-        $select = $webAssert->fieldExists('select_number');
-        $sex = $webAssert->fieldExists('sex');
-        $maillist = $webAssert->fieldExists('mail_list');
-        $agreement = $webAssert->fieldExists('agreement');
-        $notes = $webAssert->fieldExists('notes');
-        $about = $webAssert->fieldExists('about');
-
-        $this->assertEquals('Firstname', $firstname->getValue());
-        $this->assertEquals('Lastname', $lastname->getValue());
-        $this->assertEquals('your@email.com', $email->getValue());
-        $this->assertEquals('20', $select->getValue());
-        $this->assertEquals('w', $sex->getValue());
-        $this->assertEquals('original notes', $notes->getValue());
-
-        $this->assertEquals('on', $maillist->getValue());
-        $this->assertNull($agreement->getValue());
-
-        $this->assertTrue($maillist->isChecked());
-        $this->assertFalse($agreement->isChecked());
-
-        $agreement->check();
-        $this->assertTrue($agreement->isChecked());
-
-        $maillist->uncheck();
-        $this->assertFalse($maillist->isChecked());
-
-        $select->selectOption('thirty');
-        $this->assertEquals('30', $select->getValue());
-
-        $sex->selectOption('m');
-        $this->assertEquals('m', $sex->getValue());
-
-        $notes->setValue('new notes');
-        $this->assertEquals('new notes', $notes->getValue());
-
-        $about->attachFile($this->mapRemoteFilePath(__DIR__.'/../../web-fixtures/some_file.txt'));
-
-        $button = $page->findButton('Register');
-        $this->assertNotNull($button);
-
-        $page->fillField('first_name', 'Foo "item"');
-        $page->fillField('last_name', 'Bar');
-        $page->fillField('Your email:', 'ever.zet@gmail.com');
-
-        $this->assertEquals('Foo "item"', $firstname->getValue());
-        $this->assertEquals('Bar', $lastname->getValue());
-
-        $button->press();
-
-        if ($this->safePageWait(5000, 'document.getElementsByTagName("title") !== null')) {
-            $out = <<<OUT
-array (
-  'agreement' = 'on',
-  'email' = 'ever.zet@gmail.com',
-  'first_name' = 'Foo "item"',
-  'last_name' = 'Bar',
-  'notes' = 'new notes',
-  'select_number' = '30',
-  'sex' = 'm',
-  'submit' = 'Register',
-)
-some_file.txt
-1 uploaded file
-OUT;
-            $this->assertContains($out, $page->getContent());
-        }
-    }
-
-    public function testMultiInput()
-    {
-        $this->getSession()->visit($this->pathTo('/multi_input_form.html'));
-        $page = $this->getSession()->getPage();
-        $webAssert = $this->getAssertSession();
-        $this->assertEquals('Multi input Test', $webAssert->elementExists('css', 'h1')->getText());
-
-        $first = $webAssert->fieldExists('First');
-        $second = $webAssert->fieldExists('Second');
-        $third = $webAssert->fieldExists('Third');
-
-        $this->assertEquals('tag1', $first->getValue());
-        $this->assertSame('tag2', $second->getValue());
-        $this->assertEquals('tag1', $third->getValue());
-
-        $first->setValue('tag2');
-        $this->assertEquals('tag2', $first->getValue());
-        $this->assertSame('tag2', $second->getValue());
-        $this->assertEquals('tag1', $third->getValue());
-
-        $second->setValue('one');
-
-        $this->assertEquals('tag2', $first->getValue());
-        $this->assertSame('one', $second->getValue());
-
-        $third->setValue('tag3');
-
-        $this->assertEquals('tag2', $first->getValue());
-        $this->assertSame('one', $second->getValue());
-        $this->assertEquals('tag3', $third->getValue());
-
-        $button = $page->findButton('Register');
-        $this->assertNotNull($button);
-        $button->press();
-
-        $space = ' ';
-        $out = <<<OUT
-  'tags' =$space
-  array (
-    0 = 'tag2',
-    1 = 'one',
-    2 = 'tag3',
-  ),
-OUT;
-        $this->assertContains($out, $page->getContent());
-    }
-
-    public function testAdvancedFormSecondSubmit()
-    {
-        $this->getSession()->visit($this->pathTo('/advanced_form.html'));
-        $page = $this->getSession()->getPage();
-
-        $button = $page->findButton('Login');
-        $this->assertNotNull($button);
-        $button->press();
-
-        $toSearch = array(
-            "'agreement' = 'off',",
-            "'submit' = 'Login',",
-            'no file',
-        );
-
-        $pageContent = $page->getContent();
-
-        foreach ($toSearch as $searchString) {
-            $this->assertContains($searchString, $pageContent);
-        }
-    }
-
-    public function testSubmitEmptyTextarea()
-    {
-        $this->getSession()->visit($this->pathTo('/empty_textarea.html'));
-        $page = $this->getSession()->getPage();
-
-        $page->pressButton('Save');
-
-        $toSearch = array(
-            "'textarea' = '',",
-            "'submit' = 'Save',",
-            'no file',
-        );
-
-        $pageContent = $page->getContent();
-
-        foreach ($toSearch as $searchString) {
-            $this->assertContains($searchString, $pageContent);
-        }
-    }
-}
diff --git a/vendor/behat/mink/driver-testsuite/tests/Form/Html5Test.php b/vendor/behat/mink/driver-testsuite/tests/Form/Html5Test.php
deleted file mode 100644
index b7f4716..0000000
--- a/vendor/behat/mink/driver-testsuite/tests/Form/Html5Test.php
+++ /dev/null
@@ -1,128 +0,0 @@
-<?php
-
-namespace Behat\Mink\Tests\Driver\Form;
-
-use Behat\Mink\Tests\Driver\TestCase;
-
-class Html5Test extends TestCase
-{
-    public function testHtml5FormInputAttribute()
-    {
-        $this->getSession()->visit($this->pathTo('/html5_form.html'));
-        $page = $this->getSession()->getPage();
-        $webAssert = $this->getAssertSession();
-
-        $firstName = $webAssert->fieldExists('first_name');
-        $lastName = $webAssert->fieldExists('last_name');
-
-        $this->assertEquals('not set', $lastName->getValue());
-        $firstName->setValue('John');
-        $lastName->setValue('Doe');
-
-        $this->assertEquals('Doe', $lastName->getValue());
-
-        $page->pressButton('Submit in form');
-
-        if ($this->safePageWait(5000, 'document.getElementsByTagName("title") !== null')) {
-            $out = <<<OUT
-  'first_name' = 'John',
-  'last_name' = 'Doe',
-OUT;
-            $this->assertContains($out, $page->getContent());
-            $this->assertNotContains('other_field', $page->getContent());
-        }
-    }
-
-    public function testHtml5FormRadioAttribute()
-    {
-        $this->getSession()->visit($this->pathTo('html5_radio.html'));
-        $page = $this->getSession()->getPage();
-
-        $radio = $this->findById('sex_f');
-        $otherRadio = $this->findById('sex_invalid');
-
-        $this->assertEquals('f', $radio->getValue());
-        $this->assertEquals('invalid', $otherRadio->getValue());
-
-        $radio->selectOption('m');
-
-        $this->assertEquals('m', $radio->getValue());
-        $this->assertEquals('invalid', $otherRadio->getValue());
-
-        $page->pressButton('Submit in form');
-
-        $out = <<<OUT
-  'sex' = 'm',
-OUT;
-        $this->assertContains($out, $page->getContent());
-    }
-
-    public function testHtml5FormButtonAttribute()
-    {
-        $this->getSession()->visit($this->pathTo('/html5_form.html'));
-        $page = $this->getSession()->getPage();
-        $webAssert = $this->getAssertSession();
-
-        $firstName = $webAssert->fieldExists('first_name');
-        $lastName = $webAssert->fieldExists('last_name');
-
-        $firstName->setValue('John');
-        $lastName->setValue('Doe');
-
-        $page->pressButton('Submit outside form');
-
-        if ($this->safePageWait(5000, 'document.getElementsByTagName("title") !== null')) {
-            $out = <<<OUT
-  'first_name' = 'John',
-  'last_name' = 'Doe',
-  'submit_button' = 'test',
-OUT;
-            $this->assertContains($out, $page->getContent());
-        }
-    }
-
-    public function testHtml5FormOutside()
-    {
-        $this->getSession()->visit($this->pathTo('/html5_form.html'));
-        $page = $this->getSession()->getPage();
-
-        $page->fillField('other_field', 'hello');
-
-        $page->pressButton('Submit separate form');
-
-        if ($this->safePageWait(5000, 'document.getElementsByTagName("title") !== null')) {
-            $out = <<<OUT
-  'other_field' = 'hello',
-OUT;
-            $this->assertContains($out, $page->getContent());
-            $this->assertNotContains('first_name', $page->getContent());
-        }
-    }
-
-    public function testHtml5Types()
-    {
-        $this->getSession()->visit($this->pathTo('html5_types.html'));
-        $page = $this->getSession()->getPage();
-
-        $page->fillField('url', 'http://mink.behat.org/');
-        $page->fillField('email', 'mink@example.org');
-        $page->fillField('number', '6');
-        $page->fillField('search', 'mink');
-        $page->fillField('date', '2014-05-19');
-        $page->fillField('color', '#ff00aa');
-
-        $page->pressButton('Submit');
-
-        $out = <<<OUT
-  'color' = '#ff00aa',
-  'date' = '2014-05-19',
-  'email' = 'mink@example.org',
-  'number' = '6',
-  'search' = 'mink',
-  'submit_button' = 'Submit',
-  'url' = 'http://mink.behat.org/',
-OUT;
-
-        $this->assertContains($out, $page->getContent());
-    }
-}
diff --git a/vendor/behat/mink/driver-testsuite/tests/Form/RadioTest.php b/vendor/behat/mink/driver-testsuite/tests/Form/RadioTest.php
deleted file mode 100644
index b21ab7d..0000000
--- a/vendor/behat/mink/driver-testsuite/tests/Form/RadioTest.php
+++ /dev/null
@@ -1,84 +0,0 @@
-<?php
-
-namespace Behat\Mink\Tests\Driver\Form;
-
-use Behat\Mink\Tests\Driver\TestCase;
-
-class RadioTest extends TestCase
-{
-    protected function setUp()
-    {
-        $this->getSession()->visit($this->pathTo('radio.html'));
-    }
-
-    public function testIsChecked()
-    {
-        $option = $this->findById('first');
-        $option2 = $this->findById('second');
-
-        $this->assertTrue($option->isChecked());
-        $this->assertFalse($option2->isChecked());
-
-        $option2->selectOption('updated');
-
-        $this->assertFalse($option->isChecked());
-        $this->assertTrue($option2->isChecked());
-    }
-
-    public function testSelectOption()
-    {
-        $option = $this->findById('first');
-
-        $this->assertEquals('set', $option->getValue());
-
-        $option->selectOption('updated');
-
-        $this->assertEquals('updated', $option->getValue());
-
-        $option->selectOption('set');
-
-        $this->assertEquals('set', $option->getValue());
-    }
-
-    public function testSetValue()
-    {
-        $option = $this->findById('first');
-
-        $this->assertEquals('set', $option->getValue());
-
-        $option->setValue('updated');
-
-        $this->assertEquals('updated', $option->getValue());
-        $this->assertFalse($option->isChecked());
-    }
-
-    public function testSameNameInMultipleForms()
-    {
-        $option1 = $this->findById('reused_form1');
-        $option2 = $this->findById('reused_form2');
-
-        $this->assertEquals('test2', $option1->getValue());
-        $this->assertEquals('test3', $option2->getValue());
-
-        $option1->selectOption('test');
-
-        $this->assertEquals('test', $option1->getValue());
-        $this->assertEquals('test3', $option2->getValue());
-    }
-
-    /**
-     * @see https://github.com/Behat/MinkSahiDriver/issues/32
-     */
-    public function testSetValueXPathEscaping()
-    {
-        $session = $this->getSession();
-        $session->visit($this->pathTo('/advanced_form.html'));
-        $page = $session->getPage();
-
-        $sex = $page->find('xpath', '//*[@name = "sex"]'."\n|\n".'//*[@id = "sex"]');
-        $this->assertNotNull($sex, 'xpath with line ending works');
-
-        $sex->setValue('m');
-        $this->assertEquals('m', $sex->getValue(), 'no double xpath escaping during radio button value change');
-    }
-}
diff --git a/vendor/behat/mink/driver-testsuite/tests/Form/SelectTest.php b/vendor/behat/mink/driver-testsuite/tests/Form/SelectTest.php
deleted file mode 100644
index f06d5f0..0000000
--- a/vendor/behat/mink/driver-testsuite/tests/Form/SelectTest.php
+++ /dev/null
@@ -1,134 +0,0 @@
-<?php
-
-namespace Behat\Mink\Tests\Driver\Form;
-
-use Behat\Mink\Tests\Driver\TestCase;
-
-class SelectTest extends TestCase
-{
-    public function testMultiselect()
-    {
-        $this->getSession()->visit($this->pathTo('/multiselect_form.html'));
-        $webAssert = $this->getAssertSession();
-        $page = $this->getSession()->getPage();
-        $this->assertEquals('Multiselect Test', $webAssert->elementExists('css', 'h1')->getText());
-
-        $select = $webAssert->fieldExists('select_number');
-        $multiSelect = $webAssert->fieldExists('select_multiple_numbers[]');
-        $secondMultiSelect = $webAssert->fieldExists('select_multiple_values[]');
-
-        $this->assertEquals('20', $select->getValue());
-        $this->assertSame(array(), $multiSelect->getValue());
-        $this->assertSame(array('2', '3'), $secondMultiSelect->getValue());
-
-        $select->selectOption('thirty');
-        $this->assertEquals('30', $select->getValue());
-
-        $multiSelect->selectOption('one', true);
-
-        $this->assertSame(array('1'), $multiSelect->getValue());
-
-        $multiSelect->selectOption('three', true);
-
-        $this->assertEquals(array('1', '3'), $multiSelect->getValue());
-
-        $secondMultiSelect->selectOption('two');
-        $this->assertSame(array('2'), $secondMultiSelect->getValue());
-
-        $button = $page->findButton('Register');
-        $this->assertNotNull($button);
-        $button->press();
-
-        $space = ' ';
-        $out = <<<OUT
-  'agreement' = 'off',
-  'select_multiple_numbers' =$space
-  array (
-    0 = '1',
-    1 = '3',
-  ),
-  'select_multiple_values' =$space
-  array (
-    0 = '2',
-  ),
-  'select_number' = '30',
-OUT;
-        $this->assertContains($out, $page->getContent());
-    }
-
-    /**
-     * @dataProvider testElementSelectedStateCheckDataProvider
-     */
-    public function testElementSelectedStateCheck($selectName, $optionValue, $optionText)
-    {
-        $session = $this->getSession();
-        $webAssert = $this->getAssertSession();
-        $session->visit($this->pathTo('/multiselect_form.html'));
-        $select = $webAssert->fieldExists($selectName);
-
-        $option = $webAssert->elementExists('named', array('option', $optionValue));
-
-        $this->assertFalse($option->isSelected());
-        $select->selectOption($optionText);
-        $this->assertTrue($option->isSelected());
-    }
-
-    public function testElementSelectedStateCheckDataProvider()
-    {
-        return array(
-            array('select_number', '30', 'thirty'),
-            array('select_multiple_numbers[]', '2', 'two'),
-        );
-    }
-
-    public function testSetValueSingleSelect()
-    {
-        $session = $this->getSession();
-        $session->visit($this->pathTo('/multiselect_form.html'));
-        $select = $this->getAssertSession()->fieldExists('select_number');
-
-        $select->setValue('10');
-        $this->assertEquals('10', $select->getValue());
-    }
-
-    public function testSetValueMultiSelect()
-    {
-        $session = $this->getSession();
-        $session->visit($this->pathTo('/multiselect_form.html'));
-        $select = $this->getAssertSession()->fieldExists('select_multiple_values[]');
-
-        $select->setValue(array('1', '2'));
-        $this->assertEquals(array('1', '2'), $select->getValue());
-    }
-
-    /**
-     * @see https://github.com/Behat/Mink/issues/193
-     */
-    public function testOptionWithoutValue()
-    {
-        $session = $this->getSession();
-        $session->visit($this->pathTo('/issue193.html'));
-
-        $session->getPage()->selectFieldOption('options-without-values', 'Two');
-        $this->assertEquals('Two', $this->findById('options-without-values')->getValue());
-
-        $this->assertTrue($this->findById('two')->isSelected());
-        $this->assertFalse($this->findById('one')->isSelected());
-
-        $session->getPage()->selectFieldOption('options-with-values', 'two');
-        $this->assertEquals('two', $this->findById('options-with-values')->getValue());
-    }
-
-    /**
-     * @see https://github.com/Behat/Mink/issues/131
-     */
-    public function testAccentuatedOption()
-    {
-        $this->getSession()->visit($this->pathTo('/issue131.html'));
-        $page = $this->getSession()->getPage();
-
-        $page->selectFieldOption('foobar', 'Gimme some accentués characters');
-
-        $this->assertEquals('1', $page->findField('foobar')->getValue());
-    }
-}
diff --git a/vendor/behat/mink/driver-testsuite/tests/Js/ChangeEventTest.php b/vendor/behat/mink/driver-testsuite/tests/Js/ChangeEventTest.php
deleted file mode 100644
index 4c8a30f..0000000
--- a/vendor/behat/mink/driver-testsuite/tests/Js/ChangeEventTest.php
+++ /dev/null
@@ -1,155 +0,0 @@
-<?php
-
-namespace Behat\Mink\Tests\Driver\Js;
-
-use Behat\Mink\Tests\Driver\TestCase;
-
-/**
- * @group slow
- */
-class ChangeEventTest extends TestCase
-{
-    /**
-     * 'change' event should be fired after selecting an <option> in a <select>.
-     *
-     * TODO check whether this test is redundant with other change event tests.
-     */
-    public function testIssue255()
-    {
-        $session = $this->getSession();
-        $session->visit($this->pathTo('/issue255.html'));
-
-        $session->getPage()->selectFieldOption('foo_select', 'Option 3');
-
-        $session->wait(2000, '$("#output_foo_select").text() != ""');
-        $this->assertEquals('onChangeSelect', $this->getAssertSession()->elementExists('css', '#output_foo_select')->getText());
-    }
-
-    public function testIssue178()
-    {
-        $session = $this->getSession();
-        $session->visit($this->pathTo('/issue178.html'));
-
-        $this->findById('source')->setValue('foo');
-        $this->assertEquals('foo', $this->findById('target')->getText());
-    }
-
-    /**
-     * @dataProvider setValueChangeEventDataProvider
-     * @group change-event-detector
-     */
-    public function testSetValueChangeEvent($elementId, $valueForEmpty, $valueForFilled = '')
-    {
-        $this->getSession()->visit($this->pathTo('/element_change_detector.html'));
-        $page = $this->getSession()->getPage();
-
-        $input = $this->findById($elementId);
-        $this->assertNull($page->findById($elementId.'-result'));
-
-        // Verify setting value, when control is initially empty.
-        $input->setValue($valueForEmpty);
-        $this->assertElementChangeCount($elementId, 'initial value setting triggers change event');
-
-        if ($valueForFilled) {
-            // Verify setting value, when control already has a value.
-            $this->findById('results')->click();
-            $input->setValue($valueForFilled);
-            $this->assertElementChangeCount($elementId, 'value change triggers change event');
-        }
-    }
-
-    public function setValueChangeEventDataProvider()
-    {
-        return array(
-            'input default' => array('the-input-default', 'from empty', 'from existing'),
-            'input text' => array('the-input-text', 'from empty', 'from existing'),
-            'input email' => array('the-email', 'from empty', 'from existing'),
-            'textarea' => array('the-textarea', 'from empty', 'from existing'),
-            'file' => array('the-file', 'from empty', 'from existing'),
-            'select' => array('the-select', '30'),
-            'radio' => array('the-radio-m', 'm'),
-        );
-    }
-
-    /**
-     * @dataProvider selectOptionChangeEventDataProvider
-     * @group change-event-detector
-     */
-    public function testSelectOptionChangeEvent($elementId, $elementValue)
-    {
-        $this->getSession()->visit($this->pathTo('/element_change_detector.html'));
-        $page = $this->getSession()->getPage();
-
-        $input = $this->findById($elementId);
-        $this->assertNull($page->findById($elementId.'-result'));
-
-        $input->selectOption($elementValue);
-        $this->assertElementChangeCount($elementId);
-    }
-
-    public function selectOptionChangeEventDataProvider()
-    {
-        return array(
-            'select' => array('the-select', '30'),
-            'radio' => array('the-radio-m', 'm'),
-        );
-    }
-
-    /**
-     * @dataProvider checkboxTestWayDataProvider
-     * @group change-event-detector
-     */
-    public function testCheckChangeEvent($useSetValue)
-    {
-        $this->getSession()->visit($this->pathTo('/element_change_detector.html'));
-        $page = $this->getSession()->getPage();
-
-        $checkbox = $this->findById('the-unchecked-checkbox');
-        $this->assertNull($page->findById('the-unchecked-checkbox-result'));
-
-        if ($useSetValue) {
-            $checkbox->setValue(true);
-        } else {
-            $checkbox->check();
-        }
-
-        $this->assertElementChangeCount('the-unchecked-checkbox');
-    }
-
-    /**
-     * @dataProvider checkboxTestWayDataProvider
-     * @group change-event-detector
-     */
-    public function testUncheckChangeEvent($useSetValue)
-    {
-        $this->getSession()->visit($this->pathTo('/element_change_detector.html'));
-        $page = $this->getSession()->getPage();
-
-        $checkbox = $this->findById('the-checked-checkbox');
-        $this->assertNull($page->findById('the-checked-checkbox-result'));
-
-        if ($useSetValue) {
-            $checkbox->setValue(false);
-        } else {
-            $checkbox->uncheck();
-        }
-
-        $this->assertElementChangeCount('the-checked-checkbox');
-    }
-
-    public function checkboxTestWayDataProvider()
-    {
-        return array(
-            array(true),
-            array(false),
-        );
-    }
-
-    private function assertElementChangeCount($elementId, $message = '')
-    {
-        $counterElement = $this->getSession()->getPage()->findById($elementId.'-result');
-        $actualCount = null === $counterElement ? 0 : $counterElement->getText();
-
-        $this->assertEquals('1', $actualCount, $message);
-    }
-}
diff --git a/vendor/behat/mink/driver-testsuite/tests/Js/EventsTest.php b/vendor/behat/mink/driver-testsuite/tests/Js/EventsTest.php
deleted file mode 100644
index f06999b..0000000
--- a/vendor/behat/mink/driver-testsuite/tests/Js/EventsTest.php
+++ /dev/null
@@ -1,122 +0,0 @@
-<?php
-
-namespace Behat\Mink\Tests\Driver\Js;
-
-use Behat\Mink\Tests\Driver\TestCase;
-
-class EventsTest extends TestCase
-{
-    /**
-     * @group mouse-events
-     */
-    public function testClick()
-    {
-        $this->getSession()->visit($this->pathTo('/js_test.html'));
-        $clicker = $this->getAssertSession()->elementExists('css', '.elements div#clicker');
-        $this->assertEquals('not clicked', $clicker->getText());
-
-        $clicker->click();
-        $this->assertEquals('single clicked', $clicker->getText());
-    }
-
-    /**
-     * @group mouse-events
-     */
-    public function testDoubleClick()
-    {
-        $this->getSession()->visit($this->pathTo('/js_test.html'));
-        $clicker = $this->getAssertSession()->elementExists('css', '.elements div#clicker');
-        $this->assertEquals('not clicked', $clicker->getText());
-
-        $clicker->doubleClick();
-        $this->assertEquals('double clicked', $clicker->getText());
-    }
-
-    /**
-     * @group mouse-events
-     */
-    public function testRightClick()
-    {
-        $this->getSession()->visit($this->pathTo('/js_test.html'));
-        $clicker = $this->getAssertSession()->elementExists('css', '.elements div#clicker');
-        $this->assertEquals('not clicked', $clicker->getText());
-
-        $clicker->rightClick();
-        $this->assertEquals('right clicked', $clicker->getText());
-    }
-
-    /**
-     * @group mouse-events
-     */
-    public function testFocus()
-    {
-        $this->getSession()->visit($this->pathTo('/js_test.html'));
-        $focusBlurDetector = $this->getAssertSession()->elementExists('css', '.elements input#focus-blur-detector');
-        $this->assertEquals('no action detected', $focusBlurDetector->getValue());
-
-        $focusBlurDetector->focus();
-        $this->assertEquals('focused', $focusBlurDetector->getValue());
-    }
-
-    /**
-     * @group mouse-events
-     * @depends testFocus
-     */
-    public function testBlur()
-    {
-        $this->getSession()->visit($this->pathTo('/js_test.html'));
-        $focusBlurDetector = $this->getAssertSession()->elementExists('css', '.elements input#focus-blur-detector');
-        $this->assertEquals('no action detected', $focusBlurDetector->getValue());
-
-        $focusBlurDetector->blur();
-        $this->assertEquals('blured', $focusBlurDetector->getValue());
-    }
-
-    /**
-     * @group mouse-events
-     */
-    public function testMouseOver()
-    {
-        $this->getSession()->visit($this->pathTo('/js_test.html'));
-        $mouseOverDetector = $this->getAssertSession()->elementExists('css', '.elements div#mouseover-detector');
-        $this->assertEquals('no mouse action detected', $mouseOverDetector->getText());
-
-        $mouseOverDetector->mouseOver();
-        $this->assertEquals('mouse overed', $mouseOverDetector->getText());
-    }
-
-    /**
-     * @dataProvider provideKeyboardEventsModifiers
-     */
-    public function testKeyboardEvents($modifier, $eventProperties)
-    {
-        $this->getSession()->visit($this->pathTo('/js_test.html'));
-        $webAssert = $this->getAssertSession();
-
-        $input1 = $webAssert->elementExists('css', '.elements input.input.first');
-        $input2 = $webAssert->elementExists('css', '.elements input.input.second');
-        $input3 = $webAssert->elementExists('css', '.elements input.input.third');
-        $event = $webAssert->elementExists('css', '.elements .text-event');
-
-        $input1->keyDown('u', $modifier);
-        $this->assertEquals('key downed:'.$eventProperties, $event->getText());
-
-        $input2->keyPress('r', $modifier);
-        $this->assertEquals('key pressed:114 / '.$eventProperties, $event->getText());
-
-        $input3->keyUp(78, $modifier);
-        $this->assertEquals('key upped:78 / '.$eventProperties, $event->getText());
-    }
-
-    public function provideKeyboardEventsModifiers()
-    {
-        return array(
-            'none' => array(null, '0 / 0 / 0 / 0'),
-            'alt' => array('alt', '1 / 0 / 0 / 0'),
-             // jQuery considers ctrl as being a metaKey in the normalized event
-            'ctrl' => array('ctrl', '0 / 1 / 0 / 1'),
-            'shift' => array('shift', '0 / 0 / 1 / 0'),
-            'meta' => array('meta', '0 / 0 / 0 / 1'),
-        );
-    }
-}
diff --git a/vendor/behat/mink/driver-testsuite/tests/Js/JavascriptEvaluationTest.php b/vendor/behat/mink/driver-testsuite/tests/Js/JavascriptEvaluationTest.php
deleted file mode 100644
index ab6ab27..0000000
--- a/vendor/behat/mink/driver-testsuite/tests/Js/JavascriptEvaluationTest.php
+++ /dev/null
@@ -1,85 +0,0 @@
-<?php
-
-namespace Behat\Mink\Tests\Driver\Js;
-
-use Behat\Mink\Tests\Driver\TestCase;
-
-class JavascriptEvaluationTest extends TestCase
-{
-    /**
-     * Tests, that `wait` method returns check result after exit.
-     */
-    public function testWaitReturnValue()
-    {
-        $this->getSession()->visit($this->pathTo('/js_test.html'));
-
-        $found = $this->getSession()->wait(5000, '$("#draggable").length == 1');
-        $this->assertTrue($found);
-    }
-
-    public function testWait()
-    {
-        $this->getSession()->visit($this->pathTo('/js_test.html'));
-
-        $waitable = $this->findById('waitable');
-
-        $waitable->click();
-        $this->getSession()->wait(3000, '$("#waitable").has("div").length > 0');
-        $this->assertEquals('arrived', $this->getAssertSession()->elementExists('css', '#waitable > div')->getText());
-
-        $waitable->click();
-        $this->getSession()->wait(3000, 'false');
-        $this->assertEquals('timeout', $this->getAssertSession()->elementExists('css', '#waitable > div')->getText());
-    }
-
-    /**
-     * @dataProvider provideExecutedScript
-     */
-    public function testExecuteScript($script)
-    {
-        $this->getSession()->visit($this->pathTo('/index.html'));
-
-        $this->getSession()->executeScript($script);
-
-        sleep(1);
-
-        $heading = $this->getAssertSession()->elementExists('css', 'h1');
-        $this->assertEquals('Hello world', $heading->getText());
-    }
-
-    public function provideExecutedScript()
-    {
-        return array(
-            array('document.querySelector("h1").textContent = "Hello world"'),
-            array('document.querySelector("h1").textContent = "Hello world";'),
-            array('function () {document.querySelector("h1").textContent = "Hello world";}()'),
-            array('function () {document.querySelector("h1").textContent = "Hello world";}();'),
-            array('(function () {document.querySelector("h1").textContent = "Hello world";})()'),
-            array('(function () {document.querySelector("h1").textContent = "Hello world";})();'),
-        );
-    }
-
-    /**
-     * @dataProvider provideEvaluatedScript
-     */
-    public function testEvaluateJavascript($script)
-    {
-        $this->getSession()->visit($this->pathTo('/index.html'));
-
-        $this->assertSame(2, $this->getSession()->evaluateScript($script));
-    }
-
-    public function provideEvaluatedScript()
-    {
-        return array(
-            array('1 + 1'),
-            array('1 + 1;'),
-            array('return 1 + 1'),
-            array('return 1 + 1;'),
-            array('function () {return 1+1;}()'),
-            array('(function () {return 1+1;})()'),
-            array('return function () { return 1+1;}()'),
-            array('return (function () {return 1+1;})()'),
-        );
-    }
-}
diff --git a/vendor/behat/mink/driver-testsuite/tests/Js/JavascriptTest.php b/vendor/behat/mink/driver-testsuite/tests/Js/JavascriptTest.php
deleted file mode 100644
index ea6d77a..0000000
--- a/vendor/behat/mink/driver-testsuite/tests/Js/JavascriptTest.php
+++ /dev/null
@@ -1,42 +0,0 @@
-<?php
-
-namespace Behat\Mink\Tests\Driver\Js;
-
-use Behat\Mink\Tests\Driver\TestCase;
-
-class JavascriptTest extends TestCase
-{
-    public function testAriaRoles()
-    {
-        $this->getSession()->visit($this->pathTo('/aria_roles.html'));
-
-        $this->getSession()->wait(5000, '$("#hidden-element").is(":visible") === false');
-        $this->getSession()->getPage()->pressButton('Toggle');
-        $this->getSession()->wait(5000, '$("#hidden-element").is(":visible") === true');
-
-        $this->getSession()->getPage()->clickLink('Go to Index');
-        $this->assertEquals($this->pathTo('/index.html'), $this->getSession()->getCurrentUrl());
-    }
-
-    public function testDragDrop()
-    {
-        $this->getSession()->visit($this->pathTo('/js_test.html'));
-        $webAssert = $this->getAssertSession();
-
-        $draggable = $webAssert->elementExists('css', '#draggable');
-        $droppable = $webAssert->elementExists('css', '#droppable');
-
-        $draggable->dragTo($droppable);
-        $this->assertEquals('Dropped!', $this->getAssertSession()->elementExists('css', 'p', $droppable)->getText());
-    }
-
-    // test accentuated char in button
-    public function testIssue225()
-    {
-        $this->getSession()->visit($this->pathTo('/issue225.html'));
-        $this->getSession()->getPage()->pressButton('Créer un compte');
-        $this->getSession()->wait(5000, '$("#panel").text() != ""');
-
-        $this->assertContains('OH AIH!', $this->getSession()->getPage()->getText());
-    }
-}
diff --git a/vendor/behat/mink/driver-testsuite/tests/Js/WindowTest.php b/vendor/behat/mink/driver-testsuite/tests/Js/WindowTest.php
deleted file mode 100644
index ca49491..0000000
--- a/vendor/behat/mink/driver-testsuite/tests/Js/WindowTest.php
+++ /dev/null
@@ -1,83 +0,0 @@
-<?php
-
-namespace Behat\Mink\Tests\Driver\Js;
-
-use Behat\Mink\Tests\Driver\TestCase;
-
-class WindowTest extends TestCase
-{
-    public function testWindow()
-    {
-        $this->getSession()->visit($this->pathTo('/window.html'));
-        $session = $this->getSession();
-        $page = $session->getPage();
-        $webAssert = $this->getAssertSession();
-
-        $page->clickLink('Popup #1');
-        $session->switchToWindow(null);
-
-        $page->clickLink('Popup #2');
-        $session->switchToWindow(null);
-
-        $el = $webAssert->elementExists('css', '#text');
-        $this->assertSame('Main window div text', $el->getText());
-
-        $session->switchToWindow('popup_1');
-        $el = $webAssert->elementExists('css', '#text');
-        $this->assertSame('Popup#1 div text', $el->getText());
-
-        $session->switchToWindow('popup_2');
-        $el = $webAssert->elementExists('css', '#text');
-        $this->assertSame('Popup#2 div text', $el->getText());
-
-        $session->switchToWindow(null);
-        $el = $webAssert->elementExists('css', '#text');
-        $this->assertSame('Main window div text', $el->getText());
-    }
-
-    public function testGetWindowNames()
-    {
-        $this->getSession()->visit($this->pathTo('/window.html'));
-        $session = $this->getSession();
-        $page = $session->getPage();
-
-        $windowName = $this->getSession()->getWindowName();
-
-        $this->assertNotNull($windowName);
-
-        $page->clickLink('Popup #1');
-        $page->clickLink('Popup #2');
-
-        $windowNames = $this->getSession()->getWindowNames();
-
-        $this->assertNotNull($windowNames[0]);
-        $this->assertNotNull($windowNames[1]);
-        $this->assertNotNull($windowNames[2]);
-    }
-
-    public function testResizeWindow()
-    {
-        $this->getSession()->visit($this->pathTo('/index.html'));
-        $session = $this->getSession();
-
-        $session->resizeWindow(400, 300);
-        $session->wait(1000, 'false');
-
-        $script = 'return Math.abs(window.outerHeight - 300) <= 100 && Math.abs(window.outerWidth - 400) <= 100;';
-
-        $this->assertTrue($session->evaluateScript($script));
-    }
-
-    public function testWindowMaximize()
-    {
-        $this->getSession()->visit($this->pathTo('/index.html'));
-        $session = $this->getSession();
-
-        $session->maximizeWindow();
-        $session->wait(1000, 'false');
-
-        $script = 'return Math.abs(screen.availHeight - window.outerHeight) <= 100;';
-
-        $this->assertTrue($session->evaluateScript($script));
-    }
-}
diff --git a/vendor/behat/mink/driver-testsuite/tests/TestCase.php b/vendor/behat/mink/driver-testsuite/tests/TestCase.php
deleted file mode 100644
index 964a71f..0000000
--- a/vendor/behat/mink/driver-testsuite/tests/TestCase.php
+++ /dev/null
@@ -1,167 +0,0 @@
-<?php
-
-namespace Behat\Mink\Tests\Driver;
-
-use Behat\Mink\Exception\UnsupportedDriverActionException;
-use Behat\Mink\Mink;
-use Behat\Mink\Session;
-use Behat\Mink\WebAssert;
-
-abstract class TestCase extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * Mink session manager.
-     *
-     * @var Mink
-     */
-    private static $mink;
-
-    /**
-     * @var AbstractConfig
-     */
-    private static $config;
-
-    /**
-     * Initializes the test case.
-     */
-    public static function setUpBeforeClass()
-    {
-        if (null === self::$mink) {
-            $session = new Session(self::getConfig()->createDriver());
-            self::$mink = new Mink(array('sess' => $session));
-        }
-    }
-
-    /**
-     * @return AbstractConfig
-     *
-     * @throws \UnexpectedValueException if the global driver_config_factory returns an invalid object
-     */
-    private static function getConfig()
-    {
-        if (null === self::$config) {
-            self::$config = call_user_func($GLOBALS['driver_config_factory']);
-
-            if (!self::$config instanceof AbstractConfig) {
-                throw new \UnexpectedValueException('The "driver_config_factory" global variable must return a \Behat\Mink\Tests\Driver\AbstractConfig.');
-            }
-        }
-
-        return self::$config;
-    }
-
-    protected function checkRequirements()
-    {
-        if (null !== $message = self::getConfig()->skipMessage(get_class($this), $this->getName(false))) {
-            $this->markTestSkipped($message);
-        }
-
-        parent::checkRequirements();
-    }
-
-    protected function tearDown()
-    {
-        if (null !== self::$mink) {
-            self::$mink->resetSessions();
-        }
-    }
-
-    protected function onNotSuccessfulTest(\Exception $e)
-    {
-        if ($e instanceof UnsupportedDriverActionException) {
-            $this->markTestSkipped($e->getMessage());
-        }
-
-        parent::onNotSuccessfulTest($e);
-    }
-
-    /**
-     * Returns session.
-     *
-     * @return Session
-     */
-    protected function getSession()
-    {
-        return self::$mink->getSession('sess');
-    }
-
-    /**
-     * Returns assert session.
-     *
-     * @return WebAssert
-     */
-    protected function getAssertSession()
-    {
-        return self::$mink->assertSession('sess');
-    }
-
-    /**
-     * @param string $id
-     *
-     * @return \Behat\Mink\Element\NodeElement
-     */
-    protected function findById($id)
-    {
-        return $this->getAssertSession()->elementExists('named', array('id', $id));
-    }
-
-    /**
-     * Creates a new driver instance.
-     *
-     * This driver is not associated to a session. It is meant to be used for tests on the driver
-     * implementation itself rather than test using the Mink API.
-     *
-     * @return \Behat\Mink\Driver\DriverInterface
-     */
-    protected function createDriver()
-    {
-        return self::getConfig()->createDriver();
-    }
-
-    /**
-     * Map remote file path.
-     *
-     * @param string $file File path.
-     *
-     * @return string
-     */
-    protected function mapRemoteFilePath($file)
-    {
-        $realPath = realpath($file);
-
-        if (false !== $realPath) {
-            $file = $realPath;
-        }
-
-        return self::getConfig()->mapRemoteFilePath($file);
-    }
-
-    /**
-     * @param string $path
-     *
-     * @return string
-     */
-    protected function pathTo($path)
-    {
-        return rtrim(self::getConfig()->getWebFixturesUrl(), '/').'/'.ltrim($path, '/');
-    }
-
-    /**
-     * Waits for a condition to be true, considering than it is successful for drivers not supporting wait().
-     *
-     * @param int    $time
-     * @param string $condition A JS condition to evaluate
-     *
-     * @return bool
-     *
-     * @see \Behat\Mink\Session::wait()
-     */
-    protected function safePageWait($time, $condition)
-    {
-        try {
-            return $this->getSession()->wait($time, $condition);
-        } catch (UnsupportedDriverActionException $e) {
-            return true;
-        }
-    }
-}
diff --git a/vendor/behat/mink/driver-testsuite/web-fixtures/404.php b/vendor/behat/mink/driver-testsuite/web-fixtures/404.php
deleted file mode 100644
index d16db99..0000000
--- a/vendor/behat/mink/driver-testsuite/web-fixtures/404.php
+++ /dev/null
@@ -1,2 +0,0 @@
-<?php header("HTTP/1.0 404 Not Found") ?>
-Sorry, page not found
diff --git a/vendor/behat/mink/driver-testsuite/web-fixtures/500.php b/vendor/behat/mink/driver-testsuite/web-fixtures/500.php
deleted file mode 100644
index c43efcb..0000000
--- a/vendor/behat/mink/driver-testsuite/web-fixtures/500.php
+++ /dev/null
@@ -1,2 +0,0 @@
-<?php header("HTTP/1.0 500 Server Error") ?>
-Sorry, a server error happened
diff --git a/vendor/behat/mink/driver-testsuite/web-fixtures/advanced_form.html b/vendor/behat/mink/driver-testsuite/web-fixtures/advanced_form.html
deleted file mode 100644
index a2392c0..0000000
--- a/vendor/behat/mink/driver-testsuite/web-fixtures/advanced_form.html
+++ /dev/null
@@ -1,40 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
-    <title>ADvanced Form</title>
-    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/>
-</head>
-<body>
-    <h1>ADvanced Form Page</h1>
-
-    <form method="POST" enctype="multipart/form-data" action="advanced_form_post.php">
-        <input name="first_name" value="Firstname" type="text" />
-        <input id="lastn" name="last_name" value="Lastname" type="text" />
-        <label for="email">
-            Your email:
-            <input type="email" id="email" name="email" value="your@email.com" />
-        </label>
-
-        <select name="select_number">
-            <option value="10">ten</option>
-            <option selected="selected" value="20">twenty</option>
-            <option value="30">thirty</option>
-        </select>
-
-        <label>
-            <span><input type="radio" name="sex" value="m" /> m</span>
-            <span><input type="radio" name="sex" value="w" checked="checked" /> w</span>
-        </label>
-
-        <input type="checkbox" name="mail_list" checked="checked" value="on"/>
-        <input type="checkbox" name="agreement" value="yes"/>
-
-        <textarea name="notes">original notes</textarea>
-
-        <input type="file" name="about" />
-
-        <input type="submit" name="submit" value="Register" />
-        <input type="submit" name="submit" value="Login" />
-    </form>
-</body>
-</html>
diff --git a/vendor/behat/mink/driver-testsuite/web-fixtures/advanced_form_post.php b/vendor/behat/mink/driver-testsuite/web-fixtures/advanced_form_post.php
deleted file mode 100644
index 755806d..0000000
--- a/vendor/behat/mink/driver-testsuite/web-fixtures/advanced_form_post.php
+++ /dev/null
@@ -1,26 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
-    <title>Advanced form save</title>
-    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
-</head>
-<body>
-<?php
-error_reporting(0);
-
-if (isset($_POST['select_multiple_numbers']) && false !== strpos($_POST['select_multiple_numbers'][0], ',')) {
-    $_POST['select_multiple_numbers'] = explode(',', $_POST['select_multiple_numbers'][0]);
-}
-
-$_POST['agreement'] = isset($_POST['agreement']) ? 'on' : 'off';
-ksort($_POST);
-echo str_replace('>', '', var_export($_POST, true)) . "\n";
-if (isset($_FILES['about']) && file_exists($_FILES['about']['tmp_name'])) {
-    echo $_FILES['about']['name'] . "\n";
-    echo file_get_contents($_FILES['about']['tmp_name']);
-} else {
-    echo "no file";
-}
-?>
-</body>
-</html>
diff --git a/vendor/behat/mink/driver-testsuite/web-fixtures/aria_roles.html b/vendor/behat/mink/driver-testsuite/web-fixtures/aria_roles.html
deleted file mode 100644
index 7074e85..0000000
--- a/vendor/behat/mink/driver-testsuite/web-fixtures/aria_roles.html
+++ /dev/null
@@ -1,30 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
-    <title>ARIA roles test</title>
-    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/>
-</head>
-<body>
-	This page tests selected ARIA roles<br />
-	(see <a href="http://www.w3.org/TR/wai-aria/">http://www.w3.org/TR/wai-aria/</a>)
-
-	<div id="hidden-element-toggle-button" role="button">Toggle</div>
-	<div id="hidden-element" style="display:none;">This content's visibility is changed by clicking the Toggle Button.</div>
-
-	<!-- This link is created programmatically -->
-	<div id="link-element"></div>
-
-    <script language="javascript" type="text/javascript" src="js/jquery-1.6.2-min.js"></script>
-	<script language="javascript" type="text/javascript">
-		$(document).ready(function() {
-			$('#hidden-element-toggle-button').click(function() {
-				$('#hidden-element').toggle();
-			});
-
-			$('#link-element').attr('role', 'link').text('Go to Index').click(function() {
-        window.location.href = 'index.html';
-			});
-		});
-	</script>
-</body>
-</html>
diff --git a/vendor/behat/mink/driver-testsuite/web-fixtures/basic_auth.php b/vendor/behat/mink/driver-testsuite/web-fixtures/basic_auth.php
deleted file mode 100644
index 9620a0e..0000000
--- a/vendor/behat/mink/driver-testsuite/web-fixtures/basic_auth.php
+++ /dev/null
@@ -1,12 +0,0 @@
-<?php
-$username = isset($_SERVER['PHP_AUTH_USER']) ? $_SERVER['PHP_AUTH_USER'] : false;
-$password = isset($_SERVER['PHP_AUTH_PW']) ? $_SERVER['PHP_AUTH_PW'] : false;
-
-if ($username == 'mink-user' && $password == 'mink-password') {
-    echo 'is authenticated';
-} else {
-    header('WWW-Authenticate: Basic realm="Mink Testing Area"');
-    header('HTTP/1.0 401 Unauthorized');
-
-    echo 'is not authenticated';
-}
diff --git a/vendor/behat/mink/driver-testsuite/web-fixtures/basic_form.html b/vendor/behat/mink/driver-testsuite/web-fixtures/basic_form.html
deleted file mode 100644
index 2d330cf..0000000
--- a/vendor/behat/mink/driver-testsuite/web-fixtures/basic_form.html
+++ /dev/null
@@ -1,22 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
-    <title>Basic Form</title>
-    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/>
-</head>
-<body>
-    <h1>Basic Form Page</h1>
-
-    <form method="POST" action="basic_form_post.php">
-        <input name="first_name" value="Firstname" type="text" />
-        <input id="lastn" name="last_name" value="Lastname" type="text" />
-
-        <input type="reset" id="Reset" />
-
-        <input type="submit" id="Save" />
-        <input type="image" id="input-type-image"/>
-        <button>button-without-type</button>
-        <button type="submit">button-type-submit</button>
-    </form>
-</body>
-</html>
diff --git a/vendor/behat/mink/driver-testsuite/web-fixtures/basic_form_post.php b/vendor/behat/mink/driver-testsuite/web-fixtures/basic_form_post.php
deleted file mode 100644
index 8a5e340..0000000
--- a/vendor/behat/mink/driver-testsuite/web-fixtures/basic_form_post.php
+++ /dev/null
@@ -1,13 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
-    <title>Basic Form Saving</title>
-    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/>
-</head>
-<body>
-    <h1>Anket for <?php echo $_POST['first_name'] ?></h1>
-
-    <span id="first">Firstname: <?php echo $_POST['first_name'] ?></span>
-    <span id="last">Lastname: <?php echo $_POST['last_name'] ?></span>
-</body>
-</html>
diff --git a/vendor/behat/mink/driver-testsuite/web-fixtures/basic_get_form.php b/vendor/behat/mink/driver-testsuite/web-fixtures/basic_get_form.php
deleted file mode 100644
index a0b3516..0000000
--- a/vendor/behat/mink/driver-testsuite/web-fixtures/basic_get_form.php
+++ /dev/null
@@ -1,20 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
-    <title>Basic Get Form</title>
-    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/>
-</head>
-<body>
-    <h1>Basic Get Form Page</h1>
-
-    <div id="serach">
-        <?php echo isset($_GET['q']) && $_GET['q'] ? $_GET['q'] : 'No search query' ?>
-    </div>
-
-    <form>
-        <input name="q" value="" type="text" />
-
-        <input type="submit" value="Find" />
-    </form>
-</body>
-</html>
diff --git a/vendor/behat/mink/driver-testsuite/web-fixtures/cookie_page1.php b/vendor/behat/mink/driver-testsuite/web-fixtures/cookie_page1.php
deleted file mode 100644
index 7f128ca..0000000
--- a/vendor/behat/mink/driver-testsuite/web-fixtures/cookie_page1.php
+++ /dev/null
@@ -1,21 +0,0 @@
-<?php
-if (!isset($cookieAtRootPath)) {
-    $cookieAtRootPath = true;
-}
-
-if (!isset($cookieValue)) {
-    $cookieValue = 'srv_var_is_set';
-}
-
-setcookie('srvr_cookie', $cookieValue, null, $cookieAtRootPath ? '/' : null);
-?>
-<!DOCTYPE html>
-<html>
-<head>
-    <title>Basic Form</title>
-    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/>
-</head>
-<body>
-    Basic Page With Cookie Set from Server Side
-</body>
-</html>
diff --git a/vendor/behat/mink/driver-testsuite/web-fixtures/cookie_page2.php b/vendor/behat/mink/driver-testsuite/web-fixtures/cookie_page2.php
deleted file mode 100644
index 22bcd1b..0000000
--- a/vendor/behat/mink/driver-testsuite/web-fixtures/cookie_page2.php
+++ /dev/null
@@ -1,10 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
-    <title>Basic Form</title>
-    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/>
-</head>
-<body>
-    Previous cookie: <?php echo isset($_COOKIE['srvr_cookie']) ? $_COOKIE['srvr_cookie'] : 'NO'; ?>
-</body>
-</html>
diff --git a/vendor/behat/mink/driver-testsuite/web-fixtures/cookie_page3.php b/vendor/behat/mink/driver-testsuite/web-fixtures/cookie_page3.php
deleted file mode 100644
index caa28bc..0000000
--- a/vendor/behat/mink/driver-testsuite/web-fixtures/cookie_page3.php
+++ /dev/null
@@ -1,16 +0,0 @@
-<?php
-
-$hasCookie = isset($_COOKIE['foo']);
-setcookie('foo', 'bar', 0, '/', null, false, true);
-
-?>
-<!DOCTYPE html>
-<html>
-<head>
-    <title>HttpOnly Cookie Test</title>
-    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/>
-</head>
-<body>
-	<div id="cookie-status">Has Cookie: <?php echo json_encode($hasCookie) ?></div>
-</body>
-</html>
diff --git a/vendor/behat/mink/driver-testsuite/web-fixtures/css_mouse_events.html b/vendor/behat/mink/driver-testsuite/web-fixtures/css_mouse_events.html
deleted file mode 100644
index 750ca54..0000000
--- a/vendor/behat/mink/driver-testsuite/web-fixtures/css_mouse_events.html
+++ /dev/null
@@ -1,36 +0,0 @@
-<!DOCTYPE html>
-<html lang="en">
-    <head>
-        <title>CSS Mouse Events Testing</title>
-        <style type="text/css">
-            .squares div {
-                width: 100px;
-                height: 100px;
-                border: 1px solid black;
-                margin-right: 4px;
-                float: left;
-            }
-
-            .squares div:hover {
-                height: 200px;
-                background-color: red;
-            }
-        </style>
-
-        <script language="javascript" type="text/javascript" src="js/jquery-1.6.2-min.js"></script>
-    </head>
-
-    <body>
-        <div class="squares">
-            <div id="reset-square">reset</div>
-            <div id="action-square">mouse action</div>
-        </div>
-        <script>
-            $('#action-square').bind('contextmenu', function (e) {
-                // Prevent opening the context menu on right click as the browser might consider the
-                // mouse is in the context menu rather than hovering the element
-                e.preventDefault();
-            });
-        </script>
-    </body>
-</html>
diff --git a/vendor/behat/mink/driver-testsuite/web-fixtures/element_change_detector.html b/vendor/behat/mink/driver-testsuite/web-fixtures/element_change_detector.html
deleted file mode 100644
index c309bae..0000000
--- a/vendor/behat/mink/driver-testsuite/web-fixtures/element_change_detector.html
+++ /dev/null
@@ -1,65 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
-    <title>ADvanced Form</title>
-    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/>
-    <script src="js/jquery-1.6.2-min.js"></script>
-</head>
-<body>
-    <h1>ADvanced Form Page</h1>
-
-    <form method="POST" enctype="multipart/form-data" action="advanced_form_post.php">
-        <input id="the-input-default" value="" />
-        <input type="text" id="the-input-text" value="" />
-        <input type="email" id="the-email" value="" />
-
-        <select id="the-select">
-            <option value="10">ten</option>
-            <option value="20" selected="selected">twenty</option>
-            <option value="30">thirty</option>
-        </select>
-
-        <label>
-            <span><input type="radio" name="sex" id="the-radio-m" value="m" /> m</span>
-            <span><input type="radio" name="sex" id="the-radio-w" value="w" checked="checked" /> w</span>
-        </label>
-
-        <input type="checkbox" id="the-checked-checkbox" value="cb-val" checked/>
-        <input type="checkbox" id="the-unchecked-checkbox" value="cb-val"/>
-
-        <textarea id="the-textarea"></textarea>
-
-        <input type="file" id="the-file" />
-    </form>
-
-    <ul id="results" style="border: 1px solid red;">
-        <li>for easy element location</li>
-    </ul>
-
-    <script type="text/javascript">
-        $(document).ready(function () {
-            var $change_registry = {},
-                $results = $('#results');
-
-            $(':input').change(function () {
-                var $result_id = this.id + '-result';
-
-                if (!$change_registry[this.id]) {
-                    $change_registry[this.id] = 1;
-                    $results.append('<li id="' + $result_id + '"></li>');
-                }
-                else {
-                    $change_registry[this.id]++;
-                }
-
-                $('#' + $result_id).text($change_registry[this.id]);
-            });
-
-            $results.click(function () {
-                $results.empty();
-                $change_registry = {};
-            });
-        });
-    </script>
-</body>
-</html>
diff --git a/vendor/behat/mink/driver-testsuite/web-fixtures/empty_textarea.html b/vendor/behat/mink/driver-testsuite/web-fixtures/empty_textarea.html
deleted file mode 100644
index f0779ee..0000000
--- a/vendor/behat/mink/driver-testsuite/web-fixtures/empty_textarea.html
+++ /dev/null
@@ -1,14 +0,0 @@
-<!DOCTYPE html>
-<html lang="en">
-<head>
-    <title>Empty textarea submission</title>
-    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
-</head>
-<body>
-    <h1>Empty textarea submission</h1>
-    <form method="POST" action="advanced_form_post.php">
-        <textarea name="textarea"></textarea>
-        <input type="submit" name="submit" value="Save" />
-    </form>
-</body>
-</html>
diff --git a/vendor/behat/mink/driver-testsuite/web-fixtures/form_without_button.html b/vendor/behat/mink/driver-testsuite/web-fixtures/form_without_button.html
deleted file mode 100644
index 8063026..0000000
--- a/vendor/behat/mink/driver-testsuite/web-fixtures/form_without_button.html
+++ /dev/null
@@ -1,13 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
-    <meta charset="UTF-8">
-    <title>Form submission without button test</title>
-</head>
-<body>
-    <form action="basic_form_post.php" method="POST">
-        <input name="first_name" type="text" value="not set">
-        <input name="last_name" type="text" value="not set">
-    </form>
-</body>
-</html>
diff --git a/vendor/behat/mink/driver-testsuite/web-fixtures/headers.php b/vendor/behat/mink/driver-testsuite/web-fixtures/headers.php
deleted file mode 100644
index 25d9b90..0000000
--- a/vendor/behat/mink/driver-testsuite/web-fixtures/headers.php
+++ /dev/null
@@ -1,10 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
-    <title>Headers page</title>
-    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/>
-</head>
-<body>
-    <?php print_r($_SERVER); ?>
-</body>
-</html>
diff --git a/vendor/behat/mink/driver-testsuite/web-fixtures/html5_form.html b/vendor/behat/mink/driver-testsuite/web-fixtures/html5_form.html
deleted file mode 100644
index 9070353..0000000
--- a/vendor/behat/mink/driver-testsuite/web-fixtures/html5_form.html
+++ /dev/null
@@ -1,18 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
-    <meta charset="UTF-8">
-    <title>HTML5 form attribute test</title>
-</head>
-<body>
-    <form action="advanced_form_post.php" method="POST" id="test-form">
-        <input name="first_name" type="text" value="not set">
-        <input name="other_field" type="text" value="not submitted" form="another">
-        <input type="submit" value="Submit separate form" form="another">
-        <input type="submit" value="Submit in form">
-    </form>
-    <input name="last_name" type="text" form="test-form" value="not set">
-    <button type="submit" form="test-form" name="submit_button" value="test">Submit outside form</button>
-    <form id="another" method="post" action="advanced_form_post.php"></form>
-</body>
-</html>
diff --git a/vendor/behat/mink/driver-testsuite/web-fixtures/html5_radio.html b/vendor/behat/mink/driver-testsuite/web-fixtures/html5_radio.html
deleted file mode 100644
index fd54c2d..0000000
--- a/vendor/behat/mink/driver-testsuite/web-fixtures/html5_radio.html
+++ /dev/null
@@ -1,16 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
-    <meta charset="UTF-8">
-    <title>HTML5 form attribute test</title>
-</head>
-<body>
-    <form action="advanced_form_post.php" method="POST" id="test-form">
-        <input name="sex" type="radio" value="m" id="sex_m">
-        <input name="sex" type="radio" value="invalid" form="another" id="sex_invalid" checked="checked">
-        <input type="submit" value="Submit in form">
-    </form>
-    <input name="sex" type="radio" form="test-form" value="f" id="sex_f" checked="checked">
-    <form id="another" method="post" action="advanced_form_post.php"></form>
-</body>
-</html>
diff --git a/vendor/behat/mink/driver-testsuite/web-fixtures/html5_types.html b/vendor/behat/mink/driver-testsuite/web-fixtures/html5_types.html
deleted file mode 100644
index bd46cfa..0000000
--- a/vendor/behat/mink/driver-testsuite/web-fixtures/html5_types.html
+++ /dev/null
@@ -1,18 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
-    <meta charset="UTF-8">
-    <title>HTML5 form attribute test</title>
-</head>
-<body>
-    <form action="advanced_form_post.php" method="POST">
-        <input name="url" type="url">
-        <input name="email" type="email">
-        <input name="number" type="number">
-        <input name="search" type="search">
-        <input name="color" type="color">
-        <input name="date" type="date">
-        <input type="submit" name="submit_button" value="Submit">
-    </form>
-</body>
-</html>
diff --git a/vendor/behat/mink/driver-testsuite/web-fixtures/html_decoding.html b/vendor/behat/mink/driver-testsuite/web-fixtures/html_decoding.html
deleted file mode 100644
index 341f226..0000000
--- a/vendor/behat/mink/driver-testsuite/web-fixtures/html_decoding.html
+++ /dev/null
@@ -1,17 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
-    <title>HTML Decoding Test</title>
-</head>
-<body>
-    <div>
-        <span custom-attr="&amp;">some text</span>
-
-        <form method="post" action="index.html">
-            <input value="&amp;"/>
-
-            <input type="submit" value="Send"/>
-        </form>
-    </div>
-</body>
-</html>
diff --git a/vendor/behat/mink/driver-testsuite/web-fixtures/iframe.html b/vendor/behat/mink/driver-testsuite/web-fixtures/iframe.html
deleted file mode 100644
index c54797f..0000000
--- a/vendor/behat/mink/driver-testsuite/web-fixtures/iframe.html
+++ /dev/null
@@ -1,12 +0,0 @@
-<!DOCTYPE html>
-<html>
-<body>
-
-<iframe src="iframe_inner.html" name="subframe"></iframe>
-
-<div id="text">
-    Main window div text
-</div>
-
-</body>
-</html>
diff --git a/vendor/behat/mink/driver-testsuite/web-fixtures/iframe_inner.html b/vendor/behat/mink/driver-testsuite/web-fixtures/iframe_inner.html
deleted file mode 100644
index 512f058..0000000
--- a/vendor/behat/mink/driver-testsuite/web-fixtures/iframe_inner.html
+++ /dev/null
@@ -1,10 +0,0 @@
-<!DOCTYPE html>
-<html>
-<body>
-
-    <div id="text">
-        iFrame div text
-    </div>
-
-</body>
-</html>
diff --git a/vendor/behat/mink/driver-testsuite/web-fixtures/index.html b/vendor/behat/mink/driver-testsuite/web-fixtures/index.html
deleted file mode 100644
index cc8c821..0000000
--- a/vendor/behat/mink/driver-testsuite/web-fixtures/index.html
+++ /dev/null
@@ -1,55 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
-    <title>Index page</title>
-    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/>
-</head>
-<body>
-    <h1>Extremely useless page</h1>
-    <div id="core">
-        <strong>Lorem</strong> ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim <strong>veniam</strong>, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla <strong class="super-duper">pariatur</strong>. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
-
-        <div id="empty">
-            An empty <em></em> tag should be rendered with both open and close tags.
-        </div>
-
-        <div id="some-element" data-href="http://mink.behat.org">
-            some <div>very
-            </div>
-<em>interesting</em>      text
-        </div>
-
-        <div class="attribute-testing">
-            <input type="text" id="attr-elem[with-value]" with-value="some-value"/>
-            <input type="text" id="attr-elem[without-value]" without-value/>
-            <input type="text" id="attr-elem[with-empty-value]" with-empty-value=""/>
-            <input type="text" id="attr-elem[with-missing]"/>
-        </div>
-
-        <div class="travers">
-            <div class="sub">el1</div>
-            <div class="sub">el2</div>
-            <div class="sub">
-                <a href="some_url">some <strong>deep</strong> url</a>
-            </div>
-        </div>
-
-        <div class="sub">el4</div>
-
-    </div>
-
-    <footer>
-        <form id="search-form">
-            <input type="text" placeholder="Search site..." />
-        </form>
-        <form id="profile">
-            <div data-custom="something">
-                <label>
-                    <input type="text" id="user-name" name="username" />
-                </label>
-            </div>
-            <input type="submit" />
-        </form>
-    </footer>
-</body>
-</html>
diff --git a/vendor/behat/mink/driver-testsuite/web-fixtures/issue130.php b/vendor/behat/mink/driver-testsuite/web-fixtures/issue130.php
deleted file mode 100644
index 201d982..0000000
--- a/vendor/behat/mink/driver-testsuite/web-fixtures/issue130.php
+++ /dev/null
@@ -1,11 +0,0 @@
-<!DOCTYPE html>
-<html>
-<body>
-    <?php
-    if ('1' === $_GET['p']) {
-        echo '<a href="issue130.php?p=2">Go to 2</a>';
-    } else {
-        echo '<strong>'.$_SERVER['HTTP_REFERER'].'</strong>';
-    }
-    ?>
-</body>
diff --git a/vendor/behat/mink/driver-testsuite/web-fixtures/issue131.html b/vendor/behat/mink/driver-testsuite/web-fixtures/issue131.html
deleted file mode 100644
index fa3427a..0000000
--- a/vendor/behat/mink/driver-testsuite/web-fixtures/issue131.html
+++ /dev/null
@@ -1,17 +0,0 @@
-<!DOCTYPE html>
-<html lang="en">
-<head>
-    <title>Issue 131</title>
-    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
-</head>
-<body>
-    <h1>There is a non breaking&#160;space</h1>
-    <pre id="foobar">Some accentués characters</pre>
-    <form>
-        <select name="foobar">
-          <option value="1">Gimme some accentués characters</option>
-        </select>
-        <input type="submit" />
-    </form>
-</body>
-</html>
diff --git a/vendor/behat/mink/driver-testsuite/web-fixtures/issue140.php b/vendor/behat/mink/driver-testsuite/web-fixtures/issue140.php
deleted file mode 100644
index 04a4caf..0000000
--- a/vendor/behat/mink/driver-testsuite/web-fixtures/issue140.php
+++ /dev/null
@@ -1,16 +0,0 @@
-<?php
-if (!empty($_POST)) {
-    setcookie("tc", $_POST['cookie_value'], null, '/');
-} elseif (isset($_GET["show_value"])) {
-    echo $_COOKIE["tc"];
-    die();
-}
-?>
-<!DOCTYPE html>
-<html>
-<body>
-    <form method="post">
-        <input name="cookie_value">
-        <input type="submit" value="Set cookie">
-    </form>
-</body>
diff --git a/vendor/behat/mink/driver-testsuite/web-fixtures/issue178.html b/vendor/behat/mink/driver-testsuite/web-fixtures/issue178.html
deleted file mode 100644
index 3efc743..0000000
--- a/vendor/behat/mink/driver-testsuite/web-fixtures/issue178.html
+++ /dev/null
@@ -1,19 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
-    <meta charset="UTF-8">
-    <title>Index page</title>
-</head>
-<body>
-
-<form action="#">
-	<div>
-		<input type="text" name="source" id="source"
-			onkeyup="document.getElementById('target').innerHTML = this.value" value="bar">
-	</div>
-</form>
-
-<div id="target"></div>
-
-</body>
-</html>
\ No newline at end of file
diff --git a/vendor/behat/mink/driver-testsuite/web-fixtures/issue193.html b/vendor/behat/mink/driver-testsuite/web-fixtures/issue193.html
deleted file mode 100644
index e722a43..0000000
--- a/vendor/behat/mink/driver-testsuite/web-fixtures/issue193.html
+++ /dev/null
@@ -1,26 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
-    <title>Index page</title>
-    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/>
-</head>
-<body>
-
-<form action="#">
-    <select id="options-without-values" name="without">
-        <option>none selected</option>
-        <option id="one">One</option>
-        <option id="two">Two</option>
-        <option>Three</option>
-    </select>
-
-    <select id="options-with-values" name="with">
-        <option value="none">none selected</option>
-        <option value="one">One</option>
-        <option value="two">Two</option>
-        <option value="three">Three</option>
-    </select>
-</form>
-
-</body>
-</html>
diff --git a/vendor/behat/mink/driver-testsuite/web-fixtures/issue211.html b/vendor/behat/mink/driver-testsuite/web-fixtures/issue211.html
deleted file mode 100644
index bb977ec..0000000
--- a/vendor/behat/mink/driver-testsuite/web-fixtures/issue211.html
+++ /dev/null
@@ -1,23 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
-    <title>Index page</title>
-    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/>
-</head>
-<body>
-
-<form action="#">
-    <p>
-        <label for="phone">Téléphone</label>
-        <input type="text" name="phone" id="phone" />
-    </p>
-    <p>
-        <label for="daphone">DaPhone</label>
-        <input type="text" name="daphone" id="daphone" />
-    </p>
-
-    <input type="submit" value="Send" />
-</form>
-
-</body>
-</html>
diff --git a/vendor/behat/mink/driver-testsuite/web-fixtures/issue212.html b/vendor/behat/mink/driver-testsuite/web-fixtures/issue212.html
deleted file mode 100644
index 24ae62f..0000000
--- a/vendor/behat/mink/driver-testsuite/web-fixtures/issue212.html
+++ /dev/null
@@ -1,9 +0,0 @@
-<!DOCTYPE html>
-<html>
-<body>
-  <form action="/" method="post" id="user-login-form">
-    <input type="submit" name="toto" id="jaguar-button" value="jaguar"/>
-    <input type="submit" name="toto" id="poney-button" value="poney"/>
-  </form>
-</body>
-</html>
diff --git a/vendor/behat/mink/driver-testsuite/web-fixtures/issue215.html b/vendor/behat/mink/driver-testsuite/web-fixtures/issue215.html
deleted file mode 100644
index adff3fb..0000000
--- a/vendor/behat/mink/driver-testsuite/web-fixtures/issue215.html
+++ /dev/null
@@ -1,17 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
-    <meta charset="UTF-8">
-    <title>Index page</title>
-</head>
-<body>
-
-<form action="#">
-<textarea rows="10" cols="10" id="textarea">
-foo
-bar
-</textarea>
-</form>
-
-</body>
-</html>
\ No newline at end of file
diff --git a/vendor/behat/mink/driver-testsuite/web-fixtures/issue225.html b/vendor/behat/mink/driver-testsuite/web-fixtures/issue225.html
deleted file mode 100644
index 1321463..0000000
--- a/vendor/behat/mink/driver-testsuite/web-fixtures/issue225.html
+++ /dev/null
@@ -1,20 +0,0 @@
-<!DOCTYPE html>
-<html lang="fr">
-<head>
-    <title>Index page</title>
-    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/>
-    <script src="js/jquery-1.6.2-min.js"></script>
-</head>
-<body>
-
-<button id="btn">Créer un compte</button>
-
-<div id="panel"></div>
-
-<script type="text/javascript">
-    $('#btn').click(function () {
-        $('#panel').text('OH ' + 'AIH!');
-    });
-</script>
-</body>
-</html>
diff --git a/vendor/behat/mink/driver-testsuite/web-fixtures/issue255.html b/vendor/behat/mink/driver-testsuite/web-fixtures/issue255.html
deleted file mode 100644
index d56a427..0000000
--- a/vendor/behat/mink/driver-testsuite/web-fixtures/issue255.html
+++ /dev/null
@@ -1,33 +0,0 @@
-<!DOCTYPE html>
-<html lang="en">
-<head>
-    <title>Issue 255</title>
-    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/>
-    <script src="js/jquery-1.6.2-min.js"></script>
-</head>
-<body>
-    <form>
-        <label for="foo_select">Foo</label>
-        <select name="foo_select" id="foo_select">
-            <option value="1" selected="selected">Option 1</option>
-            <option value="2">Option 2</option>
-            <option value="3">Option 3</option>
-        </select>
-        <input type="checkbox" id="foo_check" />
-        <input type="submit" />
-        <p id="output_foo_select"></p>
-        <p id="output_foo_check"></p>
-    </form>
-
-    <script type="text/javascript">
-        (function() {
-            $('#foo_select').change(function () {
-                $('#output_foo_select').text("onChangeSelect");
-            });
-            $('#foo_check').change(function () {
-                $('#output_foo_check').text("onChangeCheck");
-            });
-        })();
-    </script>
-</body>
-</html>
diff --git a/vendor/behat/mink/driver-testsuite/web-fixtures/js/jquery-1.6.2-min.js b/vendor/behat/mink/driver-testsuite/web-fixtures/js/jquery-1.6.2-min.js
deleted file mode 100644
index 8cdc80e..0000000
--- a/vendor/behat/mink/driver-testsuite/web-fixtures/js/jquery-1.6.2-min.js
+++ /dev/null
@@ -1,18 +0,0 @@
-/*!
- * jQuery JavaScript Library v1.6.2
- * http://jquery.com/
- *
- * Copyright 2011, John Resig
- * Dual licensed under the MIT or GPL Version 2 licenses.
- * http://jquery.org/license
- *
- * Includes Sizzle.js
- * http://sizzlejs.com/
- * Copyright 2011, The Dojo Foundation
- * Released under the MIT, BSD, and GPL Licenses.
- *
- * Date: Thu Jun 30 14:16:56 2011 -0400
- */
-(function(a,b){function cv(a){return f.isWindow(a)?a:a.nodeType===9?a.defaultView||a.parentWindow:!1}function cs(a){if(!cg[a]){var b=c.body,d=f("<"+a+">").appendTo(b),e=d.css("display");d.remove();if(e==="none"||e===""){ch||(ch=c.createElement("iframe"),ch.frameBorder=ch.width=ch.height=0),b.appendChild(ch);if(!ci||!ch.createElement)ci=(ch.contentWindow||ch.contentDocument).document,ci.write((c.compatMode==="CSS1Compat"?"<!doctype html>":"")+"<html><body>"),ci.close();d=ci.createElement(a),ci.body.appendChild(d),e=f.css(d,"display"),b.removeChild(ch)}cg[a]=e}return cg[a]}function cr(a,b){var c={};f.each(cm.concat.apply([],cm.slice(0,b)),function(){c[this]=a});return c}function cq(){cn=b}function cp(){setTimeout(cq,0);return cn=f.now()}function cf(){try{return new a.ActiveXObject("Microsoft.XMLHTTP")}catch(b){}}function ce(){try{return new a.XMLHttpRequest}catch(b){}}function b$(a,c){a.dataFilter&&(c=a.dataFilter(c,a.dataType));var d=a.dataTypes,e={},g,h,i=d.length,j,k=d[0],l,m,n,o,p;for(g=1;g<i;g++){if(g===1)for(h in a.converters)typeof h=="string"&&(e[h.toLowerCase()]=a.converters[h]);l=k,k=d[g];if(k==="*")k=l;else if(l!=="*"&&l!==k){m=l+" "+k,n=e[m]||e["* "+k];if(!n){p=b;for(o in e){j=o.split(" ");if(j[0]===l||j[0]==="*"){p=e[j[1]+" "+k];if(p){o=e[o],o===!0?n=p:p===!0&&(n=o);break}}}}!n&&!p&&f.error("No conversion from "+m.replace(" "," to ")),n!==!0&&(c=n?n(c):p(o(c)))}}return c}function bZ(a,c,d){var e=a.contents,f=a.dataTypes,g=a.responseFields,h,i,j,k;for(i in g)i in d&&(c[g[i]]=d[i]);while(f[0]==="*")f.shift(),h===b&&(h=a.mimeType||c.getResponseHeader("content-type"));if(h)for(i in e)if(e[i]&&e[i].test(h)){f.unshift(i);break}if(f[0]in d)j=f[0];else{for(i in d){if(!f[0]||a.converters[i+" "+f[0]]){j=i;break}k||(k=i)}j=j||k}if(j){j!==f[0]&&f.unshift(j);return d[j]}}function bY(a,b,c,d){if(f.isArray(b))f.each(b,function(b,e){c||bC.test(a)?d(a,e):bY(a+"["+(typeof e=="object"||f.isArray(e)?b:"")+"]",e,c,d)});else if(!c&&b!=null&&typeof b=="object")for(var e in b)bY(a+"["+e+"]",b[e],c,d);else d(a,b)}function bX(a,c,d,e,f,g){f=f||c.dataTypes[0],g=g||{},g[f]=!0;var h=a[f],i=0,j=h?h.length:0,k=a===bR,l;for(;i<j&&(k||!l);i++)l=h[i](c,d,e),typeof l=="string"&&(!k||g[l]?l=b:(c.dataTypes.unshift(l),l=bX(a,c,d,e,l,g)));(k||!l)&&!g["*"]&&(l=bX(a,c,d,e,"*",g));return l}function bW(a){return function(b,c){typeof b!="string"&&(c=b,b="*");if(f.isFunction(c)){var d=b.toLowerCase().split(bN),e=0,g=d.length,h,i,j;for(;e<g;e++)h=d[e],j=/^\+/.test(h),j&&(h=h.substr(1)||"*"),i=a[h]=a[h]||[],i[j?"unshift":"push"](c)}}}function bA(a,b,c){var d=b==="width"?a.offsetWidth:a.offsetHeight,e=b==="width"?bv:bw;if(d>0){c!=="border"&&f.each(e,function(){c||(d-=parseFloat(f.css(a,"padding"+this))||0),c==="margin"?d+=parseFloat(f.css(a,c+this))||0:d-=parseFloat(f.css(a,"border"+this+"Width"))||0});return d+"px"}d=bx(a,b,b);if(d<0||d==null)d=a.style[b]||0;d=parseFloat(d)||0,c&&f.each(e,function(){d+=parseFloat(f.css(a,"padding"+this))||0,c!=="padding"&&(d+=parseFloat(f.css(a,"border"+this+"Width"))||0),c==="margin"&&(d+=parseFloat(f.css(a,c+this))||0)});return d+"px"}function bm(a,b){b.src?f.ajax({url:b.src,async:!1,dataType:"script"}):f.globalEval((b.text||b.textContent||b.innerHTML||"").replace(be,"/*$0*/")),b.parentNode&&b.parentNode.removeChild(b)}function bl(a){f.nodeName(a,"input")?bk(a):"getElementsByTagName"in a&&f.grep(a.getElementsByTagName("input"),bk)}function bk(a){if(a.type==="checkbox"||a.type==="radio")a.defaultChecked=a.checked}function bj(a){return"getElementsByTagName"in a?a.getElementsByTagName("*"):"querySelectorAll"in a?a.querySelectorAll("*"):[]}function bi(a,b){var c;if(b.nodeType===1){b.clearAttributes&&b.clearAttributes(),b.mergeAttributes&&b.mergeAttributes(a),c=b.nodeName.toLowerCase();if(c==="object")b.outerHTML=a.outerHTML;else if(c!=="input"||a.type!=="checkbox"&&a.type!=="radio"){if(c==="option")b.selected=a.defaultSelected;else if(c==="input"||c==="textarea")b.defaultValue=a.defaultValue}else a.checked&&(b.defaultChecked=b.checked=a.checked),b.value!==a.value&&(b.value=a.value);b.removeAttribute(f.expando)}}function bh(a,b){if(b.nodeType===1&&!!f.hasData(a)){var c=f.expando,d=f.data(a),e=f.data(b,d);if(d=d[c]){var g=d.events;e=e[c]=f.extend({},d);if(g){delete e.handle,e.events={};for(var h in g)for(var i=0,j=g[h].length;i<j;i++)f.event.add(b,h+(g[h][i].namespace?".":"")+g[h][i].namespace,g[h][i],g[h][i].data)}}}}function bg(a,b){return f.nodeName(a,"table")?a.getElementsByTagName("tbody")[0]||a.appendChild(a.ownerDocument.createElement("tbody")):a}function W(a,b,c){b=b||0;if(f.isFunction(b))return f.grep(a,function(a,d){var e=!!b.call(a,d,a);return e===c});if(b.nodeType)return f.grep(a,function(a,d){return a===b===c});if(typeof b=="string"){var d=f.grep(a,function(a){return a.nodeType===1});if(R.test(b))return f.filter(b,d,!c);b=f.filter(b,d)}return f.grep(a,function(a,d){return f.inArray(a,b)>=0===c})}function V(a){return!a||!a.parentNode||a.parentNode.nodeType===11}function N(a,b){return(a&&a!=="*"?a+".":"")+b.replace(z,"`").replace(A,"&")}function M(a){var b,c,d,e,g,h,i,j,k,l,m,n,o,p=[],q=[],r=f._data(this,"events");if(!(a.liveFired===this||!r||!r.live||a.target.disabled||a.button&&a.type==="click")){a.namespace&&(n=new RegExp("(^|\\.)"+a.namespace.split(".").join("\\.(?:.*\\.)?")+"(\\.|$)")),a.liveFired=this;var s=r.live.slice(0);for(i=0;i<s.length;i++)g=s[i],g.origType.replace(x,"")===a.type?q.push(g.selector):s.splice(i--,1);e=f(a.target).closest(q,a.currentTarget);for(j=0,k=e.length;j<k;j++){m=e[j];for(i=0;i<s.length;i++){g=s[i];if(m.selector===g.selector&&(!n||n.test(g.namespace))&&!m.elem.disabled){h=m.elem,d=null;if(g.preType==="mouseenter"||g.preType==="mouseleave")a.type=g.preType,d=f(a.relatedTarget).closest(g.selector)[0],d&&f.contains(h,d)&&(d=h);(!d||d!==h)&&p.push({elem:h,handleObj:g,level:m.level})}}}for(j=0,k=p.length;j<k;j++){e=p[j];if(c&&e.level>c)break;a.currentTarget=e.elem,a.data=e.handleObj.data,a.handleObj=e.handleObj,o=e.handleObj.origHandler.apply(e.elem,arguments);if(o===!1||a.isPropagationStopped()){c=e.level,o===!1&&(b=!1);if(a.isImmediatePropagationStopped())break}}return b}}function K(a,c,d){var e=f.extend({},d[0]);e.type=a,e.originalEvent={},e.liveFired=b,f.event.handle.call(c,e),e.isDefaultPrevented()&&d[0].preventDefault()}function E(){return!0}function D(){return!1}function m(a,c,d){var e=c+"defer",g=c+"queue",h=c+"mark",i=f.data(a,e,b,!0);i&&(d==="queue"||!f.data(a,g,b,!0))&&(d==="mark"||!f.data(a,h,b,!0))&&setTimeout(function(){!f.data(a,g,b,!0)&&!f.data(a,h,b,!0)&&(f.removeData(a,e,!0),i.resolve())},0)}function l(a){for(var b in a)if(b!=="toJSON")return!1;return!0}function k(a,c,d){if(d===b&&a.nodeType===1){var e="data-"+c.replace(j,"$1-$2").toLowerCase();d=a.getAttribute(e);if(typeof d=="string"){try{d=d==="true"?!0:d==="false"?!1:d==="null"?null:f.isNaN(d)?i.test(d)?f.parseJSON(d):d:parseFloat(d)}catch(g){}f.data(a,c,d)}else d=b}return d}var c=a.document,d=a.navigator,e=a.location,f=function(){function J(){if(!e.isReady){try{c.documentElement.doScroll("left")}catch(a){setTimeout(J,1);return}e.ready()}}var e=function(a,b){return new e.fn.init(a,b,h)},f=a.jQuery,g=a.$,h,i=/^(?:[^<]*(<[\w\W]+>)[^>]*$|#([\w\-]*)$)/,j=/\S/,k=/^\s+/,l=/\s+$/,m=/\d/,n=/^<(\w+)\s*\/?>(?:<\/\1>)?$/,o=/^[\],:{}\s]*$/,p=/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,q=/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,r=/(?:^|:|,)(?:\s*\[)+/g,s=/(webkit)[ \/]([\w.]+)/,t=/(opera)(?:.*version)?[ \/]([\w.]+)/,u=/(msie) ([\w.]+)/,v=/(mozilla)(?:.*? rv:([\w.]+))?/,w=/-([a-z])/ig,x=function(a,b){return b.toUpperCase()},y=d.userAgent,z,A,B,C=Object.prototype.toString,D=Object.prototype.hasOwnProperty,E=Array.prototype.push,F=Array.prototype.slice,G=String.prototype.trim,H=Array.prototype.indexOf,I={};e.fn=e.prototype={constructor:e,init:function(a,d,f){var g,h,j,k;if(!a)return this;if(a.nodeType){this.context=this[0]=a,this.length=1;return this}if(a==="body"&&!d&&c.body){this.context=c,this[0]=c.body,this.selector=a,this.length=1;return this}if(typeof a=="string"){a.charAt(0)!=="<"||a.charAt(a.length-1)!==">"||a.length<3?g=i.exec(a):g=[null,a,null];if(g&&(g[1]||!d)){if(g[1]){d=d instanceof e?d[0]:d,k=d?d.ownerDocument||d:c,j=n.exec(a),j?e.isPlainObject(d)?(a=[c.createElement(j[1])],e.fn.attr.call(a,d,!0)):a=[k.createElement(j[1])]:(j=e.buildFragment([g[1]],[k]),a=(j.cacheable?e.clone(j.fragment):j.fragment).childNodes);return e.merge(this,a)}h=c.getElementById(g[2]);if(h&&h.parentNode){if(h.id!==g[2])return f.find(a);this.length=1,this[0]=h}this.context=c,this.selector=a;return this}return!d||d.jquery?(d||f).find(a):this.constructor(d).find(a)}if(e.isFunction(a))return f.ready(a);a.selector!==b&&(this.selector=a.selector,this.context=a.context);return e.makeArray(a,this)},selector:"",jquery:"1.6.2",length:0,size:function(){return this.length},toArray:function(){return F.call(this,0)},get:function(a){return a==null?this.toArray():a<0?this[this.length+a]:this[a]},pushStack:function(a,b,c){var d=this.constructor();e.isArray(a)?E.apply(d,a):e.merge(d,a),d.prevObject=this,d.context=this.context,b==="find"?d.selector=this.selector+(this.selector?" ":"")+c:b&&(d.selector=this.selector+"."+b+"("+c+")");return d},each:function(a,b){return e.each(this,a,b)},ready:function(a){e.bindReady(),A.done(a);return this},eq:function(a){return a===-1?this.slice(a):this.slice(a,+a+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(F.apply(this,arguments),"slice",F.call(arguments).join(","))},map:function(a){return this.pushStack(e.map(this,function(b,c){return a.call(b,c,b)}))},end:function(){return this.prevObject||this.constructor(null)},push:E,sort:[].sort,splice:[].splice},e.fn.init.prototype=e.fn,e.extend=e.fn.extend=function(){var a,c,d,f,g,h,i=arguments[0]||{},j=1,k=arguments.length,l=!1;typeof i=="boolean"&&(l=i,i=arguments[1]||{},j=2),typeof i!="object"&&!e.isFunction(i)&&(i={}),k===j&&(i=this,--j);for(;j<k;j++)if((a=arguments[j])!=null)for(c in a){d=i[c],f=a[c];if(i===f)continue;l&&f&&(e.isPlainObject(f)||(g=e.isArray(f)))?(g?(g=!1,h=d&&e.isArray(d)?d:[]):h=d&&e.isPlainObject(d)?d:{},i[c]=e.extend(l,h,f)):f!==b&&(i[c]=f)}return i},e.extend({noConflict:function(b){a.$===e&&(a.$=g),b&&a.jQuery===e&&(a.jQuery=f);return e},isReady:!1,readyWait:1,holdReady:function(a){a?e.readyWait++:e.ready(!0)},ready:function(a){if(a===!0&&!--e.readyWait||a!==!0&&!e.isReady){if(!c.body)return setTimeout(e.ready,1);e.isReady=!0;if(a!==!0&&--e.readyWait>0)return;A.resolveWith(c,[e]),e.fn.trigger&&e(c).trigger("ready").unbind("ready")}},bindReady:function(){if(!A){A=e._Deferred();if(c.readyState==="complete")return setTimeout(e.ready,1);if(c.addEventListener)c.addEventListener("DOMContentLoaded",B,!1),a.addEventListener("load",e.ready,!1);else if(c.attachEvent){c.attachEvent("onreadystatechange",B),a.attachEvent("onload",e.ready);var b=!1;try{b=a.frameElement==null}catch(d){}c.documentElement.doScroll&&b&&J()}}},isFunction:function(a){return e.type(a)==="function"},isArray:Array.isArray||function(a){return e.type(a)==="array"},isWindow:function(a){return a&&typeof a=="object"&&"setInterval"in a},isNaN:function(a){return a==null||!m.test(a)||isNaN(a)},type:function(a){return a==null?String(a):I[C.call(a)]||"object"},isPlainObject:function(a){if(!a||e.type(a)!=="object"||a.nodeType||e.isWindow(a))return!1;if(a.constructor&&!D.call(a,"constructor")&&!D.call(a.constructor.prototype,"isPrototypeOf"))return!1;var c;for(c in a);return c===b||D.call(a,c)},isEmptyObject:function(a){for(var b in a)return!1;return!0},error:function(a){throw a},parseJSON:function(b){if(typeof b!="string"||!b)return null;b=e.trim(b);if(a.JSON&&a.JSON.parse)return a.JSON.parse(b);if(o.test(b.replace(p,"@").replace(q,"]").replace(r,"")))return(new Function("return "+b))();e.error("Invalid JSON: "+b)},parseXML:function(b,c,d){a.DOMParser?(d=new DOMParser,c=d.parseFromString(b,"text/xml")):(c=new ActiveXObject("Microsoft.XMLDOM"),c.async="false",c.loadXML(b)),d=c.documentElement,(!d||!d.nodeName||d.nodeName==="parsererror")&&e.error("Invalid XML: "+b);return c},noop:function(){},globalEval:function(b){b&&j.test(b)&&(a.execScript||function(b){a.eval.call(a,b)})(b)},camelCase:function(a){return a.replace(w,x)},nodeName:function(a,b){return a.nodeName&&a.nodeName.toUpperCase()===b.toUpperCase()},each:function(a,c,d){var f,g=0,h=a.length,i=h===b||e.isFunction(a);if(d){if(i){for(f in a)if(c.apply(a[f],d)===!1)break}else for(;g<h;)if(c.apply(a[g++],d)===!1)break}else if(i){for(f in a)if(c.call(a[f],f,a[f])===!1)break}else for(;g<h;)if(c.call(a[g],g,a[g++])===!1)break;return a},trim:G?function(a){return a==null?"":G.call(a)}:function(a){return a==null?"":(a+"").replace(k,"").replace(l,"")},makeArray:function(a,b){var c=b||[];if(a!=null){var d=e.type(a);a.length==null||d==="string"||d==="function"||d==="regexp"||e.isWindow(a)?E.call(c,a):e.merge(c,a)}return c},inArray:function(a,b){if(H)return H.call(b,a);for(var c=0,d=b.length;c<d;c++)if(b[c]===a)return c;return-1},merge:function(a,c){var d=a.length,e=0;if(typeof c.length=="number")for(var f=c.length;e<f;e++)a[d++]=c[e];else while(c[e]!==b)a[d++]=c[e++];a.length=d;return a},grep:function(a,b,c){var d=[],e;c=!!c;for(var f=0,g=a.length;f<g;f++)e=!!b(a[f],f),c!==e&&d.push(a[f]);return d},map:function(a,c,d){var f,g,h=[],i=0,j=a.length,k=a instanceof e||j!==b&&typeof j=="number"&&(j>0&&a[0]&&a[j-1]||j===0||e.isArray(a));if(k)for(;i<j;i++)f=c(a[i],i,d),f!=null&&(h[h.length]=f);else for(g in a)f=c(a[g],g,d),f!=null&&(h[h.length]=f);return h.concat.apply([],h)},guid:1,proxy:function(a,c){if(typeof c=="string"){var d=a[c];c=a,a=d}if(!e.isFunction(a))return b;var f=F.call(arguments,2),g=function(){return a.apply(c,f.concat(F.call(arguments)))};g.guid=a.guid=a.guid||g.guid||e.guid++;return g},access:function(a,c,d,f,g,h){var i=a.length;if(typeof c=="object"){for(var j in c)e.access(a,j,c[j],f,g,d);return a}if(d!==b){f=!h&&f&&e.isFunction(d);for(var k=0;k<i;k++)g(a[k],c,f?d.call(a[k],k,g(a[k],c)):d,h);return a}return i?g(a[0],c):b},now:function(){return(new Date).getTime()},uaMatch:function(a){a=a.toLowerCase();var b=s.exec(a)||t.exec(a)||u.exec(a)||a.indexOf("compatible")<0&&v.exec(a)||[];return{browser:b[1]||"",version:b[2]||"0"}},sub:function(){function a(b,c){return new a.fn.init(b,c)}e.extend(!0,a,this),a.superclass=this,a.fn=a.prototype=this(),a.fn.constructor=a,a.sub=this.sub,a.fn.init=function(d,f){f&&f instanceof e&&!(f instanceof a)&&(f=a(f));return e.fn.init.call(this,d,f,b)},a.fn.init.prototype=a.fn;var b=a(c);return a},browser:{}}),e.each("Boolean Number String Function Array Date RegExp Object".split(" "),function(a,b){I["[object "+b+"]"]=b.toLowerCase()}),z=e.uaMatch(y),z.browser&&(e.browser[z.browser]=!0,e.browser.version=z.version),e.browser.webkit&&(e.browser.safari=!0),j.test(" ")&&(k=/^[\s\xA0]+/,l=/[\s\xA0]+$/),h=e(c),c.addEventListener?B=function(){c.removeEventListener("DOMContentLoaded",B,!1),e.ready()}:c.attachEvent&&(B=function(){c.readyState==="complete"&&(c.detachEvent("onreadystatechange",B),e.ready())});return e}(),g="done fail isResolved isRejected promise then always pipe".split(" "),h=[].slice;f.extend({_Deferred:function(){var a=[],b,c,d,e={done:function(){if(!d){var c=arguments,g,h,i,j,k;b&&(k=b,b=0);for(g=0,h=c.length;g<h;g++)i=c[g],j=f.type(i),j==="array"?e.done.apply(e,i):j==="function"&&a.push(i);k&&e.resolveWith(k[0],k[1])}return this},resolveWith:function(e,f){if(!d&&!b&&!c){f=f||[],c=1;try{while(a[0])a.shift().apply(e,f)}finally{b=[e,f],c=0}}return this},resolve:function(){e.resolveWith(this,arguments);return this},isResolved:function(){return!!c||!!b},cancel:function(){d=1,a=[];return this}};return e},Deferred:function(a){var b=f._Deferred(),c=f._Deferred(),d;f.extend(b,{then:function(a,c){b.done(a).fail(c);return this},always:function(){return b.done.apply(b,arguments).fail.apply(this,arguments)},fail:c.done,rejectWith:c.resolveWith,reject:c.resolve,isRejected:c.isResolved,pipe:function(a,c){return f.Deferred(function(d){f.each({done:[a,"resolve"],fail:[c,"reject"]},function(a,c){var e=c[0],g=c[1],h;f.isFunction(e)?b[a](function(){h=e.apply(this,arguments),h&&f.isFunction(h.promise)?h.promise().then(d.resolve,d.reject):d[g](h)}):b[a](d[g])})}).promise()},promise:function(a){if(a==null){if(d)return d;d=a={}}var c=g.length;while(c--)a[g[c]]=b[g[c]];return a}}),b.done(c.cancel).fail(b.cancel),delete b.cancel,a&&a.call(b,b);return b},when:function(a){function i(a){return function(c){b[a]=arguments.length>1?h.call(arguments,0):c,--e||g.resolveWith(g,h.call(b,0))}}var b=arguments,c=0,d=b.length,e=d,g=d<=1&&a&&f.isFunction(a.promise)?a:f.Deferred();if(d>1){for(;c<d;c++)b[c]&&f.isFunction(b[c].promise)?b[c].promise().then(i(c),g.reject):--e;e||g.resolveWith(g,b)}else g!==a&&g.resolveWith(g,d?[a]:[]);return g.promise()}}),f.support=function(){var a=c.createElement("div"),b=c.documentElement,d,e,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u;a.setAttribute("className","t"),a.innerHTML="   <link/><table></table><a href='/a' style='top:1px;float:left;opacity:.55;'>a</a><input type='checkbox'/>",d=a.getElementsByTagName("*"),e=a.getElementsByTagName("a")[0];if(!d||!d.length||!e)return{};g=c.createElement("select"),h=g.appendChild(c.createElement("option")),i=a.getElementsByTagName("input")[0],k={leadingWhitespace:a.firstChild.nodeType===3,tbody:!a.getElementsByTagName("tbody").length,htmlSerialize:!!a.getElementsByTagName("link").length,style:/top/.test(e.getAttribute("style")),hrefNormalized:e.getAttribute("href")==="/a",opacity:/^0.55$/.test(e.style.opacity),cssFloat:!!e.style.cssFloat,checkOn:i.value==="on",optSelected:h.selected,getSetAttribute:a.className!=="t",submitBubbles:!0,changeBubbles:!0,focusinBubbles:!1,deleteExpando:!0,noCloneEvent:!0,inlineBlockNeedsLayout:!1,shrinkWrapBlocks:!1,reliableMarginRight:!0},i.checked=!0,k.noCloneChecked=i.cloneNode(!0).checked,g.disabled=!0,k.optDisabled=!h.disabled;try{delete a.test}catch(v){k.deleteExpando=!1}!a.addEventListener&&a.attachEvent&&a.fireEvent&&(a.attachEvent("onclick",function(){k.noCloneEvent=!1}),a.cloneNode(!0).fireEvent("onclick")),i=c.createElement("input"),i.value="t",i.setAttribute("type","radio"),k.radioValue=i.value==="t",i.setAttribute("checked","checked"),a.appendChild(i),l=c.createDocumentFragment(),l.appendChild(a.firstChild),k.checkClone=l.cloneNode(!0).cloneNode(!0).lastChild.checked,a.innerHTML="",a.style.width=a.style.paddingLeft="1px",m=c.getElementsByTagName("body")[0],o=c.createElement(m?"div":"body"),p={visibility:"hidden",width:0,height:0,border:0,margin:0},m&&f.extend(p,{position:"absolute",left:-1e3,top:-1e3});for(t in p)o.style[t]=p[t];o.appendChild(a),n=m||b,n.insertBefore(o,n.firstChild),k.appendChecked=i.checked,k.boxModel=a.offsetWidth===2,"zoom"in a.style&&(a.style.display="inline",a.style.zoom=1,k.inlineBlockNeedsLayout=a.offsetWidth===2,a.style.display="",a.innerHTML="<div style='width:4px;'></div>",k.shrinkWrapBlocks=a.offsetWidth!==2),a.innerHTML="<table><tr><td style='padding:0;border:0;display:none'></td><td>t</td></tr></table>",q=a.getElementsByTagName("td"),u=q[0].offsetHeight===0,q[0].style.display="",q[1].style.display="none",k.reliableHiddenOffsets=u&&q[0].offsetHeight===0,a.innerHTML="",c.defaultView&&c.defaultView.getComputedStyle&&(j=c.createElement("div"),j.style.width="0",j.style.marginRight="0",a.appendChild(j),k.reliableMarginRight=(parseInt((c.defaultView.getComputedStyle(j,null)||{marginRight:0}).marginRight,10)||0)===0),o.innerHTML="",n.removeChild(o);if(a.attachEvent)for(t in{submit:1,change:1,focusin:1})s="on"+t,u=s in a,u||(a.setAttribute(s,"return;"),u=typeof a[s]=="function"),k[t+"Bubbles"]=u;o=l=g=h=m=j=a=i=null;return k}(),f.boxModel=f.support.boxModel;var i=/^(?:\{.*\}|\[.*\])$/,j=/([a-z])([A-Z])/g;f.extend({cache:{},uuid:0,expando:"jQuery"+(f.fn.jquery+Math.random()).replace(/\D/g,""),noData:{embed:!0,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:!0},hasData:function(a){a=a.nodeType?f.cache[a[f.expando]]:a[f.expando];return!!a&&!l(a)},data:function(a,c,d,e){if(!!f.acceptData(a)){var g=f.expando,h=typeof c=="string",i,j=a.nodeType,k=j?f.cache:a,l=j?a[f.expando]:a[f.expando]&&f.expando;if((!l||e&&l&&!k[l][g])&&h&&d===b)return;l||(j?a[f.expando]=l=++f.uuid:l=f.expando),k[l]||(k[l]={},j||(k[l].toJSON=f.noop));if(typeof c=="object"||typeof c=="function")e?k[l][g]=f.extend(k[l][g],c):k[l]=f.extend(k[l],c);i=k[l],e&&(i[g]||(i[g]={}),i=i[g]),d!==b&&(i[f.camelCase(c)]=d);if(c==="events"&&!i[c])return i[g]&&i[g].events;return h?i[f.camelCase(c)]||i[c]:i}},removeData:function(b,c,d){if(!!f.acceptData(b)){var e=f.expando,g=b.nodeType,h=g?f.cache:b,i=g?b[f.expando]:f.expando;if(!h[i])return;if(c){var j=d?h[i][e]:h[i];if(j){delete j[c];if(!l(j))return}}if(d){delete h[i][e];if(!l(h[i]))return}var k=h[i][e];f.support.deleteExpando||h!=a?delete h[i]:h[i]=null,k?(h[i]={},g||(h[i].toJSON=f.noop),h[i][e]=k):g&&(f.support.deleteExpando?delete b[f.expando]:b.removeAttribute?b.removeAttribute(f.expando):b[f.expando]=null)}},_data:function(a,b,c){return f.data(a,b,c,!0)},acceptData:function(a){if(a.nodeName){var b=f.noData[a.nodeName.toLowerCase()];if(b)return b!==!0&&a.getAttribute("classid")===b}return!0}}),f.fn.extend({data:function(a,c){var d=null;if(typeof a=="undefined"){if(this.length){d=f.data(this[0]);if(this[0].nodeType===1){var e=this[0].attributes,g;for(var h=0,i=e.length;h<i;h++)g=e[h].name,g.indexOf("data-")===0&&(g=f.camelCase(g.substring(5)),k(this[0],g,d[g]))}}return d}if(typeof a=="object")return this.each(function(){f.data(this,a)});var j=a.split(".");j[1]=j[1]?"."+j[1]:"";if(c===b){d=this.triggerHandler("getData"+j[1]+"!",[j[0]]),d===b&&this.length&&(d=f.data(this[0],a),d=k(this[0],a,d));return d===b&&j[1]?this.data(j[0]):d}return this.each(function(){var b=f(this),d=[j[0],c];b.triggerHandler("setData"+j[1]+"!",d),f.data(this,a,c),b.triggerHandler("changeData"+j[1]+"!",d)})},removeData:function(a){return this.each(function(){f.removeData(this,a)})}}),f.extend({_mark:function(a,c){a&&(c=(c||"fx")+"mark",f.data(a,c,(f.data(a,c,b,!0)||0)+1,!0))},_unmark:function(a,c,d){a!==!0&&(d=c,c=a,a=!1);if(c){d=d||"fx";var e=d+"mark",g=a?0:(f.data(c,e,b,!0)||1)-1;g?f.data(c,e,g,!0):(f.removeData(c,e,!0),m(c,d,"mark"))}},queue:function(a,c,d){if(a){c=(c||"fx")+"queue";var e=f.data(a,c,b,!0);d&&(!e||f.isArray(d)?e=f.data(a,c,f.makeArray(d),!0):e.push(d));return e||[]}},dequeue:function(a,b){b=b||"fx";var c=f.queue(a,b),d=c.shift(),e;d==="inprogress"&&(d=c.shift()),d&&(b==="fx"&&c.unshift("inprogress"),d.call(a,function(){f.dequeue(a,b)})),c.length||(f.removeData(a,b+"queue",!0),m(a,b,"queue"))}}),f.fn.extend({queue:function(a,c){typeof a!="string"&&(c=a,a="fx");if(c===b)return f.queue(this[0],a);return this.each(function(){var b=f.queue(this,a,c);a==="fx"&&b[0]!=="inprogress"&&f.dequeue(this,a)})},dequeue:function(a){return this.each(function(){f.dequeue(this,a)})},delay:function(a,b){a=f.fx?f.fx.speeds[a]||a:a,b=b||"fx";return this.queue(b,function(){var c=this;setTimeout(function(){f.dequeue(c,b)},a)})},clearQueue:function(a){return this.queue(a||"fx",[])},promise:function(a,c){function m(){--h||d.resolveWith(e,[e])}typeof a!="string"&&(c=a,a=b),a=a||"fx";var d=f.Deferred(),e=this,g=e.length,h=1,i=a+"defer",j=a+"queue",k=a+"mark",l;while(g--)if(l=f.data(e[g],i,b,!0)||(f.data(e[g],j,b,!0)||f.data(e[g],k,b,!0))&&f.data(e[g],i,f._Deferred(),!0))h++,l.done(m);m();return d.promise()}});var n=/[\n\t\r]/g,o=/\s+/,p=/\r/g,q=/^(?:button|input)$/i,r=/^(?:button|input|object|select|textarea)$/i,s=/^a(?:rea)?$/i,t=/^(?:autofocus|autoplay|async|checked|controls|defer|disabled|hidden|loop|multiple|open|readonly|required|scoped|selected)$/i,u=/\:|^on/,v,w;f.fn.extend({attr:function(a,b){return f.access(this,a,b,!0,f.attr)},removeAttr:function(a){return this.each(function(){f.removeAttr(this,a)})},prop:function(a,b){return f.access(this,a,b,!0,f.prop)},removeProp:function(a){a=f.propFix[a]||a;return this.each(function(){try{this[a]=b,delete this[a]}catch(c){}})},addClass:function(a){var b,c,d,e,g,h,i;if(f.isFunction(a))return this.each(function(b){f(this).addClass(a.call(this,b,this.className))});if(a&&typeof a=="string"){b=a.split(o);for(c=0,d=this.length;c<d;c++){e=this[c];if(e.nodeType===1)if(!e.className&&b.length===1)e.className=a;else{g=" "+e.className+" ";for(h=0,i=b.length;h<i;h++)~g.indexOf(" "+b[h]+" ")||(g+=b[h]+" ");e.className=f.trim(g)}}}return this},removeClass:function(a){var c,d,e,g,h,i,j;if(f.isFunction(a))return this.each(function(b){f(this).removeClass(a.call(this,b,this.className))});if(a&&typeof a=="string"||a===b){c=(a||"").split(o);for(d=0,e=this.length;d<e;d++){g=this[d];if(g.nodeType===1&&g.className)if(a){h=(" "+g.className+" ").replace(n," ");for(i=0,j=c.length;i<j;i++)h=h.replace(" "+c[i]+" "," ");g.className=f.trim(h)}else g.className=""}}return this},toggleClass:function(a,b){var c=typeof a,d=typeof b=="boolean";if(f.isFunction(a))return this.each(function(c){f(this).toggleClass(a.call(this,c,this.className,b),b)});return this.each(function(){if(c==="string"){var e,g=0,h=f(this),i=b,j=a.split(o);while(e=j[g++])i=d?i:!h.hasClass(e),h[i?"addClass":"removeClass"](e)}else if(c==="undefined"||c==="boolean")this.className&&f._data(this,"__className__",this.className),this.className=this.className||a===!1?"":f._data(this,"__className__")||""})},hasClass:function(a){var b=" "+a+" ";for(var c=0,d=this.length;c<d;c++)if((" "+this[c].className+" ").replace(n," ").indexOf(b)>-1)return!0;return!1},val:function(a){var c,d,e=this[0];if(!arguments.length){if(e){c=f.valHooks[e.nodeName.toLowerCase()]||f.valHooks[e.type];if(c&&"get"in c&&(d=c.get(e,"value"))!==b)return d;d=e.value;return typeof d=="string"?d.replace(p,""):d==null?"":d}return b}var g=f.isFunction(a);return this.each(function(d){var e=f(this),h;if(this.nodeType===1){g?h=a.call(this,d,e.val()):h=a,h==null?h="":typeof h=="number"?h+="":f.isArray(h)&&(h=f.map(h,function(a){return a==null?"":a+""})),c=f.valHooks[this.nodeName.toLowerCase()]||f.valHooks[this.type];if(!c||!("set"in c)||c.set(this,h,"value")===b)this.value=h}})}}),f.extend({valHooks:{option:{get:function(a){var b=a.attributes.value;return!b||b.specified?a.value:a.text}},select:{get:function(a){var b,c=a.selectedIndex,d=[],e=a.options,g=a.type==="select-one";if(c<0)return null;for(var h=g?c:0,i=g?c+1:e.length;h<i;h++){var j=e[h];if(j.selected&&(f.support.optDisabled?!j.disabled:j.getAttribute("disabled")===null)&&(!j.parentNode.disabled||!f.nodeName(j.parentNode,"optgroup"))){b=f(j).val();if(g)return b;d.push(b)}}if(g&&!d.length&&e.length)return f(e[c]).val();return d},set:function(a,b){var c=f.makeArray(b);f(a).find("option").each(function(){this.selected=f.inArray(f(this).val(),c)>=0}),c.length||(a.selectedIndex=-1);return c}}},attrFn:{val:!0,css:!0,html:!0,text:!0,data:!0,width:!0,height:!0,offset:!0},attrFix:{tabindex:"tabIndex"},attr:function(a,c,d,e){var g=a.nodeType;if(!a||g===3||g===8||g===2)return b;if(e&&c in f.attrFn)return f(a)[c](d);if(!("getAttribute"in a))return f.prop(a,c,d);var h,i,j=g!==1||!f.isXMLDoc(a);j&&(c=f.attrFix[c]||c,i=f.attrHooks[c],i||(t.test(c)?i=w:v&&c!=="className"&&(f.nodeName(a,"form")||u.test(c))&&(i=v)));if(d!==b){if(d===null){f.removeAttr(a,c);return b}if(i&&"set"in i&&j&&(h=i.set(a,d,c))!==b)return h;a.setAttribute(c,""+d);return d}if(i&&"get"in i&&j&&(h=i.get(a,c))!==null)return h;h=a.getAttribute(c);return h===null?b:h},removeAttr:function(a,b){var c;a.nodeType===1&&(b=f.attrFix[b]||b,f.support.getSetAttribute?a.removeAttribute(b):(f.attr(a,b,""),a.removeAttributeNode(a.getAttributeNode(b))),t.test(b)&&(c=f.propFix[b]||b)in a&&(a[c]=!1))},attrHooks:{type:{set:function(a,b){if(q.test(a.nodeName)&&a.parentNode)f.error("type property can't be changed");else if(!f.support.radioValue&&b==="radio"&&f.nodeName(a,"input")){var c=a.value;a.setAttribute("type",b),c&&(a.value=c);return b}}},tabIndex:{get:function(a){var c=a.getAttributeNode("tabIndex");return c&&c.specified?parseInt(c.value,10):r.test(a.nodeName)||s.test(a.nodeName)&&a.href?0:b}},value:{get:function(a,b){if(v&&f.nodeName(a,"button"))return v.get(a,b);return b in a?a.value:null},set:function(a,b,c){if(v&&f.nodeName(a,"button"))return v.set(a,b,c);a.value=b}}},propFix:{tabindex:"tabIndex",readonly:"readOnly","for":"htmlFor","class":"className",maxlength:"maxLength",cellspacing:"cellSpacing",cellpadding:"cellPadding",rowspan:"rowSpan",colspan:"colSpan",usemap:"useMap",frameborder:"frameBorder",contenteditable:"contentEditable"},prop:function(a,c,d){var e=a.nodeType;if(!a||e===3||e===8||e===2)return b;var g,h,i=e!==1||!f.isXMLDoc(a);i&&(c=f.propFix[c]||c,h=f.propHooks[c]);return d!==b?h&&"set"in h&&(g=h.set(a,d,c))!==b?g:a[c]=d:h&&"get"in h&&(g=h.get(a,c))!==b?g:a[c]},propHooks:{}}),w={get:function(a,c){return f.prop(a,c)?c.toLowerCase():b},set:function(a,b,c){var d;b===!1?f.removeAttr(a,c):(d=f.propFix[c]||c,d in a&&(a[d]=!0),a.setAttribute(c,c.toLowerCase()));return c}},f.support.getSetAttribute||(f.attrFix=f.propFix,v=f.attrHooks.name=f.attrHooks.title=f.valHooks.button={get:function(a,c){var d;d=a.getAttributeNode(c);return d&&d.nodeValue!==""?d.nodeValue:b},set:function(a,b,c){var d=a.getAttributeNode(c);if(d){d.nodeValue=b;return b}}},f.each(["width","height"],function(a,b){f.attrHooks[b]=f.extend(f.attrHooks[b],{set:function(a,c){if(c===""){a.setAttribute(b,"auto");return c}}})})),f.support.hrefNormalized||f.each(["href","src","width","height"],function(a,c){f.attrHooks[c]=f.extend(f.attrHooks[c],{get:function(a){var d=a.getAttribute(c,2);return d===null?b:d}})}),f.support.style||(f.attrHooks.style={get:function(a){return a.style.cssText.toLowerCase()||b},set:function(a,b){return a.style.cssText=""+b}}),f.support.optSelected||(f.propHooks.selected=f.extend(f.propHooks.selected,{get:function(a){var b=a.parentNode;b&&(b.selectedIndex,b.parentNode&&b.parentNode.selectedIndex)}})),f.support.checkOn||f.each(["radio","checkbox"],function(){f.valHooks[this]={get:function(a){return a.getAttribute("value")===null?"on":a.value}}}),f.each(["radio","checkbox"],function(){f.valHooks[this]=f.extend(f.valHooks[this],{set:function(a,b){if(f.isArray(b))return a.checked=f.inArray(f(a).val(),b)>=0}})});var x=/\.(.*)$/,y=/^(?:textarea|input|select)$/i,z=/\./g,A=/ /g,B=/[^\w\s.|`]/g,C=function(a){return a.replace(B,"\\$&")};f.event={add:function(a,c,d,e){if(a.nodeType!==3&&a.nodeType!==8){if(d===!1)d=D;else if(!d)return;var g,h;d.handler&&(g=d,d=g.handler),d.guid||(d.guid=f.guid++);var i=f._data(a);if(!i)return;var j=i.events,k=i.handle;j||(i.events=j={}),k||(i.handle=k=function(a){return typeof f!="undefined"&&(!a||f.event.triggered!==a.type)?f.event.handle.apply(k.elem,arguments):b}),k.elem=a,c=c.split(" ");var l,m=0,n;while(l=c[m++]){h=g?f.extend({},g):{handler:d,data:e},l.indexOf(".")>-1?(n=l.split("."),l=n.shift(),h.namespace=n.slice(0).sort().join(".")):(n=[],h.namespace=""),h.type=l,h.guid||(h.guid=d.guid);var o=j[l],p=f.event.special[l]||{};if(!o){o=j[l]=[];if(!p.setup||p.setup.call(a,e,n,k)===!1)a.addEventListener?a.addEventListener(l,k,!1):a.attachEvent&&a.attachEvent("on"+l,k)}p.add&&(p.add.call(a,h),h.handler.guid||(h.handler.guid=d.guid)),o.push(h),f.event.global[l]=!0}a=null}},global:{},remove:function(a,c,d,e){if(a.nodeType!==3&&a.nodeType!==8){d===!1&&(d=D);var g,h,i,j,k=0,l,m,n,o,p,q,r,s=f.hasData(a)&&f._data(a),t=s&&s.events;if(!s||!t)return;c&&c.type&&(d=c.handler,c=c.type);if(!c||typeof c=="string"&&c.charAt(0)==="."){c=c||"";for(h in t)f.event.remove(a,h+c);return}c=c.split(" ");while(h=c[k++]){r=h,q=null,l=h.indexOf(".")<0,m=[],l||(m=h.split("."),h=m.shift(),n=new RegExp("(^|\\.)"+f.map(m.slice(0).sort(),C).join("\\.(?:.*\\.)?")+"(\\.|$)")),p=t[h];if(!p)continue;if(!d){for(j=0;j<p.length;j++){q=p[j];if(l||n.test(q.namespace))f.event.remove(a,r,q.handler,j),p.splice(j--,1)}continue}o=f.event.special[h]||{};for(j=e||0;j<p.length;j++){q=p[j];if(d.guid===q.guid){if(l||n.test(q.namespace))e==null&&p.splice(j--,1),o.remove&&o.remove.call(a,q);if(e!=null)break}}if(p.length===0||e!=null&&p.length===1)(!o.teardown||o.teardown.call(a,m)===!1)&&f.removeEvent(a,h,s.handle),g=null,delete t[h]}if(f.isEmptyObject(t)){var u=s.handle;u&&(u.elem=null),delete s.events,delete s.handle,f.isEmptyObject(s)&&f.removeData(a,b,!0)}}},customEvent:{getData:!0,setData:!0,changeData:!0},trigger:function(c,d,e,g){var h=c.type||c,i=[],j;h.indexOf("!")>=0&&(h=h.slice(0,-1),j=!0),h.indexOf(".")>=0&&(i=h.split("."),h=i.
-shift(),i.sort());if(!!e&&!f.event.customEvent[h]||!!f.event.global[h]){c=typeof c=="object"?c[f.expando]?c:new f.Event(h,c):new f.Event(h),c.type=h,c.exclusive=j,c.namespace=i.join("."),c.namespace_re=new RegExp("(^|\\.)"+i.join("\\.(?:.*\\.)?")+"(\\.|$)");if(g||!e)c.preventDefault(),c.stopPropagation();if(!e){f.each(f.cache,function(){var a=f.expando,b=this[a];b&&b.events&&b.events[h]&&f.event.trigger(c,d,b.handle.elem)});return}if(e.nodeType===3||e.nodeType===8)return;c.result=b,c.target=e,d=d!=null?f.makeArray(d):[],d.unshift(c);var k=e,l=h.indexOf(":")<0?"on"+h:"";do{var m=f._data(k,"handle");c.currentTarget=k,m&&m.apply(k,d),l&&f.acceptData(k)&&k[l]&&k[l].apply(k,d)===!1&&(c.result=!1,c.preventDefault()),k=k.parentNode||k.ownerDocument||k===c.target.ownerDocument&&a}while(k&&!c.isPropagationStopped());if(!c.isDefaultPrevented()){var n,o=f.event.special[h]||{};if((!o._default||o._default.call(e.ownerDocument,c)===!1)&&(h!=="click"||!f.nodeName(e,"a"))&&f.acceptData(e)){try{l&&e[h]&&(n=e[l],n&&(e[l]=null),f.event.triggered=h,e[h]())}catch(p){}n&&(e[l]=n),f.event.triggered=b}}return c.result}},handle:function(c){c=f.event.fix(c||a.event);var d=((f._data(this,"events")||{})[c.type]||[]).slice(0),e=!c.exclusive&&!c.namespace,g=Array.prototype.slice.call(arguments,0);g[0]=c,c.currentTarget=this;for(var h=0,i=d.length;h<i;h++){var j=d[h];if(e||c.namespace_re.test(j.namespace)){c.handler=j.handler,c.data=j.data,c.handleObj=j;var k=j.handler.apply(this,g);k!==b&&(c.result=k,k===!1&&(c.preventDefault(),c.stopPropagation()));if(c.isImmediatePropagationStopped())break}}return c.result},props:"altKey attrChange attrName bubbles button cancelable charCode clientX clientY ctrlKey currentTarget data detail eventPhase fromElement handler keyCode layerX layerY metaKey newValue offsetX offsetY pageX pageY prevValue relatedNode relatedTarget screenX screenY shiftKey srcElement target toElement view wheelDelta which".split(" "),fix:function(a){if(a[f.expando])return a;var d=a;a=f.Event(d);for(var e=this.props.length,g;e;)g=this.props[--e],a[g]=d[g];a.target||(a.target=a.srcElement||c),a.target.nodeType===3&&(a.target=a.target.parentNode),!a.relatedTarget&&a.fromElement&&(a.relatedTarget=a.fromElement===a.target?a.toElement:a.fromElement);if(a.pageX==null&&a.clientX!=null){var h=a.target.ownerDocument||c,i=h.documentElement,j=h.body;a.pageX=a.clientX+(i&&i.scrollLeft||j&&j.scrollLeft||0)-(i&&i.clientLeft||j&&j.clientLeft||0),a.pageY=a.clientY+(i&&i.scrollTop||j&&j.scrollTop||0)-(i&&i.clientTop||j&&j.clientTop||0)}a.which==null&&(a.charCode!=null||a.keyCode!=null)&&(a.which=a.charCode!=null?a.charCode:a.keyCode),!a.metaKey&&a.ctrlKey&&(a.metaKey=a.ctrlKey),!a.which&&a.button!==b&&(a.which=a.button&1?1:a.button&2?3:a.button&4?2:0);return a},guid:1e8,proxy:f.proxy,special:{ready:{setup:f.bindReady,teardown:f.noop},live:{add:function(a){f.event.add(this,N(a.origType,a.selector),f.extend({},a,{handler:M,guid:a.handler.guid}))},remove:function(a){f.event.remove(this,N(a.origType,a.selector),a)}},beforeunload:{setup:function(a,b,c){f.isWindow(this)&&(this.onbeforeunload=c)},teardown:function(a,b){this.onbeforeunload===b&&(this.onbeforeunload=null)}}}},f.removeEvent=c.removeEventListener?function(a,b,c){a.removeEventListener&&a.removeEventListener(b,c,!1)}:function(a,b,c){a.detachEvent&&a.detachEvent("on"+b,c)},f.Event=function(a,b){if(!this.preventDefault)return new f.Event(a,b);a&&a.type?(this.originalEvent=a,this.type=a.type,this.isDefaultPrevented=a.defaultPrevented||a.returnValue===!1||a.getPreventDefault&&a.getPreventDefault()?E:D):this.type=a,b&&f.extend(this,b),this.timeStamp=f.now(),this[f.expando]=!0},f.Event.prototype={preventDefault:function(){this.isDefaultPrevented=E;var a=this.originalEvent;!a||(a.preventDefault?a.preventDefault():a.returnValue=!1)},stopPropagation:function(){this.isPropagationStopped=E;var a=this.originalEvent;!a||(a.stopPropagation&&a.stopPropagation(),a.cancelBubble=!0)},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=E,this.stopPropagation()},isDefaultPrevented:D,isPropagationStopped:D,isImmediatePropagationStopped:D};var F=function(a){var b=a.relatedTarget,c=!1,d=a.type;a.type=a.data,b!==this&&(b&&(c=f.contains(this,b)),c||(f.event.handle.apply(this,arguments),a.type=d))},G=function(a){a.type=a.data,f.event.handle.apply(this,arguments)};f.each({mouseenter:"mouseover",mouseleave:"mouseout"},function(a,b){f.event.special[a]={setup:function(c){f.event.add(this,b,c&&c.selector?G:F,a)},teardown:function(a){f.event.remove(this,b,a&&a.selector?G:F)}}}),f.support.submitBubbles||(f.event.special.submit={setup:function(a,b){if(!f.nodeName(this,"form"))f.event.add(this,"click.specialSubmit",function(a){var b=a.target,c=b.type;(c==="submit"||c==="image")&&f(b).closest("form").length&&K("submit",this,arguments)}),f.event.add(this,"keypress.specialSubmit",function(a){var b=a.target,c=b.type;(c==="text"||c==="password")&&f(b).closest("form").length&&a.keyCode===13&&K("submit",this,arguments)});else return!1},teardown:function(a){f.event.remove(this,".specialSubmit")}});if(!f.support.changeBubbles){var H,I=function(a){var b=a.type,c=a.value;b==="radio"||b==="checkbox"?c=a.checked:b==="select-multiple"?c=a.selectedIndex>-1?f.map(a.options,function(a){return a.selected}).join("-"):"":f.nodeName(a,"select")&&(c=a.selectedIndex);return c},J=function(c){var d=c.target,e,g;if(!!y.test(d.nodeName)&&!d.readOnly){e=f._data(d,"_change_data"),g=I(d),(c.type!=="focusout"||d.type!=="radio")&&f._data(d,"_change_data",g);if(e===b||g===e)return;if(e!=null||g)c.type="change",c.liveFired=b,f.event.trigger(c,arguments[1],d)}};f.event.special.change={filters:{focusout:J,beforedeactivate:J,click:function(a){var b=a.target,c=f.nodeName(b,"input")?b.type:"";(c==="radio"||c==="checkbox"||f.nodeName(b,"select"))&&J.call(this,a)},keydown:function(a){var b=a.target,c=f.nodeName(b,"input")?b.type:"";(a.keyCode===13&&!f.nodeName(b,"textarea")||a.keyCode===32&&(c==="checkbox"||c==="radio")||c==="select-multiple")&&J.call(this,a)},beforeactivate:function(a){var b=a.target;f._data(b,"_change_data",I(b))}},setup:function(a,b){if(this.type==="file")return!1;for(var c in H)f.event.add(this,c+".specialChange",H[c]);return y.test(this.nodeName)},teardown:function(a){f.event.remove(this,".specialChange");return y.test(this.nodeName)}},H=f.event.special.change.filters,H.focus=H.beforeactivate}f.support.focusinBubbles||f.each({focus:"focusin",blur:"focusout"},function(a,b){function e(a){var c=f.event.fix(a);c.type=b,c.originalEvent={},f.event.trigger(c,null,c.target),c.isDefaultPrevented()&&a.preventDefault()}var d=0;f.event.special[b]={setup:function(){d++===0&&c.addEventListener(a,e,!0)},teardown:function(){--d===0&&c.removeEventListener(a,e,!0)}}}),f.each(["bind","one"],function(a,c){f.fn[c]=function(a,d,e){var g;if(typeof a=="object"){for(var h in a)this[c](h,d,a[h],e);return this}if(arguments.length===2||d===!1)e=d,d=b;c==="one"?(g=function(a){f(this).unbind(a,g);return e.apply(this,arguments)},g.guid=e.guid||f.guid++):g=e;if(a==="unload"&&c!=="one")this.one(a,d,e);else for(var i=0,j=this.length;i<j;i++)f.event.add(this[i],a,g,d);return this}}),f.fn.extend({unbind:function(a,b){if(typeof a=="object"&&!a.preventDefault)for(var c in a)this.unbind(c,a[c]);else for(var d=0,e=this.length;d<e;d++)f.event.remove(this[d],a,b);return this},delegate:function(a,b,c,d){return this.live(b,c,d,a)},undelegate:function(a,b,c){return arguments.length===0?this.unbind("live"):this.die(b,null,c,a)},trigger:function(a,b){return this.each(function(){f.event.trigger(a,b,this)})},triggerHandler:function(a,b){if(this[0])return f.event.trigger(a,b,this[0],!0)},toggle:function(a){var b=arguments,c=a.guid||f.guid++,d=0,e=function(c){var e=(f.data(this,"lastToggle"+a.guid)||0)%d;f.data(this,"lastToggle"+a.guid,e+1),c.preventDefault();return b[e].apply(this,arguments)||!1};e.guid=c;while(d<b.length)b[d++].guid=c;return this.click(e)},hover:function(a,b){return this.mouseenter(a).mouseleave(b||a)}});var L={focus:"focusin",blur:"focusout",mouseenter:"mouseover",mouseleave:"mouseout"};f.each(["live","die"],function(a,c){f.fn[c]=function(a,d,e,g){var h,i=0,j,k,l,m=g||this.selector,n=g?this:f(this.context);if(typeof a=="object"&&!a.preventDefault){for(var o in a)n[c](o,d,a[o],m);return this}if(c==="die"&&!a&&g&&g.charAt(0)==="."){n.unbind(g);return this}if(d===!1||f.isFunction(d))e=d||D,d=b;a=(a||"").split(" ");while((h=a[i++])!=null){j=x.exec(h),k="",j&&(k=j[0],h=h.replace(x,""));if(h==="hover"){a.push("mouseenter"+k,"mouseleave"+k);continue}l=h,L[h]?(a.push(L[h]+k),h=h+k):h=(L[h]||h)+k;if(c==="live")for(var p=0,q=n.length;p<q;p++)f.event.add(n[p],"live."+N(h,m),{data:d,selector:m,handler:e,origType:h,origHandler:e,preType:l});else n.unbind("live."+N(h,m),e)}return this}}),f.each("blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error".split(" "),function(a,b){f.fn[b]=function(a,c){c==null&&(c=a,a=null);return arguments.length>0?this.bind(b,a,c):this.trigger(b)},f.attrFn&&(f.attrFn[b]=!0)}),function(){function u(a,b,c,d,e,f){for(var g=0,h=d.length;g<h;g++){var i=d[g];if(i){var j=!1;i=i[a];while(i){if(i.sizcache===c){j=d[i.sizset];break}if(i.nodeType===1){f||(i.sizcache=c,i.sizset=g);if(typeof b!="string"){if(i===b){j=!0;break}}else if(k.filter(b,[i]).length>0){j=i;break}}i=i[a]}d[g]=j}}}function t(a,b,c,d,e,f){for(var g=0,h=d.length;g<h;g++){var i=d[g];if(i){var j=!1;i=i[a];while(i){if(i.sizcache===c){j=d[i.sizset];break}i.nodeType===1&&!f&&(i.sizcache=c,i.sizset=g);if(i.nodeName.toLowerCase()===b){j=i;break}i=i[a]}d[g]=j}}}var a=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^\[\]]*\]|['"][^'"]*['"]|[^\[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,d=0,e=Object.prototype.toString,g=!1,h=!0,i=/\\/g,j=/\W/;[0,0].sort(function(){h=!1;return 0});var k=function(b,d,f,g){f=f||[],d=d||c;var h=d;if(d.nodeType!==1&&d.nodeType!==9)return[];if(!b||typeof b!="string")return f;var i,j,n,o,q,r,s,t,u=!0,w=k.isXML(d),x=[],y=b;do{a.exec(""),i=a.exec(y);if(i){y=i[3],x.push(i[1]);if(i[2]){o=i[3];break}}}while(i);if(x.length>1&&m.exec(b))if(x.length===2&&l.relative[x[0]])j=v(x[0]+x[1],d);else{j=l.relative[x[0]]?[d]:k(x.shift(),d);while(x.length)b=x.shift(),l.relative[b]&&(b+=x.shift()),j=v(b,j)}else{!g&&x.length>1&&d.nodeType===9&&!w&&l.match.ID.test(x[0])&&!l.match.ID.test(x[x.length-1])&&(q=k.find(x.shift(),d,w),d=q.expr?k.filter(q.expr,q.set)[0]:q.set[0]);if(d){q=g?{expr:x.pop(),set:p(g)}:k.find(x.pop(),x.length===1&&(x[0]==="~"||x[0]==="+")&&d.parentNode?d.parentNode:d,w),j=q.expr?k.filter(q.expr,q.set):q.set,x.length>0?n=p(j):u=!1;while(x.length)r=x.pop(),s=r,l.relative[r]?s=x.pop():r="",s==null&&(s=d),l.relative[r](n,s,w)}else n=x=[]}n||(n=j),n||k.error(r||b);if(e.call(n)==="[object Array]")if(!u)f.push.apply(f,n);else if(d&&d.nodeType===1)for(t=0;n[t]!=null;t++)n[t]&&(n[t]===!0||n[t].nodeType===1&&k.contains(d,n[t]))&&f.push(j[t]);else for(t=0;n[t]!=null;t++)n[t]&&n[t].nodeType===1&&f.push(j[t]);else p(n,f);o&&(k(o,h,f,g),k.uniqueSort(f));return f};k.uniqueSort=function(a){if(r){g=h,a.sort(r);if(g)for(var b=1;b<a.length;b++)a[b]===a[b-1]&&a.splice(b--,1)}return a},k.matches=function(a,b){return k(a,null,null,b)},k.matchesSelector=function(a,b){return k(b,null,null,[a]).length>0},k.find=function(a,b,c){var d;if(!a)return[];for(var e=0,f=l.order.length;e<f;e++){var g,h=l.order[e];if(g=l.leftMatch[h].exec(a)){var j=g[1];g.splice(1,1);if(j.substr(j.length-1)!=="\\"){g[1]=(g[1]||"").replace(i,""),d=l.find[h](g,b,c);if(d!=null){a=a.replace(l.match[h],"");break}}}}d||(d=typeof b.getElementsByTagName!="undefined"?b.getElementsByTagName("*"):[]);return{set:d,expr:a}},k.filter=function(a,c,d,e){var f,g,h=a,i=[],j=c,m=c&&c[0]&&k.isXML(c[0]);while(a&&c.length){for(var n in l.filter)if((f=l.leftMatch[n].exec(a))!=null&&f[2]){var o,p,q=l.filter[n],r=f[1];g=!1,f.splice(1,1);if(r.substr(r.length-1)==="\\")continue;j===i&&(i=[]);if(l.preFilter[n]){f=l.preFilter[n](f,j,d,i,e,m);if(!f)g=o=!0;else if(f===!0)continue}if(f)for(var s=0;(p=j[s])!=null;s++)if(p){o=q(p,f,s,j);var t=e^!!o;d&&o!=null?t?g=!0:j[s]=!1:t&&(i.push(p),g=!0)}if(o!==b){d||(j=i),a=a.replace(l.match[n],"");if(!g)return[];break}}if(a===h)if(g==null)k.error(a);else break;h=a}return j},k.error=function(a){throw"Syntax error, unrecognized expression: "+a};var l=k.selectors={order:["ID","NAME","TAG"],match:{ID:/#((?:[\w\u00c0-\uFFFF\-]|\\.)+)/,CLASS:/\.((?:[\w\u00c0-\uFFFF\-]|\\.)+)/,NAME:/\[name=['"]*((?:[\w\u00c0-\uFFFF\-]|\\.)+)['"]*\]/,ATTR:/\[\s*((?:[\w\u00c0-\uFFFF\-]|\\.)+)\s*(?:(\S?=)\s*(?:(['"])(.*?)\3|(#?(?:[\w\u00c0-\uFFFF\-]|\\.)*)|)|)\s*\]/,TAG:/^((?:[\w\u00c0-\uFFFF\*\-]|\\.)+)/,CHILD:/:(only|nth|last|first)-child(?:\(\s*(even|odd|(?:[+\-]?\d+|(?:[+\-]?\d*)?n\s*(?:[+\-]\s*\d+)?))\s*\))?/,POS:/:(nth|eq|gt|lt|first|last|even|odd)(?:\((\d*)\))?(?=[^\-]|$)/,PSEUDO:/:((?:[\w\u00c0-\uFFFF\-]|\\.)+)(?:\((['"]?)((?:\([^\)]+\)|[^\(\)]*)+)\2\))?/},leftMatch:{},attrMap:{"class":"className","for":"htmlFor"},attrHandle:{href:function(a){return a.getAttribute("href")},type:function(a){return a.getAttribute("type")}},relative:{"+":function(a,b){var c=typeof b=="string",d=c&&!j.test(b),e=c&&!d;d&&(b=b.toLowerCase());for(var f=0,g=a.length,h;f<g;f++)if(h=a[f]){while((h=h.previousSibling)&&h.nodeType!==1);a[f]=e||h&&h.nodeName.toLowerCase()===b?h||!1:h===b}e&&k.filter(b,a,!0)},">":function(a,b){var c,d=typeof b=="string",e=0,f=a.length;if(d&&!j.test(b)){b=b.toLowerCase();for(;e<f;e++){c=a[e];if(c){var g=c.parentNode;a[e]=g.nodeName.toLowerCase()===b?g:!1}}}else{for(;e<f;e++)c=a[e],c&&(a[e]=d?c.parentNode:c.parentNode===b);d&&k.filter(b,a,!0)}},"":function(a,b,c){var e,f=d++,g=u;typeof b=="string"&&!j.test(b)&&(b=b.toLowerCase(),e=b,g=t),g("parentNode",b,f,a,e,c)},"~":function(a,b,c){var e,f=d++,g=u;typeof b=="string"&&!j.test(b)&&(b=b.toLowerCase(),e=b,g=t),g("previousSibling",b,f,a,e,c)}},find:{ID:function(a,b,c){if(typeof b.getElementById!="undefined"&&!c){var d=b.getElementById(a[1]);return d&&d.parentNode?[d]:[]}},NAME:function(a,b){if(typeof b.getElementsByName!="undefined"){var c=[],d=b.getElementsByName(a[1]);for(var e=0,f=d.length;e<f;e++)d[e].getAttribute("name")===a[1]&&c.push(d[e]);return c.length===0?null:c}},TAG:function(a,b){if(typeof b.getElementsByTagName!="undefined")return b.getElementsByTagName(a[1])}},preFilter:{CLASS:function(a,b,c,d,e,f){a=" "+a[1].replace(i,"")+" ";if(f)return a;for(var g=0,h;(h=b[g])!=null;g++)h&&(e^(h.className&&(" "+h.className+" ").replace(/[\t\n\r]/g," ").indexOf(a)>=0)?c||d.push(h):c&&(b[g]=!1));return!1},ID:function(a){return a[1].replace(i,"")},TAG:function(a,b){return a[1].replace(i,"").toLowerCase()},CHILD:function(a){if(a[1]==="nth"){a[2]||k.error(a[0]),a[2]=a[2].replace(/^\+|\s*/g,"");var b=/(-?)(\d*)(?:n([+\-]?\d*))?/.exec(a[2]==="even"&&"2n"||a[2]==="odd"&&"2n+1"||!/\D/.test(a[2])&&"0n+"+a[2]||a[2]);a[2]=b[1]+(b[2]||1)-0,a[3]=b[3]-0}else a[2]&&k.error(a[0]);a[0]=d++;return a},ATTR:function(a,b,c,d,e,f){var g=a[1]=a[1].replace(i,"");!f&&l.attrMap[g]&&(a[1]=l.attrMap[g]),a[4]=(a[4]||a[5]||"").replace(i,""),a[2]==="~="&&(a[4]=" "+a[4]+" ");return a},PSEUDO:function(b,c,d,e,f){if(b[1]==="not")if((a.exec(b[3])||"").length>1||/^\w/.test(b[3]))b[3]=k(b[3],null,null,c);else{var g=k.filter(b[3],c,d,!0^f);d||e.push.apply(e,g);return!1}else if(l.match.POS.test(b[0])||l.match.CHILD.test(b[0]))return!0;return b},POS:function(a){a.unshift(!0);return a}},filters:{enabled:function(a){return a.disabled===!1&&a.type!=="hidden"},disabled:function(a){return a.disabled===!0},checked:function(a){return a.checked===!0},selected:function(a){a.parentNode&&a.parentNode.selectedIndex;return a.selected===!0},parent:function(a){return!!a.firstChild},empty:function(a){return!a.firstChild},has:function(a,b,c){return!!k(c[3],a).length},header:function(a){return/h\d/i.test(a.nodeName)},text:function(a){var b=a.getAttribute("type"),c=a.type;return a.nodeName.toLowerCase()==="input"&&"text"===c&&(b===c||b===null)},radio:function(a){return a.nodeName.toLowerCase()==="input"&&"radio"===a.type},checkbox:function(a){return a.nodeName.toLowerCase()==="input"&&"checkbox"===a.type},file:function(a){return a.nodeName.toLowerCase()==="input"&&"file"===a.type},password:function(a){return a.nodeName.toLowerCase()==="input"&&"password"===a.type},submit:function(a){var b=a.nodeName.toLowerCase();return(b==="input"||b==="button")&&"submit"===a.type},image:function(a){return a.nodeName.toLowerCase()==="input"&&"image"===a.type},reset:function(a){var b=a.nodeName.toLowerCase();return(b==="input"||b==="button")&&"reset"===a.type},button:function(a){var b=a.nodeName.toLowerCase();return b==="input"&&"button"===a.type||b==="button"},input:function(a){return/input|select|textarea|button/i.test(a.nodeName)},focus:function(a){return a===a.ownerDocument.activeElement}},setFilters:{first:function(a,b){return b===0},last:function(a,b,c,d){return b===d.length-1},even:function(a,b){return b%2===0},odd:function(a,b){return b%2===1},lt:function(a,b,c){return b<c[3]-0},gt:function(a,b,c){return b>c[3]-0},nth:function(a,b,c){return c[3]-0===b},eq:function(a,b,c){return c[3]-0===b}},filter:{PSEUDO:function(a,b,c,d){var e=b[1],f=l.filters[e];if(f)return f(a,c,b,d);if(e==="contains")return(a.textContent||a.innerText||k.getText([a])||"").indexOf(b[3])>=0;if(e==="not"){var g=b[3];for(var h=0,i=g.length;h<i;h++)if(g[h]===a)return!1;return!0}k.error(e)},CHILD:function(a,b){var c=b[1],d=a;switch(c){case"only":case"first":while(d=d.previousSibling)if(d.nodeType===1)return!1;if(c==="first")return!0;d=a;case"last":while(d=d.nextSibling)if(d.nodeType===1)return!1;return!0;case"nth":var e=b[2],f=b[3];if(e===1&&f===0)return!0;var g=b[0],h=a.parentNode;if(h&&(h.sizcache!==g||!a.nodeIndex)){var i=0;for(d=h.firstChild;d;d=d.nextSibling)d.nodeType===1&&(d.nodeIndex=++i);h.sizcache=g}var j=a.nodeIndex-f;return e===0?j===0:j%e===0&&j/e>=0}},ID:function(a,b){return a.nodeType===1&&a.getAttribute("id")===b},TAG:function(a,b){return b==="*"&&a.nodeType===1||a.nodeName.toLowerCase()===b},CLASS:function(a,b){return(" "+(a.className||a.getAttribute("class"))+" ").indexOf(b)>-1},ATTR:function(a,b){var c=b[1],d=l.attrHandle[c]?l.attrHandle[c](a):a[c]!=null?a[c]:a.getAttribute(c),e=d+"",f=b[2],g=b[4];return d==null?f==="!=":f==="="?e===g:f==="*="?e.indexOf(g)>=0:f==="~="?(" "+e+" ").indexOf(g)>=0:g?f==="!="?e!==g:f==="^="?e.indexOf(g)===0:f==="$="?e.substr(e.length-g.length)===g:f==="|="?e===g||e.substr(0,g.length+1)===g+"-":!1:e&&d!==!1},POS:function(a,b,c,d){var e=b[2],f=l.setFilters[e];if(f)return f(a,c,b,d)}}},m=l.match.POS,n=function(a,b){return"\\"+(b-0+1)};for(var o in l.match)l.match[o]=new RegExp(l.match[o].source+/(?![^\[]*\])(?![^\(]*\))/.source),l.leftMatch[o]=new RegExp(/(^(?:.|\r|\n)*?)/.source+l.match[o].source.replace(/\\(\d+)/g,n));var p=function(a,b){a=Array.prototype.slice.call(a,0);if(b){b.push.apply(b,a);return b}return a};try{Array.prototype.slice.call(c.documentElement.childNodes,0)[0].nodeType}catch(q){p=function(a,b){var c=0,d=b||[];if(e.call(a)==="[object Array]")Array.prototype.push.apply(d,a);else if(typeof a.length=="number")for(var f=a.length;c<f;c++)d.push(a[c]);else for(;a[c];c++)d.push(a[c]);return d}}var r,s;c.documentElement.compareDocumentPosition?r=function(a,b){if(a===b){g=!0;return 0}if(!a.compareDocumentPosition||!b.compareDocumentPosition)return a.compareDocumentPosition?-1:1;return a.compareDocumentPosition(b)&4?-1:1}:(r=function(a,b){if(a===b){g=!0;return 0}if(a.sourceIndex&&b.sourceIndex)return a.sourceIndex-b.sourceIndex;var c,d,e=[],f=[],h=a.parentNode,i=b.parentNode,j=h;if(h===i)return s(a,b);if(!h)return-1;if(!i)return 1;while(j)e.unshift(j),j=j.parentNode;j=i;while(j)f.unshift(j),j=j.parentNode;c=e.length,d=f.length;for(var k=0;k<c&&k<d;k++)if(e[k]!==f[k])return s(e[k],f[k]);return k===c?s(a,f[k],-1):s(e[k],b,1)},s=function(a,b,c){if(a===b)return c;var d=a.nextSibling;while(d){if(d===b)return-1;d=d.nextSibling}return 1}),k.getText=function(a){var b="",c;for(var d=0;a[d];d++)c=a[d],c.nodeType===3||c.nodeType===4?b+=c.nodeValue:c.nodeType!==8&&(b+=k.getText(c.childNodes));return b},function(){var a=c.createElement("div"),d="script"+(new Date).getTime(),e=c.documentElement;a.innerHTML="<a name='"+d+"'/>",e.insertBefore(a,e.firstChild),c.getElementById(d)&&(l.find.ID=function(a,c,d){if(typeof c.getElementById!="undefined"&&!d){var e=c.getElementById(a[1]);return e?e.id===a[1]||typeof e.getAttributeNode!="undefined"&&e.getAttributeNode("id").nodeValue===a[1]?[e]:b:[]}},l.filter.ID=function(a,b){var c=typeof a.getAttributeNode!="undefined"&&a.getAttributeNode("id");return a.nodeType===1&&c&&c.nodeValue===b}),e.removeChild(a),e=a=null}(),function(){var a=c.createElement("div");a.appendChild(c.createComment("")),a.getElementsByTagName("*").length>0&&(l.find.TAG=function(a,b){var c=b.getElementsByTagName(a[1]);if(a[1]==="*"){var d=[];for(var e=0;c[e];e++)c[e].nodeType===1&&d.push(c[e]);c=d}return c}),a.innerHTML="<a href='#'></a>",a.firstChild&&typeof a.firstChild.getAttribute!="undefined"&&a.firstChild.getAttribute("href")!=="#"&&(l.attrHandle.href=function(a){return a.getAttribute("href",2)}),a=null}(),c.querySelectorAll&&function(){var a=k,b=c.createElement("div"),d="__sizzle__";b.innerHTML="<p class='TEST'></p>";if(!b.querySelectorAll||b.querySelectorAll(".TEST").length!==0){k=function(b,e,f,g){e=e||c;if(!g&&!k.isXML(e)){var h=/^(\w+$)|^\.([\w\-]+$)|^#([\w\-]+$)/.exec(b);if(h&&(e.nodeType===1||e.nodeType===9)){if(h[1])return p(e.getElementsByTagName(b),f);if(h[2]&&l.find.CLASS&&e.getElementsByClassName)return p(e.getElementsByClassName(h[2]),f)}if(e.nodeType===9){if(b==="body"&&e.body)return p([e.body],f);if(h&&h[3]){var i=e.getElementById(h[3]);if(!i||!i.parentNode)return p([],f);if(i.id===h[3])return p([i],f)}try{return p(e.querySelectorAll(b),f)}catch(j){}}else if(e.nodeType===1&&e.nodeName.toLowerCase()!=="object"){var m=e,n=e.getAttribute("id"),o=n||d,q=e.parentNode,r=/^\s*[+~]/.test(b);n?o=o.replace(/'/g,"\\$&"):e.setAttribute("id",o),r&&q&&(e=e.parentNode);try{if(!r||q)return p(e.querySelectorAll("[id='"+o+"'] "+b),f)}catch(s){}finally{n||m.removeAttribute("id")}}}return a(b,e,f,g)};for(var e in a)k[e]=a[e];b=null}}(),function(){var a=c.documentElement,b=a.matchesSelector||a.mozMatchesSelector||a.webkitMatchesSelector||a.msMatchesSelector;if(b){var d=!b.call(c.createElement("div"),"div"),e=!1;try{b.call(c.documentElement,"[test!='']:sizzle")}catch(f){e=!0}k.matchesSelector=function(a,c){c=c.replace(/\=\s*([^'"\]]*)\s*\]/g,"='$1']");if(!k.isXML(a))try{if(e||!l.match.PSEUDO.test(c)&&!/!=/.test(c)){var f=b.call(a,c);if(f||!d||a.document&&a.document.nodeType!==11)return f}}catch(g){}return k(c,null,null,[a]).length>0}}}(),function(){var a=c.createElement("div");a.innerHTML="<div class='test e'></div><div class='test'></div>";if(!!a.getElementsByClassName&&a.getElementsByClassName("e").length!==0){a.lastChild.className="e";if(a.getElementsByClassName("e").length===1)return;l.order.splice(1,0,"CLASS"),l.find.CLASS=function(a,b,c){if(typeof b.getElementsByClassName!="undefined"&&!c)return b.getElementsByClassName(a[1])},a=null}}(),c.documentElement.contains?k.contains=function(a,b){return a!==b&&(a.contains?a.contains(b):!0)}:c.documentElement.compareDocumentPosition?k.contains=function(a,b){return!!(a.compareDocumentPosition(b)&16)}:k.contains=function(){return!1},k.isXML=function(a){var b=(a?a.ownerDocument||a:0).documentElement;return b?b.nodeName!=="HTML":!1};var v=function(a,b){var c,d=[],e="",f=b.nodeType?[b]:b;while(c=l.match.PSEUDO.exec(a))e+=c[0],a=a.replace(l.match.PSEUDO,"");a=l.relative[a]?a+"*":a;for(var g=0,h=f.length;g<h;g++)k(a,f[g],d);return k.filter(e,d)};f.find=k,f.expr=k.selectors,f.expr[":"]=f.expr.filters,f.unique=k.uniqueSort,f.text=k.getText,f.isXMLDoc=k.isXML,f.contains=k.contains}();var O=/Until$/,P=/^(?:parents|prevUntil|prevAll)/,Q=/,/,R=/^.[^:#\[\.,]*$/,S=Array.prototype.slice,T=f.expr.match.POS,U={children:!0,contents:!0,next:!0,prev:!0};f.fn.extend({find:function(a){var b=this,c,d;if(typeof a!="string")return f(a).filter(function(){for(c=0,d=b.length;c<d;c++)if(f.contains(b[c],this))return!0});var e=this.pushStack("","find",a),g,h,i;for(c=0,d=this.length;c<d;c++){g=e.length,f.find(a,this[c],e);if(c>0)for(h=g;h<e.length;h++)for(i=0;i<g;i++)if(e[i]===e[h]){e.splice(h--,1);break}}return e},has:function(a){var b=f(a);return this.filter(function(){for(var a=0,c=b.length;a<c;a++)if(f.contains(this,b[a]))return!0})},not:function(a){return this.pushStack(W(this,a,!1),"not",a)},filter:function(a){return this.pushStack(W(this,a,!0),"filter",a)},is:function(a){return!!a&&(typeof a=="string"?f.filter(a,this).length>0:this.filter(a).length>0)},closest:function(a,b){var c=[],d,e,g=this[0];if(f.isArray(a)){var h,i,j={},k=1;if(g&&a.length){for(d=0,e=a.length;d<e;d++)i=a[d],j[i]||(j[i]=T.test(i)?f(i,b||this.context):i);while(g&&g.ownerDocument&&g!==b){for(i in j)h=j[i],(h.jquery?h.index(g)>-1:f(g).is(h))&&c.push({selector:i,elem:g,level:k});g=g.parentNode,k++}}return c}var l=T.test(a)||typeof a!="string"?f(a,b||this.context):0;for(d=0,e=this.length;d<e;d++){g=this[d];while(g){if(l?l.index(g)>-1:f.find.matchesSelector(g,a)){c.push(g);break}g=g.parentNode;if(!g||!g.ownerDocument||g===b||g.nodeType===11)break}}c=c.length>1?f.unique(c):c;return this.pushStack(c,"closest",a)},index:function(a){if(!a||typeof a=="string")return f.inArray(this[0],a?f(a):this.parent().children());return f.inArray(a.jquery?a[0]:a,this)},add:function(a,b){var c=typeof a=="string"?f(a,b):f.makeArray(a&&a.nodeType?[a]:a),d=f.merge(this.get(),c);return this.pushStack(V(c[0])||V(d[0])?d:f.unique(d))},andSelf:function(){return this.add(this.prevObject)}}),f.each({parent:function(a){var b=a.parentNode;return b&&b.nodeType!==11?b:null},parents:function(a){return f.dir(a,"parentNode")},parentsUntil:function(a,b,c){return f.dir(a,"parentNode",c)},next:function(a){return f.nth(a,2,"nextSibling")},prev:function(a){return f.nth(a,2,"previousSibling")},nextAll:function(a){return f.dir(a,"nextSibling")},prevAll:function(a){return f.dir(a,"previousSibling")},nextUntil:function(a,b,c){return f.dir(a,"nextSibling",c)},prevUntil:function(a,b,c){return f.dir(a,"previousSibling",c)},siblings:function(a){return f.sibling(a.parentNode.firstChild,a)},children:function(a){return f.sibling(a.firstChild)},contents:function(a){return f.nodeName(a,"iframe")?a.contentDocument||a.contentWindow.document:f.makeArray(a.childNodes)}},function(a,b){f.fn[a]=function(c,d){var e=f.map(this,b,c),g=S.call(arguments);O.test(a)||(d=c),d&&typeof d=="string"&&(e=f.filter(d,e)),e=this.length>1&&!U[a]?f.unique(e):e,(this.length>1||Q.test(d))&&P.test(a)&&(e=e.reverse());return this.pushStack(e,a,g.join(","))}}),f.extend({filter:function(a,b,c){c&&(a=":not("+a+")");return b.length===1?f.find.matchesSelector(b[0],a)?[b[0]]:[]:f.find.matches(a,b)},dir:function(a,c,d){var e=[],g=a[c];while(g&&g.nodeType!==9&&(d===b||g.nodeType!==1||!f(g).is(d)))g.nodeType===1&&e.push(g),g=g[c];return e},nth:function(a,b,c,d){b=b||1;var e=0;for(;a;a=a[c])if(a.nodeType===1&&++e===b)break;return a},sibling:function(a,b){var c=[];for(;a;a=a.nextSibling)a.nodeType===1&&a!==b&&c.push(a);return c}});var X=/ jQuery\d+="(?:\d+|null)"/g,Y=/^\s+/,Z=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/ig,$=/<([\w:]+)/,_=/<tbody/i,ba=/<|&#?\w+;/,bb=/<(?:script|object|embed|option|style)/i,bc=/checked\s*(?:[^=]|=\s*.checked.)/i,bd=/\/(java|ecma)script/i,be=/^\s*<!(?:\[CDATA\[|\-\-)/,bf={option:[1,"<select multiple='multiple'>","</select>"],legend:[1,"<fieldset>","</fieldset>"],thead:[1,"<table>","</table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],col:[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"],area:[1,"<map>","</map>"],_default:[0,"",""]};bf.optgroup=bf.option,bf.tbody=bf.tfoot=bf.colgroup=bf.caption=bf.thead,bf.th=bf.td,f.support.htmlSerialize||(bf._default=[1,"div<div>","</div>"]),f.fn.extend({text:function(a){if(f.isFunction(a))return this.each(function(b){var c=f(this);c.text(a.call(this,b,c.text()))});if(typeof a!="object"&&a!==b)return this.empty().append((this[0]&&this[0].ownerDocument||c).createTextNode(a));return f.text(this)},wrapAll:function(a){if(f.isFunction(a))return this.each(function(b){f(this).wrapAll(a.call(this,b))});if(this[0]){var b=f(a,this[0].ownerDocument).eq(0).clone(!0);this[0].parentNode&&b.insertBefore(this[0]),b.map(function(){var a=this;while(a.firstChild&&a.firstChild.nodeType===1)a=a.firstChild;return a}).append(this)}return this},wrapInner:function(a){if(f.isFunction(a))return this.each(function(b){f(this).wrapInner(a.call(this,b))});return this.each(function(){var b=f(this),c=b.contents();c.length?c.wrapAll(a):b.append(a)})},wrap:function(a){return this.each(function(){f(this).wrapAll(a)})},unwrap:function(){return this.parent().each(function(){f.nodeName(this,"body")||f(this).replaceWith(this.childNodes)}).end()},append:function(){return this.domManip(arguments,!0,function(a){this.nodeType===1&&this.appendChild(a)})},prepend:function(){return this.domManip(arguments,!0,function(a){this.nodeType===1&&this.insertBefore(a,this.firstChild)})},before:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this)});if(arguments.length){var a=f(arguments[0]);a.push.apply(a,this.toArray());return this.pushStack(a,"before",arguments)}},after:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this.nextSibling)});if(arguments.length){var a=this.pushStack(this,"after",arguments);a.push.apply(a,f(arguments[0]).toArray());return a}},remove:function(a,b){for(var c=0,d;(d=this[c])!=null;c++)if(!a||f.filter(a,[d]).length)!b&&d.nodeType===1&&(f.cleanData(d.getElementsByTagName("*")),f.cleanData([d])),d.parentNode&&d.parentNode.removeChild(d);return this},empty:function(){for(var a=0,b;(b=this[a])!=null;a++){b.nodeType===1&&f.cleanData(b.getElementsByTagName("*"));while(b.firstChild)b.removeChild(b.firstChild)}return this},clone:function(a,b){a=a==null?!1:a,b=b==null?a:b;return this.map(function(){return f.clone(this,a,b)})},html:function(a){if(a===b)return this[0]&&this[0].nodeType===1?this[0].innerHTML.replace(X,""):null;if(typeof a=="string"&&!bb.test(a)&&(f.support.leadingWhitespace||!Y.test(a))&&!bf[($.exec(a)||["",""])[1].toLowerCase()]){a=a.replace(Z,"<$1></$2>");try{for(var c=0,d=this.length;c<d;c++)this[c].nodeType===1&&(f.cleanData(this[c].getElementsByTagName("*")),this[c].innerHTML=a)}catch(e){this.empty().append(a)}}else f.isFunction(a)?this.each(function(b){var c=f(this);c.html(a.call(this,b,c.html()))}):this.empty().append(a);return this},replaceWith:function(a){if(this[0]&&this[0].parentNode){if(f.isFunction(a))return this.each(function(b){var c=f(this),d=c.html();c.replaceWith(a.call(this,b,d))});typeof a!="string"&&(a=f(a).detach());return this.each(function(){var b=this.nextSibling,c=this.parentNode;f(this).remove(),b?f(b).before(a):f(c).append(a)})}return this.length?this.pushStack(f(f.isFunction(a)?a():a),"replaceWith",a):this},detach:function(a){return this.remove(a,!0)},domManip:function(a,c,d){var e,g,h,i,j=a[0],k=[];if(!f.support.checkClone&&arguments.length===3&&typeof j=="string"&&bc.test(j))return this.each(function(){f(this).domManip(a,c,d,!0)});if(f.isFunction(j))return this.each(function(e){var g=f(this);a[0]=j.call(this,e,c?g.html():b),g.domManip(a,c,d)});if(this[0]){i=j&&j.parentNode,f.support.parentNode&&i&&i.nodeType===11&&i.childNodes.length===this.length?e={fragment:i}:e=f.buildFragment(a,this,k),h=e.fragment,h.childNodes.length===1?g=h=h.firstChild:g=h.firstChild;if(g){c=c&&f.nodeName(g,"tr");for(var l=0,m=this.length,n=m-1;l<m;l++)d.call(c?bg(this[l],g):this[l],e.cacheable||m>1&&l<n?f.clone(h,!0,!0):h)}k.length&&f.each(k,bm)}return this}}),f.buildFragment=function(a,b,d){var e,g,h,i;b&&b[0]&&(i=b[0].ownerDocument||b[0]),i.createDocumentFragment||(i=c),a.length===1&&typeof a[0]=="string"&&a[0].length<512&&i===c&&a[0].charAt(0)==="<"&&!bb.test(a[0])&&(f.support.checkClone||!bc.test(a[0]))&&(g=!0,h=f.fragments[a[0]],h&&h!==1&&(e=h)),e||(e=i.createDocumentFragment(),f.clean(a,i,e,d)),g&&(f.fragments[a[0]]=h?e:1);return{fragment:e,cacheable:g}},f.fragments={},f.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(a,b){f.fn[a]=function(c){var d=[],e=f(c),g=this.length===1&&this[0].parentNode;if(g&&g.nodeType===11&&g.childNodes.length===1&&e.length===1){e[b](this[0]);return this}for(var h=0,i=e.length;h<i;h++){var j=(h>0?this.clone(!0):this).get();f(e[h])[b](j),d=d.concat(j
-)}return this.pushStack(d,a,e.selector)}}),f.extend({clone:function(a,b,c){var d=a.cloneNode(!0),e,g,h;if((!f.support.noCloneEvent||!f.support.noCloneChecked)&&(a.nodeType===1||a.nodeType===11)&&!f.isXMLDoc(a)){bi(a,d),e=bj(a),g=bj(d);for(h=0;e[h];++h)bi(e[h],g[h])}if(b){bh(a,d);if(c){e=bj(a),g=bj(d);for(h=0;e[h];++h)bh(e[h],g[h])}}e=g=null;return d},clean:function(a,b,d,e){var g;b=b||c,typeof b.createElement=="undefined"&&(b=b.ownerDocument||b[0]&&b[0].ownerDocument||c);var h=[],i;for(var j=0,k;(k=a[j])!=null;j++){typeof k=="number"&&(k+="");if(!k)continue;if(typeof k=="string")if(!ba.test(k))k=b.createTextNode(k);else{k=k.replace(Z,"<$1></$2>");var l=($.exec(k)||["",""])[1].toLowerCase(),m=bf[l]||bf._default,n=m[0],o=b.createElement("div");o.innerHTML=m[1]+k+m[2];while(n--)o=o.lastChild;if(!f.support.tbody){var p=_.test(k),q=l==="table"&&!p?o.firstChild&&o.firstChild.childNodes:m[1]==="<table>"&&!p?o.childNodes:[];for(i=q.length-1;i>=0;--i)f.nodeName(q[i],"tbody")&&!q[i].childNodes.length&&q[i].parentNode.removeChild(q[i])}!f.support.leadingWhitespace&&Y.test(k)&&o.insertBefore(b.createTextNode(Y.exec(k)[0]),o.firstChild),k=o.childNodes}var r;if(!f.support.appendChecked)if(k[0]&&typeof (r=k.length)=="number")for(i=0;i<r;i++)bl(k[i]);else bl(k);k.nodeType?h.push(k):h=f.merge(h,k)}if(d){g=function(a){return!a.type||bd.test(a.type)};for(j=0;h[j];j++)if(e&&f.nodeName(h[j],"script")&&(!h[j].type||h[j].type.toLowerCase()==="text/javascript"))e.push(h[j].parentNode?h[j].parentNode.removeChild(h[j]):h[j]);else{if(h[j].nodeType===1){var s=f.grep(h[j].getElementsByTagName("script"),g);h.splice.apply(h,[j+1,0].concat(s))}d.appendChild(h[j])}}return h},cleanData:function(a){var b,c,d=f.cache,e=f.expando,g=f.event.special,h=f.support.deleteExpando;for(var i=0,j;(j=a[i])!=null;i++){if(j.nodeName&&f.noData[j.nodeName.toLowerCase()])continue;c=j[f.expando];if(c){b=d[c]&&d[c][e];if(b&&b.events){for(var k in b.events)g[k]?f.event.remove(j,k):f.removeEvent(j,k,b.handle);b.handle&&(b.handle.elem=null)}h?delete j[f.expando]:j.removeAttribute&&j.removeAttribute(f.expando),delete d[c]}}}});var bn=/alpha\([^)]*\)/i,bo=/opacity=([^)]*)/,bp=/([A-Z]|^ms)/g,bq=/^-?\d+(?:px)?$/i,br=/^-?\d/,bs=/^[+\-]=/,bt=/[^+\-\.\de]+/g,bu={position:"absolute",visibility:"hidden",display:"block"},bv=["Left","Right"],bw=["Top","Bottom"],bx,by,bz;f.fn.css=function(a,c){if(arguments.length===2&&c===b)return this;return f.access(this,a,c,!0,function(a,c,d){return d!==b?f.style(a,c,d):f.css(a,c)})},f.extend({cssHooks:{opacity:{get:function(a,b){if(b){var c=bx(a,"opacity","opacity");return c===""?"1":c}return a.style.opacity}}},cssNumber:{fillOpacity:!0,fontWeight:!0,lineHeight:!0,opacity:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{"float":f.support.cssFloat?"cssFloat":"styleFloat"},style:function(a,c,d,e){if(!!a&&a.nodeType!==3&&a.nodeType!==8&&!!a.style){var g,h,i=f.camelCase(c),j=a.style,k=f.cssHooks[i];c=f.cssProps[i]||i;if(d===b){if(k&&"get"in k&&(g=k.get(a,!1,e))!==b)return g;return j[c]}h=typeof d;if(h==="number"&&isNaN(d)||d==null)return;h==="string"&&bs.test(d)&&(d=+d.replace(bt,"")+parseFloat(f.css(a,c)),h="number"),h==="number"&&!f.cssNumber[i]&&(d+="px");if(!k||!("set"in k)||(d=k.set(a,d))!==b)try{j[c]=d}catch(l){}}},css:function(a,c,d){var e,g;c=f.camelCase(c),g=f.cssHooks[c],c=f.cssProps[c]||c,c==="cssFloat"&&(c="float");if(g&&"get"in g&&(e=g.get(a,!0,d))!==b)return e;if(bx)return bx(a,c)},swap:function(a,b,c){var d={};for(var e in b)d[e]=a.style[e],a.style[e]=b[e];c.call(a);for(e in b)a.style[e]=d[e]}}),f.curCSS=f.css,f.each(["height","width"],function(a,b){f.cssHooks[b]={get:function(a,c,d){var e;if(c){if(a.offsetWidth!==0)return bA(a,b,d);f.swap(a,bu,function(){e=bA(a,b,d)});return e}},set:function(a,b){if(!bq.test(b))return b;b=parseFloat(b);if(b>=0)return b+"px"}}}),f.support.opacity||(f.cssHooks.opacity={get:function(a,b){return bo.test((b&&a.currentStyle?a.currentStyle.filter:a.style.filter)||"")?parseFloat(RegExp.$1)/100+"":b?"1":""},set:function(a,b){var c=a.style,d=a.currentStyle;c.zoom=1;var e=f.isNaN(b)?"":"alpha(opacity="+b*100+")",g=d&&d.filter||c.filter||"";c.filter=bn.test(g)?g.replace(bn,e):g+" "+e}}),f(function(){f.support.reliableMarginRight||(f.cssHooks.marginRight={get:function(a,b){var c;f.swap(a,{display:"inline-block"},function(){b?c=bx(a,"margin-right","marginRight"):c=a.style.marginRight});return c}})}),c.defaultView&&c.defaultView.getComputedStyle&&(by=function(a,c){var d,e,g;c=c.replace(bp,"-$1").toLowerCase();if(!(e=a.ownerDocument.defaultView))return b;if(g=e.getComputedStyle(a,null))d=g.getPropertyValue(c),d===""&&!f.contains(a.ownerDocument.documentElement,a)&&(d=f.style(a,c));return d}),c.documentElement.currentStyle&&(bz=function(a,b){var c,d=a.currentStyle&&a.currentStyle[b],e=a.runtimeStyle&&a.runtimeStyle[b],f=a.style;!bq.test(d)&&br.test(d)&&(c=f.left,e&&(a.runtimeStyle.left=a.currentStyle.left),f.left=b==="fontSize"?"1em":d||0,d=f.pixelLeft+"px",f.left=c,e&&(a.runtimeStyle.left=e));return d===""?"auto":d}),bx=by||bz,f.expr&&f.expr.filters&&(f.expr.filters.hidden=function(a){var b=a.offsetWidth,c=a.offsetHeight;return b===0&&c===0||!f.support.reliableHiddenOffsets&&(a.style.display||f.css(a,"display"))==="none"},f.expr.filters.visible=function(a){return!f.expr.filters.hidden(a)});var bB=/%20/g,bC=/\[\]$/,bD=/\r?\n/g,bE=/#.*$/,bF=/^(.*?):[ \t]*([^\r\n]*)\r?$/mg,bG=/^(?:color|date|datetime|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i,bH=/^(?:about|app|app\-storage|.+\-extension|file|widget):$/,bI=/^(?:GET|HEAD)$/,bJ=/^\/\//,bK=/\?/,bL=/<script\b[^<]*(?:(?!<\/script>)<[^<]*)*<\/script>/gi,bM=/^(?:select|textarea)/i,bN=/\s+/,bO=/([?&])_=[^&]*/,bP=/^([\w\+\.\-]+:)(?:\/\/([^\/?#:]*)(?::(\d+))?)?/,bQ=f.fn.load,bR={},bS={},bT,bU;try{bT=e.href}catch(bV){bT=c.createElement("a"),bT.href="",bT=bT.href}bU=bP.exec(bT.toLowerCase())||[],f.fn.extend({load:function(a,c,d){if(typeof a!="string"&&bQ)return bQ.apply(this,arguments);if(!this.length)return this;var e=a.indexOf(" ");if(e>=0){var g=a.slice(e,a.length);a=a.slice(0,e)}var h="GET";c&&(f.isFunction(c)?(d=c,c=b):typeof c=="object"&&(c=f.param(c,f.ajaxSettings.traditional),h="POST"));var i=this;f.ajax({url:a,type:h,dataType:"html",data:c,complete:function(a,b,c){c=a.responseText,a.isResolved()&&(a.done(function(a){c=a}),i.html(g?f("<div>").append(c.replace(bL,"")).find(g):c)),d&&i.each(d,[c,b,a])}});return this},serialize:function(){return f.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?f.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||bM.test(this.nodeName)||bG.test(this.type))}).map(function(a,b){var c=f(this).val();return c==null?null:f.isArray(c)?f.map(c,function(a,c){return{name:b.name,value:a.replace(bD,"\r\n")}}):{name:b.name,value:c.replace(bD,"\r\n")}}).get()}}),f.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(a,b){f.fn[b]=function(a){return this.bind(b,a)}}),f.each(["get","post"],function(a,c){f[c]=function(a,d,e,g){f.isFunction(d)&&(g=g||e,e=d,d=b);return f.ajax({type:c,url:a,data:d,success:e,dataType:g})}}),f.extend({getScript:function(a,c){return f.get(a,b,c,"script")},getJSON:function(a,b,c){return f.get(a,b,c,"json")},ajaxSetup:function(a,b){b?f.extend(!0,a,f.ajaxSettings,b):(b=a,a=f.extend(!0,f.ajaxSettings,b));for(var c in{context:1,url:1})c in b?a[c]=b[c]:c in f.ajaxSettings&&(a[c]=f.ajaxSettings[c]);return a},ajaxSettings:{url:bT,isLocal:bH.test(bU[1]),global:!0,type:"GET",contentType:"application/x-www-form-urlencoded",processData:!0,async:!0,accepts:{xml:"application/xml, text/xml",html:"text/html",text:"text/plain",json:"application/json, text/javascript","*":"*/*"},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText"},converters:{"* text":a.String,"text html":!0,"text json":f.parseJSON,"text xml":f.parseXML}},ajaxPrefilter:bW(bR),ajaxTransport:bW(bS),ajax:function(a,c){function w(a,c,l,m){if(s!==2){s=2,q&&clearTimeout(q),p=b,n=m||"",v.readyState=a?4:0;var o,r,u,w=l?bZ(d,v,l):b,x,y;if(a>=200&&a<300||a===304){if(d.ifModified){if(x=v.getResponseHeader("Last-Modified"))f.lastModified[k]=x;if(y=v.getResponseHeader("Etag"))f.etag[k]=y}if(a===304)c="notmodified",o=!0;else try{r=b$(d,w),c="success",o=!0}catch(z){c="parsererror",u=z}}else{u=c;if(!c||a)c="error",a<0&&(a=0)}v.status=a,v.statusText=c,o?h.resolveWith(e,[r,c,v]):h.rejectWith(e,[v,c,u]),v.statusCode(j),j=b,t&&g.trigger("ajax"+(o?"Success":"Error"),[v,d,o?r:u]),i.resolveWith(e,[v,c]),t&&(g.trigger("ajaxComplete",[v,d]),--f.active||f.event.trigger("ajaxStop"))}}typeof a=="object"&&(c=a,a=b),c=c||{};var d=f.ajaxSetup({},c),e=d.context||d,g=e!==d&&(e.nodeType||e instanceof f)?f(e):f.event,h=f.Deferred(),i=f._Deferred(),j=d.statusCode||{},k,l={},m={},n,o,p,q,r,s=0,t,u,v={readyState:0,setRequestHeader:function(a,b){if(!s){var c=a.toLowerCase();a=m[c]=m[c]||a,l[a]=b}return this},getAllResponseHeaders:function(){return s===2?n:null},getResponseHeader:function(a){var c;if(s===2){if(!o){o={};while(c=bF.exec(n))o[c[1].toLowerCase()]=c[2]}c=o[a.toLowerCase()]}return c===b?null:c},overrideMimeType:function(a){s||(d.mimeType=a);return this},abort:function(a){a=a||"abort",p&&p.abort(a),w(0,a);return this}};h.promise(v),v.success=v.done,v.error=v.fail,v.complete=i.done,v.statusCode=function(a){if(a){var b;if(s<2)for(b in a)j[b]=[j[b],a[b]];else b=a[v.status],v.then(b,b)}return this},d.url=((a||d.url)+"").replace(bE,"").replace(bJ,bU[1]+"//"),d.dataTypes=f.trim(d.dataType||"*").toLowerCase().split(bN),d.crossDomain==null&&(r=bP.exec(d.url.toLowerCase()),d.crossDomain=!(!r||r[1]==bU[1]&&r[2]==bU[2]&&(r[3]||(r[1]==="http:"?80:443))==(bU[3]||(bU[1]==="http:"?80:443)))),d.data&&d.processData&&typeof d.data!="string"&&(d.data=f.param(d.data,d.traditional)),bX(bR,d,c,v);if(s===2)return!1;t=d.global,d.type=d.type.toUpperCase(),d.hasContent=!bI.test(d.type),t&&f.active++===0&&f.event.trigger("ajaxStart");if(!d.hasContent){d.data&&(d.url+=(bK.test(d.url)?"&":"?")+d.data),k=d.url;if(d.cache===!1){var x=f.now(),y=d.url.replace(bO,"$1_="+x);d.url=y+(y===d.url?(bK.test(d.url)?"&":"?")+"_="+x:"")}}(d.data&&d.hasContent&&d.contentType!==!1||c.contentType)&&v.setRequestHeader("Content-Type",d.contentType),d.ifModified&&(k=k||d.url,f.lastModified[k]&&v.setRequestHeader("If-Modified-Since",f.lastModified[k]),f.etag[k]&&v.setRequestHeader("If-None-Match",f.etag[k])),v.setRequestHeader("Accept",d.dataTypes[0]&&d.accepts[d.dataTypes[0]]?d.accepts[d.dataTypes[0]]+(d.dataTypes[0]!=="*"?", */*; q=0.01":""):d.accepts["*"]);for(u in d.headers)v.setRequestHeader(u,d.headers[u]);if(d.beforeSend&&(d.beforeSend.call(e,v,d)===!1||s===2)){v.abort();return!1}for(u in{success:1,error:1,complete:1})v[u](d[u]);p=bX(bS,d,c,v);if(!p)w(-1,"No Transport");else{v.readyState=1,t&&g.trigger("ajaxSend",[v,d]),d.async&&d.timeout>0&&(q=setTimeout(function(){v.abort("timeout")},d.timeout));try{s=1,p.send(l,w)}catch(z){status<2?w(-1,z):f.error(z)}}return v},param:function(a,c){var d=[],e=function(a,b){b=f.isFunction(b)?b():b,d[d.length]=encodeURIComponent(a)+"="+encodeURIComponent(b)};c===b&&(c=f.ajaxSettings.traditional);if(f.isArray(a)||a.jquery&&!f.isPlainObject(a))f.each(a,function(){e(this.name,this.value)});else for(var g in a)bY(g,a[g],c,e);return d.join("&").replace(bB,"+")}}),f.extend({active:0,lastModified:{},etag:{}});var b_=f.now(),ca=/(\=)\?(&|$)|\?\?/i;f.ajaxSetup({jsonp:"callback",jsonpCallback:function(){return f.expando+"_"+b_++}}),f.ajaxPrefilter("json jsonp",function(b,c,d){var e=b.contentType==="application/x-www-form-urlencoded"&&typeof b.data=="string";if(b.dataTypes[0]==="jsonp"||b.jsonp!==!1&&(ca.test(b.url)||e&&ca.test(b.data))){var g,h=b.jsonpCallback=f.isFunction(b.jsonpCallback)?b.jsonpCallback():b.jsonpCallback,i=a[h],j=b.url,k=b.data,l="$1"+h+"$2";b.jsonp!==!1&&(j=j.replace(ca,l),b.url===j&&(e&&(k=k.replace(ca,l)),b.data===k&&(j+=(/\?/.test(j)?"&":"?")+b.jsonp+"="+h))),b.url=j,b.data=k,a[h]=function(a){g=[a]},d.always(function(){a[h]=i,g&&f.isFunction(i)&&a[h](g[0])}),b.converters["script json"]=function(){g||f.error(h+" was not called");return g[0]},b.dataTypes[0]="json";return"script"}}),f.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/javascript|ecmascript/},converters:{"text script":function(a){f.globalEval(a);return a}}}),f.ajaxPrefilter("script",function(a){a.cache===b&&(a.cache=!1),a.crossDomain&&(a.type="GET",a.global=!1)}),f.ajaxTransport("script",function(a){if(a.crossDomain){var d,e=c.head||c.getElementsByTagName("head")[0]||c.documentElement;return{send:function(f,g){d=c.createElement("script"),d.async="async",a.scriptCharset&&(d.charset=a.scriptCharset),d.src=a.url,d.onload=d.onreadystatechange=function(a,c){if(c||!d.readyState||/loaded|complete/.test(d.readyState))d.onload=d.onreadystatechange=null,e&&d.parentNode&&e.removeChild(d),d=b,c||g(200,"success")},e.insertBefore(d,e.firstChild)},abort:function(){d&&d.onload(0,1)}}}});var cb=a.ActiveXObject?function(){for(var a in cd)cd[a](0,1)}:!1,cc=0,cd;f.ajaxSettings.xhr=a.ActiveXObject?function(){return!this.isLocal&&ce()||cf()}:ce,function(a){f.extend(f.support,{ajax:!!a,cors:!!a&&"withCredentials"in a})}(f.ajaxSettings.xhr()),f.support.ajax&&f.ajaxTransport(function(c){if(!c.crossDomain||f.support.cors){var d;return{send:function(e,g){var h=c.xhr(),i,j;c.username?h.open(c.type,c.url,c.async,c.username,c.password):h.open(c.type,c.url,c.async);if(c.xhrFields)for(j in c.xhrFields)h[j]=c.xhrFields[j];c.mimeType&&h.overrideMimeType&&h.overrideMimeType(c.mimeType),!c.crossDomain&&!e["X-Requested-With"]&&(e["X-Requested-With"]="XMLHttpRequest");try{for(j in e)h.setRequestHeader(j,e[j])}catch(k){}h.send(c.hasContent&&c.data||null),d=function(a,e){var j,k,l,m,n;try{if(d&&(e||h.readyState===4)){d=b,i&&(h.onreadystatechange=f.noop,cb&&delete cd[i]);if(e)h.readyState!==4&&h.abort();else{j=h.status,l=h.getAllResponseHeaders(),m={},n=h.responseXML,n&&n.documentElement&&(m.xml=n),m.text=h.responseText;try{k=h.statusText}catch(o){k=""}!j&&c.isLocal&&!c.crossDomain?j=m.text?200:404:j===1223&&(j=204)}}}catch(p){e||g(-1,p)}m&&g(j,k,m,l)},!c.async||h.readyState===4?d():(i=++cc,cb&&(cd||(cd={},f(a).unload(cb)),cd[i]=d),h.onreadystatechange=d)},abort:function(){d&&d(0,1)}}}});var cg={},ch,ci,cj=/^(?:toggle|show|hide)$/,ck=/^([+\-]=)?([\d+.\-]+)([a-z%]*)$/i,cl,cm=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]],cn,co=a.webkitRequestAnimationFrame||a.mozRequestAnimationFrame||a.oRequestAnimationFrame;f.fn.extend({show:function(a,b,c){var d,e;if(a||a===0)return this.animate(cr("show",3),a,b,c);for(var g=0,h=this.length;g<h;g++)d=this[g],d.style&&(e=d.style.display,!f._data(d,"olddisplay")&&e==="none"&&(e=d.style.display=""),e===""&&f.css(d,"display")==="none"&&f._data(d,"olddisplay",cs(d.nodeName)));for(g=0;g<h;g++){d=this[g];if(d.style){e=d.style.display;if(e===""||e==="none")d.style.display=f._data(d,"olddisplay")||""}}return this},hide:function(a,b,c){if(a||a===0)return this.animate(cr("hide",3),a,b,c);for(var d=0,e=this.length;d<e;d++)if(this[d].style){var g=f.css(this[d],"display");g!=="none"&&!f._data(this[d],"olddisplay")&&f._data(this[d],"olddisplay",g)}for(d=0;d<e;d++)this[d].style&&(this[d].style.display="none");return this},_toggle:f.fn.toggle,toggle:function(a,b,c){var d=typeof a=="boolean";f.isFunction(a)&&f.isFunction(b)?this._toggle.apply(this,arguments):a==null||d?this.each(function(){var b=d?a:f(this).is(":hidden");f(this)[b?"show":"hide"]()}):this.animate(cr("toggle",3),a,b,c);return this},fadeTo:function(a,b,c,d){return this.filter(":hidden").css("opacity",0).show().end().animate({opacity:b},a,c,d)},animate:function(a,b,c,d){var e=f.speed(b,c,d);if(f.isEmptyObject(a))return this.each(e.complete,[!1]);a=f.extend({},a);return this[e.queue===!1?"each":"queue"](function(){e.queue===!1&&f._mark(this);var b=f.extend({},e),c=this.nodeType===1,d=c&&f(this).is(":hidden"),g,h,i,j,k,l,m,n,o;b.animatedProperties={};for(i in a){g=f.camelCase(i),i!==g&&(a[g]=a[i],delete a[i]),h=a[g],f.isArray(h)?(b.animatedProperties[g]=h[1],h=a[g]=h[0]):b.animatedProperties[g]=b.specialEasing&&b.specialEasing[g]||b.easing||"swing";if(h==="hide"&&d||h==="show"&&!d)return b.complete.call(this);c&&(g==="height"||g==="width")&&(b.overflow=[this.style.overflow,this.style.overflowX,this.style.overflowY],f.css(this,"display")==="inline"&&f.css(this,"float")==="none"&&(f.support.inlineBlockNeedsLayout?(j=cs(this.nodeName),j==="inline"?this.style.display="inline-block":(this.style.display="inline",this.style.zoom=1)):this.style.display="inline-block"))}b.overflow!=null&&(this.style.overflow="hidden");for(i in a)k=new f.fx(this,b,i),h=a[i],cj.test(h)?k[h==="toggle"?d?"show":"hide":h]():(l=ck.exec(h),m=k.cur(),l?(n=parseFloat(l[2]),o=l[3]||(f.cssNumber[i]?"":"px"),o!=="px"&&(f.style(this,i,(n||1)+o),m=(n||1)/k.cur()*m,f.style(this,i,m+o)),l[1]&&(n=(l[1]==="-="?-1:1)*n+m),k.custom(m,n,o)):k.custom(m,h,""));return!0})},stop:function(a,b){a&&this.queue([]),this.each(function(){var a=f.timers,c=a.length;b||f._unmark(!0,this);while(c--)a[c].elem===this&&(b&&a[c](!0),a.splice(c,1))}),b||this.dequeue();return this}}),f.each({slideDown:cr("show",1),slideUp:cr("hide",1),slideToggle:cr("toggle",1),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(a,b){f.fn[a]=function(a,c,d){return this.animate(b,a,c,d)}}),f.extend({speed:function(a,b,c){var d=a&&typeof a=="object"?f.extend({},a):{complete:c||!c&&b||f.isFunction(a)&&a,duration:a,easing:c&&b||b&&!f.isFunction(b)&&b};d.duration=f.fx.off?0:typeof d.duration=="number"?d.duration:d.duration in f.fx.speeds?f.fx.speeds[d.duration]:f.fx.speeds._default,d.old=d.complete,d.complete=function(a){f.isFunction(d.old)&&d.old.call(this),d.queue!==!1?f.dequeue(this):a!==!1&&f._unmark(this)};return d},easing:{linear:function(a,b,c,d){return c+d*a},swing:function(a,b,c,d){return(-Math.cos(a*Math.PI)/2+.5)*d+c}},timers:[],fx:function(a,b,c){this.options=b,this.elem=a,this.prop=c,b.orig=b.orig||{}}}),f.fx.prototype={update:function(){this.options.step&&this.options.step.call(this.elem,this.now,this),(f.fx.step[this.prop]||f.fx.step._default)(this)},cur:function(){if(this.elem[this.prop]!=null&&(!this.elem.style||this.elem.style[this.prop]==null))return this.elem[this.prop];var a,b=f.css(this.elem,this.prop);return isNaN(a=parseFloat(b))?!b||b==="auto"?0:b:a},custom:function(a,b,c){function h(a){return d.step(a)}var d=this,e=f.fx,g;this.startTime=cn||cp(),this.start=a,this.end=b,this.unit=c||this.unit||(f.cssNumber[this.prop]?"":"px"),this.now=this.start,this.pos=this.state=0,h.elem=this.elem,h()&&f.timers.push(h)&&!cl&&(co?(cl=!0,g=function(){cl&&(co(g),e.tick())},co(g)):cl=setInterval(e.tick,e.interval))},show:function(){this.options.orig[this.prop]=f.style(this.elem,this.prop),this.options.show=!0,this.custom(this.prop==="width"||this.prop==="height"?1:0,this.cur()),f(this.elem).show()},hide:function(){this.options.orig[this.prop]=f.style(this.elem,this.prop),this.options.hide=!0,this.custom(this.cur(),0)},step:function(a){var b=cn||cp(),c=!0,d=this.elem,e=this.options,g,h;if(a||b>=e.duration+this.startTime){this.now=this.end,this.pos=this.state=1,this.update(),e.animatedProperties[this.prop]=!0;for(g in e.animatedProperties)e.animatedProperties[g]!==!0&&(c=!1);if(c){e.overflow!=null&&!f.support.shrinkWrapBlocks&&f.each(["","X","Y"],function(a,b){d.style["overflow"+b]=e.overflow[a]}),e.hide&&f(d).hide();if(e.hide||e.show)for(var i in e.animatedProperties)f.style(d,i,e.orig[i]);e.complete.call(d)}return!1}e.duration==Infinity?this.now=b:(h=b-this.startTime,this.state=h/e.duration,this.pos=f.easing[e.animatedProperties[this.prop]](this.state,h,0,1,e.duration),this.now=this.start+(this.end-this.start)*this.pos),this.update();return!0}},f.extend(f.fx,{tick:function(){for(var a=f.timers,b=0;b<a.length;++b)a[b]()||a.splice(b--,1);a.length||f.fx.stop()},interval:13,stop:function(){clearInterval(cl),cl=null},speeds:{slow:600,fast:200,_default:400},step:{opacity:function(a){f.style(a.elem,"opacity",a.now)},_default:function(a){a.elem.style&&a.elem.style[a.prop]!=null?a.elem.style[a.prop]=(a.prop==="width"||a.prop==="height"?Math.max(0,a.now):a.now)+a.unit:a.elem[a.prop]=a.now}}}),f.expr&&f.expr.filters&&(f.expr.filters.animated=function(a){return f.grep(f.timers,function(b){return a===b.elem}).length});var ct=/^t(?:able|d|h)$/i,cu=/^(?:body|html)$/i;"getBoundingClientRect"in c.documentElement?f.fn.offset=function(a){var b=this[0],c;if(a)return this.each(function(b){f.offset.setOffset(this,a,b)});if(!b||!b.ownerDocument)return null;if(b===b.ownerDocument.body)return f.offset.bodyOffset(b);try{c=b.getBoundingClientRect()}catch(d){}var e=b.ownerDocument,g=e.documentElement;if(!c||!f.contains(g,b))return c?{top:c.top,left:c.left}:{top:0,left:0};var h=e.body,i=cv(e),j=g.clientTop||h.clientTop||0,k=g.clientLeft||h.clientLeft||0,l=i.pageYOffset||f.support.boxModel&&g.scrollTop||h.scrollTop,m=i.pageXOffset||f.support.boxModel&&g.scrollLeft||h.scrollLeft,n=c.top+l-j,o=c.left+m-k;return{top:n,left:o}}:f.fn.offset=function(a){var b=this[0];if(a)return this.each(function(b){f.offset.setOffset(this,a,b)});if(!b||!b.ownerDocument)return null;if(b===b.ownerDocument.body)return f.offset.bodyOffset(b);f.offset.initialize();var c,d=b.offsetParent,e=b,g=b.ownerDocument,h=g.documentElement,i=g.body,j=g.defaultView,k=j?j.getComputedStyle(b,null):b.currentStyle,l=b.offsetTop,m=b.offsetLeft;while((b=b.parentNode)&&b!==i&&b!==h){if(f.offset.supportsFixedPosition&&k.position==="fixed")break;c=j?j.getComputedStyle(b,null):b.currentStyle,l-=b.scrollTop,m-=b.scrollLeft,b===d&&(l+=b.offsetTop,m+=b.offsetLeft,f.offset.doesNotAddBorder&&(!f.offset.doesAddBorderForTableAndCells||!ct.test(b.nodeName))&&(l+=parseFloat(c.borderTopWidth)||0,m+=parseFloat(c.borderLeftWidth)||0),e=d,d=b.offsetParent),f.offset.subtractsBorderForOverflowNotVisible&&c.overflow!=="visible"&&(l+=parseFloat(c.borderTopWidth)||0,m+=parseFloat(c.borderLeftWidth)||0),k=c}if(k.position==="relative"||k.position==="static")l+=i.offsetTop,m+=i.offsetLeft;f.offset.supportsFixedPosition&&k.position==="fixed"&&(l+=Math.max(h.scrollTop,i.scrollTop),m+=Math.max(h.scrollLeft,i.scrollLeft));return{top:l,left:m}},f.offset={initialize:function(){var a=c.body,b=c.createElement("div"),d,e,g,h,i=parseFloat(f.css(a,"marginTop"))||0,j="<div style='position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;'><div></div></div><table style='position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;' cellpadding='0' cellspacing='0'><tr><td></td></tr></table>";f.extend(b.style,{position:"absolute",top:0,left:0,margin:0,border:0,width:"1px",height:"1px",visibility:"hidden"}),b.innerHTML=j,a.insertBefore(b,a.firstChild),d=b.firstChild,e=d.firstChild,h=d.nextSibling.firstChild.firstChild,this.doesNotAddBorder=e.offsetTop!==5,this.doesAddBorderForTableAndCells=h.offsetTop===5,e.style.position="fixed",e.style.top="20px",this.supportsFixedPosition=e.offsetTop===20||e.offsetTop===15,e.style.position=e.style.top="",d.style.overflow="hidden",d.style.position="relative",this.subtractsBorderForOverflowNotVisible=e.offsetTop===-5,this.doesNotIncludeMarginInBodyOffset=a.offsetTop!==i,a.removeChild(b),f.offset.initialize=f.noop},bodyOffset:function(a){var b=a.offsetTop,c=a.offsetLeft;f.offset.initialize(),f.offset.doesNotIncludeMarginInBodyOffset&&(b+=parseFloat(f.css(a,"marginTop"))||0,c+=parseFloat(f.css(a,"marginLeft"))||0);return{top:b,left:c}},setOffset:function(a,b,c){var d=f.css(a,"position");d==="static"&&(a.style.position="relative");var e=f(a),g=e.offset(),h=f.css(a,"top"),i=f.css(a,"left"),j=(d==="absolute"||d==="fixed")&&f.inArray("auto",[h,i])>-1,k={},l={},m,n;j?(l=e.position(),m=l.top,n=l.left):(m=parseFloat(h)||0,n=parseFloat(i)||0),f.isFunction(b)&&(b=b.call(a,c,g)),b.top!=null&&(k.top=b.top-g.top+m),b.left!=null&&(k.left=b.left-g.left+n),"using"in b?b.using.call(a,k):e.css(k)}},f.fn.extend({position:function(){if(!this[0])return null;var a=this[0],b=this.offsetParent(),c=this.offset(),d=cu.test(b[0].nodeName)?{top:0,left:0}:b.offset();c.top-=parseFloat(f.css(a,"marginTop"))||0,c.left-=parseFloat(f.css(a,"marginLeft"))||0,d.top+=parseFloat(f.css(b[0],"borderTopWidth"))||0,d.left+=parseFloat(f.css(b[0],"borderLeftWidth"))||0;return{top:c.top-d.top,left:c.left-d.left}},offsetParent:function(){return this.map(function(){var a=this.offsetParent||c.body;while(a&&!cu.test(a.nodeName)&&f.css(a,"position")==="static")a=a.offsetParent;return a})}}),f.each(["Left","Top"],function(a,c){var d="scroll"+c;f.fn[d]=function(c){var e,g;if(c===b){e=this[0];if(!e)return null;g=cv(e);return g?"pageXOffset"in g?g[a?"pageYOffset":"pageXOffset"]:f.support.boxModel&&g.document.documentElement[d]||g.document.body[d]:e[d]}return this.each(function(){g=cv(this),g?g.scrollTo(a?f(g).scrollLeft():c,a?c:f(g).scrollTop()):this[d]=c})}}),f.each(["Height","Width"],function(a,c){var d=c.toLowerCase();f.fn["inner"+c]=function(){var a=this[0];return a&&a.style?parseFloat(f.css(a,d,"padding")):null},f.fn["outer"+c]=function(a){var b=this[0];return b&&b.style?parseFloat(f.css(b,d,a?"margin":"border")):null},f.fn[d]=function(a){var e=this[0];if(!e)return a==null?null:this;if(f.isFunction(a))return this.each(function(b){var c=f(this);c[d](a.call(this,b,c[d]()))});if(f.isWindow(e)){var g=e.document.documentElement["client"+c];return e.document.compatMode==="CSS1Compat"&&g||e.document.body["client"+c]||g}if(e.nodeType===9)return Math.max(e.documentElement["client"+c],e.body["scroll"+c],e.documentElement["scroll"+c],e.body["offset"+c],e.documentElement["offset"+c]);if(a===b){var h=f.css(e,d),i=parseFloat(h);return f.isNaN(i)?h:i}return this.css(d,typeof a=="string"?a:a+"px")}}),a.jQuery=a.$=f})(window);
\ No newline at end of file
diff --git a/vendor/behat/mink/driver-testsuite/web-fixtures/js/jquery-ui-1.8.14.custom.min.js b/vendor/behat/mink/driver-testsuite/web-fixtures/js/jquery-ui-1.8.14.custom.min.js
deleted file mode 100644
index 1764e11..0000000
--- a/vendor/behat/mink/driver-testsuite/web-fixtures/js/jquery-ui-1.8.14.custom.min.js
+++ /dev/null
@@ -1,127 +0,0 @@
-/*!
- * jQuery UI 1.8.14
- *
- * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
- * Dual licensed under the MIT or GPL Version 2 licenses.
- * http://jquery.org/license
- *
- * http://docs.jquery.com/UI
- */
-(function(c,j){function k(a,b){var d=a.nodeName.toLowerCase();if("area"===d){b=a.parentNode;d=b.name;if(!a.href||!d||b.nodeName.toLowerCase()!=="map")return false;a=c("img[usemap=#"+d+"]")[0];return!!a&&l(a)}return(/input|select|textarea|button|object/.test(d)?!a.disabled:"a"==d?a.href||b:b)&&l(a)}function l(a){return!c(a).parents().andSelf().filter(function(){return c.curCSS(this,"visibility")==="hidden"||c.expr.filters.hidden(this)}).length}c.ui=c.ui||{};if(!c.ui.version){c.extend(c.ui,{version:"1.8.14",
-keyCode:{ALT:18,BACKSPACE:8,CAPS_LOCK:20,COMMA:188,COMMAND:91,COMMAND_LEFT:91,COMMAND_RIGHT:93,CONTROL:17,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,INSERT:45,LEFT:37,MENU:93,NUMPAD_ADD:107,NUMPAD_DECIMAL:110,NUMPAD_DIVIDE:111,NUMPAD_ENTER:108,NUMPAD_MULTIPLY:106,NUMPAD_SUBTRACT:109,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SHIFT:16,SPACE:32,TAB:9,UP:38,WINDOWS:91}});c.fn.extend({_focus:c.fn.focus,focus:function(a,b){return typeof a==="number"?this.each(function(){var d=this;setTimeout(function(){c(d).focus();
-b&&b.call(d)},a)}):this._focus.apply(this,arguments)},scrollParent:function(){var a;a=c.browser.msie&&/(static|relative)/.test(this.css("position"))||/absolute/.test(this.css("position"))?this.parents().filter(function(){return/(relative|absolute|fixed)/.test(c.curCSS(this,"position",1))&&/(auto|scroll)/.test(c.curCSS(this,"overflow",1)+c.curCSS(this,"overflow-y",1)+c.curCSS(this,"overflow-x",1))}).eq(0):this.parents().filter(function(){return/(auto|scroll)/.test(c.curCSS(this,"overflow",1)+c.curCSS(this,
-"overflow-y",1)+c.curCSS(this,"overflow-x",1))}).eq(0);return/fixed/.test(this.css("position"))||!a.length?c(document):a},zIndex:function(a){if(a!==j)return this.css("zIndex",a);if(this.length){a=c(this[0]);for(var b;a.length&&a[0]!==document;){b=a.css("position");if(b==="absolute"||b==="relative"||b==="fixed"){b=parseInt(a.css("zIndex"),10);if(!isNaN(b)&&b!==0)return b}a=a.parent()}}return 0},disableSelection:function(){return this.bind((c.support.selectstart?"selectstart":"mousedown")+".ui-disableSelection",
-function(a){a.preventDefault()})},enableSelection:function(){return this.unbind(".ui-disableSelection")}});c.each(["Width","Height"],function(a,b){function d(f,g,m,n){c.each(e,function(){g-=parseFloat(c.curCSS(f,"padding"+this,true))||0;if(m)g-=parseFloat(c.curCSS(f,"border"+this+"Width",true))||0;if(n)g-=parseFloat(c.curCSS(f,"margin"+this,true))||0});return g}var e=b==="Width"?["Left","Right"]:["Top","Bottom"],h=b.toLowerCase(),i={innerWidth:c.fn.innerWidth,innerHeight:c.fn.innerHeight,outerWidth:c.fn.outerWidth,
-outerHeight:c.fn.outerHeight};c.fn["inner"+b]=function(f){if(f===j)return i["inner"+b].call(this);return this.each(function(){c(this).css(h,d(this,f)+"px")})};c.fn["outer"+b]=function(f,g){if(typeof f!=="number")return i["outer"+b].call(this,f);return this.each(function(){c(this).css(h,d(this,f,true,g)+"px")})}});c.extend(c.expr[":"],{data:function(a,b,d){return!!c.data(a,d[3])},focusable:function(a){return k(a,!isNaN(c.attr(a,"tabindex")))},tabbable:function(a){var b=c.attr(a,"tabindex"),d=isNaN(b);
-return(d||b>=0)&&k(a,!d)}});c(function(){var a=document.body,b=a.appendChild(b=document.createElement("div"));c.extend(b.style,{minHeight:"100px",height:"auto",padding:0,borderWidth:0});c.support.minHeight=b.offsetHeight===100;c.support.selectstart="onselectstart"in b;a.removeChild(b).style.display="none"});c.extend(c.ui,{plugin:{add:function(a,b,d){a=c.ui[a].prototype;for(var e in d){a.plugins[e]=a.plugins[e]||[];a.plugins[e].push([b,d[e]])}},call:function(a,b,d){if((b=a.plugins[b])&&a.element[0].parentNode)for(var e=
-0;e<b.length;e++)a.options[b[e][0]]&&b[e][1].apply(a.element,d)}},contains:function(a,b){return document.compareDocumentPosition?a.compareDocumentPosition(b)&16:a!==b&&a.contains(b)},hasScroll:function(a,b){if(c(a).css("overflow")==="hidden")return false;b=b&&b==="left"?"scrollLeft":"scrollTop";var d=false;if(a[b]>0)return true;a[b]=1;d=a[b]>0;a[b]=0;return d},isOverAxis:function(a,b,d){return a>b&&a<b+d},isOver:function(a,b,d,e,h,i){return c.ui.isOverAxis(a,d,h)&&c.ui.isOverAxis(b,e,i)}})}})(jQuery);
-;/*!
- * jQuery UI Widget 1.8.14
- *
- * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
- * Dual licensed under the MIT or GPL Version 2 licenses.
- * http://jquery.org/license
- *
- * http://docs.jquery.com/UI/Widget
- */
-(function(b,j){if(b.cleanData){var k=b.cleanData;b.cleanData=function(a){for(var c=0,d;(d=a[c])!=null;c++)b(d).triggerHandler("remove");k(a)}}else{var l=b.fn.remove;b.fn.remove=function(a,c){return this.each(function(){if(!c)if(!a||b.filter(a,[this]).length)b("*",this).add([this]).each(function(){b(this).triggerHandler("remove")});return l.call(b(this),a,c)})}}b.widget=function(a,c,d){var e=a.split(".")[0],f;a=a.split(".")[1];f=e+"-"+a;if(!d){d=c;c=b.Widget}b.expr[":"][f]=function(h){return!!b.data(h,
-a)};b[e]=b[e]||{};b[e][a]=function(h,g){arguments.length&&this._createWidget(h,g)};c=new c;c.options=b.extend(true,{},c.options);b[e][a].prototype=b.extend(true,c,{namespace:e,widgetName:a,widgetEventPrefix:b[e][a].prototype.widgetEventPrefix||a,widgetBaseClass:f},d);b.widget.bridge(a,b[e][a])};b.widget.bridge=function(a,c){b.fn[a]=function(d){var e=typeof d==="string",f=Array.prototype.slice.call(arguments,1),h=this;d=!e&&f.length?b.extend.apply(null,[true,d].concat(f)):d;if(e&&d.charAt(0)==="_")return h;
-e?this.each(function(){var g=b.data(this,a),i=g&&b.isFunction(g[d])?g[d].apply(g,f):g;if(i!==g&&i!==j){h=i;return false}}):this.each(function(){var g=b.data(this,a);g?g.option(d||{})._init():b.data(this,a,new c(d,this))});return h}};b.Widget=function(a,c){arguments.length&&this._createWidget(a,c)};b.Widget.prototype={widgetName:"widget",widgetEventPrefix:"",options:{disabled:false},_createWidget:function(a,c){b.data(c,this.widgetName,this);this.element=b(c);this.options=b.extend(true,{},this.options,
-this._getCreateOptions(),a);var d=this;this.element.bind("remove."+this.widgetName,function(){d.destroy()});this._create();this._trigger("create");this._init()},_getCreateOptions:function(){return b.metadata&&b.metadata.get(this.element[0])[this.widgetName]},_create:function(){},_init:function(){},destroy:function(){this.element.unbind("."+this.widgetName).removeData(this.widgetName);this.widget().unbind("."+this.widgetName).removeAttr("aria-disabled").removeClass(this.widgetBaseClass+"-disabled ui-state-disabled")},
-widget:function(){return this.element},option:function(a,c){var d=a;if(arguments.length===0)return b.extend({},this.options);if(typeof a==="string"){if(c===j)return this.options[a];d={};d[a]=c}this._setOptions(d);return this},_setOptions:function(a){var c=this;b.each(a,function(d,e){c._setOption(d,e)});return this},_setOption:function(a,c){this.options[a]=c;if(a==="disabled")this.widget()[c?"addClass":"removeClass"](this.widgetBaseClass+"-disabled ui-state-disabled").attr("aria-disabled",c);return this},
-enable:function(){return this._setOption("disabled",false)},disable:function(){return this._setOption("disabled",true)},_trigger:function(a,c,d){var e=this.options[a];c=b.Event(c);c.type=(a===this.widgetEventPrefix?a:this.widgetEventPrefix+a).toLowerCase();d=d||{};if(c.originalEvent){a=b.event.props.length;for(var f;a;){f=b.event.props[--a];c[f]=c.originalEvent[f]}}this.element.trigger(c,d);return!(b.isFunction(e)&&e.call(this.element[0],c,d)===false||c.isDefaultPrevented())}}})(jQuery);
-;/*!
- * jQuery UI Mouse 1.8.14
- *
- * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
- * Dual licensed under the MIT or GPL Version 2 licenses.
- * http://jquery.org/license
- *
- * http://docs.jquery.com/UI/Mouse
- *
- * Depends:
- *	jquery.ui.widget.js
- */
-(function(b){var d=false;b(document).mousedown(function(){d=false});b.widget("ui.mouse",{options:{cancel:":input,option",distance:1,delay:0},_mouseInit:function(){var a=this;this.element.bind("mousedown."+this.widgetName,function(c){return a._mouseDown(c)}).bind("click."+this.widgetName,function(c){if(true===b.data(c.target,a.widgetName+".preventClickEvent")){b.removeData(c.target,a.widgetName+".preventClickEvent");c.stopImmediatePropagation();return false}});this.started=false},_mouseDestroy:function(){this.element.unbind("."+
-this.widgetName)},_mouseDown:function(a){if(!d){this._mouseStarted&&this._mouseUp(a);this._mouseDownEvent=a;var c=this,f=a.which==1,g=typeof this.options.cancel=="string"?b(a.target).closest(this.options.cancel).length:false;if(!f||g||!this._mouseCapture(a))return true;this.mouseDelayMet=!this.options.delay;if(!this.mouseDelayMet)this._mouseDelayTimer=setTimeout(function(){c.mouseDelayMet=true},this.options.delay);if(this._mouseDistanceMet(a)&&this._mouseDelayMet(a)){this._mouseStarted=this._mouseStart(a)!==
-false;if(!this._mouseStarted){a.preventDefault();return true}}true===b.data(a.target,this.widgetName+".preventClickEvent")&&b.removeData(a.target,this.widgetName+".preventClickEvent");this._mouseMoveDelegate=function(e){return c._mouseMove(e)};this._mouseUpDelegate=function(e){return c._mouseUp(e)};b(document).bind("mousemove."+this.widgetName,this._mouseMoveDelegate).bind("mouseup."+this.widgetName,this._mouseUpDelegate);a.preventDefault();return d=true}},_mouseMove:function(a){if(b.browser.msie&&
-!(document.documentMode>=9)&&!a.button)return this._mouseUp(a);if(this._mouseStarted){this._mouseDrag(a);return a.preventDefault()}if(this._mouseDistanceMet(a)&&this._mouseDelayMet(a))(this._mouseStarted=this._mouseStart(this._mouseDownEvent,a)!==false)?this._mouseDrag(a):this._mouseUp(a);return!this._mouseStarted},_mouseUp:function(a){b(document).unbind("mousemove."+this.widgetName,this._mouseMoveDelegate).unbind("mouseup."+this.widgetName,this._mouseUpDelegate);if(this._mouseStarted){this._mouseStarted=
-false;a.target==this._mouseDownEvent.target&&b.data(a.target,this.widgetName+".preventClickEvent",true);this._mouseStop(a)}return false},_mouseDistanceMet:function(a){return Math.max(Math.abs(this._mouseDownEvent.pageX-a.pageX),Math.abs(this._mouseDownEvent.pageY-a.pageY))>=this.options.distance},_mouseDelayMet:function(){return this.mouseDelayMet},_mouseStart:function(){},_mouseDrag:function(){},_mouseStop:function(){},_mouseCapture:function(){return true}})})(jQuery);
-;/*
- * jQuery UI Draggable 1.8.14
- *
- * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
- * Dual licensed under the MIT or GPL Version 2 licenses.
- * http://jquery.org/license
- *
- * http://docs.jquery.com/UI/Draggables
- *
- * Depends:
- *	jquery.ui.core.js
- *	jquery.ui.mouse.js
- *	jquery.ui.widget.js
- */
-(function(d){d.widget("ui.draggable",d.ui.mouse,{widgetEventPrefix:"drag",options:{addClasses:true,appendTo:"parent",axis:false,connectToSortable:false,containment:false,cursor:"auto",cursorAt:false,grid:false,handle:false,helper:"original",iframeFix:false,opacity:false,refreshPositions:false,revert:false,revertDuration:500,scope:"default",scroll:true,scrollSensitivity:20,scrollSpeed:20,snap:false,snapMode:"both",snapTolerance:20,stack:false,zIndex:false},_create:function(){if(this.options.helper==
-"original"&&!/^(?:r|a|f)/.test(this.element.css("position")))this.element[0].style.position="relative";this.options.addClasses&&this.element.addClass("ui-draggable");this.options.disabled&&this.element.addClass("ui-draggable-disabled");this._mouseInit()},destroy:function(){if(this.element.data("draggable")){this.element.removeData("draggable").unbind(".draggable").removeClass("ui-draggable ui-draggable-dragging ui-draggable-disabled");this._mouseDestroy();return this}},_mouseCapture:function(a){var b=
-this.options;if(this.helper||b.disabled||d(a.target).is(".ui-resizable-handle"))return false;this.handle=this._getHandle(a);if(!this.handle)return false;d(b.iframeFix===true?"iframe":b.iframeFix).each(function(){d('<div class="ui-draggable-iframeFix" style="background: #fff;"></div>').css({width:this.offsetWidth+"px",height:this.offsetHeight+"px",position:"absolute",opacity:"0.001",zIndex:1E3}).css(d(this).offset()).appendTo("body")});return true},_mouseStart:function(a){var b=this.options;this.helper=
-this._createHelper(a);this._cacheHelperProportions();if(d.ui.ddmanager)d.ui.ddmanager.current=this;this._cacheMargins();this.cssPosition=this.helper.css("position");this.scrollParent=this.helper.scrollParent();this.offset=this.positionAbs=this.element.offset();this.offset={top:this.offset.top-this.margins.top,left:this.offset.left-this.margins.left};d.extend(this.offset,{click:{left:a.pageX-this.offset.left,top:a.pageY-this.offset.top},parent:this._getParentOffset(),relative:this._getRelativeOffset()});
-this.originalPosition=this.position=this._generatePosition(a);this.originalPageX=a.pageX;this.originalPageY=a.pageY;b.cursorAt&&this._adjustOffsetFromHelper(b.cursorAt);b.containment&&this._setContainment();if(this._trigger("start",a)===false){this._clear();return false}this._cacheHelperProportions();d.ui.ddmanager&&!b.dropBehaviour&&d.ui.ddmanager.prepareOffsets(this,a);this.helper.addClass("ui-draggable-dragging");this._mouseDrag(a,true);d.ui.ddmanager&&d.ui.ddmanager.dragStart(this,a);return true},
-_mouseDrag:function(a,b){this.position=this._generatePosition(a);this.positionAbs=this._convertPositionTo("absolute");if(!b){b=this._uiHash();if(this._trigger("drag",a,b)===false){this._mouseUp({});return false}this.position=b.position}if(!this.options.axis||this.options.axis!="y")this.helper[0].style.left=this.position.left+"px";if(!this.options.axis||this.options.axis!="x")this.helper[0].style.top=this.position.top+"px";d.ui.ddmanager&&d.ui.ddmanager.drag(this,a);return false},_mouseStop:function(a){var b=
-false;if(d.ui.ddmanager&&!this.options.dropBehaviour)b=d.ui.ddmanager.drop(this,a);if(this.dropped){b=this.dropped;this.dropped=false}if((!this.element[0]||!this.element[0].parentNode)&&this.options.helper=="original")return false;if(this.options.revert=="invalid"&&!b||this.options.revert=="valid"&&b||this.options.revert===true||d.isFunction(this.options.revert)&&this.options.revert.call(this.element,b)){var c=this;d(this.helper).animate(this.originalPosition,parseInt(this.options.revertDuration,
-10),function(){c._trigger("stop",a)!==false&&c._clear()})}else this._trigger("stop",a)!==false&&this._clear();return false},_mouseUp:function(a){this.options.iframeFix===true&&d("div.ui-draggable-iframeFix").each(function(){this.parentNode.removeChild(this)});d.ui.ddmanager&&d.ui.ddmanager.dragStop(this,a);return d.ui.mouse.prototype._mouseUp.call(this,a)},cancel:function(){this.helper.is(".ui-draggable-dragging")?this._mouseUp({}):this._clear();return this},_getHandle:function(a){var b=!this.options.handle||
-!d(this.options.handle,this.element).length?true:false;d(this.options.handle,this.element).find("*").andSelf().each(function(){if(this==a.target)b=true});return b},_createHelper:function(a){var b=this.options;a=d.isFunction(b.helper)?d(b.helper.apply(this.element[0],[a])):b.helper=="clone"?this.element.clone().removeAttr("id"):this.element;a.parents("body").length||a.appendTo(b.appendTo=="parent"?this.element[0].parentNode:b.appendTo);a[0]!=this.element[0]&&!/(fixed|absolute)/.test(a.css("position"))&&
-a.css("position","absolute");return a},_adjustOffsetFromHelper:function(a){if(typeof a=="string")a=a.split(" ");if(d.isArray(a))a={left:+a[0],top:+a[1]||0};if("left"in a)this.offset.click.left=a.left+this.margins.left;if("right"in a)this.offset.click.left=this.helperProportions.width-a.right+this.margins.left;if("top"in a)this.offset.click.top=a.top+this.margins.top;if("bottom"in a)this.offset.click.top=this.helperProportions.height-a.bottom+this.margins.top},_getParentOffset:function(){this.offsetParent=
-this.helper.offsetParent();var a=this.offsetParent.offset();if(this.cssPosition=="absolute"&&this.scrollParent[0]!=document&&d.ui.contains(this.scrollParent[0],this.offsetParent[0])){a.left+=this.scrollParent.scrollLeft();a.top+=this.scrollParent.scrollTop()}if(this.offsetParent[0]==document.body||this.offsetParent[0].tagName&&this.offsetParent[0].tagName.toLowerCase()=="html"&&d.browser.msie)a={top:0,left:0};return{top:a.top+(parseInt(this.offsetParent.css("borderTopWidth"),10)||0),left:a.left+(parseInt(this.offsetParent.css("borderLeftWidth"),
-10)||0)}},_getRelativeOffset:function(){if(this.cssPosition=="relative"){var a=this.element.position();return{top:a.top-(parseInt(this.helper.css("top"),10)||0)+this.scrollParent.scrollTop(),left:a.left-(parseInt(this.helper.css("left"),10)||0)+this.scrollParent.scrollLeft()}}else return{top:0,left:0}},_cacheMargins:function(){this.margins={left:parseInt(this.element.css("marginLeft"),10)||0,top:parseInt(this.element.css("marginTop"),10)||0,right:parseInt(this.element.css("marginRight"),10)||0,bottom:parseInt(this.element.css("marginBottom"),
-10)||0}},_cacheHelperProportions:function(){this.helperProportions={width:this.helper.outerWidth(),height:this.helper.outerHeight()}},_setContainment:function(){var a=this.options;if(a.containment=="parent")a.containment=this.helper[0].parentNode;if(a.containment=="document"||a.containment=="window")this.containment=[a.containment=="document"?0:d(window).scrollLeft()-this.offset.relative.left-this.offset.parent.left,a.containment=="document"?0:d(window).scrollTop()-this.offset.relative.top-this.offset.parent.top,
-(a.containment=="document"?0:d(window).scrollLeft())+d(a.containment=="document"?document:window).width()-this.helperProportions.width-this.margins.left,(a.containment=="document"?0:d(window).scrollTop())+(d(a.containment=="document"?document:window).height()||document.body.parentNode.scrollHeight)-this.helperProportions.height-this.margins.top];if(!/^(document|window|parent)$/.test(a.containment)&&a.containment.constructor!=Array){a=d(a.containment);var b=a[0];if(b){a.offset();var c=d(b).css("overflow")!=
-"hidden";this.containment=[(parseInt(d(b).css("borderLeftWidth"),10)||0)+(parseInt(d(b).css("paddingLeft"),10)||0),(parseInt(d(b).css("borderTopWidth"),10)||0)+(parseInt(d(b).css("paddingTop"),10)||0),(c?Math.max(b.scrollWidth,b.offsetWidth):b.offsetWidth)-(parseInt(d(b).css("borderLeftWidth"),10)||0)-(parseInt(d(b).css("paddingRight"),10)||0)-this.helperProportions.width-this.margins.left-this.margins.right,(c?Math.max(b.scrollHeight,b.offsetHeight):b.offsetHeight)-(parseInt(d(b).css("borderTopWidth"),
-10)||0)-(parseInt(d(b).css("paddingBottom"),10)||0)-this.helperProportions.height-this.margins.top-this.margins.bottom];this.relative_container=a}}else if(a.containment.constructor==Array)this.containment=a.containment},_convertPositionTo:function(a,b){if(!b)b=this.position;a=a=="absolute"?1:-1;var c=this.cssPosition=="absolute"&&!(this.scrollParent[0]!=document&&d.ui.contains(this.scrollParent[0],this.offsetParent[0]))?this.offsetParent:this.scrollParent,f=/(html|body)/i.test(c[0].tagName);return{top:b.top+
-this.offset.relative.top*a+this.offset.parent.top*a-(d.browser.safari&&d.browser.version<526&&this.cssPosition=="fixed"?0:(this.cssPosition=="fixed"?-this.scrollParent.scrollTop():f?0:c.scrollTop())*a),left:b.left+this.offset.relative.left*a+this.offset.parent.left*a-(d.browser.safari&&d.browser.version<526&&this.cssPosition=="fixed"?0:(this.cssPosition=="fixed"?-this.scrollParent.scrollLeft():f?0:c.scrollLeft())*a)}},_generatePosition:function(a){var b=this.options,c=this.cssPosition=="absolute"&&
-!(this.scrollParent[0]!=document&&d.ui.contains(this.scrollParent[0],this.offsetParent[0]))?this.offsetParent:this.scrollParent,f=/(html|body)/i.test(c[0].tagName),e=a.pageX,h=a.pageY;if(this.originalPosition){var g;if(this.containment){if(this.relative_container){g=this.relative_container.offset();g=[this.containment[0]+g.left,this.containment[1]+g.top,this.containment[2]+g.left,this.containment[3]+g.top]}else g=this.containment;if(a.pageX-this.offset.click.left<g[0])e=g[0]+this.offset.click.left;
-if(a.pageY-this.offset.click.top<g[1])h=g[1]+this.offset.click.top;if(a.pageX-this.offset.click.left>g[2])e=g[2]+this.offset.click.left;if(a.pageY-this.offset.click.top>g[3])h=g[3]+this.offset.click.top}if(b.grid){h=b.grid[1]?this.originalPageY+Math.round((h-this.originalPageY)/b.grid[1])*b.grid[1]:this.originalPageY;h=g?!(h-this.offset.click.top<g[1]||h-this.offset.click.top>g[3])?h:!(h-this.offset.click.top<g[1])?h-b.grid[1]:h+b.grid[1]:h;e=b.grid[0]?this.originalPageX+Math.round((e-this.originalPageX)/
-b.grid[0])*b.grid[0]:this.originalPageX;e=g?!(e-this.offset.click.left<g[0]||e-this.offset.click.left>g[2])?e:!(e-this.offset.click.left<g[0])?e-b.grid[0]:e+b.grid[0]:e}}return{top:h-this.offset.click.top-this.offset.relative.top-this.offset.parent.top+(d.browser.safari&&d.browser.version<526&&this.cssPosition=="fixed"?0:this.cssPosition=="fixed"?-this.scrollParent.scrollTop():f?0:c.scrollTop()),left:e-this.offset.click.left-this.offset.relative.left-this.offset.parent.left+(d.browser.safari&&d.browser.version<
-526&&this.cssPosition=="fixed"?0:this.cssPosition=="fixed"?-this.scrollParent.scrollLeft():f?0:c.scrollLeft())}},_clear:function(){this.helper.removeClass("ui-draggable-dragging");this.helper[0]!=this.element[0]&&!this.cancelHelperRemoval&&this.helper.remove();this.helper=null;this.cancelHelperRemoval=false},_trigger:function(a,b,c){c=c||this._uiHash();d.ui.plugin.call(this,a,[b,c]);if(a=="drag")this.positionAbs=this._convertPositionTo("absolute");return d.Widget.prototype._trigger.call(this,a,b,
-c)},plugins:{},_uiHash:function(){return{helper:this.helper,position:this.position,originalPosition:this.originalPosition,offset:this.positionAbs}}});d.extend(d.ui.draggable,{version:"1.8.14"});d.ui.plugin.add("draggable","connectToSortable",{start:function(a,b){var c=d(this).data("draggable"),f=c.options,e=d.extend({},b,{item:c.element});c.sortables=[];d(f.connectToSortable).each(function(){var h=d.data(this,"sortable");if(h&&!h.options.disabled){c.sortables.push({instance:h,shouldRevert:h.options.revert});
-h.refreshPositions();h._trigger("activate",a,e)}})},stop:function(a,b){var c=d(this).data("draggable"),f=d.extend({},b,{item:c.element});d.each(c.sortables,function(){if(this.instance.isOver){this.instance.isOver=0;c.cancelHelperRemoval=true;this.instance.cancelHelperRemoval=false;if(this.shouldRevert)this.instance.options.revert=true;this.instance._mouseStop(a);this.instance.options.helper=this.instance.options._helper;c.options.helper=="original"&&this.instance.currentItem.css({top:"auto",left:"auto"})}else{this.instance.cancelHelperRemoval=
-false;this.instance._trigger("deactivate",a,f)}})},drag:function(a,b){var c=d(this).data("draggable"),f=this;d.each(c.sortables,function(){this.instance.positionAbs=c.positionAbs;this.instance.helperProportions=c.helperProportions;this.instance.offset.click=c.offset.click;if(this.instance._intersectsWith(this.instance.containerCache)){if(!this.instance.isOver){this.instance.isOver=1;this.instance.currentItem=d(f).clone().removeAttr("id").appendTo(this.instance.element).data("sortable-item",true);
-this.instance.options._helper=this.instance.options.helper;this.instance.options.helper=function(){return b.helper[0]};a.target=this.instance.currentItem[0];this.instance._mouseCapture(a,true);this.instance._mouseStart(a,true,true);this.instance.offset.click.top=c.offset.click.top;this.instance.offset.click.left=c.offset.click.left;this.instance.offset.parent.left-=c.offset.parent.left-this.instance.offset.parent.left;this.instance.offset.parent.top-=c.offset.parent.top-this.instance.offset.parent.top;
-c._trigger("toSortable",a);c.dropped=this.instance.element;c.currentItem=c.element;this.instance.fromOutside=c}this.instance.currentItem&&this.instance._mouseDrag(a)}else if(this.instance.isOver){this.instance.isOver=0;this.instance.cancelHelperRemoval=true;this.instance.options.revert=false;this.instance._trigger("out",a,this.instance._uiHash(this.instance));this.instance._mouseStop(a,true);this.instance.options.helper=this.instance.options._helper;this.instance.currentItem.remove();this.instance.placeholder&&
-this.instance.placeholder.remove();c._trigger("fromSortable",a);c.dropped=false}})}});d.ui.plugin.add("draggable","cursor",{start:function(){var a=d("body"),b=d(this).data("draggable").options;if(a.css("cursor"))b._cursor=a.css("cursor");a.css("cursor",b.cursor)},stop:function(){var a=d(this).data("draggable").options;a._cursor&&d("body").css("cursor",a._cursor)}});d.ui.plugin.add("draggable","opacity",{start:function(a,b){a=d(b.helper);b=d(this).data("draggable").options;if(a.css("opacity"))b._opacity=
-a.css("opacity");a.css("opacity",b.opacity)},stop:function(a,b){a=d(this).data("draggable").options;a._opacity&&d(b.helper).css("opacity",a._opacity)}});d.ui.plugin.add("draggable","scroll",{start:function(){var a=d(this).data("draggable");if(a.scrollParent[0]!=document&&a.scrollParent[0].tagName!="HTML")a.overflowOffset=a.scrollParent.offset()},drag:function(a){var b=d(this).data("draggable"),c=b.options,f=false;if(b.scrollParent[0]!=document&&b.scrollParent[0].tagName!="HTML"){if(!c.axis||c.axis!=
-"x")if(b.overflowOffset.top+b.scrollParent[0].offsetHeight-a.pageY<c.scrollSensitivity)b.scrollParent[0].scrollTop=f=b.scrollParent[0].scrollTop+c.scrollSpeed;else if(a.pageY-b.overflowOffset.top<c.scrollSensitivity)b.scrollParent[0].scrollTop=f=b.scrollParent[0].scrollTop-c.scrollSpeed;if(!c.axis||c.axis!="y")if(b.overflowOffset.left+b.scrollParent[0].offsetWidth-a.pageX<c.scrollSensitivity)b.scrollParent[0].scrollLeft=f=b.scrollParent[0].scrollLeft+c.scrollSpeed;else if(a.pageX-b.overflowOffset.left<
-c.scrollSensitivity)b.scrollParent[0].scrollLeft=f=b.scrollParent[0].scrollLeft-c.scrollSpeed}else{if(!c.axis||c.axis!="x")if(a.pageY-d(document).scrollTop()<c.scrollSensitivity)f=d(document).scrollTop(d(document).scrollTop()-c.scrollSpeed);else if(d(window).height()-(a.pageY-d(document).scrollTop())<c.scrollSensitivity)f=d(document).scrollTop(d(document).scrollTop()+c.scrollSpeed);if(!c.axis||c.axis!="y")if(a.pageX-d(document).scrollLeft()<c.scrollSensitivity)f=d(document).scrollLeft(d(document).scrollLeft()-
-c.scrollSpeed);else if(d(window).width()-(a.pageX-d(document).scrollLeft())<c.scrollSensitivity)f=d(document).scrollLeft(d(document).scrollLeft()+c.scrollSpeed)}f!==false&&d.ui.ddmanager&&!c.dropBehaviour&&d.ui.ddmanager.prepareOffsets(b,a)}});d.ui.plugin.add("draggable","snap",{start:function(){var a=d(this).data("draggable"),b=a.options;a.snapElements=[];d(b.snap.constructor!=String?b.snap.items||":data(draggable)":b.snap).each(function(){var c=d(this),f=c.offset();this!=a.element[0]&&a.snapElements.push({item:this,
-width:c.outerWidth(),height:c.outerHeight(),top:f.top,left:f.left})})},drag:function(a,b){for(var c=d(this).data("draggable"),f=c.options,e=f.snapTolerance,h=b.offset.left,g=h+c.helperProportions.width,n=b.offset.top,o=n+c.helperProportions.height,i=c.snapElements.length-1;i>=0;i--){var j=c.snapElements[i].left,l=j+c.snapElements[i].width,k=c.snapElements[i].top,m=k+c.snapElements[i].height;if(j-e<h&&h<l+e&&k-e<n&&n<m+e||j-e<h&&h<l+e&&k-e<o&&o<m+e||j-e<g&&g<l+e&&k-e<n&&n<m+e||j-e<g&&g<l+e&&k-e<o&&
-o<m+e){if(f.snapMode!="inner"){var p=Math.abs(k-o)<=e,q=Math.abs(m-n)<=e,r=Math.abs(j-g)<=e,s=Math.abs(l-h)<=e;if(p)b.position.top=c._convertPositionTo("relative",{top:k-c.helperProportions.height,left:0}).top-c.margins.top;if(q)b.position.top=c._convertPositionTo("relative",{top:m,left:0}).top-c.margins.top;if(r)b.position.left=c._convertPositionTo("relative",{top:0,left:j-c.helperProportions.width}).left-c.margins.left;if(s)b.position.left=c._convertPositionTo("relative",{top:0,left:l}).left-c.margins.left}var t=
-p||q||r||s;if(f.snapMode!="outer"){p=Math.abs(k-n)<=e;q=Math.abs(m-o)<=e;r=Math.abs(j-h)<=e;s=Math.abs(l-g)<=e;if(p)b.position.top=c._convertPositionTo("relative",{top:k,left:0}).top-c.margins.top;if(q)b.position.top=c._convertPositionTo("relative",{top:m-c.helperProportions.height,left:0}).top-c.margins.top;if(r)b.position.left=c._convertPositionTo("relative",{top:0,left:j}).left-c.margins.left;if(s)b.position.left=c._convertPositionTo("relative",{top:0,left:l-c.helperProportions.width}).left-c.margins.left}if(!c.snapElements[i].snapping&&
-(p||q||r||s||t))c.options.snap.snap&&c.options.snap.snap.call(c.element,a,d.extend(c._uiHash(),{snapItem:c.snapElements[i].item}));c.snapElements[i].snapping=p||q||r||s||t}else{c.snapElements[i].snapping&&c.options.snap.release&&c.options.snap.release.call(c.element,a,d.extend(c._uiHash(),{snapItem:c.snapElements[i].item}));c.snapElements[i].snapping=false}}}});d.ui.plugin.add("draggable","stack",{start:function(){var a=d(this).data("draggable").options;a=d.makeArray(d(a.stack)).sort(function(c,f){return(parseInt(d(c).css("zIndex"),
-10)||0)-(parseInt(d(f).css("zIndex"),10)||0)});if(a.length){var b=parseInt(a[0].style.zIndex)||0;d(a).each(function(c){this.style.zIndex=b+c});this[0].style.zIndex=b+a.length}}});d.ui.plugin.add("draggable","zIndex",{start:function(a,b){a=d(b.helper);b=d(this).data("draggable").options;if(a.css("zIndex"))b._zIndex=a.css("zIndex");a.css("zIndex",b.zIndex)},stop:function(a,b){a=d(this).data("draggable").options;a._zIndex&&d(b.helper).css("zIndex",a._zIndex)}})})(jQuery);
-;/*
- * jQuery UI Droppable 1.8.14
- *
- * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
- * Dual licensed under the MIT or GPL Version 2 licenses.
- * http://jquery.org/license
- *
- * http://docs.jquery.com/UI/Droppables
- *
- * Depends:
- *	jquery.ui.core.js
- *	jquery.ui.widget.js
- *	jquery.ui.mouse.js
- *	jquery.ui.draggable.js
- */
-(function(d){d.widget("ui.droppable",{widgetEventPrefix:"drop",options:{accept:"*",activeClass:false,addClasses:true,greedy:false,hoverClass:false,scope:"default",tolerance:"intersect"},_create:function(){var a=this.options,b=a.accept;this.isover=0;this.isout=1;this.accept=d.isFunction(b)?b:function(c){return c.is(b)};this.proportions={width:this.element[0].offsetWidth,height:this.element[0].offsetHeight};d.ui.ddmanager.droppables[a.scope]=d.ui.ddmanager.droppables[a.scope]||[];d.ui.ddmanager.droppables[a.scope].push(this);
-a.addClasses&&this.element.addClass("ui-droppable")},destroy:function(){for(var a=d.ui.ddmanager.droppables[this.options.scope],b=0;b<a.length;b++)a[b]==this&&a.splice(b,1);this.element.removeClass("ui-droppable ui-droppable-disabled").removeData("droppable").unbind(".droppable");return this},_setOption:function(a,b){if(a=="accept")this.accept=d.isFunction(b)?b:function(c){return c.is(b)};d.Widget.prototype._setOption.apply(this,arguments)},_activate:function(a){var b=d.ui.ddmanager.current;this.options.activeClass&&
-this.element.addClass(this.options.activeClass);b&&this._trigger("activate",a,this.ui(b))},_deactivate:function(a){var b=d.ui.ddmanager.current;this.options.activeClass&&this.element.removeClass(this.options.activeClass);b&&this._trigger("deactivate",a,this.ui(b))},_over:function(a){var b=d.ui.ddmanager.current;if(!(!b||(b.currentItem||b.element)[0]==this.element[0]))if(this.accept.call(this.element[0],b.currentItem||b.element)){this.options.hoverClass&&this.element.addClass(this.options.hoverClass);
-this._trigger("over",a,this.ui(b))}},_out:function(a){var b=d.ui.ddmanager.current;if(!(!b||(b.currentItem||b.element)[0]==this.element[0]))if(this.accept.call(this.element[0],b.currentItem||b.element)){this.options.hoverClass&&this.element.removeClass(this.options.hoverClass);this._trigger("out",a,this.ui(b))}},_drop:function(a,b){var c=b||d.ui.ddmanager.current;if(!c||(c.currentItem||c.element)[0]==this.element[0])return false;var e=false;this.element.find(":data(droppable)").not(".ui-draggable-dragging").each(function(){var g=
-d.data(this,"droppable");if(g.options.greedy&&!g.options.disabled&&g.options.scope==c.options.scope&&g.accept.call(g.element[0],c.currentItem||c.element)&&d.ui.intersect(c,d.extend(g,{offset:g.element.offset()}),g.options.tolerance)){e=true;return false}});if(e)return false;if(this.accept.call(this.element[0],c.currentItem||c.element)){this.options.activeClass&&this.element.removeClass(this.options.activeClass);this.options.hoverClass&&this.element.removeClass(this.options.hoverClass);this._trigger("drop",
-a,this.ui(c));return this.element}return false},ui:function(a){return{draggable:a.currentItem||a.element,helper:a.helper,position:a.position,offset:a.positionAbs}}});d.extend(d.ui.droppable,{version:"1.8.14"});d.ui.intersect=function(a,b,c){if(!b.offset)return false;var e=(a.positionAbs||a.position.absolute).left,g=e+a.helperProportions.width,f=(a.positionAbs||a.position.absolute).top,h=f+a.helperProportions.height,i=b.offset.left,k=i+b.proportions.width,j=b.offset.top,l=j+b.proportions.height;
-switch(c){case "fit":return i<=e&&g<=k&&j<=f&&h<=l;case "intersect":return i<e+a.helperProportions.width/2&&g-a.helperProportions.width/2<k&&j<f+a.helperProportions.height/2&&h-a.helperProportions.height/2<l;case "pointer":return d.ui.isOver((a.positionAbs||a.position.absolute).top+(a.clickOffset||a.offset.click).top,(a.positionAbs||a.position.absolute).left+(a.clickOffset||a.offset.click).left,j,i,b.proportions.height,b.proportions.width);case "touch":return(f>=j&&f<=l||h>=j&&h<=l||f<j&&h>l)&&(e>=
-i&&e<=k||g>=i&&g<=k||e<i&&g>k);default:return false}};d.ui.ddmanager={current:null,droppables:{"default":[]},prepareOffsets:function(a,b){var c=d.ui.ddmanager.droppables[a.options.scope]||[],e=b?b.type:null,g=(a.currentItem||a.element).find(":data(droppable)").andSelf(),f=0;a:for(;f<c.length;f++)if(!(c[f].options.disabled||a&&!c[f].accept.call(c[f].element[0],a.currentItem||a.element))){for(var h=0;h<g.length;h++)if(g[h]==c[f].element[0]){c[f].proportions.height=0;continue a}c[f].visible=c[f].element.css("display")!=
-"none";if(c[f].visible){e=="mousedown"&&c[f]._activate.call(c[f],b);c[f].offset=c[f].element.offset();c[f].proportions={width:c[f].element[0].offsetWidth,height:c[f].element[0].offsetHeight}}}},drop:function(a,b){var c=false;d.each(d.ui.ddmanager.droppables[a.options.scope]||[],function(){if(this.options){if(!this.options.disabled&&this.visible&&d.ui.intersect(a,this,this.options.tolerance))c=c||this._drop.call(this,b);if(!this.options.disabled&&this.visible&&this.accept.call(this.element[0],a.currentItem||
-a.element)){this.isout=1;this.isover=0;this._deactivate.call(this,b)}}});return c},dragStart:function(a,b){a.element.parentsUntil("body").bind("scroll.droppable",function(){a.options.refreshPositions||d.ui.ddmanager.prepareOffsets(a,b)})},drag:function(a,b){a.options.refreshPositions&&d.ui.ddmanager.prepareOffsets(a,b);d.each(d.ui.ddmanager.droppables[a.options.scope]||[],function(){if(!(this.options.disabled||this.greedyChild||!this.visible)){var c=d.ui.intersect(a,this,this.options.tolerance);if(c=
-!c&&this.isover==1?"isout":c&&this.isover==0?"isover":null){var e;if(this.options.greedy){var g=this.element.parents(":data(droppable):eq(0)");if(g.length){e=d.data(g[0],"droppable");e.greedyChild=c=="isover"?1:0}}if(e&&c=="isover"){e.isover=0;e.isout=1;e._out.call(e,b)}this[c]=1;this[c=="isout"?"isover":"isout"]=0;this[c=="isover"?"_over":"_out"].call(this,b);if(e&&c=="isout"){e.isout=0;e.isover=1;e._over.call(e,b)}}}})},dragStop:function(a,b){a.element.parentsUntil("body").unbind("scroll.droppable");
-a.options.refreshPositions||d.ui.ddmanager.prepareOffsets(a,b)}}})(jQuery);
-;
\ No newline at end of file
diff --git a/vendor/behat/mink/driver-testsuite/web-fixtures/js_test.html b/vendor/behat/mink/driver-testsuite/web-fixtures/js_test.html
deleted file mode 100644
index 6285455..0000000
--- a/vendor/behat/mink/driver-testsuite/web-fixtures/js_test.html
+++ /dev/null
@@ -1,114 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
-    <title>JS elements test</title>
-    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/>
-
-    <style>
-        #draggable {
-            width: 100px; height: 100px; padding: 0.5em; float: left; margin: 10px 10px 10px 0;
-            background:#ccc;
-            opacity:0.5;
-        }
-        #droppable {
-            width: 150px; height: 150px; padding: 0.5em; float: left; margin: 10px;
-            background:#eee;
-        }
-        #waitable {
-            width: 150px; height: 150px; padding: 0.5em; float: left; margin: 10px;
-            background:#eee;
-        }
-    </style>
-</head>
-<body>
-    <div class="elements">
-        <div id="clicker">not clicked</div>
-        <div id="mouseover-detector">no mouse action detected</div>
-        <div id="invisible" style="display: none">invisible man</div>
-        <input id="focus-blur-detector" type="text" value="no action detected"/>
-        <input class="input first" type="text" value="" />
-        <input class="input second" type="text" value="" />
-        <input class="input third" type="text" value="" />
-        <div class="text-event"></div>
-    </div>
-
-    <div id="draggable" class="ui-widget-content"></div>
-
-    <div id="droppable" class="ui-widget-header">
-        <p>Drop here</p>
-    </div>
-
-    <div id="waitable"></div>
-
-    <script src="js/jquery-1.6.2-min.js"></script>
-    <script src="js/jquery-ui-1.8.14.custom.min.js"></script>
-	<script>
-		$(document).ready(function() {
-            var $clicker = $('#clicker');
-
-            $clicker.click(function() {
-                $(this).text('single clicked');
-            });
-
-            $clicker.dblclick(function() {
-                $(this).text('double clicked');
-            });
-
-            $clicker.bind('contextmenu', function() {
-                $(this).text('right clicked');
-            });
-
-            var $focusDetector = $('#focus-blur-detector');
-
-            $focusDetector.focus(function() {
-                $(this).val('focused');
-            });
-
-            $focusDetector.blur(function() {
-                $(this).val('blured');
-            });
-
-            $('#mouseover-detector').mouseover(function() {
-                $(this).text('mouse overed');
-            });
-
-            $('.elements input.input.first').keydown(function(ev) {
-                $('.text-event').text('key downed:' + ev.altKey * 1 + ' / ' + ev.ctrlKey * 1 + ' / ' + ev.shiftKey * 1 + ' / ' + ev.metaKey * 1);
-            });
-
-            $('.elements input.input.second').keypress(function(ev) {
-                $('.text-event').text('key pressed:' + ev.which + ' / ' + ev.altKey * 1 + ' / ' + ev.ctrlKey * 1 + ' / ' + ev.shiftKey * 1 + ' / ' + ev.metaKey * 1);
-            });
-
-            $('.elements input.input.third').keyup(function(ev) {
-                $('.text-event').text('key upped:' + ev.which + ' / ' + ev.altKey * 1 + ' / ' + ev.ctrlKey * 1 + ' / ' + ev.shiftKey * 1 + ' / ' + ev.metaKey * 1);
-            });
-
-            $( "#draggable" ).draggable();
-            $( "#droppable" ).droppable({
-                drop: function( event, ui ) {
-                    $( this ).find( "p" ).html( "Dropped!" );
-                }
-            });
-
-            var t1, t2;
-
-            $('#waitable').click(function() {
-                var el = $(this);
-
-                el.html('');
-                clearTimeout(t1);
-                clearTimeout(t2);
-
-                t1 = setTimeout(function() {
-                    el.html('<div>arrived</div>');
-                }, 1000);
-
-                t2 = setTimeout(function() {
-                    el.html('<div>timeout</div>');
-                }, 2000);
-            });
-		});
-	</script>
-</body>
-</html>
diff --git a/vendor/behat/mink/driver-testsuite/web-fixtures/json.php b/vendor/behat/mink/driver-testsuite/web-fixtures/json.php
deleted file mode 100644
index 173d358..0000000
--- a/vendor/behat/mink/driver-testsuite/web-fixtures/json.php
+++ /dev/null
@@ -1,7 +0,0 @@
-<?php
-
-echo json_encode(array(
-    'key1' => 'val1',
-    'key2' => 234,
-    'key3' => array(1, 2, 3)
-));
diff --git a/vendor/behat/mink/driver-testsuite/web-fixtures/links.html b/vendor/behat/mink/driver-testsuite/web-fixtures/links.html
deleted file mode 100644
index ec626bf..0000000
--- a/vendor/behat/mink/driver-testsuite/web-fixtures/links.html
+++ /dev/null
@@ -1,15 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
-    <title>Links page</title>
-    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/>
-</head>
-<body>
-    <a href="redirector.php">Redirect me to</a>
-    <a href="randomizer.php">Random number page</a>
-    <a href="links.html?quoted">Link with a '</a>
-    <a href="basic_form.html">
-        <img src="basic_form" alt="basic form image"/>
-    </a>
-</body>
-</html>
diff --git a/vendor/behat/mink/driver-testsuite/web-fixtures/multi_input_form.html b/vendor/behat/mink/driver-testsuite/web-fixtures/multi_input_form.html
deleted file mode 100644
index 600a500..0000000
--- a/vendor/behat/mink/driver-testsuite/web-fixtures/multi_input_form.html
+++ /dev/null
@@ -1,27 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
-    <title>Multi input Test</title>
-    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/>
-</head>
-<body>
-    <h1>Multi input Test</h1>
-
-    <form method="POST" action="advanced_form_post.php">
-        <label>
-            First
-            <input type="text" name="tags[]" value="tag1">
-        </label>
-        <label>
-            Second
-            <input type="text" name="tags[]" value="tag2">
-        </label>
-        <label>
-            Third
-            <input type="text" name="tags[]" value="tag1">
-        </label>
-
-        <input type="submit" name="submit" value="Register" />
-    </form>
-</body>
-</html>
diff --git a/vendor/behat/mink/driver-testsuite/web-fixtures/multicheckbox_form.html b/vendor/behat/mink/driver-testsuite/web-fixtures/multicheckbox_form.html
deleted file mode 100644
index a2ae375..0000000
--- a/vendor/behat/mink/driver-testsuite/web-fixtures/multicheckbox_form.html
+++ /dev/null
@@ -1,17 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
-    <title>Multicheckbox Test</title>
-    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/>
-</head>
-<body>
-    <h1>Multicheckbox Test</h1>
-
-    <form method="POST" action="advanced_form_post.php">
-        <input type="checkbox" name="mail_types[]" checked="checked" value="update"/>
-        <input type="checkbox" name="mail_types[]" value="spam"/>
-
-        <input type="submit" name="submit" value="Register" />
-    </form>
-</body>
-</html>
diff --git a/vendor/behat/mink/driver-testsuite/web-fixtures/multiselect_form.html b/vendor/behat/mink/driver-testsuite/web-fixtures/multiselect_form.html
deleted file mode 100644
index 0d28986..0000000
--- a/vendor/behat/mink/driver-testsuite/web-fixtures/multiselect_form.html
+++ /dev/null
@@ -1,32 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
-    <title>Multiselect Test</title>
-    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/>
-</head>
-<body>
-    <h1>Multiselect Test</h1>
-
-    <form method="POST" action="advanced_form_post.php">
-        <select name="select_number">
-            <option value="10">ten</option>
-            <option selected="selected" value="20">twenty</option>
-            <option value="30">thirty</option>
-        </select>
-
-        <select name="select_multiple_numbers[]" multiple="multiple">
-            <option value="1">one</option>
-            <option value="2">two</option>
-            <option value="3">three</option>
-        </select>
-
-        <select name="select_multiple_values[]" multiple="multiple">
-            <option value="1">one</option>
-            <option value="2" selected="selected">two</option>
-            <option value="3" selected="selected">three</option>
-        </select>
-
-        <input type="submit" name="submit" value="Register" />
-    </form>
-</body>
-</html>
diff --git a/vendor/behat/mink/driver-testsuite/web-fixtures/popup1.html b/vendor/behat/mink/driver-testsuite/web-fixtures/popup1.html
deleted file mode 100644
index b8e3fe2..0000000
--- a/vendor/behat/mink/driver-testsuite/web-fixtures/popup1.html
+++ /dev/null
@@ -1,13 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
-    <title>popup_1</title>
-</head>
-<body>
-
-    <div id="text">
-        Popup#1 div text
-    </div>
-
-</body>
-</html>
diff --git a/vendor/behat/mink/driver-testsuite/web-fixtures/popup2.html b/vendor/behat/mink/driver-testsuite/web-fixtures/popup2.html
deleted file mode 100644
index dae1932..0000000
--- a/vendor/behat/mink/driver-testsuite/web-fixtures/popup2.html
+++ /dev/null
@@ -1,13 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
-    <title>popup_2</title>
-</head>
-<body>
-
-    <div id="text">
-        Popup#2 div text
-    </div>
-
-</body>
-</html>
diff --git a/vendor/behat/mink/driver-testsuite/web-fixtures/print_cookies.php b/vendor/behat/mink/driver-testsuite/web-fixtures/print_cookies.php
deleted file mode 100644
index eef496e..0000000
--- a/vendor/behat/mink/driver-testsuite/web-fixtures/print_cookies.php
+++ /dev/null
@@ -1,10 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
-    <title>Cookies page</title>
-    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/>
-</head>
-<body>
-    <?php echo str_replace('>', '', var_export($_COOKIE, true)); ?>
-</body>
-</html>
diff --git a/vendor/behat/mink/driver-testsuite/web-fixtures/radio.html b/vendor/behat/mink/driver-testsuite/web-fixtures/radio.html
deleted file mode 100644
index 69a916a..0000000
--- a/vendor/behat/mink/driver-testsuite/web-fixtures/radio.html
+++ /dev/null
@@ -1,21 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
-    <meta charset="utf-8">
-    <title>Radio group</title>
-</head>
-<body>
-    <form id="form1">
-        <input name="group1" type="radio" value="set" id="first" checked="checked">
-        <input name="group1" type="radio" value="updated" id="second">
-
-        <input name="reused" type="radio" value="test" id="reused_form1">
-        <input name="reused" type="radio" value="test2" id="reused2_form1" checked="checked">
-    </form>
-
-    <form id="form2">
-        <input name="reused" type="radio" value="test3" id="reused_form2" checked="checked">
-        <input name="reused" type="radio" value="test4" id="reused2_form2">
-    </form>
-</body>
-</html>
diff --git a/vendor/behat/mink/driver-testsuite/web-fixtures/randomizer.php b/vendor/behat/mink/driver-testsuite/web-fixtures/randomizer.php
deleted file mode 100644
index 07a73ec..0000000
--- a/vendor/behat/mink/driver-testsuite/web-fixtures/randomizer.php
+++ /dev/null
@@ -1,12 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
-    <title>Index page</title>
-    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/>
-</head>
-<body>
-
-    <h1 id="number"><?php echo rand() ?></h1>
-
-</body>
-</html>
diff --git a/vendor/behat/mink/driver-testsuite/web-fixtures/redirect_destination.html b/vendor/behat/mink/driver-testsuite/web-fixtures/redirect_destination.html
deleted file mode 100644
index 3de7481..0000000
--- a/vendor/behat/mink/driver-testsuite/web-fixtures/redirect_destination.html
+++ /dev/null
@@ -1,10 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
-    <title>Redirect destination</title>
-    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/>
-</head>
-<body>
-    You were redirected!
-</body>
-</html>
diff --git a/vendor/behat/mink/driver-testsuite/web-fixtures/redirector.php b/vendor/behat/mink/driver-testsuite/web-fixtures/redirector.php
deleted file mode 100644
index 44ac8f3..0000000
--- a/vendor/behat/mink/driver-testsuite/web-fixtures/redirector.php
+++ /dev/null
@@ -1,3 +0,0 @@
-<?php
-
-header('location: redirect_destination.html');
diff --git a/vendor/behat/mink/driver-testsuite/web-fixtures/response_headers.php b/vendor/behat/mink/driver-testsuite/web-fixtures/response_headers.php
deleted file mode 100644
index a9166b7..0000000
--- a/vendor/behat/mink/driver-testsuite/web-fixtures/response_headers.php
+++ /dev/null
@@ -1,15 +0,0 @@
-<?php
-
-header('X-Mink-Test: response-headers');
-
-?>
-<!DOCTYPE html>
-<html lang="en">
-<head>
-    <title>Response headers</title>
-    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
-</head>
-<body>
-    <h1>Response headers</h1>
-</body>
-</html>
diff --git a/vendor/behat/mink/driver-testsuite/web-fixtures/session_test.php b/vendor/behat/mink/driver-testsuite/web-fixtures/session_test.php
deleted file mode 100644
index df1af6f..0000000
--- a/vendor/behat/mink/driver-testsuite/web-fixtures/session_test.php
+++ /dev/null
@@ -1,18 +0,0 @@
-<?php
-session_name('_SESS');
-session_start();
-
-if (isset($_GET['login'])) {
-    session_regenerate_id();
-}
-?>
-<!DOCTYPE html>
-<html>
-<head>
-    <title>Session Test</title>
-    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/>
-</head>
-<body>
-    <div id="session-id"><?php echo session_id() ?></div>
-</body>
-</html>
diff --git a/vendor/behat/mink/driver-testsuite/web-fixtures/some_file.txt b/vendor/behat/mink/driver-testsuite/web-fixtures/some_file.txt
deleted file mode 100644
index d515a02..0000000
--- a/vendor/behat/mink/driver-testsuite/web-fixtures/some_file.txt
+++ /dev/null
@@ -1 +0,0 @@
-1 uploaded file
diff --git a/vendor/behat/mink/driver-testsuite/web-fixtures/sub-folder/cookie_page1.php b/vendor/behat/mink/driver-testsuite/web-fixtures/sub-folder/cookie_page1.php
deleted file mode 100644
index 750249b..0000000
--- a/vendor/behat/mink/driver-testsuite/web-fixtures/sub-folder/cookie_page1.php
+++ /dev/null
@@ -1,4 +0,0 @@
-<?php
-$cookieAtRootPath = false;
-$cookieValue = 'srv_var_is_set_sub_folder';
-require_once __DIR__ . '/../' . basename(__FILE__);
diff --git a/vendor/behat/mink/driver-testsuite/web-fixtures/sub-folder/cookie_page2.php b/vendor/behat/mink/driver-testsuite/web-fixtures/sub-folder/cookie_page2.php
deleted file mode 100644
index 9747fe8..0000000
--- a/vendor/behat/mink/driver-testsuite/web-fixtures/sub-folder/cookie_page2.php
+++ /dev/null
@@ -1,2 +0,0 @@
-<?php
-require_once __DIR__ . '/../' . basename(__FILE__);
diff --git a/vendor/behat/mink/driver-testsuite/web-fixtures/window.html b/vendor/behat/mink/driver-testsuite/web-fixtures/window.html
deleted file mode 100644
index d0a4594..0000000
--- a/vendor/behat/mink/driver-testsuite/web-fixtures/window.html
+++ /dev/null
@@ -1,26 +0,0 @@
-<!DOCTYPE html>
-<html>
-<body>
-
-<script>
-function newPopup(url, title) {
-    popupWindow = window.open(
-        url, title,'height=100,width=200,left=10,top=10,resizable=yes,scrollbars=yes,toolbar=yes,menubar=no,location=no,directories=no,status=yes'
-    );
-}
-</script>
-
-<a href="popup1.html" onclick="newPopup(this.href, 'popup_1'); return false;">
-    Popup #1
-</a>
-
-<a href="popup2.html" onclick="newPopup(this.href, 'popup_2'); return false;">
-    Popup #2
-</a>
-
-<div id="text">
-    Main window div text
-</div>
-
-</body>
-</html>
diff --git a/vendor/behat/mink/tests/Driver/CoreDriverTest.php b/vendor/behat/mink/tests/Driver/CoreDriverTest.php
deleted file mode 100644
index cd1fe64..0000000
--- a/vendor/behat/mink/tests/Driver/CoreDriverTest.php
+++ /dev/null
@@ -1,110 +0,0 @@
-<?php
-
-namespace Behat\Mink\Tests\Driver;
-
-use Behat\Mink\Element\NodeElement;
-
-class CoreDriverTest extends \PHPUnit_Framework_TestCase
-{
-    public function testNoExtraMethods()
-    {
-        $interfaceRef = new \ReflectionClass('Behat\Mink\Driver\DriverInterface');
-        $coreDriverRef = new \ReflectionClass('Behat\Mink\Driver\CoreDriver');
-
-        foreach ($coreDriverRef->getMethods(\ReflectionMethod::IS_PUBLIC) as $method) {
-            $this->assertTrue(
-                $interfaceRef->hasMethod($method->getName()),
-                sprintf('CoreDriver should not implement methods which are not part of the DriverInterface but %s found', $method->getName())
-            );
-        }
-    }
-
-    public function testCreateNodeElements()
-    {
-        $driver = $this->getMockBuilder('Behat\Mink\Driver\CoreDriver')
-            ->setMethods(array('findElementXpaths'))
-            ->getMockForAbstractClass();
-
-        $session = $this->getMockBuilder('Behat\Mink\Session')
-            ->disableOriginalConstructor()
-            ->getMock();
-
-        $driver->setSession($session);
-
-        $driver->expects($this->once())
-            ->method('findElementXpaths')
-            ->with('xpath')
-            ->willReturn(array('xpath1', 'xpath2'));
-
-        /** @var NodeElement[] $elements */
-        $elements = $driver->find('xpath');
-
-        $this->assertInternalType('array', $elements);
-        $this->assertCount(2, $elements);
-        $this->assertContainsOnlyInstancesOf('Behat\Mink\Element\NodeElement', $elements);
-
-        $this->assertSame('xpath1', $elements[0]->getXpath());
-        $this->assertSame('xpath2', $elements[1]->getXpath());
-    }
-
-    /**
-     * @dataProvider getDriverInterfaceMethods
-     */
-    public function testInterfaceMethods(\ReflectionMethod $method)
-    {
-        $refl = new \ReflectionClass('Behat\Mink\Driver\CoreDriver');
-
-        $this->assertFalse(
-            $refl->getMethod($method->getName())->isAbstract(),
-            sprintf('CoreDriver should implement a dummy %s method', $method->getName())
-        );
-
-        if ('setSession' === $method->getName()) {
-            return; // setSession is actually implemented, so we don't expect an exception here.
-        }
-
-        $driver = $this->getMockForAbstractClass('Behat\Mink\Driver\CoreDriver');
-
-        $this->setExpectedException('Behat\Mink\Exception\UnsupportedDriverActionException');
-        call_user_func_array(array($driver, $method->getName()), $this->getArguments($method));
-    }
-
-    public function getDriverInterfaceMethods()
-    {
-        $ref = new \ReflectionClass('Behat\Mink\Driver\DriverInterface');
-
-        return array_map(function ($method) {
-            return array($method);
-        }, $ref->getMethods());
-    }
-
-    private function getArguments(\ReflectionMethod $method)
-    {
-        $arguments = array();
-
-        foreach ($method->getParameters() as $parameter) {
-            $arguments[] = $this->getArgument($parameter);
-        }
-
-        return $arguments;
-    }
-
-    private function getArgument(\ReflectionParameter $argument)
-    {
-        if ($argument->isOptional()) {
-            return $argument->getDefaultValue();
-        }
-
-        if ($argument->allowsNull()) {
-            return null;
-        }
-
-        if ($argument->getClass()) {
-            return $this->getMockBuilder($argument->getClass()->getName())
-                ->disableOriginalConstructor()
-                ->getMock();
-        }
-
-        return null;
-    }
-}
diff --git a/vendor/behat/mink/tests/Element/DocumentElementTest.php b/vendor/behat/mink/tests/Element/DocumentElementTest.php
deleted file mode 100644
index 2105ab7..0000000
--- a/vendor/behat/mink/tests/Element/DocumentElementTest.php
+++ /dev/null
@@ -1,449 +0,0 @@
-<?php
-
-namespace Behat\Mink\Tests\Element;
-
-use Behat\Mink\Element\DocumentElement;
-
-class DocumentElementTest extends ElementTest
-{
-    /**
-     * Page.
-     *
-     * @var DocumentElement
-     */
-    private $document;
-
-    protected function setUp()
-    {
-        parent::setUp();
-        $this->document = new DocumentElement($this->session);
-    }
-
-    /**
-     * @group legacy
-     */
-    public function testGetSession()
-    {
-        $this->assertEquals($this->session, $this->document->getSession());
-    }
-
-    public function testFindAll()
-    {
-        $xpath = 'h3[a]';
-        $css = 'h3 > a';
-
-        $this->driver
-            ->expects($this->exactly(2))
-            ->method('find')
-            ->will($this->returnValueMap(array(
-                array('//html/'.$xpath, array(2, 3, 4)),
-                array('//html/'.$css, array(1, 2)),
-            )));
-
-        $this->selectors
-            ->expects($this->exactly(2))
-            ->method('selectorToXpath')
-            ->will($this->returnValueMap(array(
-                array('xpath', $xpath, $xpath),
-                array('css', $css, $css),
-            )));
-
-        $this->assertEquals(3, count($this->document->findAll('xpath', $xpath)));
-        $this->assertEquals(2, count($this->document->findAll('css', $css)));
-    }
-
-    public function testFind()
-    {
-        $this->driver
-            ->expects($this->exactly(3))
-            ->method('find')
-            ->with('//html/h3[a]')
-            ->will($this->onConsecutiveCalls(array(2, 3, 4), array(1, 2), array()));
-
-        $xpath = 'h3[a]';
-        $css = 'h3 > a';
-
-        $this->selectors
-            ->expects($this->exactly(3))
-            ->method('selectorToXpath')
-            ->will($this->returnValueMap(array(
-                array('xpath', $xpath, $xpath),
-                array('xpath', $xpath, $xpath),
-                array('css', $css, $xpath),
-            )));
-
-        $this->assertEquals(2, $this->document->find('xpath', $xpath));
-        $this->assertEquals(1, $this->document->find('css', $css));
-        $this->assertNull($this->document->find('xpath', $xpath));
-    }
-
-    public function testFindField()
-    {
-        $this->mockNamedFinder(
-            '//field',
-            array('field1', 'field2', 'field3'),
-            array('field', 'some field')
-        );
-
-        $this->assertEquals('field1', $this->document->findField('some field'));
-        $this->assertEquals(null, $this->document->findField('some field'));
-    }
-
-    public function testFindLink()
-    {
-        $this->mockNamedFinder(
-            '//link',
-            array('link1', 'link2', 'link3'),
-            array('link', 'some link')
-        );
-
-        $this->assertEquals('link1', $this->document->findLink('some link'));
-        $this->assertEquals(null, $this->document->findLink('some link'));
-    }
-
-    public function testFindButton()
-    {
-        $this->mockNamedFinder(
-            '//button',
-            array('button1', 'button2', 'button3'),
-            array('button', 'some button')
-        );
-
-        $this->assertEquals('button1', $this->document->findButton('some button'));
-        $this->assertEquals(null, $this->document->findButton('some button'));
-    }
-
-    public function testFindById()
-    {
-        $xpath = '//*[@id=some-item-2]';
-
-        $this->mockNamedFinder($xpath, array(array('id2', 'id3'), array()), array('id', 'some-item-2'));
-
-        $this->assertEquals('id2', $this->document->findById('some-item-2'));
-        $this->assertEquals(null, $this->document->findById('some-item-2'));
-    }
-
-    public function testHasSelector()
-    {
-        $this->driver
-            ->expects($this->exactly(2))
-            ->method('find')
-            ->with('//html/some xpath')
-            ->will($this->onConsecutiveCalls(array('id2', 'id3'), array()));
-
-        $this->selectors
-            ->expects($this->exactly(2))
-            ->method('selectorToXpath')
-            ->with('xpath', 'some xpath')
-            ->will($this->returnValue('some xpath'));
-
-        $this->assertTrue($this->document->has('xpath', 'some xpath'));
-        $this->assertFalse($this->document->has('xpath', 'some xpath'));
-    }
-
-    public function testHasContent()
-    {
-        $this->mockNamedFinder(
-            '//some content',
-            array('item1', 'item2'),
-            array('content', 'some content')
-        );
-
-        $this->assertTrue($this->document->hasContent('some content'));
-        $this->assertFalse($this->document->hasContent('some content'));
-    }
-
-    public function testHasLink()
-    {
-        $this->mockNamedFinder(
-            '//link',
-            array('link1', 'link2', 'link3'),
-            array('link', 'some link')
-        );
-
-        $this->assertTrue($this->document->hasLink('some link'));
-        $this->assertFalse($this->document->hasLink('some link'));
-    }
-
-    public function testHasButton()
-    {
-        $this->mockNamedFinder(
-            '//button',
-            array('button1', 'button2', 'button3'),
-            array('button', 'some button')
-        );
-
-        $this->assertTrue($this->document->hasButton('some button'));
-        $this->assertFalse($this->document->hasButton('some button'));
-    }
-
-    public function testHasField()
-    {
-        $this->mockNamedFinder(
-            '//field',
-            array('field1', 'field2', 'field3'),
-            array('field', 'some field')
-        );
-
-        $this->assertTrue($this->document->hasField('some field'));
-        $this->assertFalse($this->document->hasField('some field'));
-    }
-
-    public function testHasCheckedField()
-    {
-        $checkbox = $this->getMockBuilder('Behat\Mink\Element\NodeElement')
-            ->disableOriginalConstructor()
-            ->getMock();
-        $checkbox
-            ->expects($this->exactly(2))
-            ->method('isChecked')
-            ->will($this->onConsecutiveCalls(true, false));
-
-        $this->mockNamedFinder(
-            '//field',
-            array(array($checkbox), array(), array($checkbox)),
-            array('field', 'some checkbox'),
-            3
-        );
-
-        $this->assertTrue($this->document->hasCheckedField('some checkbox'));
-        $this->assertFalse($this->document->hasCheckedField('some checkbox'));
-        $this->assertFalse($this->document->hasCheckedField('some checkbox'));
-    }
-
-    public function testHasUncheckedField()
-    {
-        $checkbox = $this->getMockBuilder('Behat\Mink\Element\NodeElement')
-            ->disableOriginalConstructor()
-            ->getMock();
-        $checkbox
-            ->expects($this->exactly(2))
-            ->method('isChecked')
-            ->will($this->onConsecutiveCalls(true, false));
-
-        $this->mockNamedFinder(
-            '//field',
-            array(array($checkbox), array(), array($checkbox)),
-            array('field', 'some checkbox'),
-            3
-        );
-
-        $this->assertFalse($this->document->hasUncheckedField('some checkbox'));
-        $this->assertFalse($this->document->hasUncheckedField('some checkbox'));
-        $this->assertTrue($this->document->hasUncheckedField('some checkbox'));
-    }
-
-    public function testHasSelect()
-    {
-        $this->mockNamedFinder(
-            '//select',
-            array('select'),
-            array('select', 'some select field')
-        );
-
-        $this->assertTrue($this->document->hasSelect('some select field'));
-        $this->assertFalse($this->document->hasSelect('some select field'));
-    }
-
-    public function testHasTable()
-    {
-        $this->mockNamedFinder(
-            '//table',
-            array('table'),
-            array('table', 'some table')
-        );
-
-        $this->assertTrue($this->document->hasTable('some table'));
-        $this->assertFalse($this->document->hasTable('some table'));
-    }
-
-    public function testClickLink()
-    {
-        $node = $this->getMockBuilder('Behat\Mink\Element\NodeElement')
-            ->disableOriginalConstructor()
-            ->getMock();
-        $node
-            ->expects($this->once())
-            ->method('click');
-
-        $this->mockNamedFinder(
-            '//link',
-            array($node),
-            array('link', 'some link')
-        );
-
-        $this->document->clickLink('some link');
-        $this->setExpectedException('Behat\Mink\Exception\ElementNotFoundException');
-        $this->document->clickLink('some link');
-    }
-
-    public function testClickButton()
-    {
-        $node = $this->getMockBuilder('Behat\Mink\Element\NodeElement')
-            ->disableOriginalConstructor()
-            ->getMock();
-        $node
-            ->expects($this->once())
-            ->method('press');
-
-        $this->mockNamedFinder(
-            '//button',
-            array($node),
-            array('button', 'some button')
-        );
-
-        $this->document->pressButton('some button');
-        $this->setExpectedException('Behat\Mink\Exception\ElementNotFoundException');
-        $this->document->pressButton('some button');
-    }
-
-    public function testFillField()
-    {
-        $node = $this->getMockBuilder('Behat\Mink\Element\NodeElement')
-            ->disableOriginalConstructor()
-            ->getMock();
-        $node
-            ->expects($this->once())
-            ->method('setValue')
-            ->with('some val');
-
-        $this->mockNamedFinder(
-            '//field',
-            array($node),
-            array('field', 'some field')
-        );
-
-        $this->document->fillField('some field', 'some val');
-        $this->setExpectedException('Behat\Mink\Exception\ElementNotFoundException');
-        $this->document->fillField('some field', 'some val');
-    }
-
-    public function testCheckField()
-    {
-        $node = $this->getMockBuilder('Behat\Mink\Element\NodeElement')
-            ->disableOriginalConstructor()
-            ->getMock();
-        $node
-            ->expects($this->once())
-            ->method('check');
-
-        $this->mockNamedFinder(
-            '//field',
-            array($node),
-            array('field', 'some field')
-        );
-
-        $this->document->checkField('some field');
-        $this->setExpectedException('Behat\Mink\Exception\ElementNotFoundException');
-        $this->document->checkField('some field');
-    }
-
-    public function testUncheckField()
-    {
-        $node = $this->getMockBuilder('Behat\Mink\Element\NodeElement')
-            ->disableOriginalConstructor()
-            ->getMock();
-        $node
-            ->expects($this->once())
-            ->method('uncheck');
-
-        $this->mockNamedFinder(
-            '//field',
-            array($node),
-            array('field', 'some field')
-        );
-
-        $this->document->uncheckField('some field');
-        $this->setExpectedException('Behat\Mink\Exception\ElementNotFoundException');
-        $this->document->uncheckField('some field');
-    }
-
-    public function testSelectField()
-    {
-        $node = $this->getMockBuilder('Behat\Mink\Element\NodeElement')
-            ->disableOriginalConstructor()
-            ->getMock();
-        $node
-            ->expects($this->once())
-            ->method('selectOption')
-            ->with('option2');
-
-        $this->mockNamedFinder(
-            '//field',
-            array($node),
-            array('field', 'some field')
-        );
-
-        $this->document->selectFieldOption('some field', 'option2');
-        $this->setExpectedException('Behat\Mink\Exception\ElementNotFoundException');
-        $this->document->selectFieldOption('some field', 'option2');
-    }
-
-    public function testAttachFileToField()
-    {
-        $node = $this->getMockBuilder('Behat\Mink\Element\NodeElement')
-            ->disableOriginalConstructor()
-            ->getMock();
-        $node
-            ->expects($this->once())
-            ->method('attachFile')
-            ->with('/path/to/file');
-
-        $this->mockNamedFinder(
-            '//field',
-            array($node),
-            array('field', 'some field')
-        );
-
-        $this->document->attachFileToField('some field', '/path/to/file');
-        $this->setExpectedException('Behat\Mink\Exception\ElementNotFoundException');
-        $this->document->attachFileToField('some field', '/path/to/file');
-    }
-
-    public function testGetContent()
-    {
-        $expects = 'page content';
-        $this->driver
-            ->expects($this->once())
-            ->method('getContent')
-            ->will($this->returnValue($expects));
-
-        $this->assertEquals($expects, $this->document->getContent());
-    }
-
-    public function testGetText()
-    {
-        $expects = 'val1';
-        $this->driver
-            ->expects($this->once())
-            ->method('getText')
-            ->with('//html')
-            ->will($this->returnValue($expects));
-
-        $this->assertEquals($expects, $this->document->getText());
-    }
-
-    public function testGetHtml()
-    {
-        $expects = 'val1';
-        $this->driver
-            ->expects($this->once())
-            ->method('getHtml')
-            ->with('//html')
-            ->will($this->returnValue($expects));
-
-        $this->assertEquals($expects, $this->document->getHtml());
-    }
-
-    public function testGetOuterHtml()
-    {
-        $expects = 'val1';
-        $this->driver
-            ->expects($this->once())
-            ->method('getOuterHtml')
-            ->with('//html')
-            ->will($this->returnValue($expects));
-
-        $this->assertEquals($expects, $this->document->getOuterHtml());
-    }
-}
diff --git a/vendor/behat/mink/tests/Element/ElementTest.php b/vendor/behat/mink/tests/Element/ElementTest.php
deleted file mode 100644
index 650284c..0000000
--- a/vendor/behat/mink/tests/Element/ElementTest.php
+++ /dev/null
@@ -1,71 +0,0 @@
-<?php
-
-namespace Behat\Mink\Tests\Element;
-
-use Behat\Mink\Driver\DriverInterface;
-use Behat\Mink\Session;
-use Behat\Mink\Selector\SelectorsHandler;
-
-abstract class ElementTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * Session.
-     *
-     * @var Session
-     */
-    protected $session;
-
-    /**
-     * @var DriverInterface|\PHPUnit_Framework_MockObject_MockObject
-     */
-    protected $driver;
-
-    /**
-     * Selectors.
-     *
-     * @var SelectorsHandler|\PHPUnit_Framework_MockObject_MockObject
-     */
-    protected $selectors;
-
-    protected function setUp()
-    {
-        $this->driver = $this->getMockBuilder('Behat\Mink\Driver\DriverInterface')->getMock();
-        $this->driver
-            ->expects($this->once())
-            ->method('setSession');
-
-        $this->selectors = $this->getMockBuilder('Behat\Mink\Selector\SelectorsHandler')->getMock();
-        $this->session = new Session($this->driver, $this->selectors);
-    }
-
-    protected function mockNamedFinder($xpath, array $results, $locator, $times = 2)
-    {
-        if (!is_array($results[0])) {
-            $results = array($results, array());
-        }
-
-        // In case of empty results, a second call will be done using the partial selector
-        $processedResults = array();
-        foreach ($results as $result) {
-            $processedResults[] = $result;
-            if (empty($result)) {
-                $processedResults[] = $result;
-                ++$times;
-            }
-        }
-
-        $returnValue = call_user_func_array(array($this, 'onConsecutiveCalls'), $processedResults);
-
-        $this->driver
-            ->expects($this->exactly($times))
-            ->method('find')
-            ->with('//html'.$xpath)
-            ->will($returnValue);
-
-        $this->selectors
-            ->expects($this->exactly($times))
-            ->method('selectorToXpath')
-            ->with($this->logicalOr('named_exact', 'named_partial'), $locator)
-            ->will($this->returnValue($xpath));
-    }
-}
diff --git a/vendor/behat/mink/tests/Element/NodeElementTest.php b/vendor/behat/mink/tests/Element/NodeElementTest.php
deleted file mode 100644
index f769ddd..0000000
--- a/vendor/behat/mink/tests/Element/NodeElementTest.php
+++ /dev/null
@@ -1,598 +0,0 @@
-<?php
-
-namespace Behat\Mink\Tests\Element;
-
-use Behat\Mink\Element\NodeElement;
-
-class NodeElementTest extends ElementTest
-{
-    public function testGetXpath()
-    {
-        $node = new NodeElement('some custom xpath', $this->session);
-
-        $this->assertEquals('some custom xpath', $node->getXpath());
-        $this->assertNotEquals('not some custom xpath', $node->getXpath());
-    }
-
-    public function testGetText()
-    {
-        $expected = 'val1';
-        $node = new NodeElement('text_tag', $this->session);
-
-        $this->driver
-            ->expects($this->once())
-            ->method('getText')
-            ->with('text_tag')
-            ->will($this->returnValue($expected));
-
-        $this->assertEquals($expected, $node->getText());
-    }
-
-    public function testGetOuterHtml()
-    {
-        $expected = 'val1';
-        $node = new NodeElement('text_tag', $this->session);
-
-        $this->driver
-            ->expects($this->once())
-            ->method('getOuterHtml')
-            ->with('text_tag')
-            ->will($this->returnValue($expected));
-
-        $this->assertEquals($expected, $node->getOuterHtml());
-    }
-
-    public function testElementIsValid()
-    {
-        $elementXpath = 'some xpath';
-        $node = new NodeElement($elementXpath, $this->session);
-
-        $this->driver
-            ->expects($this->once())
-            ->method('find')
-            ->with($elementXpath)
-            ->will($this->returnValue(array($elementXpath)));
-
-        $this->assertTrue($node->isValid());
-    }
-
-    public function testElementIsNotValid()
-    {
-        $node = new NodeElement('some xpath', $this->session);
-
-        $this->driver
-            ->expects($this->exactly(2))
-            ->method('find')
-            ->with('some xpath')
-            ->will($this->onConsecutiveCalls(array(), array('xpath1', 'xpath2')));
-
-        $this->assertFalse($node->isValid(), 'no elements found is invalid element');
-        $this->assertFalse($node->isValid(), 'more then 1 element found is invalid element');
-    }
-
-    public function testWaitForSuccess()
-    {
-        $callCounter = 0;
-        $node = new NodeElement('some xpath', $this->session);
-
-        $result = $node->waitFor(5, function ($givenNode) use (&$callCounter) {
-            ++$callCounter;
-
-            if (1 === $callCounter) {
-                return null;
-            } elseif (2 === $callCounter) {
-                return false;
-            } elseif (3 === $callCounter) {
-                return array();
-            }
-
-            return $givenNode;
-        });
-
-        $this->assertEquals(4, $callCounter, '->waitFor() tries to locate element several times before failing');
-        $this->assertSame($node, $result, '->waitFor() returns node found in callback');
-    }
-
-    /**
-     * @medium
-     */
-    public function testWaitForTimeout()
-    {
-        $node = new NodeElement('some xpath', $this->session);
-
-        $expectedTimeout = 2;
-        $startTime = microtime(true);
-        $result = $node->waitFor($expectedTimeout, function () {
-            return null;
-        });
-        $endTime = microtime(true);
-
-        $this->assertNull($result, '->waitFor() returns whatever callback gives');
-        $this->assertEquals($expectedTimeout, round($endTime - $startTime));
-    }
-
-    /**
-     * @expectedException \InvalidArgumentException
-     */
-    public function testWaitForFailure()
-    {
-        $node = new NodeElement('some xpath', $this->session);
-        $node->waitFor(5, 'not a callable');
-    }
-
-    public function testHasAttribute()
-    {
-        $node = new NodeElement('input_tag', $this->session);
-
-        $this->driver
-            ->expects($this->exactly(2))
-            ->method('getAttribute')
-            ->with('input_tag', 'href')
-            ->will($this->onConsecutiveCalls(null, 'http://...'));
-
-        $this->assertFalse($node->hasAttribute('href'));
-        $this->assertTrue($node->hasAttribute('href'));
-    }
-
-    public function testGetAttribute()
-    {
-        $expected = 'http://...';
-        $node = new NodeElement('input_tag', $this->session);
-
-        $this->driver
-            ->expects($this->once())
-            ->method('getAttribute')
-            ->with('input_tag', 'href')
-            ->will($this->returnValue($expected));
-
-        $this->assertEquals($expected, $node->getAttribute('href'));
-    }
-
-    public function testHasClass()
-    {
-        $node = new NodeElement('input_tag', $this->session);
-
-        $this->driver
-            ->expects($this->exactly(6))
-            ->method('getAttribute')
-            ->with('input_tag', 'class')
-            ->will($this->returnValue('
-            class1  class2
-            '));
-
-        $this->assertTrue($node->hasClass('class1'), 'The "class1" was found');
-        $this->assertTrue($node->hasClass('class2'), 'The "class2" was found');
-        $this->assertFalse($node->hasClass('class3'), 'The "class3" was not found');
-    }
-
-    public function testHasClassWithoutArgument()
-    {
-        $node = new NodeElement('input_tag', $this->session);
-
-        $this->driver
-            ->expects($this->once())
-            ->method('getAttribute')
-            ->with('input_tag', 'class')
-            ->will($this->returnValue(null));
-
-        $this->assertFalse($node->hasClass('class3'));
-    }
-
-    public function testGetValue()
-    {
-        $expected = 'val1';
-        $node = new NodeElement('input_tag', $this->session);
-
-        $this->driver
-            ->expects($this->once())
-            ->method('getValue')
-            ->with('input_tag')
-            ->will($this->returnValue($expected));
-
-        $this->assertEquals($expected, $node->getValue());
-    }
-
-    public function testSetValue()
-    {
-        $expected = 'new_val';
-        $node = new NodeElement('input_tag', $this->session);
-
-        $this->driver
-            ->expects($this->once())
-            ->method('setValue')
-            ->with('input_tag', $expected);
-
-        $node->setValue($expected);
-    }
-
-    public function testClick()
-    {
-        $node = new NodeElement('link_or_button', $this->session);
-
-        $this->driver
-            ->expects($this->once())
-            ->method('click')
-            ->with('link_or_button');
-
-        $node->click();
-    }
-
-    public function testPress()
-    {
-        $node = new NodeElement('link_or_button', $this->session);
-
-        $this->driver
-            ->expects($this->once())
-            ->method('click')
-            ->with('link_or_button');
-
-        $node->press();
-    }
-
-    public function testRightClick()
-    {
-        $node = new NodeElement('elem', $this->session);
-
-        $this->driver
-            ->expects($this->once())
-            ->method('rightClick')
-            ->with('elem');
-
-        $node->rightClick();
-    }
-
-    public function testDoubleClick()
-    {
-        $node = new NodeElement('elem', $this->session);
-
-        $this->driver
-            ->expects($this->once())
-            ->method('doubleClick')
-            ->with('elem');
-
-        $node->doubleClick();
-    }
-
-    public function testCheck()
-    {
-        $node = new NodeElement('checkbox_or_radio', $this->session);
-
-        $this->driver
-            ->expects($this->once())
-            ->method('check')
-            ->with('checkbox_or_radio');
-
-        $node->check();
-    }
-
-    public function testUncheck()
-    {
-        $node = new NodeElement('checkbox_or_radio', $this->session);
-
-        $this->driver
-            ->expects($this->once())
-            ->method('uncheck')
-            ->with('checkbox_or_radio');
-
-        $node->uncheck();
-    }
-
-    public function testSelectOption()
-    {
-        $node = new NodeElement('select', $this->session);
-        $option = $this->getMockBuilder('Behat\Mink\Element\NodeElement')
-            ->disableOriginalConstructor()
-            ->getMock();
-        $option
-            ->expects($this->once())
-            ->method('getValue')
-            ->will($this->returnValue('item1'));
-
-        $this->driver
-            ->expects($this->once())
-            ->method('getTagName')
-            ->with('select')
-            ->will($this->returnValue('select'));
-
-        $this->driver
-            ->expects($this->once())
-            ->method('find')
-            ->with('select/option')
-            ->will($this->returnValue(array($option)));
-
-        $this->selectors
-            ->expects($this->once())
-            ->method('selectorToXpath')
-            ->with('named_exact', array('option', 'item1'))
-            ->will($this->returnValue('option'));
-
-        $this->driver
-            ->expects($this->once())
-            ->method('selectOption')
-            ->with('select', 'item1', false);
-
-        $node->selectOption('item1');
-    }
-
-    /**
-     * @expectedException \Behat\Mink\Exception\ElementNotFoundException
-     */
-    public function testSelectOptionNotFound()
-    {
-        $node = new NodeElement('select', $this->session);
-
-        $this->driver
-            ->expects($this->once())
-            ->method('getTagName')
-            ->with('select')
-            ->will($this->returnValue('select'));
-
-        $this->driver
-            ->expects($this->exactly(2))
-            ->method('find')
-            ->with('select/option')
-            ->will($this->returnValue(array()));
-
-        $this->selectors
-            ->expects($this->exactly(2))
-            ->method('selectorToXpath')
-            ->with($this->logicalOr('named_exact', 'named_partial'), array('option', 'item1'))
-            ->will($this->returnValue('option'));
-
-        $node->selectOption('item1');
-    }
-
-    public function testSelectOptionOtherTag()
-    {
-        $node = new NodeElement('div', $this->session);
-
-        $this->driver
-            ->expects($this->once())
-            ->method('getTagName')
-            ->with('div')
-            ->will($this->returnValue('div'));
-
-        $this->driver
-            ->expects($this->once())
-            ->method('selectOption')
-            ->with('div', 'item1', false);
-
-        $node->selectOption('item1');
-    }
-
-    public function testGetTagName()
-    {
-        $node = new NodeElement('html//h3', $this->session);
-
-        $this->driver
-            ->expects($this->once())
-            ->method('getTagName')
-            ->with('html//h3')
-            ->will($this->returnValue('h3'));
-
-        $this->assertEquals('h3', $node->getTagName());
-    }
-
-    public function testGetParent()
-    {
-        $node = new NodeElement('elem', $this->session);
-        $parent = $this->getMockBuilder('Behat\Mink\Element\NodeElement')
-            ->disableOriginalConstructor()
-            ->getMock();
-
-        $this->driver
-            ->expects($this->once())
-            ->method('find')
-            ->with('elem/..')
-            ->will($this->returnValue(array($parent)));
-
-        $this->selectors
-            ->expects($this->once())
-            ->method('selectorToXpath')
-            ->with('xpath', '..')
-            ->will($this->returnValue('..'));
-
-        $this->assertSame($parent, $node->getParent());
-    }
-
-    public function testAttachFile()
-    {
-        $node = new NodeElement('elem', $this->session);
-
-        $this->driver
-            ->expects($this->once())
-            ->method('attachFile')
-            ->with('elem', 'path');
-
-        $node->attachFile('path');
-    }
-
-    public function testIsVisible()
-    {
-        $node = new NodeElement('some_xpath', $this->session);
-
-        $this->driver
-            ->expects($this->exactly(2))
-            ->method('isVisible')
-            ->with('some_xpath')
-            ->will($this->onConsecutiveCalls(true, false));
-
-        $this->assertTrue($node->isVisible());
-        $this->assertFalse($node->isVisible());
-    }
-
-    public function testIsChecked()
-    {
-        $node = new NodeElement('some_xpath', $this->session);
-
-        $this->driver
-            ->expects($this->exactly(2))
-            ->method('isChecked')
-            ->with('some_xpath')
-            ->will($this->onConsecutiveCalls(true, false));
-
-        $this->assertTrue($node->isChecked());
-        $this->assertFalse($node->isChecked());
-    }
-
-    public function testIsSelected()
-    {
-        $node = new NodeElement('some_xpath', $this->session);
-
-        $this->driver
-            ->expects($this->exactly(2))
-            ->method('isSelected')
-            ->with('some_xpath')
-            ->will($this->onConsecutiveCalls(true, false));
-
-        $this->assertTrue($node->isSelected());
-        $this->assertFalse($node->isSelected());
-    }
-
-    public function testFocus()
-    {
-        $node = new NodeElement('some-element', $this->session);
-
-        $this->driver
-            ->expects($this->once())
-            ->method('focus')
-            ->with('some-element');
-
-        $node->focus();
-    }
-
-    public function testBlur()
-    {
-        $node = new NodeElement('some-element', $this->session);
-
-        $this->driver
-            ->expects($this->once())
-            ->method('blur')
-            ->with('some-element');
-
-        $node->blur();
-    }
-
-    public function testMouseOver()
-    {
-        $node = new NodeElement('some-element', $this->session);
-
-        $this->driver
-            ->expects($this->once())
-            ->method('mouseOver')
-            ->with('some-element');
-
-        $node->mouseOver();
-    }
-
-    public function testDragTo()
-    {
-        $node = new NodeElement('some_tag1', $this->session);
-
-        $target = $this->getMock('Behat\Mink\Element\ElementInterface');
-        $target->expects($this->any())
-            ->method('getXPath')
-            ->will($this->returnValue('some_tag2'));
-
-        $this->driver
-            ->expects($this->once())
-            ->method('dragTo')
-            ->with('some_tag1', 'some_tag2');
-
-        $node->dragTo($target);
-    }
-
-    public function testKeyPress()
-    {
-        $node = new NodeElement('elem', $this->session);
-
-        $this->driver
-            ->expects($this->once())
-            ->method('keyPress')
-            ->with('elem', 'key');
-
-        $node->keyPress('key');
-    }
-
-    public function testKeyDown()
-    {
-        $node = new NodeElement('elem', $this->session);
-
-        $this->driver
-            ->expects($this->once())
-            ->method('keyDown')
-            ->with('elem', 'key');
-
-        $node->keyDown('key');
-    }
-
-    public function testKeyUp()
-    {
-        $node = new NodeElement('elem', $this->session);
-
-        $this->driver
-            ->expects($this->once())
-            ->method('keyUp')
-            ->with('elem', 'key');
-
-        $node->keyUp('key');
-    }
-
-    public function testSubmitForm()
-    {
-        $node = new NodeElement('some_xpath', $this->session);
-
-        $this->driver
-            ->expects($this->once())
-            ->method('submitForm')
-            ->with('some_xpath');
-
-        $node->submit();
-    }
-
-    public function testFindAllUnion()
-    {
-        $node = new NodeElement('some_xpath', $this->session);
-        $xpath = "some_tag1 | some_tag2[@foo =\n 'bar|'']\n | some_tag3[foo | bar]";
-        $expected = "some_xpath/some_tag1 | some_xpath/some_tag2[@foo =\n 'bar|''] | some_xpath/some_tag3[foo | bar]";
-
-        $this->driver
-            ->expects($this->exactly(1))
-            ->method('find')
-            ->will($this->returnValueMap(array(
-                array($expected, array(2, 3, 4)),
-            )));
-
-        $this->selectors
-            ->expects($this->exactly(1))
-            ->method('selectorToXpath')
-            ->will($this->returnValueMap(array(
-                array('xpath', $xpath, $xpath),
-            )));
-
-        $this->assertEquals(3, count($node->findAll('xpath', $xpath)));
-    }
-
-    public function testFindAllParentUnion()
-    {
-        $node = new NodeElement('some_xpath | another_xpath', $this->session);
-        $xpath = 'some_tag1 | some_tag2';
-        $expectedPrefixed = '(some_xpath | another_xpath)/some_tag1 | (some_xpath | another_xpath)/some_tag2';
-
-        $this->driver
-            ->expects($this->exactly(1))
-            ->method('find')
-            ->will($this->returnValueMap(array(
-                array($expectedPrefixed, array(2, 3, 4)),
-            )));
-
-        $this->selectors
-            ->expects($this->exactly(1))
-            ->method('selectorToXpath')
-            ->will($this->returnValueMap(array(
-                array('xpath', $xpath, $xpath),
-            )));
-
-        $this->assertEquals(3, count($node->findAll('xpath', $xpath)));
-    }
-}
diff --git a/vendor/behat/mink/tests/Exception/ElementExceptionTest.php b/vendor/behat/mink/tests/Exception/ElementExceptionTest.php
deleted file mode 100644
index 87bf2ca..0000000
--- a/vendor/behat/mink/tests/Exception/ElementExceptionTest.php
+++ /dev/null
@@ -1,42 +0,0 @@
-<?php
-
-namespace Behat\Mink\Tests\Exception;
-
-use Behat\Mink\Exception\ElementException;
-
-/**
- * @group legacy
- */
-class ElementExceptionTest extends \PHPUnit_Framework_TestCase
-{
-    public function testMessage()
-    {
-        $exception = new ElementException($this->getElementMock(), new \Exception('Something went wrong'));
-
-        $expectedMessage = "Exception thrown by element XPath\nSomething went wrong";
-        $this->assertEquals($expectedMessage, $exception->getMessage());
-        $this->assertEquals($expectedMessage, (string) $exception);
-    }
-
-    public function testElement()
-    {
-        $element = $this->getElementMock();
-
-        $exception = new ElementException($element, new \Exception('Something went wrong'));
-
-        $this->assertSame($element, $exception->getElement());
-    }
-
-    private function getElementMock()
-    {
-        $mock = $this->getMockBuilder('Behat\Mink\Element\Element')
-            ->disableOriginalConstructor()
-            ->getMock();
-
-        $mock->expects($this->any())
-            ->method('getXPath')
-            ->will($this->returnValue('element XPath'));
-
-        return $mock;
-    }
-}
diff --git a/vendor/behat/mink/tests/Exception/ElementHtmlExceptionTest.php b/vendor/behat/mink/tests/Exception/ElementHtmlExceptionTest.php
deleted file mode 100644
index 7d6ea82..0000000
--- a/vendor/behat/mink/tests/Exception/ElementHtmlExceptionTest.php
+++ /dev/null
@@ -1,50 +0,0 @@
-<?php
-
-namespace Behat\Mink\Tests\Exception;
-
-use Behat\Mink\Exception\ElementHtmlException;
-
-class ElementHtmlExceptionTest extends \PHPUnit_Framework_TestCase
-{
-    public function testExceptionToString()
-    {
-        $driver = $this->getMock('Behat\Mink\Driver\DriverInterface');
-        $element = $this->getElementMock();
-
-        $driver->expects($this->any())
-            ->method('getStatusCode')
-            ->will($this->returnValue(200));
-        $driver->expects($this->any())
-            ->method('getCurrentUrl')
-            ->will($this->returnValue('http://localhost/test'));
-
-        $element->expects($this->any())
-            ->method('getOuterHtml')
-            ->will($this->returnValue("<div>\n    <h1>Hello world</h1>\n    <p>Test</p>\n</div>"));
-
-        $expected = <<<'TXT'
-Html error
-
-+--[ HTTP/1.1 200 | http://localhost/test | %s ]
-|
-|  <div>
-|      <h1>Hello world</h1>
-|      <p>Test</p>
-|  </div>
-|
-TXT;
-
-        $expected = sprintf($expected.'  ', get_class($driver));
-
-        $exception = new ElementHtmlException('Html error', $driver, $element);
-
-        $this->assertEquals($expected, $exception->__toString());
-    }
-
-    private function getElementMock()
-    {
-        return $this->getMockBuilder('Behat\Mink\Element\NodeElement')
-            ->disableOriginalConstructor()
-            ->getMock();
-    }
-}
diff --git a/vendor/behat/mink/tests/Exception/ElementNotFoundExceptionTest.php b/vendor/behat/mink/tests/Exception/ElementNotFoundExceptionTest.php
deleted file mode 100644
index 6faa55c..0000000
--- a/vendor/behat/mink/tests/Exception/ElementNotFoundExceptionTest.php
+++ /dev/null
@@ -1,50 +0,0 @@
-<?php
-
-namespace Behat\Mink\Tests\Exception;
-
-use Behat\Mink\Exception\ElementNotFoundException;
-
-class ElementNotFoundExceptionTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @dataProvider provideExceptionMessage
-     */
-    public function testBuildMessage($message, $type, $selector = null, $locator = null)
-    {
-        $driver = $this->getMock('Behat\Mink\Driver\DriverInterface');
-
-        $exception = new ElementNotFoundException($driver, $type, $selector, $locator);
-
-        $this->assertEquals($message, $exception->getMessage());
-    }
-
-    public function provideExceptionMessage()
-    {
-        return array(
-            array('Tag not found.', null),
-            array('Field not found.', 'field'),
-            array('Tag matching locator "foobar" not found.', null, null, 'foobar'),
-            array('Tag matching css "foobar" not found.', null, 'css', 'foobar'),
-            array('Field matching xpath "foobar" not found.', 'Field', 'xpath', 'foobar'),
-            array('Tag with name "foobar" not found.', null, 'name', 'foobar'),
-        );
-    }
-
-    /**
-     * @group legacy
-     */
-    public function testConstructWithSession()
-    {
-        $driver = $this->getMock('Behat\Mink\Driver\DriverInterface');
-        $session = $this->getMockBuilder('Behat\Mink\Session')
-            ->disableOriginalConstructor()
-            ->getMock();
-        $session->expects($this->any())
-            ->method('getDriver')
-            ->will($this->returnValue($driver));
-
-        $exception = new ElementNotFoundException($session);
-
-        $this->assertEquals('Tag not found.', $exception->getMessage());
-    }
-}
diff --git a/vendor/behat/mink/tests/Exception/ElementTextExceptionTest.php b/vendor/behat/mink/tests/Exception/ElementTextExceptionTest.php
deleted file mode 100644
index f8d5e4c..0000000
--- a/vendor/behat/mink/tests/Exception/ElementTextExceptionTest.php
+++ /dev/null
@@ -1,48 +0,0 @@
-<?php
-
-namespace Behat\Mink\Tests\Exception;
-
-use Behat\Mink\Exception\ElementTextException;
-
-class ElementTextExceptionTest extends \PHPUnit_Framework_TestCase
-{
-    public function testExceptionToString()
-    {
-        $driver = $this->getMock('Behat\Mink\Driver\DriverInterface');
-        $element = $this->getElementMock();
-
-        $driver->expects($this->any())
-            ->method('getStatusCode')
-            ->will($this->returnValue(200));
-        $driver->expects($this->any())
-            ->method('getCurrentUrl')
-            ->will($this->returnValue('http://localhost/test'));
-
-        $element->expects($this->any())
-            ->method('getText')
-            ->will($this->returnValue("Hello world\nTest\n"));
-
-        $expected = <<<'TXT'
-Text error
-
-+--[ HTTP/1.1 200 | http://localhost/test | %s ]
-|
-|  Hello world
-|  Test
-|
-TXT;
-
-        $expected = sprintf($expected.'  ', get_class($driver));
-
-        $exception = new ElementTextException('Text error', $driver, $element);
-
-        $this->assertEquals($expected, $exception->__toString());
-    }
-
-    private function getElementMock()
-    {
-        return $this->getMockBuilder('Behat\Mink\Element\NodeElement')
-            ->disableOriginalConstructor()
-            ->getMock();
-    }
-}
diff --git a/vendor/behat/mink/tests/Exception/ExpectationExceptionTest.php b/vendor/behat/mink/tests/Exception/ExpectationExceptionTest.php
deleted file mode 100644
index a327fcb..0000000
--- a/vendor/behat/mink/tests/Exception/ExpectationExceptionTest.php
+++ /dev/null
@@ -1,114 +0,0 @@
-<?php
-
-namespace Behat\Mink\Tests\Exception;
-
-use Behat\Mink\Exception\ExpectationException;
-
-class ExpectationExceptionTest extends \PHPUnit_Framework_TestCase
-{
-    public function testEmptyMessageAndPreviousException()
-    {
-        $exception = new ExpectationException('', $this->getMock('Behat\Mink\Driver\DriverInterface'), new \Exception('Something failed'));
-
-        $this->assertEquals('Something failed', $exception->getMessage());
-    }
-
-    public function testExceptionToString()
-    {
-        $driver = $this->getMock('Behat\Mink\Driver\DriverInterface');
-
-        $driver->expects($this->any())
-            ->method('getStatusCode')
-            ->will($this->returnValue(200));
-        $driver->expects($this->any())
-            ->method('getCurrentUrl')
-            ->will($this->returnValue('http://localhost/test'));
-
-        $html = "<html><head><title>Hello</title></head>\n<body>\n<h1>Hello world</h1>\n<p>Test</p>\n</body></html>";
-        $driver->expects($this->any())
-            ->method('getContent')
-            ->will($this->returnValue($html));
-
-        $expected = <<<'TXT'
-Expectation failure
-
-+--[ HTTP/1.1 200 | http://localhost/test | %s ]
-|
-|  <body>
-|  <h1>Hello world</h1>
-|  <p>Test</p>
-|  </body>
-|
-TXT;
-
-        $expected = sprintf($expected.'  ', get_class($driver));
-
-        $exception = new ExpectationException('Expectation failure', $driver);
-
-        $this->assertEquals($expected, $exception->__toString());
-    }
-
-    public function testBigContent()
-    {
-        $driver = $this->getMock('Behat\Mink\Driver\DriverInterface');
-
-        $driver->expects($this->any())
-            ->method('getStatusCode')
-            ->will($this->returnValue(200));
-        $driver->expects($this->any())
-            ->method('getCurrentUrl')
-            ->will($this->returnValue('http://localhost/test'));
-
-        $body = str_repeat('a', 1001 - strlen('<body></body>'));
-
-        $html = sprintf("<html><head><title>Hello</title></head>\n<body>%s</body></html>", $body);
-        $driver->expects($this->any())
-            ->method('getContent')
-            ->will($this->returnValue($html));
-
-        $expected = <<<'TXT'
-Expectation failure
-
-+--[ HTTP/1.1 200 | http://localhost/test | %s ]
-|
-|  <body>%s</b...
-|
-TXT;
-
-        $expected = sprintf($expected.'  ', get_class($driver), $body);
-
-        $exception = new ExpectationException('Expectation failure', $driver);
-
-        $this->assertEquals($expected, $exception->__toString());
-    }
-
-    public function testExceptionWhileRenderingString()
-    {
-        $driver = $this->getMock('Behat\Mink\Driver\DriverInterface');
-        $driver->expects($this->any())
-            ->method('getContent')
-            ->will($this->throwException(new \Exception('Broken page')));
-
-        $exception = new ExpectationException('Expectation failure', $driver);
-
-        $this->assertEquals('Expectation failure', $exception->__toString());
-    }
-
-    /**
-     * @group legacy
-     */
-    public function testConstructWithSession()
-    {
-        $driver = $this->getMock('Behat\Mink\Driver\DriverInterface');
-        $session = $this->getMockBuilder('Behat\Mink\Session')
-            ->disableOriginalConstructor()
-            ->getMock();
-        $session->expects($this->any())
-            ->method('getDriver')
-            ->will($this->returnValue($driver));
-
-        $exception = new ExpectationException('', $session, new \Exception('Something failed'));
-
-        $this->assertEquals('Something failed', $exception->getMessage());
-    }
-}
diff --git a/vendor/behat/mink/tests/Exception/ResponseTextExceptionTest.php b/vendor/behat/mink/tests/Exception/ResponseTextExceptionTest.php
deleted file mode 100644
index 429721d..0000000
--- a/vendor/behat/mink/tests/Exception/ResponseTextExceptionTest.php
+++ /dev/null
@@ -1,40 +0,0 @@
-<?php
-
-namespace Behat\Mink\Tests\Exception;
-
-use Behat\Mink\Exception\ResponseTextException;
-
-class ResponseTextExceptionTest extends \PHPUnit_Framework_TestCase
-{
-    public function testExceptionToString()
-    {
-        $driver = $this->getMock('Behat\Mink\Driver\DriverInterface');
-
-        $driver->expects($this->any())
-            ->method('getStatusCode')
-            ->will($this->returnValue(200));
-        $driver->expects($this->any())
-            ->method('getCurrentUrl')
-            ->will($this->returnValue('http://localhost/test'));
-        $driver->expects($this->any())
-            ->method('getText')
-            ->with('//html')
-            ->will($this->returnValue("Hello world\nTest\n"));
-
-        $expected = <<<'TXT'
-Text error
-
-+--[ HTTP/1.1 200 | http://localhost/test | %s ]
-|
-|  Hello world
-|  Test
-|
-TXT;
-
-        $expected = sprintf($expected.'  ', get_class($driver));
-
-        $exception = new ResponseTextException('Text error', $driver);
-
-        $this->assertEquals($expected, $exception->__toString());
-    }
-}
diff --git a/vendor/behat/mink/tests/MinkTest.php b/vendor/behat/mink/tests/MinkTest.php
deleted file mode 100644
index 11d6466..0000000
--- a/vendor/behat/mink/tests/MinkTest.php
+++ /dev/null
@@ -1,246 +0,0 @@
-<?php
-
-namespace Behat\Mink\Tests;
-
-use Behat\Mink\Mink;
-
-class MinkTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @var Mink
-     */
-    private $mink;
-
-    protected function setUp()
-    {
-        $this->mink = new Mink();
-    }
-
-    public function testRegisterSession()
-    {
-        $session = $this->getSessionMock();
-
-        $this->assertFalse($this->mink->hasSession('not_registered'));
-        $this->assertFalse($this->mink->hasSession('js'));
-        $this->assertFalse($this->mink->hasSession('my'));
-
-        $this->mink->registerSession('my', $session);
-
-        $this->assertTrue($this->mink->hasSession('my'));
-        $this->assertFalse($this->mink->hasSession('not_registered'));
-        $this->assertFalse($this->mink->hasSession('js'));
-    }
-
-    public function testRegisterSessionThroughConstructor()
-    {
-        $mink = new Mink(array('my' => $this->getSessionMock()));
-
-        $this->assertTrue($mink->hasSession('my'));
-    }
-
-    public function testSessionAutostop()
-    {
-        $session1 = $this->getSessionMock();
-        $session2 = $this->getSessionMock();
-        $this->mink->registerSession('my1', $session1);
-        $this->mink->registerSession('my2', $session2);
-
-        $session1
-            ->expects($this->once())
-            ->method('isStarted')
-            ->will($this->returnValue(true));
-        $session1
-            ->expects($this->once())
-            ->method('stop');
-        $session2
-            ->expects($this->once())
-            ->method('isStarted')
-            ->will($this->returnValue(false));
-        $session2
-            ->expects($this->never())
-            ->method('stop');
-
-        unset($this->mink);
-    }
-
-    public function testNotStartedSession()
-    {
-        $session = $this->getSessionMock();
-
-        $session
-            ->expects($this->once())
-            ->method('isStarted')
-            ->will($this->returnValue(false));
-        $session
-            ->expects($this->once())
-            ->method('start');
-
-        $this->mink->registerSession('mock_session', $session);
-        $this->assertSame($session, $this->mink->getSession('mock_session'));
-
-        $this->setExpectedException('InvalidArgumentException');
-
-        $this->mink->getSession('not_registered');
-    }
-
-    public function testGetAlreadyStartedSession()
-    {
-        $session = $this->getSessionMock();
-
-        $session
-            ->expects($this->once())
-            ->method('isStarted')
-            ->will($this->returnValue(true));
-        $session
-            ->expects($this->never())
-            ->method('start');
-
-        $this->mink->registerSession('mock_session', $session);
-        $this->assertSame($session, $this->mink->getSession('mock_session'));
-    }
-
-    public function testSetDefaultSessionName()
-    {
-        $this->assertNull($this->mink->getDefaultSessionName());
-
-        $session = $this->getSessionMock();
-        $this->mink->registerSession('session_name', $session);
-        $this->mink->setDefaultSessionName('session_name');
-
-        $this->assertEquals('session_name', $this->mink->getDefaultSessionName());
-
-        $this->setExpectedException('InvalidArgumentException');
-
-        $this->mink->setDefaultSessionName('not_registered');
-    }
-
-    public function testGetDefaultSession()
-    {
-        $session1 = $this->getSessionMock();
-        $session2 = $this->getSessionMock();
-
-        $this->assertNotSame($session1, $session2);
-
-        $this->mink->registerSession('session_1', $session1);
-        $this->mink->registerSession('session_2', $session2);
-        $this->mink->setDefaultSessionName('session_2');
-
-        $this->assertSame($session1, $this->mink->getSession('session_1'));
-        $this->assertSame($session2, $this->mink->getSession('session_2'));
-        $this->assertSame($session2, $this->mink->getSession());
-
-        $this->mink->setDefaultSessionName('session_1');
-
-        $this->assertSame($session1, $this->mink->getSession());
-    }
-
-    public function testGetNoDefaultSession()
-    {
-        $session1 = $this->getSessionMock();
-
-        $this->mink->registerSession('session_1', $session1);
-
-        $this->setExpectedException('InvalidArgumentException');
-
-        $this->mink->getSession();
-    }
-
-    public function testIsSessionStarted()
-    {
-        $session_1 = $this->getSessionMock();
-        $session_2 = $this->getSessionMock();
-
-        $session_1
-            ->expects($this->any())
-            ->method('isStarted')
-            ->will($this->returnValue(false));
-        $session_1
-            ->expects($this->never())
-            ->method('start');
-
-        $session_2
-            ->expects($this->any())
-            ->method('isStarted')
-            ->will($this->returnValue(true));
-        $session_2
-            ->expects($this->never())
-            ->method('start');
-
-        $this->mink->registerSession('not_started', $session_1);
-        $this->assertFalse($this->mink->isSessionStarted('not_started'));
-
-        $this->mink->registerSession('started', $session_2);
-        $this->assertTrue($this->mink->isSessionStarted('started'));
-
-        $this->setExpectedException('InvalidArgumentException');
-
-        $this->mink->getSession('not_registered');
-    }
-
-    public function testAssertSession()
-    {
-        $session = $this->getSessionMock();
-
-        $this->mink->registerSession('my', $session);
-
-        $this->assertInstanceOf('Behat\Mink\WebAssert', $this->mink->assertSession('my'));
-    }
-
-    public function testAssertSessionNotRegistered()
-    {
-        $session = $this->getSessionMock();
-
-        $this->assertInstanceOf('Behat\Mink\WebAssert', $this->mink->assertSession($session));
-    }
-
-    public function testResetSessions()
-    {
-        $session1 = $this->getSessionMock();
-        $session1->expects($this->once())
-            ->method('isStarted')
-            ->will($this->returnValue(false));
-        $session1->expects($this->never())
-            ->method('reset');
-
-        $session2 = $this->getSessionMock();
-        $session2->expects($this->once())
-            ->method('isStarted')
-            ->will($this->returnValue(true));
-        $session2->expects($this->once())
-            ->method('reset');
-
-        $this->mink->registerSession('not started', $session1);
-        $this->mink->registerSession('started', $session2);
-
-        $this->mink->resetSessions();
-    }
-
-    public function testRestartSessions()
-    {
-        $session1 = $this->getSessionMock();
-        $session1->expects($this->once())
-            ->method('isStarted')
-            ->will($this->returnValue(false));
-        $session1->expects($this->never())
-            ->method('restart');
-
-        $session2 = $this->getSessionMock();
-        $session2->expects($this->once())
-            ->method('isStarted')
-            ->will($this->returnValue(true));
-        $session2->expects($this->once())
-            ->method('restart');
-
-        $this->mink->registerSession('not started', $session1);
-        $this->mink->registerSession('started', $session2);
-
-        $this->mink->restartSessions();
-    }
-
-    private function getSessionMock()
-    {
-        return $this->getMockBuilder('Behat\Mink\Session')
-            ->disableOriginalConstructor()
-            ->getMock();
-    }
-}
diff --git a/vendor/behat/mink/tests/Selector/CssSelectorTest.php b/vendor/behat/mink/tests/Selector/CssSelectorTest.php
deleted file mode 100644
index ea80d93..0000000
--- a/vendor/behat/mink/tests/Selector/CssSelectorTest.php
+++ /dev/null
@@ -1,41 +0,0 @@
-<?php
-
-namespace Behat\Mink\Tests\Selector;
-
-use Behat\Mink\Selector\CssSelector;
-
-class CssSelectorTest extends \PHPUnit_Framework_TestCase
-{
-    protected function setUp()
-    {
-        if (!class_exists('Symfony\Component\CssSelector\CssSelector')) {
-            $this->markTestSkipped('Symfony2 CssSelector component not installed');
-        }
-    }
-
-    public function testSelector()
-    {
-        $selector = new CssSelector();
-
-        $this->assertEquals('descendant-or-self::h3', $selector->translateToXPath('h3'));
-        $this->assertEquals('descendant-or-self::h3/span', $selector->translateToXPath('h3 > span'));
-
-        if (interface_exists('Symfony\Component\CssSelector\XPath\TranslatorInterface')) {
-            // The rewritten component of Symfony 2.3 checks for attribute existence first for the class.
-            $expectation = "descendant-or-self::h3/*[@class and contains(concat(' ', normalize-space(@class), ' '), ' my_div ')]";
-        } else {
-            $expectation = "descendant-or-self::h3/*[contains(concat(' ', normalize-space(@class), ' '), ' my_div ')]";
-        }
-        $this->assertEquals($expectation, $selector->translateToXPath('h3 > .my_div'));
-    }
-
-    /**
-     * @expectedException \InvalidArgumentException
-     */
-    public function testThrowsForArrayLocator()
-    {
-        $selector = new CssSelector();
-
-        $selector->translateToXPath(array('h3'));
-    }
-}
diff --git a/vendor/behat/mink/tests/Selector/ExactNamedSelectorTest.php b/vendor/behat/mink/tests/Selector/ExactNamedSelectorTest.php
deleted file mode 100644
index df51f0f..0000000
--- a/vendor/behat/mink/tests/Selector/ExactNamedSelectorTest.php
+++ /dev/null
@@ -1,18 +0,0 @@
-<?php
-
-namespace Behat\Mink\Tests\Selector;
-
-use Behat\Mink\Selector\ExactNamedSelector;
-
-class ExactNamedSelectorTest extends NamedSelectorTest
-{
-    protected function getSelector()
-    {
-        return new ExactNamedSelector();
-    }
-
-    protected function allowPartialMatch()
-    {
-        return false;
-    }
-}
diff --git a/vendor/behat/mink/tests/Selector/NamedSelectorTest.php b/vendor/behat/mink/tests/Selector/NamedSelectorTest.php
deleted file mode 100644
index 5124a46..0000000
--- a/vendor/behat/mink/tests/Selector/NamedSelectorTest.php
+++ /dev/null
@@ -1,168 +0,0 @@
-<?php
-
-namespace Behat\Mink\Tests\Selector;
-
-use Behat\Mink\Selector\NamedSelector;
-use Behat\Mink\Selector\Xpath\Escaper;
-
-abstract class NamedSelectorTest extends \PHPUnit_Framework_TestCase
-{
-    public function testRegisterXpath()
-    {
-        $selector = $this->getSelector();
-
-        $selector->registerNamedXpath('some', 'my_xpath');
-        $this->assertEquals('my_xpath', $selector->translateToXPath('some'));
-
-        $this->setExpectedException('InvalidArgumentException');
-
-        $selector->translateToXPath('custom');
-    }
-
-    /**
-     * @expectedException \InvalidArgumentException
-     */
-    public function testInvalidLocator()
-    {
-        $namedSelector = $this->getSelector();
-
-        $namedSelector->translateToXPath(array('foo', 'bar', 'baz'));
-    }
-
-    /**
-     * @dataProvider getSelectorTests
-     */
-    public function testSelectors($fixtureFile, $selector, $locator, $expectedExactCount, $expectedPartialCount = null)
-    {
-        $expectedCount = $this->allowPartialMatch() && null !== $expectedPartialCount
-            ? $expectedPartialCount
-            : $expectedExactCount;
-
-        // Don't use "loadHTMLFile" due HHVM 3.3.0 issue.
-        $dom = new \DOMDocument('1.0', 'UTF-8');
-        $dom->loadHTML(file_get_contents(__DIR__.'/fixtures/'.$fixtureFile));
-
-        $namedSelector = $this->getSelector();
-
-        $xpath = $namedSelector->translateToXPath(array($selector, $locator));
-
-        $domXpath = new \DOMXPath($dom);
-        $nodeList = $domXpath->query($xpath);
-
-        $this->assertEquals($expectedCount, $nodeList->length);
-    }
-
-    /**
-     * @dataProvider getSelectorTests
-     * @group legacy
-     */
-    public function testEscapedSelectors($fixtureFile, $selector, $locator, $expectedExactCount, $expectedPartialCount = null)
-    {
-        // Escape the locator as Mink 1.x expects the caller of the NamedSelector to handle it
-        $escaper = new Escaper();
-        $locator = $escaper->escapeLiteral($locator);
-
-        $this->testSelectors($fixtureFile, $selector, $locator, $expectedExactCount, $expectedPartialCount);
-    }
-
-    public function getSelectorTests()
-    {
-        $fieldCount = 8; // fields without `type` attribute
-        $fieldCount += 4; // fields with `type=checkbox` attribute
-        $fieldCount += 4; // fields with `type=radio` attribute
-        $fieldCount += 4; // fields with `type=file` attribute
-
-        // Fixture file,  selector name,  locator,  expected number of exact matched elements, expected number of partial matched elements if different
-        return array(
-            'fieldset' => array('test.html', 'fieldset', 'fieldset-text', 2, 3),
-
-            'field (name/placeholder/label)' => array('test.html', 'field', 'the-field', $fieldCount),
-            'field (input, with-id)' => array('test.html', 'field', 'the-field-input', 1),
-            'field (textarea, with-id)' => array('test.html', 'field', 'the-field-textarea', 1),
-            'field (select, with-id)' => array('test.html', 'field', 'the-field-select', 1),
-            'field (input type=submit, with-id) ignored' => array('test.html', 'field', 'the-field-submit-button', 0),
-            'field (input type=image, with-id) ignored' => array('test.html', 'field', 'the-field-image-button', 0),
-            'field (input type=button, with-id) ignored' => array('test.html', 'field', 'the-field-button-button', 0),
-            'field (input type=reset, with-id) ignored' => array('test.html', 'field', 'the-field-reset-button', 0),
-            'field (input type=hidden, with-id) ignored' => array('test.html', 'field', 'the-field-hidden', 0),
-
-            'link (with-href)' => array('test.html', 'link', 'link-text', 5, 9),
-            'link (without-href) ignored' => array('test.html', 'link', 'bad-link-text', 0),
-            'link* (role=link)' => array('test.html', 'link', 'link-role-text', 4, 7),
-
-            'button (input, name/value/title)' => array('test.html', 'button', 'button-text', 25, 42),
-            'button (type=image, with-alt)' => array('test.html', 'button', 'button-alt-text', 1, 2),
-            'button (input type=submit, with-id)' => array('test.html', 'button', 'input-submit-button', 1),
-            'button (input type=image, with-id)' => array('test.html', 'button', 'input-image-button', 1),
-            'button (input type=button, with-id)' => array('test.html', 'button', 'input-button-button', 1),
-            'button (input type=reset, with-id)' => array('test.html', 'button', 'input-reset-button', 1),
-            'button (button type=submit, with-id)' => array('test.html', 'button', 'button-submit-button', 1),
-            'button (button type=image, with-id)' => array('test.html', 'button', 'button-image-button', 1),
-            'button (button type=button, with-id)' => array('test.html', 'button', 'button-button-button', 1),
-            'button (button type=reset, with-id)' => array('test.html', 'button', 'button-reset-button', 1),
-            'button* (role=button, name/value/title)' => array('test.html', 'button', 'button-role-text', 12, 20),
-            'button* (role=button type=submit, with-id)' => array('test.html', 'button', 'role-button-submit-button', 1),
-            'button* (role=button type=image, with-id)' => array('test.html', 'button', 'role-button-image-button', 1),
-            'button* (role=button type=button, with-id)' => array('test.html', 'button', 'role-button-button-button', 1),
-            'button* (role=button type=reset, with-id)' => array('test.html', 'button', 'role-button-reset-button', 1),
-
-            'link_or_button (with-href)' => array('test.html', 'link_or_button', 'link-text', 5, 9),
-            'link_or_button (without-href) ignored' => array('test.html', 'link_or_button', 'bad-link-text', 0),
-            'link_or_button* (role=link)' => array('test.html', 'link_or_button', 'link-role-text', 4, 7),
-
-            // bug in selector: 17 instead of 25 and 34 instead of 42, because 8 buttons with `name` attribute were not matched
-            'link_or_button (input, name/value/title)' => array('test.html', 'link_or_button', 'button-text', 17, 34),
-            'link_or_button (type=image, with-alt)' => array('test.html', 'link_or_button', 'button-alt-text', 1, 2),
-            'link_or_button (input type=submit, with-id)' => array('test.html', 'link_or_button', 'input-submit-button', 1),
-            'link_or_button (input type=image, with-id)' => array('test.html', 'link_or_button', 'input-image-button', 1),
-            'link_or_button (input type=button, with-id)' => array('test.html', 'link_or_button', 'input-button-button', 1),
-            'link_or_button (input type=reset, with-id)' => array('test.html', 'link_or_button', 'input-reset-button', 1),
-            'link_or_button (button type=submit, with-id)' => array('test.html', 'link_or_button', 'button-submit-button', 1),
-            'link_or_button (button type=image, with-id)' => array('test.html', 'link_or_button', 'button-image-button', 1),
-            'link_or_button (button type=button, with-id)' => array('test.html', 'link_or_button', 'button-button-button', 1),
-            'link_or_button (button type=reset, with-id)' => array('test.html', 'link_or_button', 'button-reset-button', 1),
-
-            // bug in selector: 8 instead of 12 and 16 instead of 20, because 4 buttons with `name` attribute were not matched
-            'link_or_button* (role=button, name/value/title)' => array('test.html', 'link_or_button', 'button-role-text', 8, 16),
-            'link_or_button* (role=button type=submit, with-id)' => array('test.html', 'link_or_button', 'role-button-submit-button', 1),
-            'link_or_button* (role=button type=image, with-id)' => array('test.html', 'link_or_button', 'role-button-image-button', 1),
-            'link_or_button* (role=button type=button, with-id)' => array('test.html', 'link_or_button', 'role-button-button-button', 1),
-            'link_or_button* (role=button type=reset, with-id)' => array('test.html', 'link_or_button', 'role-button-reset-button', 1),
-
-            // 3 matches, because matches every HTML node in path: html > body > div
-            'content' => array('test.html', 'content', 'content-text', 1, 4),
-            'content with quotes' => array('test.html', 'content', 'some "quoted" content', 1, 3),
-
-            'select (name/label)' => array('test.html', 'select', 'the-field', 3),
-            'select (with-id)' => array('test.html', 'select', 'the-field-select', 1),
-
-            'checkbox (name/label)' => array('test.html', 'checkbox', 'the-field', 3),
-            'checkbox (with-id)' => array('test.html', 'checkbox', 'the-field-checkbox', 1),
-
-            'radio (name/label)' => array('test.html', 'radio', 'the-field', 3),
-            'radio (with-id)' => array('test.html', 'radio', 'the-field-radio', 1),
-
-            'file (name/label)' => array('test.html', 'file', 'the-field', 3),
-            'file (with-id)' => array('test.html', 'file', 'the-field-file', 1),
-
-            'optgroup' => array('test.html', 'optgroup', 'group-label', 1, 2),
-
-            'option' => array('test.html', 'option', 'option-value', 2, 3),
-
-            'table' => array('test.html', 'table', 'the-table', 2, 3),
-
-            'id' => array('test.html', 'id', 'bad-link-text', 1),
-            'id or name' => array('test.html', 'id_or_name', 'the-table', 2),
-        );
-    }
-
-    /**
-     * @return NamedSelector
-     */
-    abstract protected function getSelector();
-
-    /**
-     * @return bool
-     */
-    abstract protected function allowPartialMatch();
-}
diff --git a/vendor/behat/mink/tests/Selector/PartialNamedSelectorTest.php b/vendor/behat/mink/tests/Selector/PartialNamedSelectorTest.php
deleted file mode 100644
index c3e631a..0000000
--- a/vendor/behat/mink/tests/Selector/PartialNamedSelectorTest.php
+++ /dev/null
@@ -1,18 +0,0 @@
-<?php
-
-namespace Behat\Mink\Tests\Selector;
-
-use Behat\Mink\Selector\PartialNamedSelector;
-
-class PartialNamedSelectorTest extends NamedSelectorTest
-{
-    protected function getSelector()
-    {
-        return new PartialNamedSelector();
-    }
-
-    protected function allowPartialMatch()
-    {
-        return true;
-    }
-}
diff --git a/vendor/behat/mink/tests/Selector/SelectorsHandlerTest.php b/vendor/behat/mink/tests/Selector/SelectorsHandlerTest.php
deleted file mode 100644
index fb63b32..0000000
--- a/vendor/behat/mink/tests/Selector/SelectorsHandlerTest.php
+++ /dev/null
@@ -1,96 +0,0 @@
-<?php
-
-namespace Behat\Mink\Tests\Selector;
-
-use Behat\Mink\Selector\SelectorsHandler;
-
-class SelectorsHandlerTest extends \PHPUnit_Framework_TestCase
-{
-    public function testRegisterSelector()
-    {
-        $selector = $this->getMockBuilder('Behat\Mink\Selector\SelectorInterface')->getMock();
-        $handler = new SelectorsHandler();
-
-        $this->assertFalse($handler->isSelectorRegistered('custom'));
-
-        $handler->registerSelector('custom', $selector);
-
-        $this->assertTrue($handler->isSelectorRegistered('custom'));
-        $this->assertSame($selector, $handler->getSelector('custom'));
-    }
-
-    public function testRegisterSelectorThroughConstructor()
-    {
-        $selector = $this->getMockBuilder('Behat\Mink\Selector\SelectorInterface')->getMock();
-        $handler = new SelectorsHandler(array('custom' => $selector));
-
-        $this->assertTrue($handler->isSelectorRegistered('custom'));
-        $this->assertSame($selector, $handler->getSelector('custom'));
-    }
-
-    public function testRegisterDefaultSelectors()
-    {
-        $handler = new SelectorsHandler();
-
-        $this->assertTrue($handler->isSelectorRegistered('css'));
-        $this->assertTrue($handler->isSelectorRegistered('named_exact'));
-        $this->assertTrue($handler->isSelectorRegistered('named_partial'));
-    }
-
-    /**
-     * @expectedException \InvalidArgumentException
-     */
-    public function testXpathSelectorThrowsExceptionForArrayLocator()
-    {
-        $handler = new SelectorsHandler();
-        $handler->selectorToXpath('xpath', array('some_xpath'));
-    }
-
-    public function testXpathSelectorIsReturnedAsIs()
-    {
-        $handler = new SelectorsHandler();
-        $this->assertEquals('some_xpath', $handler->selectorToXpath('xpath', 'some_xpath'));
-    }
-
-    public function testSelectorToXpath()
-    {
-        $selector = $this->getMockBuilder('Behat\Mink\Selector\SelectorInterface')->getMock();
-        $handler = new SelectorsHandler();
-
-        $handler->registerSelector('custom_selector', $selector);
-
-        $selector
-            ->expects($this->once())
-            ->method('translateToXPath')
-            ->with($locator = 'some[locator]')
-            ->will($this->returnValue($ret = '[]some[]locator'));
-
-        $this->assertEquals($ret, $handler->selectorToXpath('custom_selector', $locator));
-
-        $this->setExpectedException('InvalidArgumentException');
-        $handler->selectorToXpath('undefined', 'asd');
-    }
-
-    /**
-     * @group legacy
-     */
-    public function testXpathLiteral()
-    {
-        $handler = new SelectorsHandler();
-
-        $this->assertEquals("'some simple string'", $handler->xpathLiteral('some simple string'));
-    }
-
-    /**
-     * @group legacy
-     */
-    public function testBcLayer()
-    {
-        $selector = $this->getMockBuilder('Behat\Mink\Selector\SelectorInterface')->getMock();
-        $handler = new SelectorsHandler();
-
-        $handler->registerSelector('named_partial', $selector);
-
-        $this->assertSame($selector, $handler->getSelector('named'));
-    }
-}
diff --git a/vendor/behat/mink/tests/Selector/Xpath/EscaperTest.php b/vendor/behat/mink/tests/Selector/Xpath/EscaperTest.php
deleted file mode 100644
index 535dac6..0000000
--- a/vendor/behat/mink/tests/Selector/Xpath/EscaperTest.php
+++ /dev/null
@@ -1,31 +0,0 @@
-<?php
-
-namespace Behat\Mink\Tests\Selector\Xpath;
-
-use Behat\Mink\Selector\Xpath\Escaper;
-
-class EscaperTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @dataProvider getXpathLiterals
-     */
-    public function testXpathLiteral($string, $expected)
-    {
-        $escaper = new Escaper();
-
-        $this->assertEquals($expected, $escaper->escapeLiteral($string));
-    }
-
-    public function getXpathLiterals()
-    {
-        return array(
-            array('some simple string', "'some simple string'"),
-            array('some "d-brackets" string', "'some \"d-brackets\" string'"),
-            array('some \'s-brackets\' string', "\"some 's-brackets' string\""),
-            array(
-                'some \'s-brackets\' and "d-brackets" string',
-                'concat(\'some \',"\'",\'s-brackets\',"\'",\' and "d-brackets" string\')',
-            ),
-        );
-    }
-}
diff --git a/vendor/behat/mink/tests/Selector/Xpath/ManipulatorTest.php b/vendor/behat/mink/tests/Selector/Xpath/ManipulatorTest.php
deleted file mode 100644
index 7c20561..0000000
--- a/vendor/behat/mink/tests/Selector/Xpath/ManipulatorTest.php
+++ /dev/null
@@ -1,64 +0,0 @@
-<?php
-
-namespace Behat\Mink\Tests\Selector\Xpath;
-
-use Behat\Mink\Selector\Xpath\Manipulator;
-
-class ManipulatorTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @dataProvider getPrependedXpath
-     */
-    public function testPrepend($prefix, $xpath, $expectedXpath)
-    {
-        $manipulator = new Manipulator();
-
-        $this->assertEquals($expectedXpath, $manipulator->prepend($xpath, $prefix));
-    }
-
-    public function getPrependedXpath()
-    {
-        return array(
-            'simple' => array(
-                'some_xpath',
-                'some_tag1',
-                'some_xpath/some_tag1',
-            ),
-            'with slash' => array(
-                'some_xpath',
-                '/some_tag1',
-                'some_xpath/some_tag1',
-            ),
-            'union' => array(
-                'some_xpath',
-                'some_tag1 | some_tag2',
-                'some_xpath/some_tag1 | some_xpath/some_tag2',
-            ),
-            'wrapped union' => array(
-                'some_xpath',
-                '(some_tag1 | some_tag2)/some_child',
-                '(some_xpath/some_tag1 | some_xpath/some_tag2)/some_child',
-            ),
-            'multiple wrapped union' => array(
-                'some_xpath',
-                '( ( some_tag1 | some_tag2)/some_child | some_tag3)/leaf',
-                '( ( some_xpath/some_tag1 | some_xpath/some_tag2)/some_child | some_xpath/some_tag3)/leaf',
-            ),
-            'parent union' => array(
-                'some_xpath | another_xpath',
-                'some_tag1 | some_tag2',
-                '(some_xpath | another_xpath)/some_tag1 | (some_xpath | another_xpath)/some_tag2',
-            ),
-            'complex condition' => array(
-                'some_xpath',
-                'some_tag1 | some_tag2[@foo = "bar|"] | some_tag3[foo | bar]',
-                'some_xpath/some_tag1 | some_xpath/some_tag2[@foo = "bar|"] | some_xpath/some_tag3[foo | bar]',
-            ),
-            'multiline' => array(
-                'some_xpath',
-                "some_tag1 | some_tag2[@foo =\n 'bar|'']\n | some_tag3[foo | bar]",
-                "some_xpath/some_tag1 | some_xpath/some_tag2[@foo =\n 'bar|''] | some_xpath/some_tag3[foo | bar]",
-            ),
-        );
-    }
-}
diff --git a/vendor/behat/mink/tests/Selector/fixtures/test.html b/vendor/behat/mink/tests/Selector/fixtures/test.html
deleted file mode 100644
index 1190e9e..0000000
--- a/vendor/behat/mink/tests/Selector/fixtures/test.html
+++ /dev/null
@@ -1,312 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
-    <title></title>
-</head>
-<body>
-    <div id="test-for-link-selector">
-        <!-- match links with `href` attribute -->
-        <a href="#" id="link-text"></a>
-        <a href="#">link-text</a>
-        <a href="#" title="link-text"></a>
-        <a href="#" rel="link-text"></a>
-        <a href="#">
-            <img src="#" alt="link-text"/>
-        </a>
-        <!-- partial match -->
-        <a href="#">some link-text</a>
-        <a href="#" title="some link-text"></a>
-        <a href="#" rel="some link-text"></a>
-        <a href="#">
-            <img src="#" alt="some link-text"/>
-        </a>
-
-        <!-- don't match links without `href` attribute -->
-        <a id="bad-link-text"></a>
-        <a>bad-link-text</a>
-        <a title="bad-link-text"></a>
-        <a rel="bad-link-text"></a>
-        <a>
-            <img src="#" alt="bad-link-text"/>
-        </a>
-
-        <!-- match links with `role=link` attribute -->
-        <span role="Link" id="link-role-text"></span>
-        <span role="lInk" value="link-role-text"></span>
-        <span role="liNk" title="link-role-text"></span>
-        <span role="linK">link-role-text</span>
-        <!-- partial match -->
-        <span role="link" value="some link-role-text"></span>
-        <span role="link" title="some link-role-text"></span>
-        <span role="link">some link-role-text</span>
-    </div>
-
-    <div id="test-for-fieldset-selector">
-        <!-- match fieldsets -->
-        <fieldset id="fieldset-text"></fieldset>
-
-        <fieldset>
-            <legend>fieldset-text</legend>
-        </fieldset>
-        <!-- partial match -->
-        <fieldset>
-            <legend>fieldset-text sample</legend>
-        </fieldset>
-
-        <!-- don't match fieldsets -->
-        <fieldset>fieldset-text</fieldset>
-        <fieldset></fieldset>
-    </div>
-
-    <div id="test-for-content-selector">
-        content-text
-    </div>
-    <!-- partial match -->
-    <div id="test-for-partial-content-selector">
-        some content-text
-    </div>
-
-    <div>some "quoted" content</div>
-
-    <form>
-        <div id="test-for-field-selector">
-            <!-- match fields by `id` attribute -->
-            <input id="the-field-input"/>
-            <textarea id="the-field-textarea"></textarea>
-            <select id="the-field-select"></select>
-
-            <!-- match fields by `name` attribute -->
-            <input name="the-field"/>
-            <textarea name="the-field"></textarea>
-            <select name="the-field"></select>
-
-            <!-- match fields by `placeholder` attribute -->
-            <input placeholder="the-field"/>
-            <textarea placeholder="the-field"></textarea>
-            <select placeholder="the-field"></select>
-
-            <!-- match fields by associated label -->
-            <label for="label-for-input">the-field</label><input id="label-for-input"/>
-            <label for="label-for-textarea">the-field</label><textarea id="label-for-textarea"></textarea>
-            <label for="label-for-select">the-field</label><select id="label-for-select"></select>
-
-            <!-- match fields, surrounded by matching label -->
-            <label>the-field<input/></label>
-            <label>the-field<textarea></textarea></label>
-            <label>the-field<select></select></label>
-
-            <!-- don't match fields by `id` attribute -->
-            <input type="Submit" id="the-field-submit-button"/>
-            <input type="iMage" id="the-field-image-button"/>
-            <input type="butTon" id="the-field-button-button"/>
-            <input type="resEt" id="the-field-reset-button"/>
-            <input type="hidDen" id="the-field-hidden"/>
-
-            <!-- don't match fields by `name` attribute -->
-            <input type="submit" name="the-field"/>
-            <input type="image" name="the-field"/>
-            <input type="button" name="the-field"/>
-            <input type="reset" name="the-field"/>
-            <input type="hidden" name="the-field"/>
-
-            <!-- don't match fields by `placeholder` attribute -->
-            <input type="submit" placeholder="the-field"/>
-            <input type="image" placeholder="the-field"/>
-            <input type="button" placeholder="the-field"/>
-            <input type="reset" placeholder="the-field"/>
-            <input type="hidden" placeholder="the-field"/>
-
-            <!-- don't match fields by associated label -->
-            <label for="label-for-the-field-submit-button">the-field</label><input type="submit" id="label-for-the-field-submit-button"/>
-            <label for="label-for-the-field-image-button">the-field</label><input type="image" id="label-for-the-field-image-button"/>
-            <label for="label-for-the-field-button-button">the-field</label><input type="button" id="label-for-the-field-button-button"/>
-            <label for="label-for-the-field-reset-button">the-field</label><input type="reset" id="label-for-the-field-reset-button"/>
-            <label for="label-for-the-field-hidden">the-field</label><input type="hidden" id="label-for-the-field-hidden"/>
-
-            <!-- don't match fields, surrounded by matching label -->
-            <label>the-field<input type="submit"/></label>
-            <label>the-field<input type="image"/></label>
-            <label>the-field<input type="button"/></label>
-            <label>the-field<input type="reset"/></label>
-            <label>the-field<input type="hidden"/></label>
-        </div>
-
-        <div id="test-for-button-selector">
-            <!-- match buttons by `id` attribute -->
-            <input type="Submit" id="input-submit-button"/>
-            <input type="iMage" id="input-image-button"/>
-            <input type="butTon" id="input-button-button"/>
-            <input type="resEt" id="input-reset-button"/>
-
-            <button type="submit" id="button-submit-button"></button>
-            <button type="image" id="button-image-button"></button>
-            <button type="button" id="button-button-button"></button>
-            <button type="reset" id="button-reset-button"></button>
-
-            <!-- match buttons by `name` attribute -->
-            <input type="submit" name="button-text"/>
-            <input type="image" name="button-text"/>
-            <input type="button" name="button-text"/>
-            <input type="reset" name="button-text"/>
-            <button type="submit" name="button-text"></button>
-            <button type="image" name="button-text"></button>
-            <button type="button" name="button-text"></button>
-            <button type="reset" name="button-text"></button>
-
-            <!-- match buttons by `value` attribute -->
-            <input type="submit" value="button-text"/>
-            <input type="image" value="button-text"/>
-            <input type="button" value="button-text"/>
-            <input type="reset" value="button-text"/>
-            <button type="submit" value="button-text"></button>
-            <button type="image" value="button-text"></button>
-            <button type="button" value="button-text"></button>
-            <button type="reset" value="button-text"></button>
-            <!-- Partial match -->
-            <input type="submit" value="some button-text"/>
-            <input type="image" value="some button-text"/>
-            <input type="button" value="some button-text"/>
-            <input type="reset" value="some button-text"/>
-            <button type="submit" value="some button-text"></button>
-            <button type="image" value="some button-text"></button>
-            <button type="button" value="some button-text"></button>
-            <button type="reset" value="some button-text"></button>
-
-            <!-- match buttons by `title` attribute -->
-            <input type="submit" title="button-text"/>
-            <input type="image" title="button-text"/>
-            <input type="button" title="button-text"/>
-            <input type="reset" title="button-text"/>
-            <button type="submit" title="button-text"></button>
-            <button type="image" title="button-text"></button>
-            <button type="button" title="button-text"></button>
-            <button type="reset" title="button-text"></button>
-            <!-- partial match -->
-            <input type="submit" title="some button-text"/>
-            <input type="image" title="some button-text"/>
-            <input type="button" title="some button-text"/>
-            <input type="reset" title="some button-text"/>
-            <button type="submit" title="some button-text"></button>
-            <button type="image" title="some button-text"></button>
-            <button type="button" title="some button-text"></button>
-            <button type="reset" title="some button-text"></button>
-
-            <!-- match some buttons by `alt` attribute -->
-            <input type="submit" alt="button-alt-text"/>
-            <input type="imaGe" alt="button-alt-text"/>
-            <input type="button" alt="button-alt-text"/>
-            <input type="reset" alt="button-alt-text"/>
-            <!-- partial match -->
-            <input type="submit" alt="some button-alt-text"/>
-            <input type="image" alt="some button-alt-text"/>
-            <input type="button" alt="some button-alt-text"/>
-            <input type="reset" alt="some button-alt-text"/>
-
-            <!-- match by `button` text -->
-            <button>button-text</button>
-            <!-- partial match -->
-            <button>some button-text</button>
-
-            <!-- match buttons with `role=button` & `id` attribute -->
-            <span role="Button" type="submit" id="role-button-submit-button"></span>
-            <span role="bUtton" type="image" id="role-button-image-button"></span>
-            <span role="buTton" type="button" id="role-button-button-button"></span>
-            <span role="butTon" type="reset" id="role-button-reset-button"></span>
-
-            <!-- match buttons with `role=button` & `name` attribute -->
-            <span role="buttOn" type="submit" name="button-role-text"></span>
-            <span role="buttoN" type="image" name="button-role-text"></span>
-            <span role="button" type="button" name="button-role-text"></span>
-            <span role="button" type="reset" name="button-role-text"></span>
-
-            <!-- match buttons with `role=button` & `value` attribute -->
-            <span role="button" type="submit" value="button-role-text"></span>
-            <span role="button" type="image" value="button-role-text"></span>
-            <span role="button" type="button" value="button-role-text"></span>
-            <span role="button" type="reset" value="button-role-text"></span>
-            <!-- partial match -->
-            <span role="button" type="submit" value="some button-role-text"></span>
-            <span role="button" type="image" value="some button-role-text"></span>
-            <span role="button" type="button" value="some button-role-text"></span>
-            <span role="button" type="reset" value="some button-role-text"></span>
-
-            <!-- match buttons with `role=button` & `title` attribute -->
-            <span role="button" type="submit" title="button-role-text"></span>
-            <span role="button" type="image" title="button-role-text"></span>
-            <span role="button" type="button" title="button-role-text"></span>
-            <span role="button" type="reset" title="button-role-text"></span>
-            <!-- partial match -->
-            <span role="button" type="submit" title="some button-role-text"></span>
-            <span role="button" type="image" title="some button-role-text"></span>
-            <span role="button" type="button" title="some button-role-text"></span>
-            <span role="button" type="reset" title="some button-role-text"></span>
-        </div>
-
-        <div id="test-for-checkbox-selector">
-            <input type="Checkbox" id="the-field-checkbox"/>
-            <input type="checkBox" name="the-field"/>
-            <input type="cheCkbox" placeholder="the-field"/>
-            <label for="label-for-checkbox">the-field</label><input type="checkboX" id="label-for-checkbox"/>
-            <label>the-field<input type="chEckbox"/></label>
-        </div>
-
-        <div id="test-for-radio-selector">
-            <input type="Radio" id="the-field-radio"/>
-            <input type="raDio" name="the-field"/>
-            <input type="radIo" placeholder="the-field"/>
-            <label for="label-for-radio">the-field</label><input type="radiO" id="label-for-radio"/>
-            <label>the-field<input type="radIo"/></label>
-        </div>
-
-        <div id="test-for-file-selector">
-            <input type="File" id="the-field-file"/>
-            <input type="fIle" name="the-field"/>
-            <input type="fiLe" placeholder="the-field"/>
-            <label for="label-for-file">the-field</label><input type="filE" id="label-for-file"/>
-            <label>the-field<input type="fiLe"/></label>
-        </div>
-
-        <div id="test-for-select-related-stuff">
-            <!-- match select stuff -->
-            <select name="the-select-stuff-test">
-                <optgroup label="group-label">
-                    <option value="option-value"></option>
-                </optgroup>
-                <option value="">option-value</option>
-                <!-- partial match -->
-                <optgroup label="some group-label">
-                    <option value="">some option-value</option>
-                </optgroup>
-            </select>
-
-            <!-- don't match select stuff -->
-            <select name="the-select-stuff-test">
-                <optgroup label="">some group-label</optgroup>
-                <option value="some option-value"></option>
-            </select>
-        </div>
-    </form>
-
-    <div id="test-for-table-selector">
-        <!-- match tables -->
-        <table id="the-table"></table>
-        <table>
-            <caption>the-table</caption>
-        </table>
-        <!-- partial match -->
-        <table>
-            <caption>some the-table</caption>
-        </table>
-
-        <!-- don't match tables -->
-        <table>
-            <tr>
-                <th>the-table</th>
-                <td>the-table</td>
-            </tr>
-        </table>
-    </div>
-
-    <input name="the-table"/>
-</body>
-</html>
diff --git a/vendor/behat/mink/tests/SessionTest.php b/vendor/behat/mink/tests/SessionTest.php
deleted file mode 100644
index 3e0104a..0000000
--- a/vendor/behat/mink/tests/SessionTest.php
+++ /dev/null
@@ -1,312 +0,0 @@
-<?php
-
-namespace Behat\Mink\Tests;
-
-use Behat\Mink\Session;
-
-class SessionTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @var \PHPUnit_Framework_MockObject_MockObject
-     */
-    private $driver;
-    private $selectorsHandler;
-
-    /**
-     * Session.
-     *
-     * @var Session
-     */
-    private $session;
-
-    protected function setUp()
-    {
-        $this->driver = $this->getMockBuilder('Behat\Mink\Driver\DriverInterface')->getMock();
-        $this->selectorsHandler = $this->getMockBuilder('Behat\Mink\Selector\SelectorsHandler')->getMock();
-        $this->session = new Session($this->driver, $this->selectorsHandler);
-    }
-
-    public function testGetDriver()
-    {
-        $this->assertSame($this->driver, $this->session->getDriver());
-    }
-
-    public function testGetPage()
-    {
-        $this->assertInstanceOf('Behat\Mink\Element\DocumentElement', $this->session->getPage());
-    }
-
-    public function testGetSelectorsHandler()
-    {
-        $this->assertSame($this->selectorsHandler, $this->session->getSelectorsHandler());
-    }
-
-    public function testInstantiateWithoutOptionalDeps()
-    {
-        $session = new Session($this->driver);
-
-        $this->assertInstanceOf('Behat\Mink\Selector\SelectorsHandler', $session->getSelectorsHandler());
-    }
-
-    public function testIsStarted()
-    {
-        $this->driver->expects($this->once())
-            ->method('isStarted')
-            ->will($this->returnValue(true));
-
-        $this->assertTrue($this->session->isStarted());
-    }
-
-    public function testStart()
-    {
-        $this->driver->expects($this->once())
-            ->method('start');
-
-        $this->session->start();
-    }
-
-    public function testStop()
-    {
-        $this->driver->expects($this->once())
-            ->method('stop');
-
-        $this->session->stop();
-    }
-
-    public function testRestart()
-    {
-        $this->driver->expects($this->at(0))
-            ->method('stop');
-        $this->driver->expects($this->at(1))
-            ->method('start');
-
-        $this->session->restart();
-    }
-
-    public function testVisit()
-    {
-        $this->driver
-            ->expects($this->once())
-            ->method('visit')
-            ->with($url = 'some_url');
-
-        $this->session->visit($url);
-    }
-
-    public function testReset()
-    {
-        $this->driver
-            ->expects($this->once())
-            ->method('reset');
-
-        $this->session->reset();
-    }
-
-    public function testSetBasicAuth()
-    {
-        $this->driver->expects($this->once())
-            ->method('setBasicAuth')
-            ->with('user', 'pass');
-
-        $this->session->setBasicAuth('user', 'pass');
-    }
-
-    public function testSetRequestHeader()
-    {
-        $this->driver->expects($this->once())
-            ->method('setRequestHeader')
-            ->with('name', 'value');
-
-        $this->session->setRequestHeader('name', 'value');
-    }
-
-    public function testGetResponseHeaders()
-    {
-        $this->driver
-            ->expects($this->once())
-            ->method('getResponseHeaders')
-            ->will($this->returnValue($ret = array(2, 3, 4)));
-
-        $this->assertEquals($ret, $this->session->getResponseHeaders());
-    }
-
-    /**
-     * @dataProvider provideResponseHeader
-     */
-    public function testGetResponseHeader($expected, $name, array $headers)
-    {
-        $this->driver->expects($this->once())
-            ->method('getResponseHeaders')
-            ->willReturn($headers);
-
-        $this->assertSame($expected, $this->session->getResponseHeader($name));
-    }
-
-    public function provideResponseHeader()
-    {
-        return array(
-            array('test', 'Mink', array('Mink' => 'test')),
-            array('test', 'mink', array('Mink' => 'test')),
-            array('test', 'Mink', array('mink' => 'test')),
-            array('test', 'Mink', array('Mink' => array('test', 'test2'))),
-            array(null, 'other', array('Mink' => 'test')),
-        );
-    }
-
-    public function testSetCookie()
-    {
-        $this->driver->expects($this->once())
-            ->method('setCookie')
-            ->with('name', 'value');
-
-        $this->session->setCookie('name', 'value');
-    }
-
-    public function testGetCookie()
-    {
-        $this->driver->expects($this->once())
-            ->method('getCookie')
-            ->with('name')
-            ->will($this->returnValue('value'));
-
-        $this->assertEquals('value', $this->session->getCookie('name'));
-    }
-
-    public function testGetStatusCode()
-    {
-        $this->driver
-            ->expects($this->once())
-            ->method('getStatusCode')
-            ->will($this->returnValue($ret = 404));
-
-        $this->assertEquals($ret, $this->session->getStatusCode());
-    }
-
-    public function testGetCurrentUrl()
-    {
-        $this->driver
-            ->expects($this->once())
-            ->method('getCurrentUrl')
-            ->will($this->returnValue($ret = 'http://some.url'));
-
-        $this->assertEquals($ret, $this->session->getCurrentUrl());
-    }
-
-    public function testGetScreenshot()
-    {
-        $this->driver->expects($this->once())
-            ->method('getScreenshot')
-            ->will($this->returnValue('screenshot'));
-
-        $this->assertEquals('screenshot', $this->session->getScreenshot());
-    }
-
-    public function testGetWindowNames()
-    {
-        $this->driver->expects($this->once())
-            ->method('getWindowNames')
-            ->will($this->returnValue($names = array('window 1', 'window 2')));
-
-        $this->assertEquals($names, $this->session->getWindowNames());
-    }
-
-    public function testGetWindowName()
-    {
-        $this->driver->expects($this->once())
-            ->method('getWindowName')
-            ->will($this->returnValue('name'));
-
-        $this->assertEquals('name', $this->session->getWindowName());
-    }
-
-    public function testReload()
-    {
-        $this->driver->expects($this->once())
-            ->method('reload');
-
-        $this->session->reload();
-    }
-
-    public function testBack()
-    {
-        $this->driver->expects($this->once())
-            ->method('back');
-
-        $this->session->back();
-    }
-
-    public function testForward()
-    {
-        $this->driver->expects($this->once())
-            ->method('forward');
-
-        $this->session->forward();
-    }
-
-    public function testSwitchToWindow()
-    {
-        $this->driver->expects($this->once())
-            ->method('switchToWindow')
-            ->with('test');
-
-        $this->session->switchToWindow('test');
-    }
-
-    public function testSwitchToIFrame()
-    {
-        $this->driver->expects($this->once())
-            ->method('switchToIFrame')
-            ->with('test');
-
-        $this->session->switchToIFrame('test');
-    }
-
-    public function testExecuteScript()
-    {
-        $this->driver
-            ->expects($this->once())
-            ->method('executeScript')
-            ->with($arg = 'JS');
-
-        $this->session->executeScript($arg);
-    }
-
-    public function testEvaluateScript()
-    {
-        $this->driver
-            ->expects($this->once())
-            ->method('evaluateScript')
-            ->with($arg = 'JS func')
-            ->will($this->returnValue($ret = '23'));
-
-        $this->assertEquals($ret, $this->session->evaluateScript($arg));
-    }
-
-    public function testWait()
-    {
-        $this->driver
-            ->expects($this->once())
-            ->method('wait')
-            ->with(1000, 'function () {}');
-
-        $this->session->wait(1000, 'function () {}');
-    }
-
-    public function testResizeWindow()
-    {
-        $this->driver->expects($this->once())
-            ->method('resizeWindow')
-            ->with(800, 600, 'test');
-
-        $this->session->resizeWindow(800, 600, 'test');
-    }
-
-    public function testMaximizeWindow()
-    {
-        $this->driver->expects($this->once())
-            ->method('maximizeWindow')
-            ->with('test');
-
-        $this->session->maximizeWindow('test');
-    }
-}
diff --git a/vendor/behat/mink/tests/WebAssertTest.php b/vendor/behat/mink/tests/WebAssertTest.php
deleted file mode 100644
index ef55d2d..0000000
--- a/vendor/behat/mink/tests/WebAssertTest.php
+++ /dev/null
@@ -1,1297 +0,0 @@
-<?php
-
-namespace Behat\Mink\Tests;
-
-use Behat\Mink\Exception\ExpectationException;
-use Behat\Mink\WebAssert;
-
-class WebAssertTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @var \PHPUnit_Framework_MockObject_MockObject
-     */
-    private $session;
-    /**
-     * @var WebAssert
-     */
-    private $assert;
-
-    public function setUp()
-    {
-        $this->session = $this->getMockBuilder('Behat\\Mink\\Session')
-            ->disableOriginalConstructor()
-            ->getMock();
-        $this->session->expects($this->any())
-            ->method('getDriver')
-            ->will($this->returnValue($this->getMock('Behat\Mink\Driver\DriverInterface')));
-
-        $this->assert = new WebAssert($this->session);
-    }
-
-    public function testAddressEquals()
-    {
-        $this->session
-            ->expects($this->exactly(2))
-            ->method('getCurrentUrl')
-            ->will($this->returnValue('http://example.com/script.php/sub/url?param=true#webapp/nav'))
-        ;
-
-        $this->assertCorrectAssertion('addressEquals', array('/sub/url#webapp/nav'));
-        $this->assertWrongAssertion(
-            'addressEquals',
-            array('sub_url'),
-            'Behat\\Mink\\Exception\\ExpectationException',
-            'Current page is "/sub/url#webapp/nav", but "sub_url" expected.'
-        );
-    }
-
-    public function testAddressEqualsEmptyPath()
-    {
-        $this->session
-            ->expects($this->once())
-            ->method('getCurrentUrl')
-            ->willReturn('http://example.com')
-        ;
-
-        $this->assertCorrectAssertion('addressEquals', array('/'));
-    }
-
-    public function testAddressEqualsEndingInScript()
-    {
-        $this->session
-            ->expects($this->exactly(2))
-            ->method('getCurrentUrl')
-            ->will($this->returnValue('http://example.com/script.php'))
-        ;
-
-        $this->assertCorrectAssertion('addressEquals', array('/script.php'));
-        $this->assertWrongAssertion(
-            'addressEquals',
-            array('/'),
-            'Behat\\Mink\\Exception\\ExpectationException',
-            'Current page is "/script.php", but "/" expected.'
-        );
-    }
-
-    public function testAddressNotEquals()
-    {
-        $this->session
-            ->expects($this->exactly(2))
-            ->method('getCurrentUrl')
-            ->will($this->returnValue('http://example.com/script.php/sub/url'))
-        ;
-
-        $this->assertCorrectAssertion('addressNotEquals', array('sub_url'));
-        $this->assertWrongAssertion(
-            'addressNotEquals',
-            array('/sub/url'),
-            'Behat\\Mink\\Exception\\ExpectationException',
-            'Current page is "/sub/url", but should not be.'
-        );
-    }
-
-    public function testAddressNotEqualsEndingInScript()
-    {
-        $this->session
-            ->expects($this->exactly(2))
-            ->method('getCurrentUrl')
-            ->will($this->returnValue('http://example.com/script.php'))
-        ;
-
-        $this->assertCorrectAssertion('addressNotEquals', array('/'));
-        $this->assertWrongAssertion(
-            'addressNotEquals',
-            array('/script.php'),
-            'Behat\\Mink\\Exception\\ExpectationException',
-            'Current page is "/script.php", but should not be.'
-        );
-    }
-
-    public function testAddressMatches()
-    {
-        $this->session
-            ->expects($this->exactly(2))
-            ->method('getCurrentUrl')
-            ->will($this->returnValue('http://example.com/script.php/sub/url'))
-        ;
-
-        $this->assertCorrectAssertion('addressMatches', array('/su.*rl/'));
-        $this->assertWrongAssertion(
-            'addressMatches',
-            array('/suburl/'),
-            'Behat\\Mink\\Exception\\ExpectationException',
-            'Current page "/sub/url" does not match the regex "/suburl/".'
-        );
-    }
-
-    public function testCookieEquals()
-    {
-        $this->session->
-            expects($this->any())->
-            method('getCookie')->
-            will($this->returnValueMap(
-                array(
-                    array('foo', 'bar'),
-                    array('bar', 'baz'),
-                )
-            ));
-
-        $this->assertCorrectAssertion('cookieEquals', array('foo', 'bar'));
-        $this->assertWrongAssertion(
-            'cookieEquals',
-            array('bar', 'foo'),
-            'Behat\Mink\Exception\ExpectationException',
-            'Cookie "bar" value is "baz", but should be "foo".'
-        );
-    }
-
-    public function testCookieExists()
-    {
-        $this->session->
-            expects($this->any())->
-            method('getCookie')->
-            will($this->returnValueMap(
-                array(
-                    array('foo', '1'),
-                    array('bar', null),
-                )
-            ));
-
-        $this->assertCorrectAssertion('cookieExists', array('foo'));
-        $this->assertWrongAssertion(
-            'cookieExists',
-            array('bar'),
-            'Behat\Mink\Exception\ExpectationException',
-            'Cookie "bar" is not set, but should be.'
-        );
-    }
-
-    public function testStatusCodeEquals()
-    {
-        $this->session
-            ->expects($this->exactly(2))
-            ->method('getStatusCode')
-            ->will($this->returnValue(200))
-        ;
-
-        $this->assertCorrectAssertion('statusCodeEquals', array(200));
-        $this->assertWrongAssertion(
-            'statusCodeEquals',
-            array(404),
-            'Behat\\Mink\\Exception\\ExpectationException',
-            'Current response status code is 200, but 404 expected.'
-        );
-    }
-
-    public function testStatusCodeNotEquals()
-    {
-        $this->session
-            ->expects($this->exactly(2))
-            ->method('getStatusCode')
-            ->will($this->returnValue(404))
-        ;
-
-        $this->assertCorrectAssertion('statusCodeNotEquals', array(200));
-        $this->assertWrongAssertion(
-            'statusCodeNotEquals',
-            array(404),
-            'Behat\\Mink\\Exception\\ExpectationException',
-            'Current response status code is 404, but should not be.'
-        );
-    }
-
-    public function testResponseHeaderEquals()
-    {
-        $this->session
-            ->expects($this->any())
-            ->method('getResponseHeader')
-            ->will($this->returnValueMap(
-                array(
-                    array('foo', 'bar'),
-                    array('bar', 'baz'),
-                )
-            ));
-
-        $this->assertCorrectAssertion('responseHeaderEquals', array('foo', 'bar'));
-        $this->assertWrongAssertion(
-            'responseHeaderEquals',
-            array('bar', 'foo'),
-            'Behat\\Mink\\Exception\\ExpectationException',
-            'Current response header "bar" is "baz", but "foo" expected.'
-        );
-    }
-
-    public function testResponseHeaderNotEquals()
-    {
-        $this->session
-            ->expects($this->any())
-            ->method('getResponseHeader')
-            ->will($this->returnValueMap(
-                array(
-                    array('foo', 'bar'),
-                    array('bar', 'baz'),
-                )
-            ));
-
-        $this->assertCorrectAssertion('responseHeaderNotEquals', array('foo', 'baz'));
-        $this->assertWrongAssertion(
-            'responseHeaderNotEquals',
-            array('bar', 'baz'),
-            'Behat\\Mink\\Exception\\ExpectationException',
-            'Current response header "bar" is "baz", but should not be.'
-        );
-    }
-
-    public function testResponseHeaderContains()
-    {
-        $this->session
-            ->expects($this->any())
-            ->method('getResponseHeader')
-            ->will($this->returnValueMap(
-                array(
-                    array('foo', 'bar'),
-                    array('bar', 'baz'),
-                )
-            ));
-
-        $this->assertCorrectAssertion('responseHeaderContains', array('foo', 'ba'));
-        $this->assertWrongAssertion(
-            'responseHeaderContains',
-            array('bar', 'bz'),
-            'Behat\\Mink\\Exception\\ExpectationException',
-            'The text "bz" was not found anywhere in the "bar" response header.'
-        );
-    }
-
-    public function testResponseHeaderNotContains()
-    {
-        $this->session
-            ->expects($this->any())
-            ->method('getResponseHeader')
-            ->will($this->returnValueMap(
-                array(
-                    array('foo', 'bar'),
-                    array('bar', 'baz'),
-                )
-            ));
-
-        $this->assertCorrectAssertion('responseHeaderNotContains', array('foo', 'bz'));
-        $this->assertWrongAssertion(
-            'responseHeaderNotContains',
-            array('bar', 'ba'),
-            'Behat\\Mink\\Exception\\ExpectationException',
-            'The text "ba" was found in the "bar" response header, but it should not.'
-        );
-    }
-
-    public function testResponseHeaderMatches()
-    {
-        $this->session
-            ->expects($this->any())
-            ->method('getResponseHeader')
-            ->will($this->returnValueMap(
-                array(
-                    array('foo', 'bar'),
-                    array('bar', 'baz'),
-                )
-            ));
-
-        $this->assertCorrectAssertion('responseHeaderMatches', array('foo', '/ba(.*)/'));
-        $this->assertWrongAssertion(
-            'responseHeaderMatches',
-            array('bar', '/b[^a]/'),
-            'Behat\\Mink\\Exception\\ExpectationException',
-            'The pattern "/b[^a]/" was not found anywhere in the "bar" response header.'
-        );
-    }
-
-    public function testResponseHeaderNotMatches()
-    {
-        $this->session
-            ->expects($this->any())
-            ->method('getResponseHeader')
-            ->will($this->returnValueMap(
-                array(
-                    array('foo', 'bar'),
-                    array('bar', 'baz'),
-                )
-            ));
-
-        $this->assertCorrectAssertion('responseHeaderNotMatches', array('foo', '/bz/'));
-        $this->assertWrongAssertion(
-            'responseHeaderNotMatches',
-            array('bar', '/b[ab]z/'),
-            'Behat\\Mink\\Exception\\ExpectationException',
-            'The pattern "/b[ab]z/" was found in the text of the "bar" response header, but it should not.'
-        );
-    }
-
-    public function testPageTextContains()
-    {
-        $page = $this->getMockBuilder('Behat\\Mink\\Element\\DocumentElement')
-            ->disableOriginalConstructor()
-            ->getMock()
-        ;
-
-        $this->session
-            ->expects($this->exactly(2))
-            ->method('getPage')
-            ->will($this->returnValue($page))
-        ;
-
-        $page
-            ->expects($this->exactly(2))
-            ->method('getText')
-            ->will($this->returnValue("Some  page\n\ttext"))
-        ;
-
-        $this->assertCorrectAssertion('pageTextContains', array('PAGE text'));
-        $this->assertWrongAssertion(
-            'pageTextContains',
-            array('html text'),
-            'Behat\\Mink\\Exception\\ResponseTextException',
-            'The text "html text" was not found anywhere in the text of the current page.'
-        );
-    }
-
-    public function testPageTextNotContains()
-    {
-        $page = $this->getMockBuilder('Behat\\Mink\\Element\\DocumentElement')
-            ->disableOriginalConstructor()
-            ->getMock()
-        ;
-
-        $this->session
-            ->expects($this->exactly(2))
-            ->method('getPage')
-            ->will($this->returnValue($page))
-        ;
-
-        $page
-            ->expects($this->exactly(2))
-            ->method('getText')
-            ->will($this->returnValue("Some  html\n\ttext"))
-        ;
-
-        $this->assertCorrectAssertion('pageTextNotContains', array('PAGE text'));
-        $this->assertWrongAssertion(
-            'pageTextNotContains',
-            array('HTML text'),
-            'Behat\\Mink\\Exception\\ResponseTextException',
-            'The text "HTML text" appears in the text of this page, but it should not.'
-        );
-    }
-
-    public function testPageTextMatches()
-    {
-        $page = $this->getMockBuilder('Behat\\Mink\\Element\\DocumentElement')
-            ->disableOriginalConstructor()
-            ->getMock()
-        ;
-
-        $this->session
-            ->expects($this->exactly(2))
-            ->method('getPage')
-            ->will($this->returnValue($page))
-        ;
-
-        $page
-            ->expects($this->exactly(2))
-            ->method('getText')
-            ->will($this->returnValue('Some page text'))
-        ;
-
-        $this->assertCorrectAssertion('pageTextMatches', array('/PA.E/i'));
-        $this->assertWrongAssertion(
-            'pageTextMatches',
-            array('/html/'),
-            'Behat\\Mink\\Exception\\ResponseTextException',
-            'The pattern /html/ was not found anywhere in the text of the current page.'
-        );
-    }
-
-    public function testPageTextNotMatches()
-    {
-        $page = $this->getMockBuilder('Behat\\Mink\\Element\\DocumentElement')
-            ->disableOriginalConstructor()
-            ->getMock()
-        ;
-
-        $this->session
-            ->expects($this->exactly(2))
-            ->method('getPage')
-            ->will($this->returnValue($page))
-        ;
-
-        $page
-            ->expects($this->exactly(2))
-            ->method('getText')
-            ->will($this->returnValue('Some html text'))
-        ;
-
-        $this->assertCorrectAssertion('pageTextNotMatches', array('/PA.E/i'));
-        $this->assertWrongAssertion(
-            'pageTextNotMatches',
-            array('/HTML/i'),
-            'Behat\\Mink\\Exception\\ResponseTextException',
-            'The pattern /HTML/i was found in the text of the current page, but it should not.'
-        );
-    }
-
-    public function testResponseContains()
-    {
-        $page = $this->getMockBuilder('Behat\\Mink\\Element\\DocumentElement')
-            ->disableOriginalConstructor()
-            ->getMock()
-        ;
-
-        $this->session
-            ->expects($this->exactly(2))
-            ->method('getPage')
-            ->will($this->returnValue($page))
-        ;
-
-        $page
-            ->expects($this->exactly(2))
-            ->method('getContent')
-            ->will($this->returnValue('Some page text'))
-        ;
-
-        $this->assertCorrectAssertion('responseContains', array('PAGE text'));
-        $this->assertWrongAssertion(
-            'responseContains',
-            array('html text'),
-            'Behat\\Mink\\Exception\\ExpectationException',
-            'The string "html text" was not found anywhere in the HTML response of the current page.'
-        );
-    }
-
-    public function testResponseNotContains()
-    {
-        $page = $this->getMockBuilder('Behat\\Mink\\Element\\DocumentElement')
-            ->disableOriginalConstructor()
-            ->getMock()
-        ;
-
-        $this->session
-            ->expects($this->exactly(2))
-            ->method('getPage')
-            ->will($this->returnValue($page))
-        ;
-
-        $page
-            ->expects($this->exactly(2))
-            ->method('getContent')
-            ->will($this->returnValue('Some html text'))
-        ;
-
-        $this->assertCorrectAssertion('responseNotContains', array('PAGE text'));
-        $this->assertWrongAssertion(
-            'responseNotContains',
-            array('HTML text'),
-            'Behat\\Mink\\Exception\\ExpectationException',
-            'The string "HTML text" appears in the HTML response of this page, but it should not.'
-        );
-    }
-
-    public function testResponseMatches()
-    {
-        $page = $this->getMockBuilder('Behat\\Mink\\Element\\DocumentElement')
-            ->disableOriginalConstructor()
-            ->getMock()
-        ;
-
-        $this->session
-            ->expects($this->exactly(2))
-            ->method('getPage')
-            ->will($this->returnValue($page))
-        ;
-
-        $page
-            ->expects($this->exactly(2))
-            ->method('getContent')
-            ->will($this->returnValue('Some page text'))
-        ;
-
-        $this->assertCorrectAssertion('responseMatches', array('/PA.E/i'));
-        $this->assertWrongAssertion(
-            'responseMatches',
-            array('/html/'),
-            'Behat\\Mink\\Exception\\ExpectationException',
-            'The pattern /html/ was not found anywhere in the HTML response of the page.'
-        );
-    }
-
-    public function testResponseNotMatches()
-    {
-        $page = $this->getMockBuilder('Behat\\Mink\\Element\\DocumentElement')
-            ->disableOriginalConstructor()
-            ->getMock()
-        ;
-
-        $this->session
-            ->expects($this->exactly(2))
-            ->method('getPage')
-            ->will($this->returnValue($page))
-        ;
-
-        $page
-            ->expects($this->exactly(2))
-            ->method('getContent')
-            ->will($this->returnValue('Some html text'))
-        ;
-
-        $this->assertCorrectAssertion('responseNotMatches', array('/PA.E/i'));
-        $this->assertWrongAssertion(
-            'responseNotMatches',
-            array('/HTML/i'),
-            'Behat\\Mink\\Exception\\ExpectationException',
-            'The pattern /HTML/i was found in the HTML response of the page, but it should not.'
-        );
-    }
-
-    public function testElementsCount()
-    {
-        $page = $this->getMockBuilder('Behat\\Mink\\Element\\DocumentElement')
-            ->disableOriginalConstructor()
-            ->getMock()
-        ;
-
-        $this->session
-            ->expects($this->exactly(2))
-            ->method('getPage')
-            ->will($this->returnValue($page))
-        ;
-
-        $page
-            ->expects($this->exactly(2))
-            ->method('findAll')
-            ->with('css', 'h2 > span')
-            ->will($this->returnValue(array(1, 2)))
-        ;
-
-        $this->assertCorrectAssertion('elementsCount', array('css', 'h2 > span', 2));
-        $this->assertWrongAssertion(
-            'elementsCount',
-            array('css', 'h2 > span', 3),
-            'Behat\\Mink\\Exception\\ExpectationException',
-            '2 elements matching css "h2 > span" found on the page, but should be 3.'
-        );
-    }
-
-    public function testElementExists()
-    {
-        $page = $this->getMockBuilder('Behat\\Mink\\Element\\DocumentElement')
-            ->disableOriginalConstructor()
-            ->getMock()
-        ;
-
-        $this->session
-            ->expects($this->exactly(2))
-            ->method('getPage')
-            ->will($this->returnValue($page))
-        ;
-
-        $page
-            ->expects($this->exactly(4))
-            ->method('find')
-            ->with('css', 'h2 > span')
-            ->will($this->onConsecutiveCalls(1, null, 1, null))
-        ;
-
-        $this->assertCorrectAssertion('elementExists', array('css', 'h2 > span'));
-        $this->assertWrongAssertion(
-            'elementExists',
-            array('css', 'h2 > span'),
-            'Behat\\Mink\\Exception\\ElementNotFoundException',
-            'Element matching css "h2 > span" not found.'
-        );
-
-        $this->assertCorrectAssertion('elementExists', array('css', 'h2 > span', $page));
-        $this->assertWrongAssertion(
-            'elementExists',
-            array('css', 'h2 > span', $page),
-            'Behat\\Mink\\Exception\\ElementNotFoundException',
-            'Element matching css "h2 > span" not found.'
-        );
-    }
-
-    public function testElementExistsWithArrayLocator()
-    {
-        $container = $this->getMockBuilder('Behat\\Mink\\Element\\NodeElement')
-            ->disableOriginalConstructor()
-            ->getMock()
-        ;
-
-        $this->session->expects($this->never())
-            ->method('getPage')
-        ;
-
-        $container
-            ->expects($this->exactly(2))
-            ->method('find')
-            ->with('named', array('element', 'Test'))
-            ->will($this->onConsecutiveCalls(1, null))
-        ;
-
-        $this->assertCorrectAssertion('elementExists', array('named', array('element', 'Test'), $container));
-        $this->assertWrongAssertion(
-            'elementExists',
-            array('named', array('element', 'Test'), $container),
-            'Behat\\Mink\\Exception\\ElementNotFoundException',
-            'Element with named "element Test" not found.'
-        );
-    }
-
-    public function testElementNotExists()
-    {
-        $page = $this->getMockBuilder('Behat\\Mink\\Element\\DocumentElement')
-            ->disableOriginalConstructor()
-            ->getMock()
-        ;
-
-        $this->session
-            ->expects($this->exactly(2))
-            ->method('getPage')
-            ->will($this->returnValue($page))
-        ;
-
-        $page
-            ->expects($this->exactly(4))
-            ->method('find')
-            ->with('css', 'h2 > span')
-            ->will($this->onConsecutiveCalls(null, 1, null, 1))
-        ;
-
-        $this->assertCorrectAssertion('elementNotExists', array('css', 'h2 > span'));
-        $this->assertWrongAssertion(
-            'elementNotExists',
-            array('css', 'h2 > span'),
-            'Behat\\Mink\\Exception\\ExpectationException',
-            'An element matching css "h2 > span" appears on this page, but it should not.'
-        );
-
-        $this->assertCorrectAssertion('elementNotExists', array('css', 'h2 > span', $page));
-        $this->assertWrongAssertion(
-            'elementNotExists',
-            array('css', 'h2 > span', $page),
-            'Behat\\Mink\\Exception\\ExpectationException',
-            'An element matching css "h2 > span" appears on this page, but it should not.'
-        );
-    }
-
-    /**
-     * @dataProvider getArrayLocatorFormats
-     */
-    public function testElementNotExistsArrayLocator($selector, $locator, $expectedMessage)
-    {
-        $page = $this->getMockBuilder('Behat\\Mink\\Element\\DocumentElement')
-            ->disableOriginalConstructor()
-            ->getMock()
-        ;
-
-        $this->session
-            ->expects($this->once())
-            ->method('getPage')
-            ->will($this->returnValue($page))
-        ;
-
-        $page
-            ->expects($this->once())
-            ->method('find')
-            ->with($selector, $locator)
-            ->will($this->returnValue(1))
-        ;
-
-        $this->assertWrongAssertion(
-            'elementNotExists',
-            array($selector, $locator),
-            'Behat\\Mink\\Exception\\ExpectationException',
-            $expectedMessage
-        );
-    }
-
-    public function getArrayLocatorFormats()
-    {
-        return array(
-            'named' => array(
-                'named',
-                array('button', 'Test'),
-                'An button matching locator "Test" appears on this page, but it should not.',
-            ),
-            'custom' => array(
-                'custom',
-                array('test', 'foo'),
-                'An element matching custom "test foo" appears on this page, but it should not.',
-            ),
-        );
-    }
-
-    public function testElementTextContains()
-    {
-        $page = $this->getMockBuilder('Behat\\Mink\\Element\\DocumentElement')
-            ->disableOriginalConstructor()
-            ->getMock()
-        ;
-
-        $element = $this->getMockBuilder('Behat\\Mink\\Element\\NodeElement')
-            ->disableOriginalConstructor()
-            ->getMock()
-        ;
-
-        $this->session
-            ->expects($this->exactly(2))
-            ->method('getPage')
-            ->will($this->returnValue($page))
-        ;
-
-        $page
-            ->expects($this->exactly(2))
-            ->method('find')
-            ->with('css', 'h2 > span')
-            ->will($this->returnValue($element))
-        ;
-
-        $element
-            ->expects($this->exactly(2))
-            ->method('getText')
-            ->will($this->returnValue('element text'))
-        ;
-
-        $this->assertCorrectAssertion('elementTextContains', array('css', 'h2 > span', 'text'));
-        $this->assertWrongAssertion(
-            'elementTextContains',
-            array('css', 'h2 > span', 'html'),
-            'Behat\\Mink\\Exception\\ExpectationException',
-            'The text "html" was not found in the text of the element matching css "h2 > span".'
-        );
-    }
-
-    public function testElementTextNotContains()
-    {
-        $page = $this->getMockBuilder('Behat\\Mink\\Element\\DocumentElement')
-            ->disableOriginalConstructor()
-            ->getMock()
-        ;
-
-        $element = $this->getMockBuilder('Behat\\Mink\\Element\\NodeElement')
-            ->disableOriginalConstructor()
-            ->getMock()
-        ;
-
-        $this->session
-            ->expects($this->exactly(2))
-            ->method('getPage')
-            ->will($this->returnValue($page))
-        ;
-
-        $page
-            ->expects($this->exactly(2))
-            ->method('find')
-            ->with('css', 'h2 > span')
-            ->will($this->returnValue($element))
-        ;
-
-        $element
-            ->expects($this->exactly(2))
-            ->method('getText')
-            ->will($this->returnValue('element text'))
-        ;
-
-        $this->assertCorrectAssertion('elementTextNotContains', array('css', 'h2 > span', 'html'));
-        $this->assertWrongAssertion(
-            'elementTextNotContains',
-            array('css', 'h2 > span', 'text'),
-            'Behat\\Mink\\Exception\\ExpectationException',
-            'The text "text" appears in the text of the element matching css "h2 > span", but it should not.'
-        );
-    }
-
-    public function testElementContains()
-    {
-        $page = $this->getMockBuilder('Behat\\Mink\\Element\\DocumentElement')
-            ->disableOriginalConstructor()
-            ->getMock()
-        ;
-
-        $element = $this->getMockBuilder('Behat\\Mink\\Element\\NodeElement')
-            ->disableOriginalConstructor()
-            ->getMock()
-        ;
-
-        $this->session
-            ->expects($this->exactly(2))
-            ->method('getPage')
-            ->will($this->returnValue($page))
-        ;
-
-        $page
-            ->expects($this->exactly(2))
-            ->method('find')
-            ->with('css', 'h2 > span')
-            ->will($this->returnValue($element))
-        ;
-
-        $element
-            ->expects($this->exactly(2))
-            ->method('getHtml')
-            ->will($this->returnValue('element html'))
-        ;
-
-        $this->assertCorrectAssertion('elementContains', array('css', 'h2 > span', 'html'));
-        $this->assertWrongAssertion(
-            'elementContains',
-            array('css', 'h2 > span', 'text'),
-            'Behat\\Mink\\Exception\\ExpectationException',
-            'The string "text" was not found in the HTML of the element matching css "h2 > span".'
-        );
-    }
-
-    public function testElementNotContains()
-    {
-        $page = $this->getMockBuilder('Behat\\Mink\\Element\\DocumentElement')
-            ->disableOriginalConstructor()
-            ->getMock()
-        ;
-
-        $element = $this->getMockBuilder('Behat\\Mink\\Element\\NodeElement')
-            ->disableOriginalConstructor()
-            ->getMock()
-        ;
-
-        $this->session
-            ->expects($this->exactly(2))
-            ->method('getPage')
-            ->will($this->returnValue($page))
-        ;
-
-        $page
-            ->expects($this->exactly(2))
-            ->method('find')
-            ->with('css', 'h2 > span')
-            ->will($this->returnValue($element))
-        ;
-
-        $element
-            ->expects($this->exactly(2))
-            ->method('getHtml')
-            ->will($this->returnValue('element html'))
-        ;
-
-        $this->assertCorrectAssertion('elementNotContains', array('css', 'h2 > span', 'text'));
-        $this->assertWrongAssertion(
-            'elementNotContains',
-            array('css', 'h2 > span', 'html'),
-            'Behat\\Mink\\Exception\\ExpectationException',
-            'The string "html" appears in the HTML of the element matching css "h2 > span", but it should not.'
-        );
-    }
-
-    public function testElementAttributeContains()
-    {
-        $page = $this->getMockBuilder('Behat\\Mink\\Element\\DocumentElement')
-            ->disableOriginalConstructor()
-            ->getMock()
-        ;
-
-        $element = $this->getMockBuilder('Behat\\Mink\\Element\\NodeElement')
-            ->disableOriginalConstructor()
-            ->getMock()
-        ;
-
-        $this->session
-            ->expects($this->exactly(2))
-            ->method('getPage')
-            ->will($this->returnValue($page))
-        ;
-
-        $page
-            ->expects($this->exactly(2))
-            ->method('find')
-            ->with('css', 'h2 > span')
-            ->will($this->returnValue($element))
-        ;
-
-        $element
-            ->expects($this->exactly(2))
-            ->method('hasAttribute')
-            ->will($this->returnValue(true))
-        ;
-
-        $element
-            ->expects($this->exactly(2))
-            ->method('getAttribute')
-            ->with('name')
-            ->will($this->returnValue('foo'))
-        ;
-
-        $this->assertCorrectAssertion('elementAttributeContains', array('css', 'h2 > span', 'name', 'foo'));
-        $this->assertWrongAssertion(
-            'elementAttributeContains',
-            array('css', 'h2 > span', 'name', 'bar'),
-            'Behat\\Mink\\Exception\\ElementHtmlException',
-            'The text "bar" was not found in the attribute "name" of the element matching css "h2 > span".'
-        );
-    }
-
-    public function testElementAttributeExists()
-    {
-        $page = $this->getMockBuilder('Behat\\Mink\\Element\\DocumentElement')
-            ->disableOriginalConstructor()
-            ->getMock()
-        ;
-
-        $element = $this->getMockBuilder('Behat\\Mink\\Element\\NodeElement')
-            ->disableOriginalConstructor()
-            ->getMock()
-        ;
-
-        $this->session
-            ->expects($this->exactly(2))
-            ->method('getPage')
-            ->will($this->returnValue($page))
-        ;
-
-        $page
-            ->expects($this->exactly(2))
-            ->method('find')
-            ->with('css', 'h2 > span')
-            ->will($this->returnValue($element))
-        ;
-
-        $element
-            ->expects($this->at(0))
-            ->method('hasAttribute')
-            ->with('name')
-            ->will($this->returnValue(true))
-        ;
-
-        $element
-            ->expects($this->at(1))
-            ->method('hasAttribute')
-            ->with('name')
-            ->will($this->returnValue(false))
-        ;
-
-        $this->assertCorrectAssertion('elementAttributeExists', array('css', 'h2 > span', 'name'));
-        $this->assertWrongAssertion(
-            'elementAttributeExists',
-            array('css', 'h2 > span', 'name'),
-            'Behat\\Mink\\Exception\\ElementHtmlException',
-            'The attribute "name" was not found in the element matching css "h2 > span".'
-        );
-    }
-
-    public function testElementAttributeNotContains()
-    {
-        $page = $this->getMockBuilder('Behat\\Mink\\Element\\DocumentElement')
-            ->disableOriginalConstructor()
-            ->getMock()
-        ;
-
-        $element = $this->getMockBuilder('Behat\\Mink\\Element\\NodeElement')
-            ->disableOriginalConstructor()
-            ->getMock()
-        ;
-
-        $this->session
-            ->expects($this->exactly(2))
-            ->method('getPage')
-            ->will($this->returnValue($page))
-        ;
-
-        $page
-            ->expects($this->exactly(2))
-            ->method('find')
-            ->with('css', 'h2 > span')
-            ->will($this->returnValue($element))
-        ;
-
-        $element
-            ->expects($this->exactly(2))
-            ->method('hasAttribute')
-            ->will($this->returnValue(true))
-        ;
-
-        $element
-            ->expects($this->exactly(2))
-            ->method('getAttribute')
-            ->with('name')
-            ->will($this->returnValue('foo'))
-        ;
-
-        $this->assertCorrectAssertion('elementAttributeNotContains', array('css', 'h2 > span', 'name', 'bar'));
-        $this->assertWrongAssertion(
-            'elementAttributeNotContains',
-            array('css', 'h2 > span', 'name', 'foo'),
-            'Behat\\Mink\\Exception\\ElementHtmlException',
-            'The text "foo" was found in the attribute "name" of the element matching css "h2 > span".'
-        );
-    }
-
-    public function testFieldExists()
-    {
-        $page = $this->getMockBuilder('Behat\\Mink\\Element\\DocumentElement')
-            ->disableOriginalConstructor()
-            ->getMock()
-        ;
-
-        $element = $this->getMockBuilder('Behat\\Mink\\Element\\NodeElement')
-            ->disableOriginalConstructor()
-            ->getMock()
-        ;
-
-        $this->session
-            ->expects($this->exactly(2))
-            ->method('getPage')
-            ->will($this->returnValue($page))
-        ;
-
-        $page
-            ->expects($this->exactly(2))
-            ->method('findField')
-            ->with('username')
-            ->will($this->onConsecutiveCalls($element, null))
-        ;
-
-        $this->assertCorrectAssertion('fieldExists', array('username'));
-        $this->assertWrongAssertion(
-            'fieldExists',
-            array('username'),
-            'Behat\\Mink\\Exception\\ElementNotFoundException',
-            'Form field with id|name|label|value "username" not found.'
-        );
-    }
-
-    public function testFieldNotExists()
-    {
-        $page = $this->getMockBuilder('Behat\\Mink\\Element\\DocumentElement')
-            ->disableOriginalConstructor()
-            ->getMock()
-        ;
-
-        $element = $this->getMockBuilder('Behat\\Mink\\Element\\NodeElement')
-            ->disableOriginalConstructor()
-            ->getMock()
-        ;
-
-        $this->session
-            ->expects($this->exactly(2))
-            ->method('getPage')
-            ->will($this->returnValue($page))
-        ;
-
-        $page
-            ->expects($this->exactly(2))
-            ->method('findField')
-            ->with('username')
-            ->will($this->onConsecutiveCalls(null, $element))
-        ;
-
-        $this->assertCorrectAssertion('fieldNotExists', array('username'));
-        $this->assertWrongAssertion(
-            'fieldNotExists',
-            array('username'),
-            'Behat\\Mink\\Exception\\ExpectationException',
-            'A field "username" appears on this page, but it should not.'
-        );
-    }
-
-    public function testFieldValueEquals()
-    {
-        $page = $this->getMockBuilder('Behat\\Mink\\Element\\DocumentElement')
-            ->disableOriginalConstructor()
-            ->getMock()
-        ;
-
-        $element = $this->getMockBuilder('Behat\\Mink\\Element\\NodeElement')
-            ->disableOriginalConstructor()
-            ->getMock()
-        ;
-
-        $this->session
-            ->expects($this->exactly(4))
-            ->method('getPage')
-            ->will($this->returnValue($page))
-        ;
-
-        $page
-            ->expects($this->exactly(4))
-            ->method('findField')
-            ->with('username')
-            ->will($this->returnValue($element))
-        ;
-
-        $element
-            ->expects($this->exactly(4))
-            ->method('getValue')
-            ->will($this->returnValue(234))
-        ;
-
-        $this->assertCorrectAssertion('fieldValueEquals', array('username', 234));
-        $this->assertWrongAssertion(
-            'fieldValueEquals',
-            array('username', 235),
-            'Behat\\Mink\\Exception\\ExpectationException',
-            'The field "username" value is "234", but "235" expected.'
-        );
-        $this->assertWrongAssertion(
-            'fieldValueEquals',
-            array('username', 23),
-            'Behat\\Mink\\Exception\\ExpectationException',
-            'The field "username" value is "234", but "23" expected.'
-        );
-        $this->assertWrongAssertion(
-            'fieldValueEquals',
-            array('username', ''),
-            'Behat\\Mink\\Exception\\ExpectationException',
-            'The field "username" value is "234", but "" expected.'
-        );
-    }
-
-    public function testFieldValueNotEquals()
-    {
-        $page = $this->getMockBuilder('Behat\\Mink\\Element\\DocumentElement')
-            ->disableOriginalConstructor()
-            ->getMock()
-        ;
-
-        $element = $this->getMockBuilder('Behat\\Mink\\Element\\NodeElement')
-            ->disableOriginalConstructor()
-            ->getMock()
-        ;
-
-        $this->session
-            ->expects($this->exactly(4))
-            ->method('getPage')
-            ->will($this->returnValue($page))
-        ;
-
-        $page
-            ->expects($this->exactly(4))
-            ->method('findField')
-            ->with('username')
-            ->will($this->returnValue($element))
-        ;
-
-        $element
-            ->expects($this->exactly(4))
-            ->method('getValue')
-            ->will($this->returnValue(235))
-        ;
-
-        $this->assertCorrectAssertion('fieldValueNotEquals', array('username', 234));
-        $this->assertWrongAssertion(
-            'fieldValueNotEquals',
-            array('username', 235),
-            'Behat\\Mink\\Exception\\ExpectationException',
-            'The field "username" value is "235", but it should not be.'
-        );
-        $this->assertCorrectAssertion('fieldValueNotEquals', array('username', 23));
-        $this->assertCorrectAssertion('fieldValueNotEquals', array('username', ''));
-    }
-
-    public function testCheckboxChecked()
-    {
-        $page = $this->getMockBuilder('Behat\\Mink\\Element\\DocumentElement')
-            ->disableOriginalConstructor()
-            ->getMock()
-        ;
-
-        $element = $this->getMockBuilder('Behat\\Mink\\Element\\NodeElement')
-            ->disableOriginalConstructor()
-            ->getMock()
-        ;
-
-        $this->session
-            ->expects($this->exactly(2))
-            ->method('getPage')
-            ->will($this->returnValue($page))
-        ;
-
-        $page
-            ->expects($this->exactly(2))
-            ->method('findField')
-            ->with('remember_me')
-            ->will($this->returnValue($element))
-        ;
-
-        $element
-            ->expects($this->exactly(2))
-            ->method('isChecked')
-            ->will($this->onConsecutiveCalls(true, false))
-        ;
-
-        $this->assertCorrectAssertion('checkboxChecked', array('remember_me'));
-        $this->assertWrongAssertion(
-            'checkboxChecked',
-            array('remember_me'),
-            'Behat\\Mink\\Exception\\ExpectationException',
-            'Checkbox "remember_me" is not checked, but it should be.'
-        );
-    }
-
-    public function testCheckboxNotChecked()
-    {
-        $page = $this->getMockBuilder('Behat\\Mink\\Element\\DocumentElement')
-            ->disableOriginalConstructor()
-            ->getMock()
-        ;
-
-        $element = $this->getMockBuilder('Behat\\Mink\\Element\\NodeElement')
-            ->disableOriginalConstructor()
-            ->getMock()
-        ;
-
-        $this->session
-            ->expects($this->exactly(2))
-            ->method('getPage')
-            ->will($this->returnValue($page))
-        ;
-
-        $page
-            ->expects($this->exactly(2))
-            ->method('findField')
-            ->with('remember_me')
-            ->will($this->returnValue($element))
-        ;
-
-        $element
-            ->expects($this->exactly(2))
-            ->method('isChecked')
-            ->will($this->onConsecutiveCalls(false, true))
-        ;
-
-        $this->assertCorrectAssertion('checkboxNotChecked', array('remember_me'));
-        $this->assertWrongAssertion(
-            'checkboxNotChecked',
-            array('remember_me'),
-            'Behat\\Mink\\Exception\\ExpectationException',
-            'Checkbox "remember_me" is checked, but it should not be.'
-        );
-    }
-
-    private function assertCorrectAssertion($assertion, $arguments)
-    {
-        try {
-            call_user_func_array(array($this->assert, $assertion), $arguments);
-        } catch (ExpectationException $e) {
-            $this->fail('Correct assertion should not throw an exception: '.$e->getMessage());
-        }
-    }
-
-    private function assertWrongAssertion($assertion, $arguments, $exceptionClass, $exceptionMessage)
-    {
-        if ('Behat\Mink\Exception\ExpectationException' !== $exceptionClass && !is_subclass_of($exceptionClass, 'Behat\Mink\Exception\ExpectationException')) {
-            throw new \LogicException('Wrong expected exception for the failed assertion. It should be a Behat\Mink\Exception\ExpectationException.');
-        }
-
-        try {
-            call_user_func_array(array($this->assert, $assertion), $arguments);
-            $this->fail('Wrong assertion should throw an exception');
-        } catch (ExpectationException $e) {
-            $this->assertInstanceOf($exceptionClass, $e);
-            $this->assertSame($exceptionMessage, $e->getMessage());
-        }
-    }
-}
diff --git a/vendor/composer/installed.json b/vendor/composer/installed.json
index fdd91a9..c321463 100644
--- a/vendor/composer/installed.json
+++ b/vendor/composer/installed.json
@@ -1,25 +1,39 @@
 [
     {
-        "name": "psr/log",
-        "version": "1.0.0",
-        "version_normalized": "1.0.0.0",
+        "name": "composer/installers",
+        "version": "v1.0.21",
+        "version_normalized": "1.0.21.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/php-fig/log.git",
-            "reference": "1.0.0"
+            "url": "https://github.com/composer/installers.git",
+            "reference": "d64e23fce42a4063d63262b19b8e7c0f3b5e4c45"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/php-fig/log/zipball/fe0936ee26643249e916849d48e3a51d5f5e278b",
-            "reference": "1.0.0",
+            "url": "https://api.github.com/repos/composer/installers/zipball/d64e23fce42a4063d63262b19b8e7c0f3b5e4c45",
+            "reference": "d64e23fce42a4063d63262b19b8e7c0f3b5e4c45",
             "shasum": ""
         },
-        "time": "2012-12-21 11:40:51",
-        "type": "library",
+        "replace": {
+            "roundcube/plugin-installer": "*",
+            "shama/baton": "*"
+        },
+        "require-dev": {
+            "composer/composer": "1.0.*@dev",
+            "phpunit/phpunit": "4.1.*"
+        },
+        "time": "2015-02-18 17:17:01",
+        "type": "composer-installer",
+        "extra": {
+            "class": "Composer\\Installers\\Installer",
+            "branch-alias": {
+                "dev-master": "1.0-dev"
+            }
+        },
         "installation-source": "dist",
         "autoload": {
             "psr-0": {
-                "Psr\\Log\\": ""
+                "Composer\\Installers\\": "src/"
             }
         },
         "notification-url": "https://packagist.org/downloads/",
@@ -28,57 +42,98 @@
         ],
         "authors": [
             {
-                "name": "PHP-FIG",
-                "homepage": "http://www.php-fig.org/"
+                "name": "Kyle Robinson Young",
+                "email": "kyle@dontkry.com",
+                "homepage": "https://github.com/shama"
             }
         ],
-        "description": "Common interface for logging libraries",
+        "description": "A multi-framework Composer library installer",
+        "homepage": "http://composer.github.com/installers/",
         "keywords": [
-            "log",
-            "psr",
-            "psr-3"
+            "Craft",
+            "Dolibarr",
+            "Hurad",
+            "MODX Evo",
+            "OXID",
+            "SMF",
+            "Thelia",
+            "WolfCMS",
+            "agl",
+            "aimeos",
+            "annotatecms",
+            "bitrix",
+            "cakephp",
+            "chef",
+            "codeigniter",
+            "concrete5",
+            "croogo",
+            "dokuwiki",
+            "drupal",
+            "elgg",
+            "fuelphp",
+            "grav",
+            "installer",
+            "joomla",
+            "kohana",
+            "laravel",
+            "lithium",
+            "magento",
+            "mako",
+            "mediawiki",
+            "modulework",
+            "moodle",
+            "phpbb",
+            "piwik",
+            "ppi",
+            "puppet",
+            "roundcube",
+            "shopware",
+            "silverstripe",
+            "symfony",
+            "typo3",
+            "wordpress",
+            "zend",
+            "zikula"
         ]
     },
     {
-        "name": "symfony-cmf/routing",
-        "version": "1.3.0",
-        "version_normalized": "1.3.0.0",
+        "name": "wikimedia/composer-merge-plugin",
+        "version": "dev-master",
+        "version_normalized": "9999999-dev",
         "source": {
             "type": "git",
-            "url": "https://github.com/symfony-cmf/Routing.git",
-            "reference": "8e87981d72c6930a27585dcd3119f3199f6cb2a6"
+            "url": "https://github.com/wikimedia/composer-merge-plugin.git",
+            "reference": "47bb3388cfeae41a38087ac8465a7d08fa92ea2e"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/symfony-cmf/Routing/zipball/8e87981d72c6930a27585dcd3119f3199f6cb2a6",
-            "reference": "8e87981d72c6930a27585dcd3119f3199f6cb2a6",
+            "url": "https://api.github.com/repos/wikimedia/composer-merge-plugin/zipball/47bb3388cfeae41a38087ac8465a7d08fa92ea2e",
+            "reference": "47bb3388cfeae41a38087ac8465a7d08fa92ea2e",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.3",
-            "psr/log": "~1.0",
-            "symfony/http-kernel": "~2.2",
-            "symfony/routing": "~2.2"
+            "composer-plugin-api": "^1.0",
+            "php": ">=5.3.2"
         },
         "require-dev": {
-            "symfony/config": "~2.2",
-            "symfony/dependency-injection": "~2.0@stable",
-            "symfony/event-dispatcher": "~2.1"
-        },
-        "suggest": {
-            "symfony/event-dispatcher": "DynamicRouter can optionally trigger an event at the start of matching. Minimal version ~2.1"
+            "composer/composer": "1.0.*@dev",
+            "jakub-onderka/php-parallel-lint": "~0.8",
+            "phpspec/prophecy-phpunit": "~1.0",
+            "phpunit/phpunit": "~4.0",
+            "squizlabs/php_codesniffer": "~2.1.0"
         },
-        "time": "2014-10-20 20:55:17",
-        "type": "library",
+        "time": "2015-09-22 21:14:25",
+        "type": "composer-plugin",
         "extra": {
             "branch-alias": {
-                "dev-master": "1.3-dev"
-            }
+                "dev-master": "1.3.x-dev"
+            },
+            "class": "Wikimedia\\Composer\\MergePlugin"
         },
         "installation-source": "dist",
         "autoload": {
             "psr-4": {
-                "Symfony\\Cmf\\Component\\Routing\\": ""
+                "Wikimedia\\Composer\\": "src/"
             }
         },
         "notification-url": "https://packagist.org/downloads/",
@@ -87,162 +142,163 @@
         ],
         "authors": [
             {
-                "name": "Symfony CMF Community",
-                "homepage": "https://github.com/symfony-cmf/Routing/contributors"
+                "name": "Bryan Davis",
+                "email": "bd808@wikimedia.org"
             }
         ],
-        "description": "Extends the Symfony2 routing component for dynamic routes and chaining several routers",
-        "homepage": "http://cmf.symfony.com",
-        "keywords": [
-            "database",
-            "routing"
-        ]
+        "description": "Composer plugin to merge multiple composer.json files"
     },
     {
-        "name": "sebastian/global-state",
+        "name": "composer/semver",
         "version": "1.0.0",
         "version_normalized": "1.0.0.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/sebastianbergmann/global-state.git",
-            "reference": "c7428acdb62ece0a45e6306f1ae85e1c05b09c01"
+            "url": "https://github.com/composer/semver.git",
+            "reference": "d0e1ccc6d44ab318b758d709e19176037da6b1ba"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/sebastianbergmann/global-state/zipball/c7428acdb62ece0a45e6306f1ae85e1c05b09c01",
-            "reference": "c7428acdb62ece0a45e6306f1ae85e1c05b09c01",
+            "url": "https://api.github.com/repos/composer/semver/zipball/d0e1ccc6d44ab318b758d709e19176037da6b1ba",
+            "reference": "d0e1ccc6d44ab318b758d709e19176037da6b1ba",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.3"
+            "php": ">=5.3.2"
         },
         "require-dev": {
-            "phpunit/phpunit": "~4.2"
-        },
-        "suggest": {
-            "ext-uopz": "*"
+            "phpunit/phpunit": "~4.5",
+            "phpunit/phpunit-mock-objects": "~2.3"
         },
-        "time": "2014-10-06 09:23:50",
+        "time": "2015-09-21 09:42:36",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "1.0-dev"
+                "dev-master": "0.1-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
-            "classmap": [
-                "src/"
-            ]
+            "psr-4": {
+                "Composer\\Semver\\": "src"
+            }
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
-            "BSD-3-Clause"
+            "MIT"
         ],
         "authors": [
             {
-                "name": "Sebastian Bergmann",
-                "email": "sebastian@phpunit.de"
+                "name": "Rob Bast",
+                "email": "rob.bast@gmail.com"
+            },
+            {
+                "name": "Nils Adermann",
+                "email": "naderman@naderman.de",
+                "homepage": "http://www.naderman.de"
+            },
+            {
+                "name": "Jordi Boggiano",
+                "email": "j.boggiano@seld.be",
+                "homepage": "http://seld.be"
             }
         ],
-        "description": "Snapshotting of global state",
-        "homepage": "http://www.github.com/sebastianbergmann/global-state",
+        "description": "Semver library that offers utilities, version constraint parsing and validation.",
         "keywords": [
-            "global state"
+            "semantic",
+            "semver",
+            "validation",
+            "versioning"
         ]
     },
     {
-        "name": "sebastian/diff",
-        "version": "1.3.0",
-        "version_normalized": "1.3.0.0",
+        "name": "doctrine/lexer",
+        "version": "v1.0.1",
+        "version_normalized": "1.0.1.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/sebastianbergmann/diff.git",
-            "reference": "863df9687835c62aa423a22412d26fa2ebde3fd3"
+            "url": "https://github.com/doctrine/lexer.git",
+            "reference": "83893c552fd2045dd78aef794c31e694c37c0b8c"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/863df9687835c62aa423a22412d26fa2ebde3fd3",
-            "reference": "863df9687835c62aa423a22412d26fa2ebde3fd3",
+            "url": "https://api.github.com/repos/doctrine/lexer/zipball/83893c552fd2045dd78aef794c31e694c37c0b8c",
+            "reference": "83893c552fd2045dd78aef794c31e694c37c0b8c",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.3"
-        },
-        "require-dev": {
-            "phpunit/phpunit": "~4.2"
+            "php": ">=5.3.2"
         },
-        "time": "2015-02-22 15:13:53",
+        "time": "2014-09-09 13:34:57",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "1.3-dev"
+                "dev-master": "1.0.x-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
-            "classmap": [
-                "src/"
-            ]
+            "psr-0": {
+                "Doctrine\\Common\\Lexer\\": "lib/"
+            }
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
-            "BSD-3-Clause"
+            "MIT"
         ],
         "authors": [
             {
-                "name": "Kore Nordmann",
-                "email": "mail@kore-nordmann.de"
+                "name": "Roman Borschel",
+                "email": "roman@code-factory.org"
             },
             {
-                "name": "Sebastian Bergmann",
-                "email": "sebastian@phpunit.de"
+                "name": "Guilherme Blanco",
+                "email": "guilhermeblanco@gmail.com"
+            },
+            {
+                "name": "Johannes Schmitt",
+                "email": "schmittjoh@gmail.com"
             }
         ],
-        "description": "Diff implementation",
-        "homepage": "http://www.github.com/sebastianbergmann/diff",
+        "description": "Base library for a lexer that can be used in Top-Down, Recursive Descent Parsers.",
+        "homepage": "http://www.doctrine-project.org",
         "keywords": [
-            "diff"
+            "lexer",
+            "parser"
         ]
     },
     {
-        "name": "phpdocumentor/reflection-docblock",
-        "version": "2.0.4",
-        "version_normalized": "2.0.4.0",
+        "name": "doctrine/inflector",
+        "version": "v1.0.1",
+        "version_normalized": "1.0.1.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/phpDocumentor/ReflectionDocBlock.git",
-            "reference": "d68dbdc53dc358a816f00b300704702b2eaff7b8"
+            "url": "https://github.com/doctrine/inflector.git",
+            "reference": "0bcb2e79d8571787f18b7eb036ed3d004908e604"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/phpDocumentor/ReflectionDocBlock/zipball/d68dbdc53dc358a816f00b300704702b2eaff7b8",
-            "reference": "d68dbdc53dc358a816f00b300704702b2eaff7b8",
+            "url": "https://api.github.com/repos/doctrine/inflector/zipball/0bcb2e79d8571787f18b7eb036ed3d004908e604",
+            "reference": "0bcb2e79d8571787f18b7eb036ed3d004908e604",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.3"
+            "php": ">=5.3.2"
         },
         "require-dev": {
-            "phpunit/phpunit": "~4.0"
-        },
-        "suggest": {
-            "dflydev/markdown": "~1.0",
-            "erusev/parsedown": "~1.0"
+            "phpunit/phpunit": "4.*"
         },
-        "time": "2015-02-03 12:10:50",
+        "time": "2014-12-20 21:24:13",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "2.0.x-dev"
+                "dev-master": "1.0.x-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
             "psr-0": {
-                "phpDocumentor": [
-                    "src/"
-                ]
+                "Doctrine\\Common\\Inflector\\": "lib/"
             }
         },
         "notification-url": "https://packagist.org/downloads/",
@@ -251,40 +307,67 @@
         ],
         "authors": [
             {
-                "name": "Mike van Riel",
-                "email": "mike.vanriel@naenius.com"
+                "name": "Roman Borschel",
+                "email": "roman@code-factory.org"
+            },
+            {
+                "name": "Benjamin Eberlei",
+                "email": "kontakt@beberlei.de"
+            },
+            {
+                "name": "Guilherme Blanco",
+                "email": "guilhermeblanco@gmail.com"
+            },
+            {
+                "name": "Jonathan Wage",
+                "email": "jonwage@gmail.com"
+            },
+            {
+                "name": "Johannes Schmitt",
+                "email": "schmittjoh@gmail.com"
             }
+        ],
+        "description": "Common String Manipulations with regard to casing and singular/plural rules.",
+        "homepage": "http://www.doctrine-project.org",
+        "keywords": [
+            "inflection",
+            "pluralize",
+            "singularize",
+            "string"
         ]
     },
     {
-        "name": "doctrine/lexer",
-        "version": "v1.0.1",
-        "version_normalized": "1.0.1.0",
+        "name": "doctrine/collections",
+        "version": "v1.3.0",
+        "version_normalized": "1.3.0.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/doctrine/lexer.git",
-            "reference": "83893c552fd2045dd78aef794c31e694c37c0b8c"
+            "url": "https://github.com/doctrine/collections.git",
+            "reference": "6c1e4eef75f310ea1b3e30945e9f06e652128b8a"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/doctrine/lexer/zipball/83893c552fd2045dd78aef794c31e694c37c0b8c",
-            "reference": "83893c552fd2045dd78aef794c31e694c37c0b8c",
+            "url": "https://api.github.com/repos/doctrine/collections/zipball/6c1e4eef75f310ea1b3e30945e9f06e652128b8a",
+            "reference": "6c1e4eef75f310ea1b3e30945e9f06e652128b8a",
             "shasum": ""
         },
         "require": {
             "php": ">=5.3.2"
         },
-        "time": "2014-09-09 13:34:57",
+        "require-dev": {
+            "phpunit/phpunit": "~4.0"
+        },
+        "time": "2015-04-14 22:21:58",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "1.0.x-dev"
+                "dev-master": "1.2.x-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
             "psr-0": {
-                "Doctrine\\Common\\Lexer\\": "lib/"
+                "Doctrine\\Common\\Collections\\": "lib/"
             }
         },
         "notification-url": "https://packagist.org/downloads/",
@@ -297,50 +380,67 @@
                 "email": "roman@code-factory.org"
             },
             {
+                "name": "Benjamin Eberlei",
+                "email": "kontakt@beberlei.de"
+            },
+            {
                 "name": "Guilherme Blanco",
                 "email": "guilhermeblanco@gmail.com"
             },
             {
+                "name": "Jonathan Wage",
+                "email": "jonwage@gmail.com"
+            },
+            {
                 "name": "Johannes Schmitt",
                 "email": "schmittjoh@gmail.com"
             }
         ],
-        "description": "Base library for a lexer that can be used in Top-Down, Recursive Descent Parsers.",
+        "description": "Collections Abstraction library",
         "homepage": "http://www.doctrine-project.org",
         "keywords": [
-            "lexer",
-            "parser"
+            "array",
+            "collections",
+            "iterator"
         ]
     },
     {
-        "name": "psr/http-message",
-        "version": "1.0",
-        "version_normalized": "1.0.0.0",
+        "name": "doctrine/cache",
+        "version": "v1.4.2",
+        "version_normalized": "1.4.2.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/php-fig/http-message.git",
-            "reference": "85d63699f0dbedb190bbd4b0d2b9dc707ea4c298"
+            "url": "https://github.com/doctrine/cache.git",
+            "reference": "8c434000f420ade76a07c64cbe08ca47e5c101ca"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/php-fig/http-message/zipball/85d63699f0dbedb190bbd4b0d2b9dc707ea4c298",
-            "reference": "85d63699f0dbedb190bbd4b0d2b9dc707ea4c298",
+            "url": "https://api.github.com/repos/doctrine/cache/zipball/8c434000f420ade76a07c64cbe08ca47e5c101ca",
+            "reference": "8c434000f420ade76a07c64cbe08ca47e5c101ca",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.0"
+            "php": ">=5.3.2"
         },
-        "time": "2015-05-04 20:22:00",
+        "conflict": {
+            "doctrine/common": ">2.2,<2.4"
+        },
+        "require-dev": {
+            "phpunit/phpunit": ">=3.7",
+            "predis/predis": "~1.0",
+            "satooshi/php-coveralls": "~0.6"
+        },
+        "time": "2015-08-31 12:36:41",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "1.0.x-dev"
+                "dev-master": "1.5.x-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
-            "psr-4": {
-                "Psr\\Http\\Message\\": "src/"
+            "psr-0": {
+                "Doctrine\\Common\\Cache\\": "lib/"
             }
         },
         "notification-url": "https://packagist.org/downloads/",
@@ -349,52 +449,67 @@
         ],
         "authors": [
             {
-                "name": "PHP-FIG",
-                "homepage": "http://www.php-fig.org/"
+                "name": "Roman Borschel",
+                "email": "roman@code-factory.org"
+            },
+            {
+                "name": "Benjamin Eberlei",
+                "email": "kontakt@beberlei.de"
+            },
+            {
+                "name": "Guilherme Blanco",
+                "email": "guilhermeblanco@gmail.com"
+            },
+            {
+                "name": "Jonathan Wage",
+                "email": "jonwage@gmail.com"
+            },
+            {
+                "name": "Johannes Schmitt",
+                "email": "schmittjoh@gmail.com"
             }
         ],
-        "description": "Common interface for HTTP messages",
+        "description": "Caching library offering an object-oriented API for many cache backends",
+        "homepage": "http://www.doctrine-project.org",
         "keywords": [
-            "http",
-            "http-message",
-            "psr",
-            "psr-7",
-            "request",
-            "response"
+            "cache",
+            "caching"
         ]
     },
     {
-        "name": "symfony/psr-http-message-bridge",
-        "version": "v0.2",
-        "version_normalized": "0.2.0.0",
+        "name": "doctrine/annotations",
+        "version": "v1.2.7",
+        "version_normalized": "1.2.7.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/symfony/psr-http-message-bridge.git",
-            "reference": "dc7e308e1dc2898a46776e2221a643cb08315453"
+            "url": "https://github.com/doctrine/annotations.git",
+            "reference": "f25c8aab83e0c3e976fd7d19875f198ccf2f7535"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/symfony/psr-http-message-bridge/zipball/dc7e308e1dc2898a46776e2221a643cb08315453",
-            "reference": "dc7e308e1dc2898a46776e2221a643cb08315453",
+            "url": "https://api.github.com/repos/doctrine/annotations/zipball/f25c8aab83e0c3e976fd7d19875f198ccf2f7535",
+            "reference": "f25c8aab83e0c3e976fd7d19875f198ccf2f7535",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.3",
-            "psr/http-message": "~1.0",
-            "symfony/http-foundation": "~2.3|~3.0"
+            "doctrine/lexer": "1.*",
+            "php": ">=5.3.2"
         },
         "require-dev": {
-            "symfony/phpunit-bridge": "~2.7|~3.0"
+            "doctrine/cache": "1.*",
+            "phpunit/phpunit": "4.*"
         },
-        "suggest": {
-            "zendframework/zend-diactoros": "To use the Zend Diactoros factory"
+        "time": "2015-08-31 12:32:49",
+        "type": "library",
+        "extra": {
+            "branch-alias": {
+                "dev-master": "1.3.x-dev"
+            }
         },
-        "time": "2015-05-29 17:57:12",
-        "type": "symfony-bridge",
         "installation-source": "dist",
         "autoload": {
-            "psr-4": {
-                "Symfony\\Bridge\\PsrHttpMessage\\": ""
+            "psr-0": {
+                "Doctrine\\Common\\Annotations\\": "lib/"
             }
         },
         "notification-url": "https://packagist.org/downloads/",
@@ -403,56 +518,71 @@
         ],
         "authors": [
             {
-                "name": "Symfony Community",
-                "homepage": "http://symfony.com/contributors"
+                "name": "Roman Borschel",
+                "email": "roman@code-factory.org"
             },
             {
-                "name": "Fabien Potencier",
-                "email": "fabien@symfony.com"
+                "name": "Benjamin Eberlei",
+                "email": "kontakt@beberlei.de"
+            },
+            {
+                "name": "Guilherme Blanco",
+                "email": "guilhermeblanco@gmail.com"
+            },
+            {
+                "name": "Jonathan Wage",
+                "email": "jonwage@gmail.com"
+            },
+            {
+                "name": "Johannes Schmitt",
+                "email": "schmittjoh@gmail.com"
             }
         ],
-        "description": "PSR HTTP message bridge",
-        "homepage": "http://symfony.com",
+        "description": "Docblock Annotations Parser",
+        "homepage": "http://www.doctrine-project.org",
         "keywords": [
-            "http",
-            "http-message",
-            "psr-7"
+            "annotations",
+            "docblock",
+            "parser"
         ]
     },
     {
-        "name": "egulias/email-validator",
-        "version": "1.2.9",
-        "version_normalized": "1.2.9.0",
+        "name": "doctrine/common",
+        "version": "v2.5.1",
+        "version_normalized": "2.5.1.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/egulias/EmailValidator.git",
-            "reference": "af864423f50ea59f96c87bb1eae147a70bcf67a1"
+            "url": "https://github.com/doctrine/common.git",
+            "reference": "0009b8f0d4a917aabc971fb089eba80e872f83f9"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/egulias/EmailValidator/zipball/af864423f50ea59f96c87bb1eae147a70bcf67a1",
-            "reference": "af864423f50ea59f96c87bb1eae147a70bcf67a1",
+            "url": "https://api.github.com/repos/doctrine/common/zipball/0009b8f0d4a917aabc971fb089eba80e872f83f9",
+            "reference": "0009b8f0d4a917aabc971fb089eba80e872f83f9",
             "shasum": ""
         },
         "require": {
-            "doctrine/lexer": "~1.0,>=1.0.1",
-            "php": ">= 5.3.3"
+            "doctrine/annotations": "1.*",
+            "doctrine/cache": "1.*",
+            "doctrine/collections": "1.*",
+            "doctrine/inflector": "1.*",
+            "doctrine/lexer": "1.*",
+            "php": ">=5.3.2"
         },
         "require-dev": {
-            "phpunit/phpunit": "~4.4",
-            "satooshi/php-coveralls": "dev-master"
+            "phpunit/phpunit": "~3.7"
         },
-        "time": "2015-06-22 21:07:51",
+        "time": "2015-08-31 13:00:22",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "2.0.x-dev"
+                "dev-master": "2.6.x-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
             "psr-0": {
-                "Egulias\\": "src/"
+                "Doctrine\\Common\\": "lib/"
             }
         },
         "notification-url": "https://packagist.org/downloads/",
@@ -461,18 +591,154 @@
         ],
         "authors": [
             {
-                "name": "Eduardo Gulias Davis"
-            }
-        ],
-        "description": "A library for validating emails",
-        "homepage": "https://github.com/egulias/EmailValidator",
-        "keywords": [
-            "email",
-            "emailvalidation",
-            "emailvalidator",
-            "validation",
-            "validator"
-        ]
+                "name": "Roman Borschel",
+                "email": "roman@code-factory.org"
+            },
+            {
+                "name": "Benjamin Eberlei",
+                "email": "kontakt@beberlei.de"
+            },
+            {
+                "name": "Guilherme Blanco",
+                "email": "guilhermeblanco@gmail.com"
+            },
+            {
+                "name": "Jonathan Wage",
+                "email": "jonwage@gmail.com"
+            },
+            {
+                "name": "Johannes Schmitt",
+                "email": "schmittjoh@gmail.com"
+            }
+        ],
+        "description": "Common Library for Doctrine projects",
+        "homepage": "http://www.doctrine-project.org",
+        "keywords": [
+            "annotations",
+            "collections",
+            "eventmanager",
+            "persistence",
+            "spl"
+        ]
+    },
+    {
+        "name": "easyrdf/easyrdf",
+        "version": "0.9.1",
+        "version_normalized": "0.9.1.0",
+        "source": {
+            "type": "git",
+            "url": "https://github.com/njh/easyrdf.git",
+            "reference": "acd09dfe0555fbcfa254291e433c45fdd4652566"
+        },
+        "dist": {
+            "type": "zip",
+            "url": "https://api.github.com/repos/njh/easyrdf/zipball/acd09dfe0555fbcfa254291e433c45fdd4652566",
+            "reference": "acd09dfe0555fbcfa254291e433c45fdd4652566",
+            "shasum": ""
+        },
+        "require": {
+            "ext-mbstring": "*",
+            "ext-pcre": "*",
+            "php": ">=5.2.8"
+        },
+        "require-dev": {
+            "phpunit/phpunit": "~3.5",
+            "sami/sami": "~1.4",
+            "squizlabs/php_codesniffer": "~1.4.3"
+        },
+        "suggest": {
+            "ml/json-ld": "~1.0"
+        },
+        "time": "2015-02-27 09:45:49",
+        "type": "library",
+        "installation-source": "dist",
+        "autoload": {
+            "psr-0": {
+                "EasyRdf_": "lib/"
+            }
+        },
+        "notification-url": "https://packagist.org/downloads/",
+        "license": [
+            "BSD-3-Clause"
+        ],
+        "authors": [
+            {
+                "name": "Nicholas Humfrey",
+                "email": "njh@aelius.com",
+                "homepage": "http://www.aelius.com/njh/",
+                "role": "Developer"
+            },
+            {
+                "name": "Alexey Zakhlestin",
+                "email": "indeyets@gmail.com",
+                "role": "Developer"
+            }
+        ],
+        "description": "EasyRdf is a PHP library designed to make it easy to consume and produce RDF.",
+        "homepage": "http://www.easyrdf.org/",
+        "keywords": [
+            "Linked Data",
+            "RDF",
+            "Semantic Web",
+            "Turtle",
+            "rdfa",
+            "sparql"
+        ]
+    },
+    {
+        "name": "egulias/email-validator",
+        "version": "1.2.9",
+        "version_normalized": "1.2.9.0",
+        "source": {
+            "type": "git",
+            "url": "https://github.com/egulias/EmailValidator.git",
+            "reference": "af864423f50ea59f96c87bb1eae147a70bcf67a1"
+        },
+        "dist": {
+            "type": "zip",
+            "url": "https://api.github.com/repos/egulias/EmailValidator/zipball/af864423f50ea59f96c87bb1eae147a70bcf67a1",
+            "reference": "af864423f50ea59f96c87bb1eae147a70bcf67a1",
+            "shasum": ""
+        },
+        "require": {
+            "doctrine/lexer": "~1.0,>=1.0.1",
+            "php": ">= 5.3.3"
+        },
+        "require-dev": {
+            "phpunit/phpunit": "~4.4",
+            "satooshi/php-coveralls": "dev-master"
+        },
+        "time": "2015-06-22 21:07:51",
+        "type": "library",
+        "extra": {
+            "branch-alias": {
+                "dev-master": "2.0.x-dev"
+            }
+        },
+        "installation-source": "dist",
+        "autoload": {
+            "psr-0": {
+                "Egulias\\": "src/"
+            }
+        },
+        "notification-url": "https://packagist.org/downloads/",
+        "license": [
+            "MIT"
+        ],
+        "authors": [
+            {
+                "name": "Eduardo Gulias Davis"
+            }
+        ],
+        "description": "A library for validating emails",
+        "homepage": "https://github.com/egulias/EmailValidator",
+        "keywords": [
+            "email",
+            "emailvalidation",
+            "emailvalidator",
+            "validation",
+            "validator"
+        ]
     },
     {
         "name": "guzzlehttp/promises",
@@ -528,6 +794,57 @@
         ]
     },
     {
+        "name": "psr/http-message",
+        "version": "1.0",
+        "version_normalized": "1.0.0.0",
+        "source": {
+            "type": "git",
+            "url": "https://github.com/php-fig/http-message.git",
+            "reference": "85d63699f0dbedb190bbd4b0d2b9dc707ea4c298"
+        },
+        "dist": {
+            "type": "zip",
+            "url": "https://api.github.com/repos/php-fig/http-message/zipball/85d63699f0dbedb190bbd4b0d2b9dc707ea4c298",
+            "reference": "85d63699f0dbedb190bbd4b0d2b9dc707ea4c298",
+            "shasum": ""
+        },
+        "require": {
+            "php": ">=5.3.0"
+        },
+        "time": "2015-05-04 20:22:00",
+        "type": "library",
+        "extra": {
+            "branch-alias": {
+                "dev-master": "1.0.x-dev"
+            }
+        },
+        "installation-source": "dist",
+        "autoload": {
+            "psr-4": {
+                "Psr\\Http\\Message\\": "src/"
+            }
+        },
+        "notification-url": "https://packagist.org/downloads/",
+        "license": [
+            "MIT"
+        ],
+        "authors": [
+            {
+                "name": "PHP-FIG",
+                "homepage": "http://www.php-fig.org/"
+            }
+        ],
+        "description": "Common interface for HTTP messages",
+        "keywords": [
+            "http",
+            "http-message",
+            "psr",
+            "psr-7",
+            "request",
+            "response"
+        ]
+    },
+    {
         "name": "guzzlehttp/psr7",
         "version": "1.2.0",
         "version_normalized": "1.2.0.0",
@@ -588,42 +905,40 @@
         ]
     },
     {
-        "name": "doctrine/common",
-        "version": "v2.5.1",
-        "version_normalized": "2.5.1.0",
+        "name": "masterminds/html5",
+        "version": "2.1.2",
+        "version_normalized": "2.1.2.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/doctrine/common.git",
-            "reference": "0009b8f0d4a917aabc971fb089eba80e872f83f9"
+            "url": "https://github.com/Masterminds/html5-php.git",
+            "reference": "8f782e0f01a6e33a319bdc8f6de9cfd6569979a4"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/doctrine/common/zipball/0009b8f0d4a917aabc971fb089eba80e872f83f9",
-            "reference": "0009b8f0d4a917aabc971fb089eba80e872f83f9",
+            "url": "https://api.github.com/repos/Masterminds/html5-php/zipball/8f782e0f01a6e33a319bdc8f6de9cfd6569979a4",
+            "reference": "8f782e0f01a6e33a319bdc8f6de9cfd6569979a4",
             "shasum": ""
         },
         "require": {
-            "doctrine/annotations": "1.*",
-            "doctrine/cache": "1.*",
-            "doctrine/collections": "1.*",
-            "doctrine/inflector": "1.*",
-            "doctrine/lexer": "1.*",
-            "php": ">=5.3.2"
+            "ext-libxml": "*",
+            "php": ">=5.3.0"
         },
         "require-dev": {
-            "phpunit/phpunit": "~3.7"
+            "phpunit/phpunit": "4.*",
+            "sami/sami": "~2.0",
+            "satooshi/php-coveralls": "0.6.*"
         },
-        "time": "2015-08-31 13:00:22",
+        "time": "2015-06-07 08:43:18",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "2.6.x-dev"
+                "dev-master": "2.1-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
-            "psr-0": {
-                "Doctrine\\Common\\": "lib/"
+            "psr-4": {
+                "Masterminds\\": "src"
             }
         },
         "notification-url": "https://packagist.org/downloads/",
@@ -632,71 +947,67 @@
         ],
         "authors": [
             {
-                "name": "Roman Borschel",
-                "email": "roman@code-factory.org"
-            },
-            {
-                "name": "Benjamin Eberlei",
-                "email": "kontakt@beberlei.de"
-            },
-            {
-                "name": "Guilherme Blanco",
-                "email": "guilhermeblanco@gmail.com"
+                "name": "Matt Butcher",
+                "email": "technosophos@gmail.com"
             },
             {
-                "name": "Jonathan Wage",
-                "email": "jonwage@gmail.com"
+                "name": "Asmir Mustafic",
+                "email": "goetas@gmail.com"
             },
             {
-                "name": "Johannes Schmitt",
-                "email": "schmittjoh@gmail.com"
+                "name": "Matt Farina",
+                "email": "matt@mattfarina.com"
             }
         ],
-        "description": "Common Library for Doctrine projects",
-        "homepage": "http://www.doctrine-project.org",
-        "keywords": [
-            "annotations",
-            "collections",
-            "eventmanager",
-            "persistence",
-            "spl"
+        "description": "An HTML5 parser and serializer.",
+        "homepage": "http://masterminds.github.io/html5-php",
+        "keywords": [
+            "HTML5",
+            "dom",
+            "html",
+            "parser",
+            "querypath",
+            "serializer",
+            "xml"
         ]
     },
     {
-        "name": "doctrine/annotations",
-        "version": "v1.2.7",
-        "version_normalized": "1.2.7.0",
+        "name": "symfony/http-foundation",
+        "version": "v2.7.5",
+        "version_normalized": "2.7.5.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/doctrine/annotations.git",
-            "reference": "f25c8aab83e0c3e976fd7d19875f198ccf2f7535"
+            "url": "https://github.com/symfony/http-foundation.git",
+            "reference": "e1509119f164a0d0a940d7d924d693a7a28a5470"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/doctrine/annotations/zipball/f25c8aab83e0c3e976fd7d19875f198ccf2f7535",
-            "reference": "f25c8aab83e0c3e976fd7d19875f198ccf2f7535",
+            "url": "https://api.github.com/repos/symfony/http-foundation/zipball/e1509119f164a0d0a940d7d924d693a7a28a5470",
+            "reference": "e1509119f164a0d0a940d7d924d693a7a28a5470",
             "shasum": ""
         },
         "require": {
-            "doctrine/lexer": "1.*",
-            "php": ">=5.3.2"
+            "php": ">=5.3.9"
         },
         "require-dev": {
-            "doctrine/cache": "1.*",
-            "phpunit/phpunit": "4.*"
+            "symfony/expression-language": "~2.4",
+            "symfony/phpunit-bridge": "~2.7"
         },
-        "time": "2015-08-31 12:32:49",
+        "time": "2015-09-22 13:49:29",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "1.3.x-dev"
+                "dev-master": "2.7-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
-            "psr-0": {
-                "Doctrine\\Common\\Annotations\\": "lib/"
-            }
+            "psr-4": {
+                "Symfony\\Component\\HttpFoundation\\": ""
+            },
+            "classmap": [
+                "Resources/stubs"
+            ]
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
@@ -704,70 +1015,58 @@
         ],
         "authors": [
             {
-                "name": "Roman Borschel",
-                "email": "roman@code-factory.org"
-            },
-            {
-                "name": "Benjamin Eberlei",
-                "email": "kontakt@beberlei.de"
-            },
-            {
-                "name": "Guilherme Blanco",
-                "email": "guilhermeblanco@gmail.com"
-            },
-            {
-                "name": "Jonathan Wage",
-                "email": "jonwage@gmail.com"
+                "name": "Fabien Potencier",
+                "email": "fabien@symfony.com"
             },
             {
-                "name": "Johannes Schmitt",
-                "email": "schmittjoh@gmail.com"
+                "name": "Symfony Community",
+                "homepage": "https://symfony.com/contributors"
             }
         ],
-        "description": "Docblock Annotations Parser",
-        "homepage": "http://www.doctrine-project.org",
-        "keywords": [
-            "annotations",
-            "docblock",
-            "parser"
-        ]
+        "description": "Symfony HttpFoundation Component",
+        "homepage": "https://symfony.com"
     },
     {
-        "name": "doctrine/instantiator",
-        "version": "1.0.5",
-        "version_normalized": "1.0.5.0",
+        "name": "symfony/event-dispatcher",
+        "version": "v2.7.5",
+        "version_normalized": "2.7.5.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/doctrine/instantiator.git",
-            "reference": "8e884e78f9f0eb1329e445619e04456e64d8051d"
+            "url": "https://github.com/symfony/event-dispatcher.git",
+            "reference": "ae4dcc2a8d3de98bd794167a3ccda1311597c5d9"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/doctrine/instantiator/zipball/8e884e78f9f0eb1329e445619e04456e64d8051d",
-            "reference": "8e884e78f9f0eb1329e445619e04456e64d8051d",
+            "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/ae4dcc2a8d3de98bd794167a3ccda1311597c5d9",
+            "reference": "ae4dcc2a8d3de98bd794167a3ccda1311597c5d9",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3,<8.0-DEV"
+            "php": ">=5.3.9"
         },
         "require-dev": {
-            "athletic/athletic": "~0.1.8",
-            "ext-pdo": "*",
-            "ext-phar": "*",
-            "phpunit/phpunit": "~4.0",
-            "squizlabs/php_codesniffer": "~2.0"
+            "psr/log": "~1.0",
+            "symfony/config": "~2.0,>=2.0.5",
+            "symfony/dependency-injection": "~2.6",
+            "symfony/expression-language": "~2.6",
+            "symfony/phpunit-bridge": "~2.7",
+            "symfony/stopwatch": "~2.3"
         },
-        "time": "2015-06-14 21:17:01",
+        "suggest": {
+            "symfony/dependency-injection": "",
+            "symfony/http-kernel": ""
+        },
+        "time": "2015-09-22 13:49:29",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "1.0.x-dev"
+                "dev-master": "2.7-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
             "psr-4": {
-                "Doctrine\\Instantiator\\": "src/Doctrine/Instantiator/"
+                "Symfony\\Component\\EventDispatcher\\": ""
             }
         },
         "notification-url": "https://packagist.org/downloads/",
@@ -776,55 +1075,38 @@
         ],
         "authors": [
             {
-                "name": "Marco Pivetta",
-                "email": "ocramius@gmail.com",
-                "homepage": "http://ocramius.github.com/"
+                "name": "Fabien Potencier",
+                "email": "fabien@symfony.com"
+            },
+            {
+                "name": "Symfony Community",
+                "homepage": "https://symfony.com/contributors"
             }
         ],
-        "description": "A small, lightweight utility to instantiate objects in PHP without invoking their constructors",
-        "homepage": "https://github.com/doctrine/instantiator",
-        "keywords": [
-            "constructor",
-            "instantiate"
-        ]
+        "description": "Symfony EventDispatcher Component",
+        "homepage": "https://symfony.com"
     },
     {
-        "name": "doctrine/cache",
-        "version": "v1.4.2",
-        "version_normalized": "1.4.2.0",
+        "name": "psr/log",
+        "version": "1.0.0",
+        "version_normalized": "1.0.0.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/doctrine/cache.git",
-            "reference": "8c434000f420ade76a07c64cbe08ca47e5c101ca"
+            "url": "https://github.com/php-fig/log.git",
+            "reference": "1.0.0"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/doctrine/cache/zipball/8c434000f420ade76a07c64cbe08ca47e5c101ca",
-            "reference": "8c434000f420ade76a07c64cbe08ca47e5c101ca",
+            "url": "https://api.github.com/repos/php-fig/log/zipball/fe0936ee26643249e916849d48e3a51d5f5e278b",
+            "reference": "1.0.0",
             "shasum": ""
         },
-        "require": {
-            "php": ">=5.3.2"
-        },
-        "conflict": {
-            "doctrine/common": ">2.2,<2.4"
-        },
-        "require-dev": {
-            "phpunit/phpunit": ">=3.7",
-            "predis/predis": "~1.0",
-            "satooshi/php-coveralls": "~0.6"
-        },
-        "time": "2015-08-31 12:36:41",
+        "time": "2012-12-21 11:40:51",
         "type": "library",
-        "extra": {
-            "branch-alias": {
-                "dev-master": "1.5.x-dev"
-            }
-        },
         "installation-source": "dist",
         "autoload": {
             "psr-0": {
-                "Doctrine\\Common\\Cache\\": "lib/"
+                "Psr\\Log\\": ""
             }
         },
         "notification-url": "https://packagist.org/downloads/",
@@ -833,65 +1115,55 @@
         ],
         "authors": [
             {
-                "name": "Roman Borschel",
-                "email": "roman@code-factory.org"
-            },
-            {
-                "name": "Benjamin Eberlei",
-                "email": "kontakt@beberlei.de"
-            },
-            {
-                "name": "Guilherme Blanco",
-                "email": "guilhermeblanco@gmail.com"
-            },
-            {
-                "name": "Jonathan Wage",
-                "email": "jonwage@gmail.com"
-            },
-            {
-                "name": "Johannes Schmitt",
-                "email": "schmittjoh@gmail.com"
+                "name": "PHP-FIG",
+                "homepage": "http://www.php-fig.org/"
             }
         ],
-        "description": "Caching library offering an object-oriented API for many cache backends",
-        "homepage": "http://www.doctrine-project.org",
+        "description": "Common interface for logging libraries",
         "keywords": [
-            "cache",
-            "caching"
+            "log",
+            "psr",
+            "psr-3"
         ]
     },
     {
-        "name": "doctrine/collections",
-        "version": "v1.3.0",
-        "version_normalized": "1.3.0.0",
+        "name": "symfony/debug",
+        "version": "v2.7.5",
+        "version_normalized": "2.7.5.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/doctrine/collections.git",
-            "reference": "6c1e4eef75f310ea1b3e30945e9f06e652128b8a"
+            "url": "https://github.com/symfony/debug.git",
+            "reference": "c79c361bca8e5ada6a47603875a3c964d03b67b1"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/doctrine/collections/zipball/6c1e4eef75f310ea1b3e30945e9f06e652128b8a",
-            "reference": "6c1e4eef75f310ea1b3e30945e9f06e652128b8a",
+            "url": "https://api.github.com/repos/symfony/debug/zipball/c79c361bca8e5ada6a47603875a3c964d03b67b1",
+            "reference": "c79c361bca8e5ada6a47603875a3c964d03b67b1",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.2"
+            "php": ">=5.3.9",
+            "psr/log": "~1.0"
+        },
+        "conflict": {
+            "symfony/http-kernel": ">=2.3,<2.3.24|~2.4.0|>=2.5,<2.5.9|>=2.6,<2.6.2"
         },
         "require-dev": {
-            "phpunit/phpunit": "~4.0"
+            "symfony/class-loader": "~2.2",
+            "symfony/http-kernel": "~2.3.24|~2.5.9|~2.6,>=2.6.2",
+            "symfony/phpunit-bridge": "~2.7"
         },
-        "time": "2015-04-14 22:21:58",
+        "time": "2015-09-14 08:41:38",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "1.2.x-dev"
+                "dev-master": "2.7-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
-            "psr-0": {
-                "Doctrine\\Common\\Collections\\": "lib/"
+            "psr-4": {
+                "Symfony\\Component\\Debug\\": ""
             }
         },
         "notification-url": "https://packagist.org/downloads/",
@@ -900,66 +1172,80 @@
         ],
         "authors": [
             {
-                "name": "Roman Borschel",
-                "email": "roman@code-factory.org"
-            },
-            {
-                "name": "Benjamin Eberlei",
-                "email": "kontakt@beberlei.de"
-            },
-            {
-                "name": "Guilherme Blanco",
-                "email": "guilhermeblanco@gmail.com"
-            },
-            {
-                "name": "Jonathan Wage",
-                "email": "jonwage@gmail.com"
+                "name": "Fabien Potencier",
+                "email": "fabien@symfony.com"
             },
             {
-                "name": "Johannes Schmitt",
-                "email": "schmittjoh@gmail.com"
+                "name": "Symfony Community",
+                "homepage": "https://symfony.com/contributors"
             }
         ],
-        "description": "Collections Abstraction library",
-        "homepage": "http://www.doctrine-project.org",
-        "keywords": [
-            "array",
-            "collections",
-            "iterator"
-        ]
+        "description": "Symfony Debug Component",
+        "homepage": "https://symfony.com"
     },
     {
-        "name": "doctrine/inflector",
-        "version": "v1.0.1",
-        "version_normalized": "1.0.1.0",
+        "name": "symfony/http-kernel",
+        "version": "v2.7.5",
+        "version_normalized": "2.7.5.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/doctrine/inflector.git",
-            "reference": "0bcb2e79d8571787f18b7eb036ed3d004908e604"
+            "url": "https://github.com/symfony/http-kernel.git",
+            "reference": "353aa457424262d7d4e4289ea483145921cffcb5"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/doctrine/inflector/zipball/0bcb2e79d8571787f18b7eb036ed3d004908e604",
-            "reference": "0bcb2e79d8571787f18b7eb036ed3d004908e604",
+            "url": "https://api.github.com/repos/symfony/http-kernel/zipball/353aa457424262d7d4e4289ea483145921cffcb5",
+            "reference": "353aa457424262d7d4e4289ea483145921cffcb5",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.2"
+            "php": ">=5.3.9",
+            "psr/log": "~1.0",
+            "symfony/debug": "~2.6,>=2.6.2",
+            "symfony/event-dispatcher": "~2.6,>=2.6.7",
+            "symfony/http-foundation": "~2.5,>=2.5.4"
+        },
+        "conflict": {
+            "symfony/config": "<2.7"
         },
         "require-dev": {
-            "phpunit/phpunit": "4.*"
+            "symfony/browser-kit": "~2.3",
+            "symfony/class-loader": "~2.1",
+            "symfony/config": "~2.7",
+            "symfony/console": "~2.3",
+            "symfony/css-selector": "~2.0,>=2.0.5",
+            "symfony/dependency-injection": "~2.2",
+            "symfony/dom-crawler": "~2.0,>=2.0.5",
+            "symfony/expression-language": "~2.4",
+            "symfony/finder": "~2.0,>=2.0.5",
+            "symfony/phpunit-bridge": "~2.7",
+            "symfony/process": "~2.0,>=2.0.5",
+            "symfony/routing": "~2.2",
+            "symfony/stopwatch": "~2.3",
+            "symfony/templating": "~2.2",
+            "symfony/translation": "~2.0,>=2.0.5",
+            "symfony/var-dumper": "~2.6"
         },
-        "time": "2014-12-20 21:24:13",
+        "suggest": {
+            "symfony/browser-kit": "",
+            "symfony/class-loader": "",
+            "symfony/config": "",
+            "symfony/console": "",
+            "symfony/dependency-injection": "",
+            "symfony/finder": "",
+            "symfony/var-dumper": ""
+        },
+        "time": "2015-09-25 11:16:52",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "1.0.x-dev"
+                "dev-master": "2.7-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
-            "psr-0": {
-                "Doctrine\\Common\\Inflector\\": "lib/"
+            "psr-4": {
+                "Symfony\\Component\\HttpKernel\\": ""
             }
         },
         "notification-url": "https://packagist.org/downloads/",
@@ -968,386 +1254,405 @@
         ],
         "authors": [
             {
-                "name": "Roman Borschel",
-                "email": "roman@code-factory.org"
-            },
-            {
-                "name": "Benjamin Eberlei",
-                "email": "kontakt@beberlei.de"
-            },
-            {
-                "name": "Guilherme Blanco",
-                "email": "guilhermeblanco@gmail.com"
-            },
-            {
-                "name": "Jonathan Wage",
-                "email": "jonwage@gmail.com"
+                "name": "Fabien Potencier",
+                "email": "fabien@symfony.com"
             },
             {
-                "name": "Johannes Schmitt",
-                "email": "schmittjoh@gmail.com"
+                "name": "Symfony Community",
+                "homepage": "https://symfony.com/contributors"
             }
         ],
-        "description": "Common String Manipulations with regard to casing and singular/plural rules.",
-        "homepage": "http://www.doctrine-project.org",
-        "keywords": [
-            "inflection",
-            "pluralize",
-            "singularize",
-            "string"
-        ]
+        "description": "Symfony HttpKernel Component",
+        "homepage": "https://symfony.com"
     },
     {
-        "name": "sebastian/environment",
-        "version": "1.3.2",
-        "version_normalized": "1.3.2.0",
+        "name": "stack/builder",
+        "version": "v1.0.3",
+        "version_normalized": "1.0.3.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/sebastianbergmann/environment.git",
-            "reference": "6324c907ce7a52478eeeaede764f48733ef5ae44"
+            "url": "https://github.com/stackphp/builder.git",
+            "reference": "c1f8a4693b55c563405024f708a76ef576c3b276"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/6324c907ce7a52478eeeaede764f48733ef5ae44",
-            "reference": "6324c907ce7a52478eeeaede764f48733ef5ae44",
+            "url": "https://api.github.com/repos/stackphp/builder/zipball/c1f8a4693b55c563405024f708a76ef576c3b276",
+            "reference": "c1f8a4693b55c563405024f708a76ef576c3b276",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.3"
+            "php": ">=5.3.0",
+            "symfony/http-foundation": "~2.1",
+            "symfony/http-kernel": "~2.1"
         },
         "require-dev": {
-            "phpunit/phpunit": "~4.4"
+            "silex/silex": "~1.0"
         },
-        "time": "2015-08-03 06:14:51",
+        "time": "2014-11-23 20:37:11",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "1.3.x-dev"
+                "dev-master": "1.0-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
-            "classmap": [
-                "src/"
-            ]
+            "psr-0": {
+                "Stack": "src"
+            }
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
-            "BSD-3-Clause"
+            "MIT"
         ],
         "authors": [
             {
-                "name": "Sebastian Bergmann",
-                "email": "sebastian@phpunit.de"
+                "name": "Igor Wiedler",
+                "email": "igor@wiedler.ch"
             }
         ],
-        "description": "Provides functionality to handle HHVM/PHP environments",
-        "homepage": "http://www.github.com/sebastianbergmann/environment",
+        "description": "Builder for stack middlewares based on HttpKernelInterface.",
         "keywords": [
-            "Xdebug",
-            "environment",
-            "hhvm"
+            "stack"
         ]
     },
     {
-        "name": "phpunit/php-timer",
-        "version": "1.0.7",
-        "version_normalized": "1.0.7.0",
+        "name": "symfony/routing",
+        "version": "v2.7.5",
+        "version_normalized": "2.7.5.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/sebastianbergmann/php-timer.git",
-            "reference": "3e82f4e9fc92665fafd9157568e4dcb01d014e5b"
+            "url": "https://github.com/symfony/routing.git",
+            "reference": "6c5fae83efa20baf166fcf4582f57094e9f60f16"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/3e82f4e9fc92665fafd9157568e4dcb01d014e5b",
-            "reference": "3e82f4e9fc92665fafd9157568e4dcb01d014e5b",
+            "url": "https://api.github.com/repos/symfony/routing/zipball/6c5fae83efa20baf166fcf4582f57094e9f60f16",
+            "reference": "6c5fae83efa20baf166fcf4582f57094e9f60f16",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.3"
+            "php": ">=5.3.9"
         },
-        "time": "2015-06-21 08:01:12",
+        "conflict": {
+            "symfony/config": "<2.7"
+        },
+        "require-dev": {
+            "doctrine/annotations": "~1.0",
+            "doctrine/common": "~2.2",
+            "psr/log": "~1.0",
+            "symfony/config": "~2.7",
+            "symfony/expression-language": "~2.4",
+            "symfony/http-foundation": "~2.3",
+            "symfony/phpunit-bridge": "~2.7",
+            "symfony/yaml": "~2.0,>=2.0.5"
+        },
+        "suggest": {
+            "doctrine/annotations": "For using the annotation loader",
+            "symfony/config": "For using the all-in-one router or any loader",
+            "symfony/expression-language": "For using expression matching",
+            "symfony/yaml": "For using the YAML loader"
+        },
+        "time": "2015-09-14 14:14:09",
         "type": "library",
+        "extra": {
+            "branch-alias": {
+                "dev-master": "2.7-dev"
+            }
+        },
         "installation-source": "dist",
         "autoload": {
-            "classmap": [
-                "src/"
-            ]
+            "psr-4": {
+                "Symfony\\Component\\Routing\\": ""
+            }
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
-            "BSD-3-Clause"
+            "MIT"
         ],
         "authors": [
             {
-                "name": "Sebastian Bergmann",
-                "email": "sb@sebastian-bergmann.de",
-                "role": "lead"
+                "name": "Fabien Potencier",
+                "email": "fabien@symfony.com"
+            },
+            {
+                "name": "Symfony Community",
+                "homepage": "https://symfony.com/contributors"
             }
         ],
-        "description": "Utility class for timing",
-        "homepage": "https://github.com/sebastianbergmann/php-timer/",
+        "description": "Symfony Routing Component",
+        "homepage": "https://symfony.com",
         "keywords": [
-            "timer"
+            "router",
+            "routing",
+            "uri",
+            "url"
         ]
     },
     {
-        "name": "easyrdf/easyrdf",
-        "version": "0.9.1",
-        "version_normalized": "0.9.1.0",
+        "name": "symfony-cmf/routing",
+        "version": "1.3.0",
+        "version_normalized": "1.3.0.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/njh/easyrdf.git",
-            "reference": "acd09dfe0555fbcfa254291e433c45fdd4652566"
+            "url": "https://github.com/symfony-cmf/Routing.git",
+            "reference": "8e87981d72c6930a27585dcd3119f3199f6cb2a6"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/njh/easyrdf/zipball/acd09dfe0555fbcfa254291e433c45fdd4652566",
-            "reference": "acd09dfe0555fbcfa254291e433c45fdd4652566",
+            "url": "https://api.github.com/repos/symfony-cmf/Routing/zipball/8e87981d72c6930a27585dcd3119f3199f6cb2a6",
+            "reference": "8e87981d72c6930a27585dcd3119f3199f6cb2a6",
             "shasum": ""
         },
         "require": {
-            "ext-mbstring": "*",
-            "ext-pcre": "*",
-            "php": ">=5.2.8"
+            "php": ">=5.3.3",
+            "psr/log": "~1.0",
+            "symfony/http-kernel": "~2.2",
+            "symfony/routing": "~2.2"
         },
         "require-dev": {
-            "phpunit/phpunit": "~3.5",
-            "sami/sami": "~1.4",
-            "squizlabs/php_codesniffer": "~1.4.3"
+            "symfony/config": "~2.2",
+            "symfony/dependency-injection": "~2.0@stable",
+            "symfony/event-dispatcher": "~2.1"
         },
         "suggest": {
-            "ml/json-ld": "~1.0"
+            "symfony/event-dispatcher": "DynamicRouter can optionally trigger an event at the start of matching. Minimal version ~2.1"
         },
-        "time": "2015-02-27 09:45:49",
+        "time": "2014-10-20 20:55:17",
         "type": "library",
+        "extra": {
+            "branch-alias": {
+                "dev-master": "1.3-dev"
+            }
+        },
         "installation-source": "dist",
         "autoload": {
-            "psr-0": {
-                "EasyRdf_": "lib/"
+            "psr-4": {
+                "Symfony\\Cmf\\Component\\Routing\\": ""
             }
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
-            "BSD-3-Clause"
+            "MIT"
         ],
         "authors": [
             {
-                "name": "Nicholas Humfrey",
-                "email": "njh@aelius.com",
-                "homepage": "http://www.aelius.com/njh/",
-                "role": "Developer"
-            },
-            {
-                "name": "Alexey Zakhlestin",
-                "email": "indeyets@gmail.com",
-                "role": "Developer"
+                "name": "Symfony CMF Community",
+                "homepage": "https://github.com/symfony-cmf/Routing/contributors"
             }
         ],
-        "description": "EasyRdf is a PHP library designed to make it easy to consume and produce RDF.",
-        "homepage": "http://www.easyrdf.org/",
+        "description": "Extends the Symfony2 routing component for dynamic routes and chaining several routers",
+        "homepage": "http://cmf.symfony.com",
         "keywords": [
-            "Linked Data",
-            "RDF",
-            "Semantic Web",
-            "Turtle",
-            "rdfa",
-            "sparql"
+            "database",
+            "routing"
         ]
     },
     {
-        "name": "zendframework/zend-escaper",
-        "version": "2.5.1",
-        "version_normalized": "2.5.1.0",
+        "name": "symfony/class-loader",
+        "version": "v2.7.5",
+        "version_normalized": "2.7.5.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/zendframework/zend-escaper.git",
-            "reference": "a4b227d8a477f4e7e9073f8e0a7ae7dbd3104a73"
+            "url": "https://github.com/symfony/class-loader.git",
+            "reference": "d957ea6295d7016e20d7eff33a6c1deef819c0d4"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/zendframework/zend-escaper/zipball/a4b227d8a477f4e7e9073f8e0a7ae7dbd3104a73",
-            "reference": "a4b227d8a477f4e7e9073f8e0a7ae7dbd3104a73",
+            "url": "https://api.github.com/repos/symfony/class-loader/zipball/d957ea6295d7016e20d7eff33a6c1deef819c0d4",
+            "reference": "d957ea6295d7016e20d7eff33a6c1deef819c0d4",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.23"
+            "php": ">=5.3.9"
         },
         "require-dev": {
-            "fabpot/php-cs-fixer": "1.7.*",
-            "phpunit/phpunit": "~4.0"
+            "symfony/finder": "~2.0,>=2.0.5",
+            "symfony/phpunit-bridge": "~2.7"
         },
-        "time": "2015-06-03 14:05:37",
+        "time": "2015-08-26 17:56:37",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "2.5-dev",
-                "dev-develop": "2.6-dev"
+                "dev-master": "2.7-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
             "psr-4": {
-                "Zend\\Escaper\\": "src/"
+                "Symfony\\Component\\ClassLoader\\": ""
             }
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
-            "BSD-3-Clause"
+            "MIT"
         ],
-        "homepage": "https://github.com/zendframework/zend-escaper",
-        "keywords": [
-            "escaper",
-            "zf2"
-        ]
+        "authors": [
+            {
+                "name": "Fabien Potencier",
+                "email": "fabien@symfony.com"
+            },
+            {
+                "name": "Symfony Community",
+                "homepage": "https://symfony.com/contributors"
+            }
+        ],
+        "description": "Symfony ClassLoader Component",
+        "homepage": "https://symfony.com"
     },
     {
-        "name": "zendframework/zend-feed",
-        "version": "2.5.2",
-        "version_normalized": "2.5.2.0",
+        "name": "symfony/console",
+        "version": "v2.7.5",
+        "version_normalized": "2.7.5.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/zendframework/zend-feed.git",
-            "reference": "0661345b82b51428619e05d3aadd3de65b57fa54"
+            "url": "https://github.com/symfony/console.git",
+            "reference": "06cb17c013a82f94a3d840682b49425cd00a2161"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/zendframework/zend-feed/zipball/0661345b82b51428619e05d3aadd3de65b57fa54",
-            "reference": "0661345b82b51428619e05d3aadd3de65b57fa54",
+            "url": "https://api.github.com/repos/symfony/console/zipball/06cb17c013a82f94a3d840682b49425cd00a2161",
+            "reference": "06cb17c013a82f94a3d840682b49425cd00a2161",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.5",
-            "zendframework/zend-escaper": "~2.5",
-            "zendframework/zend-stdlib": "~2.5"
+            "php": ">=5.3.9"
         },
         "require-dev": {
-            "fabpot/php-cs-fixer": "1.7.*",
-            "phpunit/phpunit": "~4.0",
-            "zendframework/zend-cache": "~2.5",
-            "zendframework/zend-db": "~2.5",
-            "zendframework/zend-http": "~2.5",
-            "zendframework/zend-servicemanager": "~2.5",
-            "zendframework/zend-validator": "~2.5"
+            "psr/log": "~1.0",
+            "symfony/event-dispatcher": "~2.1",
+            "symfony/phpunit-bridge": "~2.7",
+            "symfony/process": "~2.1"
         },
         "suggest": {
-            "zendframework/zend-cache": "Zend\\Cache component",
-            "zendframework/zend-db": "Zend\\Db component",
-            "zendframework/zend-http": "Zend\\Http for PubSubHubbub, and optionally for use with Zend\\Feed\\Reader",
-            "zendframework/zend-servicemanager": "Zend\\ServiceManager component, for default/recommended ExtensionManager implementations",
-            "zendframework/zend-validator": "Zend\\Validator component"
+            "psr/log": "For using the console logger",
+            "symfony/event-dispatcher": "",
+            "symfony/process": ""
         },
-        "time": "2015-08-04 21:39:18",
+        "time": "2015-09-25 08:32:23",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "2.5-dev",
-                "dev-develop": "2.6-dev"
+                "dev-master": "2.7-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
             "psr-4": {
-                "Zend\\Feed\\": "src/"
+                "Symfony\\Component\\Console\\": ""
             }
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
-            "BSD-3-Clause"
+            "MIT"
         ],
-        "description": "provides functionality for consuming RSS and Atom feeds",
-        "homepage": "https://github.com/zendframework/zend-feed",
-        "keywords": [
-            "feed",
-            "zf2"
-        ]
+        "authors": [
+            {
+                "name": "Fabien Potencier",
+                "email": "fabien@symfony.com"
+            },
+            {
+                "name": "Symfony Community",
+                "homepage": "https://symfony.com/contributors"
+            }
+        ],
+        "description": "Symfony Console Component",
+        "homepage": "https://symfony.com"
     },
     {
-        "name": "zendframework/zend-diactoros",
-        "version": "1.1.3",
-        "version_normalized": "1.1.3.0",
+        "name": "symfony/dependency-injection",
+        "version": "v2.7.5",
+        "version_normalized": "2.7.5.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/zendframework/zend-diactoros.git",
-            "reference": "e2f5c12916c74da384058d0dfbc7fbc0b03d1181"
+            "url": "https://github.com/symfony/dependency-injection.git",
+            "reference": "422c3819b110f610d79c6f1dc38af23787dc790e"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/zendframework/zend-diactoros/zipball/e2f5c12916c74da384058d0dfbc7fbc0b03d1181",
-            "reference": "e2f5c12916c74da384058d0dfbc7fbc0b03d1181",
+            "url": "https://api.github.com/repos/symfony/dependency-injection/zipball/422c3819b110f610d79c6f1dc38af23787dc790e",
+            "reference": "422c3819b110f610d79c6f1dc38af23787dc790e",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.4",
-            "psr/http-message": "~1.0"
+            "php": ">=5.3.9"
         },
-        "provide": {
-            "psr/http-message-implementation": "~1.0.0"
+        "conflict": {
+            "symfony/expression-language": "<2.6"
         },
         "require-dev": {
-            "phpunit/phpunit": "~4.6",
-            "squizlabs/php_codesniffer": "^2.3.1"
+            "symfony/config": "~2.2",
+            "symfony/expression-language": "~2.6",
+            "symfony/phpunit-bridge": "~2.7",
+            "symfony/yaml": "~2.1"
         },
-        "time": "2015-08-10 20:04:20",
+        "suggest": {
+            "symfony/config": "",
+            "symfony/proxy-manager-bridge": "Generate service proxies to lazy load them",
+            "symfony/yaml": ""
+        },
+        "time": "2015-09-15 08:30:42",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "1.0-dev",
-                "dev-develop": "1.1-dev"
+                "dev-master": "2.7-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
             "psr-4": {
-                "Zend\\Diactoros\\": "src/"
+                "Symfony\\Component\\DependencyInjection\\": ""
             }
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
-            "BSD-2-Clause"
+            "MIT"
         ],
-        "description": "PSR HTTP Message implementations",
-        "homepage": "https://github.com/zendframework/zend-diactoros",
-        "keywords": [
-            "http",
-            "psr",
-            "psr-7"
-        ]
+        "authors": [
+            {
+                "name": "Fabien Potencier",
+                "email": "fabien@symfony.com"
+            },
+            {
+                "name": "Symfony Community",
+                "homepage": "https://symfony.com/contributors"
+            }
+        ],
+        "description": "Symfony DependencyInjection Component",
+        "homepage": "https://symfony.com"
     },
     {
-        "name": "fabpot/goutte",
-        "version": "v3.1.1",
-        "version_normalized": "3.1.1.0",
+        "name": "symfony/process",
+        "version": "v2.7.5",
+        "version_normalized": "2.7.5.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/FriendsOfPHP/Goutte.git",
-            "reference": "751a3dc5c4d86ec3e97c9f27133ef9694d9243cc"
+            "url": "https://github.com/symfony/process.git",
+            "reference": "b27c8e317922cd3cdd3600850273cf6b82b2e8e9"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/FriendsOfPHP/Goutte/zipball/751a3dc5c4d86ec3e97c9f27133ef9694d9243cc",
-            "reference": "751a3dc5c4d86ec3e97c9f27133ef9694d9243cc",
+            "url": "https://api.github.com/repos/symfony/process/zipball/b27c8e317922cd3cdd3600850273cf6b82b2e8e9",
+            "reference": "b27c8e317922cd3cdd3600850273cf6b82b2e8e9",
             "shasum": ""
         },
         "require": {
-            "guzzlehttp/guzzle": "^6.0",
-            "php": ">=5.5.0",
-            "symfony/browser-kit": "~2.1",
-            "symfony/css-selector": "~2.1",
-            "symfony/dom-crawler": "~2.1"
+            "php": ">=5.3.9"
         },
-        "time": "2015-08-29 16:16:56",
-        "type": "application",
+        "require-dev": {
+            "symfony/phpunit-bridge": "~2.7"
+        },
+        "time": "2015-09-19 19:59:23",
+        "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "3.1-dev"
+                "dev-master": "2.7-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
             "psr-4": {
-                "Goutte\\": "Goutte"
+                "Symfony\\Component\\Process\\": ""
             }
         },
         "notification-url": "https://packagist.org/downloads/",
@@ -1358,48 +1663,47 @@
             {
                 "name": "Fabien Potencier",
                 "email": "fabien@symfony.com"
+            },
+            {
+                "name": "Symfony Community",
+                "homepage": "https://symfony.com/contributors"
             }
         ],
-        "description": "A simple PHP Web Scraper",
-        "homepage": "https://github.com/FriendsOfPHP/Goutte",
-        "keywords": [
-            "scraper"
-        ]
+        "description": "Symfony Process Component",
+        "homepage": "https://symfony.com"
     },
     {
-        "name": "phpspec/prophecy",
-        "version": "v1.5.0",
-        "version_normalized": "1.5.0.0",
+        "name": "symfony/psr-http-message-bridge",
+        "version": "v0.2",
+        "version_normalized": "0.2.0.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/phpspec/prophecy.git",
-            "reference": "4745ded9307786b730d7a60df5cb5a6c43cf95f7"
+            "url": "https://github.com/symfony/psr-http-message-bridge.git",
+            "reference": "dc7e308e1dc2898a46776e2221a643cb08315453"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/phpspec/prophecy/zipball/4745ded9307786b730d7a60df5cb5a6c43cf95f7",
-            "reference": "4745ded9307786b730d7a60df5cb5a6c43cf95f7",
+            "url": "https://api.github.com/repos/symfony/psr-http-message-bridge/zipball/dc7e308e1dc2898a46776e2221a643cb08315453",
+            "reference": "dc7e308e1dc2898a46776e2221a643cb08315453",
             "shasum": ""
         },
         "require": {
-            "doctrine/instantiator": "^1.0.2",
-            "phpdocumentor/reflection-docblock": "~2.0",
-            "sebastian/comparator": "~1.1"
+            "php": ">=5.3.3",
+            "psr/http-message": "~1.0",
+            "symfony/http-foundation": "~2.3|~3.0"
         },
         "require-dev": {
-            "phpspec/phpspec": "~2.0"
+            "symfony/phpunit-bridge": "~2.7|~3.0"
         },
-        "time": "2015-08-13 10:07:40",
-        "type": "library",
-        "extra": {
-            "branch-alias": {
-                "dev-master": "1.4.x-dev"
-            }
+        "suggest": {
+            "zendframework/zend-diactoros": "To use the Zend Diactoros factory"
         },
+        "time": "2015-05-29 17:57:12",
+        "type": "symfony-bridge",
         "installation-source": "dist",
         "autoload": {
-            "psr-0": {
-                "Prophecy\\": "src/"
+            "psr-4": {
+                "Symfony\\Bridge\\PsrHttpMessage\\": ""
             }
         },
         "notification-url": "https://packagist.org/downloads/",
@@ -1408,218 +1712,254 @@
         ],
         "authors": [
             {
-                "name": "Konstantin Kudryashov",
-                "email": "ever.zet@gmail.com",
-                "homepage": "http://everzet.com"
+                "name": "Symfony Community",
+                "homepage": "http://symfony.com/contributors"
             },
             {
-                "name": "Marcello Duarte",
-                "email": "marcello.duarte@gmail.com"
+                "name": "Fabien Potencier",
+                "email": "fabien@symfony.com"
             }
         ],
-        "description": "Highly opinionated mocking framework for PHP 5.3+",
-        "homepage": "https://github.com/phpspec/prophecy",
+        "description": "PSR HTTP message bridge",
+        "homepage": "http://symfony.com",
         "keywords": [
-            "Double",
-            "Dummy",
-            "fake",
-            "mock",
-            "spy",
-            "stub"
+            "http",
+            "http-message",
+            "psr-7"
         ]
     },
     {
-        "name": "phpunit/php-file-iterator",
-        "version": "1.4.1",
-        "version_normalized": "1.4.1.0",
+        "name": "symfony/serializer",
+        "version": "v2.7.5",
+        "version_normalized": "2.7.5.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/sebastianbergmann/php-file-iterator.git",
-            "reference": "6150bf2c35d3fc379e50c7602b75caceaa39dbf0"
+            "url": "https://github.com/symfony/serializer.git",
+            "reference": "baf24f86a8656eea9c80988f332e51461bfcb67f"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/6150bf2c35d3fc379e50c7602b75caceaa39dbf0",
-            "reference": "6150bf2c35d3fc379e50c7602b75caceaa39dbf0",
+            "url": "https://api.github.com/repos/symfony/serializer/zipball/baf24f86a8656eea9c80988f332e51461bfcb67f",
+            "reference": "baf24f86a8656eea9c80988f332e51461bfcb67f",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.3"
+            "php": ">=5.3.9"
         },
-        "time": "2015-06-21 13:08:43",
+        "require-dev": {
+            "doctrine/annotations": "~1.0",
+            "doctrine/cache": "~1.0",
+            "symfony/config": "~2.2",
+            "symfony/phpunit-bridge": "~2.7",
+            "symfony/property-access": "~2.3",
+            "symfony/yaml": "~2.0,>=2.0.5"
+        },
+        "suggest": {
+            "doctrine/annotations": "For using the annotation mapping. You will also need doctrine/cache.",
+            "doctrine/cache": "For using the default cached annotation reader and metadata cache.",
+            "symfony/config": "For using the XML mapping loader.",
+            "symfony/property-access": "For using the ObjectNormalizer.",
+            "symfony/yaml": "For using the default YAML mapping loader."
+        },
+        "time": "2015-08-31 16:44:53",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "1.4.x-dev"
+                "dev-master": "2.7-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
-            "classmap": [
-                "src/"
-            ]
+            "psr-4": {
+                "Symfony\\Component\\Serializer\\": ""
+            }
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
-            "BSD-3-Clause"
+            "MIT"
         ],
         "authors": [
             {
-                "name": "Sebastian Bergmann",
-                "email": "sb@sebastian-bergmann.de",
-                "role": "lead"
+                "name": "Fabien Potencier",
+                "email": "fabien@symfony.com"
+            },
+            {
+                "name": "Symfony Community",
+                "homepage": "https://symfony.com/contributors"
             }
         ],
-        "description": "FilterIterator implementation that filters files based on a list of suffixes.",
-        "homepage": "https://github.com/sebastianbergmann/php-file-iterator/",
-        "keywords": [
-            "filesystem",
-            "iterator"
-        ]
+        "description": "Symfony Serializer Component",
+        "homepage": "https://symfony.com"
     },
     {
-        "name": "phpunit/php-text-template",
-        "version": "1.2.1",
-        "version_normalized": "1.2.1.0",
+        "name": "symfony/translation",
+        "version": "v2.7.5",
+        "version_normalized": "2.7.5.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/sebastianbergmann/php-text-template.git",
-            "reference": "31f8b717e51d9a2afca6c9f046f5d69fc27c8686"
+            "url": "https://github.com/symfony/translation.git",
+            "reference": "485877661835e188cd78345c6d4eef1290d17571"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/sebastianbergmann/php-text-template/zipball/31f8b717e51d9a2afca6c9f046f5d69fc27c8686",
-            "reference": "31f8b717e51d9a2afca6c9f046f5d69fc27c8686",
+            "url": "https://api.github.com/repos/symfony/translation/zipball/485877661835e188cd78345c6d4eef1290d17571",
+            "reference": "485877661835e188cd78345c6d4eef1290d17571",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.3"
+            "php": ">=5.3.9"
         },
-        "time": "2015-06-21 13:50:34",
+        "conflict": {
+            "symfony/config": "<2.7"
+        },
+        "require-dev": {
+            "psr/log": "~1.0",
+            "symfony/config": "~2.7",
+            "symfony/intl": "~2.4",
+            "symfony/phpunit-bridge": "~2.7",
+            "symfony/yaml": "~2.2"
+        },
+        "suggest": {
+            "psr/log": "To use logging capability in translator",
+            "symfony/config": "",
+            "symfony/yaml": ""
+        },
+        "time": "2015-09-06 08:36:38",
         "type": "library",
+        "extra": {
+            "branch-alias": {
+                "dev-master": "2.7-dev"
+            }
+        },
         "installation-source": "dist",
         "autoload": {
-            "classmap": [
-                "src/"
-            ]
+            "psr-4": {
+                "Symfony\\Component\\Translation\\": ""
+            }
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
-            "BSD-3-Clause"
+            "MIT"
         ],
         "authors": [
             {
-                "name": "Sebastian Bergmann",
-                "email": "sebastian@phpunit.de",
-                "role": "lead"
+                "name": "Fabien Potencier",
+                "email": "fabien@symfony.com"
+            },
+            {
+                "name": "Symfony Community",
+                "homepage": "https://symfony.com/contributors"
             }
         ],
-        "description": "Simple template engine.",
-        "homepage": "https://github.com/sebastianbergmann/php-text-template/",
-        "keywords": [
-            "template"
-        ]
+        "description": "Symfony Translation Component",
+        "homepage": "https://symfony.com"
     },
     {
-        "name": "sebastian/comparator",
-        "version": "1.2.0",
-        "version_normalized": "1.2.0.0",
+        "name": "symfony/validator",
+        "version": "v2.7.5",
+        "version_normalized": "2.7.5.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/sebastianbergmann/comparator.git",
-            "reference": "937efb279bd37a375bcadf584dec0726f84dbf22"
+            "url": "https://github.com/symfony/validator.git",
+            "reference": "b359dc71e253ce6eb69eefbd5088032241e7a66f"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/937efb279bd37a375bcadf584dec0726f84dbf22",
-            "reference": "937efb279bd37a375bcadf584dec0726f84dbf22",
+            "url": "https://api.github.com/repos/symfony/validator/zipball/b359dc71e253ce6eb69eefbd5088032241e7a66f",
+            "reference": "b359dc71e253ce6eb69eefbd5088032241e7a66f",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.3",
-            "sebastian/diff": "~1.2",
-            "sebastian/exporter": "~1.2"
+            "php": ">=5.3.9",
+            "symfony/translation": "~2.4"
         },
         "require-dev": {
-            "phpunit/phpunit": "~4.4"
+            "doctrine/annotations": "~1.0",
+            "doctrine/cache": "~1.0",
+            "egulias/email-validator": "~1.2,>=1.2.1",
+            "symfony/config": "~2.2",
+            "symfony/expression-language": "~2.4",
+            "symfony/http-foundation": "~2.1",
+            "symfony/intl": "~2.4",
+            "symfony/phpunit-bridge": "~2.7",
+            "symfony/property-access": "~2.3",
+            "symfony/yaml": "~2.0,>=2.0.5"
         },
-        "time": "2015-07-26 15:48:44",
+        "suggest": {
+            "doctrine/annotations": "For using the annotation mapping. You will also need doctrine/cache.",
+            "doctrine/cache": "For using the default cached annotation reader and metadata cache.",
+            "egulias/email-validator": "Strict (RFC compliant) email validation",
+            "symfony/config": "",
+            "symfony/expression-language": "For using the 2.4 Expression validator",
+            "symfony/http-foundation": "",
+            "symfony/intl": "",
+            "symfony/property-access": "For using the 2.4 Validator API",
+            "symfony/yaml": ""
+        },
+        "time": "2015-09-23 11:13:27",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "1.2.x-dev"
+                "dev-master": "2.7-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
-            "classmap": [
-                "src/"
-            ]
+            "psr-4": {
+                "Symfony\\Component\\Validator\\": ""
+            }
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
-            "BSD-3-Clause"
+            "MIT"
         ],
         "authors": [
             {
-                "name": "Jeff Welch",
-                "email": "whatthejeff@gmail.com"
-            },
-            {
-                "name": "Volker Dusch",
-                "email": "github@wallbash.com"
-            },
-            {
-                "name": "Bernhard Schussek",
-                "email": "bschussek@2bepublished.at"
+                "name": "Fabien Potencier",
+                "email": "fabien@symfony.com"
             },
             {
-                "name": "Sebastian Bergmann",
-                "email": "sebastian@phpunit.de"
+                "name": "Symfony Community",
+                "homepage": "https://symfony.com/contributors"
             }
         ],
-        "description": "Provides the functionality to compare PHP values for equality",
-        "homepage": "http://www.github.com/sebastianbergmann/comparator",
-        "keywords": [
-            "comparator",
-            "compare",
-            "equality"
-        ]
+        "description": "Symfony Validator Component",
+        "homepage": "https://symfony.com"
     },
     {
-        "name": "sebastian/exporter",
-        "version": "1.2.1",
-        "version_normalized": "1.2.1.0",
+        "name": "twig/twig",
+        "version": "v1.22.2",
+        "version_normalized": "1.22.2.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/sebastianbergmann/exporter.git",
-            "reference": "7ae5513327cb536431847bcc0c10edba2701064e"
+            "url": "https://github.com/twigphp/Twig.git",
+            "reference": "79249fc8c9ff62e41e217e0c630e2e00bcadda6a"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/7ae5513327cb536431847bcc0c10edba2701064e",
-            "reference": "7ae5513327cb536431847bcc0c10edba2701064e",
+            "url": "https://api.github.com/repos/twigphp/Twig/zipball/79249fc8c9ff62e41e217e0c630e2e00bcadda6a",
+            "reference": "79249fc8c9ff62e41e217e0c630e2e00bcadda6a",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.3",
-            "sebastian/recursion-context": "~1.0"
+            "php": ">=5.2.7"
         },
         "require-dev": {
-            "phpunit/phpunit": "~4.4"
+            "symfony/debug": "~2.7",
+            "symfony/phpunit-bridge": "~2.7"
         },
-        "time": "2015-06-21 07:55:53",
+        "time": "2015-09-22 13:59:32",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "1.2.x-dev"
+                "dev-master": "1.22-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
-            "classmap": [
-                "src/"
-            ]
+            "psr-0": {
+                "Twig_": "lib/"
+            }
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
@@ -1627,159 +1967,392 @@
         ],
         "authors": [
             {
-                "name": "Jeff Welch",
-                "email": "whatthejeff@gmail.com"
+                "name": "Fabien Potencier",
+                "email": "fabien@symfony.com",
+                "homepage": "http://fabien.potencier.org",
+                "role": "Lead Developer"
             },
             {
-                "name": "Volker Dusch",
-                "email": "github@wallbash.com"
-            },
-            {
-                "name": "Bernhard Schussek",
-                "email": "bschussek@2bepublished.at"
-            },
-            {
-                "name": "Sebastian Bergmann",
-                "email": "sebastian@phpunit.de"
+                "name": "Armin Ronacher",
+                "email": "armin.ronacher@active-4.com",
+                "role": "Project Founder"
             },
             {
-                "name": "Adam Harvey",
-                "email": "aharvey@php.net"
+                "name": "Twig Team",
+                "homepage": "http://twig.sensiolabs.org/contributors",
+                "role": "Contributors"
             }
         ],
-        "description": "Provides the functionality to export PHP variables for visualization",
-        "homepage": "http://www.github.com/sebastianbergmann/exporter",
+        "description": "Twig, the flexible, fast, and secure template language for PHP",
+        "homepage": "http://twig.sensiolabs.org",
         "keywords": [
-            "export",
-            "exporter"
+            "templating"
         ]
     },
     {
-        "name": "sebastian/recursion-context",
-        "version": "1.0.1",
-        "version_normalized": "1.0.1.0",
+        "name": "zendframework/zend-diactoros",
+        "version": "1.1.3",
+        "version_normalized": "1.1.3.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/sebastianbergmann/recursion-context.git",
-            "reference": "994d4a811bafe801fb06dccbee797863ba2792ba"
+            "url": "https://github.com/zendframework/zend-diactoros.git",
+            "reference": "e2f5c12916c74da384058d0dfbc7fbc0b03d1181"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/994d4a811bafe801fb06dccbee797863ba2792ba",
-            "reference": "994d4a811bafe801fb06dccbee797863ba2792ba",
+            "url": "https://api.github.com/repos/zendframework/zend-diactoros/zipball/e2f5c12916c74da384058d0dfbc7fbc0b03d1181",
+            "reference": "e2f5c12916c74da384058d0dfbc7fbc0b03d1181",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.3"
+            "php": ">=5.4",
+            "psr/http-message": "~1.0"
+        },
+        "provide": {
+            "psr/http-message-implementation": "~1.0.0"
         },
         "require-dev": {
-            "phpunit/phpunit": "~4.4"
+            "phpunit/phpunit": "~4.6",
+            "squizlabs/php_codesniffer": "^2.3.1"
         },
-        "time": "2015-06-21 08:04:50",
+        "time": "2015-08-10 20:04:20",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "1.0.x-dev"
+                "dev-master": "1.0-dev",
+                "dev-develop": "1.1-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
-            "classmap": [
-                "src/"
-            ]
+            "psr-4": {
+                "Zend\\Diactoros\\": "src/"
+            }
+        },
+        "notification-url": "https://packagist.org/downloads/",
+        "license": [
+            "BSD-2-Clause"
+        ],
+        "description": "PSR HTTP Message implementations",
+        "homepage": "https://github.com/zendframework/zend-diactoros",
+        "keywords": [
+            "http",
+            "psr",
+            "psr-7"
+        ]
+    },
+    {
+        "name": "zendframework/zend-stdlib",
+        "version": "2.7.3",
+        "version_normalized": "2.7.3.0",
+        "source": {
+            "type": "git",
+            "url": "https://github.com/zendframework/zend-stdlib.git",
+            "reference": "8ac0c77ff567fcf49b58689ee3bfa7595be102bc"
+        },
+        "dist": {
+            "type": "zip",
+            "url": "https://api.github.com/repos/zendframework/zend-stdlib/zipball/8ac0c77ff567fcf49b58689ee3bfa7595be102bc",
+            "reference": "8ac0c77ff567fcf49b58689ee3bfa7595be102bc",
+            "shasum": ""
+        },
+        "require": {
+            "php": ">=5.5",
+            "zendframework/zend-hydrator": "~1.0"
+        },
+        "require-dev": {
+            "athletic/athletic": "~0.1",
+            "fabpot/php-cs-fixer": "1.7.*",
+            "phpunit/phpunit": "~4.0",
+            "zendframework/zend-config": "~2.5",
+            "zendframework/zend-eventmanager": "~2.5",
+            "zendframework/zend-filter": "~2.5",
+            "zendframework/zend-inputfilter": "~2.5",
+            "zendframework/zend-serializer": "~2.5",
+            "zendframework/zend-servicemanager": "~2.5"
+        },
+        "suggest": {
+            "zendframework/zend-eventmanager": "To support aggregate hydrator usage",
+            "zendframework/zend-filter": "To support naming strategy hydrator usage",
+            "zendframework/zend-serializer": "Zend\\Serializer component",
+            "zendframework/zend-servicemanager": "To support hydrator plugin manager usage"
+        },
+        "time": "2015-09-25 04:06:33",
+        "type": "library",
+        "extra": {
+            "branch-alias": {
+                "dev-master": "2.7-dev",
+                "dev-develop": "2.8-dev"
+            }
+        },
+        "installation-source": "dist",
+        "autoload": {
+            "psr-4": {
+                "Zend\\Stdlib\\": "src/"
+            }
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
             "BSD-3-Clause"
         ],
-        "authors": [
-            {
-                "name": "Jeff Welch",
-                "email": "whatthejeff@gmail.com"
-            },
-            {
-                "name": "Sebastian Bergmann",
-                "email": "sebastian@phpunit.de"
-            },
-            {
-                "name": "Adam Harvey",
-                "email": "aharvey@php.net"
+        "homepage": "https://github.com/zendframework/zend-stdlib",
+        "keywords": [
+            "stdlib",
+            "zf2"
+        ]
+    },
+    {
+        "name": "zendframework/zend-hydrator",
+        "version": "1.0.0",
+        "version_normalized": "1.0.0.0",
+        "source": {
+            "type": "git",
+            "url": "https://github.com/zendframework/zend-hydrator.git",
+            "reference": "f3ed8b833355140350bbed98d8a7b8b66875903f"
+        },
+        "dist": {
+            "type": "zip",
+            "url": "https://api.github.com/repos/zendframework/zend-hydrator/zipball/f3ed8b833355140350bbed98d8a7b8b66875903f",
+            "reference": "f3ed8b833355140350bbed98d8a7b8b66875903f",
+            "shasum": ""
+        },
+        "require": {
+            "php": ">=5.5",
+            "zendframework/zend-stdlib": "^2.5.1"
+        },
+        "require-dev": {
+            "phpunit/phpunit": "~4.0",
+            "squizlabs/php_codesniffer": "^2.0@dev",
+            "zendframework/zend-eventmanager": "^2.5.1",
+            "zendframework/zend-filter": "^2.5.1",
+            "zendframework/zend-inputfilter": "^2.5.1",
+            "zendframework/zend-serializer": "^2.5.1",
+            "zendframework/zend-servicemanager": "^2.5.1"
+        },
+        "suggest": {
+            "zendframework/zend-eventmanager": "^2.5.1, to support aggregate hydrator usage",
+            "zendframework/zend-filter": "^2.5.1, to support naming strategy hydrator usage",
+            "zendframework/zend-serializer": "^2.5.1, to use the SerializableStrategy",
+            "zendframework/zend-servicemanager": "^2.5.1, to support hydrator plugin manager usage"
+        },
+        "time": "2015-09-17 14:06:43",
+        "type": "library",
+        "extra": {
+            "branch-alias": {
+                "dev-master": "1.0-dev",
+                "dev-develop": "1.1-dev"
             }
+        },
+        "installation-source": "dist",
+        "autoload": {
+            "psr-4": {
+                "Zend\\Hydrator\\": "src/"
+            }
+        },
+        "notification-url": "https://packagist.org/downloads/",
+        "license": [
+            "BSD-3-Clause"
         ],
-        "description": "Provides functionality to recursively process PHP variables",
-        "homepage": "http://www.github.com/sebastianbergmann/recursion-context"
+        "homepage": "https://github.com/zendframework/zend-hydrator",
+        "keywords": [
+            "hydrator",
+            "zf2"
+        ]
     },
     {
-        "name": "sebastian/version",
-        "version": "1.0.6",
-        "version_normalized": "1.0.6.0",
+        "name": "zendframework/zend-escaper",
+        "version": "2.5.1",
+        "version_normalized": "2.5.1.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/sebastianbergmann/version.git",
-            "reference": "58b3a85e7999757d6ad81c787a1fbf5ff6c628c6"
+            "url": "https://github.com/zendframework/zend-escaper.git",
+            "reference": "a4b227d8a477f4e7e9073f8e0a7ae7dbd3104a73"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/sebastianbergmann/version/zipball/58b3a85e7999757d6ad81c787a1fbf5ff6c628c6",
-            "reference": "58b3a85e7999757d6ad81c787a1fbf5ff6c628c6",
+            "url": "https://api.github.com/repos/zendframework/zend-escaper/zipball/a4b227d8a477f4e7e9073f8e0a7ae7dbd3104a73",
+            "reference": "a4b227d8a477f4e7e9073f8e0a7ae7dbd3104a73",
             "shasum": ""
         },
-        "time": "2015-06-21 13:59:46",
+        "require": {
+            "php": ">=5.3.23"
+        },
+        "require-dev": {
+            "fabpot/php-cs-fixer": "1.7.*",
+            "phpunit/phpunit": "~4.0"
+        },
+        "time": "2015-06-03 14:05:37",
         "type": "library",
+        "extra": {
+            "branch-alias": {
+                "dev-master": "2.5-dev",
+                "dev-develop": "2.6-dev"
+            }
+        },
         "installation-source": "dist",
         "autoload": {
-            "classmap": [
-                "src/"
-            ]
+            "psr-4": {
+                "Zend\\Escaper\\": "src/"
+            }
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
             "BSD-3-Clause"
         ],
+        "homepage": "https://github.com/zendframework/zend-escaper",
+        "keywords": [
+            "escaper",
+            "zf2"
+        ]
+    },
+    {
+        "name": "zendframework/zend-feed",
+        "version": "2.5.2",
+        "version_normalized": "2.5.2.0",
+        "source": {
+            "type": "git",
+            "url": "https://github.com/zendframework/zend-feed.git",
+            "reference": "0661345b82b51428619e05d3aadd3de65b57fa54"
+        },
+        "dist": {
+            "type": "zip",
+            "url": "https://api.github.com/repos/zendframework/zend-feed/zipball/0661345b82b51428619e05d3aadd3de65b57fa54",
+            "reference": "0661345b82b51428619e05d3aadd3de65b57fa54",
+            "shasum": ""
+        },
+        "require": {
+            "php": ">=5.5",
+            "zendframework/zend-escaper": "~2.5",
+            "zendframework/zend-stdlib": "~2.5"
+        },
+        "require-dev": {
+            "fabpot/php-cs-fixer": "1.7.*",
+            "phpunit/phpunit": "~4.0",
+            "zendframework/zend-cache": "~2.5",
+            "zendframework/zend-db": "~2.5",
+            "zendframework/zend-http": "~2.5",
+            "zendframework/zend-servicemanager": "~2.5",
+            "zendframework/zend-validator": "~2.5"
+        },
+        "suggest": {
+            "zendframework/zend-cache": "Zend\\Cache component",
+            "zendframework/zend-db": "Zend\\Db component",
+            "zendframework/zend-http": "Zend\\Http for PubSubHubbub, and optionally for use with Zend\\Feed\\Reader",
+            "zendframework/zend-servicemanager": "Zend\\ServiceManager component, for default/recommended ExtensionManager implementations",
+            "zendframework/zend-validator": "Zend\\Validator component"
+        },
+        "time": "2015-08-04 21:39:18",
+        "type": "library",
+        "extra": {
+            "branch-alias": {
+                "dev-master": "2.5-dev",
+                "dev-develop": "2.6-dev"
+            }
+        },
+        "installation-source": "dist",
+        "autoload": {
+            "psr-4": {
+                "Zend\\Feed\\": "src/"
+            }
+        },
+        "notification-url": "https://packagist.org/downloads/",
+        "license": [
+            "BSD-3-Clause"
+        ],
+        "description": "provides functionality for consuming RSS and Atom feeds",
+        "homepage": "https://github.com/zendframework/zend-feed",
+        "keywords": [
+            "feed",
+            "zf2"
+        ]
+    },
+    {
+        "name": "symfony/dom-crawler",
+        "version": "v2.7.5",
+        "version_normalized": "2.7.5.0",
+        "source": {
+            "type": "git",
+            "url": "https://github.com/symfony/dom-crawler.git",
+            "reference": "2e185ca136399f902b948694987e62c80099c052"
+        },
+        "dist": {
+            "type": "zip",
+            "url": "https://api.github.com/repos/symfony/dom-crawler/zipball/2e185ca136399f902b948694987e62c80099c052",
+            "reference": "2e185ca136399f902b948694987e62c80099c052",
+            "shasum": ""
+        },
+        "require": {
+            "php": ">=5.3.9"
+        },
+        "require-dev": {
+            "symfony/css-selector": "~2.3",
+            "symfony/phpunit-bridge": "~2.7"
+        },
+        "suggest": {
+            "symfony/css-selector": ""
+        },
+        "time": "2015-09-20 21:13:58",
+        "type": "library",
+        "extra": {
+            "branch-alias": {
+                "dev-master": "2.7-dev"
+            }
+        },
+        "installation-source": "dist",
+        "autoload": {
+            "psr-4": {
+                "Symfony\\Component\\DomCrawler\\": ""
+            }
+        },
+        "notification-url": "https://packagist.org/downloads/",
+        "license": [
+            "MIT"
+        ],
         "authors": [
             {
-                "name": "Sebastian Bergmann",
-                "email": "sebastian@phpunit.de",
-                "role": "lead"
+                "name": "Fabien Potencier",
+                "email": "fabien@symfony.com"
+            },
+            {
+                "name": "Symfony Community",
+                "homepage": "https://symfony.com/contributors"
             }
         ],
-        "description": "Library that helps with managing the version number of Git-hosted PHP projects",
-        "homepage": "https://github.com/sebastianbergmann/version"
+        "description": "Symfony DomCrawler Component",
+        "homepage": "https://symfony.com"
     },
     {
-        "name": "stack/builder",
-        "version": "v1.0.3",
-        "version_normalized": "1.0.3.0",
+        "name": "symfony/css-selector",
+        "version": "v2.7.5",
+        "version_normalized": "2.7.5.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/stackphp/builder.git",
-            "reference": "c1f8a4693b55c563405024f708a76ef576c3b276"
+            "url": "https://github.com/symfony/css-selector.git",
+            "reference": "abe19cc0429a06be0c133056d1f9859854860970"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/stackphp/builder/zipball/c1f8a4693b55c563405024f708a76ef576c3b276",
-            "reference": "c1f8a4693b55c563405024f708a76ef576c3b276",
+            "url": "https://api.github.com/repos/symfony/css-selector/zipball/abe19cc0429a06be0c133056d1f9859854860970",
+            "reference": "abe19cc0429a06be0c133056d1f9859854860970",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.0",
-            "symfony/http-foundation": "~2.1",
-            "symfony/http-kernel": "~2.1"
+            "php": ">=5.3.9"
         },
         "require-dev": {
-            "silex/silex": "~1.0"
+            "symfony/phpunit-bridge": "~2.7"
         },
-        "time": "2014-11-23 20:37:11",
+        "time": "2015-09-22 13:49:29",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "1.0-dev"
+                "dev-master": "2.7-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
-            "psr-0": {
-                "Stack": "src"
+            "psr-4": {
+                "Symfony\\Component\\CssSelector\\": ""
             }
         },
         "notification-url": "https://packagist.org/downloads/",
@@ -1788,50 +2361,59 @@
         ],
         "authors": [
             {
-                "name": "Igor Wiedler",
-                "email": "igor@wiedler.ch"
+                "name": "Jean-François Simon",
+                "email": "jeanfrancois.simon@sensiolabs.com"
+            },
+            {
+                "name": "Fabien Potencier",
+                "email": "fabien@symfony.com"
+            },
+            {
+                "name": "Symfony Community",
+                "homepage": "https://symfony.com/contributors"
             }
         ],
-        "description": "Builder for stack middlewares based on HttpKernelInterface.",
-        "keywords": [
-            "stack"
-        ]
+        "description": "Symfony CssSelector Component",
+        "homepage": "https://symfony.com"
     },
     {
-        "name": "masterminds/html5",
-        "version": "2.1.2",
-        "version_normalized": "2.1.2.0",
+        "name": "symfony/browser-kit",
+        "version": "v2.7.5",
+        "version_normalized": "2.7.5.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/Masterminds/html5-php.git",
-            "reference": "8f782e0f01a6e33a319bdc8f6de9cfd6569979a4"
+            "url": "https://github.com/symfony/browser-kit.git",
+            "reference": "277a2457776d4cc25706fbdd9d1e4ab2dac884e4"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/Masterminds/html5-php/zipball/8f782e0f01a6e33a319bdc8f6de9cfd6569979a4",
-            "reference": "8f782e0f01a6e33a319bdc8f6de9cfd6569979a4",
+            "url": "https://api.github.com/repos/symfony/browser-kit/zipball/277a2457776d4cc25706fbdd9d1e4ab2dac884e4",
+            "reference": "277a2457776d4cc25706fbdd9d1e4ab2dac884e4",
             "shasum": ""
         },
         "require": {
-            "ext-libxml": "*",
-            "php": ">=5.3.0"
+            "php": ">=5.3.9",
+            "symfony/dom-crawler": "~2.0,>=2.0.5"
         },
         "require-dev": {
-            "phpunit/phpunit": "4.*",
-            "sami/sami": "~2.0",
-            "satooshi/php-coveralls": "0.6.*"
+            "symfony/css-selector": "~2.0,>=2.0.5",
+            "symfony/phpunit-bridge": "~2.7",
+            "symfony/process": "~2.0,>=2.0.5"
         },
-        "time": "2015-06-07 08:43:18",
+        "suggest": {
+            "symfony/process": ""
+        },
+        "time": "2015-09-06 08:36:38",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "2.1-dev"
+                "dev-master": "2.7-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
             "psr-4": {
-                "Masterminds\\": "src"
+                "Symfony\\Component\\BrowserKit\\": ""
             }
         },
         "notification-url": "https://packagist.org/downloads/",
@@ -1840,29 +2422,16 @@
         ],
         "authors": [
             {
-                "name": "Matt Butcher",
-                "email": "technosophos@gmail.com"
-            },
-            {
-                "name": "Asmir Mustafic",
-                "email": "goetas@gmail.com"
+                "name": "Fabien Potencier",
+                "email": "fabien@symfony.com"
             },
             {
-                "name": "Matt Farina",
-                "email": "matt@mattfarina.com"
+                "name": "Symfony Community",
+                "homepage": "https://symfony.com/contributors"
             }
         ],
-        "description": "An HTML5 parser and serializer.",
-        "homepage": "http://masterminds.github.io/html5-php",
-        "keywords": [
-            "HTML5",
-            "dom",
-            "html",
-            "parser",
-            "querypath",
-            "serializer",
-            "xml"
-        ]
+        "description": "Symfony BrowserKit Component",
+        "homepage": "https://symfony.com"
     },
     {
         "name": "guzzlehttp/guzzle",
@@ -1929,155 +2498,38 @@
         ]
     },
     {
-        "name": "twig/twig",
-        "version": "v1.22.2",
-        "version_normalized": "1.22.2.0",
+        "name": "fabpot/goutte",
+        "version": "v3.1.1",
+        "version_normalized": "3.1.1.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/twigphp/Twig.git",
-            "reference": "79249fc8c9ff62e41e217e0c630e2e00bcadda6a"
+            "url": "https://github.com/FriendsOfPHP/Goutte.git",
+            "reference": "751a3dc5c4d86ec3e97c9f27133ef9694d9243cc"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/twigphp/Twig/zipball/79249fc8c9ff62e41e217e0c630e2e00bcadda6a",
-            "reference": "79249fc8c9ff62e41e217e0c630e2e00bcadda6a",
+            "url": "https://api.github.com/repos/FriendsOfPHP/Goutte/zipball/751a3dc5c4d86ec3e97c9f27133ef9694d9243cc",
+            "reference": "751a3dc5c4d86ec3e97c9f27133ef9694d9243cc",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.2.7"
-        },
-        "require-dev": {
-            "symfony/debug": "~2.7",
-            "symfony/phpunit-bridge": "~2.7"
+            "guzzlehttp/guzzle": "^6.0",
+            "php": ">=5.5.0",
+            "symfony/browser-kit": "~2.1",
+            "symfony/css-selector": "~2.1",
+            "symfony/dom-crawler": "~2.1"
         },
-        "time": "2015-09-22 13:59:32",
-        "type": "library",
+        "time": "2015-08-29 16:16:56",
+        "type": "application",
         "extra": {
             "branch-alias": {
-                "dev-master": "1.22-dev"
-            }
-        },
-        "installation-source": "dist",
-        "autoload": {
-            "psr-0": {
-                "Twig_": "lib/"
-            }
-        },
-        "notification-url": "https://packagist.org/downloads/",
-        "license": [
-            "BSD-3-Clause"
-        ],
-        "authors": [
-            {
-                "name": "Fabien Potencier",
-                "email": "fabien@symfony.com",
-                "homepage": "http://fabien.potencier.org",
-                "role": "Lead Developer"
-            },
-            {
-                "name": "Armin Ronacher",
-                "email": "armin.ronacher@active-4.com",
-                "role": "Project Founder"
-            },
-            {
-                "name": "Twig Team",
-                "homepage": "http://twig.sensiolabs.org/contributors",
-                "role": "Contributors"
+                "dev-master": "3.1-dev"
             }
-        ],
-        "description": "Twig, the flexible, fast, and secure template language for PHP",
-        "homepage": "http://twig.sensiolabs.org",
-        "keywords": [
-            "templating"
-        ]
-    },
-    {
-        "name": "wikimedia/composer-merge-plugin",
-        "version": "dev-master",
-        "version_normalized": "9999999-dev",
-        "source": {
-            "type": "git",
-            "url": "https://github.com/wikimedia/composer-merge-plugin.git",
-            "reference": "47bb3388cfeae41a38087ac8465a7d08fa92ea2e"
-        },
-        "dist": {
-            "type": "zip",
-            "url": "https://api.github.com/repos/wikimedia/composer-merge-plugin/zipball/47bb3388cfeae41a38087ac8465a7d08fa92ea2e",
-            "reference": "47bb3388cfeae41a38087ac8465a7d08fa92ea2e",
-            "shasum": ""
-        },
-        "require": {
-            "composer-plugin-api": "^1.0",
-            "php": ">=5.3.2"
-        },
-        "require-dev": {
-            "composer/composer": "1.0.*@dev",
-            "jakub-onderka/php-parallel-lint": "~0.8",
-            "phpspec/prophecy-phpunit": "~1.0",
-            "phpunit/phpunit": "~4.0",
-            "squizlabs/php_codesniffer": "~2.1.0"
-        },
-        "time": "2015-09-22 21:14:25",
-        "type": "composer-plugin",
-        "extra": {
-            "branch-alias": {
-                "dev-master": "1.3.x-dev"
-            },
-            "class": "Wikimedia\\Composer\\MergePlugin"
         },
         "installation-source": "dist",
         "autoload": {
             "psr-4": {
-                "Wikimedia\\Composer\\": "src/"
-            }
-        },
-        "notification-url": "https://packagist.org/downloads/",
-        "license": [
-            "MIT"
-        ],
-        "authors": [
-            {
-                "name": "Bryan Davis",
-                "email": "bd808@wikimedia.org"
-            }
-        ],
-        "description": "Composer plugin to merge multiple composer.json files"
-    },
-    {
-        "name": "composer/installers",
-        "version": "v1.0.21",
-        "version_normalized": "1.0.21.0",
-        "source": {
-            "type": "git",
-            "url": "https://github.com/composer/installers.git",
-            "reference": "d64e23fce42a4063d63262b19b8e7c0f3b5e4c45"
-        },
-        "dist": {
-            "type": "zip",
-            "url": "https://api.github.com/repos/composer/installers/zipball/d64e23fce42a4063d63262b19b8e7c0f3b5e4c45",
-            "reference": "d64e23fce42a4063d63262b19b8e7c0f3b5e4c45",
-            "shasum": ""
-        },
-        "replace": {
-            "roundcube/plugin-installer": "*",
-            "shama/baton": "*"
-        },
-        "require-dev": {
-            "composer/composer": "1.0.*@dev",
-            "phpunit/phpunit": "4.1.*"
-        },
-        "time": "2015-02-18 17:17:01",
-        "type": "composer-installer",
-        "extra": {
-            "class": "Composer\\Installers\\Installer",
-            "branch-alias": {
-                "dev-master": "1.0-dev"
-            }
-        },
-        "installation-source": "dist",
-        "autoload": {
-            "psr-0": {
-                "Composer\\Installers\\": "src/"
+                "Goutte\\": "Goutte"
             }
         },
         "notification-url": "https://packagist.org/downloads/",
@@ -2086,58 +2538,14 @@
         ],
         "authors": [
             {
-                "name": "Kyle Robinson Young",
-                "email": "kyle@dontkry.com",
-                "homepage": "https://github.com/shama"
+                "name": "Fabien Potencier",
+                "email": "fabien@symfony.com"
             }
         ],
-        "description": "A multi-framework Composer library installer",
-        "homepage": "http://composer.github.com/installers/",
+        "description": "A simple PHP Web Scraper",
+        "homepage": "https://github.com/FriendsOfPHP/Goutte",
         "keywords": [
-            "Craft",
-            "Dolibarr",
-            "Hurad",
-            "MODX Evo",
-            "OXID",
-            "SMF",
-            "Thelia",
-            "WolfCMS",
-            "agl",
-            "aimeos",
-            "annotatecms",
-            "bitrix",
-            "cakephp",
-            "chef",
-            "codeigniter",
-            "concrete5",
-            "croogo",
-            "dokuwiki",
-            "drupal",
-            "elgg",
-            "fuelphp",
-            "grav",
-            "installer",
-            "joomla",
-            "kohana",
-            "laravel",
-            "lithium",
-            "magento",
-            "mako",
-            "mediawiki",
-            "modulework",
-            "moodle",
-            "phpbb",
-            "piwik",
-            "ppi",
-            "puppet",
-            "roundcube",
-            "shopware",
-            "silverstripe",
-            "symfony",
-            "typo3",
-            "wordpress",
-            "zend",
-            "zikula"
+            "scraper"
         ]
     },
     {
@@ -2316,325 +2724,91 @@
         ]
     },
     {
-        "name": "phpunit/phpunit-mock-objects",
-        "version": "2.3.8",
-        "version_normalized": "2.3.8.0",
-        "source": {
-            "type": "git",
-            "url": "https://github.com/sebastianbergmann/phpunit-mock-objects.git",
-            "reference": "ac8e7a3db35738d56ee9a76e78a4e03d97628983"
-        },
-        "dist": {
-            "type": "zip",
-            "url": "https://api.github.com/repos/sebastianbergmann/phpunit-mock-objects/zipball/ac8e7a3db35738d56ee9a76e78a4e03d97628983",
-            "reference": "ac8e7a3db35738d56ee9a76e78a4e03d97628983",
-            "shasum": ""
-        },
-        "require": {
-            "doctrine/instantiator": "^1.0.2",
-            "php": ">=5.3.3",
-            "phpunit/php-text-template": "~1.2",
-            "sebastian/exporter": "~1.2"
-        },
-        "require-dev": {
-            "phpunit/phpunit": "~4.4"
-        },
-        "suggest": {
-            "ext-soap": "*"
-        },
-        "time": "2015-10-02 06:51:40",
-        "type": "library",
-        "extra": {
-            "branch-alias": {
-                "dev-master": "2.3.x-dev"
-            }
-        },
-        "installation-source": "dist",
-        "autoload": {
-            "classmap": [
-                "src/"
-            ]
-        },
-        "notification-url": "https://packagist.org/downloads/",
-        "license": [
-            "BSD-3-Clause"
-        ],
-        "authors": [
-            {
-                "name": "Sebastian Bergmann",
-                "email": "sb@sebastian-bergmann.de",
-                "role": "lead"
-            }
-        ],
-        "description": "Mock Object library for PHPUnit",
-        "homepage": "https://github.com/sebastianbergmann/phpunit-mock-objects/",
-        "keywords": [
-            "mock",
-            "xunit"
-        ]
-    },
-    {
-        "name": "phpunit/php-token-stream",
-        "version": "1.4.8",
-        "version_normalized": "1.4.8.0",
-        "source": {
-            "type": "git",
-            "url": "https://github.com/sebastianbergmann/php-token-stream.git",
-            "reference": "3144ae21711fb6cac0b1ab4cbe63b75ce3d4e8da"
-        },
-        "dist": {
-            "type": "zip",
-            "url": "https://api.github.com/repos/sebastianbergmann/php-token-stream/zipball/3144ae21711fb6cac0b1ab4cbe63b75ce3d4e8da",
-            "reference": "3144ae21711fb6cac0b1ab4cbe63b75ce3d4e8da",
-            "shasum": ""
-        },
-        "require": {
-            "ext-tokenizer": "*",
-            "php": ">=5.3.3"
-        },
-        "require-dev": {
-            "phpunit/phpunit": "~4.2"
-        },
-        "time": "2015-09-15 10:49:45",
-        "type": "library",
-        "extra": {
-            "branch-alias": {
-                "dev-master": "1.4-dev"
-            }
-        },
-        "installation-source": "dist",
-        "autoload": {
-            "classmap": [
-                "src/"
-            ]
-        },
-        "notification-url": "https://packagist.org/downloads/",
-        "license": [
-            "BSD-3-Clause"
-        ],
-        "authors": [
-            {
-                "name": "Sebastian Bergmann",
-                "email": "sebastian@phpunit.de"
-            }
-        ],
-        "description": "Wrapper around PHP's tokenizer extension.",
-        "homepage": "https://github.com/sebastianbergmann/php-token-stream/",
-        "keywords": [
-            "tokenizer"
-        ]
-    },
-    {
-        "name": "symfony/class-loader",
-        "version": "v2.7.5",
-        "version_normalized": "2.7.5.0",
-        "source": {
-            "type": "git",
-            "url": "https://github.com/symfony/class-loader.git",
-            "reference": "d957ea6295d7016e20d7eff33a6c1deef819c0d4"
-        },
-        "dist": {
-            "type": "zip",
-            "url": "https://api.github.com/repos/symfony/class-loader/zipball/d957ea6295d7016e20d7eff33a6c1deef819c0d4",
-            "reference": "d957ea6295d7016e20d7eff33a6c1deef819c0d4",
-            "shasum": ""
-        },
-        "require": {
-            "php": ">=5.3.9"
-        },
-        "require-dev": {
-            "symfony/finder": "~2.0,>=2.0.5",
-            "symfony/phpunit-bridge": "~2.7"
-        },
-        "time": "2015-08-26 17:56:37",
-        "type": "library",
-        "extra": {
-            "branch-alias": {
-                "dev-master": "2.7-dev"
-            }
-        },
-        "installation-source": "dist",
-        "autoload": {
-            "psr-4": {
-                "Symfony\\Component\\ClassLoader\\": ""
-            }
-        },
-        "notification-url": "https://packagist.org/downloads/",
-        "license": [
-            "MIT"
-        ],
-        "authors": [
-            {
-                "name": "Fabien Potencier",
-                "email": "fabien@symfony.com"
-            },
-            {
-                "name": "Symfony Community",
-                "homepage": "https://symfony.com/contributors"
-            }
-        ],
-        "description": "Symfony ClassLoader Component",
-        "homepage": "https://symfony.com"
-    },
-    {
-        "name": "symfony/console",
-        "version": "v2.7.5",
-        "version_normalized": "2.7.5.0",
-        "source": {
-            "type": "git",
-            "url": "https://github.com/symfony/console.git",
-            "reference": "06cb17c013a82f94a3d840682b49425cd00a2161"
-        },
-        "dist": {
-            "type": "zip",
-            "url": "https://api.github.com/repos/symfony/console/zipball/06cb17c013a82f94a3d840682b49425cd00a2161",
-            "reference": "06cb17c013a82f94a3d840682b49425cd00a2161",
-            "shasum": ""
-        },
-        "require": {
-            "php": ">=5.3.9"
-        },
-        "require-dev": {
-            "psr/log": "~1.0",
-            "symfony/event-dispatcher": "~2.1",
-            "symfony/phpunit-bridge": "~2.7",
-            "symfony/process": "~2.1"
-        },
-        "suggest": {
-            "psr/log": "For using the console logger",
-            "symfony/event-dispatcher": "",
-            "symfony/process": ""
-        },
-        "time": "2015-09-25 08:32:23",
-        "type": "library",
-        "extra": {
-            "branch-alias": {
-                "dev-master": "2.7-dev"
-            }
-        },
-        "installation-source": "dist",
-        "autoload": {
-            "psr-4": {
-                "Symfony\\Component\\Console\\": ""
-            }
-        },
-        "notification-url": "https://packagist.org/downloads/",
-        "license": [
-            "MIT"
-        ],
-        "authors": [
-            {
-                "name": "Fabien Potencier",
-                "email": "fabien@symfony.com"
-            },
-            {
-                "name": "Symfony Community",
-                "homepage": "https://symfony.com/contributors"
-            }
-        ],
-        "description": "Symfony Console Component",
-        "homepage": "https://symfony.com"
-    },
-    {
-        "name": "symfony/dependency-injection",
-        "version": "v2.7.5",
-        "version_normalized": "2.7.5.0",
+        "name": "mikey179/vfsStream",
+        "version": "v1.6.0",
+        "version_normalized": "1.6.0.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/symfony/dependency-injection.git",
-            "reference": "422c3819b110f610d79c6f1dc38af23787dc790e"
+            "url": "https://github.com/mikey179/vfsStream.git",
+            "reference": "73bcb605b741a7d5044b47592338c633788b0eb7"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/symfony/dependency-injection/zipball/422c3819b110f610d79c6f1dc38af23787dc790e",
-            "reference": "422c3819b110f610d79c6f1dc38af23787dc790e",
+            "url": "https://api.github.com/repos/mikey179/vfsStream/zipball/73bcb605b741a7d5044b47592338c633788b0eb7",
+            "reference": "73bcb605b741a7d5044b47592338c633788b0eb7",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.9"
-        },
-        "conflict": {
-            "symfony/expression-language": "<2.6"
+            "php": ">=5.3.0"
         },
         "require-dev": {
-            "symfony/config": "~2.2",
-            "symfony/expression-language": "~2.6",
-            "symfony/phpunit-bridge": "~2.7",
-            "symfony/yaml": "~2.1"
-        },
-        "suggest": {
-            "symfony/config": "",
-            "symfony/proxy-manager-bridge": "Generate service proxies to lazy load them",
-            "symfony/yaml": ""
+            "phpunit/phpunit": "~4.5"
         },
-        "time": "2015-09-15 08:30:42",
+        "time": "2015-10-06 16:59:57",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "2.7-dev"
+                "dev-master": "1.6.x-dev"
             }
         },
         "installation-source": "dist",
-        "autoload": {
-            "psr-4": {
-                "Symfony\\Component\\DependencyInjection\\": ""
+        "autoload": {
+            "psr-0": {
+                "org\\bovigo\\vfs\\": "src/main/php"
             }
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
-            "MIT"
+            "BSD-3-Clause"
         ],
         "authors": [
             {
-                "name": "Fabien Potencier",
-                "email": "fabien@symfony.com"
-            },
-            {
-                "name": "Symfony Community",
-                "homepage": "https://symfony.com/contributors"
+                "name": "Frank Kleine",
+                "homepage": "http://frankkleine.de/",
+                "role": "Developer"
             }
         ],
-        "description": "Symfony DependencyInjection Component",
-        "homepage": "https://symfony.com"
+        "description": "Virtual file system to mock the real file system in unit tests.",
+        "homepage": "http://vfs.bovigo.org/"
     },
     {
-        "name": "symfony/debug",
-        "version": "v2.7.5",
-        "version_normalized": "2.7.5.0",
+        "name": "phpdocumentor/reflection-docblock",
+        "version": "2.0.4",
+        "version_normalized": "2.0.4.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/symfony/debug.git",
-            "reference": "c79c361bca8e5ada6a47603875a3c964d03b67b1"
+            "url": "https://github.com/phpDocumentor/ReflectionDocBlock.git",
+            "reference": "d68dbdc53dc358a816f00b300704702b2eaff7b8"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/symfony/debug/zipball/c79c361bca8e5ada6a47603875a3c964d03b67b1",
-            "reference": "c79c361bca8e5ada6a47603875a3c964d03b67b1",
+            "url": "https://api.github.com/repos/phpDocumentor/ReflectionDocBlock/zipball/d68dbdc53dc358a816f00b300704702b2eaff7b8",
+            "reference": "d68dbdc53dc358a816f00b300704702b2eaff7b8",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.9",
-            "psr/log": "~1.0"
-        },
-        "conflict": {
-            "symfony/http-kernel": ">=2.3,<2.3.24|~2.4.0|>=2.5,<2.5.9|>=2.6,<2.6.2"
+            "php": ">=5.3.3"
         },
         "require-dev": {
-            "symfony/class-loader": "~2.2",
-            "symfony/http-kernel": "~2.3.24|~2.5.9|~2.6,>=2.6.2",
-            "symfony/phpunit-bridge": "~2.7"
+            "phpunit/phpunit": "~4.0"
         },
-        "time": "2015-09-14 08:41:38",
+        "suggest": {
+            "dflydev/markdown": "~1.0",
+            "erusev/parsedown": "~1.0"
+        },
+        "time": "2015-02-03 12:10:50",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "2.7-dev"
+                "dev-master": "2.0.x-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
-            "psr-4": {
-                "Symfony\\Component\\Debug\\": ""
+            "psr-0": {
+                "phpDocumentor": [
+                    "src/"
+                ]
             }
         },
         "notification-url": "https://packagist.org/downloads/",
@@ -2643,103 +2817,84 @@
         ],
         "authors": [
             {
-                "name": "Fabien Potencier",
-                "email": "fabien@symfony.com"
-            },
-            {
-                "name": "Symfony Community",
-                "homepage": "https://symfony.com/contributors"
+                "name": "Mike van Riel",
+                "email": "mike.vanriel@naenius.com"
             }
-        ],
-        "description": "Symfony Debug Component",
-        "homepage": "https://symfony.com"
+        ]
     },
     {
-        "name": "symfony/http-foundation",
-        "version": "v2.7.5",
-        "version_normalized": "2.7.5.0",
+        "name": "phpunit/php-token-stream",
+        "version": "1.4.8",
+        "version_normalized": "1.4.8.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/symfony/http-foundation.git",
-            "reference": "e1509119f164a0d0a940d7d924d693a7a28a5470"
+            "url": "https://github.com/sebastianbergmann/php-token-stream.git",
+            "reference": "3144ae21711fb6cac0b1ab4cbe63b75ce3d4e8da"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/symfony/http-foundation/zipball/e1509119f164a0d0a940d7d924d693a7a28a5470",
-            "reference": "e1509119f164a0d0a940d7d924d693a7a28a5470",
+            "url": "https://api.github.com/repos/sebastianbergmann/php-token-stream/zipball/3144ae21711fb6cac0b1ab4cbe63b75ce3d4e8da",
+            "reference": "3144ae21711fb6cac0b1ab4cbe63b75ce3d4e8da",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.9"
+            "ext-tokenizer": "*",
+            "php": ">=5.3.3"
         },
         "require-dev": {
-            "symfony/expression-language": "~2.4",
-            "symfony/phpunit-bridge": "~2.7"
+            "phpunit/phpunit": "~4.2"
         },
-        "time": "2015-09-22 13:49:29",
+        "time": "2015-09-15 10:49:45",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "2.7-dev"
+                "dev-master": "1.4-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
-            "psr-4": {
-                "Symfony\\Component\\HttpFoundation\\": ""
-            },
             "classmap": [
-                "Resources/stubs"
+                "src/"
             ]
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
-            "MIT"
+            "BSD-3-Clause"
         ],
         "authors": [
             {
-                "name": "Fabien Potencier",
-                "email": "fabien@symfony.com"
-            },
-            {
-                "name": "Symfony Community",
-                "homepage": "https://symfony.com/contributors"
+                "name": "Sebastian Bergmann",
+                "email": "sebastian@phpunit.de"
             }
         ],
-        "description": "Symfony HttpFoundation Component",
-        "homepage": "https://symfony.com"
+        "description": "Wrapper around PHP's tokenizer extension.",
+        "homepage": "https://github.com/sebastianbergmann/php-token-stream/",
+        "keywords": [
+            "tokenizer"
+        ]
     },
     {
-        "name": "symfony/event-dispatcher",
+        "name": "symfony/yaml",
         "version": "v2.7.5",
         "version_normalized": "2.7.5.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/symfony/event-dispatcher.git",
-            "reference": "ae4dcc2a8d3de98bd794167a3ccda1311597c5d9"
+            "url": "https://github.com/symfony/yaml.git",
+            "reference": "31cb2ad0155c95b88ee55fe12bc7ff92232c1770"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/ae4dcc2a8d3de98bd794167a3ccda1311597c5d9",
-            "reference": "ae4dcc2a8d3de98bd794167a3ccda1311597c5d9",
+            "url": "https://api.github.com/repos/symfony/yaml/zipball/31cb2ad0155c95b88ee55fe12bc7ff92232c1770",
+            "reference": "31cb2ad0155c95b88ee55fe12bc7ff92232c1770",
             "shasum": ""
         },
         "require": {
             "php": ">=5.3.9"
         },
         "require-dev": {
-            "psr/log": "~1.0",
-            "symfony/config": "~2.0,>=2.0.5",
-            "symfony/dependency-injection": "~2.6",
-            "symfony/expression-language": "~2.6",
-            "symfony/phpunit-bridge": "~2.7",
-            "symfony/stopwatch": "~2.3"
-        },
-        "suggest": {
-            "symfony/dependency-injection": "",
-            "symfony/http-kernel": ""
+            "symfony/phpunit-bridge": "~2.7"
         },
-        "time": "2015-09-22 13:49:29",
+        "time": "2015-09-14 14:14:09",
         "type": "library",
         "extra": {
             "branch-alias": {
@@ -2749,7 +2904,7 @@
         "installation-source": "dist",
         "autoload": {
             "psr-4": {
-                "Symfony\\Component\\EventDispatcher\\": ""
+                "Symfony\\Component\\Yaml\\": ""
             }
         },
         "notification-url": "https://packagist.org/downloads/",
@@ -2766,555 +2921,473 @@
                 "homepage": "https://symfony.com/contributors"
             }
         ],
-        "description": "Symfony EventDispatcher Component",
+        "description": "Symfony Yaml Component",
         "homepage": "https://symfony.com"
     },
     {
-        "name": "symfony/http-kernel",
-        "version": "v2.7.5",
-        "version_normalized": "2.7.5.0",
+        "name": "sebastian/version",
+        "version": "1.0.6",
+        "version_normalized": "1.0.6.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/symfony/http-kernel.git",
-            "reference": "353aa457424262d7d4e4289ea483145921cffcb5"
+            "url": "https://github.com/sebastianbergmann/version.git",
+            "reference": "58b3a85e7999757d6ad81c787a1fbf5ff6c628c6"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/symfony/http-kernel/zipball/353aa457424262d7d4e4289ea483145921cffcb5",
-            "reference": "353aa457424262d7d4e4289ea483145921cffcb5",
+            "url": "https://api.github.com/repos/sebastianbergmann/version/zipball/58b3a85e7999757d6ad81c787a1fbf5ff6c628c6",
+            "reference": "58b3a85e7999757d6ad81c787a1fbf5ff6c628c6",
             "shasum": ""
         },
-        "require": {
-            "php": ">=5.3.9",
-            "psr/log": "~1.0",
-            "symfony/debug": "~2.6,>=2.6.2",
-            "symfony/event-dispatcher": "~2.6,>=2.6.7",
-            "symfony/http-foundation": "~2.5,>=2.5.4"
-        },
-        "conflict": {
-            "symfony/config": "<2.7"
-        },
-        "require-dev": {
-            "symfony/browser-kit": "~2.3",
-            "symfony/class-loader": "~2.1",
-            "symfony/config": "~2.7",
-            "symfony/console": "~2.3",
-            "symfony/css-selector": "~2.0,>=2.0.5",
-            "symfony/dependency-injection": "~2.2",
-            "symfony/dom-crawler": "~2.0,>=2.0.5",
-            "symfony/expression-language": "~2.4",
-            "symfony/finder": "~2.0,>=2.0.5",
-            "symfony/phpunit-bridge": "~2.7",
-            "symfony/process": "~2.0,>=2.0.5",
-            "symfony/routing": "~2.2",
-            "symfony/stopwatch": "~2.3",
-            "symfony/templating": "~2.2",
-            "symfony/translation": "~2.0,>=2.0.5",
-            "symfony/var-dumper": "~2.6"
-        },
-        "suggest": {
-            "symfony/browser-kit": "",
-            "symfony/class-loader": "",
-            "symfony/config": "",
-            "symfony/console": "",
-            "symfony/dependency-injection": "",
-            "symfony/finder": "",
-            "symfony/var-dumper": ""
-        },
-        "time": "2015-09-25 11:16:52",
+        "time": "2015-06-21 13:59:46",
         "type": "library",
-        "extra": {
-            "branch-alias": {
-                "dev-master": "2.7-dev"
-            }
-        },
         "installation-source": "dist",
         "autoload": {
-            "psr-4": {
-                "Symfony\\Component\\HttpKernel\\": ""
-            }
+            "classmap": [
+                "src/"
+            ]
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
-            "MIT"
+            "BSD-3-Clause"
         ],
         "authors": [
             {
-                "name": "Fabien Potencier",
-                "email": "fabien@symfony.com"
-            },
-            {
-                "name": "Symfony Community",
-                "homepage": "https://symfony.com/contributors"
+                "name": "Sebastian Bergmann",
+                "email": "sebastian@phpunit.de",
+                "role": "lead"
             }
         ],
-        "description": "Symfony HttpKernel Component",
-        "homepage": "https://symfony.com"
+        "description": "Library that helps with managing the version number of Git-hosted PHP projects",
+        "homepage": "https://github.com/sebastianbergmann/version"
     },
     {
-        "name": "symfony/routing",
-        "version": "v2.7.5",
-        "version_normalized": "2.7.5.0",
+        "name": "sebastian/global-state",
+        "version": "1.0.0",
+        "version_normalized": "1.0.0.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/symfony/routing.git",
-            "reference": "6c5fae83efa20baf166fcf4582f57094e9f60f16"
+            "url": "https://github.com/sebastianbergmann/global-state.git",
+            "reference": "c7428acdb62ece0a45e6306f1ae85e1c05b09c01"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/symfony/routing/zipball/6c5fae83efa20baf166fcf4582f57094e9f60f16",
-            "reference": "6c5fae83efa20baf166fcf4582f57094e9f60f16",
+            "url": "https://api.github.com/repos/sebastianbergmann/global-state/zipball/c7428acdb62ece0a45e6306f1ae85e1c05b09c01",
+            "reference": "c7428acdb62ece0a45e6306f1ae85e1c05b09c01",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.9"
-        },
-        "conflict": {
-            "symfony/config": "<2.7"
+            "php": ">=5.3.3"
         },
         "require-dev": {
-            "doctrine/annotations": "~1.0",
-            "doctrine/common": "~2.2",
-            "psr/log": "~1.0",
-            "symfony/config": "~2.7",
-            "symfony/expression-language": "~2.4",
-            "symfony/http-foundation": "~2.3",
-            "symfony/phpunit-bridge": "~2.7",
-            "symfony/yaml": "~2.0,>=2.0.5"
+            "phpunit/phpunit": "~4.2"
         },
         "suggest": {
-            "doctrine/annotations": "For using the annotation loader",
-            "symfony/config": "For using the all-in-one router or any loader",
-            "symfony/expression-language": "For using expression matching",
-            "symfony/yaml": "For using the YAML loader"
+            "ext-uopz": "*"
         },
-        "time": "2015-09-14 14:14:09",
+        "time": "2014-10-06 09:23:50",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "2.7-dev"
+                "dev-master": "1.0-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
-            "psr-4": {
-                "Symfony\\Component\\Routing\\": ""
-            }
+            "classmap": [
+                "src/"
+            ]
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
-            "MIT"
+            "BSD-3-Clause"
         ],
         "authors": [
             {
-                "name": "Fabien Potencier",
-                "email": "fabien@symfony.com"
-            },
-            {
-                "name": "Symfony Community",
-                "homepage": "https://symfony.com/contributors"
+                "name": "Sebastian Bergmann",
+                "email": "sebastian@phpunit.de"
             }
         ],
-        "description": "Symfony Routing Component",
-        "homepage": "https://symfony.com",
+        "description": "Snapshotting of global state",
+        "homepage": "http://www.github.com/sebastianbergmann/global-state",
         "keywords": [
-            "router",
-            "routing",
-            "uri",
-            "url"
+            "global state"
         ]
     },
     {
-        "name": "symfony/serializer",
-        "version": "v2.7.5",
-        "version_normalized": "2.7.5.0",
+        "name": "sebastian/recursion-context",
+        "version": "1.0.1",
+        "version_normalized": "1.0.1.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/symfony/serializer.git",
-            "reference": "baf24f86a8656eea9c80988f332e51461bfcb67f"
+            "url": "https://github.com/sebastianbergmann/recursion-context.git",
+            "reference": "994d4a811bafe801fb06dccbee797863ba2792ba"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/symfony/serializer/zipball/baf24f86a8656eea9c80988f332e51461bfcb67f",
-            "reference": "baf24f86a8656eea9c80988f332e51461bfcb67f",
+            "url": "https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/994d4a811bafe801fb06dccbee797863ba2792ba",
+            "reference": "994d4a811bafe801fb06dccbee797863ba2792ba",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.9"
+            "php": ">=5.3.3"
         },
         "require-dev": {
-            "doctrine/annotations": "~1.0",
-            "doctrine/cache": "~1.0",
-            "symfony/config": "~2.2",
-            "symfony/phpunit-bridge": "~2.7",
-            "symfony/property-access": "~2.3",
-            "symfony/yaml": "~2.0,>=2.0.5"
-        },
-        "suggest": {
-            "doctrine/annotations": "For using the annotation mapping. You will also need doctrine/cache.",
-            "doctrine/cache": "For using the default cached annotation reader and metadata cache.",
-            "symfony/config": "For using the XML mapping loader.",
-            "symfony/property-access": "For using the ObjectNormalizer.",
-            "symfony/yaml": "For using the default YAML mapping loader."
+            "phpunit/phpunit": "~4.4"
         },
-        "time": "2015-08-31 16:44:53",
+        "time": "2015-06-21 08:04:50",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "2.7-dev"
+                "dev-master": "1.0.x-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
-            "psr-4": {
-                "Symfony\\Component\\Serializer\\": ""
-            }
+            "classmap": [
+                "src/"
+            ]
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
-            "MIT"
+            "BSD-3-Clause"
         ],
         "authors": [
             {
-                "name": "Fabien Potencier",
-                "email": "fabien@symfony.com"
+                "name": "Jeff Welch",
+                "email": "whatthejeff@gmail.com"
             },
             {
-                "name": "Symfony Community",
-                "homepage": "https://symfony.com/contributors"
+                "name": "Sebastian Bergmann",
+                "email": "sebastian@phpunit.de"
+            },
+            {
+                "name": "Adam Harvey",
+                "email": "aharvey@php.net"
             }
         ],
-        "description": "Symfony Serializer Component",
-        "homepage": "https://symfony.com"
+        "description": "Provides functionality to recursively process PHP variables",
+        "homepage": "http://www.github.com/sebastianbergmann/recursion-context"
     },
     {
-        "name": "symfony/translation",
-        "version": "v2.7.5",
-        "version_normalized": "2.7.5.0",
+        "name": "sebastian/exporter",
+        "version": "1.2.1",
+        "version_normalized": "1.2.1.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/symfony/translation.git",
-            "reference": "485877661835e188cd78345c6d4eef1290d17571"
+            "url": "https://github.com/sebastianbergmann/exporter.git",
+            "reference": "7ae5513327cb536431847bcc0c10edba2701064e"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/symfony/translation/zipball/485877661835e188cd78345c6d4eef1290d17571",
-            "reference": "485877661835e188cd78345c6d4eef1290d17571",
+            "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/7ae5513327cb536431847bcc0c10edba2701064e",
+            "reference": "7ae5513327cb536431847bcc0c10edba2701064e",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.9"
-        },
-        "conflict": {
-            "symfony/config": "<2.7"
+            "php": ">=5.3.3",
+            "sebastian/recursion-context": "~1.0"
         },
         "require-dev": {
-            "psr/log": "~1.0",
-            "symfony/config": "~2.7",
-            "symfony/intl": "~2.4",
-            "symfony/phpunit-bridge": "~2.7",
-            "symfony/yaml": "~2.2"
-        },
-        "suggest": {
-            "psr/log": "To use logging capability in translator",
-            "symfony/config": "",
-            "symfony/yaml": ""
+            "phpunit/phpunit": "~4.4"
         },
-        "time": "2015-09-06 08:36:38",
+        "time": "2015-06-21 07:55:53",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "2.7-dev"
+                "dev-master": "1.2.x-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
-            "psr-4": {
-                "Symfony\\Component\\Translation\\": ""
-            }
+            "classmap": [
+                "src/"
+            ]
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
-            "MIT"
+            "BSD-3-Clause"
         ],
         "authors": [
             {
-                "name": "Fabien Potencier",
-                "email": "fabien@symfony.com"
+                "name": "Jeff Welch",
+                "email": "whatthejeff@gmail.com"
             },
             {
-                "name": "Symfony Community",
-                "homepage": "https://symfony.com/contributors"
+                "name": "Volker Dusch",
+                "email": "github@wallbash.com"
+            },
+            {
+                "name": "Bernhard Schussek",
+                "email": "bschussek@2bepublished.at"
+            },
+            {
+                "name": "Sebastian Bergmann",
+                "email": "sebastian@phpunit.de"
+            },
+            {
+                "name": "Adam Harvey",
+                "email": "aharvey@php.net"
             }
         ],
-        "description": "Symfony Translation Component",
-        "homepage": "https://symfony.com"
+        "description": "Provides the functionality to export PHP variables for visualization",
+        "homepage": "http://www.github.com/sebastianbergmann/exporter",
+        "keywords": [
+            "export",
+            "exporter"
+        ]
     },
     {
-        "name": "symfony/validator",
-        "version": "v2.7.5",
-        "version_normalized": "2.7.5.0",
+        "name": "sebastian/environment",
+        "version": "1.3.2",
+        "version_normalized": "1.3.2.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/symfony/validator.git",
-            "reference": "b359dc71e253ce6eb69eefbd5088032241e7a66f"
+            "url": "https://github.com/sebastianbergmann/environment.git",
+            "reference": "6324c907ce7a52478eeeaede764f48733ef5ae44"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/symfony/validator/zipball/b359dc71e253ce6eb69eefbd5088032241e7a66f",
-            "reference": "b359dc71e253ce6eb69eefbd5088032241e7a66f",
+            "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/6324c907ce7a52478eeeaede764f48733ef5ae44",
+            "reference": "6324c907ce7a52478eeeaede764f48733ef5ae44",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.9",
-            "symfony/translation": "~2.4"
+            "php": ">=5.3.3"
         },
         "require-dev": {
-            "doctrine/annotations": "~1.0",
-            "doctrine/cache": "~1.0",
-            "egulias/email-validator": "~1.2,>=1.2.1",
-            "symfony/config": "~2.2",
-            "symfony/expression-language": "~2.4",
-            "symfony/http-foundation": "~2.1",
-            "symfony/intl": "~2.4",
-            "symfony/phpunit-bridge": "~2.7",
-            "symfony/property-access": "~2.3",
-            "symfony/yaml": "~2.0,>=2.0.5"
-        },
-        "suggest": {
-            "doctrine/annotations": "For using the annotation mapping. You will also need doctrine/cache.",
-            "doctrine/cache": "For using the default cached annotation reader and metadata cache.",
-            "egulias/email-validator": "Strict (RFC compliant) email validation",
-            "symfony/config": "",
-            "symfony/expression-language": "For using the 2.4 Expression validator",
-            "symfony/http-foundation": "",
-            "symfony/intl": "",
-            "symfony/property-access": "For using the 2.4 Validator API",
-            "symfony/yaml": ""
+            "phpunit/phpunit": "~4.4"
         },
-        "time": "2015-09-23 11:13:27",
+        "time": "2015-08-03 06:14:51",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "2.7-dev"
+                "dev-master": "1.3.x-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
-            "psr-4": {
-                "Symfony\\Component\\Validator\\": ""
-            }
+            "classmap": [
+                "src/"
+            ]
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
-            "MIT"
+            "BSD-3-Clause"
         ],
         "authors": [
             {
-                "name": "Fabien Potencier",
-                "email": "fabien@symfony.com"
-            },
-            {
-                "name": "Symfony Community",
-                "homepage": "https://symfony.com/contributors"
+                "name": "Sebastian Bergmann",
+                "email": "sebastian@phpunit.de"
             }
         ],
-        "description": "Symfony Validator Component",
-        "homepage": "https://symfony.com"
+        "description": "Provides functionality to handle HHVM/PHP environments",
+        "homepage": "http://www.github.com/sebastianbergmann/environment",
+        "keywords": [
+            "Xdebug",
+            "environment",
+            "hhvm"
+        ]
     },
     {
-        "name": "symfony/process",
-        "version": "v2.7.5",
-        "version_normalized": "2.7.5.0",
+        "name": "sebastian/diff",
+        "version": "1.3.0",
+        "version_normalized": "1.3.0.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/symfony/process.git",
-            "reference": "b27c8e317922cd3cdd3600850273cf6b82b2e8e9"
+            "url": "https://github.com/sebastianbergmann/diff.git",
+            "reference": "863df9687835c62aa423a22412d26fa2ebde3fd3"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/symfony/process/zipball/b27c8e317922cd3cdd3600850273cf6b82b2e8e9",
-            "reference": "b27c8e317922cd3cdd3600850273cf6b82b2e8e9",
+            "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/863df9687835c62aa423a22412d26fa2ebde3fd3",
+            "reference": "863df9687835c62aa423a22412d26fa2ebde3fd3",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.9"
+            "php": ">=5.3.3"
         },
         "require-dev": {
-            "symfony/phpunit-bridge": "~2.7"
+            "phpunit/phpunit": "~4.2"
         },
-        "time": "2015-09-19 19:59:23",
+        "time": "2015-02-22 15:13:53",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "2.7-dev"
+                "dev-master": "1.3-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
-            "psr-4": {
-                "Symfony\\Component\\Process\\": ""
-            }
+            "classmap": [
+                "src/"
+            ]
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
-            "MIT"
+            "BSD-3-Clause"
         ],
         "authors": [
-            {
-                "name": "Fabien Potencier",
-                "email": "fabien@symfony.com"
+            {
+                "name": "Kore Nordmann",
+                "email": "mail@kore-nordmann.de"
             },
             {
-                "name": "Symfony Community",
-                "homepage": "https://symfony.com/contributors"
+                "name": "Sebastian Bergmann",
+                "email": "sebastian@phpunit.de"
             }
         ],
-        "description": "Symfony Process Component",
-        "homepage": "https://symfony.com"
+        "description": "Diff implementation",
+        "homepage": "http://www.github.com/sebastianbergmann/diff",
+        "keywords": [
+            "diff"
+        ]
     },
     {
-        "name": "symfony/yaml",
-        "version": "v2.7.5",
-        "version_normalized": "2.7.5.0",
+        "name": "sebastian/comparator",
+        "version": "1.2.0",
+        "version_normalized": "1.2.0.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/symfony/yaml.git",
-            "reference": "31cb2ad0155c95b88ee55fe12bc7ff92232c1770"
+            "url": "https://github.com/sebastianbergmann/comparator.git",
+            "reference": "937efb279bd37a375bcadf584dec0726f84dbf22"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/symfony/yaml/zipball/31cb2ad0155c95b88ee55fe12bc7ff92232c1770",
-            "reference": "31cb2ad0155c95b88ee55fe12bc7ff92232c1770",
+            "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/937efb279bd37a375bcadf584dec0726f84dbf22",
+            "reference": "937efb279bd37a375bcadf584dec0726f84dbf22",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.9"
+            "php": ">=5.3.3",
+            "sebastian/diff": "~1.2",
+            "sebastian/exporter": "~1.2"
         },
         "require-dev": {
-            "symfony/phpunit-bridge": "~2.7"
+            "phpunit/phpunit": "~4.4"
         },
-        "time": "2015-09-14 14:14:09",
+        "time": "2015-07-26 15:48:44",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "2.7-dev"
+                "dev-master": "1.2.x-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
-            "psr-4": {
-                "Symfony\\Component\\Yaml\\": ""
-            }
+            "classmap": [
+                "src/"
+            ]
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
-            "MIT"
+            "BSD-3-Clause"
         ],
         "authors": [
             {
-                "name": "Fabien Potencier",
-                "email": "fabien@symfony.com"
+                "name": "Jeff Welch",
+                "email": "whatthejeff@gmail.com"
             },
             {
-                "name": "Symfony Community",
-                "homepage": "https://symfony.com/contributors"
+                "name": "Volker Dusch",
+                "email": "github@wallbash.com"
+            },
+            {
+                "name": "Bernhard Schussek",
+                "email": "bschussek@2bepublished.at"
+            },
+            {
+                "name": "Sebastian Bergmann",
+                "email": "sebastian@phpunit.de"
             }
         ],
-        "description": "Symfony Yaml Component",
-        "homepage": "https://symfony.com"
+        "description": "Provides the functionality to compare PHP values for equality",
+        "homepage": "http://www.github.com/sebastianbergmann/comparator",
+        "keywords": [
+            "comparator",
+            "compare",
+            "equality"
+        ]
     },
     {
-        "name": "symfony/css-selector",
-        "version": "v2.7.5",
-        "version_normalized": "2.7.5.0",
+        "name": "phpunit/php-text-template",
+        "version": "1.2.1",
+        "version_normalized": "1.2.1.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/symfony/css-selector.git",
-            "reference": "abe19cc0429a06be0c133056d1f9859854860970"
+            "url": "https://github.com/sebastianbergmann/php-text-template.git",
+            "reference": "31f8b717e51d9a2afca6c9f046f5d69fc27c8686"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/symfony/css-selector/zipball/abe19cc0429a06be0c133056d1f9859854860970",
-            "reference": "abe19cc0429a06be0c133056d1f9859854860970",
+            "url": "https://api.github.com/repos/sebastianbergmann/php-text-template/zipball/31f8b717e51d9a2afca6c9f046f5d69fc27c8686",
+            "reference": "31f8b717e51d9a2afca6c9f046f5d69fc27c8686",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.9"
-        },
-        "require-dev": {
-            "symfony/phpunit-bridge": "~2.7"
+            "php": ">=5.3.3"
         },
-        "time": "2015-09-22 13:49:29",
+        "time": "2015-06-21 13:50:34",
         "type": "library",
-        "extra": {
-            "branch-alias": {
-                "dev-master": "2.7-dev"
-            }
-        },
         "installation-source": "dist",
         "autoload": {
-            "psr-4": {
-                "Symfony\\Component\\CssSelector\\": ""
-            }
+            "classmap": [
+                "src/"
+            ]
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
-            "MIT"
+            "BSD-3-Clause"
         ],
         "authors": [
             {
-                "name": "Jean-François Simon",
-                "email": "jeanfrancois.simon@sensiolabs.com"
-            },
-            {
-                "name": "Fabien Potencier",
-                "email": "fabien@symfony.com"
-            },
-            {
-                "name": "Symfony Community",
-                "homepage": "https://symfony.com/contributors"
+                "name": "Sebastian Bergmann",
+                "email": "sebastian@phpunit.de",
+                "role": "lead"
             }
         ],
-        "description": "Symfony CssSelector Component",
-        "homepage": "https://symfony.com"
+        "description": "Simple template engine.",
+        "homepage": "https://github.com/sebastianbergmann/php-text-template/",
+        "keywords": [
+            "template"
+        ]
     },
     {
-        "name": "symfony/dom-crawler",
-        "version": "v2.7.5",
-        "version_normalized": "2.7.5.0",
+        "name": "doctrine/instantiator",
+        "version": "1.0.5",
+        "version_normalized": "1.0.5.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/symfony/dom-crawler.git",
-            "reference": "2e185ca136399f902b948694987e62c80099c052"
+            "url": "https://github.com/doctrine/instantiator.git",
+            "reference": "8e884e78f9f0eb1329e445619e04456e64d8051d"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/symfony/dom-crawler/zipball/2e185ca136399f902b948694987e62c80099c052",
-            "reference": "2e185ca136399f902b948694987e62c80099c052",
+            "url": "https://api.github.com/repos/doctrine/instantiator/zipball/8e884e78f9f0eb1329e445619e04456e64d8051d",
+            "reference": "8e884e78f9f0eb1329e445619e04456e64d8051d",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.9"
+            "php": ">=5.3,<8.0-DEV"
         },
         "require-dev": {
-            "symfony/css-selector": "~2.3",
-            "symfony/phpunit-bridge": "~2.7"
-        },
-        "suggest": {
-            "symfony/css-selector": ""
+            "athletic/athletic": "~0.1.8",
+            "ext-pdo": "*",
+            "ext-phar": "*",
+            "phpunit/phpunit": "~4.0",
+            "squizlabs/php_codesniffer": "~2.0"
         },
-        "time": "2015-09-20 21:13:58",
+        "time": "2015-06-14 21:17:01",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "2.7-dev"
+                "dev-master": "1.0.x-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
             "psr-4": {
-                "Symfony\\Component\\DomCrawler\\": ""
+                "Doctrine\\Instantiator\\": "src/Doctrine/Instantiator/"
             }
         },
         "notification-url": "https://packagist.org/downloads/",
@@ -3323,170 +3396,149 @@
         ],
         "authors": [
             {
-                "name": "Fabien Potencier",
-                "email": "fabien@symfony.com"
-            },
-            {
-                "name": "Symfony Community",
-                "homepage": "https://symfony.com/contributors"
+                "name": "Marco Pivetta",
+                "email": "ocramius@gmail.com",
+                "homepage": "http://ocramius.github.com/"
             }
         ],
-        "description": "Symfony DomCrawler Component",
-        "homepage": "https://symfony.com"
+        "description": "A small, lightweight utility to instantiate objects in PHP without invoking their constructors",
+        "homepage": "https://github.com/doctrine/instantiator",
+        "keywords": [
+            "constructor",
+            "instantiate"
+        ]
     },
     {
-        "name": "symfony/browser-kit",
-        "version": "v2.7.5",
-        "version_normalized": "2.7.5.0",
+        "name": "phpunit/phpunit-mock-objects",
+        "version": "2.3.8",
+        "version_normalized": "2.3.8.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/symfony/browser-kit.git",
-            "reference": "277a2457776d4cc25706fbdd9d1e4ab2dac884e4"
+            "url": "https://github.com/sebastianbergmann/phpunit-mock-objects.git",
+            "reference": "ac8e7a3db35738d56ee9a76e78a4e03d97628983"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/symfony/browser-kit/zipball/277a2457776d4cc25706fbdd9d1e4ab2dac884e4",
-            "reference": "277a2457776d4cc25706fbdd9d1e4ab2dac884e4",
+            "url": "https://api.github.com/repos/sebastianbergmann/phpunit-mock-objects/zipball/ac8e7a3db35738d56ee9a76e78a4e03d97628983",
+            "reference": "ac8e7a3db35738d56ee9a76e78a4e03d97628983",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.9",
-            "symfony/dom-crawler": "~2.0,>=2.0.5"
+            "doctrine/instantiator": "^1.0.2",
+            "php": ">=5.3.3",
+            "phpunit/php-text-template": "~1.2",
+            "sebastian/exporter": "~1.2"
         },
         "require-dev": {
-            "symfony/css-selector": "~2.0,>=2.0.5",
-            "symfony/phpunit-bridge": "~2.7",
-            "symfony/process": "~2.0,>=2.0.5"
+            "phpunit/phpunit": "~4.4"
         },
         "suggest": {
-            "symfony/process": ""
+            "ext-soap": "*"
         },
-        "time": "2015-09-06 08:36:38",
+        "time": "2015-10-02 06:51:40",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "2.7-dev"
+                "dev-master": "2.3.x-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
-            "psr-4": {
-                "Symfony\\Component\\BrowserKit\\": ""
-            }
+            "classmap": [
+                "src/"
+            ]
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
-            "MIT"
+            "BSD-3-Clause"
         ],
         "authors": [
             {
-                "name": "Fabien Potencier",
-                "email": "fabien@symfony.com"
-            },
-            {
-                "name": "Symfony Community",
-                "homepage": "https://symfony.com/contributors"
+                "name": "Sebastian Bergmann",
+                "email": "sb@sebastian-bergmann.de",
+                "role": "lead"
             }
         ],
-        "description": "Symfony BrowserKit Component",
-        "homepage": "https://symfony.com"
+        "description": "Mock Object library for PHPUnit",
+        "homepage": "https://github.com/sebastianbergmann/phpunit-mock-objects/",
+        "keywords": [
+            "mock",
+            "xunit"
+        ]
     },
     {
-        "name": "composer/semver",
-        "version": "1.0.0",
-        "version_normalized": "1.0.0.0",
+        "name": "phpunit/php-timer",
+        "version": "1.0.7",
+        "version_normalized": "1.0.7.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/composer/semver.git",
-            "reference": "d0e1ccc6d44ab318b758d709e19176037da6b1ba"
+            "url": "https://github.com/sebastianbergmann/php-timer.git",
+            "reference": "3e82f4e9fc92665fafd9157568e4dcb01d014e5b"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/composer/semver/zipball/d0e1ccc6d44ab318b758d709e19176037da6b1ba",
-            "reference": "d0e1ccc6d44ab318b758d709e19176037da6b1ba",
+            "url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/3e82f4e9fc92665fafd9157568e4dcb01d014e5b",
+            "reference": "3e82f4e9fc92665fafd9157568e4dcb01d014e5b",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.2"
-        },
-        "require-dev": {
-            "phpunit/phpunit": "~4.5",
-            "phpunit/phpunit-mock-objects": "~2.3"
-        },
-        "time": "2015-09-21 09:42:36",
-        "type": "library",
-        "extra": {
-            "branch-alias": {
-                "dev-master": "0.1-dev"
-            }
+            "php": ">=5.3.3"
         },
+        "time": "2015-06-21 08:01:12",
+        "type": "library",
         "installation-source": "dist",
         "autoload": {
-            "psr-4": {
-                "Composer\\Semver\\": "src"
-            }
+            "classmap": [
+                "src/"
+            ]
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
-            "MIT"
+            "BSD-3-Clause"
         ],
         "authors": [
             {
-                "name": "Rob Bast",
-                "email": "rob.bast@gmail.com"
-            },
-            {
-                "name": "Nils Adermann",
-                "email": "naderman@naderman.de",
-                "homepage": "http://www.naderman.de"
-            },
-            {
-                "name": "Jordi Boggiano",
-                "email": "j.boggiano@seld.be",
-                "homepage": "http://seld.be"
+                "name": "Sebastian Bergmann",
+                "email": "sb@sebastian-bergmann.de",
+                "role": "lead"
             }
         ],
-        "description": "Semver library that offers utilities, version constraint parsing and validation.",
+        "description": "Utility class for timing",
+        "homepage": "https://github.com/sebastianbergmann/php-timer/",
         "keywords": [
-            "semantic",
-            "semver",
-            "validation",
-            "versioning"
+            "timer"
         ]
     },
     {
-        "name": "mikey179/vfsStream",
-        "version": "v1.6.0",
-        "version_normalized": "1.6.0.0",
+        "name": "phpunit/php-file-iterator",
+        "version": "1.4.1",
+        "version_normalized": "1.4.1.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/mikey179/vfsStream.git",
-            "reference": "73bcb605b741a7d5044b47592338c633788b0eb7"
+            "url": "https://github.com/sebastianbergmann/php-file-iterator.git",
+            "reference": "6150bf2c35d3fc379e50c7602b75caceaa39dbf0"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/mikey179/vfsStream/zipball/73bcb605b741a7d5044b47592338c633788b0eb7",
-            "reference": "73bcb605b741a7d5044b47592338c633788b0eb7",
+            "url": "https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/6150bf2c35d3fc379e50c7602b75caceaa39dbf0",
+            "reference": "6150bf2c35d3fc379e50c7602b75caceaa39dbf0",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.0"
-        },
-        "require-dev": {
-            "phpunit/phpunit": "~4.5"
+            "php": ">=5.3.3"
         },
-        "time": "2015-10-06 16:59:57",
+        "time": "2015-06-21 13:08:43",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "1.6.x-dev"
+                "dev-master": "1.4.x-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
-            "psr-0": {
-                "org\\bovigo\\vfs\\": "src/main/php"
-            }
+            "classmap": [
+                "src/"
+            ]
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
@@ -3494,13 +3546,17 @@
         ],
         "authors": [
             {
-                "name": "Frank Kleine",
-                "homepage": "http://frankkleine.de/",
-                "role": "Developer"
+                "name": "Sebastian Bergmann",
+                "email": "sb@sebastian-bergmann.de",
+                "role": "lead"
             }
         ],
-        "description": "Virtual file system to mock the real file system in unit tests.",
-        "homepage": "http://vfs.bovigo.org/"
+        "description": "FilterIterator implementation that filters files based on a list of suffixes.",
+        "homepage": "https://github.com/sebastianbergmann/php-file-iterator/",
+        "keywords": [
+            "filesystem",
+            "iterator"
+        ]
     },
     {
         "name": "phpunit/php-code-coverage",
@@ -3567,6 +3623,68 @@
         ]
     },
     {
+        "name": "phpspec/prophecy",
+        "version": "v1.5.0",
+        "version_normalized": "1.5.0.0",
+        "source": {
+            "type": "git",
+            "url": "https://github.com/phpspec/prophecy.git",
+            "reference": "4745ded9307786b730d7a60df5cb5a6c43cf95f7"
+        },
+        "dist": {
+            "type": "zip",
+            "url": "https://api.github.com/repos/phpspec/prophecy/zipball/4745ded9307786b730d7a60df5cb5a6c43cf95f7",
+            "reference": "4745ded9307786b730d7a60df5cb5a6c43cf95f7",
+            "shasum": ""
+        },
+        "require": {
+            "doctrine/instantiator": "^1.0.2",
+            "phpdocumentor/reflection-docblock": "~2.0",
+            "sebastian/comparator": "~1.1"
+        },
+        "require-dev": {
+            "phpspec/phpspec": "~2.0"
+        },
+        "time": "2015-08-13 10:07:40",
+        "type": "library",
+        "extra": {
+            "branch-alias": {
+                "dev-master": "1.4.x-dev"
+            }
+        },
+        "installation-source": "dist",
+        "autoload": {
+            "psr-0": {
+                "Prophecy\\": "src/"
+            }
+        },
+        "notification-url": "https://packagist.org/downloads/",
+        "license": [
+            "MIT"
+        ],
+        "authors": [
+            {
+                "name": "Konstantin Kudryashov",
+                "email": "ever.zet@gmail.com",
+                "homepage": "http://everzet.com"
+            },
+            {
+                "name": "Marcello Duarte",
+                "email": "marcello.duarte@gmail.com"
+            }
+        ],
+        "description": "Highly opinionated mocking framework for PHP 5.3+",
+        "homepage": "https://github.com/phpspec/prophecy",
+        "keywords": [
+            "Double",
+            "Dummy",
+            "fake",
+            "mock",
+            "spy",
+            "stub"
+        ]
+    },
+    {
         "name": "phpunit/phpunit",
         "version": "4.8.11",
         "version_normalized": "4.8.11.0",
@@ -3639,123 +3757,5 @@
             "testing",
             "xunit"
         ]
-    },
-    {
-        "name": "zendframework/zend-hydrator",
-        "version": "1.0.0",
-        "version_normalized": "1.0.0.0",
-        "source": {
-            "type": "git",
-            "url": "https://github.com/zendframework/zend-hydrator.git",
-            "reference": "f3ed8b833355140350bbed98d8a7b8b66875903f"
-        },
-        "dist": {
-            "type": "zip",
-            "url": "https://api.github.com/repos/zendframework/zend-hydrator/zipball/f3ed8b833355140350bbed98d8a7b8b66875903f",
-            "reference": "f3ed8b833355140350bbed98d8a7b8b66875903f",
-            "shasum": ""
-        },
-        "require": {
-            "php": ">=5.5",
-            "zendframework/zend-stdlib": "^2.5.1"
-        },
-        "require-dev": {
-            "phpunit/phpunit": "~4.0",
-            "squizlabs/php_codesniffer": "^2.0@dev",
-            "zendframework/zend-eventmanager": "^2.5.1",
-            "zendframework/zend-filter": "^2.5.1",
-            "zendframework/zend-inputfilter": "^2.5.1",
-            "zendframework/zend-serializer": "^2.5.1",
-            "zendframework/zend-servicemanager": "^2.5.1"
-        },
-        "suggest": {
-            "zendframework/zend-eventmanager": "^2.5.1, to support aggregate hydrator usage",
-            "zendframework/zend-filter": "^2.5.1, to support naming strategy hydrator usage",
-            "zendframework/zend-serializer": "^2.5.1, to use the SerializableStrategy",
-            "zendframework/zend-servicemanager": "^2.5.1, to support hydrator plugin manager usage"
-        },
-        "time": "2015-09-17 14:06:43",
-        "type": "library",
-        "extra": {
-            "branch-alias": {
-                "dev-master": "1.0-dev",
-                "dev-develop": "1.1-dev"
-            }
-        },
-        "installation-source": "dist",
-        "autoload": {
-            "psr-4": {
-                "Zend\\Hydrator\\": "src/"
-            }
-        },
-        "notification-url": "https://packagist.org/downloads/",
-        "license": [
-            "BSD-3-Clause"
-        ],
-        "homepage": "https://github.com/zendframework/zend-hydrator",
-        "keywords": [
-            "hydrator",
-            "zf2"
-        ]
-    },
-    {
-        "name": "zendframework/zend-stdlib",
-        "version": "2.7.3",
-        "version_normalized": "2.7.3.0",
-        "source": {
-            "type": "git",
-            "url": "https://github.com/zendframework/zend-stdlib.git",
-            "reference": "8ac0c77ff567fcf49b58689ee3bfa7595be102bc"
-        },
-        "dist": {
-            "type": "zip",
-            "url": "https://api.github.com/repos/zendframework/zend-stdlib/zipball/8ac0c77ff567fcf49b58689ee3bfa7595be102bc",
-            "reference": "8ac0c77ff567fcf49b58689ee3bfa7595be102bc",
-            "shasum": ""
-        },
-        "require": {
-            "php": ">=5.5",
-            "zendframework/zend-hydrator": "~1.0"
-        },
-        "require-dev": {
-            "athletic/athletic": "~0.1",
-            "fabpot/php-cs-fixer": "1.7.*",
-            "phpunit/phpunit": "~4.0",
-            "zendframework/zend-config": "~2.5",
-            "zendframework/zend-eventmanager": "~2.5",
-            "zendframework/zend-filter": "~2.5",
-            "zendframework/zend-inputfilter": "~2.5",
-            "zendframework/zend-serializer": "~2.5",
-            "zendframework/zend-servicemanager": "~2.5"
-        },
-        "suggest": {
-            "zendframework/zend-eventmanager": "To support aggregate hydrator usage",
-            "zendframework/zend-filter": "To support naming strategy hydrator usage",
-            "zendframework/zend-serializer": "Zend\\Serializer component",
-            "zendframework/zend-servicemanager": "To support hydrator plugin manager usage"
-        },
-        "time": "2015-09-25 04:06:33",
-        "type": "library",
-        "extra": {
-            "branch-alias": {
-                "dev-master": "2.7-dev",
-                "dev-develop": "2.8-dev"
-            }
-        },
-        "installation-source": "dist",
-        "autoload": {
-            "psr-4": {
-                "Zend\\Stdlib\\": "src/"
-            }
-        },
-        "notification-url": "https://packagist.org/downloads/",
-        "license": [
-            "BSD-3-Clause"
-        ],
-        "homepage": "https://github.com/zendframework/zend-stdlib",
-        "keywords": [
-            "stdlib",
-            "zf2"
-        ]
     }
 ]
diff --git a/vendor/composer/installers/src/Composer/Installers/Installer.php b/vendor/composer/installers/src/Composer/Installers/Installer.php
index 8985149..63ba64c 100644
--- a/vendor/composer/installers/src/Composer/Installers/Installer.php
+++ b/vendor/composer/installers/src/Composer/Installers/Installer.php
@@ -80,7 +80,7 @@ public function getInstallPath(PackageInterface $package)
 
         if ($frameworkType === false) {
             throw new \InvalidArgumentException(
-                'The package type of this package is not yet supported.'
+                'Sorry the package type of this package is not yet supported.'
             );
         }
 
diff --git a/vendor/doctrine/cache/tests/Doctrine/Tests/Common/Cache/ApcCacheTest.php b/vendor/doctrine/cache/tests/Doctrine/Tests/Common/Cache/ApcCacheTest.php
deleted file mode 100644
index df81262..0000000
--- a/vendor/doctrine/cache/tests/Doctrine/Tests/Common/Cache/ApcCacheTest.php
+++ /dev/null
@@ -1,20 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Cache;
-
-use Doctrine\Common\Cache\ApcCache;
-
-class ApcCacheTest extends CacheTest
-{
-    public function setUp()
-    {
-        if ( ! extension_loaded('apc') || false === @apc_cache_info()) {
-            $this->markTestSkipped('The ' . __CLASS__ .' requires the use of APC');
-        }
-    }
-
-    protected function _getCacheDriver()
-    {
-        return new ApcCache();
-    }
-}
\ No newline at end of file
diff --git a/vendor/doctrine/cache/tests/Doctrine/Tests/Common/Cache/ArrayCacheTest.php b/vendor/doctrine/cache/tests/Doctrine/Tests/Common/Cache/ArrayCacheTest.php
deleted file mode 100644
index a6c3097..0000000
--- a/vendor/doctrine/cache/tests/Doctrine/Tests/Common/Cache/ArrayCacheTest.php
+++ /dev/null
@@ -1,26 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Cache;
-
-use Doctrine\Common\Cache\ArrayCache;
-
-class ArrayCacheTest extends CacheTest
-{
-    protected function _getCacheDriver()
-    {
-        return new ArrayCache();
-    }
-
-    public function testGetStats()
-    {
-        $cache = $this->_getCacheDriver();
-        $stats = $cache->getStats();
-
-        $this->assertNull($stats);
-    }
-
-    protected function isSharedStorage()
-    {
-        return false;
-    }
-}
\ No newline at end of file
diff --git a/vendor/doctrine/cache/tests/Doctrine/Tests/Common/Cache/BaseFileCacheTest.php b/vendor/doctrine/cache/tests/Doctrine/Tests/Common/Cache/BaseFileCacheTest.php
deleted file mode 100644
index eaedd99..0000000
--- a/vendor/doctrine/cache/tests/Doctrine/Tests/Common/Cache/BaseFileCacheTest.php
+++ /dev/null
@@ -1,40 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Cache;
-
-use RecursiveDirectoryIterator;
-use RecursiveIteratorIterator;
-
-abstract class BaseFileCacheTest extends CacheTest
-{
-    protected $directory;
-
-    public function setUp()
-    {
-        do {
-            $this->directory = sys_get_temp_dir() . '/doctrine_cache_'. uniqid();
-        } while (file_exists($this->directory));
-    }
-
-    public function tearDown()
-    {
-        if ( ! is_dir($this->directory)) {
-            return;
-        }
-
-        $iterator = new RecursiveDirectoryIterator($this->directory);
-
-        foreach (new RecursiveIteratorIterator($iterator, RecursiveIteratorIterator::CHILD_FIRST) as $file) {
-            if ($file->isFile()) {
-                @unlink($file->getRealPath());
-            } elseif ($file->isDir()) {
-                @rmdir($file->getRealPath());
-            }
-        }
-    }
-
-    protected function isSharedStorage()
-    {
-        return false;
-    }
-}
diff --git a/vendor/doctrine/cache/tests/Doctrine/Tests/Common/Cache/CacheTest.php b/vendor/doctrine/cache/tests/Doctrine/Tests/Common/Cache/CacheTest.php
deleted file mode 100644
index 3c7f619..0000000
--- a/vendor/doctrine/cache/tests/Doctrine/Tests/Common/Cache/CacheTest.php
+++ /dev/null
@@ -1,373 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Cache;
-
-use Doctrine\Common\Cache\Cache;
-use ArrayObject;
-
-abstract class CacheTest extends \Doctrine\Tests\DoctrineTestCase
-{
-    /**
-     * @dataProvider provideCrudValues
-     */
-    public function testBasicCrudOperations($value)
-    {
-        $cache = $this->_getCacheDriver();
-
-        // Test saving a value, checking if it exists, and fetching it back
-        $this->assertTrue($cache->save('key', 'value'));
-        $this->assertTrue($cache->contains('key'));
-        $this->assertEquals('value', $cache->fetch('key'));
-
-        // Test updating the value of a cache entry
-        $this->assertTrue($cache->save('key', 'value-changed'));
-        $this->assertTrue($cache->contains('key'));
-        $this->assertEquals('value-changed', $cache->fetch('key'));
-
-        // Test deleting a value
-        $this->assertTrue($cache->delete('key'));
-        $this->assertFalse($cache->contains('key'));
-    }
-
-    public function testFetchMulti()
-    {
-        $cache = $this->_getCacheDriver();
-
-        $cache->deleteAll();
-
-        // Test saving some values, checking if it exists, and fetching it back with multiGet
-        $this->assertTrue($cache->save('key1', 'value1'));
-        $this->assertTrue($cache->save('key2', 'value2'));
-
-        $this->assertEquals(
-            array('key1' => 'value1', 'key2' => 'value2'),
-            $cache->fetchMultiple(array('key1', 'key2'))
-        );
-        $this->assertEquals(
-            array('key1' => 'value1', 'key2' => 'value2'),
-            $cache->fetchMultiple(array('key1', 'key3', 'key2'))
-        );
-        $this->assertEquals(
-            array('key1' => 'value1', 'key2' => 'value2'),
-            $cache->fetchMultiple(array('key1', 'key2', 'key3'))
-        );
-    }
-
-    public function testFetchMultiWillFilterNonRequestedKeys()
-    {
-        /* @var $cache \Doctrine\Common\Cache\CacheProvider|\PHPUnit_Framework_MockObject_MockObject */
-        $cache = $this->getMockForAbstractClass(
-            'Doctrine\Common\Cache\CacheProvider',
-            array(),
-            '',
-            true,
-            true,
-            true,
-            array('doFetchMultiple')
-        );
-
-        $cache
-            ->expects($this->once())
-            ->method('doFetchMultiple')
-            ->will($this->returnValue(array(
-                '[foo][]' => 'bar',
-                '[bar][]' => 'baz',
-                '[baz][]' => 'tab',
-            )));
-
-        $this->assertEquals(
-            array('foo' => 'bar', 'bar' => 'baz'),
-            $cache->fetchMultiple(array('foo', 'bar'))
-        );
-    }
-
-
-    public function provideCrudValues()
-    {
-        return array(
-            'array' => array(array('one', 2, 3.0)),
-            'string' => array('value'),
-            'integer' => array(1),
-            'float' => array(1.5),
-            'object' => array(new ArrayObject()),
-            'null' => array(null),
-        );
-    }
-
-    public function testDeleteAll()
-    {
-        $cache = $this->_getCacheDriver();
-
-        $this->assertTrue($cache->save('key1', 1));
-        $this->assertTrue($cache->save('key2', 2));
-        $this->assertTrue($cache->deleteAll());
-        $this->assertFalse($cache->contains('key1'));
-        $this->assertFalse($cache->contains('key2'));
-    }
-
-    public function testDeleteAllAndNamespaceVersioningBetweenCaches()
-    {
-        if ( ! $this->isSharedStorage()) {
-            $this->markTestSkipped('The ' . __CLASS__ .' does not use shared storage');
-        }
-
-        $cache1 = $this->_getCacheDriver();
-        $cache2 = $this->_getCacheDriver();
-
-        $this->assertTrue($cache1->save('key1', 1));
-        $this->assertTrue($cache2->save('key2', 2));
-
-        /* Both providers are initialized with the same namespace version, so
-         * they can see entries set by each other.
-         */
-        $this->assertTrue($cache1->contains('key1'));
-        $this->assertTrue($cache1->contains('key2'));
-        $this->assertTrue($cache2->contains('key1'));
-        $this->assertTrue($cache2->contains('key2'));
-
-        /* Deleting all entries through one provider will only increment the
-         * namespace version on that object (and in the cache itself, which new
-         * instances will use to initialize). The second provider will retain
-         * its original version and still see stale data.
-         */
-        $this->assertTrue($cache1->deleteAll());
-        $this->assertFalse($cache1->contains('key1'));
-        $this->assertFalse($cache1->contains('key2'));
-        $this->assertTrue($cache2->contains('key1'));
-        $this->assertTrue($cache2->contains('key2'));
-
-        /* A new cache provider should not see the deleted entries, since its
-         * namespace version will be initialized.
-         */
-        $cache3 = $this->_getCacheDriver();
-        $this->assertFalse($cache3->contains('key1'));
-        $this->assertFalse($cache3->contains('key2'));
-    }
-
-    public function testFlushAll()
-    {
-        $cache = $this->_getCacheDriver();
-
-        $this->assertTrue($cache->save('key1', 1));
-        $this->assertTrue($cache->save('key2', 2));
-        $this->assertTrue($cache->flushAll());
-        $this->assertFalse($cache->contains('key1'));
-        $this->assertFalse($cache->contains('key2'));
-    }
-
-    public function testFlushAllAndNamespaceVersioningBetweenCaches()
-    {
-        if ( ! $this->isSharedStorage()) {
-            $this->markTestSkipped('The ' . __CLASS__ .' does not use shared storage');
-        }
-
-        $cache1 = $this->_getCacheDriver();
-        $cache2 = $this->_getCacheDriver();
-
-        /* Deleting all elements from the first provider should increment its
-         * namespace version before saving the first entry.
-         */
-        $cache1->deleteAll();
-        $this->assertTrue($cache1->save('key1', 1));
-
-        /* The second provider will be initialized with the same namespace
-         * version upon its first save operation.
-         */
-        $this->assertTrue($cache2->save('key2', 2));
-
-        /* Both providers have the same namespace version and can see entires
-         * set by each other.
-         */
-        $this->assertTrue($cache1->contains('key1'));
-        $this->assertTrue($cache1->contains('key2'));
-        $this->assertTrue($cache2->contains('key1'));
-        $this->assertTrue($cache2->contains('key2'));
-
-        /* Flushing all entries through one cache will remove all entries from
-         * the cache but leave their namespace version as-is.
-         */
-        $this->assertTrue($cache1->flushAll());
-        $this->assertFalse($cache1->contains('key1'));
-        $this->assertFalse($cache1->contains('key2'));
-        $this->assertFalse($cache2->contains('key1'));
-        $this->assertFalse($cache2->contains('key2'));
-
-        /* Inserting a new entry will use the same, incremented namespace
-         * version, and it will be visible to both providers.
-         */
-        $this->assertTrue($cache1->save('key1', 1));
-        $this->assertTrue($cache1->contains('key1'));
-        $this->assertTrue($cache2->contains('key1'));
-
-        /* A new cache provider will be initialized with the original namespace
-         * version and not share any visibility with the first two providers.
-         */
-        $cache3 = $this->_getCacheDriver();
-        $this->assertFalse($cache3->contains('key1'));
-        $this->assertFalse($cache3->contains('key2'));
-        $this->assertTrue($cache3->save('key3', 3));
-        $this->assertTrue($cache3->contains('key3'));
-    }
-
-    public function testNamespace()
-    {
-        $cache = $this->_getCacheDriver();
-
-        $cache->setNamespace('ns1_');
-
-        $this->assertTrue($cache->save('key1', 1));
-        $this->assertTrue($cache->contains('key1'));
-
-        $cache->setNamespace('ns2_');
-
-        $this->assertFalse($cache->contains('key1'));
-    }
-
-    public function testDeleteAllNamespace()
-    {
-        $cache = $this->_getCacheDriver();
-
-        $cache->setNamespace('ns1');
-        $this->assertFalse($cache->contains('key1'));
-        $cache->save('key1', 'test');
-        $this->assertTrue($cache->contains('key1'));
-
-        $cache->setNamespace('ns2');
-        $this->assertFalse($cache->contains('key1'));
-        $cache->save('key1', 'test');
-        $this->assertTrue($cache->contains('key1'));
-
-        $cache->setNamespace('ns1');
-        $this->assertTrue($cache->contains('key1'));
-        $cache->deleteAll();
-        $this->assertFalse($cache->contains('key1'));
-
-        $cache->setNamespace('ns2');
-        $this->assertTrue($cache->contains('key1'));
-        $cache->deleteAll();
-        $this->assertFalse($cache->contains('key1'));
-    }
-
-    /**
-     * @group DCOM-43
-     */
-    public function testGetStats()
-    {
-        $cache = $this->_getCacheDriver();
-        $stats = $cache->getStats();
-
-        $this->assertArrayHasKey(Cache::STATS_HITS, $stats);
-        $this->assertArrayHasKey(Cache::STATS_MISSES, $stats);
-        $this->assertArrayHasKey(Cache::STATS_UPTIME, $stats);
-        $this->assertArrayHasKey(Cache::STATS_MEMORY_USAGE, $stats);
-        $this->assertArrayHasKey(Cache::STATS_MEMORY_AVAILABLE, $stats);
-    }
-
-    public function testFetchMissShouldReturnFalse()
-    {
-        $cache = $this->_getCacheDriver();
-
-        /* Ensure that caches return boolean false instead of null on a fetch
-         * miss to be compatible with ORM integration.
-         */
-        $result = $cache->fetch('nonexistent_key');
-
-        $this->assertFalse($result);
-        $this->assertNotNull($result);
-    }
-
-    /**
-     * Check to see that, even if the user saves a value that can be interpreted as false,
-     * the cache adapter will still recognize its existence there.
-     *
-     * @dataProvider falseCastedValuesProvider
-     */
-    public function testFalseCastedValues($value)
-    {
-        $cache = $this->_getCacheDriver();
-
-        $this->assertTrue($cache->save('key', $value));
-        $this->assertTrue($cache->contains('key'));
-        $this->assertEquals($value, $cache->fetch('key'));
-    }
-
-    /**
-     * The following values get converted to FALSE if you cast them to a boolean.
-     * @see http://php.net/manual/en/types.comparisons.php
-     */
-    public function falseCastedValuesProvider()
-    {
-        return array(
-            array(false),
-            array(null),
-            array(array()),
-            array('0'),
-            array(0),
-            array(0.0),
-            array('')
-        );
-    }
-
-    /**
-     * Check to see that objects are correctly serialized and unserialized by the cache
-     * provider.
-     */
-    public function testCachedObject()
-    {
-        $cache = $this->_getCacheDriver();
-        $cache->deleteAll();
-        $obj = new \stdClass();
-        $obj->foo = "bar";
-        $obj2 = new \stdClass();
-        $obj2->bar = "foo";
-        $obj2->obj = $obj;
-        $obj->obj2 = $obj2;
-        $cache->save("obj", $obj);
-
-        $fetched = $cache->fetch("obj");
-
-        $this->assertInstanceOf("stdClass", $obj);
-        $this->assertInstanceOf("stdClass", $obj->obj2);
-        $this->assertInstanceOf("stdClass", $obj->obj2->obj);
-        $this->assertEquals("bar", $fetched->foo);
-        $this->assertEquals("foo", $fetched->obj2->bar);
-    }
-
-    /**
-     * Check to see that objects fetched via fetchMultiple are properly unserialized
-     */
-    public function testFetchMultipleObjects()
-    {
-        $cache = $this->_getCacheDriver();
-        $cache->deleteAll();
-        $obj1 = new \stdClass();
-        $obj1->foo = "bar";
-        $cache->save("obj1", $obj1);
-        $obj2 = new \stdClass();
-        $obj2->bar = "baz";
-        $cache->save("obj2", $obj2);
-
-        $fetched = $cache->fetchMultiple(array("obj1", "obj2"));
-        $this->assertInstanceOf("stdClass", $fetched["obj1"]);
-        $this->assertInstanceOf("stdClass", $fetched["obj2"]);
-        $this->assertEquals("bar", $fetched["obj1"]->foo);
-        $this->assertEquals("baz", $fetched["obj2"]->bar);
-    }
-    
-    /**
-     * Return whether multiple cache providers share the same storage.
-     *
-     * This is used for skipping certain tests for shared storage behavior.
-     *
-     * @return boolean
-     */
-    protected function isSharedStorage()
-    {
-        return true;
-    }
-
-    /**
-     * @return \Doctrine\Common\Cache\CacheProvider
-     */
-    abstract protected function _getCacheDriver();
-}
diff --git a/vendor/doctrine/cache/tests/Doctrine/Tests/Common/Cache/ChainCacheTest.php b/vendor/doctrine/cache/tests/Doctrine/Tests/Common/Cache/ChainCacheTest.php
deleted file mode 100644
index 46d78c1..0000000
--- a/vendor/doctrine/cache/tests/Doctrine/Tests/Common/Cache/ChainCacheTest.php
+++ /dev/null
@@ -1,94 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Cache;
-
-use Doctrine\Common\Cache\ApcCache;
-use Doctrine\Common\Cache\ArrayCache;
-use Doctrine\Common\Cache\ChainCache;
-
-class ChainCacheTest extends CacheTest
-{
-    protected function _getCacheDriver()
-    {
-        return new ChainCache(array(new ArrayCache()));
-    }
-
-    public function testGetStats()
-    {
-        $cache = $this->_getCacheDriver();
-        $stats = $cache->getStats();
-
-        $this->assertInternalType('array', $stats);
-    }
-
-    public function testOnlyFetchFirstOne()
-    {
-        $cache1 = new ArrayCache();
-        $cache2 = $this->getMockForAbstractClass('Doctrine\Common\Cache\CacheProvider');
-
-        $cache2->expects($this->never())->method('doFetch');
-
-        $chainCache = new ChainCache(array($cache1, $cache2));
-        $chainCache->save('id', 'bar');
-
-        $this->assertEquals('bar', $chainCache->fetch('id'));
-    }
-
-    public function testFetchPropagateToFastestCache()
-    {
-        $cache1 = new ArrayCache();
-        $cache2 = new ArrayCache();
-
-        $cache2->save('bar', 'value');
-
-        $chainCache = new ChainCache(array($cache1, $cache2));
-
-        $this->assertFalse($cache1->contains('bar'));
-
-        $result = $chainCache->fetch('bar');
-
-        $this->assertEquals('value', $result);
-        $this->assertTrue($cache2->contains('bar'));
-    }
-
-    public function testNamespaceIsPropagatedToAllProviders()
-    {
-        $cache1 = new ArrayCache();
-        $cache2 = new ArrayCache();
-
-        $chainCache = new ChainCache(array($cache1, $cache2));
-        $chainCache->setNamespace('bar');
-
-        $this->assertEquals('bar', $cache1->getNamespace());
-        $this->assertEquals('bar', $cache2->getNamespace());
-    }
-
-    public function testDeleteToAllProviders()
-    {
-        $cache1 = $this->getMockForAbstractClass('Doctrine\Common\Cache\CacheProvider');
-        $cache2 = $this->getMockForAbstractClass('Doctrine\Common\Cache\CacheProvider');
-
-        $cache1->expects($this->once())->method('doDelete');
-        $cache2->expects($this->once())->method('doDelete');
-
-        $chainCache = new ChainCache(array($cache1, $cache2));
-        $chainCache->delete('bar');
-    }
-
-    public function testFlushToAllProviders()
-    {
-        $cache1 = $this->getMockForAbstractClass('Doctrine\Common\Cache\CacheProvider');
-        $cache2 = $this->getMockForAbstractClass('Doctrine\Common\Cache\CacheProvider');
-
-        $cache1->expects($this->once())->method('doFlush');
-        $cache2->expects($this->once())->method('doFlush');
-
-        $chainCache = new ChainCache(array($cache1, $cache2));
-        $chainCache->flushAll();
-    }
-
-    protected function isSharedStorage()
-    {
-        return false;
-    }
-}
\ No newline at end of file
diff --git a/vendor/doctrine/cache/tests/Doctrine/Tests/Common/Cache/CouchbaseCacheTest.php b/vendor/doctrine/cache/tests/Doctrine/Tests/Common/Cache/CouchbaseCacheTest.php
deleted file mode 100644
index 40d5a69..0000000
--- a/vendor/doctrine/cache/tests/Doctrine/Tests/Common/Cache/CouchbaseCacheTest.php
+++ /dev/null
@@ -1,47 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Cache;
-
-use Couchbase;
-use Doctrine\Common\Cache\CouchbaseCache;
-
-class CouchbaseCacheTest extends CacheTest
-{
-    private $couchbase;
-
-    public function setUp()
-    {
-        if (extension_loaded('couchbase')) {
-            try {
-                $this->couchbase = new Couchbase('127.0.0.1', 'Administrator', 'password', 'default');
-            } catch(Exception $ex) {
-                 $this->markTestSkipped('Could not instantiate the Couchbase cache because of: ' . $ex);   
-            }
-        } else {
-            $this->markTestSkipped('The ' . __CLASS__ .' requires the use of the couchbase extension');
-        }
-    }
-
-    public function testNoExpire() 
-    {
-        $cache = $this->_getCacheDriver();
-        $cache->save('noexpire', 'value', 0);
-        sleep(1);
-        $this->assertTrue($cache->contains('noexpire'), 'Couchbase provider should support no-expire');
-    }
-
-    public function testLongLifetime()
-    {
-        $cache = $this->_getCacheDriver();
-        $cache->save('key', 'value', 30 * 24 * 3600 + 1);
-
-        $this->assertTrue($cache->contains('key'), 'Couchbase provider should support TTL > 30 days');
-    }
-
-    protected function _getCacheDriver()
-    {
-        $driver = new CouchbaseCache();
-        $driver->setCouchbase($this->couchbase);
-        return $driver;
-    }
-}
\ No newline at end of file
diff --git a/vendor/doctrine/cache/tests/Doctrine/Tests/Common/Cache/FileCacheTest.php b/vendor/doctrine/cache/tests/Doctrine/Tests/Common/Cache/FileCacheTest.php
deleted file mode 100644
index 8868321..0000000
--- a/vendor/doctrine/cache/tests/Doctrine/Tests/Common/Cache/FileCacheTest.php
+++ /dev/null
@@ -1,161 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Cache;
-
-use Doctrine\Common\Cache\Cache;
-
-/**
- * @group DCOM-101
- */
-class FileCacheTest extends \Doctrine\Tests\DoctrineTestCase
-{
-    /**
-     * @var \Doctrine\Common\Cache\FileCache
-     */
-    private $driver;
-
-    protected function setUp()
-    {
-        $this->driver = $this->getMock(
-            'Doctrine\Common\Cache\FileCache',
-            array('doFetch', 'doContains', 'doSave'),
-            array(), '', false
-        );
-    }
-
-    public function getProviderFileName()
-    {
-         return array(
-            //The characters :\/<>"*?| are not valid in Windows filenames.
-            array('key:1', 'key-1'),
-            array('key\2', 'key-2'),
-            array('key/3', 'key-3'),
-            array('key<4', 'key-4'),
-            array('key>5', 'key-5'),
-            array('key"6', 'key-6'),
-            array('key*7', 'key-7'),
-            array('key?8', 'key-8'),
-            array('key|9', 'key-9'),
-            array('key[10]', 'key[10]'),
-            array('keyä11', 'key--11'),
-            array('../key12', '---key12'),
-            array('key-13', 'key__13'),
-        );
-    }
-
-    /**
-     * @dataProvider getProviderFileName
-     */
-    public function testInvalidFilename($key, $expected)
-    {
-        $cache  = $this->driver;
-        $method = new \ReflectionMethod($cache, 'getFilename');
-
-        $method->setAccessible(true);
-
-        $value  = $method->invoke($cache, $key);
-        $actual = pathinfo($value, PATHINFO_FILENAME);
-
-        $this->assertEquals($expected, $actual);
-    }
-
-    public function testFilenameCollision()
-    {
-        $data = array(
-            'key:0' => 'key-0',
-            'key\0' => 'key-0',
-            'key/0' => 'key-0',
-            'key<0' => 'key-0',
-            'key>0' => 'key-0',
-            'key"0' => 'key-0',
-            'key*0' => 'key-0',
-            'key?0' => 'key-0',
-            'key|0' => 'key-0',
-            'key-0' => 'key__0',
-            'keyä0' => 'key--0',
-        );
-
-        $paths  = array();
-        $cache  = $this->driver;
-        $method = new \ReflectionMethod($cache, 'getFilename');
-
-        $method->setAccessible(true);
-
-        foreach ($data as $key => $expected) {
-            $path   = $method->invoke($cache, $key);
-            $actual = pathinfo($path, PATHINFO_FILENAME);
-
-            $this->assertNotContains($path, $paths);
-            $this->assertEquals($expected, $actual);
-
-            $paths[] = $path;
-        }
-    }
-
-    public function testFilenameShouldCreateThePathWithFourSubDirectories()
-    {
-        $cache          = $this->driver;
-        $method         = new \ReflectionMethod($cache, 'getFilename');
-        $key            = 'item-key';
-        $expectedDir    = array(
-            '84', 'e0', 'e2', 'e8', '93', 'fe', 'bb', '73', '7a', '0f', 'ee',
-            '0c', '89', 'd5', '3f', '4b', 'b7', 'fc', 'b4', '4c', '57', 'cd',
-            'f3', 'd3', '2c', 'e7', '36', '3f', '5d', '59', '77', '60'
-        );
-        $expectedDir    = implode(DIRECTORY_SEPARATOR, $expectedDir);
-
-        $method->setAccessible(true);
-
-        $path       = $method->invoke($cache, $key);
-        $filename   = pathinfo($path, PATHINFO_FILENAME);
-        $dirname    = pathinfo($path, PATHINFO_DIRNAME);
-
-        $this->assertEquals('item__key', $filename);
-        $this->assertEquals(DIRECTORY_SEPARATOR . $expectedDir, $dirname);
-        $this->assertEquals(DIRECTORY_SEPARATOR . $expectedDir . DIRECTORY_SEPARATOR . 'item__key', $path);
-    }
-
-    public function testFileExtensionCorrectlyEscaped()
-    {
-        $driver1 = $this->getMock(
-            'Doctrine\Common\Cache\FileCache',
-            array('doFetch', 'doContains', 'doSave'),
-            array(__DIR__, '.*')
-        );
-        $driver2 = $this->getMock(
-            'Doctrine\Common\Cache\FileCache',
-            array('doFetch', 'doContains', 'doSave'),
-            array(__DIR__, '.php')
-        );
-
-        $doGetStats = new \ReflectionMethod($driver1, 'doGetStats');
-
-        $doGetStats->setAccessible(true);
-
-        $stats1 = $doGetStats->invoke($driver1);
-        $stats2 = $doGetStats->invoke($driver2);
-
-        $this->assertSame(0, $stats1[Cache::STATS_MEMORY_USAGE]);
-        $this->assertGreaterThan(0, $stats2[Cache::STATS_MEMORY_USAGE]);
-    }
-
-    /**
-     * @group DCOM-266
-     */
-    public function testFileExtensionSlashCorrectlyEscaped()
-    {
-        $driver = $this->getMock(
-            'Doctrine\Common\Cache\FileCache',
-            array('doFetch', 'doContains', 'doSave'),
-            array(__DIR__ . '/../', '/' . basename(__FILE__))
-        );
-
-        $doGetStats = new \ReflectionMethod($driver, 'doGetStats');
-
-        $doGetStats->setAccessible(true);
-
-        $stats = $doGetStats->invoke($driver);
-
-        $this->assertGreaterThan(0, $stats[Cache::STATS_MEMORY_USAGE]);
-    }
-}
diff --git a/vendor/doctrine/cache/tests/Doctrine/Tests/Common/Cache/FilesystemCacheTest.php b/vendor/doctrine/cache/tests/Doctrine/Tests/Common/Cache/FilesystemCacheTest.php
deleted file mode 100644
index e3b74cd..0000000
--- a/vendor/doctrine/cache/tests/Doctrine/Tests/Common/Cache/FilesystemCacheTest.php
+++ /dev/null
@@ -1,75 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Cache;
-
-use Doctrine\Common\Cache\Cache;
-use Doctrine\Common\Cache\FilesystemCache;
-
-/**
- * @group DCOM-101
- */
-class FilesystemCacheTest extends BaseFileCacheTest
-{
-    public function testLifetime()
-    {
-        $cache = $this->_getCacheDriver();
-
-        // Test save
-        $cache->save('test_key', 'testing this out', 10);
-
-        // Test contains to test that save() worked
-        $this->assertTrue($cache->contains('test_key'));
-
-        // Test fetch
-        $this->assertEquals('testing this out', $cache->fetch('test_key'));
-
-        // access private methods
-        $getFilename        = new \ReflectionMethod($cache, 'getFilename');
-        $getNamespacedId    = new \ReflectionMethod($cache, 'getNamespacedId');
-
-        $getFilename->setAccessible(true);
-        $getNamespacedId->setAccessible(true);
-
-        $id         = $getNamespacedId->invoke($cache, 'test_key');
-        $filename   = $getFilename->invoke($cache, $id);
-
-        $data       = '';
-        $lifetime   = 0;
-        $resource   = fopen($filename, "r");
-
-        if (false !== ($line = fgets($resource))) {
-            $lifetime = (integer) $line;
-        }
-
-        while (false !== ($line = fgets($resource))) {
-            $data .= $line;
-        }
-
-        $this->assertNotEquals(0, $lifetime, "previous lifetime could not be loaded");
-
-        // update lifetime
-        $lifetime = $lifetime - 20;
-        file_put_contents($filename, $lifetime . PHP_EOL . $data);
-
-        // test expired data
-        $this->assertFalse($cache->contains('test_key'));
-        $this->assertFalse($cache->fetch('test_key'));
-    }
-
-    public function testGetStats()
-    {
-        $cache = $this->_getCacheDriver();
-        $stats = $cache->getStats();
-
-        $this->assertNull($stats[Cache::STATS_HITS]);
-        $this->assertNull($stats[Cache::STATS_MISSES]);
-        $this->assertNull($stats[Cache::STATS_UPTIME]);
-        $this->assertEquals(0, $stats[Cache::STATS_MEMORY_USAGE]);
-        $this->assertGreaterThan(0, $stats[Cache::STATS_MEMORY_AVAILABLE]);
-    }
-
-    protected function _getCacheDriver()
-    {
-        return new FilesystemCache($this->directory);
-    }
-}
diff --git a/vendor/doctrine/cache/tests/Doctrine/Tests/Common/Cache/MemcacheCacheTest.php b/vendor/doctrine/cache/tests/Doctrine/Tests/Common/Cache/MemcacheCacheTest.php
deleted file mode 100644
index b0da1b9..0000000
--- a/vendor/doctrine/cache/tests/Doctrine/Tests/Common/Cache/MemcacheCacheTest.php
+++ /dev/null
@@ -1,54 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Cache;
-
-use Doctrine\Common\Cache\MemcacheCache;
-use Memcache;
-
-class MemcacheCacheTest extends CacheTest
-{
-    private $memcache;
-
-    public function setUp()
-    {
-        if ( ! extension_loaded('memcache')) {
-            $this->markTestSkipped('The ' . __CLASS__ .' requires the use of memcache');
-        }
-
-        $this->memcache = new Memcache();
-
-        if (@$this->memcache->connect('localhost', 11211) === false) {
-            unset($this->memcache);
-            $this->markTestSkipped('The ' . __CLASS__ .' cannot connect to memcache');
-        }
-    }
-
-    public function tearDown()
-    {
-        if ($this->memcache instanceof Memcache) {
-            $this->memcache->flush();
-        }
-    }
-
-    public function testNoExpire()
-    {
-        $cache = $this->_getCacheDriver();
-        $cache->save('noexpire', 'value', 0);
-        sleep(1);
-        $this->assertTrue($cache->contains('noexpire'), 'Memcache provider should support no-expire');
-    }
-
-    public function testLongLifetime()
-    {
-        $cache = $this->_getCacheDriver();
-        $cache->save('key', 'value', 30 * 24 * 3600 + 1);
-        $this->assertTrue($cache->contains('key'), 'Memcache provider should support TTL > 30 days');
-    }
-
-    protected function _getCacheDriver()
-    {
-        $driver = new MemcacheCache();
-        $driver->setMemcache($this->memcache);
-        return $driver;
-    }
-}
diff --git a/vendor/doctrine/cache/tests/Doctrine/Tests/Common/Cache/MemcachedCacheTest.php b/vendor/doctrine/cache/tests/Doctrine/Tests/Common/Cache/MemcachedCacheTest.php
deleted file mode 100644
index 2028acc..0000000
--- a/vendor/doctrine/cache/tests/Doctrine/Tests/Common/Cache/MemcachedCacheTest.php
+++ /dev/null
@@ -1,70 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Cache;
-
-use Doctrine\Common\Cache\MemcachedCache;
-use Memcached;
-
-class MemcachedCacheTest extends CacheTest
-{
-    private $memcached;
-
-    public function setUp()
-    {
-        if ( ! extension_loaded('memcached')) {
-            $this->markTestSkipped('The ' . __CLASS__ .' requires the use of memcached');
-        }
-
-        $this->memcached = new Memcached();
-        $this->memcached->setOption(Memcached::OPT_COMPRESSION, false);
-        $this->memcached->addServer('127.0.0.1', 11211);
-
-        if (@fsockopen('127.0.0.1', 11211) === false) {
-            unset($this->memcached);
-            $this->markTestSkipped('The ' . __CLASS__ .' cannot connect to memcache');
-        }
-    }
-
-    public function tearDown()
-    {
-        if ($this->memcached instanceof Memcached) {
-            $this->memcached->flush();
-        }
-    }
-
-    public function testNoExpire()
-    {
-        $cache = $this->_getCacheDriver();
-        $cache->save('noexpire', 'value', 0);
-        sleep(1);
-        $this->assertTrue($cache->contains('noexpire'), 'Memcache provider should support no-expire');
-    }
-
-    public function testLongLifetime()
-    {
-        $cache = $this->_getCacheDriver();
-        $cache->save('key', 'value', 30 * 24 * 3600 + 1);
-        $this->assertTrue($cache->contains('key'), 'Memcache provider should support TTL > 30 days');
-    }
-
-    protected function _getCacheDriver()
-    {
-        $driver = new MemcachedCache();
-        $driver->setMemcached($this->memcached);
-        return $driver;
-    }
-
-    /**
-     * {@inheritDoc}
-     *
-     * @dataProvider falseCastedValuesProvider
-     */
-    public function testFalseCastedValues($value)
-    {
-        if (false === $value) {
-            $this->markTestIncomplete('Memcached currently doesn\'t support saving `false` values. ');
-        }
-
-        parent::testFalseCastedValues($value);
-    }
-}
diff --git a/vendor/doctrine/cache/tests/Doctrine/Tests/Common/Cache/MongoDBCacheTest.php b/vendor/doctrine/cache/tests/Doctrine/Tests/Common/Cache/MongoDBCacheTest.php
deleted file mode 100644
index 8c2f6e0..0000000
--- a/vendor/doctrine/cache/tests/Doctrine/Tests/Common/Cache/MongoDBCacheTest.php
+++ /dev/null
@@ -1,61 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Cache;
-
-use Doctrine\Common\Cache\Cache;
-use Doctrine\Common\Cache\MongoDBCache;
-use MongoClient;
-use MongoCollection;
-
-class MongoDBCacheTest extends CacheTest
-{
-    /**
-     * @var MongoCollection
-     */
-    private $collection;
-
-    public function setUp()
-    {
-        if ( ! version_compare(phpversion('mongo'), '1.3.0', '>=')) {
-            $this->markTestSkipped('The ' . __CLASS__ .' requires the use of mongo >= 1.3.0');
-        }
-
-        $mongo = new MongoClient();
-        $this->collection = $mongo->selectCollection('doctrine_common_cache', 'test');
-    }
-
-    public function tearDown()
-    {
-        if ($this->collection instanceof MongoCollection) {
-            $this->collection->drop();
-        }
-    }
-
-    public function testSaveWithNonUtf8String()
-    {
-        // Invalid 2-octet sequence
-        $data = "\xc3\x28";
-
-        $cache = $this->_getCacheDriver();
-
-        $this->assertTrue($cache->save('key', $data));
-        $this->assertEquals($data, $cache->fetch('key'));
-    }
-
-    public function testGetStats()
-    {
-        $cache = $this->_getCacheDriver();
-        $stats = $cache->getStats();
-
-        $this->assertNull($stats[Cache::STATS_HITS]);
-        $this->assertNull($stats[Cache::STATS_MISSES]);
-        $this->assertGreaterThan(0, $stats[Cache::STATS_UPTIME]);
-        $this->assertEquals(0, $stats[Cache::STATS_MEMORY_USAGE]);
-        $this->assertNull($stats[Cache::STATS_MEMORY_AVAILABLE]);
-    }
-
-    protected function _getCacheDriver()
-    {
-        return new MongoDBCache($this->collection);
-    }
-}
diff --git a/vendor/doctrine/cache/tests/Doctrine/Tests/Common/Cache/PhpFileCacheTest.php b/vendor/doctrine/cache/tests/Doctrine/Tests/Common/Cache/PhpFileCacheTest.php
deleted file mode 100644
index f83a6e4..0000000
--- a/vendor/doctrine/cache/tests/Doctrine/Tests/Common/Cache/PhpFileCacheTest.php
+++ /dev/null
@@ -1,128 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Cache;
-
-use Doctrine\Common\Cache\Cache;
-use Doctrine\Common\Cache\PhpFileCache;
-
-/**
- * @group DCOM-101
- */
-class PhpFileCacheTest extends BaseFileCacheTest
-{
-    public function testLifetime()
-    {
-        $cache = $this->_getCacheDriver();
-
-        // Test save
-        $cache->save('test_key', 'testing this out', 10);
-
-        // Test contains to test that save() worked
-        $this->assertTrue($cache->contains('test_key'));
-
-        // Test fetch
-        $this->assertEquals('testing this out', $cache->fetch('test_key'));
-
-        // access private methods
-        $getFilename        = new \ReflectionMethod($cache, 'getFilename');
-        $getNamespacedId    = new \ReflectionMethod($cache, 'getNamespacedId');
-
-        $getFilename->setAccessible(true);
-        $getNamespacedId->setAccessible(true);
-
-        $id     = $getNamespacedId->invoke($cache, 'test_key');
-        $path   = $getFilename->invoke($cache, $id);
-        $value  = include $path;
-
-        // update lifetime
-        $value['lifetime'] = $value['lifetime'] - 20;
-        file_put_contents($path, '<?php return unserialize(' . var_export(serialize($value), true) . ');');
-
-        // test expired data
-        $this->assertFalse($cache->contains('test_key'));
-        $this->assertFalse($cache->fetch('test_key'));
-    }
-
-    public function testImplementsSetState()
-    {
-        $cache = $this->_getCacheDriver();
-
-        // Test save
-        $cache->save('test_set_state', new SetStateClass(array(1,2,3)));
-
-        //Test __set_state call
-        $this->assertCount(0, SetStateClass::$values);
-
-        // Test fetch
-        $value = $cache->fetch('test_set_state');
-        $this->assertInstanceOf('Doctrine\Tests\Common\Cache\SetStateClass', $value);
-        $this->assertEquals(array(1,2,3), $value->getValue());
-
-        //Test __set_state call
-        $this->assertCount(1, SetStateClass::$values);
-
-        // Test contains
-        $this->assertTrue($cache->contains('test_set_state'));
-    }
-
-    public function testNotImplementsSetState()
-    {
-        $cache = $this->_getCacheDriver();
-
-        $this->setExpectedException('InvalidArgumentException');
-        $cache->save('test_not_set_state', new NotSetStateClass(array(1,2,3)));
-    }
-
-    public function testGetStats()
-    {
-        $cache = $this->_getCacheDriver();
-        $stats = $cache->getStats();
-
-        $this->assertNull($stats[Cache::STATS_HITS]);
-        $this->assertNull($stats[Cache::STATS_MISSES]);
-        $this->assertNull($stats[Cache::STATS_UPTIME]);
-        $this->assertEquals(0, $stats[Cache::STATS_MEMORY_USAGE]);
-        $this->assertGreaterThan(0, $stats[Cache::STATS_MEMORY_AVAILABLE]);
-    }
-
-    public function testCachedObject()
-    {
-        $this->markTestSkipped("PhpFileCache cannot handle objects that don't implement __set_state.");
-    }
-
-    public function testFetchMultipleObjects()
-    {
-        $this->markTestSkipped("PhpFileCache cannot handle objects that don't implement __set_state.");
-    }
-
-    protected function _getCacheDriver()
-    {
-        return new PhpFileCache($this->directory);
-    }
-}
-
-class NotSetStateClass
-{
-    private $value;
-
-    public function __construct($value)
-    {
-        $this->value = $value;
-    }
-
-    public function getValue()
-    {
-        return $this->value;
-    }
-}
-
-class SetStateClass extends NotSetStateClass
-{
-    public static $values = array();
-
-    public static function __set_state($data)
-    {
-        self::$values = $data;
-        return new self($data['value']);
-    }
-}
diff --git a/vendor/doctrine/cache/tests/Doctrine/Tests/Common/Cache/PredisCacheTest.php b/vendor/doctrine/cache/tests/Doctrine/Tests/Common/Cache/PredisCacheTest.php
deleted file mode 100644
index fecc92b..0000000
--- a/vendor/doctrine/cache/tests/Doctrine/Tests/Common/Cache/PredisCacheTest.php
+++ /dev/null
@@ -1,62 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Cache;
-
-use Doctrine\Common\Cache\Cache;
-use Doctrine\Common\Cache\PredisCache;
-use Predis\Client;
-use Predis\Connection\ConnectionException;
-
-class PredisCacheTest extends CacheTest
-{
-    private $client;
-
-    public function setUp()
-    {
-        if (!class_exists('Predis\Client')) {
-            $this->markTestSkipped('Predis\Client is missing. Make sure to "composer install" to have all dev dependencies.');
-        }
-
-        $this->client = new Client();
-
-        try {
-            $this->client->connect();
-        } catch (ConnectionException $e) {
-            $this->markTestSkipped('The ' . __CLASS__ .' requires the use of redis');
-        }
-    }
-
-    public function testHitMissesStatsAreProvided()
-    {
-        $cache = $this->_getCacheDriver();
-        $stats = $cache->getStats();
-
-        $this->assertNotNull($stats[Cache::STATS_HITS]);
-        $this->assertNotNull($stats[Cache::STATS_MISSES]);
-    }
-
-    /**
-     * @return PredisCache
-     */
-    protected function _getCacheDriver()
-    {
-        return new PredisCache($this->client);
-    }
-
-    /**
-     * {@inheritDoc}
-     *
-     * @dataProvider falseCastedValuesProvider
-     */
-    public function testFalseCastedValues($value)
-    {
-        if (array() === $value) {
-            $this->markTestIncomplete(
-                'Predis currently doesn\'t support saving empty array values. '
-                . 'See https://github.com/nrk/predis/issues/241'
-            );
-        }
-
-        parent::testFalseCastedValues($value);
-    }
-}
diff --git a/vendor/doctrine/cache/tests/Doctrine/Tests/Common/Cache/RedisCacheTest.php b/vendor/doctrine/cache/tests/Doctrine/Tests/Common/Cache/RedisCacheTest.php
deleted file mode 100644
index 35d9f5e..0000000
--- a/vendor/doctrine/cache/tests/Doctrine/Tests/Common/Cache/RedisCacheTest.php
+++ /dev/null
@@ -1,40 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Cache;
-
-use Doctrine\Common\Cache\RedisCache;
-use Doctrine\Common\Cache\Cache;
-
-class RedisCacheTest extends CacheTest
-{
-    private $_redis;
-
-    public function setUp()
-    {
-        if (extension_loaded('redis')) {
-            $this->_redis = new \Redis();
-            $ok = @$this->_redis->connect('127.0.0.1');
-            if (!$ok) {
-                $this->markTestSkipped('The ' . __CLASS__ .' requires the use of redis');
-            }
-        } else {
-            $this->markTestSkipped('The ' . __CLASS__ .' requires the use of redis');
-        }
-    }
-
-    public function testHitMissesStatsAreProvided()
-    {
-        $cache = $this->_getCacheDriver();
-        $stats = $cache->getStats();
-
-        $this->assertNotNull($stats[Cache::STATS_HITS]);
-        $this->assertNotNull($stats[Cache::STATS_MISSES]);
-    }
-
-    protected function _getCacheDriver()
-    {
-        $driver = new RedisCache();
-        $driver->setRedis($this->_redis);
-        return $driver;
-    }
-}
diff --git a/vendor/doctrine/cache/tests/Doctrine/Tests/Common/Cache/RiakCacheTest.php b/vendor/doctrine/cache/tests/Doctrine/Tests/Common/Cache/RiakCacheTest.php
deleted file mode 100644
index dce8cc0..0000000
--- a/vendor/doctrine/cache/tests/Doctrine/Tests/Common/Cache/RiakCacheTest.php
+++ /dev/null
@@ -1,64 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Cache;
-
-use Riak\Bucket;
-use Riak\Connection;
-use Riak\Exception;
-use Doctrine\Common\Cache\RiakCache;
-
-/**
- * RiakCache test
- *
- * @group Riak
- */
-class RiakCacheTest extends CacheTest
-{
-    /**
-     * @var \Riak\Connection
-     */
-    private $connection;
-
-    /**
-     * @var \Riak\Bucket
-     */
-    private $bucket;
-
-    /**
-     * {@inheritdoc}
-     */
-    public function setUp()
-    {
-        if ( ! extension_loaded('riak')) {
-            $this->markTestSkipped('The ' . __CLASS__ .' requires the use of Riak');
-        }
-
-        try {
-            $this->connection = new Connection('127.0.0.1', 8087);
-            $this->bucket     = new Bucket($this->connection, 'test');
-        } catch (Exception\RiakException $e) {
-            $this->markTestSkipped('The ' . __CLASS__ .' requires the use of Riak');
-        }
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    public function testGetStats()
-    {
-        $cache = $this->_getCacheDriver();
-        $stats = $cache->getStats();
-
-        $this->assertNull($stats);
-    }
-
-    /**
-     * Retrieve RiakCache instance.
-     *
-     * @return \Doctrine\Common\Cache\RiakCache
-     */
-    protected function _getCacheDriver()
-    {
-        return new RiakCache($this->bucket);
-    }
-}
diff --git a/vendor/doctrine/cache/tests/Doctrine/Tests/Common/Cache/SQLite3CacheTest.php b/vendor/doctrine/cache/tests/Doctrine/Tests/Common/Cache/SQLite3CacheTest.php
deleted file mode 100644
index 44ccce9..0000000
--- a/vendor/doctrine/cache/tests/Doctrine/Tests/Common/Cache/SQLite3CacheTest.php
+++ /dev/null
@@ -1,48 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Cache;
-
-use Doctrine\Common\Cache\Cache;
-use Doctrine\Common\Cache\SQLite3Cache;
-use SQLite3;
-
-class SQLite3Test extends CacheTest
-{
-    /**
-     * @var SQLite3
-     */
-    private $file, $sqlite;
-
-    protected function setUp()
-    {
-        $this->file = tempnam(null, 'doctrine-cache-test-');
-        unlink($this->file);
-        $this->sqlite = new SQLite3($this->file);
-    }
-
-    protected function tearDown()
-    {
-        $this->sqlite = null;  // DB must be closed before
-        unlink($this->file);
-    }
-
-    public function testGetStats()
-    {
-        $this->assertNull($this->_getCacheDriver()->getStats());
-    }
-
-    public function testFetchSingle()
-    {
-        $id   = uniqid('sqlite3_id_');
-        $data = "\0"; // produces null bytes in serialized format
-
-        $this->_getCacheDriver()->save($id, $data, 30);
-
-        $this->assertEquals($data, $this->_getCacheDriver()->fetch($id));
-    }
-
-    protected function _getCacheDriver()
-    {
-        return new SQLite3Cache($this->sqlite, 'test_table');
-    }
-}
diff --git a/vendor/doctrine/cache/tests/Doctrine/Tests/Common/Cache/VoidCacheTest.php b/vendor/doctrine/cache/tests/Doctrine/Tests/Common/Cache/VoidCacheTest.php
deleted file mode 100644
index ca87f16..0000000
--- a/vendor/doctrine/cache/tests/Doctrine/Tests/Common/Cache/VoidCacheTest.php
+++ /dev/null
@@ -1,51 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Cache;
-
-use Doctrine\Common\Cache\VoidCache;
-
-/**
- * @covers \Doctrine\Common\Cache\VoidCache
- */
-class VoidCacheTest extends \PHPUnit_Framework_TestCase
-{
-    public function testShouldAlwaysReturnFalseOnContains()
-    {
-        $cache = new VoidCache();
-
-        $this->assertFalse($cache->contains('foo'));
-        $this->assertFalse($cache->contains('bar'));
-    }
-
-    public function testShouldAlwaysReturnFalseOnFetch()
-    {
-        $cache = new VoidCache();
-
-        $this->assertFalse($cache->fetch('foo'));
-        $this->assertFalse($cache->fetch('bar'));
-    }
-
-    public function testShouldAlwaysReturnTrueOnSaveButNotStoreAnything()
-    {
-        $cache = new VoidCache();
-
-        $this->assertTrue($cache->save('foo', 'fooVal'));
-
-        $this->assertFalse($cache->contains('foo'));
-        $this->assertFalse($cache->fetch('foo'));
-    }
-
-    public function testShouldAlwaysReturnTrueOnDelete()
-    {
-        $cache = new VoidCache();
-
-        $this->assertTrue($cache->delete('foo'));
-    }
-
-    public function testShouldAlwaysReturnNullOnGetStatus()
-    {
-        $cache = new VoidCache();
-
-        $this->assertNull($cache->getStats());
-    }
-}
diff --git a/vendor/doctrine/cache/tests/Doctrine/Tests/Common/Cache/WinCacheCacheTest.php b/vendor/doctrine/cache/tests/Doctrine/Tests/Common/Cache/WinCacheCacheTest.php
deleted file mode 100644
index cb363df..0000000
--- a/vendor/doctrine/cache/tests/Doctrine/Tests/Common/Cache/WinCacheCacheTest.php
+++ /dev/null
@@ -1,20 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Cache;
-
-use Doctrine\Common\Cache\WincacheCache;
-
-class WincacheCacheTest extends CacheTest
-{
-    public function setUp()
-    {
-        if ( ! extension_loaded('wincache') || ! function_exists('wincache_ucache_info')) {
-            $this->markTestSkipped('The ' . __CLASS__ .' requires the use of Wincache');
-        }
-    }
-
-    protected function _getCacheDriver()
-    {
-        return new WincacheCache();
-    }
-}
\ No newline at end of file
diff --git a/vendor/doctrine/cache/tests/Doctrine/Tests/Common/Cache/XcacheCacheTest.php b/vendor/doctrine/cache/tests/Doctrine/Tests/Common/Cache/XcacheCacheTest.php
deleted file mode 100644
index 6259848..0000000
--- a/vendor/doctrine/cache/tests/Doctrine/Tests/Common/Cache/XcacheCacheTest.php
+++ /dev/null
@@ -1,20 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Cache;
-
-use Doctrine\Common\Cache\XcacheCache;
-
-class XcacheCacheTest extends CacheTest
-{
-    public function setUp()
-    {
-        if ( ! extension_loaded('xcache')) {
-            $this->markTestSkipped('The ' . __CLASS__ .' requires the use of xcache');
-        }
-    }
-
-    protected function _getCacheDriver()
-    {
-        return new XcacheCache();
-    }
-}
\ No newline at end of file
diff --git a/vendor/doctrine/cache/tests/Doctrine/Tests/Common/Cache/ZendDataCacheTest.php b/vendor/doctrine/cache/tests/Doctrine/Tests/Common/Cache/ZendDataCacheTest.php
deleted file mode 100644
index cd66e15..0000000
--- a/vendor/doctrine/cache/tests/Doctrine/Tests/Common/Cache/ZendDataCacheTest.php
+++ /dev/null
@@ -1,28 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Cache;
-
-use Doctrine\Common\Cache\ZendDataCache;
-
-class ZendDataCacheTest extends CacheTest
-{
-    public function setUp()
-    {
-        if (!function_exists('zend_shm_cache_fetch') || (php_sapi_name() != 'apache2handler')) {
-            $this->markTestSkipped('The ' . __CLASS__ .' requires the use of Zend Data Cache which only works in apache2handler SAPI');
-        }
-    }
-
-    public function testGetStats()
-    {
-        $cache = $this->_getCacheDriver();
-        $stats = $cache->getStats();
-
-        $this->assertNull($stats);
-    }
-
-    protected function _getCacheDriver()
-    {
-        return new ZendDataCache();
-    }
-}
\ No newline at end of file
diff --git a/vendor/doctrine/cache/tests/Doctrine/Tests/DoctrineTestCase.php b/vendor/doctrine/cache/tests/Doctrine/Tests/DoctrineTestCase.php
deleted file mode 100644
index e8323d2..0000000
--- a/vendor/doctrine/cache/tests/Doctrine/Tests/DoctrineTestCase.php
+++ /dev/null
@@ -1,10 +0,0 @@
-<?php
-
-namespace Doctrine\Tests;
-
-/**
- * Base testcase class for all Doctrine testcases.
- */
-abstract class DoctrineTestCase extends \PHPUnit_Framework_TestCase
-{
-}
\ No newline at end of file
diff --git a/vendor/doctrine/cache/tests/Doctrine/Tests/TestInit.php b/vendor/doctrine/cache/tests/Doctrine/Tests/TestInit.php
deleted file mode 100644
index 1bbfa94..0000000
--- a/vendor/doctrine/cache/tests/Doctrine/Tests/TestInit.php
+++ /dev/null
@@ -1,19 +0,0 @@
-<?php
-/*
- * This file bootstraps the test environment.
- */
-error_reporting(E_ALL | E_STRICT);
-
-if (file_exists(__DIR__ . '/../../../vendor/autoload.php')) {
-    // dependencies were installed via composer - this is the main project
-    $classLoader = require __DIR__ . '/../../../vendor/autoload.php';
-} elseif (file_exists(__DIR__ . '/../../../../../autoload.php')) {
-    // installed as a dependency in `vendor`
-    $classLoader = require __DIR__ . '/../../../../../autoload.php';
-} else {
-    throw new Exception('Can\'t find autoload.php. Did you install dependencies via Composer?');
-}
-
-/* @var $classLoader \Composer\Autoload\ClassLoader */
-$classLoader->add('Doctrine\\Tests\\', __DIR__ . '/../../');
-unset($classLoader);
diff --git a/vendor/doctrine/cache/tests/travis/php.ini b/vendor/doctrine/cache/tests/travis/php.ini
deleted file mode 100644
index 105af36..0000000
--- a/vendor/doctrine/cache/tests/travis/php.ini
+++ /dev/null
@@ -1,7 +0,0 @@
-extension="mongo.so"
-extension="memcache.so"
-extension="memcached.so"
-extension="redis.so"
-
-apc.enabled=1
-apc.enable_cli=1
diff --git a/vendor/doctrine/cache/tests/travis/phpunit.travis.xml b/vendor/doctrine/cache/tests/travis/phpunit.travis.xml
deleted file mode 100644
index a01faa5..0000000
--- a/vendor/doctrine/cache/tests/travis/phpunit.travis.xml
+++ /dev/null
@@ -1,35 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<phpunit bootstrap="../Doctrine/Tests/TestInit.php"
-        convertWarningsToExceptions="true"
-        convertNoticesToExceptions="true"
-        convertErrorsToExceptions="true"
-        backupStaticAttributes="false"
-        processIsolation="false"
-        stopOnFailure="false"
-        backupGlobals="false"
-        syntaxCheck="false"
-        colors="true">
-
-    <logging>
-        <log type="coverage-clover" target="../../build/logs/clover.xml"/>
-    </logging>
-
-    <testsuites>
-        <testsuite name="Doctrine Cache Test Suite">
-            <directory>../Doctrine/</directory>
-        </testsuite>
-    </testsuites>
-
-    <filter>
-        <whitelist>
-            <directory>../../lib/Doctrine/</directory>
-        </whitelist>
-    </filter>
-    
-    <groups>
-        <exclude>
-            <group>performance</group>
-        </exclude>
-    </groups>
-</phpunit>
diff --git a/vendor/doctrine/collections/tests/Doctrine/Tests/Common/Collections/AbstractLazyCollectionTest.php b/vendor/doctrine/collections/tests/Doctrine/Tests/Common/Collections/AbstractLazyCollectionTest.php
deleted file mode 100644
index 4de82cc..0000000
--- a/vendor/doctrine/collections/tests/Doctrine/Tests/Common/Collections/AbstractLazyCollectionTest.php
+++ /dev/null
@@ -1,20 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Collections;
-
-use Doctrine\Tests\LazyArrayCollection;
-
-class AbstractLazyCollectionTest extends \PHPUnit_Framework_TestCase
-{
-    public function testLazyCollection()
-    {
-        $collection = new LazyArrayCollection();
-
-        $this->assertFalse($collection->isInitialized());
-        $this->assertCount(3, $collection);
-
-        $collection->add('bar');
-        $this->assertTrue($collection->isInitialized());
-        $this->assertCount(4, $collection);
-    }
-}
diff --git a/vendor/doctrine/collections/tests/Doctrine/Tests/Common/Collections/ArrayCollectionTest.php b/vendor/doctrine/collections/tests/Doctrine/Tests/Common/Collections/ArrayCollectionTest.php
deleted file mode 100644
index 1b8a906..0000000
--- a/vendor/doctrine/collections/tests/Doctrine/Tests/Common/Collections/ArrayCollectionTest.php
+++ /dev/null
@@ -1,296 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Tests\Common\Collections;
-
-use Doctrine\Common\Collections\ArrayCollection;
-use Doctrine\Common\Collections\Criteria;
-
-/**
- * Tests for {@see \Doctrine\Common\Collections\ArrayCollection}
- *
- * @covers \Doctrine\Common\Collections\ArrayCollection
- */
-class ArrayCollectionTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @dataProvider provideDifferentElements
-     */
-    public function testToArray($elements)
-    {
-        $collection = new ArrayCollection($elements);
-
-        $this->assertSame($elements, $collection->toArray());
-    }
-
-    /**
-     * @dataProvider provideDifferentElements
-     */
-    public function testFirst($elements)
-    {
-        $collection = new ArrayCollection($elements);
-        $this->assertSame(reset($elements), $collection->first());
-    }
-
-    /**
-     * @dataProvider provideDifferentElements
-     */
-    public function testLast($elements)
-    {
-        $collection = new ArrayCollection($elements);
-        $this->assertSame(end($elements), $collection->last());
-    }
-
-    /**
-     * @dataProvider provideDifferentElements
-     */
-    public function testKey($elements)
-    {
-        $collection = new ArrayCollection($elements);
-
-        $this->assertSame(key($elements), $collection->key());
-
-        next($elements);
-        $collection->next();
-
-        $this->assertSame(key($elements), $collection->key());
-    }
-
-    /**
-     * @dataProvider provideDifferentElements
-     */
-    public function testNext($elements)
-    {
-        $collection = new ArrayCollection($elements);
-
-        while (true) {
-            $collectionNext = $collection->next();
-            $arrayNext = next($elements);
-
-            if(!$collectionNext || !$arrayNext) {
-                break;
-            }
-
-            $this->assertSame($arrayNext,      $collectionNext,        "Returned value of ArrayCollection::next() and next() not match");
-            $this->assertSame(key($elements),     $collection->key(),     "Keys not match");
-            $this->assertSame(current($elements), $collection->current(), "Current values not match");
-        }
-    }
-
-    /**
-     * @dataProvider provideDifferentElements
-     */
-    public function testCurrent($elements)
-    {
-        $collection = new ArrayCollection($elements);
-
-        $this->assertSame(current($elements), $collection->current());
-
-        next($elements);
-        $collection->next();
-
-        $this->assertSame(current($elements), $collection->current());
-    }
-
-    /**
-     * @dataProvider provideDifferentElements
-     */
-    public function testGetKeys($elements)
-    {
-        $collection = new ArrayCollection($elements);
-
-        $this->assertSame(array_keys($elements), $collection->getKeys());
-    }
-
-    /**
-     * @dataProvider provideDifferentElements
-     */
-    public function testGetValues($elements)
-    {
-        $collection = new ArrayCollection($elements);
-
-        $this->assertSame(array_values($elements), $collection->getValues());
-    }
-
-    /**
-     * @dataProvider provideDifferentElements
-     */
-    public function testCount($elements)
-    {
-        $collection = new ArrayCollection($elements);
-
-        $this->assertSame(count($elements), $collection->count());
-    }
-
-    /**
-     * @dataProvider provideDifferentElements
-     */
-    public function testIterator($elements)
-    {
-        $collection = new ArrayCollection($elements);
-
-        $iterations = 0;
-        foreach($collection->getIterator() as $key => $item) {
-            $this->assertSame($elements[$key], $item, "Item {$key} not match");
-            $iterations++;
-        }
-
-        $this->assertEquals(count($elements), $iterations, "Number of iterations not match");
-    }
-
-    /**
-     * @return array
-     */
-    public function provideDifferentElements()
-    {
-        return array(
-            'indexed'     => array(array(1, 2, 3, 4, 5)),
-            'associative' => array(array('A' => 'a', 'B' => 'b', 'C' => 'c')),
-            'mixed'       => array(array('A' => 'a', 1, 'B' => 'b', 2, 3)),
-        );
-    }
-
-    public function testRemove()
-    {
-        $elements = array(1, 'A' => 'a', 2, 'B' => 'b', 3);
-        $collection = new ArrayCollection($elements);
-
-        $this->assertEquals(1, $collection->remove(0));
-        unset($elements[0]);
-
-        $this->assertEquals(null, $collection->remove('non-existent'));
-        unset($elements['non-existent']);
-
-        $this->assertEquals(2, $collection->remove(1));
-        unset($elements[1]);
-
-        $this->assertEquals('a', $collection->remove('A'));
-        unset($elements['A']);
-
-        $this->assertEquals($elements, $collection->toArray());
-    }
-
-    public function testRemoveElement()
-    {
-        $elements = array(1, 'A' => 'a', 2, 'B' => 'b', 3, 'A2' => 'a', 'B2' => 'b');
-        $collection = new ArrayCollection($elements);
-
-        $this->assertTrue($collection->removeElement(1));
-        unset($elements[0]);
-
-        $this->assertFalse($collection->removeElement('non-existent'));
-
-        $this->assertTrue($collection->removeElement('a'));
-        unset($elements['A']);
-
-        $this->assertTrue($collection->removeElement('a'));
-        unset($elements['A2']);
-
-        $this->assertEquals($elements, $collection->toArray());
-    }
-
-    public function testContainsKey()
-    {
-        $elements = array(1, 'A' => 'a', 2, 'null' => null, 3, 'A2' => 'a', 'B2' => 'b');
-        $collection = new ArrayCollection($elements);
-
-        $this->assertTrue($collection->containsKey(0),               "Contains index 0");
-        $this->assertTrue($collection->containsKey('A'),             "Contains key \"A\"");
-        $this->assertTrue($collection->containsKey('null'),          "Contains key \"null\", with value null");
-        $this->assertFalse($collection->containsKey('non-existent'), "Doesn't contain key");
-    }
-
-    public function testEmpty()
-    {
-        $collection = new ArrayCollection();
-        $this->assertTrue($collection->isEmpty(), "Empty collection");
-
-        $collection->add(1);
-        $this->assertFalse($collection->isEmpty(), "Not empty collection");
-    }
-
-    public function testContains()
-    {
-        $elements = array(1, 'A' => 'a', 2, 'null' => null, 3, 'A2' => 'a', 'zero' => 0);
-        $collection = new ArrayCollection($elements);
-
-        $this->assertTrue($collection->contains(0),               "Contains Zero");
-        $this->assertTrue($collection->contains('a'),             "Contains \"a\"");
-        $this->assertTrue($collection->contains(null),            "Contains Null");
-        $this->assertFalse($collection->contains('non-existent'), "Doesn't contain an element");
-    }
-
-    public function testExists()
-    {
-        $elements = array(1, 'A' => 'a', 2, 'null' => null, 3, 'A2' => 'a', 'zero' => 0);
-        $collection = new ArrayCollection($elements);
-
-        $this->assertTrue($collection->exists(function($key, $element) {
-            return $key == 'A' && $element == 'a';
-        }), "Element exists");
-
-        $this->assertFalse($collection->exists(function($key, $element) {
-            return $key == 'non-existent' && $element == 'non-existent';
-        }), "Element not exists");
-    }
-
-    public function testIndexOf()
-    {
-        $elements = array(1, 'A' => 'a', 2, 'null' => null, 3, 'A2' => 'a', 'zero' => 0);
-        $collection = new ArrayCollection($elements);
-
-        $this->assertSame(array_search(2,              $elements, true), $collection->indexOf(2),              'Index of 2');
-        $this->assertSame(array_search(null,           $elements, true), $collection->indexOf(null),           'Index of null');
-        $this->assertSame(array_search('non-existent', $elements, true), $collection->indexOf('non-existent'), 'Index of non existent');
-    }
-
-    public function testGet()
-    {
-        $elements = array(1, 'A' => 'a', 2, 'null' => null, 3, 'A2' => 'a', 'zero' => 0);
-        $collection = new ArrayCollection($elements);
-
-        $this->assertSame(2,    $collection->get(1),              'Get element by index');
-        $this->assertSame('a',  $collection->get('A'),            'Get element by name');
-        $this->assertSame(null, $collection->get('non-existent'), 'Get non existent element');
-    }
-
-    public function testMatchingWithSortingPreservesyKeys()
-    {
-        $object1 = new \stdClass();
-        $object2 = new \stdClass();
-
-        $object1->sortField = 2;
-        $object2->sortField = 1;
-
-        $collection = new ArrayCollection(array(
-            'object1' => $object1,
-            'object2' => $object2,
-        ));
-
-        $this->assertSame(
-            array(
-                'object2' => $object2,
-                'object1' => $object1,
-            ),
-            $collection
-                ->matching(new Criteria(null, array('sortField' => Criteria::ASC)))
-                ->toArray()
-        );
-    }
-}
diff --git a/vendor/doctrine/collections/tests/Doctrine/Tests/Common/Collections/ClosureExpressionVisitorTest.php b/vendor/doctrine/collections/tests/Doctrine/Tests/Common/Collections/ClosureExpressionVisitorTest.php
deleted file mode 100644
index 21c2e3d..0000000
--- a/vendor/doctrine/collections/tests/Doctrine/Tests/Common/Collections/ClosureExpressionVisitorTest.php
+++ /dev/null
@@ -1,250 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Tests\Common\Collections;
-
-use Doctrine\Common\Collections\Expr\ClosureExpressionVisitor;
-use Doctrine\Common\Collections\ExpressionBuilder;
-
-/**
- * @group DDC-1637
- */
-class ClosureExpressionVisitorTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @var ClosureExpressionVisitor
-     */
-    private $visitor;
-
-    /**
-     * @var ExpressionBuilder
-     */
-    private $builder;
-
-    protected function setUp()
-    {
-        $this->visitor = new ClosureExpressionVisitor();
-        $this->builder = new ExpressionBuilder();
-    }
-
-    public function testGetObjectFieldValueIsAccessor()
-    {
-        $object = new TestObject(1, 2, true);
-
-        $this->assertTrue($this->visitor->getObjectFieldValue($object, 'baz'));
-    }
-
-    public function testGetObjectFieldValueMagicCallMethod()
-    {
-        $object = new TestObject(1, 2, true, 3);
-
-        $this->assertEquals(3, $this->visitor->getObjectFieldValue($object, 'qux'));
-    }
-
-    public function testWalkEqualsComparison()
-    {
-        $closure = $this->visitor->walkComparison($this->builder->eq("foo", 1));
-
-        $this->assertTrue($closure(new TestObject(1)));
-        $this->assertFalse($closure(new TestObject(2)));
-    }
-
-    public function testWalkNotEqualsComparison()
-    {
-        $closure = $this->visitor->walkComparison($this->builder->neq("foo", 1));
-
-        $this->assertFalse($closure(new TestObject(1)));
-        $this->assertTrue($closure(new TestObject(2)));
-    }
-
-    public function testWalkLessThanComparison()
-    {
-        $closure = $this->visitor->walkComparison($this->builder->lt("foo", 1));
-
-        $this->assertFalse($closure(new TestObject(1)));
-        $this->assertTrue($closure(new TestObject(0)));
-    }
-
-    public function testWalkLessThanEqualsComparison()
-    {
-        $closure = $this->visitor->walkComparison($this->builder->lte("foo", 1));
-
-        $this->assertFalse($closure(new TestObject(2)));
-        $this->assertTrue($closure(new TestObject(1)));
-        $this->assertTrue($closure(new TestObject(0)));
-    }
-
-    public function testWalkGreaterThanEqualsComparison()
-    {
-        $closure = $this->visitor->walkComparison($this->builder->gte("foo", 1));
-
-        $this->assertTrue($closure(new TestObject(2)));
-        $this->assertTrue($closure(new TestObject(1)));
-        $this->assertFalse($closure(new TestObject(0)));
-    }
-
-    public function testWalkGreaterThanComparison()
-    {
-        $closure = $this->visitor->walkComparison($this->builder->gt("foo", 1));
-
-        $this->assertTrue($closure(new TestObject(2)));
-        $this->assertFalse($closure(new TestObject(1)));
-        $this->assertFalse($closure(new TestObject(0)));
-    }
-
-    public function testWalkInComparison()
-    {
-        $closure = $this->visitor->walkComparison($this->builder->in("foo", array(1, 2, 3)));
-
-        $this->assertTrue($closure(new TestObject(2)));
-        $this->assertTrue($closure(new TestObject(1)));
-        $this->assertFalse($closure(new TestObject(0)));
-    }
-
-    public function testWalkNotInComparison()
-    {
-        $closure = $this->visitor->walkComparison($this->builder->notIn("foo", array(1, 2, 3)));
-
-        $this->assertFalse($closure(new TestObject(1)));
-        $this->assertFalse($closure(new TestObject(2)));
-        $this->assertTrue($closure(new TestObject(0)));
-        $this->assertTrue($closure(new TestObject(4)));
-    }
-
-    public function testWalkContainsComparison()
-    {
-        $closure = $this->visitor->walkComparison($this->builder->contains('foo', 'hello'));
-
-        $this->assertTrue($closure(new TestObject('hello world')));
-        $this->assertFalse($closure(new TestObject('world')));
-    }
-
-    public function testWalkAndCompositeExpression()
-    {
-        $closure = $this->visitor->walkCompositeExpression(
-            $this->builder->andX(
-                $this->builder->eq("foo", 1),
-                $this->builder->eq("bar", 1)
-            )
-        );
-
-        $this->assertTrue($closure(new TestObject(1, 1)));
-        $this->assertFalse($closure(new TestObject(1, 0)));
-        $this->assertFalse($closure(new TestObject(0, 1)));
-        $this->assertFalse($closure(new TestObject(0, 0)));
-    }
-
-    public function testWalkOrCompositeExpression()
-    {
-        $closure = $this->visitor->walkCompositeExpression(
-            $this->builder->orX(
-                $this->builder->eq("foo", 1),
-                $this->builder->eq("bar", 1)
-            )
-        );
-
-        $this->assertTrue($closure(new TestObject(1, 1)));
-        $this->assertTrue($closure(new TestObject(1, 0)));
-        $this->assertTrue($closure(new TestObject(0, 1)));
-        $this->assertFalse($closure(new TestObject(0, 0)));
-    }
-
-    public function testSortByFieldAscending()
-    {
-        $objects = array(new TestObject("b"), new TestObject("a"), new TestObject("c"));
-        $sort = ClosureExpressionVisitor::sortByField("foo");
-
-        usort($objects, $sort);
-
-        $this->assertEquals("a", $objects[0]->getFoo());
-        $this->assertEquals("b", $objects[1]->getFoo());
-        $this->assertEquals("c", $objects[2]->getFoo());
-    }
-
-    public function testSortByFieldDescending()
-    {
-        $objects = array(new TestObject("b"), new TestObject("a"), new TestObject("c"));
-        $sort = ClosureExpressionVisitor::sortByField("foo", -1);
-
-        usort($objects, $sort);
-
-        $this->assertEquals("c", $objects[0]->getFoo());
-        $this->assertEquals("b", $objects[1]->getFoo());
-        $this->assertEquals("a", $objects[2]->getFoo());
-    }
-
-    public function testSortDelegate()
-    {
-        $objects = array(new TestObject("a", "c"), new TestObject("a", "b"), new TestObject("a", "a"));
-        $sort = ClosureExpressionVisitor::sortByField("bar", 1);
-        $sort = ClosureExpressionVisitor::sortByField("foo", 1, $sort);
-
-        usort($objects, $sort);
-
-        $this->assertEquals("a", $objects[0]->getBar());
-        $this->assertEquals("b", $objects[1]->getBar());
-        $this->assertEquals("c", $objects[2]->getBar());
-    }
-
-    public function testArrayComparison()
-    {
-        $closure = $this->visitor->walkComparison($this->builder->eq("foo", 42));
-
-        $this->assertTrue($closure(array('foo' => 42)));
-    }
-}
-
-class TestObject
-{
-    private $foo;
-    private $bar;
-    private $baz;
-    private $qux;
-
-    public function __construct($foo = null, $bar = null, $baz = null, $qux = null)
-    {
-        $this->foo = $foo;
-        $this->bar = $bar;
-        $this->baz = $baz;
-        $this->qux = $qux;
-    }
-
-    public function __call($name, $arguments)
-    {
-        if ('getqux' === $name) {
-            return $this->qux;
-        }
-    }
-
-    public function getFoo()
-    {
-        return $this->foo;
-    }
-
-    public function getBar()
-    {
-        return $this->bar;
-    }
-
-    public function isBaz()
-    {
-        return $this->baz;
-    }
-}
-
diff --git a/vendor/doctrine/collections/tests/Doctrine/Tests/Common/Collections/CollectionTest.php b/vendor/doctrine/collections/tests/Doctrine/Tests/Common/Collections/CollectionTest.php
deleted file mode 100644
index f3f91ad..0000000
--- a/vendor/doctrine/collections/tests/Doctrine/Tests/Common/Collections/CollectionTest.php
+++ /dev/null
@@ -1,265 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Collections;
-
-use Doctrine\Common\Collections\ArrayCollection;
-use Doctrine\Common\Collections\Collection;
-use Doctrine\Common\Collections\Criteria;
-
-class CollectionTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @var Collection
-     */
-    private $collection;
-
-    protected function setUp()
-    {
-        $this->collection = new ArrayCollection();
-    }
-
-    public function testIssetAndUnset()
-    {
-        $this->assertFalse(isset($this->collection[0]));
-        $this->collection->add('testing');
-        $this->assertTrue(isset($this->collection[0]));
-        unset($this->collection[0]);
-        $this->assertFalse(isset($this->collection[0]));
-    }
-
-    public function testToString()
-    {
-        $this->collection->add('testing');
-        $this->assertTrue(is_string((string) $this->collection));
-    }
-
-    public function testRemovingNonExistentEntryReturnsNull()
-    {
-        $this->assertEquals(null, $this->collection->remove('testing_does_not_exist'));
-    }
-
-    public function testExists()
-    {
-        $this->collection->add("one");
-        $this->collection->add("two");
-        $exists = $this->collection->exists(function($k, $e) { return $e == "one"; });
-        $this->assertTrue($exists);
-        $exists = $this->collection->exists(function($k, $e) { return $e == "other"; });
-        $this->assertFalse($exists);
-    }
-
-    public function testMap()
-    {
-        $this->collection->add(1);
-        $this->collection->add(2);
-        $res = $this->collection->map(function($e) { return $e * 2; });
-        $this->assertEquals(array(2, 4), $res->toArray());
-    }
-
-    public function testFilter()
-    {
-        $this->collection->add(1);
-        $this->collection->add("foo");
-        $this->collection->add(3);
-        $res = $this->collection->filter(function($e) { return is_numeric($e); });
-        $this->assertEquals(array(0 => 1, 2 => 3), $res->toArray());
-    }
-
-    public function testFirstAndLast()
-    {
-        $this->collection->add('one');
-        $this->collection->add('two');
-
-        $this->assertEquals($this->collection->first(), 'one');
-        $this->assertEquals($this->collection->last(), 'two');
-    }
-
-    public function testArrayAccess()
-    {
-        $this->collection[] = 'one';
-        $this->collection[] = 'two';
-
-        $this->assertEquals($this->collection[0], 'one');
-        $this->assertEquals($this->collection[1], 'two');
-
-        unset($this->collection[0]);
-        $this->assertEquals($this->collection->count(), 1);
-    }
-
-    public function testContainsKey()
-    {
-        $this->collection[5] = 'five';
-        $this->assertTrue($this->collection->containsKey(5));
-    }
-
-    public function testContains()
-    {
-        $this->collection[0] = 'test';
-        $this->assertTrue($this->collection->contains('test'));
-    }
-
-    public function testSearch()
-    {
-        $this->collection[0] = 'test';
-        $this->assertEquals(0, $this->collection->indexOf('test'));
-    }
-
-    public function testGet()
-    {
-        $this->collection[0] = 'test';
-        $this->assertEquals('test', $this->collection->get(0));
-    }
-
-    public function testGetKeys()
-    {
-        $this->collection[] = 'one';
-        $this->collection[] = 'two';
-        $this->assertEquals(array(0, 1), $this->collection->getKeys());
-    }
-
-    public function testGetValues()
-    {
-        $this->collection[] = 'one';
-        $this->collection[] = 'two';
-        $this->assertEquals(array('one', 'two'), $this->collection->getValues());
-    }
-
-    public function testCount()
-    {
-        $this->collection[] = 'one';
-        $this->collection[] = 'two';
-        $this->assertEquals($this->collection->count(), 2);
-        $this->assertEquals(count($this->collection), 2);
-    }
-
-    public function testForAll()
-    {
-        $this->collection[] = 'one';
-        $this->collection[] = 'two';
-        $this->assertEquals($this->collection->forAll(function($k, $e) { return is_string($e); }), true);
-        $this->assertEquals($this->collection->forAll(function($k, $e) { return is_array($e); }), false);
-    }
-
-    public function testPartition()
-    {
-        $this->collection[] = true;
-        $this->collection[] = false;
-        $partition = $this->collection->partition(function($k, $e) { return $e == true; });
-        $this->assertEquals($partition[0][0], true);
-        $this->assertEquals($partition[1][0], false);
-    }
-
-    public function testClear()
-    {
-        $this->collection[] = 'one';
-        $this->collection[] = 'two';
-        $this->collection->clear();
-        $this->assertEquals($this->collection->isEmpty(), true);
-    }
-
-    public function testRemove()
-    {
-        $this->collection[] = 'one';
-        $this->collection[] = 'two';
-        $el = $this->collection->remove(0);
-
-        $this->assertEquals('one', $el);
-        $this->assertEquals($this->collection->contains('one'), false);
-        $this->assertNull($this->collection->remove(0));
-    }
-
-    public function testRemoveElement()
-    {
-        $this->collection[] = 'one';
-        $this->collection[] = 'two';
-
-        $this->assertTrue($this->collection->removeElement('two'));
-        $this->assertFalse($this->collection->contains('two'));
-        $this->assertFalse($this->collection->removeElement('two'));
-    }
-
-    public function testSlice()
-    {
-        $this->collection[] = 'one';
-        $this->collection[] = 'two';
-        $this->collection[] = 'three';
-
-        $slice = $this->collection->slice(0, 1);
-        $this->assertInternalType('array', $slice);
-        $this->assertEquals(array('one'), $slice);
-
-        $slice = $this->collection->slice(1);
-        $this->assertEquals(array(1 => 'two', 2 => 'three'), $slice);
-
-        $slice = $this->collection->slice(1, 1);
-        $this->assertEquals(array(1 => 'two'), $slice);
-    }
-
-    public function fillMatchingFixture()
-    {
-        $std1 = new \stdClass();
-        $std1->foo = "bar";
-        $this->collection[] = $std1;
-
-        $std2 = new \stdClass();
-        $std2->foo = "baz";
-        $this->collection[] = $std2;
-    }
-
-    /**
-     * @group DDC-1637
-     */
-    public function testMatching()
-    {
-        $this->fillMatchingFixture();
-
-        $col = $this->collection->matching(new Criteria(Criteria::expr()->eq("foo", "bar")));
-        $this->assertInstanceOf('Doctrine\Common\Collections\Collection', $col);
-        $this->assertNotSame($col, $this->collection);
-        $this->assertEquals(1, count($col));
-    }
-
-    /**
-     * @group DDC-1637
-     */
-    public function testMatchingOrdering()
-    {
-        $this->fillMatchingFixture();
-
-        $col = $this->collection->matching(new Criteria(null, array('foo' => 'DESC')));
-
-        $this->assertInstanceOf('Doctrine\Common\Collections\Collection', $col);
-        $this->assertNotSame($col, $this->collection);
-        $this->assertEquals(2, count($col));
-        $this->assertEquals('baz', $col->first()->foo);
-        $this->assertEquals('bar', $col->last()->foo);
-    }
-
-    /**
-     * @group DDC-1637
-     */
-    public function testMatchingSlice()
-    {
-        $this->fillMatchingFixture();
-
-        $col = $this->collection->matching(new Criteria(null, null, 1, 1));
-
-        $this->assertInstanceOf('Doctrine\Common\Collections\Collection', $col);
-        $this->assertNotSame($col, $this->collection);
-        $this->assertEquals(1, count($col));
-        $this->assertEquals('baz', $col[0]->foo);
-    }
-
-    public function testCanRemoveNullValuesByKey()
-    {
-        $this->collection->add(null);
-        $this->collection->remove(0);
-        $this->assertTrue($this->collection->isEmpty());
-    }
-
-    public function testCanVerifyExistingKeysWithNullValues()
-    {
-        $this->collection->set('key', null);
-        $this->assertTrue($this->collection->containsKey('key'));
-    }
-}
diff --git a/vendor/doctrine/collections/tests/Doctrine/Tests/Common/Collections/CriteriaTest.php b/vendor/doctrine/collections/tests/Doctrine/Tests/Common/Collections/CriteriaTest.php
deleted file mode 100644
index 1ab058a..0000000
--- a/vendor/doctrine/collections/tests/Doctrine/Tests/Common/Collections/CriteriaTest.php
+++ /dev/null
@@ -1,83 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Collections;
-
-use Doctrine\Common\Collections\Criteria;
-use Doctrine\Common\Collections\Expr\Comparison;
-use Doctrine\Common\Collections\Expr\CompositeExpression;
-
-class CriteriaTest extends \PHPUnit_Framework_TestCase
-{
-    public function testCreate()
-    {
-        $criteria = Criteria::create();
-
-        $this->assertInstanceOf('Doctrine\Common\Collections\Criteria', $criteria);
-    }
-
-    public function testConstructor()
-    {
-        $expr     = new Comparison("field", "=", "value");
-        $criteria = new Criteria($expr, array("foo" => "ASC"), 10, 20);
-
-        $this->assertSame($expr, $criteria->getWhereExpression());
-        $this->assertEquals(array("foo" => "ASC"), $criteria->getOrderings());
-        $this->assertEquals(10, $criteria->getFirstResult());
-        $this->assertEquals(20, $criteria->getMaxResults());
-    }
-
-    public function testWhere()
-    {
-        $expr     = new Comparison("field", "=", "value");
-        $criteria = new Criteria();
-
-        $criteria->where($expr);
-
-        $this->assertSame($expr, $criteria->getWhereExpression());
-    }
-
-    public function testAndWhere()
-    {
-        $expr     = new Comparison("field", "=", "value");
-        $criteria = new Criteria();
-
-        $criteria->where($expr);
-        $expr = $criteria->getWhereExpression();
-        $criteria->andWhere($expr);
-
-        $where = $criteria->getWhereExpression();
-        $this->assertInstanceOf('Doctrine\Common\Collections\Expr\CompositeExpression', $where);
-
-        $this->assertEquals(CompositeExpression::TYPE_AND, $where->getType());
-        $this->assertSame(array($expr, $expr), $where->getExpressionList());
-    }
-
-    public function testOrWhere()
-    {
-        $expr     = new Comparison("field", "=", "value");
-        $criteria = new Criteria();
-
-        $criteria->where($expr);
-        $expr = $criteria->getWhereExpression();
-        $criteria->orWhere($expr);
-
-        $where = $criteria->getWhereExpression();
-        $this->assertInstanceOf('Doctrine\Common\Collections\Expr\CompositeExpression', $where);
-
-        $this->assertEquals(CompositeExpression::TYPE_OR, $where->getType());
-        $this->assertSame(array($expr, $expr), $where->getExpressionList());
-    }
-
-    public function testOrderings()
-    {
-        $criteria = Criteria::create()
-            ->orderBy(array("foo" => "ASC"));
-
-        $this->assertEquals(array("foo" => "ASC"), $criteria->getOrderings());
-    }
-
-    public function testExpr()
-    {
-        $this->assertInstanceOf('Doctrine\Common\Collections\ExpressionBuilder', Criteria::expr());
-    }
-}
diff --git a/vendor/doctrine/collections/tests/Doctrine/Tests/Common/Collections/ExpressionBuilderTest.php b/vendor/doctrine/collections/tests/Doctrine/Tests/Common/Collections/ExpressionBuilderTest.php
deleted file mode 100644
index 5f6b4ce..0000000
--- a/vendor/doctrine/collections/tests/Doctrine/Tests/Common/Collections/ExpressionBuilderTest.php
+++ /dev/null
@@ -1,125 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Collections;
-
-use Doctrine\Common\Collections\ExpressionBuilder;
-use Doctrine\Common\Collections\Expr\Comparison;
-use Doctrine\Common\Collections\Expr\CompositeExpression;
-
-/**
- * @group DDC-1637
- */
-class ExpressionBuilderTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @var ExpressionBuilder
-     */
-    private $builder;
-
-    protected function setUp()
-    {
-        $this->builder = new ExpressionBuilder();
-    }
-
-    public function testAndX()
-    {
-        $expr = $this->builder->andX($this->builder->eq("a", "b"));
-
-        $this->assertInstanceOf('Doctrine\Common\Collections\Expr\CompositeExpression', $expr);
-        $this->assertEquals(CompositeExpression::TYPE_AND, $expr->getType());
-    }
-
-    public function testOrX()
-    {
-        $expr = $this->builder->orX($this->builder->eq("a", "b"));
-
-        $this->assertInstanceOf('Doctrine\Common\Collections\Expr\CompositeExpression', $expr);
-        $this->assertEquals(CompositeExpression::TYPE_OR, $expr->getType());
-    }
-
-    public function testInvalidAndXArgument()
-    {
-        $this->setExpectedException("RuntimeException");
-        $this->builder->andX("foo");
-    }
-
-    public function testEq()
-    {
-        $expr = $this->builder->eq("a", "b");
-
-        $this->assertInstanceOf('Doctrine\Common\Collections\Expr\Comparison', $expr);
-        $this->assertEquals(Comparison::EQ, $expr->getOperator());
-    }
-
-    public function testNeq()
-    {
-        $expr = $this->builder->neq("a", "b");
-
-        $this->assertInstanceOf('Doctrine\Common\Collections\Expr\Comparison', $expr);
-        $this->assertEquals(Comparison::NEQ, $expr->getOperator());
-    }
-
-    public function testLt()
-    {
-        $expr = $this->builder->lt("a", "b");
-
-        $this->assertInstanceOf('Doctrine\Common\Collections\Expr\Comparison', $expr);
-        $this->assertEquals(Comparison::LT, $expr->getOperator());
-    }
-
-    public function testGt()
-    {
-        $expr = $this->builder->gt("a", "b");
-
-        $this->assertInstanceOf('Doctrine\Common\Collections\Expr\Comparison', $expr);
-        $this->assertEquals(Comparison::GT, $expr->getOperator());
-    }
-
-    public function testGte()
-    {
-        $expr = $this->builder->gte("a", "b");
-
-        $this->assertInstanceOf('Doctrine\Common\Collections\Expr\Comparison', $expr);
-        $this->assertEquals(Comparison::GTE, $expr->getOperator());
-    }
-
-    public function testLte()
-    {
-        $expr = $this->builder->lte("a", "b");
-
-        $this->assertInstanceOf('Doctrine\Common\Collections\Expr\Comparison', $expr);
-        $this->assertEquals(Comparison::LTE, $expr->getOperator());
-    }
-
-    public function testIn()
-    {
-        $expr = $this->builder->in("a", array("b"));
-
-        $this->assertInstanceOf('Doctrine\Common\Collections\Expr\Comparison', $expr);
-        $this->assertEquals(Comparison::IN, $expr->getOperator());
-    }
-
-    public function testNotIn()
-    {
-        $expr = $this->builder->notIn("a", array("b"));
-
-        $this->assertInstanceOf('Doctrine\Common\Collections\Expr\Comparison', $expr);
-        $this->assertEquals(Comparison::NIN, $expr->getOperator());
-    }
-
-    public function testIsNull()
-    {
-        $expr = $this->builder->isNull("a");
-
-        $this->assertInstanceOf('Doctrine\Common\Collections\Expr\Comparison', $expr);
-        $this->assertEquals(Comparison::EQ, $expr->getOperator());
-    }
-
-    public function testContains()
-    {
-        $expr = $this->builder->contains("a", "b");
-
-        $this->assertInstanceOf('Doctrine\Common\Collections\Expr\Comparison', $expr);
-        $this->assertEquals(Comparison::CONTAINS, $expr->getOperator());
-    }
-}
diff --git a/vendor/doctrine/collections/tests/Doctrine/Tests/LazyArrayCollection.php b/vendor/doctrine/collections/tests/Doctrine/Tests/LazyArrayCollection.php
deleted file mode 100644
index 56736b8..0000000
--- a/vendor/doctrine/collections/tests/Doctrine/Tests/LazyArrayCollection.php
+++ /dev/null
@@ -1,22 +0,0 @@
-<?php
-
-namespace Doctrine\Tests;
-
-use Doctrine\Common\Collections\AbstractLazyCollection;
-use Doctrine\Common\Collections\ArrayCollection;
-
-/**
- * Simple lazy collection that used an ArrayCollection as backed collection
- */
-class LazyArrayCollection extends AbstractLazyCollection
-{
-    /**
-     * Do the initialization logic
-     *
-     * @return void
-     */
-    protected function doInitialize()
-    {
-        $this->collection = new ArrayCollection(array('a', 'b', 'c'));
-    }
-}
diff --git a/vendor/doctrine/collections/tests/Doctrine/Tests/TestInit.php b/vendor/doctrine/collections/tests/Doctrine/Tests/TestInit.php
deleted file mode 100644
index 973b5fe..0000000
--- a/vendor/doctrine/collections/tests/Doctrine/Tests/TestInit.php
+++ /dev/null
@@ -1,21 +0,0 @@
-<?php
-/*
- * This file bootstraps the test environment.
- */
-namespace Doctrine\Tests;
-
-error_reporting(E_ALL | E_STRICT);
-
-// register silently failing autoloader
-spl_autoload_register(function($class) {
-    if (0 === strpos($class, 'Doctrine\Tests\\')) {
-        $path = __DIR__.'/../../'.strtr($class, '\\', '/').'.php';
-        if (is_file($path) && is_readable($path)) {
-            require_once $path;
-
-            return true;
-        }
-    }
-});
-
-require_once __DIR__ . "/../../../vendor/autoload.php";
diff --git a/vendor/doctrine/common/tests/.gitignore b/vendor/doctrine/common/tests/.gitignore
deleted file mode 100644
index 7210405..0000000
--- a/vendor/doctrine/common/tests/.gitignore
+++ /dev/null
@@ -1,3 +0,0 @@
-Doctrine/Tests/Proxies/
-Doctrine/Tests/ORM/Proxy/generated/
-Doctrine/Tests/ORM/Tools/Export/export
diff --git a/vendor/doctrine/common/tests/Doctrine/Tests/Common/ClassLoaderTest.php b/vendor/doctrine/common/tests/Doctrine/Tests/Common/ClassLoaderTest.php
deleted file mode 100644
index 801a685..0000000
--- a/vendor/doctrine/common/tests/Doctrine/Tests/Common/ClassLoaderTest.php
+++ /dev/null
@@ -1,133 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common;
-
-use Doctrine\Common\ClassLoader;
-
-class ClassLoaderTest extends \Doctrine\Tests\DoctrineTestCase
-{
-    public function testClassLoader()
-    {
-        $classLoader = new ClassLoader('ClassLoaderTest');
-        $classLoader->setIncludePath(__DIR__);
-        $classLoader->setFileExtension('.class.php');
-        $classLoader->setNamespaceSeparator('_');
-
-        $this->assertTrue($classLoader->canLoadClass('ClassLoaderTest_ClassA'));
-        $this->assertTrue($classLoader->canLoadClass('ClassLoaderTest_ClassB'));
-        $this->assertTrue($classLoader->canLoadClass('ClassLoaderTest_ClassC'));
-        $this->assertFalse($classLoader->canLoadClass('OtherClass'));
-        $this->assertEquals($classLoader->loadClass('ClassLoaderTest_ClassA'), true);
-        $this->assertEquals($classLoader->loadClass('ClassLoaderTest_ClassB'), true);
-        $this->assertEquals($classLoader->loadClass('ClassLoaderTest_ClassC'), true);
-    }
-
-    public function testClassExists()
-    {
-        $this->assertFalse(ClassLoader::classExists('ClassLoaderTest\ClassD'));
-        $badLoader = function($className) {
-            require __DIR__ . '/ClassLoaderTest/ClassD.php';
-            return true;
-        };
-        spl_autoload_register($badLoader);
-        $this->assertTrue(ClassLoader::classExists('ClassLoaderTest\ClassD'));
-        spl_autoload_unregister($badLoader);
-    }
-
-    public function testGetClassLoader()
-    {
-        $cl = new ClassLoader('ClassLoaderTest', __DIR__);
-        $cl->register();
-        $this->assertTrue(ClassLoader::getClassLoader('ClassLoaderTest\ClassD') instanceof \Doctrine\Common\ClassLoader);
-        $this->assertNull(ClassLoader::getClassLoader('This\Class\Does\Not\Exist'));
-        $cl->unregister();
-    }
-
-    public function testClassExistsWithSilentAutoloader()
-    {
-        $test = $this;
-        $silentLoader = function ($className) use ($test) {
-            $test->assertSame('ClassLoaderTest\ClassE', $className);
-            require __DIR__ . '/ClassLoaderTest/ClassE.php';
-        };
-        $additionalLoader = function () use ($test) {
-            $test->fail('Should not call this loader, class was already loaded');
-        };
-
-        $this->assertFalse(ClassLoader::classExists('ClassLoaderTest\ClassE'));
-        spl_autoload_register($silentLoader);
-        spl_autoload_register($additionalLoader);
-        $this->assertTrue(ClassLoader::classExists('ClassLoaderTest\ClassE'));
-        spl_autoload_unregister($additionalLoader);
-        spl_autoload_unregister($silentLoader);
-    }
-
-    public function testClassExistsWhenLoaderIsProtected()
-    {
-        require_once __DIR__ . '/ClassLoaderTest/ExternalLoader.php';
-
-        // Test static call
-        \ClassLoaderTest\ExternalLoader::registerStatic();
-        $this->assertFalse(ClassLoader::classExists('ClassLoaderTest\Class\That\Does\Not\Exist'));
-        \ClassLoaderTest\ExternalLoader::unregisterStatic();
-
-        // Test object
-        $loader = new \ClassLoaderTest\ExternalLoader();
-        $loader->register();
-        $this->assertFalse(ClassLoader::classExists('ClassLoaderTest\Class\That\Does\Not\Exist'));
-        $loader->unregister();
-    }
-
-    public function testLoadNonExistingClass()
-    {
-        $classLoader = new ClassLoader('ClassLoaderTest', __DIR__);
-
-        $this->assertFalse($classLoader->loadClass('ClassLoaderTest\Non\Existing\ClassName'));
-    }
-
-    public function testLoadFileNotContainingClassClass()
-    {
-        $classLoader = new ClassLoader('ClassLoaderTest', __DIR__);
-
-        $classLoader->setFileExtension('.class.php');
-
-        $this->assertFalse($classLoader->loadClass('ClassLoaderTest\EmptyFile'));
-    }
-
-    public function testSupportsInterfaceAutoloading()
-    {
-        $classLoader = new ClassLoader();
-        $classLoader->setIncludePath(__DIR__);
-        $classLoader->setFileExtension('.class.php');
-        $classLoader->setNamespaceSeparator('_');
-
-        $this->assertTrue($classLoader->loadClass('ClassLoaderTest_InterfaceA'));
-        $this->assertTrue(interface_exists('ClassLoaderTest_InterfaceA', false));
-    }
-
-    public function testSupportsTraitAutoloading()
-    {
-        if (! function_exists('trait_exists')) {
-            $this->markTestSkipped('You need a PHP version that supports traits in order to run this test');
-        }
-
-        $classLoader = new ClassLoader();
-        $classLoader->setIncludePath(__DIR__);
-        $classLoader->setFileExtension('.class.php');
-        $classLoader->setNamespaceSeparator('_');
-
-        $this->assertTrue($classLoader->loadClass('ClassLoaderTest_TraitA'));
-        $this->assertTrue(trait_exists('ClassLoaderTest_TraitA', false));
-    }
-
-    public function testMultipleAutoloadRequestsWillProduceSameResult()
-    {
-        $classLoader = new ClassLoader();
-        $classLoader->setIncludePath(__DIR__);
-        $classLoader->setFileExtension('.class.php');
-        $classLoader->setNamespaceSeparator('_');
-
-        $this->assertTrue($classLoader->loadClass('ClassLoaderTest_ClassA'));
-        $this->assertTrue($classLoader->loadClass('ClassLoaderTest_ClassA'));
-    }
-}
diff --git a/vendor/doctrine/common/tests/Doctrine/Tests/Common/ClassLoaderTest/ClassA.class.php b/vendor/doctrine/common/tests/Doctrine/Tests/Common/ClassLoaderTest/ClassA.class.php
deleted file mode 100644
index 8554654..0000000
--- a/vendor/doctrine/common/tests/Doctrine/Tests/Common/ClassLoaderTest/ClassA.class.php
+++ /dev/null
@@ -1,6 +0,0 @@
-<?php
-
-class ClassLoaderTest_ClassA
-{
-
-}
\ No newline at end of file
diff --git a/vendor/doctrine/common/tests/Doctrine/Tests/Common/ClassLoaderTest/ClassB.class.php b/vendor/doctrine/common/tests/Doctrine/Tests/Common/ClassLoaderTest/ClassB.class.php
deleted file mode 100644
index 5afcbeb..0000000
--- a/vendor/doctrine/common/tests/Doctrine/Tests/Common/ClassLoaderTest/ClassB.class.php
+++ /dev/null
@@ -1,6 +0,0 @@
-<?php
-
-class ClassLoaderTest_ClassB
-{
-
-}
\ No newline at end of file
diff --git a/vendor/doctrine/common/tests/Doctrine/Tests/Common/ClassLoaderTest/ClassC.class.php b/vendor/doctrine/common/tests/Doctrine/Tests/Common/ClassLoaderTest/ClassC.class.php
deleted file mode 100644
index 0548118..0000000
--- a/vendor/doctrine/common/tests/Doctrine/Tests/Common/ClassLoaderTest/ClassC.class.php
+++ /dev/null
@@ -1,6 +0,0 @@
-<?php
-
-class ClassLoaderTest_ClassC
-{
-
-}
\ No newline at end of file
diff --git a/vendor/doctrine/common/tests/Doctrine/Tests/Common/ClassLoaderTest/ClassD.php b/vendor/doctrine/common/tests/Doctrine/Tests/Common/ClassLoaderTest/ClassD.php
deleted file mode 100644
index 06e4e84..0000000
--- a/vendor/doctrine/common/tests/Doctrine/Tests/Common/ClassLoaderTest/ClassD.php
+++ /dev/null
@@ -1,5 +0,0 @@
-<?php
-
-namespace ClassLoaderTest;
-
-class ClassD {}
diff --git a/vendor/doctrine/common/tests/Doctrine/Tests/Common/ClassLoaderTest/ClassE.php b/vendor/doctrine/common/tests/Doctrine/Tests/Common/ClassLoaderTest/ClassE.php
deleted file mode 100644
index f7a0811..0000000
--- a/vendor/doctrine/common/tests/Doctrine/Tests/Common/ClassLoaderTest/ClassE.php
+++ /dev/null
@@ -1,5 +0,0 @@
-<?php
-
-namespace ClassLoaderTest;
-
-class ClassE {}
diff --git a/vendor/doctrine/common/tests/Doctrine/Tests/Common/ClassLoaderTest/EmptyFile.class.php b/vendor/doctrine/common/tests/Doctrine/Tests/Common/ClassLoaderTest/EmptyFile.class.php
deleted file mode 100644
index e69de29..0000000
diff --git a/vendor/doctrine/common/tests/Doctrine/Tests/Common/ClassLoaderTest/ExternalLoader.php b/vendor/doctrine/common/tests/Doctrine/Tests/Common/ClassLoaderTest/ExternalLoader.php
deleted file mode 100644
index 782c208..0000000
--- a/vendor/doctrine/common/tests/Doctrine/Tests/Common/ClassLoaderTest/ExternalLoader.php
+++ /dev/null
@@ -1,38 +0,0 @@
-<?php
-
-namespace ClassLoaderTest;
-
-class ExternalLoader
-{
-    public static function registerStatic() {
-        spl_autoload_register(array('ClassLoaderTest\ExternalLoader', 'load1'));
-        spl_autoload_register(array('ClassLoaderTest\ExternalLoader', 'load2'));
-        spl_autoload_register('ClassLoaderTest\ExternalLoader::load3');
-    }
-
-    public static function unregisterStatic() {
-        spl_autoload_unregister(array('ClassLoaderTest\ExternalLoader', 'load1'));
-        spl_autoload_unregister(array('ClassLoaderTest\ExternalLoader', 'load2'));
-        spl_autoload_unregister('ClassLoaderTest\ExternalLoader::load3');
-    }
-
-    public static function load1() {}
-
-    protected static function load2() {}
-
-    protected static function load3() {}
-
-    public function register() {
-        spl_autoload_register(array($this, 'load4'));
-        spl_autoload_register(array($this, 'load5'));
-    }
-
-    public function unregister() {
-        spl_autoload_unregister(array($this, 'load4'));
-        spl_autoload_unregister(array($this, 'load5'));
-    }
-
-    public function load4() {}
-
-    protected function load5() {}
-}
diff --git a/vendor/doctrine/common/tests/Doctrine/Tests/Common/ClassLoaderTest/InterfaceA.class.php b/vendor/doctrine/common/tests/Doctrine/Tests/Common/ClassLoaderTest/InterfaceA.class.php
deleted file mode 100644
index 9cbbb8b..0000000
--- a/vendor/doctrine/common/tests/Doctrine/Tests/Common/ClassLoaderTest/InterfaceA.class.php
+++ /dev/null
@@ -1,5 +0,0 @@
-<?php
-
-interface ClassLoaderTest_InterfaceA
-{
-}
diff --git a/vendor/doctrine/common/tests/Doctrine/Tests/Common/ClassLoaderTest/TraitA.class.php b/vendor/doctrine/common/tests/Doctrine/Tests/Common/ClassLoaderTest/TraitA.class.php
deleted file mode 100644
index e4034ca..0000000
--- a/vendor/doctrine/common/tests/Doctrine/Tests/Common/ClassLoaderTest/TraitA.class.php
+++ /dev/null
@@ -1,5 +0,0 @@
-<?php
-
-trait ClassLoaderTest_TraitA
-{
-}
diff --git a/vendor/doctrine/common/tests/Doctrine/Tests/Common/DoctrineExceptionTest.php b/vendor/doctrine/common/tests/Doctrine/Tests/Common/DoctrineExceptionTest.php
deleted file mode 100644
index e69de29..0000000
diff --git a/vendor/doctrine/common/tests/Doctrine/Tests/Common/EventManagerTest.php b/vendor/doctrine/common/tests/Doctrine/Tests/Common/EventManagerTest.php
deleted file mode 100644
index 2b11b20..0000000
--- a/vendor/doctrine/common/tests/Doctrine/Tests/Common/EventManagerTest.php
+++ /dev/null
@@ -1,88 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common;
-
-use Doctrine\Common\EventManager;
-use Doctrine\Common\EventArgs;
-
-class EventManagerTest extends \Doctrine\Tests\DoctrineTestCase
-{
-    /* Some pseudo events */
-    const preFoo = 'preFoo';
-    const postFoo = 'postFoo';
-    const preBar = 'preBar';
-    const postBar = 'postBar';
-
-    private $_preFooInvoked = false;
-    private $_postFooInvoked = false;
-
-    private $_eventManager;
-
-    protected function setUp()
-    {
-        $this->_eventManager = new EventManager;
-        $this->_preFooInvoked = false;
-        $this->_postFooInvoked = false;
-    }
-
-    public function testInitialState()
-    {
-        $this->assertEquals(array(), $this->_eventManager->getListeners());
-        $this->assertFalse($this->_eventManager->hasListeners(self::preFoo));
-        $this->assertFalse($this->_eventManager->hasListeners(self::postFoo));
-    }
-
-    public function testAddEventListener()
-    {
-        $this->_eventManager->addEventListener(array('preFoo', 'postFoo'), $this);
-        $this->assertTrue($this->_eventManager->hasListeners(self::preFoo));
-        $this->assertTrue($this->_eventManager->hasListeners(self::postFoo));
-        $this->assertEquals(1, count($this->_eventManager->getListeners(self::preFoo)));
-        $this->assertEquals(1, count($this->_eventManager->getListeners(self::postFoo)));
-        $this->assertEquals(2, count($this->_eventManager->getListeners()));
-    }
-
-    public function testDispatchEvent()
-    {
-        $this->_eventManager->addEventListener(array('preFoo', 'postFoo'), $this);
-        $this->_eventManager->dispatchEvent(self::preFoo);
-        $this->assertTrue($this->_preFooInvoked);
-        $this->assertFalse($this->_postFooInvoked);
-    }
-
-    public function testRemoveEventListener()
-    {
-        $this->_eventManager->addEventListener(array('preBar'), $this);
-        $this->assertTrue($this->_eventManager->hasListeners(self::preBar));
-        $this->_eventManager->removeEventListener(array('preBar'), $this);
-        $this->assertFalse($this->_eventManager->hasListeners(self::preBar));
-    }
-
-    public function testAddEventSubscriber()
-    {
-        $eventSubscriber = new TestEventSubscriber();
-        $this->_eventManager->addEventSubscriber($eventSubscriber);
-        $this->assertTrue($this->_eventManager->hasListeners(self::preFoo));
-        $this->assertTrue($this->_eventManager->hasListeners(self::postFoo));
-    }
-
-    /* Listener methods */
-
-    public function preFoo(EventArgs $e)
-    {
-        $this->_preFooInvoked = true;
-    }
-
-    public function postFoo(EventArgs $e)
-    {
-        $this->_postFooInvoked = true;
-    }
-}
-
-class TestEventSubscriber implements \Doctrine\Common\EventSubscriber
-{
-    public function getSubscribedEvents()
-    {
-        return array('preFoo', 'postFoo');
-    }
-}
\ No newline at end of file
diff --git a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/ManagerRegistryTest.php b/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/ManagerRegistryTest.php
deleted file mode 100644
index 7c93290..0000000
--- a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/ManagerRegistryTest.php
+++ /dev/null
@@ -1,97 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Persistence;
-
-use Doctrine\Common\Persistence\AbstractManagerRegistry;
-use Doctrine\Tests\Common\Persistence\Mapping\TestClassMetadataFactory;
-use Doctrine\Tests\DoctrineTestCase;
-use PHPUnit_Framework_TestCase;
-
-/**
- * @groups DCOM-270
- * @uses Doctrine\Tests\Common\Persistence\TestObject
- */
-class ManagerRegistryTest extends DoctrineTestCase
-{
-    /**
-     * @var TestManagerRegistry
-     */
-    private $mr;
-
-    /**
-     * {@inheritdoc}
-     */
-    public function setUp()
-    {
-        $this->mr = new TestManagerRegistry(
-            'ORM',
-            array('default_connection'),
-            array('default_manager'),
-            'default',
-            'default',
-            'Doctrine\Common\Persistence\ObjectManagerAware'
-        );
-    }
-
-    public function testGetManagerForClass()
-    {
-        $this->mr->getManagerForClass('Doctrine\Tests\Common\Persistence\TestObject');
-    }
-
-    public function testGetManagerForInvalidClass()
-    {
-        $this->setExpectedException(
-            'ReflectionException',
-            'Class Doctrine\Tests\Common\Persistence\TestObjectInexistent does not exist'
-        );
-
-        $this->mr->getManagerForClass('prefix:TestObjectInexistent');
-    }
-
-    public function testGetManagerForAliasedClass()
-    {
-        $this->mr->getManagerForClass('prefix:TestObject');
-    }
-
-    public function testGetManagerForInvalidAliasedClass()
-    {
-        $this->setExpectedException(
-            'ReflectionException',
-            'Class Doctrine\Tests\Common\Persistence\TestObject:Foo does not exist'
-        );
-
-        $this->mr->getManagerForClass('prefix:TestObject:Foo');
-    }
-}
-
-class TestManager extends PHPUnit_Framework_TestCase
-{
-    public function getMetadataFactory()
-    {
-        $driver = $this->getMock('Doctrine\Common\Persistence\Mapping\Driver\MappingDriver');
-        $metadata = $this->getMock('Doctrine\Common\Persistence\Mapping\ClassMetadata');
-
-        return new TestClassMetadataFactory($driver, $metadata);
-    }
-}
-
-class TestManagerRegistry extends AbstractManagerRegistry
-{
-    protected function getService($name)
-    {
-        return new TestManager();
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    protected function resetService($name)
-    {
-
-    }
-
-    public function getAliasNamespace($alias)
-    {
-        return __NAMESPACE__;
-    }
-}
\ No newline at end of file
diff --git a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/AnnotationDriverTest.php b/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/AnnotationDriverTest.php
deleted file mode 100644
index ab6cc5c..0000000
--- a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/AnnotationDriverTest.php
+++ /dev/null
@@ -1,29 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Persistence\Mapping;
-
-use Doctrine\Common\Annotations\AnnotationReader;
-use Doctrine\Common\Persistence\Mapping\Driver\AnnotationDriver;
-use Doctrine\Common\Persistence\Mapping\ClassMetadata;
-
-class AnnotationDriverTest extends \PHPUnit_Framework_TestCase
-{
-    public function testGetAllClassNames()
-    {
-        $reader = new AnnotationReader();
-        $driver = new SimpleAnnotationDriver($reader, array(__DIR__ . '/_files/annotation'));
-
-        $classes = $driver->getAllClassNames();
-
-        $this->assertEquals(array('Doctrine\TestClass'), $classes);
-    }
-}
-
-class SimpleAnnotationDriver extends AnnotationDriver
-{
-    protected $entityAnnotationClasses = array('Doctrine\Entity' => true);
-
-    public function loadMetadataForClass($className, ClassMetadata $metadata)
-    {
-    }
-}
diff --git a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/ChainDriverTest.php b/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/ChainDriverTest.php
deleted file mode 100644
index f9edd10..0000000
--- a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/ChainDriverTest.php
+++ /dev/null
@@ -1,152 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Persistence\Mapping;
-
-use Doctrine\Common\Persistence\Mapping\Driver\MappingDriverChain;
-use Doctrine\Tests\DoctrineTestCase;
-
-class DriverChainTest extends DoctrineTestCase
-{
-    public function testDelegateToMatchingNamespaceDriver()
-    {
-        $className = 'Doctrine\Tests\Common\Persistence\Mapping\DriverChainEntity';
-        $classMetadata = $this->getMock('Doctrine\Common\Persistence\Mapping\ClassMetadata');
-
-        $chain = new MappingDriverChain();
-
-        $driver1 = $this->getMock('Doctrine\Common\Persistence\Mapping\Driver\MappingDriver');
-        $driver1->expects($this->never())
-                ->method('loadMetadataForClass');
-        $driver1->expectS($this->never())
-                ->method('isTransient');
-
-        $driver2 = $this->getMock('Doctrine\Common\Persistence\Mapping\Driver\MappingDriver');
-        $driver2->expects($this->at(0))
-                ->method('loadMetadataForClass')
-                ->with($this->equalTo($className), $this->equalTo($classMetadata));
-        $driver2->expects($this->at(1))
-                ->method('isTransient')
-                ->with($this->equalTo($className))
-                ->will($this->returnValue( true ));
-
-        $chain->addDriver($driver1, 'Doctrine\Tests\Models\Company');
-        $chain->addDriver($driver2, 'Doctrine\Tests\Common\Persistence\Mapping');
-
-        $chain->loadMetadataForClass($className, $classMetadata);
-
-        $this->assertTrue( $chain->isTransient($className) );
-    }
-
-    public function testLoadMetadata_NoDelegatorFound_ThrowsMappingException()
-    {
-        $className = 'Doctrine\Tests\Common\Persistence\Mapping\DriverChainEntity';
-        $classMetadata = $this->getMock('Doctrine\Common\Persistence\Mapping\ClassMetadata');
-
-        $chain = new MappingDriverChain();
-
-        $this->setExpectedException('Doctrine\Common\Persistence\Mapping\MappingException');
-        $chain->loadMetadataForClass($className, $classMetadata);
-    }
-
-    public function testGatherAllClassNames()
-    {
-        $className = 'Doctrine\Tests\Common\Persistence\Mapping\DriverChainEntity';
-        $classMetadata = $this->getMock('Doctrine\Common\Persistence\ClassMetadata');
-
-        $chain = new MappingDriverChain();
-
-        $driver1 = $this->getMock('Doctrine\Common\Persistence\Mapping\Driver\MappingDriver');
-        $driver1->expects($this->once())
-                ->method('getAllClassNames')
-                ->will($this->returnValue(array('Doctrine\Tests\Models\Company\Foo')));
-
-        $driver2 = $this->getMock('Doctrine\Common\Persistence\Mapping\Driver\MappingDriver');
-        $driver2->expects($this->once())
-                ->method('getAllClassNames')
-                ->will($this->returnValue(array('Doctrine\Tests\ORM\Mapping\Bar', 'Doctrine\Tests\ORM\Mapping\Baz', 'FooBarBaz')));
-
-        $chain->addDriver($driver1, 'Doctrine\Tests\Models\Company');
-        $chain->addDriver($driver2, 'Doctrine\Tests\ORM\Mapping');
-
-        $this->assertEquals(array(
-            'Doctrine\Tests\Models\Company\Foo',
-            'Doctrine\Tests\ORM\Mapping\Bar',
-            'Doctrine\Tests\ORM\Mapping\Baz'
-        ), $chain->getAllClassNames());
-    }
-
-    /**
-     * @group DDC-706
-     */
-    public function testIsTransient()
-    {
-        $driver1 = $this->getMock('Doctrine\Common\Persistence\Mapping\Driver\MappingDriver');
-        $chain = new MappingDriverChain();
-        $chain->addDriver($driver1, 'Doctrine\Tests\Models\CMS');
-
-        $this->assertTrue($chain->isTransient('stdClass'), "stdClass isTransient");
-    }
-
-    /**
-     * @group DDC-1412
-     */
-    public function testDefaultDriver()
-    {
-        $companyDriver      = $this->getMock('Doctrine\Common\Persistence\Mapping\Driver\MappingDriver');
-        $defaultDriver      = $this->getMock('Doctrine\Common\Persistence\Mapping\Driver\MappingDriver');
-        $entityClassName    = 'Doctrine\Tests\ORM\Mapping\DriverChainEntity';
-        $managerClassName   = 'Doctrine\Tests\Models\Company\CompanyManager';
-        $chain              = new MappingDriverChain();
-
-        $companyDriver->expects($this->never())
-            ->method('loadMetadataForClass');
-        $companyDriver->expects($this->once())
-            ->method('isTransient')
-            ->with($this->equalTo($managerClassName))
-            ->will($this->returnValue(false));
-
-        $defaultDriver->expects($this->never())
-            ->method('loadMetadataForClass');
-        $defaultDriver->expects($this->once())
-            ->method('isTransient')
-            ->with($this->equalTo($entityClassName))
-            ->will($this->returnValue(true));
-
-        $this->assertNull($chain->getDefaultDriver());
-
-        $chain->setDefaultDriver($defaultDriver);
-        $chain->addDriver($companyDriver, 'Doctrine\Tests\Models\Company');
-
-        $this->assertSame($defaultDriver, $chain->getDefaultDriver());
-
-        $this->assertTrue($chain->isTransient($entityClassName));
-        $this->assertFalse($chain->isTransient($managerClassName));
-    }
-
-    public function testDefaultDriverGetAllClassNames()
-    {
-        $companyDriver = $this->getMock('Doctrine\Common\Persistence\Mapping\Driver\MappingDriver');
-        $defaultDriver = $this->getMock('Doctrine\Common\Persistence\Mapping\Driver\MappingDriver');
-        $chain         = new MappingDriverChain();
-
-        $companyDriver->expects($this->once())
-            ->method('getAllClassNames')
-            ->will($this->returnValue(array('Doctrine\Tests\Models\Company\Foo')));
-
-        $defaultDriver->expects($this->once())
-            ->method('getAllClassNames')
-            ->will($this->returnValue(array('Other\Class')));
-
-        $chain->setDefaultDriver($defaultDriver);
-        $chain->addDriver($companyDriver, 'Doctrine\Tests\Models\Company');
-
-        $classNames = $chain->getAllClassNames();
-
-        $this->assertEquals(array('Doctrine\Tests\Models\Company\Foo', 'Other\Class'), $classNames);
-    }
-}
-
-class DriverChainEntity
-{
-
-}
diff --git a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/ClassMetadataFactoryTest.php b/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/ClassMetadataFactoryTest.php
deleted file mode 100644
index b3815de..0000000
--- a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/ClassMetadataFactoryTest.php
+++ /dev/null
@@ -1,209 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Persistence\Mapping;
-
-use Doctrine\Tests\DoctrineTestCase;
-use Doctrine\Common\Persistence\Mapping\Driver\DefaultFileLocator;
-use Doctrine\Common\Persistence\Mapping\ReflectionService;
-use Doctrine\Common\Persistence\Mapping\ClassMetadata;
-use Doctrine\Common\Persistence\Mapping\AbstractClassMetadataFactory;
-use Doctrine\Common\Cache\ArrayCache;
-
-class ClassMetadataFactoryTest extends DoctrineTestCase
-{
-    /**
-     * @var TestClassMetadataFactory
-     */
-    private $cmf;
-
-    public function setUp()
-    {
-        $driver = $this->getMock('Doctrine\Common\Persistence\Mapping\Driver\MappingDriver');
-        $metadata = $this->getMock('Doctrine\Common\Persistence\Mapping\ClassMetadata');
-        $this->cmf = new TestClassMetadataFactory($driver, $metadata);
-    }
-
-    public function testGetCacheDriver()
-    {
-        $this->assertNull($this->cmf->getCacheDriver());
-        $cache = new ArrayCache();
-        $this->cmf->setCacheDriver($cache);
-        $this->assertSame($cache, $this->cmf->getCacheDriver());
-    }
-
-    public function testGetMetadataFor()
-    {
-        $metadata = $this->cmf->getMetadataFor('stdClass');
-
-        $this->assertInstanceOf('Doctrine\Common\Persistence\Mapping\ClassMetadata', $metadata);
-        $this->assertTrue($this->cmf->hasMetadataFor('stdClass'));
-    }
-
-    public function testGetMetadataForAbsentClass()
-    {
-        $this->setExpectedException('Doctrine\Common\Persistence\Mapping\MappingException');
-        $this->cmf->getMetadataFor(__NAMESPACE__ . '\AbsentClass');
-    }
-
-    public function testGetParentMetadata()
-    {
-        $metadata = $this->cmf->getMetadataFor(__NAMESPACE__ . '\ChildEntity');
-
-        $this->assertInstanceOf('Doctrine\Common\Persistence\Mapping\ClassMetadata', $metadata);
-        $this->assertTrue($this->cmf->hasMetadataFor(__NAMESPACE__ . '\ChildEntity'));
-        $this->assertTrue($this->cmf->hasMetadataFor(__NAMESPACE__ . '\RootEntity'));
-    }
-
-    public function testGetCachedMetadata()
-    {
-        $metadata = $this->getMock('Doctrine\Common\Persistence\Mapping\ClassMetadata');
-        $cache = new ArrayCache();
-        $cache->save(__NAMESPACE__. '\ChildEntity$CLASSMETADATA', $metadata);
-
-        $this->cmf->setCacheDriver($cache);
-
-        $loadedMetadata = $this->cmf->getMetadataFor(__NAMESPACE__ . '\ChildEntity');
-        $this->assertSame($loadedMetadata, $metadata);
-    }
-
-    public function testCacheGetMetadataFor()
-    {
-        $cache = new ArrayCache();
-        $this->cmf->setCacheDriver($cache);
-
-        $loadedMetadata = $this->cmf->getMetadataFor(__NAMESPACE__ . '\ChildEntity');
-
-        $this->assertSame($loadedMetadata, $cache->fetch(__NAMESPACE__. '\ChildEntity$CLASSMETADATA'));
-    }
-
-    public function testGetAliasedMetadata()
-    {
-        $this->cmf->getMetadataFor('prefix:ChildEntity');
-
-        $this->assertTrue($this->cmf->hasMetadataFor(__NAMESPACE__ . '\ChildEntity'));
-        $this->assertTrue($this->cmf->hasMetadataFor('prefix:ChildEntity'));
-    }
-
-    /**
-     * @group DCOM-270
-     */
-    public function testGetInvalidAliasedMetadata()
-    {
-        $this->setExpectedException(
-            'Doctrine\Common\Persistence\Mapping\MappingException',
-            'Class \'Doctrine\Tests\Common\Persistence\Mapping\ChildEntity:Foo\' does not exist'
-        );
-
-        $this->cmf->getMetadataFor('prefix:ChildEntity:Foo');
-    }
-
-    /**
-     * @group DCOM-270
-     */
-    public function testClassIsTransient()
-    {
-        $this->assertTrue($this->cmf->isTransient('prefix:ChildEntity:Foo'));
-    }
-
-    public function testWillFallbackOnNotLoadedMetadata()
-    {
-        $classMetadata = $this->getMock('Doctrine\Common\Persistence\Mapping\ClassMetadata');
-
-        $this->cmf->fallbackCallback = function () use ($classMetadata) {
-            return $classMetadata;
-        };
-
-        $this->cmf->metadata = null;
-
-        $this->assertSame($classMetadata, $this->cmf->getMetadataFor('Foo'));
-    }
-
-    public function testWillFailOnFallbackFailureWithNotLoadedMetadata()
-    {
-        $this->cmf->fallbackCallback = function () {
-            return null;
-        };
-
-        $this->cmf->metadata = null;
-
-        $this->setExpectedException('Doctrine\Common\Persistence\Mapping\MappingException');
-
-        $this->cmf->getMetadataFor('Foo');
-    }
-}
-
-class TestClassMetadataFactory extends AbstractClassMetadataFactory
-{
-    public $driver;
-    public $metadata;
-
-    /** @var callable|null */
-    public $fallbackCallback;
-
-    public function __construct($driver, $metadata)
-    {
-        $this->driver = $driver;
-        $this->metadata = $metadata;
-    }
-
-    protected function doLoadMetadata($class, $parent, $rootEntityFound, array $nonSuperclassParents)
-    {
-
-    }
-
-    protected function getFqcnFromAlias($namespaceAlias, $simpleClassName)
-    {
-        return __NAMESPACE__ . '\\' . $simpleClassName;
-    }
-
-    protected function initialize()
-    {
-
-    }
-
-    protected function newClassMetadataInstance($className)
-    {
-        return $this->metadata;
-    }
-
-    protected function getDriver()
-    {
-        return $this->driver;
-    }
-    protected function wakeupReflection(ClassMetadata $class, ReflectionService $reflService)
-    {
-    }
-
-    protected function initializeReflection(ClassMetadata $class, ReflectionService $reflService)
-    {
-    }
-
-    protected function isEntity(ClassMetadata $class)
-    {
-        return true;
-    }
-
-    protected function onNotFoundMetadata($className)
-    {
-        if (! $fallback = $this->fallbackCallback) {
-            return null;
-        }
-
-        return $fallback();
-    }
-
-    public function isTransient($class)
-    {
-        return true;
-    }
-}
-
-class RootEntity
-{
-
-}
-
-class ChildEntity extends RootEntity
-{
-
-}
diff --git a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/DefaultFileLocatorTest.php b/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/DefaultFileLocatorTest.php
deleted file mode 100644
index 37072de..0000000
--- a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/DefaultFileLocatorTest.php
+++ /dev/null
@@ -1,90 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Persistence\Mapping;
-
-use Doctrine\Tests\DoctrineTestCase;
-use Doctrine\Common\Persistence\Mapping\Driver\DefaultFileLocator;
-
-class DefaultFileLocatorTest extends DoctrineTestCase
-{
-    public function testGetPaths()
-    {
-        $path = __DIR__ . "/_files";
-
-        $locator = new DefaultFileLocator(array($path));
-        $this->assertEquals(array($path), $locator->getPaths());
-
-        $locator = new DefaultFileLocator($path);
-        $this->assertEquals(array($path), $locator->getPaths());
-    }
-
-    public function testGetFileExtension()
-    {
-        $locator = new DefaultFileLocator(array(), ".yml");
-        $this->assertEquals(".yml", $locator->getFileExtension());
-        $locator->setFileExtension(".xml");
-        $this->assertEquals(".xml", $locator->getFileExtension());
-    }
-
-    public function testUniquePaths()
-    {
-        $path = __DIR__ . "/_files";
-
-        $locator = new DefaultFileLocator(array($path, $path));
-        $this->assertEquals(array($path), $locator->getPaths());
-    }
-
-    public function testFindMappingFile()
-    {
-        $path = __DIR__ . "/_files";
-
-        $locator = new DefaultFileLocator(array($path), ".yml");
-
-        $this->assertEquals(__DIR__ . '/_files' . DIRECTORY_SEPARATOR . 'stdClass.yml', $locator->findMappingFile('stdClass'));
-    }
-
-    public function testFindMappingFileNotFound()
-    {
-        $path = __DIR__ . "/_files";
-
-        $locator = new DefaultFileLocator(array($path), ".yml");
-
-        $this->setExpectedException(
-            'Doctrine\Common\Persistence\Mapping\MappingException',
-            "No mapping file found named 'stdClass2.yml' for class 'stdClass2'"
-        );
-        $locator->findMappingFile('stdClass2');
-    }
-
-    public function testGetAllClassNames()
-    {
-        $path = __DIR__ . "/_files";
-
-        $locator = new DefaultFileLocator(array($path), ".yml");
-        $classes = $locator->getAllClassNames(null);
-        sort($classes);
-
-        $this->assertEquals(array('global', 'stdClass'), $classes);
-        $this->assertEquals(array('stdClass'), $locator->getAllClassNames("global"));
-    }
-
-    public function testGetAllClassNamesNonMatchingFileExtension()
-    {
-        $path = __DIR__ . "/_files";
-
-        $locator = new DefaultFileLocator(array($path), ".xml");
-        $this->assertEquals(array(), $locator->getAllClassNames("global"));
-    }
-
-    public function testFileExists()
-    {
-        $path = __DIR__ . "/_files";
-
-        $locator = new DefaultFileLocator(array($path), ".yml");
-
-        $this->assertTrue($locator->fileExists("stdClass"));
-        $this->assertFalse($locator->fileExists("stdClass2"));
-        $this->assertTrue($locator->fileExists("global"));
-        $this->assertFalse($locator->fileExists("global2"));
-    }
-}
diff --git a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/FileDriverTest.php b/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/FileDriverTest.php
deleted file mode 100644
index 020c242..0000000
--- a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/FileDriverTest.php
+++ /dev/null
@@ -1,142 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Persistence\Mapping;
-
-use Doctrine\Tests\DoctrineTestCase;
-use Doctrine\Common\Persistence\Mapping\Driver\FileDriver;
-use Doctrine\Common\Persistence\Mapping\ClassMetadata;
-
-class FileDriverTest extends DoctrineTestCase
-{
-    public function testGlobalBasename()
-    {
-        $driver = new TestFileDriver(array());
-
-        $this->assertNull($driver->getGlobalBasename());
-
-        $driver->setGlobalBasename("global");
-        $this->assertEquals("global", $driver->getGlobalBasename());
-    }
-
-    public function testGetElementFromGlobalFile()
-    {
-        $driver = new TestFileDriver($this->newLocator());
-        $driver->setGlobalBasename("global");
-
-        $element = $driver->getElement('stdGlobal');
-
-        $this->assertEquals('stdGlobal', $element);
-    }
-
-    public function testGetElementFromFile()
-    {
-        $locator = $this->newLocator();
-        $locator->expects($this->once())
-                ->method('findMappingFile')
-                ->with($this->equalTo('stdClass'))
-                ->will($this->returnValue(__DIR__ . '/_files/stdClass.yml'));
-
-        $driver = new TestFileDriver($locator);
-
-        $this->assertEquals('stdClass', $driver->getElement('stdClass'));
-    }
-
-    public function testGetAllClassNamesGlobalBasename()
-    {
-        $driver = new TestFileDriver($this->newLocator());
-        $driver->setGlobalBasename("global");
-
-        $classNames = $driver->getAllClassNames();
-
-        $this->assertEquals(array('stdGlobal', 'stdGlobal2'), $classNames);
-    }
-
-    public function testGetAllClassNamesFromMappingFile()
-    {
-        $locator = $this->newLocator();
-        $locator->expects($this->any())
-                ->method('getAllClassNames')
-                ->with($this->equalTo(null))
-                ->will($this->returnValue(array('stdClass')));
-        $driver = new TestFileDriver($locator);
-
-        $classNames = $driver->getAllClassNames();
-
-        $this->assertEquals(array('stdClass'), $classNames);
-    }
-
-    public function testGetAllClassNamesBothSources()
-    {
-        $locator = $this->newLocator();
-        $locator->expects($this->any())
-                ->method('getAllClassNames')
-                ->with($this->equalTo('global'))
-                ->will($this->returnValue(array('stdClass')));
-        $driver = new TestFileDriver($locator);
-        $driver->setGlobalBasename("global");
-
-        $classNames = $driver->getAllClassNames();
-
-        $this->assertEquals(array('stdGlobal', 'stdGlobal2', 'stdClass'), $classNames);
-    }
-
-    public function testIsNotTransient()
-    {
-        $locator = $this->newLocator();
-        $locator->expects($this->once())
-                ->method('fileExists')
-                ->with($this->equalTo('stdClass'))
-                ->will($this->returnValue( true ));
-
-        $driver = new TestFileDriver($locator);
-        $driver->setGlobalBasename("global");
-
-        $this->assertFalse($driver->isTransient('stdClass'));
-        $this->assertFalse($driver->isTransient('stdGlobal'));
-        $this->assertFalse($driver->isTransient('stdGlobal2'));
-    }
-
-    public function testIsTransient()
-    {
-        $locator = $this->newLocator();
-        $locator->expects($this->once())
-                ->method('fileExists')
-                ->with($this->equalTo('stdClass2'))
-                ->will($this->returnValue( false ));
-
-        $driver = new TestFileDriver($locator);
-
-        $this->assertTrue($driver->isTransient('stdClass2'));
-    }
-
-    public function testNonLocatorFallback()
-    {
-        $driver = new TestFileDriver(__DIR__ . '/_files', '.yml');
-        $this->assertTrue($driver->isTransient('stdClass2'));
-        $this->assertFalse($driver->isTransient('stdClass'));
-    }
-
-    private function newLocator()
-    {
-        $locator = $this->getMock('Doctrine\Common\Persistence\Mapping\Driver\FileLocator');
-        $locator->expects($this->any())->method('getFileExtension')->will($this->returnValue('.yml'));
-        $locator->expects($this->any())->method('getPaths')->will($this->returnValue(array(__DIR__ . "/_files")));
-        return $locator;
-    }
-}
-
-class TestFileDriver extends FileDriver
-{
-    protected function loadMappingFile($file)
-    {
-        if (strpos($file, "global.yml") !== false) {
-            return array('stdGlobal' => 'stdGlobal', 'stdGlobal2' => 'stdGlobal2');
-        }
-        return array('stdClass' => 'stdClass');
-    }
-
-    public function loadMetadataForClass($className, ClassMetadata $metadata)
-    {
-
-    }
-}
\ No newline at end of file
diff --git a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/PHPDriverTest.php b/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/PHPDriverTest.php
deleted file mode 100644
index 8fc4d80..0000000
--- a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/PHPDriverTest.php
+++ /dev/null
@@ -1,18 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Persistence\Mapping;
-
-use Doctrine\Tests\DoctrineTestCase;
-use Doctrine\Common\Persistence\Mapping\Driver\PHPDriver;
-
-class PHPDriverTest extends DoctrineTestCase
-{
-    public function testLoadMetadata()
-    {
-        $metadata = $this->getMock('Doctrine\Common\Persistence\Mapping\ClassMetadata');
-        $metadata->expects($this->once())->method('getFieldNames');
-
-        $driver = new PHPDriver(array(__DIR__ . "/_files"));
-        $driver->loadMetadataForClass('TestEntity', $metadata);
-    }
-}
\ No newline at end of file
diff --git a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/RuntimeReflectionServiceTest.php b/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/RuntimeReflectionServiceTest.php
deleted file mode 100644
index 767ccd6..0000000
--- a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/RuntimeReflectionServiceTest.php
+++ /dev/null
@@ -1,84 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Tests\Common\Persistence\Mapping;
-
-use Doctrine\Common\Persistence\Mapping\RuntimeReflectionService;
-
-/**
- * @group DCOM-93
- */
-class RuntimeReflectionServiceTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @var RuntimeReflectionService
-     */
-    private $reflectionService;
-
-    public $unusedPublicProperty;
-
-    public function setUp()
-    {
-        $this->reflectionService = new RuntimeReflectionService();
-    }
-
-    public function testShortname()
-    {
-        $this->assertEquals("RuntimeReflectionServiceTest", $this->reflectionService->getClassShortName(__CLASS__));
-    }
-
-    public function testClassNamespaceName()
-    {
-        $this->assertEquals("Doctrine\Tests\Common\Persistence\Mapping", $this->reflectionService->getClassNamespace(__CLASS__));
-    }
-
-    public function testGetParentClasses()
-    {
-        $classes = $this->reflectionService->getParentClasses(__CLASS__);
-        $this->assertTrue(count($classes) >= 1, "The test class ".__CLASS__." should have at least one parent.");
-    }
-
-    public function testGetParentClassesForAbsentClass()
-    {
-        $this->setExpectedException('Doctrine\Common\Persistence\Mapping\MappingException');
-        $this->reflectionService->getParentClasses(__NAMESPACE__ . '\AbsentClass');
-    }
-
-    public function testGetReflectionClass()
-    {
-        $class = $this->reflectionService->getClass(__CLASS__);
-        $this->assertInstanceOf("ReflectionClass", $class);
-    }
-
-    public function testGetMethods()
-    {
-        $this->assertTrue($this->reflectionService->hasPublicMethod(__CLASS__, "testGetMethods"));
-        $this->assertFalse($this->reflectionService->hasPublicMethod(__CLASS__, "testGetMethods2"));
-    }
-
-    public function testGetAccessibleProperty()
-    {
-        $reflProp = $this->reflectionService->getAccessibleProperty(__CLASS__, "reflectionService");
-        $this->assertInstanceOf("ReflectionProperty", $reflProp);
-
-        $reflProp = $this->reflectionService->getAccessibleProperty(__CLASS__, "unusedPublicProperty");
-        $this->assertInstanceOf("Doctrine\Common\Reflection\RuntimePublicReflectionProperty", $reflProp);
-    }
-}
-
diff --git a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/StaticPHPDriverTest.php b/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/StaticPHPDriverTest.php
deleted file mode 100644
index 9f1c568..0000000
--- a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/StaticPHPDriverTest.php
+++ /dev/null
@@ -1,35 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Persistence\Mapping;
-
-use Doctrine\Tests\DoctrineTestCase;
-use Doctrine\Common\Persistence\Mapping\Driver\StaticPHPDriver;
-
-class StaticPHPDriverTest extends DoctrineTestCase
-{
-    public function testLoadMetadata()
-    {
-        $metadata = $this->getMock('Doctrine\Common\Persistence\Mapping\ClassMetadata');
-        $metadata->expects($this->once())->method('getFieldNames');
-
-        $driver = new StaticPHPDriver(array(__DIR__));
-        $driver->loadMetadataForClass(__NAMESPACE__ . '\\TestEntity', $metadata);
-    }
-
-    public function testGetAllClassNames()
-    {
-        $driver = new StaticPHPDriver(array(__DIR__));
-        $classNames = $driver->getAllClassNames();
-
-        $this->assertContains(
-            'Doctrine\Tests\Common\Persistence\Mapping\TestEntity', $classNames);
-    }
-}
-
-class TestEntity
-{
-    static public function loadMetadata($metadata)
-    {
-        $metadata->getFieldNames();
-    }
-}
\ No newline at end of file
diff --git a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/StaticReflectionServiceTest.php b/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/StaticReflectionServiceTest.php
deleted file mode 100644
index 9054b6c..0000000
--- a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/StaticReflectionServiceTest.php
+++ /dev/null
@@ -1,70 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Tests\Common\Persistence\Mapping;
-
-use Doctrine\Common\Persistence\Mapping\StaticReflectionService;
-
-/**
- * @group DCOM-93
- */
-class StaticReflectionServiceTest extends \PHPUnit_Framework_TestCase
-{
-    private $reflectionService;
-
-    public function setUp()
-    {
-        $this->reflectionService = new StaticReflectionService();
-    }
-
-    public function testShortname()
-    {
-        $this->assertEquals("StaticReflectionServiceTest", $this->reflectionService->getClassShortName(__CLASS__));
-    }
-
-    public function testClassNamespaceName()
-    {
-        $this->assertEquals("Doctrine\Tests\Common\Persistence\Mapping", $this->reflectionService->getClassNamespace(__CLASS__));
-    }
-
-    public function testGetParentClasses()
-    {
-        $classes = $this->reflectionService->getParentClasses(__CLASS__);
-        $this->assertTrue(count($classes) == 0, "The test class ".__CLASS__." should have no parents according to static reflection.");
-    }
-
-    public function testGetReflectionClass()
-    {
-        $class = $this->reflectionService->getClass(__CLASS__);
-        $this->assertNull($class);
-    }
-
-    public function testGetMethods()
-    {
-        $this->assertTrue($this->reflectionService->hasPublicMethod(__CLASS__, "testGetMethods"));
-        $this->assertTrue($this->reflectionService->hasPublicMethod(__CLASS__, "testGetMethods2"));
-    }
-
-    public function testGetAccessibleProperty()
-    {
-        $reflProp = $this->reflectionService->getAccessibleProperty(__CLASS__, "reflectionService");
-        $this->assertNull($reflProp);
-    }
-}
-
diff --git a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/SymfonyFileLocatorTest.php b/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/SymfonyFileLocatorTest.php
deleted file mode 100644
index e79b8f4..0000000
--- a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/SymfonyFileLocatorTest.php
+++ /dev/null
@@ -1,173 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Persistence\Mapping;
-
-use Doctrine\Tests\DoctrineTestCase;
-use Doctrine\Common\Persistence\Mapping\Driver\SymfonyFileLocator;
-
-class SymfonyFileLocatorTest extends DoctrineTestCase
-{
-    public function testGetPaths()
-    {
-        $path = __DIR__ . "/_files";
-        $prefix = "Foo";
-
-        $locator = new SymfonyFileLocator(array($path => $prefix));
-        $this->assertEquals(array($path), $locator->getPaths());
-
-        $locator = new SymfonyFileLocator(array($path => $prefix));
-        $this->assertEquals(array($path), $locator->getPaths());
-    }
-
-    public function testGetPrefixes()
-    {
-        $path = __DIR__ . "/_files";
-        $prefix = "Foo";
-
-        $locator = new SymfonyFileLocator(array($path => $prefix));
-        $this->assertEquals(array($path => $prefix), $locator->getNamespacePrefixes());
-    }
-
-    public function testGetFileExtension()
-    {
-        $locator = new SymfonyFileLocator(array(), ".yml");
-        $this->assertEquals(".yml", $locator->getFileExtension());
-        $locator->setFileExtension(".xml");
-        $this->assertEquals(".xml", $locator->getFileExtension());
-    }
-
-    public function testFileExists()
-    {
-        $path = __DIR__ . "/_files";
-        $prefix = "Foo";
-
-        $locator = new SymfonyFileLocator(array($path => $prefix), ".yml");
-
-        $this->assertTrue($locator->fileExists("Foo\stdClass"));
-        $this->assertTrue($locator->fileExists("Foo\global"));
-        $this->assertFalse($locator->fileExists("Foo\stdClass2"));
-        $this->assertFalse($locator->fileExists("Foo\global2"));
-    }
-
-    public function testGetAllClassNames()
-    {
-        $path = __DIR__ . "/_files";
-        $prefix = "Foo";
-
-        $locator = new SymfonyFileLocator(array($path => $prefix), ".yml");
-        $classes = $locator->getAllClassNames(null);
-        sort($classes);
-
-        $this->assertEquals(array("Foo\\global", "Foo\\stdClass"), $classes);
-        $this->assertEquals(array("Foo\\stdClass"), $locator->getAllClassNames("global"));
-    }
-
-    /**
-     * @expectedException \InvalidArgumentException
-     * @expectedExceptionMessage Namespace separator should not be empty
-     */
-    public function testInvalidCustomNamespaceSeparator()
-    {
-        $path = __DIR__ . "/_files";
-        $prefix = "Foo";
-
-        new SymfonyFileLocator(array($path => $prefix), ".yml", null);
-    }
-
-    public function customNamespaceSeparatorProvider()
-    {
-        return array(
-            'directory separator' => array(DIRECTORY_SEPARATOR, "/_custom_ns/dir"),
-            'default dot separator' => array('.', "/_custom_ns/dot"),
-        );
-    }
-
-    /**
-     * @dataProvider customNamespaceSeparatorProvider
-     *
-     * @param $separator string Directory separator to test against
-     * @param $dir       string Path to load mapping data from
-     *
-     * @throws \Doctrine\Common\Persistence\Mapping\MappingException
-     */
-    public function testGetClassNamesWithCustomNsSeparator($separator, $dir)
-    {
-        $path = __DIR__ . $dir;
-        $prefix = "Foo";
-
-        $locator = new SymfonyFileLocator(array($path => $prefix), ".yml", $separator);
-        $classes = $locator->getAllClassNames(null);
-        sort($classes);
-
-        $this->assertEquals(array("Foo\\stdClass", "Foo\\sub\\subClass", "Foo\\sub\\subsub\\subSubClass"), $classes);
-    }
-
-    public function customNamespaceLookupQueryProvider()
-    {
-        return array(
-            'directory separator'  => array(
-                DIRECTORY_SEPARATOR,
-                "/_custom_ns/dir",
-                array(
-                    "stdClass.yml"               => "Foo\\stdClass",
-                    "sub/subClass.yml"           => "Foo\\sub\\subClass",
-                    "sub/subsub/subSubClass.yml" => "Foo\\sub\\subsub\\subSubClass",
-                )
-            ),
-            'default dot separator' => array(
-                '.',
-                "/_custom_ns/dot",
-                array(
-                    "stdClass.yml"               => "Foo\\stdClass",
-                    "sub.subClass.yml"           => "Foo\\sub\\subClass",
-                    "sub.subsub.subSubClass.yml" => "Foo\\sub\\subsub\\subSubClass",
-                )
-            ),
-        );
-    }
-
-    /** @dataProvider customNamespaceLookupQueryProvider
-     * @param $separator string Directory separator to test against
-     * @param $dir       string Path to load mapping data from
-     * @param $files     array  Files to lookup classnames
-     *
-     * @throws \Doctrine\Common\Persistence\Mapping\MappingException
-     */
-    public function testFindMappingFileWithCustomNsSeparator($separator, $dir, $files)
-    {
-        $path   = __DIR__ . $dir;
-        $prefix = "Foo";
-
-        $locator = new SymfonyFileLocator(array($path => $prefix), ".yml", $separator);
-
-        foreach ($files as $filePath => $className) {
-            $this->assertEquals(realpath($path .'/'. $filePath), realpath($locator->findMappingFile($className)));
-        }
-
-    }
-
-
-    public function testFindMappingFile()
-    {
-        $path = __DIR__ . "/_files";
-        $prefix = "Foo";
-
-        $locator = new SymfonyFileLocator(array($path => $prefix), ".yml");
-
-        $this->assertEquals(__DIR__ . "/_files/stdClass.yml", $locator->findMappingFile("Foo\\stdClass"));
-    }
-
-    public function testFindMappingFileNotFound()
-    {
-        $path = __DIR__ . "/_files";
-        $prefix = "Foo";
-
-        $locator = new SymfonyFileLocator(array($path => $prefix), ".yml");
-
-        $this->setExpectedException(
-            "Doctrine\Common\Persistence\Mapping\MappingException",
-            "No mapping file found named '".__DIR__."/_files/stdClass2.yml' for class 'Foo\stdClass2'."
-        );
-        $locator->findMappingFile("Foo\\stdClass2");
-    }
-}
diff --git a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/_custom_ns/dir/stdClass.yml b/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/_custom_ns/dir/stdClass.yml
deleted file mode 100644
index 9daeafb..0000000
--- a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/_custom_ns/dir/stdClass.yml
+++ /dev/null
@@ -1 +0,0 @@
-test
diff --git a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/_custom_ns/dir/sub/subClass.yml b/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/_custom_ns/dir/sub/subClass.yml
deleted file mode 100644
index 9daeafb..0000000
--- a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/_custom_ns/dir/sub/subClass.yml
+++ /dev/null
@@ -1 +0,0 @@
-test
diff --git a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/_custom_ns/dir/sub/subsub/subSubClass.yml b/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/_custom_ns/dir/sub/subsub/subSubClass.yml
deleted file mode 100644
index 9daeafb..0000000
--- a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/_custom_ns/dir/sub/subsub/subSubClass.yml
+++ /dev/null
@@ -1 +0,0 @@
-test
diff --git a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/_custom_ns/dot/stdClass.yml b/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/_custom_ns/dot/stdClass.yml
deleted file mode 100644
index 9daeafb..0000000
--- a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/_custom_ns/dot/stdClass.yml
+++ /dev/null
@@ -1 +0,0 @@
-test
diff --git a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/_custom_ns/dot/sub.subClass.yml b/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/_custom_ns/dot/sub.subClass.yml
deleted file mode 100644
index 9daeafb..0000000
--- a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/_custom_ns/dot/sub.subClass.yml
+++ /dev/null
@@ -1 +0,0 @@
-test
diff --git a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/_custom_ns/dot/sub.subsub.subSubClass.yml b/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/_custom_ns/dot/sub.subsub.subSubClass.yml
deleted file mode 100644
index 9daeafb..0000000
--- a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/_custom_ns/dot/sub.subsub.subSubClass.yml
+++ /dev/null
@@ -1 +0,0 @@
-test
diff --git a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/_files/TestEntity.php b/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/_files/TestEntity.php
deleted file mode 100644
index d0e9976..0000000
--- a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/_files/TestEntity.php
+++ /dev/null
@@ -1,3 +0,0 @@
-<?php
-
-$metadata->getFieldNames();
\ No newline at end of file
diff --git a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/_files/annotation/TestClass.php b/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/_files/annotation/TestClass.php
deleted file mode 100644
index ff03568..0000000
--- a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/_files/annotation/TestClass.php
+++ /dev/null
@@ -1,17 +0,0 @@
-<?php
-
-namespace Doctrine;
-
-/**
- * @Doctrine\Entity
- */
-class TestClass
-{
-}
-
-/**
- * @Annotation
- */
-class Entity
-{
-}
diff --git a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/_files/global.yml b/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/_files/global.yml
deleted file mode 100644
index 30d74d2..0000000
--- a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/_files/global.yml
+++ /dev/null
@@ -1 +0,0 @@
-test
\ No newline at end of file
diff --git a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/_files/stdClass.yml b/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/_files/stdClass.yml
deleted file mode 100644
index 30d74d2..0000000
--- a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/_files/stdClass.yml
+++ /dev/null
@@ -1 +0,0 @@
-test
\ No newline at end of file
diff --git a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/ObjectManagerDecoratorTest.php b/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/ObjectManagerDecoratorTest.php
deleted file mode 100644
index 768b4d3..0000000
--- a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/ObjectManagerDecoratorTest.php
+++ /dev/null
@@ -1,60 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Persistence;
-
-use Doctrine\Common\Persistence\ObjectManagerDecorator;
-use Doctrine\Common\Persistence\ObjectManager;
-
-class NullObjectManagerDecorator extends ObjectManagerDecorator
-{
-    public function __construct(ObjectManager $wrapped)
-    {
-        $this->wrapped = $wrapped;
-    }
-}
-
-class ObjectManagerDecoratorTest extends \PHPUnit_Framework_TestCase
-{
-    private $wrapped;
-    private $decorated;
-
-    public function setUp()
-    {
-        $this->wrapped = $this->getMock('Doctrine\Common\Persistence\ObjectManager');
-        $this->decorated = new NullObjectManagerDecorator($this->wrapped);
-    }
-
-    public function getMethodParameters()
-    {
-        $class = new \ReflectionClass('Doctrine\Common\Persistence\ObjectManager');
-
-        $methods = array();
-        foreach ($class->getMethods() as $method) {
-            if ($method->getNumberOfRequiredParameters() === 0) {
-               $methods[] = array($method->getName(), array());
-            } elseif ($method->getNumberOfRequiredParameters() > 0) {
-                $methods[] = array($method->getName(), array_fill(0, $method->getNumberOfRequiredParameters(), 'req') ?: array());
-            }
-            if ($method->getNumberOfParameters() != $method->getNumberOfRequiredParameters()) {
-                $methods[] = array($method->getName(), array_fill(0, $method->getNumberOfParameters(), 'all') ?: array());
-            }
-        }
-
-        return $methods;
-    }
-
-    /**
-     * @dataProvider getMethodParameters
-     */
-    public function testAllMethodCallsAreDelegatedToTheWrappedInstance($method, array $parameters)
-    {
-        $stub = $this->wrapped
-            ->expects($this->once())
-            ->method($method)
-            ->will($this->returnValue('INNER VALUE FROM ' . $method));
-
-        call_user_func_array(array($stub, 'with'), $parameters);
-
-        $this->assertSame('INNER VALUE FROM ' . $method, call_user_func_array(array($this->decorated, $method), $parameters));
-    }
-}
\ No newline at end of file
diff --git a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/PersistentObjectTest.php b/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/PersistentObjectTest.php
deleted file mode 100644
index 180d0f0..0000000
--- a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/PersistentObjectTest.php
+++ /dev/null
@@ -1,247 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Persistence;
-
-use Doctrine\Common\Persistence\PersistentObject;
-use Doctrine\Common\Persistence\Mapping\ClassMetadata;
-use Doctrine\Common\Persistence\Mapping\ReflectionService;
-
-/**
- * @group DDC-1448
- */
-class PersistentObjectTest extends \Doctrine\Tests\DoctrineTestCase
-{
-    private $cm;
-    private $om;
-    private $object;
-
-    public function setUp()
-    {
-        $this->cm = new TestObjectMetadata;
-        $this->om = $this->getMock('Doctrine\Common\Persistence\ObjectManager');
-        $this->om->expects($this->any())->method('getClassMetadata')
-                 ->will($this->returnValue($this->cm));
-        $this->object = new TestObject;
-        PersistentObject::setObjectManager($this->om);
-        $this->object->injectObjectManager($this->om, $this->cm);
-    }
-
-    public function testGetObjectManager()
-    {
-        $this->assertSame($this->om, PersistentObject::getObjectManager());
-    }
-
-    public function testNonMatchingObjectManager()
-    {
-        $this->setExpectedException('RuntimeException');
-        $om = $this->getMock('Doctrine\Common\Persistence\ObjectManager');
-        $this->object->injectObjectManager($om, $this->cm);
-    }
-
-    public function testGetField()
-    {
-        $this->assertEquals('beberlei', $this->object->getName());
-    }
-
-    public function testSetField()
-    {
-        $this->object->setName("test");
-        $this->assertEquals("test", $this->object->getName());
-    }
-
-    public function testGetIdentifier()
-    {
-        $this->assertEquals(1, $this->object->getId());
-    }
-
-    public function testSetIdentifier()
-    {
-        $this->setExpectedException('BadMethodCallException');
-        $this->object->setId(2);
-    }
-
-    public function testSetUnknownField()
-    {
-        $this->setExpectedException('BadMethodCallException');
-        $this->object->setUnknown("test");
-    }
-
-    public function testGetUnknownField()
-    {
-        $this->setExpectedException('BadMethodCallException');
-        $this->object->getUnknown();
-    }
-
-    public function testGetToOneAssociation()
-    {
-        $this->assertNull($this->object->getParent());
-    }
-
-    public function testSetToOneAssociation()
-    {
-        $parent = new TestObject();
-        $this->object->setParent($parent);
-        $this->assertSame($parent, $this->object->getParent($parent));
-    }
-
-    public function testSetInvalidToOneAssociation()
-    {
-        $parent = new \stdClass();
-
-        $this->setExpectedException('InvalidArgumentException');
-        $this->object->setParent($parent);
-    }
-
-    public function testSetToOneAssociationNull()
-    {
-        $parent = new TestObject();
-        $this->object->setParent($parent);
-        $this->object->setParent(null);
-        $this->assertNull($this->object->getParent());
-    }
-
-    public function testAddToManyAssociation()
-    {
-        $child = new TestObject();
-        $this->object->addChildren($child);
-
-        $this->assertSame($this->object, $child->getParent());
-        $this->assertEquals(1, count($this->object->getChildren()));
-
-        $child = new TestObject();
-        $this->object->addChildren($child);
-
-        $this->assertEquals(2, count($this->object->getChildren()));
-    }
-
-    public function testAddInvalidToManyAssociation()
-    {
-        $this->setExpectedException('InvalidArgumentException');
-        $this->object->addChildren(new \stdClass());
-    }
-
-    public function testNoObjectManagerSet()
-    {
-        PersistentObject::setObjectManager(null);
-        $child = new TestObject();
-
-        $this->setExpectedException('RuntimeException');
-        $child->setName("test");
-    }
-
-    public function testInvalidMethod()
-    {
-        $this->setExpectedException('BadMethodCallException');
-        $this->object->asdf();
-    }
-
-    public function testAddInvalidCollection()
-    {
-        $this->setExpectedException('BadMethodCallException');
-        $this->object->addAsdf(new \stdClass());
-    }
-}
-
-class TestObject extends PersistentObject
-{
-    protected $id = 1;
-    protected $name = 'beberlei';
-    protected $parent;
-    protected $children;
-}
-
-class TestObjectMetadata implements ClassMetadata
-{
-
-    public function getAssociationMappedByTargetField($assocName)
-    {
-        $assoc = array('children' => 'parent');
-        return $assoc[$assocName];
-    }
-
-    public function getAssociationNames()
-    {
-        return array('parent', 'children');
-    }
-
-    public function getAssociationTargetClass($assocName)
-    {
-        return __NAMESPACE__ . '\TestObject';
-    }
-
-    public function getFieldNames()
-    {
-        return array('id', 'name');
-    }
-
-    public function getIdentifier()
-    {
-        return array('id');
-    }
-
-    public function getName()
-    {
-        return __NAMESPACE__ . '\TestObject';
-    }
-
-    public function getReflectionClass()
-    {
-        return new \ReflectionClass($this->getName());
-    }
-
-    public function getTypeOfField($fieldName)
-    {
-        $types = array('id' => 'integer', 'name' => 'string');
-        return $types[$fieldName];
-    }
-
-    public function hasAssociation($fieldName)
-    {
-        return in_array($fieldName, array('parent', 'children'));
-    }
-
-    public function hasField($fieldName)
-    {
-        return in_array($fieldName, array('id', 'name'));
-    }
-
-    public function isAssociationInverseSide($assocName)
-    {
-        return ($assocName === 'children');
-    }
-
-    public function isCollectionValuedAssociation($fieldName)
-    {
-        return ($fieldName === 'children');
-    }
-
-    public function isIdentifier($fieldName)
-    {
-        return $fieldName === 'id';
-    }
-
-    public function isSingleValuedAssociation($fieldName)
-    {
-        return $fieldName === 'parent';
-    }
-
-    public function getIdentifierValues($entity)
-    {
-
-    }
-
-    public function getIdentifierFieldNames()
-    {
-
-    }
-
-    public function initializeReflection(ReflectionService $reflService)
-    {
-
-    }
-
-    public function wakeupReflection(ReflectionService $reflService)
-    {
-
-    }
-}
diff --git a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/AbstractProxyFactoryTest.php b/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/AbstractProxyFactoryTest.php
deleted file mode 100644
index 6ae9316..0000000
--- a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/AbstractProxyFactoryTest.php
+++ /dev/null
@@ -1,146 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Proxy;
-
-use Doctrine\Tests\DoctrineTestCase;
-use Doctrine\Common\Proxy\ProxyDefinition;
-
-class AbstractProxyFactoryTest extends DoctrineTestCase
-{
-    public function testGenerateProxyClasses()
-    {
-        $metadata       = $this->getMock('Doctrine\Common\Persistence\Mapping\ClassMetadata');
-        $proxyGenerator = $this->getMock('Doctrine\Common\Proxy\ProxyGenerator', array(), array(), '', false);
-
-        $proxyGenerator
-            ->expects($this->once())
-            ->method('getProxyFileName');
-        $proxyGenerator
-            ->expects($this->once())
-            ->method('generateProxyClass');
-
-        $metadataFactory = $this->getMock('Doctrine\Common\Persistence\Mapping\ClassMetadataFactory');
-        $proxyFactory    = $this->getMockForAbstractClass(
-            'Doctrine\Common\Proxy\AbstractProxyFactory',
-            array($proxyGenerator, $metadataFactory, true)
-        );
-
-        $proxyFactory
-            ->expects($this->any())
-            ->method('skipClass')
-            ->will($this->returnValue(false));
-
-        $generated = $proxyFactory->generateProxyClasses(array($metadata), sys_get_temp_dir());
-
-        $this->assertEquals(1, $generated, 'One proxy was generated');
-    }
-
-    public function testGetProxy()
-    {
-        $metadata        = $this->getMock('Doctrine\Common\Persistence\Mapping\ClassMetadata');
-        $proxy           = $this->getMock('Doctrine\Common\Proxy\Proxy');
-        $definition      = new ProxyDefinition(get_class($proxy), array(), array(), null, null);
-        $proxyGenerator  = $this->getMock('Doctrine\Common\Proxy\ProxyGenerator', array(), array(), '', false);
-        $metadataFactory = $this->getMock('Doctrine\Common\Persistence\Mapping\ClassMetadataFactory');
-
-        $metadataFactory
-            ->expects($this->once())
-            ->method('getMetadataFor')
-            ->will($this->returnValue($metadata));
-
-        $proxyFactory = $this->getMockForAbstractClass(
-            'Doctrine\Common\Proxy\AbstractProxyFactory',
-            array($proxyGenerator, $metadataFactory, true)
-        );
-
-        $proxyFactory
-            ->expects($this->any())
-            ->method('createProxyDefinition')
-            ->will($this->returnValue($definition));
-
-        $generatedProxy = $proxyFactory->getProxy('Class', array('id' => 1));
-
-        $this->assertInstanceOf(get_class($proxy), $generatedProxy);
-    }
-
-    public function testResetUnitializedProxy()
-    {
-        $metadata        = $this->getMock('Doctrine\Common\Persistence\Mapping\ClassMetadata');
-        $proxy           = $this->getMock('Doctrine\Common\Proxy\Proxy');
-        $definition      = new ProxyDefinition(get_class($proxy), array(), array(), null, null);
-        $proxyGenerator  = $this->getMock('Doctrine\Common\Proxy\ProxyGenerator', array(), array(), '', false);
-        $metadataFactory = $this->getMock('Doctrine\Common\Persistence\Mapping\ClassMetadataFactory');
-
-        $metadataFactory
-            ->expects($this->once())
-            ->method('getMetadataFor')
-            ->will($this->returnValue($metadata));
-
-        $proxyFactory = $this->getMockForAbstractClass(
-            'Doctrine\Common\Proxy\AbstractProxyFactory',
-            array($proxyGenerator, $metadataFactory, true)
-        );
-
-        $proxyFactory
-            ->expects($this->any())
-            ->method('createProxyDefinition')
-            ->will($this->returnValue($definition));
-
-        $proxy
-            ->expects($this->once())
-            ->method('__isInitialized')
-            ->will($this->returnValue(false));
-        $proxy
-            ->expects($this->once())
-            ->method('__setInitializer');
-        $proxy
-            ->expects($this->once())
-            ->method('__setCloner');
-
-        $proxyFactory->resetUninitializedProxy($proxy);
-    }
-
-    public function testDisallowsResettingInitializedProxy()
-    {
-        $proxyFactory = $this->getMockForAbstractClass('Doctrine\Common\Proxy\AbstractProxyFactory',  array(), '', false);
-        $proxy        = $this->getMock('Doctrine\Common\Proxy\Proxy');
-
-        $proxy
-            ->expects($this->any())
-            ->method('__isInitialized')
-            ->will($this->returnValue(true));
-
-        $this->setExpectedException('Doctrine\Common\Proxy\Exception\InvalidArgumentException');
-
-        $proxyFactory->resetUninitializedProxy($proxy);
-    }
-
-    public function testMissingPrimaryKeyValue()
-    {
-        $metadata        = $this->getMock('Doctrine\Common\Persistence\Mapping\ClassMetadata');
-        $proxy           = $this->getMock('Doctrine\Common\Proxy\Proxy');
-        $definition      = new ProxyDefinition(get_class($proxy), array('missingKey'), array(), null, null);
-        $proxyGenerator  = $this->getMock('Doctrine\Common\Proxy\ProxyGenerator', array(), array(), '', false);
-        $metadataFactory = $this->getMock('Doctrine\Common\Persistence\Mapping\ClassMetadataFactory');
-
-        $metadataFactory
-            ->expects($this->once())
-            ->method('getMetadataFor')
-            ->will($this->returnValue($metadata));
-
-        $proxyFactory = $this->getMockForAbstractClass(
-            'Doctrine\Common\Proxy\AbstractProxyFactory',
-            array($proxyGenerator, $metadataFactory, true)
-        );
-
-        $proxyFactory
-            ->expects($this->any())
-            ->method('createProxyDefinition')
-            ->will($this->returnValue($definition));
-
-        $this->setExpectedException('\OutOfBoundsException');
-
-        $generatedProxy = $proxyFactory->getProxy('Class', array());
-    }
-}
-
diff --git a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/AutoloaderTest.php b/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/AutoloaderTest.php
deleted file mode 100644
index be713fc..0000000
--- a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/AutoloaderTest.php
+++ /dev/null
@@ -1,72 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Tests\Common\Proxy;
-
-use PHPUnit_Framework_TestCase;
-use Doctrine\Common\Proxy\Autoloader;
-
-/**
- * @group DDC-1698
- */
-class AutoloaderTest extends PHPUnit_Framework_TestCase
-{
-    public static function dataResolveFile()
-    {
-        return array(
-            array('/tmp', 'MyProxy', 'MyProxy\__CG__\RealClass', '/tmp' . DIRECTORY_SEPARATOR . '__CG__RealClass.php'),
-            array('/tmp', 'MyProxy\Subdir', 'MyProxy\Subdir\__CG__\RealClass', '/tmp' . DIRECTORY_SEPARATOR . '__CG__RealClass.php'),
-            array('/tmp', 'MyProxy', 'MyProxy\__CG__\Other\RealClass', '/tmp' . DIRECTORY_SEPARATOR . '__CG__OtherRealClass.php'),
-        );
-    }
-
-    /**
-     * @dataProvider dataResolveFile
-     */
-    public function testResolveFile($proxyDir, $proxyNamespace, $className, $expectedProxyFile)
-    {
-        $actualProxyFile = Autoloader::resolveFile($proxyDir, $proxyNamespace, $className);
-        $this->assertEquals($expectedProxyFile, $actualProxyFile);
-    }
-
-    public function testAutoload()
-    {
-        if (file_exists(sys_get_temp_dir() ."/AutoloaderTestClass.php")) {
-            unlink(sys_get_temp_dir() ."/AutoloaderTestClass.php");
-        }
-
-        $autoloader = Autoloader::register(sys_get_temp_dir(), 'ProxyAutoloaderTest', function($proxyDir, $proxyNamespace, $className) {
-            file_put_contents(sys_get_temp_dir() . "/AutoloaderTestClass.php", "<?php namespace ProxyAutoloaderTest; class AutoloaderTestClass {} ");
-        });
-
-        $this->assertTrue(class_exists('ProxyAutoloaderTest\AutoloaderTestClass', true));
-        unlink(sys_get_temp_dir() ."/AutoloaderTestClass.php");
-    }
-
-    public function testRegisterWithInvalidCallback()
-    {
-        $this->setExpectedException(
-            'Doctrine\Common\Proxy\Exception\InvalidArgumentException',
-            'Invalid \$notFoundCallback given: must be a callable, "stdClass" given'
-        );
-
-        Autoloader::register('', '', new \stdClass());
-    }
-}
-
diff --git a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/CallableTypeHintClass.php b/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/CallableTypeHintClass.php
deleted file mode 100644
index f5fccb0..0000000
--- a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/CallableTypeHintClass.php
+++ /dev/null
@@ -1,16 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Proxy;
-
-/**
- * Test asset class
- */
-class CallableTypeHintClass
-{
-    /**
-     * @param callable $foo
-     */
-    public function call(callable $foo)
-    {
-    }
-}
diff --git a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/InvalidTypeHintClass.php b/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/InvalidTypeHintClass.php
deleted file mode 100644
index bed55d2..0000000
--- a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/InvalidTypeHintClass.php
+++ /dev/null
@@ -1,16 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Proxy;
-
-/**
- * Test asset class
- */
-class InvalidTypeHintClass
-{
-    /**
-     * @param InvalidHint (non existing class type hint)
-     */
-    public function invalidTypeHintMethod(InvalidHint $foo)
-    {
-    }
-}
diff --git a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/LazyLoadableObject.php b/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/LazyLoadableObject.php
deleted file mode 100644
index 6a4f2d5..0000000
--- a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/LazyLoadableObject.php
+++ /dev/null
@@ -1,115 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Tests\Common\Proxy;
-
-/**
- * Test asset representing a lazy loadable object
- *
- * @author Marco Pivetta <ocramius@gmail.com>
- * @since  2.4
- */
-class LazyLoadableObject
-{
-    /**
-     * @var string
-     */
-    public $publicIdentifierField;
-
-    /**
-     * @var string
-     */
-    protected $protectedIdentifierField;
-
-    /**
-     * @var string
-     */
-    public $publicTransientField            = 'publicTransientFieldValue';
-
-    /**
-     * @var string
-     */
-    protected $protectedTransientField      = 'protectedTransientFieldValue';
-
-    /**
-     * @var string
-     */
-    public $publicPersistentField           = 'publicPersistentFieldValue';
-
-    /**
-     * @var string
-     */
-    protected $protectedPersistentField     = 'protectedPersistentFieldValue';
-
-    /**
-     * @var string
-     */
-    public $publicAssociation               = 'publicAssociationValue';
-
-    /**
-     * @var string
-     */
-    protected $protectedAssociation         = 'protectedAssociationValue';
-
-    /**
-     * @return string
-     */
-    public function getProtectedIdentifierField()
-    {
-        return $this->protectedIdentifierField;
-    }
-
-    /**
-     * @return string
-     */
-    public function testInitializationTriggeringMethod()
-    {
-        return 'testInitializationTriggeringMethod';
-    }
-
-    /**
-     * @return string
-     */
-    public function getProtectedAssociation()
-    {
-        return $this->protectedAssociation;
-    }
-
-    /**
-     * @param \stdClass $param
-     */
-    public function publicTypeHintedMethod(\stdClass $param)
-    {
-    }
-
-    /**
-     *
-     */
-    public function &byRefMethod()
-    {
-    }
-
-    /**
-     * @param mixed $thisIsNotByRef
-     * @param &mixed $thisIsByRef
-     */
-    public function byRefParamMethod($thisIsNotByRef, &$thisIsByRef)
-    {
-    }
-}
diff --git a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/LazyLoadableObjectClassMetadata.php b/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/LazyLoadableObjectClassMetadata.php
deleted file mode 100644
index 167386e..0000000
--- a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/LazyLoadableObjectClassMetadata.php
+++ /dev/null
@@ -1,195 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Tests\Common\Proxy;
-
-use ReflectionClass;
-use Doctrine\Common\Persistence\Mapping\ClassMetadata;
-
-/**
- * Class metadata test asset for @see LazyLoadableObject
- *
- * @author Marco Pivetta <ocramius@gmail.com>
- * @since  2.4
- */
-class LazyLoadableObjectClassMetadata implements ClassMetadata
-{
-    /**
-     * @var ReflectionClass
-     */
-    protected $reflectionClass;
-
-    /**
-     * @var array
-     */
-    protected $identifier = array(
-        'publicIdentifierField'    => true,
-        'protectedIdentifierField' => true,
-    );
-
-    /**
-     * @var array
-     */
-    protected $fields = array(
-        'publicIdentifierField'    => true,
-        'protectedIdentifierField' => true,
-        'publicPersistentField'    => true,
-        'protectedPersistentField' => true,
-    );
-
-    /**
-     * @var array
-     */
-    protected $associations = array(
-        'publicAssociation'        => true,
-        'protectedAssociation'     => true,
-    );
-
-    /**
-     * {@inheritDoc}
-     */
-    public function getName()
-    {
-        return $this->getReflectionClass()->getName();
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function getIdentifier()
-    {
-        return array_keys($this->identifier);
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function getReflectionClass()
-    {
-        if (null === $this->reflectionClass) {
-            $this->reflectionClass = new \ReflectionClass(__NAMESPACE__ . '\LazyLoadableObject');
-        }
-
-        return $this->reflectionClass;
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function isIdentifier($fieldName)
-    {
-        return isset($this->identifier[$fieldName]);
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function hasField($fieldName)
-    {
-        return isset($this->fields[$fieldName]);
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function hasAssociation($fieldName)
-    {
-        return isset($this->associations[$fieldName]);
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function isSingleValuedAssociation($fieldName)
-    {
-        throw new \BadMethodCallException('not implemented');
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function isCollectionValuedAssociation($fieldName)
-    {
-        throw new \BadMethodCallException('not implemented');
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function getFieldNames()
-    {
-        return array_keys($this->fields);
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function getIdentifierFieldNames()
-    {
-        return $this->getIdentifier();
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function getAssociationNames()
-    {
-        return array_keys($this->associations);
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function getTypeOfField($fieldName)
-    {
-        return 'string';
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function getAssociationTargetClass($assocName)
-    {
-        throw new \BadMethodCallException('not implemented');
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function isAssociationInverseSide($assocName)
-    {
-        throw new \BadMethodCallException('not implemented');
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function getAssociationMappedByTargetField($assocName)
-    {
-        throw new \BadMethodCallException('not implemented');
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function getIdentifierValues($object)
-    {
-        throw new \BadMethodCallException('not implemented');
-    }
-}
diff --git a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/MagicCloneClass.php b/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/MagicCloneClass.php
deleted file mode 100644
index 33b983d..0000000
--- a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/MagicCloneClass.php
+++ /dev/null
@@ -1,37 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Proxy;
-
-/**
- * Test asset class
- */
-class MagicCloneClass
-{
-    /**
-     * @var string
-     */
-    public $id = 'id';
-
-    /**
-     * @var string
-     */
-    public $publicField = 'publicField';
-
-    /**
-     * @var boolean
-     */
-    public $cloned = false;
-
-    /**
-     * @var string
-     */
-    public $clonedValue = 'defaultValue';
-
-    /**
-     * @return void
-     */
-    public function __clone()
-    {
-        $this->clonedValue = 'newClonedValue';
-    }
-}
diff --git a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/MagicGetByRefClass.php b/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/MagicGetByRefClass.php
deleted file mode 100644
index 6adf1f5..0000000
--- a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/MagicGetByRefClass.php
+++ /dev/null
@@ -1,51 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Tests\Common\Proxy;
-
-use InvalidArgumentException;
-
-/**
- * Test asset class
- *
- * @since 2.4
- */
-class MagicGetByRefClass
-{
-    /**
-     * @var mixed
-     */
-    public $valueField;
-
-    /**
-     * @param string $name
-     *
-     * @return mixed
-     *
-     * @throws \InvalidArgumentException
-     */
-    public function & __get($name)
-    {
-        if ($name === 'value') {
-            return $this->valueField;
-        }
-
-        throw new InvalidArgumentException();
-    }
-}
diff --git a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/MagicGetClass.php b/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/MagicGetClass.php
deleted file mode 100644
index 0cab36a..0000000
--- a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/MagicGetClass.php
+++ /dev/null
@@ -1,38 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Proxy;
-
-/**
- * Test asset class
- */
-class MagicGetClass
-{
-    /**
-     * @var string
-     */
-    public $id = 'id';
-
-    /**
-     * @var string
-     */
-    public $publicField = 'publicField';
-
-    /**
-     * @param $name
-     *
-     * @return string
-     * @throws \BadMethodCallException
-     */
-    public function __get($name)
-    {
-        if ($name === 'test') {
-            return 'test';
-        }
-
-        if ($name === 'publicField' || $name === 'id') {
-            throw new \BadMethodCallException('Should never be called for "publicField" or "id"');
-        }
-
-        return 'not defined';
-    }
-}
diff --git a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/MagicIssetClass.php b/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/MagicIssetClass.php
deleted file mode 100644
index cda8e21..0000000
--- a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/MagicIssetClass.php
+++ /dev/null
@@ -1,38 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Proxy;
-
-/**
- * Test asset class
- */
-class MagicIssetClass
-{
-    /**
-     * @var string
-     */
-    public $id = 'id';
-
-    /**
-     * @var string
-     */
-    public $publicField = 'publicField';
-
-    /**
-     * @param string $name
-     *
-     * @return bool
-     * @throws \BadMethodCallException
-     */
-    public function __isset($name)
-    {
-        if ('test' === $name) {
-            return true;
-        }
-
-        if ('publicField' === $name || 'id' === $name) {
-            throw new \BadMethodCallException('Should never be called for "publicField" or "id"');
-        }
-
-        return false;
-    }
-}
diff --git a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/MagicSetClass.php b/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/MagicSetClass.php
deleted file mode 100644
index fe73bc2..0000000
--- a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/MagicSetClass.php
+++ /dev/null
@@ -1,43 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Proxy;
-
-/**
- * Test asset class
- */
-class MagicSetClass
-{
-    /**
-     * @var string
-     */
-    public $id = 'id';
-
-    /**
-     * @var string
-     */
-    public $publicField = 'publicField';
-
-    /**
-     * @var string|null
-     */
-    public $testAttribute;
-
-    /**
-     * @param string $name
-     * @param mixed  $value
-     *
-     * @throws \BadMethodCallException
-     */
-    public function __set($name, $value)
-    {
-        if ($name === 'test') {
-            $this->testAttribute = $value;
-        }
-
-        if ($name === 'publicField' || $name === 'id') {
-            throw new \BadMethodCallException('Should never be called for "publicField" or "id"');
-        }
-
-        $this->testAttribute = $value;
-    }
-}
diff --git a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/MagicSleepClass.php b/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/MagicSleepClass.php
deleted file mode 100644
index 3934a05..0000000
--- a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/MagicSleepClass.php
+++ /dev/null
@@ -1,37 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Proxy;
-
-/**
- * Test asset class
- */
-class MagicSleepClass
-{
-    /**
-     * @var string
-     */
-    public $id = 'id';
-
-    /**
-     * @var string
-     */
-    public $publicField = 'publicField';
-
-    /**
-     * @var string
-     */
-    public $serializedField = 'defaultValue';
-
-    /**
-     * @var string
-     */
-    public $nonSerializedField = 'defaultValue';
-
-    /**
-     * @return array
-     */
-    public function __sleep()
-    {
-        return array('serializedField');
-    }
-}
diff --git a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/MagicWakeupClass.php b/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/MagicWakeupClass.php
deleted file mode 100644
index 3f4d1ac..0000000
--- a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/MagicWakeupClass.php
+++ /dev/null
@@ -1,32 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Proxy;
-
-/**
- * Test asset class
- */
-class MagicWakeupClass
-{
-    /**
-     * @var string
-     */
-    public $id = 'id';
-
-    /**
-     * @var string
-     */
-    public $publicField = 'publicField';
-
-    /**
-     * @var string
-     */
-    public $wakeupValue = 'defaultValue';
-
-    /**
-     * @return void
-     */
-    public function __wakeup()
-    {
-        $this->wakeupValue = 'newWakeupValue';
-    }
-}
diff --git a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/ProxyClassGeneratorTest.php b/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/ProxyClassGeneratorTest.php
deleted file mode 100644
index 5de83a1..0000000
--- a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/ProxyClassGeneratorTest.php
+++ /dev/null
@@ -1,249 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-
-namespace Doctrine\Tests\Common\Proxy;
-
-use Doctrine\Common\Proxy\ProxyGenerator;
-use ReflectionClass;
-use ReflectionMethod;
-use PHPUnit_Framework_TestCase;
-
-/**
- * Test the proxy generator. Its work is generating on-the-fly subclasses of a given model, which implement the Proxy
- * pattern.
- *
- * @author Giorgio Sironi <piccoloprincipeazzurro@gmail.com>
- * @author Marco Pivetta <ocramius@gmail.com>
- */
-class ProxyClassGeneratorTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @var string
-     */
-    protected $proxyClass = 'Doctrine\Tests\Common\ProxyProxy\__CG__\Doctrine\Tests\Common\Proxy\LazyLoadableObject';
-
-    /**
-     * @var LazyLoadableObjectClassMetadata
-     */
-    protected $metadata;
-
-    /**
-     * @var ProxyGenerator
-     */
-    protected $proxyGenerator;
-
-    /**
-     * {@inheritDoc}
-     */
-    protected function setUp()
-    {
-        $this->metadata       = new LazyLoadableObjectClassMetadata();
-        $this->proxyGenerator = new ProxyGenerator(__DIR__ . '/generated', __NAMESPACE__ . 'Proxy', true);
-
-        if (class_exists($this->proxyClass, false)) {
-            return;
-        }
-
-        $this->generateAndRequire($this->proxyGenerator, $this->metadata);
-    }
-
-    public function testReferenceProxyRespectsMethodsParametersTypeHinting()
-    {
-        $method = new ReflectionMethod($this->proxyClass, 'publicTypeHintedMethod');
-        $params = $method->getParameters();
-
-        $this->assertEquals(1, count($params));
-        $this->assertEquals('stdClass', $params[0]->getClass()->getName());
-    }
-
-    public function testProxyRespectsMethodsWhichReturnValuesByReference()
-    {
-        $method = new ReflectionMethod($this->proxyClass, 'byRefMethod');
-
-        $this->assertTrue($method->returnsReference());
-    }
-
-    public function testProxyRespectsByRefMethodParameters()
-    {
-        $method = new ReflectionMethod($this->proxyClass, 'byRefParamMethod');
-        $parameters = $method->getParameters();
-        $this->assertSame('thisIsNotByRef', $parameters[0]->getName());
-        $this->assertFalse($parameters[0]->isPassedByReference());
-        $this->assertSame('thisIsByRef', $parameters[1]->getName());
-        $this->assertTrue($parameters[1]->isPassedByReference());
-    }
-
-    public function testCreatesAssociationProxyAsSubclassOfTheOriginalOne()
-    {
-        $this->assertTrue(is_subclass_of($this->proxyClass, $this->metadata->getName()));
-    }
-
-    public function testNonNamespacedProxyGeneration()
-    {
-        $classCode = file_get_contents($this->proxyGenerator->getProxyFileName($this->metadata->getName()));
-
-        $this->assertNotContains("class LazyLoadableObject extends \\\\" . $this->metadata->getName(), $classCode);
-        $this->assertContains("class LazyLoadableObject extends \\" . $this->metadata->getName(), $classCode);
-    }
-
-    public function testClassWithSleepProxyGeneration()
-    {
-        if (!class_exists('Doctrine\Tests\Common\ProxyProxy\__CG__\SleepClass', false)) {
-            $className = 'Doctrine\Tests\Common\Proxy\SleepClass';
-            $metadata = $this->createClassMetadata($className, array('id'));
-            $proxyGenerator = new ProxyGenerator(__DIR__ . '/generated', __NAMESPACE__ . 'Proxy', true);
-
-            $this->generateAndRequire($proxyGenerator, $metadata);
-        }
-
-        $classCode = file_get_contents(__DIR__ . '/generated/__CG__DoctrineTestsCommonProxySleepClass.php');
-        $this->assertEquals(1, substr_count($classCode, 'function __sleep'));
-        $this->assertEquals(1, substr_count($classCode, 'parent::__sleep()'));
-    }
-
-    /**
-     * Check that the proxy doesn't serialize static properties (in __sleep() method)
-     * @group DCOM-212
-     */
-    public function testClassWithStaticPropertyProxyGeneration()
-    {
-        if (!class_exists('Doctrine\Tests\Common\ProxyProxy\__CG__\StaticPropertyClass', false)) {
-            $className = 'Doctrine\Tests\Common\Proxy\StaticPropertyClass';
-            $metadata = $this->createClassMetadata($className, array());
-            $proxyGenerator = new ProxyGenerator(__DIR__ . '/generated', __NAMESPACE__ . 'Proxy', true);
-
-            $this->generateAndRequire($proxyGenerator, $metadata);
-        }
-
-        $classCode = file_get_contents(__DIR__ . '/generated/__CG__DoctrineTestsCommonProxyStaticPropertyClass.php');
-        $this->assertEquals(1, substr_count($classCode, 'function __sleep'));
-        $this->assertNotContains('protectedStaticProperty', $classCode);
-    }
-
-    private function generateAndRequire($proxyGenerator, $metadata)
-    {
-        $proxyGenerator->generateProxyClass($metadata, $proxyGenerator->getProxyFileName($metadata->getName()));
-
-        require_once $proxyGenerator->getProxyFileName($metadata->getName());
-    }
-
-    public function testClassWithCallableTypeHintOnProxiedMethod()
-    {
-        if (PHP_VERSION_ID < 50400) {
-            $this->markTestSkipped('`callable` is only supported in PHP >=5.4.0');
-        }
-
-        if (!class_exists('Doctrine\Tests\Common\ProxyProxy\__CG__\CallableTypeHintClass', false)) {
-            $className = 'Doctrine\Tests\Common\Proxy\CallableTypeHintClass';
-            $metadata = $this->createClassMetadata($className, array('id'));
-
-            $proxyGenerator = new ProxyGenerator(__DIR__ . '/generated', __NAMESPACE__ . 'Proxy', true);
-            $this->generateAndRequire($proxyGenerator, $metadata);
-        }
-
-        $classCode = file_get_contents(__DIR__ . '/generated/__CG__DoctrineTestsCommonProxyCallableTypeHintClass.php');
-
-        $this->assertEquals(1, substr_count($classCode, 'call(callable $foo)'));
-    }
-
-    public function testClassWithVariadicArgumentOnProxiedMethod()
-    {
-        if (PHP_VERSION_ID < 50600) {
-            $this->markTestSkipped('`...` is only supported in PHP >=5.6.0');
-        }
-
-        if (!class_exists('Doctrine\Tests\Common\ProxyProxy\__CG__\VariadicTypeHintClass', false)) {
-            $className = 'Doctrine\Tests\Common\Proxy\VariadicTypeHintClass';
-            $metadata = $this->createClassMetadata($className, array('id'));
-
-            $proxyGenerator = new ProxyGenerator(__DIR__ . '/generated', __NAMESPACE__ . 'Proxy', true);
-            $this->generateAndRequire($proxyGenerator, $metadata);
-        }
-
-        $classCode = file_get_contents(__DIR__ . '/generated/__CG__DoctrineTestsCommonProxyVariadicTypeHintClass.php');
-
-        $this->assertEquals(1, substr_count($classCode, 'function addType(...$types)'));
-        $this->assertEquals(1, substr_count($classCode, '__invoke($this, \'addType\', array($types))'));
-        $this->assertEquals(1, substr_count($classCode, 'parent::addType(...$types)'));
-    }
-
-    public function testClassWithInvalidTypeHintOnProxiedMethod()
-    {
-        $className = 'Doctrine\Tests\Common\Proxy\InvalidTypeHintClass';
-        $metadata = $this->createClassMetadata($className, array('id'));
-        $proxyGenerator = new ProxyGenerator(__DIR__ . '/generated', __NAMESPACE__ . 'Proxy', true);
-
-        $this->setExpectedException(
-            'Doctrine\Common\Proxy\Exception\UnexpectedValueException',
-            'The type hint of parameter "foo" in method "invalidTypeHintMethod"'
-                .' in class "' . $className . '" is invalid.'
-        );
-        $proxyGenerator->generateProxyClass($metadata);
-    }
-
-    public function testNoConfigDirThrowsException()
-    {
-        $this->setExpectedException('Doctrine\Common\Proxy\Exception\InvalidArgumentException');
-        new ProxyGenerator(null, null);
-    }
-
-    public function testNoNamespaceThrowsException()
-    {
-        $this->setExpectedException('Doctrine\Common\Proxy\Exception\InvalidArgumentException');
-        new ProxyGenerator(__DIR__ . '/generated', null);
-    }
-
-    public function testInvalidPlaceholderThrowsException()
-    {
-        $this->setExpectedException('Doctrine\Common\Proxy\Exception\InvalidArgumentException');
-        $generator = new ProxyGenerator(__DIR__ . '/generated', 'SomeNamespace');
-        $generator->setPlaceholder('<somePlaceholder>', array());
-    }
-
-    public function testUseEvalIfNoFilenameIsGiven()
-    {
-        $proxyGenerator = new ProxyGenerator(__DIR__ . '/generated', __NAMESPACE__ . 'Proxy', true);
-
-        $className = __NAMESPACE__ . '\\EvalBase';
-
-        $metadata = $this->createClassMetadata($className, array('id'));
-
-        $proxyGenerator->generateProxyClass($metadata);
-
-        $reflClass = new ReflectionClass('Doctrine\Tests\Common\ProxyProxy\__CG__\Doctrine\Tests\Common\Proxy\EvalBase');
-
-        $this->assertContains("eval()'d code", $reflClass->getFileName());
-    }
-
-    private function createClassMetadata($className, array $ids)
-    {
-        $metadata = $this->getMock('Doctrine\Common\Persistence\Mapping\ClassMetadata');
-        $reflClass = new ReflectionClass($className);
-        $metadata->expects($this->any())->method('getReflectionClass')->will($this->returnValue($reflClass));
-        $metadata->expects($this->any())->method('getIdentifierFieldNames')->will($this->returnValue($ids));
-        $metadata->expects($this->any())->method('getName')->will($this->returnValue($className));
-
-        return $metadata;
-    }
-}
-
-class EvalBase
-{
-}
diff --git a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/ProxyLogicTest.php b/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/ProxyLogicTest.php
deleted file mode 100644
index c97ac79..0000000
--- a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/ProxyLogicTest.php
+++ /dev/null
@@ -1,752 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Tests\Common\Proxy;
-
-use Doctrine\Common\Proxy\ProxyGenerator;
-use Doctrine\Common\Proxy\Proxy;
-use Doctrine\Common\Proxy\Exception\UnexpectedValueException;
-use Doctrine\Common\Persistence\Mapping\ClassMetadata;
-use PHPUnit_Framework_TestCase;
-
-/**
- * Test the generated proxies behavior. These tests make assumptions about the structure of LazyLoadableObject
- *
- * @author Marco Pivetta <ocramius@gmail.com>
- */
-class ProxyLogicTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @var \PHPUnit_Framework_MockObject_MockObject
-     */
-    protected $proxyLoader;
-
-    /**
-     * @var ClassMetadata
-     */
-    protected $lazyLoadableObjectMetadata;
-
-    /**
-     * @var LazyLoadableObject|Proxy
-     */
-    protected $lazyObject;
-
-    protected $identifier = array(
-        'publicIdentifierField' => 'publicIdentifierFieldValue',
-        'protectedIdentifierField' => 'protectedIdentifierFieldValue',
-    );
-
-    /**
-     * @var \PHPUnit_Framework_MockObject_MockObject|Callable
-     */
-    protected $initializerCallbackMock;
-
-    /**
-     * {@inheritDoc}
-     */
-    public function setUp()
-    {
-        $this->proxyLoader = $loader      = $this->getMock('stdClass', array('load'), array(), '', false);
-        $this->initializerCallbackMock    = $this->getMock('stdClass', array('__invoke'));
-        $identifier                       = $this->identifier;
-        $this->lazyLoadableObjectMetadata = $metadata = new LazyLoadableObjectClassMetadata();
-
-        // emulating what should happen in a proxy factory
-        $cloner = function (LazyLoadableObject $proxy) use ($loader, $identifier, $metadata) {
-            /* @var $proxy LazyLoadableObject|Proxy */
-            if ($proxy->__isInitialized()) {
-                return;
-            }
-
-            $proxy->__setInitialized(true);
-            $proxy->__setInitializer(null);
-            $original = $loader->load($identifier);
-
-            if (null === $original) {
-                throw new UnexpectedValueException();
-            }
-
-            foreach ($metadata->getReflectionClass()->getProperties() as $reflProperty) {
-                $propertyName = $reflProperty->getName();
-
-                if ($metadata->hasField($propertyName) || $metadata->hasAssociation($propertyName)) {
-                    $reflProperty->setAccessible(true);
-                    $reflProperty->setValue($proxy, $reflProperty->getValue($original));
-                }
-            }
-        };
-
-        $proxyClassName = 'Doctrine\Tests\Common\ProxyProxy\__CG__\Doctrine\Tests\Common\Proxy\LazyLoadableObject';
-
-        // creating the proxy class
-        if (!class_exists($proxyClassName, false)) {
-            $proxyGenerator = new ProxyGenerator(__DIR__ . '/generated', __NAMESPACE__ . 'Proxy', true);
-            $proxyGenerator->generateProxyClass($metadata);
-            require_once $proxyGenerator->getProxyFileName($metadata->getName());
-        }
-
-        $this->lazyObject = new $proxyClassName($this->getClosure($this->initializerCallbackMock), $cloner);
-
-        // setting identifiers in the proxy via reflection
-        foreach ($metadata->getIdentifierFieldNames() as $idField) {
-            $prop = $metadata->getReflectionClass()->getProperty($idField);
-            $prop->setAccessible(true);
-            $prop->setValue($this->lazyObject, $identifier[$idField]);
-        }
-
-        $this->assertFalse($this->lazyObject->__isInitialized());
-    }
-
-    public function testFetchingPublicIdentifierDoesNotCauseLazyLoading()
-    {
-        $this->configureInitializerMock(0);
-
-        $this->assertSame('publicIdentifierFieldValue', $this->lazyObject->publicIdentifierField);
-    }
-
-    public function testFetchingIdentifiersViaPublicGetterDoesNotCauseLazyLoading()
-    {
-        $this->configureInitializerMock(0);
-
-        $this->assertSame('protectedIdentifierFieldValue', $this->lazyObject->getProtectedIdentifierField());
-    }
-
-    public function testCallingMethodCausesLazyLoading()
-    {
-        $this->configureInitializerMock(
-            1,
-            array($this->lazyObject, 'testInitializationTriggeringMethod', array()),
-            function (Proxy $proxy) {
-                $proxy->__setInitializer(null);
-            }
-        );
-
-        $this->lazyObject->testInitializationTriggeringMethod();
-        $this->lazyObject->testInitializationTriggeringMethod();
-    }
-
-    public function testFetchingPublicFieldsCausesLazyLoading()
-    {
-        $test = $this;
-        $this->configureInitializerMock(
-            1,
-            array($this->lazyObject, '__get', array('publicPersistentField')),
-            function () use ($test) {
-                $test->setProxyValue('publicPersistentField', 'loadedValue');
-            }
-        );
-
-        $this->assertSame('loadedValue', $this->lazyObject->publicPersistentField);
-        $this->assertSame('loadedValue', $this->lazyObject->publicPersistentField);
-    }
-
-    public function testFetchingPublicAssociationCausesLazyLoading()
-    {
-        $test = $this;
-        $this->configureInitializerMock(
-            1,
-            array($this->lazyObject, '__get', array('publicAssociation')),
-            function () use ($test) {
-                $test->setProxyValue('publicAssociation', 'loadedAssociation');
-            }
-        );
-
-        $this->assertSame('loadedAssociation', $this->lazyObject->publicAssociation);
-        $this->assertSame('loadedAssociation', $this->lazyObject->publicAssociation);
-    }
-
-    public function testFetchingProtectedAssociationViaPublicGetterCausesLazyLoading()
-    {
-        $this->configureInitializerMock(
-            1,
-            array($this->lazyObject, 'getProtectedAssociation', array()),
-            function (Proxy $proxy) {
-                $proxy->__setInitializer(null);
-            }
-        );
-
-        $this->assertSame('protectedAssociationValue', $this->lazyObject->getProtectedAssociation());
-        $this->assertSame('protectedAssociationValue', $this->lazyObject->getProtectedAssociation());
-    }
-
-    public function testLazyLoadingTriggeredOnlyAtFirstPublicPropertyRead()
-    {
-        $test = $this;
-        $this->configureInitializerMock(
-            1,
-            array($this->lazyObject, '__get', array('publicPersistentField')),
-            function () use ($test) {
-                $test->setProxyValue('publicPersistentField', 'loadedValue');
-                $test->setProxyValue('publicAssociation', 'publicAssociationValue');
-            }
-        );
-
-        $this->assertSame('loadedValue', $this->lazyObject->publicPersistentField);
-        $this->assertSame('publicAssociationValue', $this->lazyObject->publicAssociation);
-    }
-
-    public function testNoticeWhenReadingNonExistentPublicProperties()
-    {
-        $this->configureInitializerMock(0);
-
-        $class = get_class($this->lazyObject);
-        $this->setExpectedException(
-            'PHPUnit_Framework_Error_Notice',
-            'Undefined property: ' . $class . '::$non_existing_property'
-        );
-
-        $this->lazyObject->non_existing_property;
-    }
-
-    public function testFalseWhenCheckingNonExistentProperty()
-    {
-        $this->configureInitializerMock(0);
-
-        $this->assertFalse(isset($this->lazyObject->non_existing_property));
-    }
-
-    public function testNoErrorWhenSettingNonExistentProperty()
-    {
-        $this->configureInitializerMock(0);
-
-        $this->lazyObject->non_existing_property = 'now has a value';
-        $this->assertSame('now has a value', $this->lazyObject->non_existing_property);
-    }
-
-    public function testCloningCallsClonerWithClonedObject()
-    {
-        $lazyObject = $this->lazyObject;
-        $test = $this;
-        $cb = $this->getMock('stdClass', array('cb'));
-        $cb
-            ->expects($this->once())
-            ->method('cb')
-            ->will($this->returnCallback(function (LazyLoadableObject $proxy) use ($lazyObject, $test) {
-                /* @var $proxy LazyLoadableObject|Proxy */
-                $test->assertNotSame($proxy, $lazyObject);
-                $proxy->__setInitializer(null);
-                $proxy->publicAssociation = 'clonedAssociation';
-            }));
-
-        $this->lazyObject->__setCloner($this->getClosure(array($cb, 'cb')));
-
-        $cloned = clone $this->lazyObject;
-        $this->assertSame('clonedAssociation', $cloned->publicAssociation);
-        $this->assertNotSame($cloned, $lazyObject, 'a clone of the lazy object is retrieved');
-    }
-
-    public function testFetchingTransientPropertiesWillNotTriggerLazyLoading()
-    {
-        $this->configureInitializerMock(0);
-
-        $this->assertSame(
-            'publicTransientFieldValue',
-            $this->lazyObject->publicTransientField,
-            'fetching public transient field won\'t trigger lazy loading'
-        );
-        $property = $this
-            ->lazyLoadableObjectMetadata
-            ->getReflectionClass()
-            ->getProperty('protectedTransientField');
-        $property->setAccessible(true);
-        $this->assertSame(
-            'protectedTransientFieldValue',
-            $property->getValue($this->lazyObject),
-            'fetching protected transient field via reflection won\'t trigger lazy loading'
-        );
-    }
-
-    /**
-     * Provided to guarantee backwards compatibility
-     */
-    public function testLoadProxyMethod()
-    {
-        $this->configureInitializerMock(2, array($this->lazyObject, '__load', array()));
-
-        $this->lazyObject->__load();
-        $this->lazyObject->__load();
-    }
-
-    public function testLoadingWithPersisterWillBeTriggeredOnlyOnce()
-    {
-        $this
-            ->proxyLoader
-            ->expects($this->once())
-            ->method('load')
-            ->with(
-                array(
-                    'publicIdentifierField' => 'publicIdentifierFieldValue',
-                    'protectedIdentifierField' => 'protectedIdentifierFieldValue',
-                ),
-                $this->lazyObject
-            )
-            ->will($this->returnCallback(function ($id, LazyLoadableObject $lazyObject) {
-                // setting a value to verify that the persister can actually set something in the object
-                $lazyObject->publicAssociation = $id['publicIdentifierField'] . '-test';
-                return true;
-            }));
-        $this->lazyObject->__setInitializer($this->getSuggestedInitializerImplementation());
-
-        $this->lazyObject->__load();
-        $this->lazyObject->__load();
-        $this->assertSame('publicIdentifierFieldValue-test', $this->lazyObject->publicAssociation);
-    }
-
-    public function testFailedLoadingWillThrowException()
-    {
-        $this->proxyLoader->expects($this->any())->method('load')->will($this->returnValue(null));
-        $this->setExpectedException('UnexpectedValueException');
-        $this->lazyObject->__setInitializer($this->getSuggestedInitializerImplementation());
-
-        $this->lazyObject->__load();
-    }
-
-    public function testCloningWithPersister()
-    {
-        $this->lazyObject->publicTransientField = 'should-not-change';
-        $this
-            ->proxyLoader
-            ->expects($this->exactly(2))
-            ->method('load')
-            ->with(array(
-                'publicIdentifierField'    => 'publicIdentifierFieldValue',
-                'protectedIdentifierField' => 'protectedIdentifierFieldValue',
-            ))
-            ->will($this->returnCallback(function () {
-                $blueprint = new LazyLoadableObject();
-                $blueprint->publicPersistentField = 'checked-persistent-field';
-                $blueprint->publicAssociation     = 'checked-association-field';
-                $blueprint->publicTransientField  = 'checked-transient-field';
-
-                return $blueprint;
-            }));
-
-        $firstClone = clone $this->lazyObject;
-        $this->assertSame(
-            'checked-persistent-field',
-            $firstClone->publicPersistentField,
-            'Persistent fields are cloned correctly'
-        );
-        $this->assertSame(
-            'checked-association-field',
-            $firstClone->publicAssociation,
-            'Associations are cloned correctly'
-        );
-        $this->assertSame(
-            'should-not-change',
-            $firstClone->publicTransientField,
-            'Transient fields are not overwritten'
-        );
-
-        $secondClone = clone $this->lazyObject;
-        $this->assertSame(
-            'checked-persistent-field',
-            $secondClone->publicPersistentField,
-            'Persistent fields are cloned correctly'
-        );
-        $this->assertSame(
-            'checked-association-field',
-            $secondClone->publicAssociation,
-            'Associations are cloned correctly'
-        );
-        $this->assertSame(
-            'should-not-change',
-            $secondClone->publicTransientField,
-            'Transient fields are not overwritten'
-        );
-
-        // those should not trigger lazy loading
-        $firstClone->__load();
-        $secondClone->__load();
-    }
-
-    public function testNotInitializedProxyUnserialization()
-    {
-        $this->configureInitializerMock();
-
-        $serialized = serialize($this->lazyObject);
-        /* @var $unserialized LazyLoadableObject|Proxy */
-        $unserialized = unserialize($serialized);
-        $reflClass = $this->lazyLoadableObjectMetadata->getReflectionClass();
-
-        $this->assertFalse($unserialized->__isInitialized(), 'serialization didn\'t cause intialization');
-
-        // Checking identifiers
-        $this->assertSame('publicIdentifierFieldValue', $unserialized->publicIdentifierField, 'identifiers are kept');
-        $protectedIdentifierField = $reflClass->getProperty('protectedIdentifierField');
-        $protectedIdentifierField->setAccessible(true);
-        $this->assertSame(
-            'protectedIdentifierFieldValue',
-            $protectedIdentifierField->getValue($unserialized),
-            'identifiers are kept'
-        );
-
-        // Checking transient fields
-        $this->assertSame(
-            'publicTransientFieldValue',
-            $unserialized->publicTransientField,
-            'transient fields are kept'
-        );
-        $protectedTransientField = $reflClass->getProperty('protectedTransientField');
-        $protectedTransientField->setAccessible(true);
-        $this->assertSame(
-            'protectedTransientFieldValue',
-            $protectedTransientField->getValue($unserialized),
-            'transient fields are kept'
-        );
-
-        // Checking persistent fields
-        $this->assertSame(
-            'publicPersistentFieldValue',
-            $unserialized->publicPersistentField,
-            'persistent fields are kept'
-        );
-        $protectedPersistentField = $reflClass->getProperty('protectedPersistentField');
-        $protectedPersistentField->setAccessible(true);
-        $this->assertSame(
-            'protectedPersistentFieldValue',
-            $protectedPersistentField->getValue($unserialized),
-            'persistent fields are kept'
-        );
-
-        // Checking associations
-        $this->assertSame('publicAssociationValue', $unserialized->publicAssociation, 'associations are kept');
-        $protectedAssociationField = $reflClass->getProperty('protectedAssociation');
-        $protectedAssociationField->setAccessible(true);
-        $this->assertSame(
-            'protectedAssociationValue',
-            $protectedAssociationField->getValue($unserialized),
-            'associations are kept'
-        );
-    }
-
-    public function testInitializedProxyUnserialization()
-    {
-        // persister will retrieve the lazy object itself, so that we don't have to re-define all field values
-        $this->proxyLoader->expects($this->once())->method('load')->will($this->returnValue($this->lazyObject));
-        $this->lazyObject->__setInitializer($this->getSuggestedInitializerImplementation());
-        $this->lazyObject->__load();
-
-        $serialized   = serialize($this->lazyObject);
-        $reflClass    = $this->lazyLoadableObjectMetadata->getReflectionClass();
-        /* @var $unserialized LazyLoadableObject|Proxy */
-        $unserialized = unserialize($serialized);
-
-        $this->assertTrue($unserialized->__isInitialized(), 'serialization didn\'t cause intialization');
-
-        // Checking transient fields
-        $this->assertSame(
-            'publicTransientFieldValue',
-            $unserialized->publicTransientField,
-            'transient fields are kept'
-        );
-        $protectedTransientField = $reflClass->getProperty('protectedTransientField');
-        $protectedTransientField->setAccessible(true);
-        $this->assertSame(
-            'protectedTransientFieldValue',
-            $protectedTransientField->getValue($unserialized),
-            'transient fields are kept'
-        );
-
-        // Checking persistent fields
-        $this->assertSame(
-            'publicPersistentFieldValue',
-            $unserialized->publicPersistentField,
-            'persistent fields are kept'
-        );
-        $protectedPersistentField = $reflClass->getProperty('protectedPersistentField');
-        $protectedPersistentField->setAccessible(true);
-        $this->assertSame(
-            'protectedPersistentFieldValue',
-            $protectedPersistentField->getValue($unserialized),
-            'persistent fields are kept'
-        );
-
-        // Checking identifiers
-        $this->assertSame(
-            'publicIdentifierFieldValue',
-            $unserialized->publicIdentifierField,
-            'identifiers are kept'
-        );
-        $protectedIdentifierField = $reflClass->getProperty('protectedIdentifierField');
-        $protectedIdentifierField->setAccessible(true);
-        $this->assertSame(
-            'protectedIdentifierFieldValue',
-            $protectedIdentifierField->getValue($unserialized),
-            'identifiers are kept'
-        );
-
-        // Checking associations
-        $this->assertSame('publicAssociationValue', $unserialized->publicAssociation, 'associations are kept');
-        $protectedAssociationField = $reflClass->getProperty('protectedAssociation');
-        $protectedAssociationField->setAccessible(true);
-        $this->assertSame(
-            'protectedAssociationValue',
-            $protectedAssociationField->getValue($unserialized),
-            'associations are kept'
-        );
-    }
-
-    public function testInitializationRestoresDefaultPublicLazyLoadedFieldValues()
-    {
-        // setting noop persister
-        $this->proxyLoader->expects($this->once())->method('load')->will($this->returnValue($this->lazyObject));
-        $this->lazyObject->__setInitializer($this->getSuggestedInitializerImplementation());
-
-        $this->assertSame(
-            'publicPersistentFieldValue',
-            $this->lazyObject->publicPersistentField,
-            'Persistent field is restored to default value'
-        );
-        $this->assertSame(
-            'publicAssociationValue',
-            $this->lazyObject->publicAssociation,
-            'Association is restored to default value'
-        );
-    }
-
-    public function testSettingPublicFieldsCausesLazyLoading()
-    {
-        $test = $this;
-        $this->configureInitializerMock(
-            1,
-            array($this->lazyObject, '__set', array('publicPersistentField', 'newPublicPersistentFieldValue')),
-            function () use ($test) {
-                $test->setProxyValue('publicPersistentField', 'overrideValue');
-                $test->setProxyValue('publicAssociation', 'newAssociationValue');
-            }
-        );
-
-        $this->lazyObject->publicPersistentField = 'newPublicPersistentFieldValue';
-        $this->assertSame('newPublicPersistentFieldValue', $this->lazyObject->publicPersistentField);
-        $this->assertSame('newAssociationValue', $this->lazyObject->publicAssociation);
-    }
-
-    public function testSettingPublicAssociationCausesLazyLoading()
-    {
-        $test = $this;
-        $this->configureInitializerMock(
-            1,
-            array($this->lazyObject, '__set', array('publicAssociation', 'newPublicAssociationValue')),
-            function () use ($test) {
-                $test->setProxyValue('publicPersistentField', 'newPublicPersistentFieldValue');
-                $test->setProxyValue('publicAssociation', 'overrideValue');
-            }
-        );
-
-        $this->lazyObject->publicAssociation = 'newPublicAssociationValue';
-        $this->assertSame('newPublicAssociationValue', $this->lazyObject->publicAssociation);
-        $this->assertSame('newPublicPersistentFieldValue', $this->lazyObject->publicPersistentField);
-    }
-
-    public function testCheckingPublicFieldsCausesLazyLoading()
-    {
-        $test = $this;
-        $this->configureInitializerMock(
-            1,
-            array($this->lazyObject, '__isset', array('publicPersistentField')),
-            function () use ($test) {
-                $test->setProxyValue('publicPersistentField', null);
-                $test->setProxyValue('publicAssociation', 'setPublicAssociation');
-            }
-        );
-
-        $this->assertFalse(isset($this->lazyObject->publicPersistentField));
-        $this->assertNull($this->lazyObject->publicPersistentField);
-        $this->assertTrue(isset($this->lazyObject->publicAssociation));
-        $this->assertSame('setPublicAssociation', $this->lazyObject->publicAssociation);
-    }
-
-    public function testCheckingPublicAssociationCausesLazyLoading()
-    {
-        $test = $this;
-        $this->configureInitializerMock(
-            1,
-            array($this->lazyObject, '__isset', array('publicAssociation')),
-            function () use ($test) {
-                $test->setProxyValue('publicPersistentField', 'newPersistentFieldValue');
-                $test->setProxyValue('publicAssociation', 'setPublicAssociation');
-            }
-        );
-
-        $this->assertTrue(isset($this->lazyObject->publicAssociation));
-        $this->assertSame('setPublicAssociation', $this->lazyObject->publicAssociation);
-        $this->assertTrue(isset($this->lazyObject->publicPersistentField));
-        $this->assertSame('newPersistentFieldValue', $this->lazyObject->publicPersistentField);
-    }
-
-    public function testCallingVariadicMethodCausesLazyLoading()
-    {
-        if (PHP_VERSION_ID < 50600) {
-            $this->markTestSkipped('Test applies only to PHP 5.6+');
-        }
-
-        $proxyClassName = 'Doctrine\Tests\Common\ProxyProxy\__CG__\Doctrine\Tests\Common\Proxy\VariadicTypeHintClass';
-
-        /* @var $metadata \Doctrine\Common\Persistence\Mapping\ClassMetadata|\PHPUnit_Framework_MockObject_MockObject */
-        $metadata = $this->getMock('Doctrine\Common\Persistence\Mapping\ClassMetadata');
-
-        $metadata
-            ->expects($this->any())
-            ->method('getName')
-            ->will($this->returnValue('Doctrine\Tests\Common\Proxy\VariadicTypeHintClass'));
-        $metadata
-            ->expects($this->any())
-            ->method('getReflectionClass')
-            ->will($this->returnValue(new \ReflectionClass('Doctrine\Tests\Common\Proxy\VariadicTypeHintClass')));
-
-        // creating the proxy class
-        if (!class_exists($proxyClassName, false)) {
-            $proxyGenerator = new ProxyGenerator(__DIR__ . '/generated', __NAMESPACE__ . 'Proxy', true);
-            $proxyGenerator->generateProxyClass($metadata);
-            require_once $proxyGenerator->getProxyFileName($metadata->getName());
-        }
-
-        /* @var $invocationMock callable|\PHPUnit_Framework_MockObject_MockObject */
-        $invocationMock = $this->getMock('stdClass', array('__invoke'));
-
-        /* @var $lazyObject \Doctrine\Tests\Common\Proxy\VariadicTypeHintClass */
-        $lazyObject = new $proxyClassName(
-            function ($proxy, $method, $parameters) use ($invocationMock) {
-                $invocationMock($proxy, $method, $parameters);
-            },
-            function () {}
-        );
-
-        $invocationMock
-            ->expects($this->at(0))
-            ->method('__invoke')
-            ->with($lazyObject, 'addType', array(array('type1', 'type2')));
-        $invocationMock
-            ->expects($this->at(1))
-            ->method('__invoke')
-            ->with($lazyObject, 'addTypeWithMultipleParameters', array('foo', 'bar', array('baz1', 'baz2')));
-
-        $lazyObject->addType('type1', 'type2');
-        $this->assertSame(array('type1', 'type2'), $lazyObject->types);
-
-        $lazyObject->addTypeWithMultipleParameters('foo', 'bar', 'baz1', 'baz2');
-        $this->assertSame('foo', $lazyObject->foo);
-        $this->assertSame('bar', $lazyObject->bar);
-        $this->assertSame(array('baz1', 'baz2'), $lazyObject->baz);
-    }
-
-    /**
-     * Converts a given callable into a closure
-     *
-     * @param  callable $callable
-     * @return \Closure
-     */
-    public function getClosure($callable) {
-        return function () use ($callable) {
-            call_user_func_array($callable, func_get_args());
-        };
-    }
-
-    /**
-     * Configures the current initializer callback mock with provided matcher params
-     *
-     * @param int $expectedCallCount the number of invocations to be expected. If a value< 0 is provided, `any` is used
-     * @param array $callParamsMatch an ordered array of parameters to be expected
-     * @param callable $callbackClosure a return callback closure
-     *
-     * @return \PHPUnit_Framework_MockObject_MockObject|
-     */
-    protected function configureInitializerMock(
-        $expectedCallCount = 0,
-        array $callParamsMatch = null,
-        \Closure $callbackClosure = null
-    ) {
-        if (!$expectedCallCount) {
-            $invocationCountMatcher = $this->exactly((int) $expectedCallCount);
-        } else {
-            $invocationCountMatcher = $expectedCallCount < 0 ? $this->any() : $this->exactly($expectedCallCount);
-        }
-
-        $invocationMocker = $this->initializerCallbackMock->expects($invocationCountMatcher)->method('__invoke');
-
-        if (null !== $callParamsMatch) {
-            call_user_func_array(array($invocationMocker, 'with'), $callParamsMatch);
-        }
-
-        if ($callbackClosure) {
-            $invocationMocker->will($this->returnCallback($callbackClosure));
-        }
-    }
-
-    /**
-     * Sets a value in the current proxy object without triggering lazy loading through `__set`
-     *
-     * @link https://bugs.php.net/bug.php?id=63463
-     *
-     * @param string $property
-     * @param mixed $value
-     */
-    public function setProxyValue($property, $value)
-    {
-        $reflectionProperty = new \ReflectionProperty($this->lazyObject, $property);
-        $initializer        = $this->lazyObject->__getInitializer();
-
-        // disabling initializer since setting `publicPersistentField` triggers `__set`/`__get`
-        $this->lazyObject->__setInitializer(null);
-        $reflectionProperty->setValue($this->lazyObject, $value);
-        $this->lazyObject->__setInitializer($initializer);
-    }
-
-    /**
-     * Retrieves the suggested implementation of an initializer that proxy factories in O*M
-     * are currently following, and that should be used to initialize the current proxy object
-     *
-     * @return \Closure
-     */
-    protected function getSuggestedInitializerImplementation()
-    {
-        $loader     = $this->proxyLoader;
-        $identifier = $this->identifier;
-
-        return function (LazyLoadableObject $proxy) use ($loader, $identifier) {
-            /* @var $proxy LazyLoadableObject|Proxy */
-            $proxy->__setInitializer(null);
-            $proxy->__setCloner(null);
-
-
-            if ($proxy->__isInitialized()) {
-                return;
-            }
-
-            $properties = $proxy->__getLazyProperties();
-
-            foreach ($properties as $propertyName => $property) {
-                if (!isset($proxy->$propertyName)) {
-                    $proxy->$propertyName = $properties[$propertyName];
-                }
-            }
-
-            $proxy->__setInitialized(true);
-
-            if (method_exists($proxy, '__wakeup')) {
-                $proxy->__wakeup();
-            }
-
-            if (null === $loader->load($identifier, $proxy)) {
-                throw new \UnexpectedValueException('Couldn\'t load');
-            }
-        };
-    }
-}
\ No newline at end of file
diff --git a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/ProxyMagicMethodsTest.php b/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/ProxyMagicMethodsTest.php
deleted file mode 100644
index 1ed9d92..0000000
--- a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/ProxyMagicMethodsTest.php
+++ /dev/null
@@ -1,327 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Tests\Common\Proxy;
-
-use Doctrine\Common\Proxy\ProxyGenerator;
-use Doctrine\Common\Proxy\Proxy;
-use Doctrine\Common\Proxy\Exception\UnexpectedValueException;
-use PHPUnit_Framework_TestCase;
-use ReflectionClass;
-
-/**
- * Test for behavior of proxies with inherited magic methods
- *
- * @author Marco Pivetta <ocramius@gmail.com>
- */
-class ProxyMagicMethodsTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @var \Doctrine\Common\Proxy\ProxyGenerator
-     */
-    protected $proxyGenerator;
-
-    /**
-     * @var LazyLoadableObject|Proxy
-     */
-    protected $lazyObject;
-
-    protected $identifier = array(
-        'publicIdentifierField' => 'publicIdentifierFieldValue',
-        'protectedIdentifierField' => 'protectedIdentifierFieldValue',
-    );
-
-    /**
-     * @var \PHPUnit_Framework_MockObject_MockObject|Callable
-     */
-    protected $initializerCallbackMock;
-
-    /**
-     * {@inheritDoc}
-     */
-    public function setUp()
-    {
-        $this->proxyGenerator = new ProxyGenerator(__DIR__ . '/generated', __NAMESPACE__ . '\\MagicMethodProxy');
-    }
-
-    public static function tearDownAfterClass()
-    {
-
-    }
-
-    public function testInheritedMagicGet()
-    {
-        $proxyClassName = $this->generateProxyClass(__NAMESPACE__ . '\\MagicGetClass');
-        $proxy          = new $proxyClassName(
-            function (Proxy $proxy, $method, $params) use (&$counter) {
-                if ( ! in_array($params[0], array('publicField', 'test', 'notDefined'))) {
-                    throw new \InvalidArgumentException('Unexpected access to field "' . $params[0] . '"');
-                }
-
-                $initializer = $proxy->__getInitializer();
-
-                $proxy->__setInitializer(null);
-
-                $proxy->publicField = 'modifiedPublicField';
-                $counter            += 1;
-
-                $proxy->__setInitializer($initializer);
-
-            }
-        );
-
-        $this->assertSame('id', $proxy->id);
-        $this->assertSame('modifiedPublicField', $proxy->publicField);
-        $this->assertSame('test', $proxy->test);
-        $this->assertSame('not defined', $proxy->notDefined);
-
-        $this->assertSame(3, $counter);
-    }
-
-    /**
-     * @group DCOM-194
-     */
-    public function testInheritedMagicGetByRef()
-    {
-        $proxyClassName    = $this->generateProxyClass(__NAMESPACE__ . '\\MagicGetByRefClass');
-        /* @var $proxy \Doctrine\Tests\Common\Proxy\MagicGetByRefClass */
-        $proxy             = new $proxyClassName();
-        $proxy->valueField = 123;
-        $value             = & $proxy->__get('value');
-
-        $this->assertSame(123, $value);
-
-        $value = 456;
-
-        $this->assertSame(456, $proxy->__get('value'), 'Value was fetched by reference');
-
-        $this->setExpectedException('InvalidArgumentException');
-
-        $undefined = $proxy->nonExisting;
-    }
-
-    public function testInheritedMagicSet()
-    {
-        $proxyClassName = $this->generateProxyClass(__NAMESPACE__ . '\\MagicSetClass');
-        $proxy          = new $proxyClassName(
-            function (Proxy  $proxy, $method, $params) use (&$counter) {
-                if ( ! in_array($params[0], array('publicField', 'test', 'notDefined'))) {
-                    throw new \InvalidArgumentException('Unexpected access to field "' . $params[0] . '"');
-                }
-
-                $counter += 1;
-            }
-        );
-
-        $this->assertSame('id', $proxy->id);
-
-        $proxy->publicField = 'publicFieldValue';
-
-        $this->assertSame('publicFieldValue', $proxy->publicField);
-
-        $proxy->test = 'testValue';
-
-        $this->assertSame('testValue', $proxy->testAttribute);
-
-        $proxy->notDefined = 'not defined';
-
-        $this->assertSame('not defined', $proxy->testAttribute);
-        $this->assertSame(3, $counter);
-    }
-
-    public function testInheritedMagicSleep()
-    {
-        $proxyClassName = $this->generateProxyClass(__NAMESPACE__ . '\\MagicSleepClass');
-        $proxy          = new $proxyClassName();
-
-        $this->assertSame('defaultValue', $proxy->serializedField);
-        $this->assertSame('defaultValue', $proxy->nonSerializedField);
-
-        $proxy->serializedField    = 'changedValue';
-        $proxy->nonSerializedField = 'changedValue';
-
-        $unserialized = unserialize(serialize($proxy));
-
-        $this->assertSame('changedValue', $unserialized->serializedField);
-        $this->assertSame('defaultValue', $unserialized->nonSerializedField, 'Field was not returned by "__sleep"');
-    }
-
-    public function testInheritedMagicWakeup()
-    {
-        $proxyClassName = $this->generateProxyClass(__NAMESPACE__ . '\\MagicWakeupClass');
-        $proxy          = new $proxyClassName();
-
-        $this->assertSame('defaultValue', $proxy->wakeupValue);
-
-        $proxy->wakeupValue = 'changedValue';
-        $unserialized       = unserialize(serialize($proxy));
-
-        $this->assertSame('newWakeupValue', $unserialized->wakeupValue, '"__wakeup" was called');
-
-        $unserialized->__setInitializer(function (Proxy $proxy) {
-            $proxy->__setInitializer(null);
-
-            $proxy->publicField = 'newPublicFieldValue';
-        });
-
-        $this->assertSame('newPublicFieldValue', $unserialized->publicField, 'Proxy can still be initialized');
-    }
-
-    public function testInheritedMagicIsset()
-    {
-        $proxyClassName = $this->generateProxyClass(__NAMESPACE__ . '\\MagicIssetClass');
-        $proxy          = new $proxyClassName(function (Proxy $proxy, $method, $params) use (&$counter) {
-            if (in_array($params[0], array('publicField', 'test', 'nonExisting'))) {
-                $initializer = $proxy->__getInitializer();
-
-                $proxy->__setInitializer(null);
-
-                $proxy->publicField = 'modifiedPublicField';
-                $counter            += 1;
-
-                $proxy->__setInitializer($initializer);
-
-                return;
-            }
-
-            throw new \InvalidArgumentException(
-                sprintf('Should not be initialized when checking isset("%s")', $params[0])
-            );
-        });
-
-        $this->assertTrue(isset($proxy->id));
-        $this->assertTrue(isset($proxy->publicField));
-        $this->assertTrue(isset($proxy->test));
-        $this->assertFalse(isset($proxy->nonExisting));
-
-        $this->assertSame(3, $counter);
-    }
-
-    public function testInheritedMagicClone()
-    {
-        $proxyClassName = $this->generateProxyClass(__NAMESPACE__ . '\\MagicCloneClass');
-        $proxy          = new $proxyClassName(
-            null,
-            function ($proxy) {
-                $proxy->cloned = true;
-            }
-        );
-
-        $cloned = clone $proxy;
-
-        $this->assertSame('newClonedValue', $cloned->clonedValue);
-        $this->assertFalse($proxy->cloned);
-        $this->assertTrue($cloned->cloned);
-    }
-
-    /**
-     * @group DCOM-175
-     */
-    public function testClonesPrivateProperties()
-    {
-        $proxyClassName = $this->generateProxyClass(__NAMESPACE__ . '\\SerializedClass');
-        /* @var $proxy SerializedClass */
-        $proxy          = new $proxyClassName();
-
-        $proxy->setFoo(1);
-        $proxy->setBar(2);
-        $proxy->setBaz(3);
-
-        $unserialized = unserialize(serialize($proxy));
-
-        $this->assertSame(1, $unserialized->getFoo());
-        $this->assertSame(2, $unserialized->getBar());
-        $this->assertSame(3, $unserialized->getBaz());
-    }
-
-    /**
-     * @param $className
-     *
-     * @return string
-     */
-    private function generateProxyClass($className)
-    {
-        $proxyClassName = 'Doctrine\\Tests\\Common\\Proxy\\MagicMethodProxy\\__CG__\\' . $className;
-
-        if (class_exists($proxyClassName, false)) {
-            return $proxyClassName;
-        }
-
-        $metadata = $this->getMock('Doctrine\\Common\\Persistence\\Mapping\\ClassMetadata');
-
-        $metadata
-            ->expects($this->any())
-            ->method('getName')
-            ->will($this->returnValue($className));
-
-        $metadata
-            ->expects($this->any())
-            ->method('getIdentifier')
-            ->will($this->returnValue(array('id')));
-
-        $metadata
-            ->expects($this->any())
-            ->method('getReflectionClass')
-            ->will($this->returnValue(new ReflectionClass($className)));
-
-        $metadata
-            ->expects($this->any())
-            ->method('isIdentifier')
-            ->will($this->returnCallback(function ($fieldName) {
-                return 'id' === $fieldName;
-            }));
-
-        $metadata
-            ->expects($this->any())
-            ->method('hasField')
-            ->will($this->returnCallback(function ($fieldName) {
-                return in_array($fieldName, array('id', 'publicField'));
-            }));
-
-        $metadata
-            ->expects($this->any())
-            ->method('hasAssociation')
-            ->will($this->returnValue(false));
-
-        $metadata
-            ->expects($this->any())
-            ->method('getFieldNames')
-            ->will($this->returnValue(array('id', 'publicField')));
-
-        $metadata
-            ->expects($this->any())
-            ->method('getIdentifierFieldNames')
-            ->will($this->returnValue(array('id')));
-
-        $metadata
-            ->expects($this->any())
-            ->method('getAssociationNames')
-            ->will($this->returnValue(array()));
-
-        $metadata
-            ->expects($this->any())
-            ->method('getTypeOfField')
-            ->will($this->returnValue('string'));
-
-        $this->proxyGenerator->generateProxyClass($metadata, $this->proxyGenerator->getProxyFileName($className));
-        require_once $this->proxyGenerator->getProxyFileName($className);
-
-        return $proxyClassName;
-    }
-}
diff --git a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/SerializedClass.php b/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/SerializedClass.php
deleted file mode 100644
index a36c3bb..0000000
--- a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/SerializedClass.php
+++ /dev/null
@@ -1,72 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Proxy;
-
-/**
- * Test asset class
- */
-class SerializedClass
-{
-    /**
-     * @var mixed
-     */
-    private $foo = 'foo';
-
-    /**
-     * @var mixed
-     */
-    protected $bar = 'bar';
-
-    /**
-     * @var mixed
-     */
-    public $baz = 'baz';
-
-    /**
-     * @param mixed $foo
-     */
-    public function setFoo($foo)
-    {
-        $this->foo = $foo;
-    }
-
-    /**
-     * @return mixed|string
-     */
-    public function getFoo()
-    {
-        return $this->foo;
-    }
-
-    /**
-     * @param $bar
-     */
-    public function setBar($bar)
-    {
-        $this->bar = $bar;
-    }
-
-    /**
-     * @return mixed|string
-     */
-    public function getBar()
-    {
-        return $this->bar;
-    }
-
-    /**
-     * @param $baz
-     */
-    public function setBaz($baz)
-    {
-        $this->baz = $baz;
-    }
-
-    /**
-     * @return mixed|string
-     */
-    public function getBaz()
-    {
-        return $this->baz;
-    }
-}
diff --git a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/SleepClass.php b/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/SleepClass.php
deleted file mode 100644
index 3c6ffcd..0000000
--- a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/SleepClass.php
+++ /dev/null
@@ -1,19 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Proxy;
-
-/**
- * Test asset class
- */
-class SleepClass
-{
-    public $id;
-
-    /**
-     * @return array
-     */
-    public function __sleep()
-    {
-        return array('id');
-    }
-}
diff --git a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/StaticPropertyClass.php b/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/StaticPropertyClass.php
deleted file mode 100644
index ed4511b..0000000
--- a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/StaticPropertyClass.php
+++ /dev/null
@@ -1,11 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Proxy;
-
-/**
- * Test asset class
- */
-class StaticPropertyClass
-{
-    protected static $protectedStaticProperty;
-}
diff --git a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/VariadicTypeHintClass.php b/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/VariadicTypeHintClass.php
deleted file mode 100644
index 3333d17..0000000
--- a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/VariadicTypeHintClass.php
+++ /dev/null
@@ -1,29 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Proxy;
-
-/**
- * Test asset class
- */
-class VariadicTypeHintClass
-{
-    public $types;
-    public $foo;
-    public $bar;
-    public $baz;
-
-    /**
-     * @param ...$types
-     */
-    public function addType(...$types)
-    {
-        $this->types = $types;
-    }
-
-    public function addTypeWithMultipleParameters($foo, $bar, ...$baz)
-    {
-        $this->foo = $foo;
-        $this->bar = $bar;
-        $this->baz = $baz;
-    }
-}
diff --git a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Reflection/DeeperNamespaceParent.php b/vendor/doctrine/common/tests/Doctrine/Tests/Common/Reflection/DeeperNamespaceParent.php
deleted file mode 100644
index 11b3fc8..0000000
--- a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Reflection/DeeperNamespaceParent.php
+++ /dev/null
@@ -1,7 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Reflection;
-
-class DeeperNamespaceParent extends Dummies\NoParent
-{
-}
diff --git a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Reflection/Dummies/NoParent.php b/vendor/doctrine/common/tests/Doctrine/Tests/Common/Reflection/Dummies/NoParent.php
deleted file mode 100644
index f0e8dc9..0000000
--- a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Reflection/Dummies/NoParent.php
+++ /dev/null
@@ -1,8 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Reflection\Dummies;
-
-class NoParent
-{
-    public $test;
-}
diff --git a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Reflection/ExampleAnnotationClass.php b/vendor/doctrine/common/tests/Doctrine/Tests/Common/Reflection/ExampleAnnotationClass.php
deleted file mode 100644
index 45aee1c..0000000
--- a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Reflection/ExampleAnnotationClass.php
+++ /dev/null
@@ -1,14 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Reflection;
-
-use Doctrine\Common\Annotations\Annotation;
-
-/**
- * @Annotation(
- *   key = "value"
- * )
- */
-class ExampleAnnotationClass {
-
-} 
diff --git a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Reflection/FullyClassifiedParent.php b/vendor/doctrine/common/tests/Doctrine/Tests/Common/Reflection/FullyClassifiedParent.php
deleted file mode 100644
index 09a2641..0000000
--- a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Reflection/FullyClassifiedParent.php
+++ /dev/null
@@ -1,7 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Reflection;
-
-class FullyClassifiedParent extends \Doctrine\Tests\Common\Reflection\NoParent
-{
-}
diff --git a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Reflection/NoParent.php b/vendor/doctrine/common/tests/Doctrine/Tests/Common/Reflection/NoParent.php
deleted file mode 100644
index f6a98cb..0000000
--- a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Reflection/NoParent.php
+++ /dev/null
@@ -1,8 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Reflection;
-
-class NoParent
-{
-    public $test;
-}
diff --git a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Reflection/RuntimePublicReflectionPropertyTest.php b/vendor/doctrine/common/tests/Doctrine/Tests/Common/Reflection/RuntimePublicReflectionPropertyTest.php
deleted file mode 100644
index 779892f..0000000
--- a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Reflection/RuntimePublicReflectionPropertyTest.php
+++ /dev/null
@@ -1,192 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Reflection;
-
-use PHPUnit_Framework_TestCase;
-use Doctrine\Common\Reflection\RuntimePublicReflectionProperty;
-use Doctrine\Common\Proxy\Proxy;
-
-class RuntimePublicReflectionPropertyTest extends PHPUnit_Framework_TestCase
-{
-    public function testGetValueOnProxyPublicProperty()
-    {
-        $getCheckMock = $this->getMock('stdClass', array('callGet'));
-        $getCheckMock->expects($this->never())->method('callGet');
-        $initializer = function () use ($getCheckMock) {
-            call_user_func($getCheckMock);
-        };
-
-        $mockProxy = new RuntimePublicReflectionPropertyTestProxyMock();
-        $mockProxy->__setInitializer($initializer);
-
-        $reflProperty = new RuntimePublicReflectionProperty(
-            __NAMESPACE__ . '\RuntimePublicReflectionPropertyTestProxyMock',
-            'checkedProperty'
-        );
-
-        $this->assertSame('testValue', $reflProperty->getValue($mockProxy));
-        unset($mockProxy->checkedProperty);
-        $this->assertNull($reflProperty->getValue($mockProxy));
-    }
-
-    public function testSetValueOnProxyPublicProperty()
-    {
-        $setCheckMock = $this->getMock('stdClass', array('neverCallSet'));
-        $setCheckMock->expects($this->never())->method('neverCallSet');
-        $initializer = function () use ($setCheckMock) {
-            call_user_func(array($setCheckMock, 'neverCallSet'));
-        };
-
-        $mockProxy = new RuntimePublicReflectionPropertyTestProxyMock();
-        $mockProxy->__setInitializer($initializer);
-
-        $reflProperty = new RuntimePublicReflectionProperty(
-            __NAMESPACE__ . '\RuntimePublicReflectionPropertyTestProxyMock',
-            'checkedProperty'
-        );
-
-        $reflProperty->setValue($mockProxy, 'newValue');
-        $this->assertSame('newValue', $mockProxy->checkedProperty);
-
-        unset($mockProxy->checkedProperty);
-        $reflProperty->setValue($mockProxy, 'otherNewValue');
-        $this->assertSame('otherNewValue', $mockProxy->checkedProperty);
-
-        $setCheckMock = $this->getMock('stdClass', array('callSet'));
-        $setCheckMock->expects($this->once())->method('callSet');
-        $initializer = function () use ($setCheckMock) {
-            call_user_func(array($setCheckMock, 'callSet'));
-        };
-
-        $mockProxy->__setInitializer($initializer);
-        $mockProxy->__setInitialized(true);
-
-        unset($mockProxy->checkedProperty);
-        $reflProperty->setValue($mockProxy, 'againNewValue');
-        $this->assertSame('againNewValue', $mockProxy->checkedProperty);
-    }
-}
-
-/**
- * Mock that simulates proxy public property lazy loading
- */
-class RuntimePublicReflectionPropertyTestProxyMock implements Proxy
-{
-    /**
-     * @var \Closure|null
-     */
-    private $initializer     = null;
-
-    /**
-     * @var \Closure|null
-     */
-    private $initialized     = false;
-
-    /**
-     * @var string
-     */
-    public  $checkedProperty = 'testValue';
-
-    /**
-     * {@inheritDoc}
-     */
-    public function __getInitializer()
-    {
-        return $this->initializer;
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function __setInitializer(\Closure $initializer = null)
-    {
-        $this->initializer = $initializer;
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function __getLazyProperties()
-    {
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function __load()
-    {
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function __isInitialized()
-    {
-        return $this->initialized;
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function __setInitialized($initialized)
-    {
-        $this->initialized = (bool) $initialized;
-    }
-
-    /**
-     * @param string $name
-     */
-    public function __get($name)
-    {
-        if ($this->initializer) {
-            $cb = $this->initializer;
-            $cb();
-        }
-
-        return $this->checkedProperty;
-    }
-
-    /**
-     * @param string $name
-     * @param mixed  $value
-     */
-    public function __set($name, $value)
-    {
-        if ($this->initializer) {
-            $cb = $this->initializer;
-            $cb();
-        }
-
-        // triggers notices if `$name` is used: see https://bugs.php.net/bug.php?id=63463
-        $this->checkedProperty = $value;
-    }
-
-    /**
-     * @param string $name
-     *
-     * @return integer
-     */
-    public function __isset($name)
-    {
-        if ($this->initializer) {
-            $cb = $this->initializer;
-            $cb();
-        }
-
-        return isset($this->checkedProperty);
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function __setCloner(\Closure $cloner = null)
-    {
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function __getCloner()
-    {
-    }
-}
\ No newline at end of file
diff --git a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Reflection/SameNamespaceParent.php b/vendor/doctrine/common/tests/Doctrine/Tests/Common/Reflection/SameNamespaceParent.php
deleted file mode 100644
index 844d4a5..0000000
--- a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Reflection/SameNamespaceParent.php
+++ /dev/null
@@ -1,7 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Reflection;
-
-class SameNamespaceParent extends NoParent
-{
-}
diff --git a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Reflection/StaticReflectionParserTest.php b/vendor/doctrine/common/tests/Doctrine/Tests/Common/Reflection/StaticReflectionParserTest.php
deleted file mode 100644
index fa0cbc3..0000000
--- a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Reflection/StaticReflectionParserTest.php
+++ /dev/null
@@ -1,93 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Reflection;
-
-use Doctrine\Tests\DoctrineTestCase;
-use Doctrine\Common\Reflection\StaticReflectionParser;
-use Doctrine\Common\Reflection\Psr0FindFile;
-
-class StaticReflectionParserTest extends DoctrineTestCase
-{
-    /**
-     * @dataProvider parentClassData
-     *
-     * @param bool $classAnnotationOptimize
-     * @param string $parsedClassName
-     * @param string $expectedClassName
-     *
-     * @return void
-     */
-    public function testParentClass($classAnnotationOptimize, $parsedClassName, $expectedClassName)
-    {
-        // If classed annotation optimization is enabled the properties tested
-        // below cannot be found.
-        if ($classAnnotationOptimize) {
-            $this->setExpectedException('ReflectionException');
-        }
-
-        $testsRoot = substr(__DIR__, 0, -strlen(__NAMESPACE__) - 1);
-        $paths = array(
-            'Doctrine\\Tests' => array($testsRoot),
-        );
-        $staticReflectionParser = new StaticReflectionParser($parsedClassName, new Psr0FindFile($paths), $classAnnotationOptimize);
-        $declaringClassName = $staticReflectionParser->getStaticReflectionParserForDeclaringClass('property', 'test')->getClassName();
-        $this->assertEquals($expectedClassName, $declaringClassName);
-
-    }
-
-    /**
-     * @return array
-     */
-    public function parentClassData()
-    {
-        $data = array();
-        $noParentClassName = 'Doctrine\\Tests\\Common\\Reflection\\NoParent';
-        $dummyParentClassName = 'Doctrine\\Tests\\Common\\Reflection\\Dummies\\NoParent';
-        foreach (array(false, true) as $classAnnotationOptimize) {
-            $data[] = array(
-              $classAnnotationOptimize, $noParentClassName, $noParentClassName,
-            );
-            $data[] = array(
-              $classAnnotationOptimize, 'Doctrine\\Tests\\Common\\Reflection\\FullyClassifiedParent', $noParentClassName,
-            );
-            $data[] = array(
-              $classAnnotationOptimize, 'Doctrine\\Tests\\Common\\Reflection\\SameNamespaceParent', $noParentClassName,
-            );
-            $data[] = array(
-              $classAnnotationOptimize, 'Doctrine\\Tests\\Common\\Reflection\\DeeperNamespaceParent', $dummyParentClassName,
-            );
-            $data[] = array(
-              $classAnnotationOptimize, 'Doctrine\\Tests\\Common\\Reflection\\UseParent', $dummyParentClassName,
-            );
-        }
-        return $data;
-    }
-
-    /**
-     * @dataProvider classAnnotationOptimize
-     */
-    public function testClassAnnotationOptimizedParsing($classAnnotationOptimize) {
-        $testsRoot = substr(__DIR__, 0, -strlen(__NAMESPACE__) - 1);
-        $paths = array(
-          'Doctrine\\Tests' => array($testsRoot),
-        );
-        $staticReflectionParser = new StaticReflectionParser('Doctrine\\Tests\\Common\\Reflection\\ExampleAnnotationClass', new Psr0FindFile($paths), $classAnnotationOptimize);
-        $expectedDocComment = '/**
- * @Annotation(
- *   key = "value"
- * )
- */';
-        $this->assertEquals($expectedDocComment, $staticReflectionParser->getDocComment('class'));
-    }
-
-    /**
-     * @return array
-     */
-    public function classAnnotationOptimize()
-    {
-        return array(
-            array(false),
-            array(true)
-        );
-    }
-}
diff --git a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Reflection/UseParent.php b/vendor/doctrine/common/tests/Doctrine/Tests/Common/Reflection/UseParent.php
deleted file mode 100644
index dd512d4..0000000
--- a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Reflection/UseParent.php
+++ /dev/null
@@ -1,9 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Reflection;
-
-use Doctrine\Tests\Common\Reflection\Dummies\NoParent as Test;
-
-class UseParent extends Test
-{
-}
diff --git a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Util/ClassUtilsTest.php b/vendor/doctrine/common/tests/Doctrine/Tests/Common/Util/ClassUtilsTest.php
deleted file mode 100644
index a281450..0000000
--- a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Util/ClassUtilsTest.php
+++ /dev/null
@@ -1,100 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Util
-{
-    use Doctrine\Tests\DoctrineTestCase;
-    use Doctrine\Common\Util\ClassUtils;
-
-    class ClassUtilsTest extends DoctrineTestCase
-    {
-        static public function dataGetClass()
-        {
-            return array(
-                array('stdClass', 'stdClass'),
-                array('Doctrine\Common\Util\ClassUtils', 'Doctrine\Common\Util\ClassUtils'),
-                array( 'MyProject\Proxies\__CG__\stdClass', 'stdClass' ),
-                array( 'MyProject\Proxies\__CG__\OtherProject\Proxies\__CG__\stdClass', 'stdClass' ),
-                array( 'MyProject\Proxies\__CG__\Doctrine\Tests\Common\Util\ChildObject','Doctrine\Tests\Common\Util\ChildObject' )
-            );
-        }
-
-        /**
-         * @dataProvider dataGetClass
-         */
-        public function testGetRealClass($className, $expectedClassName)
-        {
-            $this->assertEquals($expectedClassName, ClassUtils::getRealClass($className));
-        }
-
-        /**
-         * @dataProvider dataGetClass
-         */
-        public function testGetClass( $className, $expectedClassName )
-        {
-            $object = new $className();
-            $this->assertEquals($expectedClassName, ClassUtils::getClass($object));
-        }
-
-        public function testGetParentClass()
-        {
-            $parentClass = ClassUtils::getParentClass( 'MyProject\Proxies\__CG__\OtherProject\Proxies\__CG__\Doctrine\Tests\Common\Util\ChildObject' );
-            $this->assertEquals('stdClass', $parentClass);
-        }
-
-        public function testGenerateProxyClassName()
-        {
-            $this->assertEquals( 'Proxies\__CG__\stdClass', ClassUtils::generateProxyClassName( 'stdClass', 'Proxies' ) );
-        }
-
-        /**
-         * @dataProvider dataGetClass
-         */
-        public function testNewReflectionClass( $className, $expectedClassName )
-        {
-            $reflClass = ClassUtils::newReflectionClass( $className );
-            $this->assertEquals( $expectedClassName, $reflClass->getName() );
-        }
-
-        /**
-         * @dataProvider dataGetClass
-         */
-        public function testNewReflectionObject( $className, $expectedClassName )
-        {
-            $object = new $className;
-            $reflClass = ClassUtils::newReflectionObject( $object );
-            $this->assertEquals( $expectedClassName, $reflClass->getName() );
-        }
-    }
-
-    class ChildObject extends \stdClass
-    {
-    }
-}
-
-namespace MyProject\Proxies\__CG__
-{
-    class stdClass extends \stdClass
-    {
-    }
-}
-
-namespace MyProject\Proxies\__CG__\Doctrine\Tests\Common\Util
-{
-    class ChildObject extends \Doctrine\Tests\Common\Util\ChildObject
-    {
-    }
-}
-
-namespace MyProject\Proxies\__CG__\OtherProject\Proxies\__CG__
-{
-    class stdClass extends \MyProject\Proxies\__CG__\stdClass
-    {
-    }
-}
-
-namespace MyProject\Proxies\__CG__\OtherProject\Proxies\__CG__\Doctrine\Tests\Common\Util
-{
-    class ChildObject extends \MyProject\Proxies\__CG__\Doctrine\Tests\Common\Util\ChildObject
-    {
-    }
-}
diff --git a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Util/DebugTest.php b/vendor/doctrine/common/tests/Doctrine/Tests/Common/Util/DebugTest.php
deleted file mode 100644
index 66e8337..0000000
--- a/vendor/doctrine/common/tests/Doctrine/Tests/Common/Util/DebugTest.php
+++ /dev/null
@@ -1,65 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Util;
-
-use Doctrine\Tests\DoctrineTestCase;
-use Doctrine\Common\Util\Debug;
-
-class DebugTest extends DoctrineTestCase
-{
-    public function testExportObject( )
-    {
-        $obj = new \stdClass;
-        $obj->foo = "bar";
-        $obj->bar = 1234;
-
-        $var = Debug::export($obj, 2);
-        $this->assertEquals( "stdClass", $var->__CLASS__ );
-    }
-
-    public function testExportDateTime()
-    {
-        $obj = new \DateTime( "2010-10-10 10:10:10" );
-
-        $var = Debug::export( $obj, 2 );
-        $this->assertEquals( "DateTime", $var->__CLASS__ );
-    }
-
-    public function testExportArrayTraversable()
-    {
-        $obj = new \ArrayObject(array('foobar'));
-
-        $var = Debug::export($obj, 2);
-        $this->assertContains('foobar', $var->__STORAGE__);
-
-        $it = new \ArrayIterator(array('foobar'));
-
-        $var = Debug::export($it, 5);
-        $this->assertContains('foobar', $var->__STORAGE__);
-    }
-
-    public function testReturnsOutput()
-    {
-        ob_start();
-
-        $dump        = Debug::dump('foo');
-        $outputValue = ob_get_contents();
-
-        ob_end_clean();
-
-        $this->assertSame($outputValue, $dump);
-    }
-
-    public function testDisablesOutput()
-    {
-        ob_start();
-
-        $dump        = Debug::dump('foo', 2, true, false);
-        $outputValue = ob_get_contents();
-
-        ob_end_clean();
-
-        $this->assertEmpty($outputValue);
-        $this->assertNotSame($outputValue, $dump);
-    }
-}
diff --git a/vendor/doctrine/common/tests/Doctrine/Tests/DoctrineTestCase.php b/vendor/doctrine/common/tests/Doctrine/Tests/DoctrineTestCase.php
deleted file mode 100644
index e8323d2..0000000
--- a/vendor/doctrine/common/tests/Doctrine/Tests/DoctrineTestCase.php
+++ /dev/null
@@ -1,10 +0,0 @@
-<?php
-
-namespace Doctrine\Tests;
-
-/**
- * Base testcase class for all Doctrine testcases.
- */
-abstract class DoctrineTestCase extends \PHPUnit_Framework_TestCase
-{
-}
\ No newline at end of file
diff --git a/vendor/doctrine/common/tests/Doctrine/Tests/TestInit.php b/vendor/doctrine/common/tests/Doctrine/Tests/TestInit.php
deleted file mode 100644
index 07d74e6..0000000
--- a/vendor/doctrine/common/tests/Doctrine/Tests/TestInit.php
+++ /dev/null
@@ -1,26 +0,0 @@
-<?php
-/*
- * This file bootstraps the test environment.
- */
-namespace Doctrine\Tests;
-
-error_reporting(E_ALL | E_STRICT);
-
-// register silently failing autoloader
-spl_autoload_register(function($class)
-{
-    if (0 === strpos($class, 'Doctrine\Tests\\')) {
-        $path = __DIR__.'/../../'.strtr($class, '\\', '/').'.php';
-        if (is_file($path) && is_readable($path)) {
-            require_once $path;
-
-            return true;
-        }
-    }
-});
-
-require_once __DIR__ . "/../../../vendor/autoload.php";
-
-\Doctrine\Common\Annotations\AnnotationRegistry::registerAutoloadNamespace(
-    'Doctrine\Tests\Common\Annotations\Fixtures', __DIR__ . '/../../'
-);
diff --git a/vendor/doctrine/common/tests/README.markdown b/vendor/doctrine/common/tests/README.markdown
deleted file mode 100644
index e6f1703..0000000
--- a/vendor/doctrine/common/tests/README.markdown
+++ /dev/null
@@ -1,27 +0,0 @@
-# Running the Doctrine 2 Testsuite
-
-## Running tests
-
-Execute PHPUnit in the root folder of your doctrine-common clone.
-
-    phpunit
-
-## Testing Lock-Support
-
-The Lock support in Doctrine 2 is tested using Gearman, which allows to run concurrent tasks in parallel.
-Install Gearman with PHP as follows:
-
-1. Go to http://www.gearman.org and download the latest Gearman Server
-2. Compile it and then call ldconfig
-3. Start it up "gearmand -vvvv"
-4. Install pecl/gearman by calling "gearman-beta"
-
-You can then go into tests/ and start up two workers:
-
-    php Doctrine/Tests/ORM/Functional/Locking/LockAgentWorker.php
-
-Then run the locking test-suite:
-
-    phpunit --configuration <myconfig.xml> Doctrine/Tests/ORM/Functional/Locking/GearmanLockTest.php
-
-This can run considerable time, because it is using sleep() to test for the timing ranges of locks.
\ No newline at end of file
diff --git a/vendor/doctrine/inflector/tests/Doctrine/Tests/Common/Inflector/InflectorTest.php b/vendor/doctrine/inflector/tests/Doctrine/Tests/Common/Inflector/InflectorTest.php
deleted file mode 100644
index a8a075d..0000000
--- a/vendor/doctrine/inflector/tests/Doctrine/Tests/Common/Inflector/InflectorTest.php
+++ /dev/null
@@ -1,210 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Inflector;
-
-use Doctrine\Tests\DoctrineTestCase;
-use Doctrine\Common\Inflector\Inflector;
-
-class InflectorTest extends DoctrineTestCase
-{
-    /**
-     * Singular & Plural test data. Returns an array of sample words.
-     *
-     * @return array
-     */ 
-    public function dataSampleWords() 
-    {
-        Inflector::reset();
-        
-        // in the format array('singular', 'plural') 
-        return array(
-            array('categoria', 'categorias'),
-            array('house', 'houses'),
-            array('powerhouse', 'powerhouses'),
-            array('Bus', 'Buses'),
-            array('bus', 'buses'),
-            array('menu', 'menus'),
-            array('news', 'news'),
-            array('food_menu', 'food_menus'),
-            array('Menu', 'Menus'),
-            array('FoodMenu', 'FoodMenus'),
-            array('quiz', 'quizzes'),
-            array('matrix_row', 'matrix_rows'),
-            array('matrix', 'matrices'),
-            array('vertex', 'vertices'),
-            array('index', 'indices'),
-            array('Alias', 'Aliases'),
-            array('Media', 'Media'),
-            array('NodeMedia', 'NodeMedia'),
-            array('alumnus', 'alumni'),
-            array('bacillus', 'bacilli'),
-            array('cactus', 'cacti'),
-            array('focus', 'foci'),
-            array('fungus', 'fungi'),
-            array('nucleus', 'nuclei'),
-            array('octopus', 'octopuses'),
-            array('radius', 'radii'),
-            array('stimulus', 'stimuli'),
-            array('syllabus', 'syllabi'),
-            array('terminus', 'termini'),
-            array('virus', 'viri'),
-            array('person', 'people'),
-            array('glove', 'gloves'),
-            array('crisis', 'crises'),
-            array('tax', 'taxes'),
-            array('wave', 'waves'),
-            array('bureau', 'bureaus'),
-            array('cafe', 'cafes'),
-            array('roof', 'roofs'),
-            array('foe', 'foes'),
-            array('cookie', 'cookies'),
-            array('identity', 'identities'),
-            array('criteria', 'criterion'),
-            array('curve', 'curves'),
-            array('', ''),
-        );
-    }
-
-    /**
-     * testInflectingSingulars method
-     *
-     * @dataProvider dataSampleWords
-     * @return void
-     */
-    public function testInflectingSingulars($singular, $plural) 
-    {
-        $this->assertEquals(
-            $singular, 
-            Inflector::singularize($plural), 
-            "'$plural' should be singularized to '$singular'"
-        );
-    }
-
-    /**
-     * testInflectingPlurals method
-     *
-     * @dataProvider dataSampleWords
-     * @return void
-     */
-    public function testInflectingPlurals($singular, $plural) 
-    {
-        $this->assertEquals(
-            $plural, 
-            Inflector::pluralize($singular), 
-            "'$singular' should be pluralized to '$plural'"
-        );
-    }
-
-    /**
-     * testCustomPluralRule method
-     *
-     * @return void
-     */
-    public function testCustomPluralRule() 
-    {
-        Inflector::reset();
-        Inflector::rules('plural', array('/^(custom)$/i' => '\1izables'));
-        
-        $this->assertEquals(Inflector::pluralize('custom'), 'customizables');
-
-        Inflector::rules('plural', array('uninflected' => array('uninflectable')));
-        
-        $this->assertEquals(Inflector::pluralize('uninflectable'), 'uninflectable');
-
-        Inflector::rules('plural', array(
-            'rules' => array('/^(alert)$/i' => '\1ables'),
-            'uninflected' => array('noflect', 'abtuse'),
-            'irregular' => array('amaze' => 'amazable', 'phone' => 'phonezes')
-        ));
-        
-        $this->assertEquals(Inflector::pluralize('noflect'), 'noflect');
-        $this->assertEquals(Inflector::pluralize('abtuse'), 'abtuse');
-        $this->assertEquals(Inflector::pluralize('alert'), 'alertables');
-        $this->assertEquals(Inflector::pluralize('amaze'), 'amazable');
-        $this->assertEquals(Inflector::pluralize('phone'), 'phonezes');
-    }
-
-    /**
-     * testCustomSingularRule method
-     *
-     * @return void
-     */
-    public function testCustomSingularRule() 
-    {
-        Inflector::reset();
-        Inflector::rules('singular', array('/(eple)r$/i' => '\1', '/(jente)r$/i' => '\1'));
-
-        $this->assertEquals(Inflector::singularize('epler'), 'eple');
-        $this->assertEquals(Inflector::singularize('jenter'), 'jente');
-
-        Inflector::rules('singular', array(
-            'rules' => array('/^(bil)er$/i' => '\1', '/^(inflec|contribu)tors$/i' => '\1ta'),
-            'uninflected' => array('singulars'),
-            'irregular' => array('spins' => 'spinor')
-        ));
-
-        $this->assertEquals(Inflector::singularize('inflectors'), 'inflecta');
-        $this->assertEquals(Inflector::singularize('contributors'), 'contributa');
-        $this->assertEquals(Inflector::singularize('spins'), 'spinor');
-        $this->assertEquals(Inflector::singularize('singulars'), 'singulars');
-    }
-
-    /**
-     * test that setting new rules clears the inflector caches.
-     *
-     * @return void
-     */
-    public function testRulesClearsCaches() 
-    {
-        Inflector::reset();
-        
-        $this->assertEquals(Inflector::singularize('Bananas'), 'Banana');
-        $this->assertEquals(Inflector::pluralize('Banana'), 'Bananas');
-
-        Inflector::rules('singular', array(
-            'rules' => array('/(.*)nas$/i' => '\1zzz')
-        ));
-        
-        $this->assertEquals('Banazzz', Inflector::singularize('Bananas'), 'Was inflected with old rules.');
-
-        Inflector::rules('plural', array(
-            'rules' => array('/(.*)na$/i' => '\1zzz'),
-            'irregular' => array('corpus' => 'corpora')
-        ));
-        
-        $this->assertEquals(Inflector::pluralize('Banana'), 'Banazzz', 'Was inflected with old rules.');
-        $this->assertEquals(Inflector::pluralize('corpus'), 'corpora', 'Was inflected with old irregular form.');
-    }
-
-    /**
-     * Test resetting inflection rules.
-     *
-     * @return void
-     */
-    public function testCustomRuleWithReset() 
-    {
-        Inflector::reset();
-        
-        $uninflected = array('atlas', 'lapis', 'onibus', 'pires', 'virus', '.*x');
-        $pluralIrregular = array('as' => 'ases');
-
-        Inflector::rules('singular', array(
-            'rules' => array('/^(.*)(a|e|o|u)is$/i' => '\1\2l'),
-            'uninflected' => $uninflected,
-        ), true);
-
-        Inflector::rules('plural', array(
-            'rules' => array(
-                '/^(.*)(a|e|o|u)l$/i' => '\1\2is',
-            ),
-            'uninflected' => $uninflected,
-            'irregular' => $pluralIrregular
-        ), true);
-
-        $this->assertEquals(Inflector::pluralize('Alcool'), 'Alcoois');
-        $this->assertEquals(Inflector::pluralize('Atlas'), 'Atlas');
-        $this->assertEquals(Inflector::singularize('Alcoois'), 'Alcool');
-        $this->assertEquals(Inflector::singularize('Atlas'), 'Atlas');
-    }
-}
-
diff --git a/vendor/doctrine/inflector/tests/Doctrine/Tests/DoctrineTestCase.php b/vendor/doctrine/inflector/tests/Doctrine/Tests/DoctrineTestCase.php
deleted file mode 100644
index e8323d2..0000000
--- a/vendor/doctrine/inflector/tests/Doctrine/Tests/DoctrineTestCase.php
+++ /dev/null
@@ -1,10 +0,0 @@
-<?php
-
-namespace Doctrine\Tests;
-
-/**
- * Base testcase class for all Doctrine testcases.
- */
-abstract class DoctrineTestCase extends \PHPUnit_Framework_TestCase
-{
-}
\ No newline at end of file
diff --git a/vendor/doctrine/inflector/tests/Doctrine/Tests/TestInit.php b/vendor/doctrine/inflector/tests/Doctrine/Tests/TestInit.php
deleted file mode 100644
index ead2e30..0000000
--- a/vendor/doctrine/inflector/tests/Doctrine/Tests/TestInit.php
+++ /dev/null
@@ -1,27 +0,0 @@
-<?php
-/*
- * This file bootstraps the test environment.
- */
-namespace Doctrine\Tests;
-
-error_reporting(E_ALL | E_STRICT);
-
-// register silently failing autoloader
-spl_autoload_register(function($class)
-{
-    if (0 === strpos($class, 'Doctrine\Tests\\')) {
-        $path = __DIR__.'/../../'.strtr($class, '\\', '/').'.php';
-        if (is_file($path) && is_readable($path)) {
-            require_once $path;
-
-            return true;
-        }
-    } else if (0 === strpos($class, 'Doctrine\Common\\')) {
-        $path = __DIR__.'/../../../lib/'.($class = strtr($class, '\\', '/')).'.php';
-        if (is_file($path) && is_readable($path)) {
-            require_once $path;
-
-            return true;
-        }
-    }
-});
diff --git a/vendor/doctrine/instantiator/tests/DoctrineTest/InstantiatorPerformance/InstantiatorPerformanceEvent.php b/vendor/doctrine/instantiator/tests/DoctrineTest/InstantiatorPerformance/InstantiatorPerformanceEvent.php
deleted file mode 100644
index 3e8fc6f..0000000
--- a/vendor/doctrine/instantiator/tests/DoctrineTest/InstantiatorPerformance/InstantiatorPerformanceEvent.php
+++ /dev/null
@@ -1,96 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace DoctrineTest\InstantiatorPerformance;
-
-use Athletic\AthleticEvent;
-use Doctrine\Instantiator\Instantiator;
-
-/**
- * Performance tests for {@see \Doctrine\Instantiator\Instantiator}
- *
- * @author Marco Pivetta <ocramius@gmail.com>
- */
-class InstantiatorPerformanceEvent extends AthleticEvent
-{
-    /**
-     * @var \Doctrine\Instantiator\Instantiator
-     */
-    private $instantiator;
-
-    /**
-     * {@inheritDoc}
-     */
-    protected function setUp()
-    {
-        $this->instantiator = new Instantiator();
-
-        $this->instantiator->instantiate(__CLASS__);
-        $this->instantiator->instantiate('ArrayObject');
-        $this->instantiator->instantiate('DoctrineTest\\InstantiatorTestAsset\\SimpleSerializableAsset');
-        $this->instantiator->instantiate('DoctrineTest\\InstantiatorTestAsset\\SerializableArrayObjectAsset');
-        $this->instantiator->instantiate('DoctrineTest\\InstantiatorTestAsset\\UnCloneableAsset');
-    }
-
-    /**
-     * @iterations 20000
-     * @baseline
-     * @group instantiation
-     */
-    public function testInstantiateSelf()
-    {
-        $this->instantiator->instantiate(__CLASS__);
-    }
-
-    /**
-     * @iterations 20000
-     * @group instantiation
-     */
-    public function testInstantiateInternalClass()
-    {
-        $this->instantiator->instantiate('ArrayObject');
-    }
-
-    /**
-     * @iterations 20000
-     * @group instantiation
-     */
-    public function testInstantiateSimpleSerializableAssetClass()
-    {
-        $this->instantiator->instantiate('DoctrineTest\\InstantiatorTestAsset\\SimpleSerializableAsset');
-    }
-
-    /**
-     * @iterations 20000
-     * @group instantiation
-     */
-    public function testInstantiateSerializableArrayObjectAsset()
-    {
-        $this->instantiator->instantiate('DoctrineTest\\InstantiatorTestAsset\\SerializableArrayObjectAsset');
-    }
-
-    /**
-     * @iterations 20000
-     * @group instantiation
-     */
-    public function testInstantiateUnCloneableAsset()
-    {
-        $this->instantiator->instantiate('DoctrineTest\\InstantiatorTestAsset\\UnCloneableAsset');
-    }
-}
diff --git a/vendor/doctrine/instantiator/tests/DoctrineTest/InstantiatorTest/Exception/InvalidArgumentExceptionTest.php b/vendor/doctrine/instantiator/tests/DoctrineTest/InstantiatorTest/Exception/InvalidArgumentExceptionTest.php
deleted file mode 100644
index 39d9b94..0000000
--- a/vendor/doctrine/instantiator/tests/DoctrineTest/InstantiatorTest/Exception/InvalidArgumentExceptionTest.php
+++ /dev/null
@@ -1,83 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace DoctrineTest\InstantiatorTest\Exception;
-
-use Doctrine\Instantiator\Exception\InvalidArgumentException;
-use PHPUnit_Framework_TestCase;
-use ReflectionClass;
-
-/**
- * Tests for {@see \Doctrine\Instantiator\Exception\InvalidArgumentException}
- *
- * @author Marco Pivetta <ocramius@gmail.com>
- *
- * @covers \Doctrine\Instantiator\Exception\InvalidArgumentException
- */
-class InvalidArgumentExceptionTest extends PHPUnit_Framework_TestCase
-{
-    public function testFromNonExistingTypeWithNonExistingClass()
-    {
-        $className = __CLASS__ . uniqid();
-        $exception = InvalidArgumentException::fromNonExistingClass($className);
-
-        $this->assertInstanceOf('Doctrine\\Instantiator\\Exception\\InvalidArgumentException', $exception);
-        $this->assertSame('The provided class "' . $className . '" does not exist', $exception->getMessage());
-    }
-
-    public function testFromNonExistingTypeWithTrait()
-    {
-        if (PHP_VERSION_ID < 50400) {
-            $this->markTestSkipped('Need at least PHP 5.4.0, as this test requires traits support to run');
-        }
-
-        $exception = InvalidArgumentException::fromNonExistingClass(
-            'DoctrineTest\\InstantiatorTestAsset\\SimpleTraitAsset'
-        );
-
-        $this->assertSame(
-            'The provided type "DoctrineTest\\InstantiatorTestAsset\\SimpleTraitAsset" is a trait, '
-            . 'and can not be instantiated',
-            $exception->getMessage()
-        );
-    }
-
-    public function testFromNonExistingTypeWithInterface()
-    {
-        $exception = InvalidArgumentException::fromNonExistingClass('Doctrine\\Instantiator\\InstantiatorInterface');
-
-        $this->assertSame(
-            'The provided type "Doctrine\\Instantiator\\InstantiatorInterface" is an interface, '
-            . 'and can not be instantiated',
-            $exception->getMessage()
-        );
-    }
-
-    public function testFromAbstractClass()
-    {
-        $reflection = new ReflectionClass('DoctrineTest\\InstantiatorTestAsset\\AbstractClassAsset');
-        $exception  = InvalidArgumentException::fromAbstractClass($reflection);
-
-        $this->assertSame(
-            'The provided class "DoctrineTest\\InstantiatorTestAsset\\AbstractClassAsset" is abstract, '
-            . 'and can not be instantiated',
-            $exception->getMessage()
-        );
-    }
-}
diff --git a/vendor/doctrine/instantiator/tests/DoctrineTest/InstantiatorTest/Exception/UnexpectedValueExceptionTest.php b/vendor/doctrine/instantiator/tests/DoctrineTest/InstantiatorTest/Exception/UnexpectedValueExceptionTest.php
deleted file mode 100644
index 84154e7..0000000
--- a/vendor/doctrine/instantiator/tests/DoctrineTest/InstantiatorTest/Exception/UnexpectedValueExceptionTest.php
+++ /dev/null
@@ -1,69 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace DoctrineTest\InstantiatorTest\Exception;
-
-use Doctrine\Instantiator\Exception\UnexpectedValueException;
-use Exception;
-use PHPUnit_Framework_TestCase;
-use ReflectionClass;
-
-/**
- * Tests for {@see \Doctrine\Instantiator\Exception\UnexpectedValueException}
- *
- * @author Marco Pivetta <ocramius@gmail.com>
- *
- * @covers \Doctrine\Instantiator\Exception\UnexpectedValueException
- */
-class UnexpectedValueExceptionTest extends PHPUnit_Framework_TestCase
-{
-    public function testFromSerializationTriggeredException()
-    {
-        $reflectionClass = new ReflectionClass($this);
-        $previous        = new Exception();
-        $exception       = UnexpectedValueException::fromSerializationTriggeredException($reflectionClass, $previous);
-
-        $this->assertInstanceOf('Doctrine\\Instantiator\\Exception\\UnexpectedValueException', $exception);
-        $this->assertSame($previous, $exception->getPrevious());
-        $this->assertSame(
-            'An exception was raised while trying to instantiate an instance of "'
-            . __CLASS__  . '" via un-serialization',
-            $exception->getMessage()
-        );
-    }
-
-    public function testFromUncleanUnSerialization()
-    {
-        $reflection = new ReflectionClass('DoctrineTest\\InstantiatorTestAsset\\AbstractClassAsset');
-        $exception  = UnexpectedValueException::fromUncleanUnSerialization($reflection, 'foo', 123, 'bar', 456);
-
-        $this->assertInstanceOf('Doctrine\\Instantiator\\Exception\\UnexpectedValueException', $exception);
-        $this->assertSame(
-            'Could not produce an instance of "DoctrineTest\\InstantiatorTestAsset\\AbstractClassAsset" '
-            . 'via un-serialization, since an error was triggered in file "bar" at line "456"',
-            $exception->getMessage()
-        );
-
-        $previous = $exception->getPrevious();
-
-        $this->assertInstanceOf('Exception', $previous);
-        $this->assertSame('foo', $previous->getMessage());
-        $this->assertSame(123, $previous->getCode());
-    }
-}
diff --git a/vendor/doctrine/instantiator/tests/DoctrineTest/InstantiatorTest/InstantiatorTest.php b/vendor/doctrine/instantiator/tests/DoctrineTest/InstantiatorTest/InstantiatorTest.php
deleted file mode 100644
index 0a2cb93..0000000
--- a/vendor/doctrine/instantiator/tests/DoctrineTest/InstantiatorTest/InstantiatorTest.php
+++ /dev/null
@@ -1,219 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace DoctrineTest\InstantiatorTest;
-
-use Doctrine\Instantiator\Exception\UnexpectedValueException;
-use Doctrine\Instantiator\Instantiator;
-use PHPUnit_Framework_TestCase;
-use ReflectionClass;
-
-/**
- * Tests for {@see \Doctrine\Instantiator\Instantiator}
- *
- * @author Marco Pivetta <ocramius@gmail.com>
- *
- * @covers \Doctrine\Instantiator\Instantiator
- */
-class InstantiatorTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @var Instantiator
-     */
-    private $instantiator;
-
-    /**
-     * {@inheritDoc}
-     */
-    protected function setUp()
-    {
-        $this->instantiator = new Instantiator();
-    }
-
-    /**
-     * @param string $className
-     *
-     * @dataProvider getInstantiableClasses
-     */
-    public function testCanInstantiate($className)
-    {
-        $this->assertInstanceOf($className, $this->instantiator->instantiate($className));
-    }
-
-    /**
-     * @param string $className
-     *
-     * @dataProvider getInstantiableClasses
-     */
-    public function testInstantiatesSeparateInstances($className)
-    {
-        $instance1 = $this->instantiator->instantiate($className);
-        $instance2 = $this->instantiator->instantiate($className);
-
-        $this->assertEquals($instance1, $instance2);
-        $this->assertNotSame($instance1, $instance2);
-    }
-
-    public function testExceptionOnUnSerializationException()
-    {
-        if (defined('HHVM_VERSION')) {
-            $this->markTestSkipped(
-                'As of facebook/hhvm#3432, HHVM has no PDORow, and therefore '
-                . ' no internal final classes that cannot be instantiated'
-            );
-        }
-
-        $className = 'DoctrineTest\\InstantiatorTestAsset\\UnserializeExceptionArrayObjectAsset';
-
-        if (\PHP_VERSION_ID >= 50600) {
-            $className = 'PDORow';
-        }
-
-        if (\PHP_VERSION_ID === 50429 || \PHP_VERSION_ID === 50513) {
-            $className = 'DoctrineTest\\InstantiatorTestAsset\\SerializableArrayObjectAsset';
-        }
-
-        $this->setExpectedException('Doctrine\\Instantiator\\Exception\\UnexpectedValueException');
-
-        $this->instantiator->instantiate($className);
-    }
-
-    public function testNoticeOnUnSerializationException()
-    {
-        if (\PHP_VERSION_ID >= 50600) {
-            $this->markTestSkipped(
-                'PHP 5.6 supports `ReflectionClass#newInstanceWithoutConstructor()` for some internal classes'
-            );
-        }
-
-        try {
-            $this->instantiator->instantiate('DoctrineTest\\InstantiatorTestAsset\\WakeUpNoticesAsset');
-
-            $this->fail('No exception was raised');
-        } catch (UnexpectedValueException $exception) {
-            $wakeUpNoticesReflection = new ReflectionClass('DoctrineTest\\InstantiatorTestAsset\\WakeUpNoticesAsset');
-            $previous                = $exception->getPrevious();
-
-            $this->assertInstanceOf('Exception', $previous);
-
-            // in PHP 5.4.29 and PHP 5.5.13, this case is not a notice, but an exception being thrown
-            if (! (\PHP_VERSION_ID === 50429 || \PHP_VERSION_ID === 50513)) {
-                $this->assertSame(
-                    'Could not produce an instance of "DoctrineTest\\InstantiatorTestAsset\WakeUpNoticesAsset" '
-                    . 'via un-serialization, since an error was triggered in file "'
-                    . $wakeUpNoticesReflection->getFileName() . '" at line "36"',
-                    $exception->getMessage()
-                );
-
-                $this->assertSame('Something went bananas while un-serializing this instance', $previous->getMessage());
-                $this->assertSame(\E_USER_NOTICE, $previous->getCode());
-            }
-        }
-    }
-
-    /**
-     * @param string $invalidClassName
-     *
-     * @dataProvider getInvalidClassNames
-     */
-    public function testInstantiationFromNonExistingClass($invalidClassName)
-    {
-        $this->setExpectedException('Doctrine\\Instantiator\\Exception\\InvalidArgumentException');
-
-        $this->instantiator->instantiate($invalidClassName);
-    }
-
-    public function testInstancesAreNotCloned()
-    {
-        $className = 'TemporaryClass' . uniqid();
-
-        eval('namespace ' . __NAMESPACE__ . '; class ' . $className . '{}');
-
-        $instance = $this->instantiator->instantiate(__NAMESPACE__ . '\\' . $className);
-
-        $instance->foo = 'bar';
-
-        $instance2 = $this->instantiator->instantiate(__NAMESPACE__ . '\\' . $className);
-
-        $this->assertObjectNotHasAttribute('foo', $instance2);
-    }
-
-    /**
-     * Provides a list of instantiable classes (existing)
-     *
-     * @return string[][]
-     */
-    public function getInstantiableClasses()
-    {
-        $classes = array(
-            array('stdClass'),
-            array(__CLASS__),
-            array('Doctrine\\Instantiator\\Instantiator'),
-            array('Exception'),
-            array('PharException'),
-            array('DoctrineTest\\InstantiatorTestAsset\\SimpleSerializableAsset'),
-            array('DoctrineTest\\InstantiatorTestAsset\\ExceptionAsset'),
-            array('DoctrineTest\\InstantiatorTestAsset\\FinalExceptionAsset'),
-            array('DoctrineTest\\InstantiatorTestAsset\\PharExceptionAsset'),
-            array('DoctrineTest\\InstantiatorTestAsset\\UnCloneableAsset'),
-            array('DoctrineTest\\InstantiatorTestAsset\\XMLReaderAsset'),
-        );
-
-        if (\PHP_VERSION_ID === 50429 || \PHP_VERSION_ID === 50513) {
-            return $classes;
-        }
-
-        $classes = array_merge(
-            $classes,
-            array(
-                array('PharException'),
-                array('ArrayObject'),
-                array('DoctrineTest\\InstantiatorTestAsset\\ArrayObjectAsset'),
-                array('DoctrineTest\\InstantiatorTestAsset\\SerializableArrayObjectAsset'),
-            )
-        );
-
-        if (\PHP_VERSION_ID >= 50600) {
-            $classes[] = array('DoctrineTest\\InstantiatorTestAsset\\WakeUpNoticesAsset');
-            $classes[] = array('DoctrineTest\\InstantiatorTestAsset\\UnserializeExceptionArrayObjectAsset');
-        }
-
-        return $classes;
-    }
-
-    /**
-     * Provides a list of instantiable classes (existing)
-     *
-     * @return string[][]
-     */
-    public function getInvalidClassNames()
-    {
-        $classNames = array(
-            array(__CLASS__ . uniqid()),
-            array('Doctrine\\Instantiator\\InstantiatorInterface'),
-            array('DoctrineTest\\InstantiatorTestAsset\\AbstractClassAsset'),
-        );
-
-        if (\PHP_VERSION_ID >= 50400) {
-            $classNames[] = array('DoctrineTest\\InstantiatorTestAsset\\SimpleTraitAsset');
-        }
-
-        return $classNames;
-    }
-}
diff --git a/vendor/doctrine/instantiator/tests/DoctrineTest/InstantiatorTestAsset/AbstractClassAsset.php b/vendor/doctrine/instantiator/tests/DoctrineTest/InstantiatorTestAsset/AbstractClassAsset.php
deleted file mode 100644
index fbe28dd..0000000
--- a/vendor/doctrine/instantiator/tests/DoctrineTest/InstantiatorTestAsset/AbstractClassAsset.php
+++ /dev/null
@@ -1,29 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace DoctrineTest\InstantiatorTestAsset;
-
-/**
- * A simple asset for an abstract class
- *
- * @author Marco Pivetta <ocramius@gmail.com>
- */
-abstract class AbstractClassAsset
-{
-}
diff --git a/vendor/doctrine/instantiator/tests/DoctrineTest/InstantiatorTestAsset/ArrayObjectAsset.php b/vendor/doctrine/instantiator/tests/DoctrineTest/InstantiatorTestAsset/ArrayObjectAsset.php
deleted file mode 100644
index 56146d7..0000000
--- a/vendor/doctrine/instantiator/tests/DoctrineTest/InstantiatorTestAsset/ArrayObjectAsset.php
+++ /dev/null
@@ -1,41 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace DoctrineTest\InstantiatorTestAsset;
-
-use ArrayObject;
-use BadMethodCallException;
-
-/**
- * Test asset that extends an internal PHP class
- *
- * @author Marco Pivetta <ocramius@gmail.com>
- */
-class ArrayObjectAsset extends ArrayObject
-{
-    /**
-     * Constructor - should not be called
-     *
-     * @throws BadMethodCallException
-     */
-    public function __construct()
-    {
-        throw new BadMethodCallException('Not supposed to be called!');
-    }
-}
diff --git a/vendor/doctrine/instantiator/tests/DoctrineTest/InstantiatorTestAsset/ExceptionAsset.php b/vendor/doctrine/instantiator/tests/DoctrineTest/InstantiatorTestAsset/ExceptionAsset.php
deleted file mode 100644
index 43bbe46..0000000
--- a/vendor/doctrine/instantiator/tests/DoctrineTest/InstantiatorTestAsset/ExceptionAsset.php
+++ /dev/null
@@ -1,41 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace DoctrineTest\InstantiatorTestAsset;
-
-use BadMethodCallException;
-use Exception;
-
-/**
- * Test asset that extends an internal PHP base exception
- *
- * @author Marco Pivetta <ocramius@gmail.com>
- */
-class ExceptionAsset extends Exception
-{
-    /**
-     * Constructor - should not be called
-     *
-     * @throws BadMethodCallException
-     */
-    public function __construct()
-    {
-        throw new BadMethodCallException('Not supposed to be called!');
-    }
-}
diff --git a/vendor/doctrine/instantiator/tests/DoctrineTest/InstantiatorTestAsset/FinalExceptionAsset.php b/vendor/doctrine/instantiator/tests/DoctrineTest/InstantiatorTestAsset/FinalExceptionAsset.php
deleted file mode 100644
index 7d268f5..0000000
--- a/vendor/doctrine/instantiator/tests/DoctrineTest/InstantiatorTestAsset/FinalExceptionAsset.php
+++ /dev/null
@@ -1,41 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace DoctrineTest\InstantiatorTestAsset;
-
-use BadMethodCallException;
-use Exception;
-
-/**
- * Test asset that extends an internal PHP base exception
- *
- * @author Marco Pivetta <ocramius@gmail.com>
- */
-final class FinalExceptionAsset extends Exception
-{
-    /**
-     * Constructor - should not be called
-     *
-     * @throws BadMethodCallException
-     */
-    public function __construct()
-    {
-        throw new BadMethodCallException('Not supposed to be called!');
-    }
-}
diff --git a/vendor/doctrine/instantiator/tests/DoctrineTest/InstantiatorTestAsset/PharAsset.php b/vendor/doctrine/instantiator/tests/DoctrineTest/InstantiatorTestAsset/PharAsset.php
deleted file mode 100644
index 553fd56..0000000
--- a/vendor/doctrine/instantiator/tests/DoctrineTest/InstantiatorTestAsset/PharAsset.php
+++ /dev/null
@@ -1,41 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace DoctrineTest\InstantiatorTestAsset;
-
-use BadMethodCallException;
-use Phar;
-
-/**
- * Test asset that extends an internal PHP class
- *
- * @author Marco Pivetta <ocramius@gmail.com>
- */
-class PharAsset extends Phar
-{
-    /**
-     * Constructor - should not be called
-     *
-     * @throws BadMethodCallException
-     */
-    public function __construct()
-    {
-        throw new BadMethodCallException('Not supposed to be called!');
-    }
-}
diff --git a/vendor/doctrine/instantiator/tests/DoctrineTest/InstantiatorTestAsset/PharExceptionAsset.php b/vendor/doctrine/instantiator/tests/DoctrineTest/InstantiatorTestAsset/PharExceptionAsset.php
deleted file mode 100644
index 42bf73e..0000000
--- a/vendor/doctrine/instantiator/tests/DoctrineTest/InstantiatorTestAsset/PharExceptionAsset.php
+++ /dev/null
@@ -1,44 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace DoctrineTest\InstantiatorTestAsset;
-
-use BadMethodCallException;
-use PharException;
-
-/**
- * Test asset that extends an internal PHP class
- * This class should be serializable without problems
- * and without getting the "Erroneous data format for unserializing"
- * error
- *
- * @author Marco Pivetta <ocramius@gmail.com>
- */
-class PharExceptionAsset extends PharException
-{
-    /**
-     * Constructor - should not be called
-     *
-     * @throws BadMethodCallException
-     */
-    public function __construct()
-    {
-        throw new BadMethodCallException('Not supposed to be called!');
-    }
-}
diff --git a/vendor/doctrine/instantiator/tests/DoctrineTest/InstantiatorTestAsset/SerializableArrayObjectAsset.php b/vendor/doctrine/instantiator/tests/DoctrineTest/InstantiatorTestAsset/SerializableArrayObjectAsset.php
deleted file mode 100644
index ba19aaf..0000000
--- a/vendor/doctrine/instantiator/tests/DoctrineTest/InstantiatorTestAsset/SerializableArrayObjectAsset.php
+++ /dev/null
@@ -1,62 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace DoctrineTest\InstantiatorTestAsset;
-
-use ArrayObject;
-use BadMethodCallException;
-use Serializable;
-
-/**
- * Serializable test asset that also extends an internal class
- *
- * @author Marco Pivetta <ocramius@gmail.com>
- */
-class SerializableArrayObjectAsset extends ArrayObject implements Serializable
-{
-    /**
-     * Constructor - should not be called
-     *
-     * @throws BadMethodCallException
-     */
-    public function __construct()
-    {
-        throw new BadMethodCallException('Not supposed to be called!');
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function serialize()
-    {
-        return '';
-    }
-
-    /**
-     * {@inheritDoc}
-     *
-     * Should not be called
-     *
-     * @throws BadMethodCallException
-     */
-    public function unserialize($serialized)
-    {
-        throw new BadMethodCallException('Not supposed to be called!');
-    }
-}
diff --git a/vendor/doctrine/instantiator/tests/DoctrineTest/InstantiatorTestAsset/SimpleSerializableAsset.php b/vendor/doctrine/instantiator/tests/DoctrineTest/InstantiatorTestAsset/SimpleSerializableAsset.php
deleted file mode 100644
index 39f84a6..0000000
--- a/vendor/doctrine/instantiator/tests/DoctrineTest/InstantiatorTestAsset/SimpleSerializableAsset.php
+++ /dev/null
@@ -1,61 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace DoctrineTest\InstantiatorTestAsset;
-
-use BadMethodCallException;
-use Serializable;
-
-/**
- * Base serializable test asset
- *
- * @author Marco Pivetta <ocramius@gmail.com>
- */
-class SimpleSerializableAsset implements Serializable
-{
-    /**
-     * Constructor - should not be called
-     *
-     * @throws BadMethodCallException
-     */
-    public function __construct()
-    {
-        throw new BadMethodCallException('Not supposed to be called!');
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function serialize()
-    {
-        return '';
-    }
-
-    /**
-     * {@inheritDoc}
-     *
-     * Should not be called
-     *
-     * @throws BadMethodCallException
-     */
-    public function unserialize($serialized)
-    {
-        throw new BadMethodCallException('Not supposed to be called!');
-    }
-}
diff --git a/vendor/doctrine/instantiator/tests/DoctrineTest/InstantiatorTestAsset/SimpleTraitAsset.php b/vendor/doctrine/instantiator/tests/DoctrineTest/InstantiatorTestAsset/SimpleTraitAsset.php
deleted file mode 100644
index 04e7806..0000000
--- a/vendor/doctrine/instantiator/tests/DoctrineTest/InstantiatorTestAsset/SimpleTraitAsset.php
+++ /dev/null
@@ -1,29 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace DoctrineTest\InstantiatorTestAsset;
-
-/**
- * A simple trait with no attached logic
- *
- * @author Marco Pivetta <ocramius@gmail.com>
- */
-trait SimpleTraitAsset
-{
-}
diff --git a/vendor/doctrine/instantiator/tests/DoctrineTest/InstantiatorTestAsset/UnCloneableAsset.php b/vendor/doctrine/instantiator/tests/DoctrineTest/InstantiatorTestAsset/UnCloneableAsset.php
deleted file mode 100644
index 7d03bda..0000000
--- a/vendor/doctrine/instantiator/tests/DoctrineTest/InstantiatorTestAsset/UnCloneableAsset.php
+++ /dev/null
@@ -1,50 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace DoctrineTest\InstantiatorTestAsset;
-
-use BadMethodCallException;
-
-/**
- * Base un-cloneable asset
- *
- * @author Marco Pivetta <ocramius@gmail.com>
- */
-class UnCloneableAsset
-{
-    /**
-     * Constructor - should not be called
-     *
-     * @throws BadMethodCallException
-     */
-    public function __construct()
-    {
-        throw new BadMethodCallException('Not supposed to be called!');
-    }
-
-    /**
-     * Magic `__clone` - should not be invoked
-     *
-     * @throws BadMethodCallException
-     */
-    public function __clone()
-    {
-        throw new BadMethodCallException('Not supposed to be called!');
-    }
-}
diff --git a/vendor/doctrine/instantiator/tests/DoctrineTest/InstantiatorTestAsset/UnserializeExceptionArrayObjectAsset.php b/vendor/doctrine/instantiator/tests/DoctrineTest/InstantiatorTestAsset/UnserializeExceptionArrayObjectAsset.php
deleted file mode 100644
index b348a40..0000000
--- a/vendor/doctrine/instantiator/tests/DoctrineTest/InstantiatorTestAsset/UnserializeExceptionArrayObjectAsset.php
+++ /dev/null
@@ -1,39 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace DoctrineTest\InstantiatorTestAsset;
-
-use ArrayObject;
-use BadMethodCallException;
-
-/**
- * A simple asset for an abstract class
- *
- * @author Marco Pivetta <ocramius@gmail.com>
- */
-class UnserializeExceptionArrayObjectAsset extends ArrayObject
-{
-    /**
-     * {@inheritDoc}
-     */
-    public function __wakeup()
-    {
-        throw new BadMethodCallException();
-    }
-}
diff --git a/vendor/doctrine/instantiator/tests/DoctrineTest/InstantiatorTestAsset/WakeUpNoticesAsset.php b/vendor/doctrine/instantiator/tests/DoctrineTest/InstantiatorTestAsset/WakeUpNoticesAsset.php
deleted file mode 100644
index 18dc671..0000000
--- a/vendor/doctrine/instantiator/tests/DoctrineTest/InstantiatorTestAsset/WakeUpNoticesAsset.php
+++ /dev/null
@@ -1,38 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace DoctrineTest\InstantiatorTestAsset;
-
-use ArrayObject;
-
-/**
- * A simple asset for an abstract class
- *
- * @author Marco Pivetta <ocramius@gmail.com>
- */
-class WakeUpNoticesAsset extends ArrayObject
-{
-    /**
-     * Wakeup method called after un-serialization
-     */
-    public function __wakeup()
-    {
-        trigger_error('Something went bananas while un-serializing this instance');
-    }
-}
diff --git a/vendor/doctrine/instantiator/tests/DoctrineTest/InstantiatorTestAsset/XMLReaderAsset.php b/vendor/doctrine/instantiator/tests/DoctrineTest/InstantiatorTestAsset/XMLReaderAsset.php
deleted file mode 100644
index 39ee699..0000000
--- a/vendor/doctrine/instantiator/tests/DoctrineTest/InstantiatorTestAsset/XMLReaderAsset.php
+++ /dev/null
@@ -1,41 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace DoctrineTest\InstantiatorTestAsset;
-
-use BadMethodCallException;
-use XMLReader;
-
-/**
- * Test asset that extends an internal PHP class
- *
- * @author Dave Marshall <dave@atst.io>
- */
-class XMLReaderAsset extends XMLReader
-{
-    /**
-     * Constructor - should not be called
-     *
-     * @throws BadMethodCallException
-     */
-    public function __construct()
-    {
-        throw new BadMethodCallException('Not supposed to be called!');
-    }
-}
diff --git a/vendor/egulias/email-validator/documentation/Other.md b/vendor/egulias/email-validator/documentation/Other.md
deleted file mode 100644
index 9ec4bd9..0000000
--- a/vendor/egulias/email-validator/documentation/Other.md
+++ /dev/null
@@ -1,69 +0,0 @@
-Email length
-------------
-http://tools.ietf.org/html/rfc5321#section-4.1.2
-  Forward-path   = Path
-
-  Path           = "<" [ A-d-l ":" ] Mailbox ">"
-
-http://tools.ietf.org/html/rfc5321#section-4.5.3.1.3
-http://tools.ietf.org/html/rfc1035#section-2.3.4
-
-DNS
----
-
-http://tools.ietf.org/html/rfc5321#section-2.3.5
-  Names that can
-  be resolved to MX RRs or address (i.e., A or AAAA) RRs (as discussed
-  in Section 5) are permitted, as are CNAME RRs whose targets can be
-  resolved, in turn, to MX or address RRs.
-
-http://tools.ietf.org/html/rfc5321#section-5.1
-  The lookup first attempts to locate an MX record associated with the
-  name.  If a CNAME record is found, the resulting name is processed as
-  if it were the initial name. ... If an empty list of MXs is returned,
-  the address is treated as if it was associated with an implicit MX
-  RR, with a preference of 0, pointing to that host.
-
-is_email() author's note: We will regard the existence of a CNAME to be
-sufficient evidence of the domain's existence. For performance reasons
-we will not repeat the DNS lookup for the CNAME's target, but we will
-raise a warning because we didn't immediately find an MX record.
-
-Check for TLD addresses
------------------------
-TLD addresses are specifically allowed in RFC 5321 but they are
-unusual to say the least. We will allocate a separate
-status to these addresses on the basis that they are more likely
-to be typos than genuine addresses (unless we've already
-established that the domain does have an MX record)
-
-http://tools.ietf.org/html/rfc5321#section-2.3.5
-  In the case
-  of a top-level domain used by itself in an email address, a single
-  string is used without any dots.  This makes the requirement,
-  described in more detail below, that only fully-qualified domain
-  names appear in SMTP transactions on the public Internet,
-  particularly important where top-level domains are involved.
-
-TLD format
-----------
-The format of TLDs has changed a number of times. The standards
-used by IANA have been largely ignored by ICANN, leading to
-confusion over the standards being followed. These are not defined
-anywhere, except as a general component of a DNS host name (a label).
-However, this could potentially lead to 123.123.123.123 being a
-valid DNS name (rather than an IP address) and thereby creating
-an ambiguity. The most authoritative statement on TLD formats that
-the author can find is in a (rejected!) erratum to RFC 1123
-submitted by John Klensin, the author of RFC 5321:
-
-http://www.rfc-editor.org/errata_search.php?rfc=1123&eid=1353
-  However, a valid host name can never have the dotted-decimal
-  form #.#.#.#, since this change does not permit the highest-level
-  component label to start with a digit even if it is not all-numeric.
-
-Comments
---------
-Comments at the start of the domain are deprecated in the text
-Comments at the start of a subdomain are obs-domain
-(http://tools.ietf.org/html/rfc5322#section-3.4.1)
diff --git a/vendor/egulias/email-validator/documentation/RFC5321BNF.html b/vendor/egulias/email-validator/documentation/RFC5321BNF.html
deleted file mode 100644
index 2313f01..0000000
--- a/vendor/egulias/email-validator/documentation/RFC5321BNF.html
+++ /dev/null
@@ -1,89 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-
-<head>
-<meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
-<title>The BNF from RFC 5321 defining parts of a valid SMTP address</title>
-</head>
-
-<body>
-<pre style="font-size:11px;">
-   Mailbox        = Local-part "@" ( Domain / address-literal )
-
-   Local-part     = Dot-string / Quoted-string
-                  ; MAY be case-sensitive
-
-
-   Dot-string     = Atom *("."  Atom)
-
-   Atom           = 1*atext
-
-   Quoted-string  = DQUOTE *QcontentSMTP DQUOTE
-
-   QcontentSMTP   = qtextSMTP / quoted-pairSMTP
-
-   quoted-pairSMTP  = %d92 %d32-126
-                    ; i.e., backslash followed by any ASCII
-                    ; graphic (including itself) or SPace
-
-   qtextSMTP      = %d32-33 / %d35-91 / %d93-126
-                  ; i.e., within a quoted string, any
-                  ; ASCII graphic or space is permitted
-                  ; without blackslash-quoting except
-                  ; double-quote and the backslash itself.
-
-   Domain         = sub-domain *("." sub-domain)
-
-   sub-domain     = Let-dig [Ldh-str]
-
-   Let-dig        = ALPHA / DIGIT
-
-   Ldh-str        = *( ALPHA / DIGIT / "-" ) Let-dig
-
-   address-literal  = "[" ( IPv4-address-literal /
-                    IPv6-address-literal /
-                    General-address-literal ) "]"
-                    ; See Section 4.1.3
-
-   IPv4-address-literal  = Snum 3("."  Snum)
-
-   IPv6-address-literal  = "IPv6:" IPv6-addr
-
-   General-address-literal  = Standardized-tag ":" 1*dcontent
-
-   Standardized-tag  = Ldh-str
-                     ; Standardized-tag MUST be specified in a
-                     ; Standards-Track RFC and registered with IANA
-
-   dcontent       = %d33-90 / ; Printable US-ASCII
-                  %d94-126 ; excl. "[", "\", "]"
-
-   Snum           = 1*3DIGIT
-                  ; representing a decimal integer
-                  ; value in the range 0 through 255
-
-   IPv6-addr      = IPv6-full / IPv6-comp / IPv6v4-full / IPv6v4-comp
-
-   IPv6-hex       = 1*4HEXDIG
-
-   IPv6-full      = IPv6-hex 7(":" IPv6-hex)
-
-   IPv6-comp      = [IPv6-hex *5(":" IPv6-hex)] "::"
-                  [IPv6-hex *5(":" IPv6-hex)]
-                  ; The "::" represents at least 2 16-bit groups of
-                  ; zeros.  No more than 6 groups in addition to the
-                  ; "::" may be present.
-
-   IPv6v4-full    = IPv6-hex 5(":" IPv6-hex) ":" IPv4-address-literal
-
-   IPv6v4-comp    = [IPv6-hex *3(":" IPv6-hex)] "::"
-                  [IPv6-hex *3(":" IPv6-hex) ":"]
-                  IPv4-address-literal
-                  ; The "::" represents at least 2 16-bit groups of
-                  ; zeros.  No more than 4 groups in addition to the
-                  ; "::" and IPv4-address-literal may be present.
-
-</pre>
-</body>
-
-</html>
diff --git a/vendor/egulias/email-validator/documentation/RFC5322BNF.html b/vendor/egulias/email-validator/documentation/RFC5322BNF.html
deleted file mode 100644
index e2f8fd7..0000000
--- a/vendor/egulias/email-validator/documentation/RFC5322BNF.html
+++ /dev/null
@@ -1,141 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-
-<head>
-<meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
-<title>The BNF from RFC 5322 defining parts of a valid internet message address</title>
-</head>
-
-<body>
-<pre style="font-size:11px;">
-   addr-spec       =   local-part "@" domain
-
-   local-part      =   dot-atom / quoted-string / obs-local-part
-
-   dot-atom        =   [CFWS] dot-atom-text [CFWS]
-
-   CFWS            =   (1*([FWS] comment) [FWS]) / FWS
-
-   FWS             =   ([*WSP CRLF] 1*WSP) /  obs-FWS
-                                          ; Folding white space
-
-   WSP             =   SP / HTAB          ; white space
-
-   obs-FWS         =   1*([CRLF] WSP)     ; As amended in erratum #1908
-
-   ctext           =   %d33-39 /          ; Printable US-ASCII
-                       %d42-91 /          ;  characters not including
-                       %d93-126 /         ;  "(", ")", or "\"
-                       obs-ctext
-
-   obs-ctext       =   obs-NO-WS-CTL
-   ccontent        =   ctext / quoted-pair / comment
-
-   comment         =   "(" *([FWS] ccontent) [FWS] ")"
-
-   dot-atom-text   =   1*atext *("." 1*atext)
-
-   atext           =   ALPHA / DIGIT /    ; Printable US-ASCII
-                       "!" / "#" /        ;  characters not including
-                       "$" / "%" /        ;  specials.  Used for atoms.
-                       "&amp;" / "'" /
-                       "*" / "+" /
-                       "-" / "/" /
-                       "=" / "?" /
-                       "^" / "_" /
-                       "`" / "{" /
-                       "|" / "}" /
-                       "~"
-
-   specials        =   "(" / ")" /        ; Special characters that do
-                       "&lt;" / "&gt;" /        ;  not appear in atext
-                       "[" / "]" /
-                       ":" / ";" /
-                       "@" / "\" /
-                       "," / "." /
-                       DQUOTE
-
-   quoted-string   =   [CFWS]
-                       DQUOTE *([FWS] qcontent) [FWS] DQUOTE
-                       [CFWS]
-
-   qcontent        =   qtext / quoted-pair
-
-   qtext           =   %d33 /             ; Printable US-ASCII
-                       %d35-91 /          ;  characters not including
-                       %d93-126 /         ;  "\" or the quote character
-                       obs-qtext
-
-   obs-qtext       =   obs-NO-WS-CTL
-
-   obs-NO-WS-CTL   =   %d1-8 /            ; US-ASCII control
-                       %d11 /             ;  characters that do not
-                       %d12 /             ;  include the carriage
-                       %d14-31 /          ;  return, line feed, and
-                       %d127              ;  white space characters
-
-   quoted-pair     =   ("\" (VCHAR / WSP)) / obs-qp
-
-   VCHAR           =   %x21-7E            ; visible (printing) characters
-
-   obs-qp          =   "\" (%d0 / obs-NO-WS-CTL / LF / CR)
-
-   obs-local-part  =   word *("." word)
-
-   word            =   atom / quoted-string
-
-   atom            =   [CFWS] 1*atext [CFWS]
-
-   domain          =   dot-atom / domain-literal / obs-domain
-
-   domain-literal  =   [CFWS] "[" *([FWS] dtext) [FWS] "]" [CFWS]
-
-   dtext           =   %d33-90 /          ; Printable US-ASCII
-                       %d94-126 /         ;  characters not including
-                       obs-dtext          ;  "[", "]", or "\"
-
-   obs-dtext       =   obs-NO-WS-CTL / quoted-pair
-
-   obs-domain      =   atom *("." atom)
-
-NB For SMTP mail, the domain-literal is restricted by RFC5321 as follows:
-
-   Mailbox        = Local-part "@" ( Domain / address-literal )
-
-   address-literal  = "[" ( IPv4-address-literal /
-                    IPv6-address-literal /
-                    General-address-literal ) "]"
-
-   IPv4-address-literal  = Snum 3("."  Snum)
-
-   IPv6-address-literal  = "IPv6:" IPv6-addr
-
-   Snum           = 1*3DIGIT
-                  ; representing a decimal integer
-                  ; value in the range 0 through 255
-
-   IPv6-addr      = IPv6-full / IPv6-comp / IPv6v4-full / IPv6v4-comp
-
-   IPv6-hex       = 1*4HEXDIG
-
-   IPv6-full      = IPv6-hex 7(":" IPv6-hex)
-
-   IPv6-comp      = [IPv6-hex *5(":" IPv6-hex)] "::"
-                  [IPv6-hex *5(":" IPv6-hex)]
-                  ; The "::" represents at least 2 16-bit groups of
-                  ; zeros.  No more than 6 groups in addition to the
-                  ; "::" may be present.
-
-   IPv6v4-full    = IPv6-hex 5(":" IPv6-hex) ":" IPv4-address-literal
-
-   IPv6v4-comp    = [IPv6-hex *3(":" IPv6-hex)] "::"
-                  [IPv6-hex *3(":" IPv6-hex) ":"]
-                  IPv4-address-literal
-                  ; The "::" represents at least 2 16-bit groups of
-                  ; zeros.  No more than 4 groups in addition to the
-                  ; "::" and IPv4-address-literal may be present.
-
-</pre>
-</body>
-
-</html>
diff --git a/vendor/egulias/email-validator/tests/bootstrap.php b/vendor/egulias/email-validator/tests/bootstrap.php
deleted file mode 100644
index 676c4b1..0000000
--- a/vendor/egulias/email-validator/tests/bootstrap.php
+++ /dev/null
@@ -1,8 +0,0 @@
-<?php
-
-if ( ! is_file($autoloadFile = __DIR__.'/../vendor/autoload.php')) {
-    echo 'Could not find "vendor/autoload.php". Did you forget to run "composer install --dev"?'.PHP_EOL;
-    exit(1);
-}
-
-require_once $autoloadFile;
diff --git a/vendor/egulias/email-validator/tests/egulias/Performance/AgainstFilterVar.php b/vendor/egulias/email-validator/tests/egulias/Performance/AgainstFilterVar.php
deleted file mode 100644
index 3905473..0000000
--- a/vendor/egulias/email-validator/tests/egulias/Performance/AgainstFilterVar.php
+++ /dev/null
@@ -1,33 +0,0 @@
-<?php
-
-use Egulias\EmailValidator\EmailValidator;
-
-require __DIR__ . '/../../bootstrap.php';
-
-$iterations = 10000;
-
-$testingMail = 'fabien@symfony.com';
-echo 'Testing ' . $iterations . ' iterations with ' . $testingMail . PHP_EOL;
-
-$a = microtime(true);
-for ($i = 0; $i < $iterations; $i++) {
-    $isValid = filter_var($testingMail, FILTER_VALIDATE_EMAIL);
-}
-$b = microtime(true);
-echo ($b - $a) . ' seconds with filter_var' . PHP_EOL;
-
-$a = microtime(true);
-for ($i = 0; $i < $iterations; $i++) {
-    $validator = new EmailValidator();
-    $isValid = $validator->isValid($testingMail);
-}
-$b = microtime(true);
-echo ($b - $a) . ' seconds with EmailValidator + instantiation' . PHP_EOL;
-
-$a = microtime(true);
-$validator = new EmailValidator();
-for ($i = 0; $i < $iterations; $i++) {
-    $isValid = $validator->isValid($testingMail);
-}
-$b = microtime(true);
-echo ($b - $a) . ' seconds with EmailValidator once instanced' . PHP_EOL;
diff --git a/vendor/egulias/email-validator/tests/egulias/Performance/AgainstOldIsemail.php b/vendor/egulias/email-validator/tests/egulias/Performance/AgainstOldIsemail.php
deleted file mode 100644
index 99476c1..0000000
--- a/vendor/egulias/email-validator/tests/egulias/Performance/AgainstOldIsemail.php
+++ /dev/null
@@ -1,34 +0,0 @@
-<?php
-
-use Egulias\EmailValidator\EmailValidator;
-
-require __DIR__ . '/../../bootstrap.php';
-require __DIR__ . '/../../../../isemail/is_email.php';
-
-$iterations = 10000;
-
-$testingMail = 'fabien@symfony.com';
-echo 'Testing ' . $iterations . ' iterations with ' . $testingMail . PHP_EOL;
-
-$a = microtime(true);
-for ($i = 0; $i < $iterations; $i++) {
-    $isValid = is_email($testingMail);
-}
-$b = microtime(true);
-echo ($b - $a) . ' seconds with is_email' . PHP_EOL;
-
-$a = microtime(true);
-for ($i = 0; $i < $iterations; $i++) {
-    $validator = new EmailValidator();
-    $isValid = $validator->isValid($testingMail);
-}
-$b = microtime(true);
-echo ($b - $a) . ' seconds with EmailValidator + instantiation' . PHP_EOL;
-
-$a = microtime(true);
-$validator = new EmailValidator();
-for ($i = 0; $i < $iterations; $i++) {
-    $isValid = $validator->isValid($testingMail);
-}
-$b = microtime(true);
-echo ($b - $a) . ' seconds with EmailValidator once instanced' . PHP_EOL;
diff --git a/vendor/egulias/email-validator/tests/egulias/Tests/EmailValidator/EmailLexerTest.php b/vendor/egulias/email-validator/tests/egulias/Tests/EmailValidator/EmailLexerTest.php
deleted file mode 100644
index d5389ef..0000000
--- a/vendor/egulias/email-validator/tests/egulias/Tests/EmailValidator/EmailLexerTest.php
+++ /dev/null
@@ -1,161 +0,0 @@
-<?php
-
-namespace Egulias\EmailValidator\Tests;
-
-use Egulias\EmailValidator\EmailLexer;
-
-class EmailLexerTests extends \PHPUnit_Framework_TestCase
-{
-
-    public function testLexerExtendsLib()
-    {
-        $lexer = new EmailLexer();
-        $this->assertInstanceOf('Doctrine\Common\Lexer\AbstractLexer', $lexer);
-    }
-
-    /**
-     *  @dataProvider getTokens
-     *
-     */
-    public function testLexerTokens($str, $token)
-    {
-        $lexer = new EmailLexer();
-        $lexer->setInput($str);
-        $lexer->moveNext();
-        $lexer->moveNext();
-        $this->assertEquals($token, $lexer->token['type']);
-    }
-
-    public function testLexerParsesMultipleSpaces()
-    {
-        $lexer = new EmailLexer();
-        $lexer->setInput('  ');
-        $lexer->moveNext();
-        $lexer->moveNext();
-        $this->assertEquals(EmailLexer::S_SP, $lexer->token['type']);
-        $lexer->moveNext();
-        $this->assertEquals(EmailLexer::S_SP, $lexer->token['type']);
-    }
-
-    /**
-     * @dataProvider invalidUTF8CharsProvider
-     */
-    public function testLexerParsesInvalidUTF8($char)
-    {
-        $lexer = new EmailLexer();
-        $lexer->setInput($char);
-        $lexer->moveNext();
-        $lexer->moveNext();
-
-        $this->assertEquals(EmailLexer::INVALID, $lexer->token['type']);
-    }
-
-    public function invalidUTF8CharsProvider()
-    {
-        $chars = array();
-        for ($i = 0; $i < 0x100; ++$i) {
-            $c = $this->utf8Chr($i);
-            if (preg_match('/(?=\p{Cc})(?=[^\t\n\n\r])/u', $c) && !preg_match('/\x{0000}/u', $c)) {
-                $chars[] = array($c);
-            }
-        }
-
-        return $chars;
-    }
-
-    protected function utf8Chr($code_point)
-    {
-
-        if ($code_point < 0 || 0x10FFFF < $code_point || (0xD800 <= $code_point && $code_point <= 0xDFFF)) {
-            return '';
-        }
-
-        if ($code_point < 0x80) {
-            $hex[0] = $code_point;
-            $ret = chr($hex[0]);
-        } elseif ($code_point < 0x800) {
-            $hex[0] = 0x1C0 | $code_point >> 6;
-            $hex[1] = 0x80  | $code_point & 0x3F;
-            $ret = chr($hex[0]).chr($hex[1]);
-        } elseif ($code_point < 0x10000) {
-            $hex[0] = 0xE0 | $code_point >> 12;
-            $hex[1] = 0x80 | $code_point >> 6 & 0x3F;
-            $hex[2] = 0x80 | $code_point & 0x3F;
-            $ret = chr($hex[0]).chr($hex[1]).chr($hex[2]);
-        } else {
-            $hex[0] = 0xF0 | $code_point >> 18;
-            $hex[1] = 0x80 | $code_point >> 12 & 0x3F;
-            $hex[2] = 0x80 | $code_point >> 6 & 0x3F;
-            $hex[3] = 0x80 | $code_point  & 0x3F;
-            $ret = chr($hex[0]).chr($hex[1]).chr($hex[2]).chr($hex[3]);
-        }
-
-        return $ret;
-    }
-
-    public function testLexerForTab()
-    {
-        $lexer = new EmailLexer();
-        $lexer->setInput("foo\tbar");
-        $lexer->moveNext();
-        $lexer->skipUntil(EmailLexer::S_HTAB);
-        $lexer->moveNext();
-        $this->assertEquals(EmailLexer::S_HTAB, $lexer->token['type']);
-    }
-
-    public function testLexerForUTF8()
-    {
-        $lexer = new EmailLexer();
-        $lexer->setInput("áÇ@bar.com");
-        $lexer->moveNext();
-        $lexer->moveNext();
-        $this->assertEquals(EmailLexer::GENERIC, $lexer->token['type']);
-        $lexer->moveNext();
-        $this->assertEquals(EmailLexer::GENERIC, $lexer->token['type']);
-    }
-
-    public function testLexerSearchToken()
-    {
-        $lexer = new EmailLexer();
-        $lexer->setInput("foo\tbar");
-        $lexer->moveNext();
-        $this->assertTrue($lexer->find(EmailLexer::S_HTAB));
-    }
-
-    public function getTokens()
-    {
-        return array(
-            array("foo", EmailLexer::GENERIC),
-            array("\r", EmailLexer::S_CR),
-            array("\t", EmailLexer::S_HTAB),
-            array("\r\n", EmailLexer::CRLF),
-            array("\n", EmailLexer::S_LF),
-            array(" ", EmailLexer::S_SP),
-            array("@", EmailLexer::S_AT),
-            array("IPv6", EmailLexer::S_IPV6TAG),
-            array("::", EmailLexer::S_DOUBLECOLON),
-            array(":", EmailLexer::S_COLON),
-            array(".", EmailLexer::S_DOT),
-            array("\"", EmailLexer::S_DQUOTE),
-            array("-", EmailLexer::S_HYPHEN),
-            array("\\", EmailLexer::S_BACKSLASH),
-            array("/", EmailLexer::S_SLASH),
-            array("(", EmailLexer::S_OPENPARENTHESIS),
-            array(")", EmailLexer::S_CLOSEPARENTHESIS),
-            array('<', EmailLexer::S_LOWERTHAN),
-            array('>', EmailLexer::S_GREATERTHAN),
-            array('[', EmailLexer::S_OPENBRACKET),
-            array(']', EmailLexer::S_CLOSEBRACKET),
-            array(';', EmailLexer::S_SEMICOLON),
-            array(',', EmailLexer::S_COMMA),
-            array('<', EmailLexer::S_LOWERTHAN),
-            array('>', EmailLexer::S_GREATERTHAN),
-            array('{', EmailLexer::S_OPENQBRACKET),
-            array('}', EmailLexer::S_CLOSEQBRACKET),
-            array('',  EmailLexer::S_EMPTY),
-            array(chr(31),  EmailLexer::INVALID),
-            array(chr(226),  EmailLexer::GENERIC),
-            array(chr(0),  EmailLexer::C_NUL)
-        );
-    }
-}
diff --git a/vendor/egulias/email-validator/tests/egulias/Tests/EmailValidator/EmailValidatorTest.php b/vendor/egulias/email-validator/tests/egulias/Tests/EmailValidator/EmailValidatorTest.php
deleted file mode 100644
index 1491df7..0000000
--- a/vendor/egulias/email-validator/tests/egulias/Tests/EmailValidator/EmailValidatorTest.php
+++ /dev/null
@@ -1,375 +0,0 @@
-<?php
-
-namespace Egulias\Tests\EmailValidator;
-
-use Egulias\EmailValidator\EmailValidator;
-
-class EmailValidatorTest extends \PHPUnit_Framework_TestCase
-{
-    protected $validator;
-
-    protected function setUp()
-    {
-        $this->validator = new EmailValidator();
-    }
-
-    protected function tearDown()
-    {
-        $this->validator = null;
-    }
-
-    /**
-     * @dataProvider getValidEmails
-     */
-    public function testValidEmails($email)
-    {
-        $this->assertTrue($this->validator->isValid($email));
-    }
-
-    public function testInvalidUTF8Email()
-    {
-        $validator = new EmailValidator;
-        $email     = "\x80\x81\x82@\x83\x84\x85.\x86\x87\x88";
-
-        $this->assertFalse($validator->isValid($email));
-    }
-
-    public function getValidEmails()
-    {
-        return array(
-            array('â@iana.org'),
-            array('fabien@symfony.com'),
-            array('example@example.co.uk'),
-            array('fabien_potencier@example.fr'),
-            array('example@localhost'),
-            array('fab\'ien@symfony.com'),
-            array('fab\ ien@symfony.com'),
-            array('example((example))@fakedfake.co.uk'),
-            array('example@faked(fake).co.uk'),
-            array('fabien+@symfony.com'),
-            array('инфо@письмо.рф'),
-            array('"username"@example.com'),
-            array('"user,name"@example.com'),
-            array('"user name"@example.com'),
-            array('"user@name"@example.com'),
-            array('"\a"@iana.org'),
-            array('"test\ test"@iana.org'),
-            array('""@iana.org'),
-            array('"\""@iana.org'),
-            array('müller@möller.de'),
-            array('test@email*'),
-            array('test@email!'),
-            array('test@email&'),
-            array('test@email^'),
-            array('test@email%'),
-            array('test@email$'),
-        );
-    }
-
-    /**
-     * @dataProvider getInvalidEmails
-     */
-    public function testInvalidEmails($email)
-    {
-        $this->assertFalse($this->validator->isValid($email));
-    }
-
-    public function getInvalidEmails()
-    {
-        return array(
-            array('test@example.com test'),
-            array('user  name@example.com'),
-            array('user   name@example.com'),
-            array('example.@example.co.uk'),
-            array('example@example@example.co.uk'),
-            array('(test_exampel@example.fr)'),
-            array('example(example)example@example.co.uk'),
-            array('.example@localhost'),
-            array('ex\ample@localhost'),
-            array('example@local\host'),
-            array('example@localhost.'),
-            array('user name@example.com'),
-            array('username@ example . com'),
-            array('example@(fake).com'),
-            array('example@(fake.com'),
-            array('username@example,com'),
-            array('usern,ame@example.com'),
-            array('user[na]me@example.com'),
-            array('"""@iana.org'),
-            array('"\"@iana.org'),
-            array('"test"test@iana.org'),
-            array('"test""test"@iana.org'),
-            array('"test"."test"@iana.org'),
-            array('"test".test@iana.org'),
-            array('"test"' . chr(0) . '@iana.org'),
-            array('"test\"@iana.org'),
-            array(chr(226) . '@iana.org'),
-            array('test@' . chr(226) . '.org'),
-            array('\r\ntest@iana.org'),
-            array('\r\n test@iana.org'),
-            array('\r\n \r\ntest@iana.org'),
-            array('\r\n \r\ntest@iana.org'),
-            array('\r\n \r\n test@iana.org'),
-            array('test@iana.org \r\n'),
-            array('test@iana.org \r\n '),
-            array('test@iana.org \r\n \r\n'),
-            array('test@iana.org \r\n\r\n'),
-            array('test@iana.org  \r\n\r\n '),
-            array('test@iana/icann.org'),
-            array('test@foo;bar.com'),
-            array('test;123@foobar.com'),
-            array('test@example..com'),
-            array('email.email@email."'),
-            array('test@email>'),
-            array('test@email<'),
-            array('test@email{'),
-        );
-    }
-
-    /**
-     * @dataProvider getInvalidEmailsWithErrors
-     */
-    public function testInvalidEmailsWithErrorsCheck($errors, $email)
-    {
-        $this->assertFalse($this->validator->isValid($email));
-
-        $this->assertEquals($errors, $this->validator->getError());
-    }
-
-    public function getInvalidEmailsWithErrors()
-    {
-        return array(
-            array(EmailValidator::ERR_NOLOCALPART, '@example.co.uk'),
-            array(EmailValidator::ERR_NODOMAIN, 'example@'),
-            array(EmailValidator::ERR_DOMAINHYPHENEND, 'example@example-.co.uk'),
-            array(EmailValidator::ERR_DOMAINHYPHENEND, 'example@example-'),
-            array(EmailValidator::ERR_CONSECUTIVEATS, 'example@@example.co.uk'),
-            array(EmailValidator::ERR_CONSECUTIVEDOTS, 'example..example@example.co.uk'),
-            array(EmailValidator::ERR_CONSECUTIVEDOTS, 'example@example..co.uk'),
-            array(EmailValidator::ERR_EXPECTING_ATEXT, '<fabien_potencier>@example.fr'),
-            array(EmailValidator::ERR_DOT_START, '.example@localhost'),
-            array(EmailValidator::ERR_DOT_START, 'example@.localhost'),
-            array(EmailValidator::ERR_DOT_END, 'example@localhost.'),
-            array(EmailValidator::ERR_DOT_END, 'example.@example.co.uk'),
-            array(EmailValidator::ERR_UNCLOSEDCOMMENT, '(example@localhost'),
-            array(EmailValidator::ERR_UNCLOSEDQUOTEDSTR, '"example@localhost'),
-            array(EmailValidator::ERR_EXPECTING_ATEXT, 'exa"mple@localhost'),
-            //This was the original. But atext is not allowed after \n
-            //array(EmailValidator::ERR_EXPECTING_ATEXT, "exampl\ne@example.co.uk"),
-            array(EmailValidator::ERR_ATEXT_AFTER_CFWS, "exampl\ne@example.co.uk"),
-            array(EmailValidator::ERR_EXPECTING_DTEXT, "example@[[]"),
-            array(EmailValidator::ERR_ATEXT_AFTER_CFWS, "exampl\te@example.co.uk"),
-            array(EmailValidator::ERR_CR_NO_LF, "example@exa\rmple.co.uk"),
-            array(EmailValidator::ERR_CR_NO_LF, "example@[\r]"),
-            array(EmailValidator::ERR_CR_NO_LF, "exam\rple@example.co.uk"),
-        );
-    }
-
-    /**
-     * @dataProvider getInvalidEmailsWithWarnings
-     */
-    public function testValidEmailsWithWarningsCheck($warnings, $email)
-    {
-        $this->assertTrue($this->validator->isValid($email, true));
-
-        $this->assertEquals($warnings, $this->validator->getWarnings());
-    }
-
-    /**
-     * @dataProvider getInvalidEmailsWithWarnings
-     */
-    public function testInvalidEmailsWithDnsCheckAndStrictMode($warnings, $email)
-    {
-        $this->assertFalse($this->validator->isValid($email, true, true));
-
-        $this->assertEquals($warnings, $this->validator->getWarnings());
-    }
-
-    public function getInvalidEmailsWithWarnings()
-    {
-        return array(
-            array(
-                array(
-                    EmailValidator::DEPREC_CFWS_NEAR_AT,
-                    EmailValidator::DNSWARN_NO_RECORD
-                ),
-                'example @example.co.uk'
-            ),
-            array(
-                array(
-                    EmailValidator::DEPREC_CFWS_NEAR_AT,
-                    EmailValidator::DNSWARN_NO_RECORD
-                ),
-                'example@ example.co.uk'
-            ),
-            array(
-                array(
-                    EmailValidator::CFWS_COMMENT,
-                    EmailValidator::DNSWARN_NO_RECORD
-                ),
-                'example@example(examplecomment).co.uk'
-            ),
-            array(
-                array(
-                    EmailValidator::CFWS_COMMENT,
-                    EmailValidator::DEPREC_CFWS_NEAR_AT,
-                    EmailValidator::DNSWARN_NO_RECORD,
-                ),
-                'example(examplecomment)@example.co.uk'
-            ),
-            array(
-                array(
-                    EmailValidator::RFC5321_QUOTEDSTRING,
-                    EmailValidator::CFWS_FWS,
-                    EmailValidator::DNSWARN_NO_RECORD,
-                ),
-                "\"\t\"@example.co.uk"
-            ),
-            array(
-                array(
-                    EmailValidator::RFC5321_QUOTEDSTRING,
-                    EmailValidator::CFWS_FWS,
-                    EmailValidator::DNSWARN_NO_RECORD
-                ),
-                "\"\r\"@example.co.uk"
-            ),
-            array(
-                array(
-                    EmailValidator::RFC5321_ADDRESSLITERAL,
-                    EmailValidator::DNSWARN_NO_RECORD,
-                ),
-                'example@[127.0.0.1]'
-            ),
-            array(
-                array(
-                    EmailValidator::RFC5321_ADDRESSLITERAL,
-                    EmailValidator::DNSWARN_NO_RECORD,
-                ),
-                'example@[IPv6:2001:0db8:85a3:0000:0000:8a2e:0370:7334]'
-            ),
-            array(
-                array(
-                    EmailValidator::RFC5321_ADDRESSLITERAL,
-                    EmailValidator::RFC5321_IPV6DEPRECATED,
-                    EmailValidator::DNSWARN_NO_RECORD,
-                ),
-                'example@[IPv6:2001:0db8:85a3:0000:0000:8a2e:0370::]'
-            ),
-            array(
-                array(
-                    EmailValidator::RFC5321_ADDRESSLITERAL,
-                    EmailValidator::RFC5322_IPV6_MAXGRPS,
-                    EmailValidator::DNSWARN_NO_RECORD,
-                ),
-                'example@[IPv6:2001:0db8:85a3:0000:0000:8a2e:0370:7334::]'
-            ),
-            array(
-                array(
-                    EmailValidator::RFC5321_ADDRESSLITERAL,
-                    EmailValidator::RFC5322_IPV6_2X2XCOLON,
-                    EmailValidator::DNSWARN_NO_RECORD,
-                ),
-                'example@[IPv6:1::1::1]'
-            ),
-            array(
-                array(
-                    EmailValidator::RFC5322_DOMLIT_OBSDTEXT,
-                    EmailValidator::RFC5322_DOMAINLITERAL,
-                    EmailValidator::DNSWARN_NO_RECORD,
-                ),
-                "example@[\n]"
-            ),
-            array(
-                array(
-                    EmailValidator::RFC5322_DOMAINLITERAL,
-                    EmailValidator::DNSWARN_NO_RECORD,
-                ),
-                'example@[::1]'
-            ),
-            array(
-                array(
-                    EmailValidator::RFC5322_DOMAINLITERAL,
-                    EmailValidator::DNSWARN_NO_RECORD,
-                ),
-                'example@[::123.45.67.178]'
-            ),
-            array(
-                array(
-                    EmailValidator::RFC5322_IPV6_COLONSTRT,
-                    EmailValidator::RFC5321_ADDRESSLITERAL,
-                    EmailValidator::RFC5322_IPV6_GRPCOUNT,
-                    EmailValidator::DNSWARN_NO_RECORD,
-                ),
-                'example@[IPv6::2001:0db8:85a3:0000:0000:8a2e:0370:7334]'
-            ),
-            array(
-                array(
-                    EmailValidator::RFC5321_ADDRESSLITERAL,
-                    EmailValidator::RFC5322_IPV6_BADCHAR,
-                    EmailValidator::DNSWARN_NO_RECORD,
-                ),
-                'example@[IPv6:z001:0db8:85a3:0000:0000:8a2e:0370:7334]'
-            ),
-            array(
-                array(
-                    EmailValidator::RFC5321_ADDRESSLITERAL,
-                    EmailValidator::RFC5322_IPV6_COLONEND,
-                    EmailValidator::DNSWARN_NO_RECORD,
-                ),
-                'example@[IPv6:2001:0db8:85a3:0000:0000:8a2e:0370:]'
-            ),
-            array(
-                array(
-                    EmailValidator::RFC5321_QUOTEDSTRING,
-                    EmailValidator::DNSWARN_NO_RECORD
-                ),
-                '"example"@example.co.uk'
-            ),
-            array(
-                array(
-                    EmailValidator::RFC5322_LOCAL_TOOLONG,
-                    EmailValidator::DNSWARN_NO_RECORD
-                ),
-                'too_long_localpart_too_long_localpart_too_long_localpart_too_long_localpart@example.co.uk'
-            ),
-            array(
-                array(
-                    EmailValidator::RFC5322_LABEL_TOOLONG,
-                    EmailValidator::DNSWARN_NO_RECORD,
-                ),
-                'example@toolonglocalparttoolonglocalparttoolonglocalparttoolonglocalpart.co.uk'
-            ),
-            array(
-                array(
-                    EmailValidator::RFC5322_DOMAIN_TOOLONG,
-                    EmailValidator::RFC5322_TOOLONG,
-                    EmailValidator::DNSWARN_NO_RECORD,
-                ),
-                'example@toolonglocalparttoolonglocalparttoolonglocalparttoolonglocalparttoolonglocalparttoolonglocal'.
-                'parttoolonglocalparttoolonglocalparttoolonglocalparttoolonglocalparttoolonglocalparttoolonglocalpart'.
-                'toolonglocalparttoolonglocalparttoolonglocalparttoolonglocalpart'
-            ),
-            array(
-                array(
-                    EmailValidator::RFC5322_DOMAIN_TOOLONG,
-                    EmailValidator::RFC5322_TOOLONG,
-                    EmailValidator::DNSWARN_NO_RECORD,
-                ),
-                'example@toolonglocalparttoolonglocalparttoolonglocalparttoolonglocalparttoolonglocalparttoolonglocal'.
-                'parttoolonglocalparttoolonglocalparttoolonglocalparttoolonglocalparttoolonglocalparttoolonglocalpart'.
-                'toolonglocalparttoolonglocalparttoolonglocalparttoolonglocalpar'
-            ),
-            array(
-                array(
-                    EmailValidator::DNSWARN_NO_RECORD,
-                ),
-                'test@test'
-            ),
-        );
-    }
-
-    public function testInvalidEmailsWithStrict()
-    {
-        $this->assertFalse($this->validator->isValid('"test"@test', false, true));
-    }
-}
diff --git a/vendor/fabpot/goutte/Goutte/Tests/ClientTest.php b/vendor/fabpot/goutte/Goutte/Tests/ClientTest.php
deleted file mode 100644
index 8c2b0a5..0000000
--- a/vendor/fabpot/goutte/Goutte/Tests/ClientTest.php
+++ /dev/null
@@ -1,375 +0,0 @@
-<?php
-
-/*
- * This file is part of the Goutte package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Goutte\Tests;
-
-use Goutte\Client;
-use GuzzleHttp\Client as GuzzleClient;
-use GuzzleHttp\Exception\RequestException;
-use GuzzleHttp\Handler\MockHandler;
-use GuzzleHttp\HandlerStack;
-use GuzzleHttp\Psr7\Response as GuzzleResponse;
-use GuzzleHttp\Middleware;
-use Symfony\Component\BrowserKit\Cookie;
-
-/**
- * Goutte Client Test.
- *
- * @author Michael Dowling <michael@guzzlephp.org>
- * @author Charles Sarrazin <charles@sarraz.in>
- */
-class ClientTest extends \PHPUnit_Framework_TestCase
-{
-    protected $history;
-    /** @var MockHandler */
-    protected $mock;
-
-    protected function getGuzzle(array $responses = [])
-    {
-        if (empty($responses)) {
-            $responses = [new GuzzleResponse(200, [], '<html><body><p>Hi</p></body></html>')];
-        }
-        $this->mock = new MockHandler($responses);
-        $handlerStack = HandlerStack::create($this->mock);
-        $this->history = [];
-        $handlerStack->push(Middleware::history($this->history));
-        $guzzle = new GuzzleClient(array('redirect.disable' => true, 'base_uri' => '', 'handler' => $handlerStack));
-
-        return $guzzle;
-    }
-
-    public function testCreatesDefaultClient()
-    {
-        $client = new Client();
-        $this->assertInstanceOf('GuzzleHttp\\ClientInterface', $client->getClient());
-    }
-
-    public function testUsesCustomClient()
-    {
-        $guzzle = new GuzzleClient();
-        $client = new Client();
-        $this->assertSame($client, $client->setClient($guzzle));
-        $this->assertSame($guzzle, $client->getClient());
-    }
-
-    public function testUsesCustomHeaders()
-    {
-        $guzzle = $this->getGuzzle();
-        $client = new Client();
-        $client->setClient($guzzle);
-        $client->setHeader('X-Test', 'test');
-        $client->request('GET', 'http://www.example.com/');
-        $this->assertEquals('test', end($this->history)['request']->getHeaderLine('X-Test'));
-    }
-
-    public function testCustomUserAgent()
-    {
-        $guzzle = $this->getGuzzle();
-        $client = new Client();
-        $client->setClient($guzzle);
-        $client->setHeader('User-Agent', 'foo');
-        $client->request('GET', 'http://www.example.com/');
-        $this->assertEquals('Symfony2 BrowserKit, foo', end($this->history)['request']->getHeaderLine('User-Agent'));
-    }
-
-    public function testUsesAuth()
-    {
-        $guzzle = $this->getGuzzle();
-        $client = new Client();
-        $client->setClient($guzzle);
-        $client->setAuth('me', '**');
-        $client->request('GET', 'http://www.example.com/');
-        $request = end($this->history)['request'];
-        $this->assertEquals('Basic bWU6Kio=', $request->getHeaderLine('Authorization'));
-    }
-
-    public function testResetsAuth()
-    {
-        $guzzle = $this->getGuzzle();
-        $client = new Client();
-        $client->setClient($guzzle);
-        $client->setAuth('me', '**');
-        $client->resetAuth();
-        $client->request('GET', 'http://www.example.com/');
-        $request = end($this->history)['request'];
-        $this->assertEquals('', $request->getHeaderLine('authorization'));
-    }
-
-    public function testUsesCookies()
-    {
-        $guzzle = $this->getGuzzle();
-        $client = new Client();
-        $client->setClient($guzzle);
-        $client->getCookieJar()->set(new Cookie('test', '123'));
-        $client->request('GET', 'http://www.example.com/');
-        $request = end($this->history)['request'];
-        $this->assertEquals('test=123', $request->getHeaderLine('Cookie'));
-    }
-
-    public function testUsesCookiesWithCustomPort()
-    {
-        $guzzle = $this->getGuzzle();
-        $client = new Client();
-        $client->setClient($guzzle);
-        $client->getCookieJar()->set(new Cookie('test', '123'));
-        $client->request('GET', 'http://www.example.com:8000/');
-        $request = end($this->history)['request'];
-        $this->assertEquals('test=123', $request->getHeaderLine('Cookie'));
-    }
-
-    public function testUsesPostFiles()
-    {
-        $guzzle = $this->getGuzzle();
-        $client = new Client();
-        $client->setClient($guzzle);
-        $files = array(
-            'test' => array(
-                'name' => 'test.txt',
-                'tmp_name' => __DIR__.'/fixtures.txt',
-            ),
-        );
-
-        $client->request('POST', 'http://www.example.com/', array(), $files);
-        $request = end($this->history)['request'];
-
-        $stream = $request->getBody();
-        $boundary = $stream->getBoundary();
-        $this->assertEquals(
-            "--$boundary\r\nContent-Disposition: form-data; name=\"test\"; filename=\"test.txt\"\r\nContent-Length: 4\r\n"
-            ."Content-Type: text/plain\r\n\r\nfoo\n\r\n--$boundary--\r\n",
-            $stream->getContents()
-        );
-    }
-
-    public function testUsesPostNamedFiles()
-    {
-        $guzzle = $this->getGuzzle();
-        $client = new Client();
-        $client->setClient($guzzle);
-        $files = array(
-            'test' => __DIR__.'/fixtures.txt',
-        );
-
-        $client->request('POST', 'http://www.example.com/', array(), $files);
-        $request = end($this->history)['request'];
-
-        $stream = $request->getBody();
-        $boundary = $stream->getBoundary();
-        $this->assertEquals(
-            "--$boundary\r\nContent-Disposition: form-data; name=\"test\"; filename=\"fixtures.txt\"\r\nContent-Length: 4\r\n"
-            ."Content-Type: text/plain\r\n\r\nfoo\n\r\n--$boundary--\r\n",
-            $stream->getContents()
-        );
-    }
-
-    public function testUsesPostFilesNestedFields()
-    {
-        $guzzle = $this->getGuzzle();
-        $client = new Client();
-        $client->setClient($guzzle);
-        $files = array(
-            'form' => array(
-                'test' => array(
-                    'name' => 'test.txt',
-                    'tmp_name' => __DIR__.'/fixtures.txt',
-                ),
-            ),
-        );
-
-        $client->request('POST', 'http://www.example.com/', array(), $files);
-        $request = end($this->history)['request'];
-
-        $stream = $request->getBody();
-        $boundary = $stream->getBoundary();
-        $this->assertEquals(
-            "--$boundary\r\nContent-Disposition: form-data; name=\"form[test]\"; filename=\"test.txt\"\r\nContent-Length: 4\r\n"
-            ."Content-Type: text/plain\r\n\r\nfoo\n\r\n--$boundary--\r\n",
-            $stream->getContents()
-        );
-    }
-
-    public function testPostFormWithFiles()
-    {
-        $guzzle = $this->getGuzzle();
-        $client = new Client();
-        $client->setClient($guzzle);
-        $files = array(
-            'test' => __DIR__.'/fixtures.txt',
-        );
-        $params = array(
-            'foo' => 'bar',
-        );
-
-        $client->request('POST', 'http://www.example.com/', $params, $files);
-        $request = end($this->history)['request'];
-
-        $stream = $request->getBody();
-        $boundary = $stream->getBoundary();
-        $this->assertEquals(
-            "--$boundary\r\nContent-Disposition: form-data; name=\"foo\"\r\nContent-Length: 3\r\n"
-            ."\r\nbar\r\n"
-            ."--$boundary\r\nContent-Disposition: form-data; name=\"test\"; filename=\"fixtures.txt\"\r\nContent-Length: 4\r\n"
-            ."Content-Type: text/plain\r\n\r\nfoo\n\r\n--$boundary--\r\n",
-        $stream->getContents());
-    }
-
-    public function testPostEmbeddedFormWithFiles()
-    {
-        $guzzle = $this->getGuzzle();
-        $client = new Client();
-        $client->setClient($guzzle);
-        $files = array(
-            'test' => __DIR__.'/fixtures.txt',
-        );
-        $params = array(
-            'foo' => array(
-                'bar' => 'baz',
-            ),
-        );
-
-        $client->request('POST', 'http://www.example.com/', $params, $files);
-        $request = end($this->history)['request'];
-
-        $stream = $request->getBody();
-        $boundary = $stream->getBoundary();
-        $this->assertEquals(
-            "--$boundary\r\nContent-Disposition: form-data; name=\"foo[bar]\"\r\nContent-Length: 3\r\n"
-            ."\r\nbaz\r\n"
-            ."--$boundary\r\nContent-Disposition: form-data; name=\"test\"; filename=\"fixtures.txt\"\r\nContent-Length: 4\r\n"
-            ."Content-Type: text/plain\r\n\r\nfoo\n\r\n--$boundary--\r\n",
-        $stream->getContents());
-    }
-
-    public function testUsesPostFilesOnClientSide()
-    {
-        $guzzle = $this->getGuzzle();
-        $client = new Client();
-        $client->setClient($guzzle);
-        $files = array(
-            'test' => __DIR__.'/fixtures.txt',
-        );
-
-        $client->request('POST', 'http://www.example.com/', array(), $files);
-        $request = end($this->history)['request'];
-
-        $stream = $request->getBody();
-        $boundary = $stream->getBoundary();
-        $this->assertEquals(
-            "--$boundary\r\nContent-Disposition: form-data; name=\"test\"; filename=\"fixtures.txt\"\r\nContent-Length: 4\r\n"
-            ."Content-Type: text/plain\r\n\r\nfoo\n\r\n--$boundary--\r\n",
-            $stream->getContents()
-        );
-    }
-
-    public function testUsesPostFilesUploadError()
-    {
-        $guzzle = $this->getGuzzle();
-        $client = new Client();
-        $client->setClient($guzzle);
-        $files = array(
-            'test' => array(
-                'name' => '',
-                'type' => '',
-                'tmp_name' => '',
-                'error' => 4,
-                'size' => 0,
-            ),
-        );
-
-        $client->request('POST', 'http://www.example.com/', array(), $files);
-        $request = end($this->history)['request'];
-        $stream = $request->getBody();
-        $boundary = $stream->getBoundary();
-
-        $this->assertEquals("--$boundary--\r\n", $stream->getContents());
-    }
-
-    public function testCreatesResponse()
-    {
-        $guzzle = $this->getGuzzle();
-        $client = new Client();
-        $client->setClient($guzzle);
-        $crawler = $client->request('GET', 'http://www.example.com/');
-        $this->assertEquals('Hi', $crawler->filter('p')->text());
-    }
-
-    public function testHandlesRedirectsCorrectly()
-    {
-        $guzzle = $this->getGuzzle([
-            new GuzzleResponse(301, array(
-                'Location' => 'http://www.example.com/',
-            )),
-            new GuzzleResponse(200, [], '<html><body><p>Test</p></body></html>'),
-        ]);
-
-        $client = new Client();
-        $client->setClient($guzzle);
-
-        $crawler = $client->request('GET', 'http://www.example.com/');
-        $this->assertEquals('Test', $crawler->filter('p')->text());
-
-        // Ensure that two requests were sent
-        $this->assertEquals(2, count($this->history));
-    }
-
-    public function testConvertsGuzzleHeadersToArrays()
-    {
-        $guzzle = $this->getGuzzle([
-            new GuzzleResponse(200, array(
-                'Date' => 'Tue, 04 Jun 2013 13:22:41 GMT',
-            )),
-        ]);
-
-        $client = new Client();
-        $client->setClient($guzzle);
-        $client->request('GET', 'http://www.example.com/');
-        $response = $client->getResponse();
-        $headers = $response->getHeaders();
-
-        $this->assertInternalType('array', array_shift($headers), 'Header not converted from Guzzle\Http\Message\Header to array');
-    }
-
-    public function testNullResponseException()
-    {
-        $this->setExpectedException('GuzzleHttp\Exception\RequestException');
-        $guzzle = $this->getGuzzle([
-            new RequestException('', $this->getMock('Psr\Http\Message\RequestInterface')),
-        ]);
-        $client = new Client();
-        $client->setClient($guzzle);
-        $client->request('GET', 'http://www.example.com/');
-        $client->getResponse();
-    }
-
-    public function testHttps()
-    {
-        $guzzle = $this->getGuzzle([
-            new GuzzleResponse(200, [], '<html><body><p>Test</p></body></html>'),
-        ]);
-
-        $client = new Client();
-        $client->setClient($guzzle);
-        $crawler = $client->request('GET', 'https://www.example.com/');
-        $this->assertEquals('Test', $crawler->filter('p')->text());
-    }
-
-    public function testCustomUserAgentConstructor()
-    {
-        $guzzle = $this->getGuzzle();
-        $client = new Client([
-          'HTTP_HOST' => '1.2.3.4',
-          'HTTP_USER_AGENT' => 'SomeHost',
-        ]);
-        $client->setClient($guzzle);
-        $client->request('GET', 'http://www.example.com/');
-        $this->assertEquals('SomeHost', end($this->history)['request']->getHeaderLine('User-Agent'));
-    }
-}
diff --git a/vendor/fabpot/goutte/Goutte/Tests/fixtures.txt b/vendor/fabpot/goutte/Goutte/Tests/fixtures.txt
deleted file mode 100644
index 257cc56..0000000
--- a/vendor/fabpot/goutte/Goutte/Tests/fixtures.txt
+++ /dev/null
@@ -1 +0,0 @@
-foo
diff --git a/vendor/guzzlehttp/promises/tests/AggregateExceptionTest.php b/vendor/guzzlehttp/promises/tests/AggregateExceptionTest.php
deleted file mode 100644
index eaa7703..0000000
--- a/vendor/guzzlehttp/promises/tests/AggregateExceptionTest.php
+++ /dev/null
@@ -1,14 +0,0 @@
-<?php
-namespace GuzzleHttp\Promise\Tests;
-
-use GuzzleHttp\Promise\AggregateException;
-
-class AggregateExceptionTest extends \PHPUnit_Framework_TestCase
-{
-    public function testHasReason()
-    {
-        $e = new AggregateException('foo', ['baz', 'bar']);
-        $this->assertContains('foo', $e->getMessage());
-        $this->assertEquals(['baz', 'bar'], $e->getReason());
-    }
-}
diff --git a/vendor/guzzlehttp/promises/tests/EachPromiseTest.php b/vendor/guzzlehttp/promises/tests/EachPromiseTest.php
deleted file mode 100644
index b913b3a..0000000
--- a/vendor/guzzlehttp/promises/tests/EachPromiseTest.php
+++ /dev/null
@@ -1,288 +0,0 @@
-<?php
-namespace GuzzleHttp\Promise\Tests;
-
-use GuzzleHttp\Promise\RejectedPromise;
-use GuzzleHttp\Promise\FulfilledPromise;
-use GuzzleHttp\Promise\Promise;
-use GuzzleHttp\Promise\PromiseInterface;
-use GuzzleHttp\Promise\EachPromise;
-use GuzzleHttp\Promise as P;
-
-/**
- * @covers GuzzleHttp\Promise\EachPromise
- */
-class EachPromiseTest extends \PHPUnit_Framework_TestCase
-{
-    public function testReturnsSameInstance()
-    {
-        $each = new EachPromise([], ['concurrency' => 100]);
-        $this->assertSame($each->promise(), $each->promise());
-    }
-
-    public function testInvokesAllPromises()
-    {
-        $promises = [new Promise(), new Promise(), new Promise()];
-        $called = [];
-        $each = new EachPromise($promises, [
-            'fulfilled' => function ($value) use (&$called) {
-                $called[] = $value;
-            }
-        ]);
-        $p = $each->promise();
-        $promises[0]->resolve('a');
-        $promises[1]->resolve('c');
-        $promises[2]->resolve('b');
-        P\queue()->run();
-        $this->assertEquals(['a', 'c', 'b'], $called);
-        $this->assertEquals(PromiseInterface::FULFILLED, $p->getState());
-    }
-
-    public function testIsWaitable()
-    {
-        $a = new Promise(function () use (&$a) { $a->resolve('a'); });
-        $b = new Promise(function () use (&$b) { $b->resolve('b'); });
-        $called = [];
-        $each = new EachPromise([$a, $b], [
-            'fulfilled' => function ($value) use (&$called) { $called[] = $value; }
-        ]);
-        $p = $each->promise();
-        $this->assertNull($p->wait());
-        $this->assertEquals(PromiseInterface::FULFILLED, $p->getState());
-        $this->assertEquals(['a', 'b'], $called);
-    }
-
-    public function testCanResolveBeforeConsumingAll()
-    {
-        $called = 0;
-        $a = new Promise(function () use (&$a) { $a->resolve('a'); });
-        $b = new Promise(function () { $this->fail(); });
-        $each = new EachPromise([$a, $b], [
-            'fulfilled' => function ($value, $idx, Promise $aggregate) use (&$called) {
-                $this->assertSame($idx, 0);
-                $this->assertEquals('a', $value);
-                $aggregate->resolve(null);
-                $called++;
-            },
-            'rejected' => function (\Exception $reason) {
-                $this->fail($reason->getMessage());
-            }
-        ]);
-        $p = $each->promise();
-        $p->wait();
-        $this->assertNull($p->wait());
-        $this->assertEquals(1, $called);
-        $this->assertEquals(PromiseInterface::FULFILLED, $a->getState());
-        $this->assertEquals(PromiseInterface::PENDING, $b->getState());
-        // Resolving $b has no effect on the aggregate promise.
-        $b->resolve('foo');
-        $this->assertEquals(1, $called);
-    }
-
-    public function testLimitsPendingPromises()
-    {
-        $pending = [new Promise(), new Promise(), new Promise(), new Promise()];
-        $promises = new \ArrayIterator($pending);
-        $each = new EachPromise($promises, ['concurrency' => 2]);
-        $p = $each->promise();
-        $this->assertCount(2, $this->readAttribute($each, 'pending'));
-        $pending[0]->resolve('a');
-        $this->assertCount(2, $this->readAttribute($each, 'pending'));
-        $this->assertTrue($promises->valid());
-        $pending[1]->resolve('b');
-        P\queue()->run();
-        $this->assertCount(2, $this->readAttribute($each, 'pending'));
-        $this->assertTrue($promises->valid());
-        $promises[2]->resolve('c');
-        P\queue()->run();
-        $this->assertCount(1, $this->readAttribute($each, 'pending'));
-        $this->assertEquals(PromiseInterface::PENDING, $p->getState());
-        $promises[3]->resolve('d');
-        P\queue()->run();
-        $this->assertNull($this->readAttribute($each, 'pending'));
-        $this->assertEquals(PromiseInterface::FULFILLED, $p->getState());
-        $this->assertFalse($promises->valid());
-    }
-
-    public function testDynamicallyLimitsPendingPromises()
-    {
-        $calls = [];
-        $pendingFn = function ($count) use (&$calls) {
-            $calls[] = $count;
-            return 2;
-        };
-        $pending = [new Promise(), new Promise(), new Promise(), new Promise()];
-        $promises = new \ArrayIterator($pending);
-        $each = new EachPromise($promises, ['concurrency' => $pendingFn]);
-        $p = $each->promise();
-        $this->assertCount(2, $this->readAttribute($each, 'pending'));
-        $pending[0]->resolve('a');
-        $this->assertCount(2, $this->readAttribute($each, 'pending'));
-        $this->assertTrue($promises->valid());
-        $pending[1]->resolve('b');
-        $this->assertCount(2, $this->readAttribute($each, 'pending'));
-        P\queue()->run();
-        $this->assertTrue($promises->valid());
-        $promises[2]->resolve('c');
-        P\queue()->run();
-        $this->assertCount(1, $this->readAttribute($each, 'pending'));
-        $this->assertEquals(PromiseInterface::PENDING, $p->getState());
-        $promises[3]->resolve('d');
-        P\queue()->run();
-        $this->assertNull($this->readAttribute($each, 'pending'));
-        $this->assertEquals(PromiseInterface::FULFILLED, $p->getState());
-        $this->assertEquals([0, 1, 1, 1], $calls);
-        $this->assertFalse($promises->valid());
-    }
-
-    public function testClearsReferencesWhenResolved()
-    {
-        $called = false;
-        $a = new Promise(function () use (&$a, &$called) {
-            $a->resolve('a');
-            $called = true;
-        });
-        $each = new EachPromise([$a], [
-            'concurrency'       => function () { return 1; },
-            'fulfilled' => function () {},
-            'rejected'  => function () {}
-        ]);
-        $each->promise()->wait();
-        $this->assertNull($this->readAttribute($each, 'onFulfilled'));
-        $this->assertNull($this->readAttribute($each, 'onRejected'));
-        $this->assertNull($this->readAttribute($each, 'iterable'));
-        $this->assertNull($this->readAttribute($each, 'pending'));
-        $this->assertNull($this->readAttribute($each, 'concurrency'));
-        $this->assertTrue($called);
-    }
-
-    public function testCanBeCancelled()
-    {
-        $this->markTestIncomplete();
-    }
-
-    public function testDoesNotBlowStackWithFulfilledPromises()
-    {
-        $pending = [];
-        for ($i = 0; $i < 100; $i++) {
-            $pending[] = new FulfilledPromise($i);
-        }
-        $values = [];
-        $each = new EachPromise($pending, [
-            'fulfilled' => function ($value) use (&$values) {
-                $values[] = $value;
-            }
-        ]);
-        $called = false;
-        $each->promise()->then(function () use (&$called) {
-            $called = true;
-        });
-        $this->assertFalse($called);
-        P\queue()->run();
-        $this->assertTrue($called);
-        $this->assertEquals(range(0, 99), $values);
-    }
-
-    public function testDoesNotBlowStackWithRejectedPromises()
-    {
-        $pending = [];
-        for ($i = 0; $i < 100; $i++) {
-            $pending[] = new RejectedPromise($i);
-        }
-        $values = [];
-        $each = new EachPromise($pending, [
-            'rejected' => function ($value) use (&$values) {
-                $values[] = $value;
-            }
-        ]);
-        $called = false;
-        $each->promise()->then(
-            function () use (&$called) { $called = true; },
-            function () { $this->fail('Should not have rejected.'); }
-        );
-        $this->assertFalse($called);
-        P\queue()->run();
-        $this->assertTrue($called);
-        $this->assertEquals(range(0, 99), $values);
-    }
-
-    public function testReturnsPromiseForWhatever()
-    {
-        $called = [];
-        $arr = ['a', 'b'];
-        $each = new EachPromise($arr, [
-            'fulfilled' => function ($v) use (&$called) { $called[] = $v; }
-        ]);
-        $p = $each->promise();
-        $this->assertNull($p->wait());
-        $this->assertEquals(['a', 'b'], $called);
-    }
-
-    public function testRejectsAggregateWhenNextThrows()
-    {
-        $iter = function () {
-            yield 'a';
-            throw new \Exception('Failure');
-        };
-        $each = new EachPromise($iter());
-        $p = $each->promise();
-        $e = null;
-        $received = null;
-        $p->then(null, function ($reason) use (&$e) { $e = $reason; });
-        P\queue()->run();
-        $this->assertInstanceOf('Exception', $e);
-        $this->assertEquals('Failure', $e->getMessage());
-    }
-
-    public function testDoesNotCallNextOnIteratorUntilNeededWhenWaiting()
-    {
-        $results = [];
-        $values = [10];
-        $remaining = 9;
-        $iter = function () use (&$values) {
-            while ($value = array_pop($values)) {
-                yield $value;
-            }
-        };
-        $each = new EachPromise($iter(), [
-            'concurrency' => 1,
-            'fulfilled' => function ($r) use (&$results, &$values, &$remaining) {
-                $results[] = $r;
-                if ($remaining > 0) {
-                    $values[] = $remaining--;
-                }
-            }
-        ]);
-        $each->promise()->wait();
-        $this->assertEquals(range(10, 1), $results);
-    }
-
-    public function testDoesNotCallNextOnIteratorUntilNeededWhenAsync()
-    {
-        $firstPromise = new Promise();
-        $pending = [$firstPromise];
-        $values = [$firstPromise];
-        $results = [];
-        $remaining = 9;
-        $iter = function () use (&$values) {
-            while ($value = array_pop($values)) {
-                yield $value;
-            }
-        };
-        $each = new EachPromise($iter(), [
-            'concurrency' => 1,
-            'fulfilled' => function ($r) use (&$results, &$values, &$remaining, &$pending) {
-                $results[] = $r;
-                if ($remaining-- > 0) {
-                    $pending[] = $values[] = new Promise();
-                }
-            }
-        ]);
-        $i = 0;
-        $each->promise();
-        while ($promise = array_pop($pending)) {
-            $promise->resolve($i++);
-            P\queue()->run();
-        }
-        $this->assertEquals(range(0, 9), $results);
-    }
-}
diff --git a/vendor/guzzlehttp/promises/tests/FulfilledPromiseTest.php b/vendor/guzzlehttp/promises/tests/FulfilledPromiseTest.php
deleted file mode 100644
index 554c150..0000000
--- a/vendor/guzzlehttp/promises/tests/FulfilledPromiseTest.php
+++ /dev/null
@@ -1,108 +0,0 @@
-<?php
-namespace GuzzleHttp\Tests\Promise;
-
-use GuzzleHttp\Promise\Promise;
-use GuzzleHttp\Promise\FulfilledPromise;
-
-/**
- * @covers GuzzleHttp\Promise\FulfilledPromise
- */
-class FulfilledPromiseTest extends \PHPUnit_Framework_TestCase
-{
-    public function testReturnsValueWhenWaitedUpon()
-    {
-        $p = new FulfilledPromise('foo');
-        $this->assertEquals('fulfilled', $p->getState());
-        $this->assertEquals('foo', $p->wait(true));
-    }
-
-    public function testCannotCancel()
-    {
-        $p = new FulfilledPromise('foo');
-        $this->assertEquals('fulfilled', $p->getState());
-        $p->cancel();
-        $this->assertEquals('foo', $p->wait());
-    }
-
-    /**
-     * @expectedException \LogicException
-     * @exepctedExceptionMessage Cannot resolve a fulfilled promise
-     */
-    public function testCannotResolve()
-    {
-        $p = new FulfilledPromise('foo');
-        $p->resolve('bar');
-    }
-
-    /**
-     * @expectedException \LogicException
-     * @exepctedExceptionMessage Cannot reject a fulfilled promise
-     */
-    public function testCannotReject()
-    {
-        $p = new FulfilledPromise('foo');
-        $p->reject('bar');
-    }
-
-    public function testCanResolveWithSameValue()
-    {
-        $p = new FulfilledPromise('foo');
-        $p->resolve('foo');
-    }
-
-    /**
-     * @expectedException \InvalidArgumentException
-     */
-    public function testCannotResolveWithPromise()
-    {
-        new FulfilledPromise(new Promise());
-    }
-
-    public function testReturnsSelfWhenNoOnFulfilled()
-    {
-        $p = new FulfilledPromise('a');
-        $this->assertSame($p, $p->then());
-    }
-
-    public function testAsynchronouslyInvokesOnFulfilled()
-    {
-        $p = new FulfilledPromise('a');
-        $r = null;
-        $f = function ($d) use (&$r) { $r = $d; };
-        $p2 = $p->then($f);
-        $this->assertNotSame($p, $p2);
-        $this->assertNull($r);
-        \GuzzleHttp\Promise\queue()->run();
-        $this->assertEquals('a', $r);
-    }
-
-    public function testReturnsNewRejectedWhenOnFulfilledFails()
-    {
-        $p = new FulfilledPromise('a');
-        $f = function () { throw new \Exception('b'); };
-        $p2 = $p->then($f);
-        $this->assertNotSame($p, $p2);
-        try {
-            $p2->wait();
-            $this->fail();
-        } catch (\Exception $e) {
-            $this->assertEquals('b', $e->getMessage());
-        }
-    }
-
-    public function testOtherwiseIsSugarForRejections()
-    {
-        $c = null;
-        $p = new FulfilledPromise('foo');
-        $p->otherwise(function ($v) use (&$c) { $c = $v; });
-        $this->assertNull($c);
-    }
-
-    public function testDoesNotTryToFulfillTwiceDuringTrampoline()
-    {
-        $fp = new FulfilledPromise('a');
-        $t1 = $fp->then(function ($v) { return $v . ' b'; });
-        $t1->resolve('why!');
-        $this->assertEquals('why!', $t1->wait());
-    }
-}
diff --git a/vendor/guzzlehttp/promises/tests/NotPromiseInstance.php b/vendor/guzzlehttp/promises/tests/NotPromiseInstance.php
deleted file mode 100644
index 6288aa8..0000000
--- a/vendor/guzzlehttp/promises/tests/NotPromiseInstance.php
+++ /dev/null
@@ -1,50 +0,0 @@
-<?php
-namespace GuzzleHttp\Promise\Tests;
-
-use GuzzleHttp\Promise\Promise;
-use GuzzleHttp\Promise\PromiseInterface;
-
-class NotPromiseInstance extends Thennable implements PromiseInterface
-{
-    private $nextPromise = null;
-
-    public function __construct()
-    {
-        $this->nextPromise = new Promise();
-    }
-
-    public function then(callable $res = null, callable $rej = null)
-    {
-        return $this->nextPromise->then($res, $rej);
-    }
-
-    public function otherwise(callable $onRejected)
-    {
-        return $this->then($onRejected);
-    }
-
-    public function resolve($value)
-    {
-        $this->nextPromise->resolve($value);
-    }
-
-    public function reject($reason)
-    {
-        $this->nextPromise->reject($reason);
-    }
-
-    public function wait($unwrap = true, $defaultResolution = null)
-    {
-
-    }
-
-    public function cancel()
-    {
-
-    }
-
-    public function getState()
-    {
-        return $this->nextPromise->getState();
-    }
-}
diff --git a/vendor/guzzlehttp/promises/tests/PromiseTest.php b/vendor/guzzlehttp/promises/tests/PromiseTest.php
deleted file mode 100644
index 946c627..0000000
--- a/vendor/guzzlehttp/promises/tests/PromiseTest.php
+++ /dev/null
@@ -1,579 +0,0 @@
-<?php
-namespace GuzzleHttp\Promise\Tests;
-
-use GuzzleHttp\Promise\CancellationException;
-use GuzzleHttp\Promise as P;
-use GuzzleHttp\Promise\Promise;
-use GuzzleHttp\Promise\RejectedPromise;
-use GuzzleHttp\Promise\RejectionException;
-
-/**
- * @covers GuzzleHttp\Promise\Promise
- */
-class PromiseTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @expectedException \LogicException
-     * @expectedExceptionMessage The promise is already fulfilled
-     */
-    public function testCannotResolveNonPendingPromise()
-    {
-        $p = new Promise();
-        $p->resolve('foo');
-        $p->resolve('bar');
-        $this->assertEquals('foo', $p->wait());
-    }
-
-    public function testCanResolveWithSameValue()
-    {
-        $p = new Promise();
-        $p->resolve('foo');
-        $p->resolve('foo');
-    }
-
-    /**
-     * @expectedException \LogicException
-     * @expectedExceptionMessage Cannot change a fulfilled promise to rejected
-     */
-    public function testCannotRejectNonPendingPromise()
-    {
-        $p = new Promise();
-        $p->resolve('foo');
-        $p->reject('bar');
-        $this->assertEquals('foo', $p->wait());
-    }
-
-    public function testCanRejectWithSameValue()
-    {
-        $p = new Promise();
-        $p->reject('foo');
-        $p->reject('foo');
-    }
-
-    /**
-     * @expectedException \LogicException
-     * @expectedExceptionMessage Cannot change a fulfilled promise to rejected
-     */
-    public function testCannotRejectResolveWithSameValue()
-    {
-        $p = new Promise();
-        $p->resolve('foo');
-        $p->reject('foo');
-    }
-
-    public function testInvokesWaitFunction()
-    {
-        $p = new Promise(function () use (&$p) { $p->resolve('10'); });
-        $this->assertEquals('10', $p->wait());
-    }
-
-    /**
-     * @expectedException \GuzzleHttp\Promise\RejectionException
-     */
-    public function testRejectsAndThrowsWhenWaitFailsToResolve()
-    {
-        $p = new Promise(function () {});
-        $p->wait();
-    }
-
-    /**
-     * @expectedException \GuzzleHttp\Promise\RejectionException
-     * @expectedExceptionMessage The promise was rejected with reason: foo
-     */
-    public function testThrowsWhenUnwrapIsRejectedWithNonException()
-    {
-        $p = new Promise(function () use (&$p) { $p->reject('foo'); });
-        $p->wait();
-    }
-
-    /**
-     * @expectedException \UnexpectedValueException
-     * @expectedExceptionMessage foo
-     */
-    public function testThrowsWhenUnwrapIsRejectedWithException()
-    {
-        $e = new \UnexpectedValueException('foo');
-        $p = new Promise(function () use (&$p, $e) { $p->reject($e); });
-        $p->wait();
-    }
-
-    public function testDoesNotUnwrapExceptionsWhenDisabled()
-    {
-        $p = new Promise(function () use (&$p) { $p->reject('foo'); });
-        $this->assertEquals('pending', $p->getState());
-        $p->wait(false);
-        $this->assertEquals('rejected', $p->getState());
-    }
-
-    public function testRejectsSelfWhenWaitThrows()
-    {
-        $e = new \UnexpectedValueException('foo');
-        $p = new Promise(function () use ($e) { throw $e; });
-        try {
-            $p->wait();
-            $this->fail();
-        } catch (\UnexpectedValueException $e) {
-            $this->assertEquals('rejected', $p->getState());
-        }
-    }
-
-    public function testWaitsOnNestedPromises()
-    {
-        $p = new Promise(function () use (&$p) { $p->resolve('_'); });
-        $p2 = new Promise(function () use (&$p2) { $p2->resolve('foo'); });
-        $p3 = $p->then(function () use ($p2) { return $p2; });
-        $this->assertSame('foo', $p3->wait());
-    }
-
-    /**
-     * @expectedException \GuzzleHttp\Promise\RejectionException
-     */
-    public function testThrowsWhenWaitingOnPromiseWithNoWaitFunction()
-    {
-        $p = new Promise();
-        $p->wait();
-    }
-
-    public function testThrowsWaitExceptionAfterPromiseIsResolved()
-    {
-        $p = new Promise(function () use (&$p) {
-            $p->reject('Foo!');
-            throw new \Exception('Bar?');
-        });
-
-        try {
-            $p->wait();
-            $this->fail();
-        } catch (\Exception $e) {
-            $this->assertEquals('Bar?', $e->getMessage());
-        }
-    }
-
-    public function testGetsActualWaitValueFromThen()
-    {
-        $p = new Promise(function () use (&$p) { $p->reject('Foo!'); });
-        $p2 = $p->then(null, function ($reason) {
-            return new RejectedPromise([$reason]);
-        });
-
-        try {
-            $p2->wait();
-            $this->fail('Should have thrown');
-        } catch (RejectionException $e) {
-            $this->assertEquals(['Foo!'], $e->getReason());
-        }
-    }
-
-    public function testWaitBehaviorIsBasedOnLastPromiseInChain()
-    {
-        $p3 = new Promise(function () use (&$p3) { $p3->resolve('Whoop'); });
-        $p2 = new Promise(function () use (&$p2, $p3) { $p2->reject($p3); });
-        $p = new Promise(function () use (&$p, $p2) { $p->reject($p2); });
-        $this->assertEquals('Whoop', $p->wait());
-    }
-
-    public function testCannotCancelNonPending()
-    {
-        $p = new Promise();
-        $p->resolve('foo');
-        $p->cancel();
-        $this->assertEquals('fulfilled', $p->getState());
-    }
-
-    /**
-     * @expectedException \GuzzleHttp\Promise\CancellationException
-     */
-    public function testCancelsPromiseWhenNoCancelFunction()
-    {
-        $p = new Promise();
-        $p->cancel();
-        $this->assertEquals('rejected', $p->getState());
-        $p->wait();
-    }
-
-    public function testCancelsPromiseWithCancelFunction()
-    {
-        $called = false;
-        $p = new Promise(null, function () use (&$called) { $called = true; });
-        $p->cancel();
-        $this->assertEquals('rejected', $p->getState());
-        $this->assertTrue($called);
-    }
-
-    public function testCancelsUppermostPendingPromise()
-    {
-        $called = false;
-        $p1 = new Promise(null, function () use (&$called) { $called = true; });
-        $p2 = $p1->then(function () {});
-        $p3 = $p2->then(function () {});
-        $p4 = $p3->then(function () {});
-        $p3->cancel();
-        $this->assertEquals('rejected', $p1->getState());
-        $this->assertEquals('rejected', $p2->getState());
-        $this->assertEquals('rejected', $p3->getState());
-        $this->assertEquals('pending', $p4->getState());
-        $this->assertTrue($called);
-
-        try {
-            $p3->wait();
-            $this->fail();
-        } catch (CancellationException $e) {
-            $this->assertContains('cancelled', $e->getMessage());
-        }
-
-        try {
-            $p4->wait();
-            $this->fail();
-        } catch (CancellationException $e) {
-            $this->assertContains('cancelled', $e->getMessage());
-        }
-
-        $this->assertEquals('rejected', $p4->getState());
-    }
-
-    public function testCancelsChildPromises()
-    {
-        $called1 = $called2 = $called3 = false;
-        $p1 = new Promise(null, function () use (&$called1) { $called1 = true; });
-        $p2 = new Promise(null, function () use (&$called2) { $called2 = true; });
-        $p3 = new Promise(null, function () use (&$called3) { $called3 = true; });
-        $p4 = $p2->then(function () use ($p3) { return $p3; });
-        $p5 = $p4->then(function () { $this->fail(); });
-        $p4->cancel();
-        $this->assertEquals('pending', $p1->getState());
-        $this->assertEquals('rejected', $p2->getState());
-        $this->assertEquals('rejected', $p4->getState());
-        $this->assertEquals('pending', $p5->getState());
-        $this->assertFalse($called1);
-        $this->assertTrue($called2);
-        $this->assertFalse($called3);
-    }
-
-    public function testRejectsPromiseWhenCancelFails()
-    {
-        $called = false;
-        $p = new Promise(null, function () use (&$called) {
-            $called = true;
-            throw new \Exception('e');
-        });
-        $p->cancel();
-        $this->assertEquals('rejected', $p->getState());
-        $this->assertTrue($called);
-        try {
-            $p->wait();
-            $this->fail();
-        } catch (\Exception $e) {
-            $this->assertEquals('e', $e->getMessage());
-        }
-    }
-
-    public function testCreatesPromiseWhenFulfilledAfterThen()
-    {
-        $p = new Promise();
-        $carry = null;
-        $p2 = $p->then(function ($v) use (&$carry) { $carry = $v; });
-        $this->assertNotSame($p, $p2);
-        $p->resolve('foo');
-        P\queue()->run();
-
-        $this->assertEquals('foo', $carry);
-    }
-
-    public function testCreatesPromiseWhenFulfilledBeforeThen()
-    {
-        $p = new Promise();
-        $p->resolve('foo');
-        $carry = null;
-        $p2 = $p->then(function ($v) use (&$carry) { $carry = $v; });
-        $this->assertNotSame($p, $p2);
-        $this->assertNull($carry);
-        \GuzzleHttp\Promise\queue()->run();
-        $this->assertEquals('foo', $carry);
-    }
-
-    public function testCreatesPromiseWhenFulfilledWithNoCallback()
-    {
-        $p = new Promise();
-        $p->resolve('foo');
-        $p2 = $p->then();
-        $this->assertNotSame($p, $p2);
-        $this->assertInstanceOf('GuzzleHttp\Promise\FulfilledPromise', $p2);
-    }
-
-    public function testCreatesPromiseWhenRejectedAfterThen()
-    {
-        $p = new Promise();
-        $carry = null;
-        $p2 = $p->then(null, function ($v) use (&$carry) { $carry = $v; });
-        $this->assertNotSame($p, $p2);
-        $p->reject('foo');
-        P\queue()->run();
-        $this->assertEquals('foo', $carry);
-    }
-
-    public function testCreatesPromiseWhenRejectedBeforeThen()
-    {
-        $p = new Promise();
-        $p->reject('foo');
-        $carry = null;
-        $p2 = $p->then(null, function ($v) use (&$carry) { $carry = $v; });
-        $this->assertNotSame($p, $p2);
-        $this->assertNull($carry);
-        P\queue()->run();
-        $this->assertEquals('foo', $carry);
-    }
-
-    public function testCreatesPromiseWhenRejectedWithNoCallback()
-    {
-        $p = new Promise();
-        $p->reject('foo');
-        $p2 = $p->then();
-        $this->assertNotSame($p, $p2);
-        $this->assertInstanceOf('GuzzleHttp\Promise\RejectedPromise', $p2);
-    }
-
-    public function testInvokesWaitFnsForThens()
-    {
-        $p = new Promise(function () use (&$p) { $p->resolve('a'); });
-        $p2 = $p
-            ->then(function ($v) { return $v . '-1-'; })
-            ->then(function ($v) { return $v . '2'; });
-        $this->assertEquals('a-1-2', $p2->wait());
-    }
-
-    public function testStacksThenWaitFunctions()
-    {
-        $p1 = new Promise(function () use (&$p1) { $p1->resolve('a'); });
-        $p2 = new Promise(function () use (&$p2) { $p2->resolve('b'); });
-        $p3 = new Promise(function () use (&$p3) { $p3->resolve('c'); });
-        $p4 = $p1
-            ->then(function () use ($p2) { return $p2; })
-            ->then(function () use ($p3) { return $p3; });
-        $this->assertEquals('c', $p4->wait());
-    }
-
-    public function testForwardsFulfilledDownChainBetweenGaps()
-    {
-        $p = new Promise();
-        $r = $r2 = null;
-        $p->then(null, null)
-            ->then(function ($v) use (&$r) { $r = $v; return $v . '2'; })
-            ->then(function ($v) use (&$r2) { $r2 = $v; });
-        $p->resolve('foo');
-        P\queue()->run();
-        $this->assertEquals('foo', $r);
-        $this->assertEquals('foo2', $r2);
-    }
-
-    public function testForwardsRejectedPromisesDownChainBetweenGaps()
-    {
-        $p = new Promise();
-        $r = $r2 = null;
-        $p->then(null, null)
-            ->then(null, function ($v) use (&$r) { $r = $v; return $v . '2'; })
-            ->then(function ($v) use (&$r2) { $r2 = $v; });
-        $p->reject('foo');
-        P\queue()->run();
-        $this->assertEquals('foo', $r);
-        $this->assertEquals('foo2', $r2);
-    }
-
-    public function testForwardsThrownPromisesDownChainBetweenGaps()
-    {
-        $e = new \Exception();
-        $p = new Promise();
-        $r = $r2 = null;
-        $p->then(null, null)
-            ->then(null, function ($v) use (&$r, $e) {
-                $r = $v;
-                throw $e;
-            })
-            ->then(
-                null,
-                function ($v) use (&$r2) { $r2 = $v; }
-            );
-        $p->reject('foo');
-        P\queue()->run();
-        $this->assertEquals('foo', $r);
-        $this->assertSame($e, $r2);
-    }
-
-    public function testForwardsReturnedRejectedPromisesDownChainBetweenGaps()
-    {
-        $p = new Promise();
-        $rejected = new RejectedPromise('bar');
-        $r = $r2 = null;
-        $p->then(null, null)
-            ->then(null, function ($v) use (&$r, $rejected) {
-                $r = $v;
-                return $rejected;
-            })
-            ->then(
-                null,
-                function ($v) use (&$r2) { $r2 = $v; }
-            );
-        $p->reject('foo');
-        P\queue()->run();
-        $this->assertEquals('foo', $r);
-        $this->assertEquals('bar', $r2);
-        try {
-            $p->wait();
-        } catch (RejectionException $e) {
-            $this->assertEquals('foo', $e->getReason());
-        }
-    }
-
-    public function testForwardsHandlersToNextPromise()
-    {
-        $p = new Promise();
-        $p2 = new Promise();
-        $resolved = null;
-        $p
-            ->then(function ($v) use ($p2) { return $p2; })
-            ->then(function ($value) use (&$resolved) { $resolved = $value; });
-        $p->resolve('a');
-        $p2->resolve('b');
-        P\queue()->run();
-        $this->assertEquals('b', $resolved);
-    }
-
-    public function testRemovesReferenceFromChildWhenParentWaitedUpon()
-    {
-        $r = null;
-        $p = new Promise(function () use (&$p) { $p->resolve('a'); });
-        $p2 = new Promise(function () use (&$p2) { $p2->resolve('b'); });
-        $pb = $p->then(
-            function ($v) use ($p2, &$r) {
-                $r = $v;
-                return $p2;
-            })
-            ->then(function ($v) { return $v . '.'; });
-        $this->assertEquals('a', $p->wait());
-        $this->assertEquals('b', $p2->wait());
-        $this->assertEquals('b.', $pb->wait());
-        $this->assertEquals('a', $r);
-    }
-
-    public function testForwardsHandlersWhenFulfilledPromiseIsReturned()
-    {
-        $res = [];
-        $p = new Promise();
-        $p2 = new Promise();
-        $p2->resolve('foo');
-        $p2->then(function ($v) use (&$res) { $res[] = 'A:' . $v; });
-        // $res is A:foo
-        $p
-            ->then(function () use ($p2, &$res) { $res[] = 'B'; return $p2; })
-            ->then(function ($v) use (&$res) { $res[] = 'C:' . $v; });
-        $p->resolve('a');
-        $p->then(function ($v) use (&$res) { $res[] = 'D:' . $v; });
-        P\queue()->run();
-        $this->assertEquals(['A:foo', 'B', 'D:a', 'C:foo'], $res);
-    }
-
-    public function testForwardsHandlersWhenRejectedPromiseIsReturned()
-    {
-        $res = [];
-        $p = new Promise();
-        $p2 = new Promise();
-        $p2->reject('foo');
-        $p2->then(null, function ($v) use (&$res) { $res[] = 'A:' . $v; });
-        $p->then(null, function () use ($p2, &$res) { $res[] = 'B'; return $p2; })
-            ->then(null, function ($v) use (&$res) { $res[] = 'C:' . $v; });
-        $p->reject('a');
-        $p->then(null, function ($v) use (&$res) { $res[] = 'D:' . $v; });
-        P\queue()->run();
-        $this->assertEquals(['A:foo', 'B', 'D:a', 'C:foo'], $res);
-    }
-
-    public function testDoesNotForwardRejectedPromise()
-    {
-        $res = [];
-        $p = new Promise();
-        $p2 = new Promise();
-        $p2->cancel();
-        $p2->then(function ($v) use (&$res) { $res[] = "B:$v"; return $v; });
-        $p->then(function ($v) use ($p2, &$res) { $res[] = "B:$v"; return $p2; })
-            ->then(function ($v) use (&$res) { $res[] = 'C:' . $v; });
-        $p->resolve('a');
-        $p->then(function ($v) use (&$res) { $res[] = 'D:' . $v; });
-        P\queue()->run();
-        $this->assertEquals(['B:a', 'D:a'], $res);
-    }
-
-    public function testRecursivelyForwardsWhenOnlyThennable()
-    {
-        $res = [];
-        $p = new Promise();
-        $p2 = new Thennable();
-        $p2->resolve('foo');
-        $p2->then(function ($v) use (&$res) { $res[] = 'A:' . $v; });
-        $p->then(function () use ($p2, &$res) { $res[] = 'B'; return $p2; })
-            ->then(function ($v) use (&$res) { $res[] = 'C:' . $v; });
-        $p->resolve('a');
-        $p->then(function ($v) use (&$res) { $res[] = 'D:' . $v; });
-        P\queue()->run();
-        $this->assertEquals(['A:foo', 'B', 'D:a', 'C:foo'], $res);
-    }
-
-    public function testRecursivelyForwardsWhenNotInstanceOfPromise()
-    {
-        $res = [];
-        $p = new Promise();
-        $p2 = new NotPromiseInstance();
-        $p2->then(function ($v) use (&$res) { $res[] = 'A:' . $v; });
-        $p->then(function () use ($p2, &$res) { $res[] = 'B'; return $p2; })
-            ->then(function ($v) use (&$res) { $res[] = 'C:' . $v; });
-        $p->resolve('a');
-        $p->then(function ($v) use (&$res) { $res[] = 'D:' . $v; });
-        P\queue()->run();
-        $this->assertEquals(['B', 'D:a'], $res);
-        $p2->resolve('foo');
-        P\queue()->run();
-        $this->assertEquals(['B', 'D:a', 'A:foo', 'C:foo'], $res);
-    }
-
-    /**
-     * @expectedException \LogicException
-     * @expectedExceptionMessage Cannot fulfill or reject a promise with itself
-     */
-    public function testCannotResolveWithSelf()
-    {
-        $p = new Promise();
-        $p->resolve($p);
-    }
-
-    /**
-     * @expectedException \LogicException
-     * @expectedExceptionMessage Cannot fulfill or reject a promise with itself
-     */
-    public function testCannotRejectWithSelf()
-    {
-        $p = new Promise();
-        $p->reject($p);
-    }
-
-    public function testDoesNotBlowStackWhenWaitingOnNestedThens()
-    {
-        $inner = new Promise(function () use (&$inner) { $inner->resolve(0); });
-        $prev = $inner;
-        for ($i = 1; $i < 100; $i++) {
-            $prev = $prev->then(function ($i) { return $i + 1; });
-        }
-
-        $parent = new Promise(function () use (&$parent, $prev) {
-            $parent->resolve($prev);
-        });
-
-        $this->assertEquals(99, $parent->wait());
-    }
-
-    public function testOtherwiseIsSugarForRejections()
-    {
-        $p = new Promise();
-        $p->reject('foo');
-        $p->otherwise(function ($v) use (&$c) { $c = $v; });
-        P\queue()->run();
-        $this->assertEquals($c, 'foo');
-    }
-}
diff --git a/vendor/guzzlehttp/promises/tests/RejectedPromiseTest.php b/vendor/guzzlehttp/promises/tests/RejectedPromiseTest.php
deleted file mode 100644
index 60f926e..0000000
--- a/vendor/guzzlehttp/promises/tests/RejectedPromiseTest.php
+++ /dev/null
@@ -1,143 +0,0 @@
-<?php
-namespace GuzzleHttp\Promise\Tests;
-
-use GuzzleHttp\Promise\Promise;
-use GuzzleHttp\Promise\RejectedPromise;
-
-/**
- * @covers GuzzleHttp\Promise\RejectedPromise
- */
-class RejectedPromiseTest extends \PHPUnit_Framework_TestCase
-{
-    public function testThrowsReasonWhenWaitedUpon()
-    {
-        $p = new RejectedPromise('foo');
-        $this->assertEquals('rejected', $p->getState());
-        try {
-            $p->wait(true);
-            $this->fail();
-        } catch (\Exception $e) {
-            $this->assertEquals('rejected', $p->getState());
-            $this->assertContains('foo', $e->getMessage());
-        }
-    }
-
-    public function testCannotCancel()
-    {
-        $p = new RejectedPromise('foo');
-        $p->cancel();
-        $this->assertEquals('rejected', $p->getState());
-    }
-
-    /**
-     * @expectedException \LogicException
-     * @exepctedExceptionMessage Cannot resolve a rejected promise
-     */
-    public function testCannotResolve()
-    {
-        $p = new RejectedPromise('foo');
-        $p->resolve('bar');
-    }
-
-    /**
-     * @expectedException \LogicException
-     * @exepctedExceptionMessage Cannot reject a rejected promise
-     */
-    public function testCannotReject()
-    {
-        $p = new RejectedPromise('foo');
-        $p->reject('bar');
-    }
-
-    public function testCanRejectWithSameValue()
-    {
-        $p = new RejectedPromise('foo');
-        $p->reject('foo');
-    }
-
-    public function testThrowsSpecificException()
-    {
-        $e = new \Exception();
-        $p = new RejectedPromise($e);
-        try {
-            $p->wait(true);
-            $this->fail();
-        } catch (\Exception $e2) {
-            $this->assertSame($e, $e2);
-        }
-    }
-
-    /**
-     * @expectedException \InvalidArgumentException
-     */
-    public function testCannotResolveWithPromise()
-    {
-        new RejectedPromise(new Promise());
-    }
-
-    public function testReturnsSelfWhenNoOnReject()
-    {
-        $p = new RejectedPromise('a');
-        $this->assertSame($p, $p->then());
-    }
-
-    public function testInvokesOnRejectedAsynchronously()
-    {
-        $p = new RejectedPromise('a');
-        $r = null;
-        $f = function ($reason) use (&$r) { $r = $reason; };
-        $p->then(null, $f);
-        $this->assertNull($r);
-        \GuzzleHttp\Promise\queue()->run();
-        $this->assertEquals('a', $r);
-    }
-
-    public function testReturnsNewRejectedWhenOnRejectedFails()
-    {
-        $p = new RejectedPromise('a');
-        $f = function () { throw new \Exception('b'); };
-        $p2 = $p->then(null, $f);
-        $this->assertNotSame($p, $p2);
-        try {
-            $p2->wait();
-            $this->fail();
-        } catch (\Exception $e) {
-            $this->assertEquals('b', $e->getMessage());
-        }
-    }
-
-    public function testWaitingIsNoOp()
-    {
-        $p = new RejectedPromise('a');
-        $p->wait(false);
-    }
-
-    public function testOtherwiseIsSugarForRejections()
-    {
-        $p = new RejectedPromise('foo');
-        $p->otherwise(function ($v) use (&$c) { $c = $v; });
-        \GuzzleHttp\Promise\queue()->run();
-        $this->assertSame('foo', $c);
-    }
-
-    public function testCanResolveThenWithSuccess()
-    {
-        $actual = null;
-        $p = new RejectedPromise('foo');
-        $p->otherwise(function ($v) {
-            return $v . ' bar';
-        })->then(function ($v) use (&$actual) {
-            $actual = $v;
-        });
-        \GuzzleHttp\Promise\queue()->run();
-        $this->assertEquals('foo bar', $actual);
-    }
-
-    public function testDoesNotTryToRejectTwiceDuringTrampoline()
-    {
-        $fp = new RejectedPromise('a');
-        $t1 = $fp->then(null, function ($v) { return $v . ' b'; });
-        $t1->resolve('why!');
-        $this->assertEquals('why!', $t1->wait());
-    }
-}
diff --git a/vendor/guzzlehttp/promises/tests/RejectionExceptionTest.php b/vendor/guzzlehttp/promises/tests/RejectionExceptionTest.php
deleted file mode 100644
index 36c6a88..0000000
--- a/vendor/guzzlehttp/promises/tests/RejectionExceptionTest.php
+++ /dev/null
@@ -1,47 +0,0 @@
-<?php
-namespace GuzzleHttp\Promise\Tests;
-
-use GuzzleHttp\Promise\RejectionException;
-
-class Thing1
-{
-    public function __construct($message)
-    {
-        $this->message = $message;
-    }
-
-    public function __toString()
-    {
-        return $this->message;
-    }
-}
-
-class Thing2 implements \JsonSerializable
-{
-    public function jsonSerialize()
-    {
-        return '{}';
-    }
-}
-
-/**
- * @covers GuzzleHttp\Promise\RejectionException
- */
-class RejectionExceptionTest extends \PHPUnit_Framework_TestCase
-{
-    public function testCanGetReasonFromException()
-    {
-        $thing = new Thing1('foo');
-        $e = new RejectionException($thing);
-
-        $this->assertSame($thing, $e->getReason());
-        $this->assertEquals('The promise was rejected with reason: foo', $e->getMessage());
-    }
-
-    public function testCanGetReasonMessageFromJson()
-    {
-        $reason = new Thing2();
-        $e = new RejectionException($reason);
-        $this->assertContains("{}", $e->getMessage());
-    }
-}
diff --git a/vendor/guzzlehttp/promises/tests/TaskQueueTest.php b/vendor/guzzlehttp/promises/tests/TaskQueueTest.php
deleted file mode 100644
index 845b263..0000000
--- a/vendor/guzzlehttp/promises/tests/TaskQueueTest.php
+++ /dev/null
@@ -1,31 +0,0 @@
-<?php
-namespace GuzzleHttp\Promise\Test;
-
-use GuzzleHttp\Promise\TaskQueue;
-
-class TaskQueueTest extends \PHPUnit_Framework_TestCase
-{
-    public function testKnowsIfEmpty()
-    {
-        $tq = new TaskQueue(false);
-        $this->assertTrue($tq->isEmpty());
-    }
-
-    public function testKnowsIfFull()
-    {
-        $tq = new TaskQueue(false);
-        $tq->add(function () {});
-        $this->assertFalse($tq->isEmpty());
-    }
-
-    public function testExecutesTasksInOrder()
-    {
-        $tq = new TaskQueue(false);
-        $called = [];
-        $tq->add(function () use (&$called) { $called[] = 'a'; });
-        $tq->add(function () use (&$called) { $called[] = 'b'; });
-        $tq->add(function () use (&$called) { $called[] = 'c'; });
-        $tq->run();
-        $this->assertEquals(['a', 'b', 'c'], $called);
-    }
-}
diff --git a/vendor/guzzlehttp/promises/tests/Thennable.php b/vendor/guzzlehttp/promises/tests/Thennable.php
deleted file mode 100644
index 398954d..0000000
--- a/vendor/guzzlehttp/promises/tests/Thennable.php
+++ /dev/null
@@ -1,24 +0,0 @@
-<?php
-namespace GuzzleHttp\Promise\Tests;
-
-use GuzzleHttp\Promise\Promise;
-
-class Thennable
-{
-    private $nextPromise = null;
-
-    public function __construct()
-    {
-        $this->nextPromise = new Promise();
-    }
-
-    public function then(callable $res = null, callable $rej = null)
-    {
-        return $this->nextPromise->then($res, $rej);
-    }
-
-    public function resolve($value)
-    {
-        $this->nextPromise->resolve($value);
-    }
-}
diff --git a/vendor/guzzlehttp/promises/tests/bootstrap.php b/vendor/guzzlehttp/promises/tests/bootstrap.php
deleted file mode 100644
index a63d264..0000000
--- a/vendor/guzzlehttp/promises/tests/bootstrap.php
+++ /dev/null
@@ -1,4 +0,0 @@
-<?php
-require __DIR__ . '/../vendor/autoload.php';
-require __DIR__ . '/Thennable.php';
-require __DIR__ . '/NotPromiseInstance.php';
diff --git a/vendor/guzzlehttp/promises/tests/functionsTest.php b/vendor/guzzlehttp/promises/tests/functionsTest.php
deleted file mode 100644
index 8e6fcf4..0000000
--- a/vendor/guzzlehttp/promises/tests/functionsTest.php
+++ /dev/null
@@ -1,694 +0,0 @@
-<?php
-namespace GuzzleHttp\Promise\Tests;
-
-use GuzzleHttp\Promise as P;
-use GuzzleHttp\Promise\FulfilledPromise;
-use GuzzleHttp\Promise\Promise;
-use GuzzleHttp\Promise\RejectedPromise;
-
-class FunctionsTest extends \PHPUnit_Framework_TestCase
-{
-    public function testCreatesPromiseForValue()
-    {
-        $p = \GuzzleHttp\Promise\promise_for('foo');
-        $this->assertInstanceOf('GuzzleHttp\Promise\FulfilledPromise', $p);
-    }
-
-    public function testReturnsPromiseForPromise()
-    {
-        $p = new Promise();
-        $this->assertSame($p, \GuzzleHttp\Promise\promise_for($p));
-    }
-
-    public function testReturnsPromiseForThennable()
-    {
-        $p = new Thennable();
-        $wrapped = \GuzzleHttp\Promise\promise_for($p);
-        $this->assertNotSame($p, $wrapped);
-        $this->assertInstanceOf('GuzzleHttp\Promise\PromiseInterface', $wrapped);
-        $p->resolve('foo');
-        P\queue()->run();
-        $this->assertEquals('foo', $wrapped->wait());
-    }
-
-    public function testReturnsRejection()
-    {
-        $p = \GuzzleHttp\Promise\rejection_for('fail');
-        $this->assertInstanceOf('GuzzleHttp\Promise\RejectedPromise', $p);
-        $this->assertEquals('fail', $this->readAttribute($p, 'reason'));
-    }
-
-    public function testReturnsPromisesAsIsInRejectionFor()
-    {
-        $a = new Promise();
-        $b = \GuzzleHttp\Promise\rejection_for($a);
-        $this->assertSame($a, $b);
-    }
-
-    public function testWaitsOnAllPromisesIntoArray()
-    {
-        $e = new \Exception();
-        $a = new Promise(function () use (&$a) { $a->resolve('a'); });
-        $b = new Promise(function () use (&$b) { $b->reject('b'); });
-        $c = new Promise(function () use (&$c, $e) { $c->reject($e); });
-        $results = \GuzzleHttp\Promise\inspect_all([$a, $b, $c]);
-        $this->assertEquals([
-            ['state' => 'fulfilled', 'value' => 'a'],
-            ['state' => 'rejected', 'reason' => 'b'],
-            ['state' => 'rejected', 'reason' => $e]
-        ], $results);
-    }
-
-    /**
-     * @expectedException \GuzzleHttp\Promise\RejectionException
-     */
-    public function testUnwrapsPromisesWithNoDefaultAndFailure()
-    {
-        $promises = [new FulfilledPromise('a'), new Promise()];
-        \GuzzleHttp\Promise\unwrap($promises);
-    }
-
-    public function testUnwrapsPromisesWithNoDefault()
-    {
-        $promises = [new FulfilledPromise('a')];
-        $this->assertEquals(['a'], \GuzzleHttp\Promise\unwrap($promises));
-    }
-
-    public function testUnwrapsPromisesWithKeys()
-    {
-        $promises = [
-            'foo' => new FulfilledPromise('a'),
-            'bar' => new FulfilledPromise('b'),
-        ];
-        $this->assertEquals([
-            'foo' => 'a',
-            'bar' => 'b'
-        ], \GuzzleHttp\Promise\unwrap($promises));
-    }
-
-    public function testAllAggregatesSortedArray()
-    {
-        $a = new Promise();
-        $b = new Promise();
-        $c = new Promise();
-        $d = \GuzzleHttp\Promise\all([$a, $b, $c]);
-        $b->resolve('b');
-        $a->resolve('a');
-        $c->resolve('c');
-        $d->then(
-            function ($value) use (&$result) { $result = $value; },
-            function ($reason) use (&$result) { $result = $reason; }
-        );
-        P\queue()->run();
-        $this->assertEquals(['a', 'b', 'c'], $result);
-    }
-
-    public function testAllThrowsWhenAnyRejected()
-    {
-        $a = new Promise();
-        $b = new Promise();
-        $c = new Promise();
-        $d = \GuzzleHttp\Promise\all([$a, $b, $c]);
-        $b->resolve('b');
-        $a->reject('fail');
-        $c->resolve('c');
-        $d->then(
-            function ($value) use (&$result) { $result = $value; },
-            function ($reason) use (&$result) { $result = $reason; }
-        );
-        P\queue()->run();
-        $this->assertEquals('fail', $result);
-    }
-
-    public function testSomeAggregatesSortedArrayWithMax()
-    {
-        $a = new Promise();
-        $b = new Promise();
-        $c = new Promise();
-        $d = \GuzzleHttp\Promise\some(2, [$a, $b, $c]);
-        $b->resolve('b');
-        $c->resolve('c');
-        $a->resolve('a');
-        $d->then(function ($value) use (&$result) { $result = $value; });
-        P\queue()->run();
-        $this->assertEquals(['b', 'c'], $result);
-    }
-
-    public function testSomeRejectsWhenTooManyRejections()
-    {
-        $a = new Promise();
-        $b = new Promise();
-        $d = \GuzzleHttp\Promise\some(2, [$a, $b]);
-        $a->reject('bad');
-        $b->resolve('good');
-        P\queue()->run();
-        $this->assertEquals($a::REJECTED, $d->getState());
-        $d->then(null, function ($reason) use (&$called) {
-            $called = $reason;
-        });
-        P\queue()->run();
-        $this->assertInstanceOf('GuzzleHttp\Promise\AggregateException', $called);
-        $this->assertContains('bad', $called->getReason());
-    }
-
-    public function testCanWaitUntilSomeCountIsSatisfied()
-    {
-        $a = new Promise(function () use (&$a) { $a->resolve('a'); });
-        $b = new Promise(function () use (&$b) { $b->resolve('b'); });
-        $c = new Promise(function () use (&$c) { $c->resolve('c'); });
-        $d = \GuzzleHttp\Promise\some(2, [$a, $b, $c]);
-        $this->assertEquals(['a', 'b'], $d->wait());
-    }
-
-    /**
-     * @expectedException \GuzzleHttp\Promise\AggregateException
-     * @expectedExceptionMessage Not enough promises to fulfill count
-     */
-    public function testThrowsIfImpossibleToWaitForSomeCount()
-    {
-        $a = new Promise(function () use (&$a) { $a->resolve('a'); });
-        $d = \GuzzleHttp\Promise\some(2, [$a]);
-        $d->wait();
-    }
-
-    /**
-     * @expectedException \GuzzleHttp\Promise\AggregateException
-     * @expectedExceptionMessage Not enough promises to fulfill count
-     */
-    public function testThrowsIfResolvedWithoutCountTotalResults()
-    {
-        $a = new Promise();
-        $b = new Promise();
-        $d = \GuzzleHttp\Promise\some(3, [$a, $b]);
-        $a->resolve('a');
-        $b->resolve('b');
-        $d->wait();
-    }
-
-    public function testAnyReturnsFirstMatch()
-    {
-        $a = new Promise();
-        $b = new Promise();
-        $c = \GuzzleHttp\Promise\any([$a, $b]);
-        $b->resolve('b');
-        $a->resolve('a');
-        //P\queue()->run();
-        //$this->assertEquals('fulfilled', $c->getState());
-        $c->then(function ($value) use (&$result) { $result = $value; });
-        P\queue()->run();
-        $this->assertEquals('b', $result);
-    }
-
-    public function testSettleFulfillsWithFulfilledAndRejected()
-    {
-        $a = new Promise();
-        $b = new Promise();
-        $c = new Promise();
-        $d = \GuzzleHttp\Promise\settle([$a, $b, $c]);
-        $b->resolve('b');
-        $c->resolve('c');
-        $a->reject('a');
-        P\queue()->run();
-        $this->assertEquals('fulfilled', $d->getState());
-        $d->then(function ($value) use (&$result) { $result = $value; });
-        P\queue()->run();
-        $this->assertEquals([
-            ['state' => 'rejected', 'reason' => 'a'],
-            ['state' => 'fulfilled', 'value' => 'b'],
-            ['state' => 'fulfilled', 'value' => 'c']
-        ], $result);
-    }
-
-    public function testCanInspectFulfilledPromise()
-    {
-        $p = new FulfilledPromise('foo');
-        $this->assertEquals([
-            'state' => 'fulfilled',
-            'value' => 'foo'
-        ], \GuzzleHttp\Promise\inspect($p));
-    }
-
-    public function testCanInspectRejectedPromise()
-    {
-        $p = new RejectedPromise('foo');
-        $this->assertEquals([
-            'state'  => 'rejected',
-            'reason' => 'foo'
-        ], \GuzzleHttp\Promise\inspect($p));
-    }
-
-    public function testCanInspectRejectedPromiseWithNormalException()
-    {
-        $e = new \Exception('foo');
-        $p = new RejectedPromise($e);
-        $this->assertEquals([
-            'state'  => 'rejected',
-            'reason' => $e
-        ], \GuzzleHttp\Promise\inspect($p));
-    }
-
-    public function testCallsEachLimit()
-    {
-        $p = new Promise();
-        $aggregate = \GuzzleHttp\Promise\each_limit($p, 2);
-        $p->resolve('a');
-        P\queue()->run();
-        $this->assertEquals($p::FULFILLED, $aggregate->getState());
-    }
-
-    public function testEachLimitAllRejectsOnFailure()
-    {
-        $p = [new FulfilledPromise('a'), new RejectedPromise('b')];
-        $aggregate = \GuzzleHttp\Promise\each_limit_all($p, 2);
-        P\queue()->run();
-        $this->assertEquals(P\PromiseInterface::REJECTED, $aggregate->getState());
-        $result = \GuzzleHttp\Promise\inspect($aggregate);
-        $this->assertEquals('b', $result['reason']);
-    }
-
-    public function testIterForReturnsIterator()
-    {
-        $iter = new \ArrayIterator();
-        $this->assertSame($iter, \GuzzleHttp\Promise\iter_for($iter));
-    }
-
-    public function testKnowsIfFulfilled()
-    {
-        $p = new FulfilledPromise(null);
-        $this->assertTrue(P\is_fulfilled($p));
-        $this->assertFalse(P\is_rejected($p));
-    }
-
-    public function testKnowsIfRejected()
-    {
-        $p = new RejectedPromise(null);
-        $this->assertTrue(P\is_rejected($p));
-        $this->assertFalse(P\is_fulfilled($p));
-    }
-
-    public function testKnowsIfSettled()
-    {
-        $p = new RejectedPromise(null);
-        $this->assertTrue(P\is_settled($p));
-        $p = new Promise();
-        $this->assertFalse(P\is_settled($p));
-    }
-
-    public function testReturnsTrampoline()
-    {
-        $this->assertInstanceOf('GuzzleHttp\Promise\TaskQueue', P\queue());
-        $this->assertSame(P\queue(), P\queue());
-    }
-
-    public function testCanScheduleThunk()
-    {
-        $tramp = P\queue();
-        $promise = P\task(function () { return 'Hi!'; });
-        $c = null;
-        $promise->then(function ($v) use (&$c) { $c = $v; });
-        $this->assertNull($c);
-        $tramp->run();
-        $this->assertEquals('Hi!', $c);
-    }
-
-    public function testCanScheduleThunkWithRejection()
-    {
-        $tramp = P\queue();
-        $promise = P\task(function () { throw new \Exception('Hi!'); });
-        $c = null;
-        $promise->otherwise(function ($v) use (&$c) { $c = $v; });
-        $this->assertNull($c);
-        $tramp->run();
-        $this->assertEquals('Hi!', $c->getMessage());
-    }
-
-    public function testCanScheduleThunkWithWait()
-    {
-        $tramp = P\queue();
-        $promise = P\task(function () { return 'a'; });
-        $this->assertEquals('a', $promise->wait());
-        $tramp->run();
-    }
-
-    public function testYieldsFromCoroutine()
-    {
-        $promise = P\coroutine(function () {
-            $value = (yield new P\FulfilledPromise('a'));
-            yield  $value . 'b';
-        });
-        $promise->then(function ($value) use (&$result) { $result = $value; });
-        P\queue()->run();
-        $this->assertEquals('ab', $result);
-    }
-
-    public function testCanCatchExceptionsInCoroutine()
-    {
-        $promise = P\coroutine(function () {
-            try {
-                yield new P\RejectedPromise('a');
-                $this->fail('Should have thrown into the coroutine!');
-            } catch (P\RejectionException $e) {
-                $value = (yield new P\FulfilledPromise($e->getReason()));
-                yield  $value . 'b';
-            }
-        });
-        $promise->then(function ($value) use (&$result) { $result = $value; });
-        P\queue()->run();
-        $this->assertEquals(P\PromiseInterface::FULFILLED, $promise->getState());
-        $this->assertEquals('ab', $result);
-    }
-
-    public function testRejectsParentExceptionWhenException()
-    {
-        $promise = P\coroutine(function () {
-            yield new P\FulfilledPromise(0);
-            throw new \Exception('a');
-        });
-        $promise->then(
-            function () { $this->fail(); },
-            function ($reason) use (&$result) { $result = $reason; }
-        );
-        P\queue()->run();
-        $this->assertInstanceOf('Exception', $result);
-        $this->assertEquals('a', $result->getMessage());
-    }
-
-    public function testCanRejectFromRejectionCallback()
-    {
-        $promise = P\coroutine(function () {
-            yield new P\FulfilledPromise(0);
-            yield new P\RejectedPromise('no!');
-        });
-        $promise->then(
-            function () { $this->fail(); },
-            function ($reason) use (&$result) { $result = $reason; }
-        );
-        P\queue()->run();
-        $this->assertInstanceOf('GuzzleHttp\Promise\RejectionException', $result);
-        $this->assertEquals('no!', $result->getReason());
-    }
-
-    public function testCanAsyncReject()
-    {
-        $rej = new P\Promise();
-        $promise = P\coroutine(function () use ($rej) {
-            yield new P\FulfilledPromise(0);
-            yield $rej;
-        });
-        $promise->then(
-            function () { $this->fail(); },
-            function ($reason) use (&$result) { $result = $reason; }
-        );
-        $rej->reject('no!');
-        P\queue()->run();
-        $this->assertInstanceOf('GuzzleHttp\Promise\RejectionException', $result);
-        $this->assertEquals('no!', $result->getReason());
-    }
-
-    public function testCanCatchAndThrowOtherException()
-    {
-        $promise = P\coroutine(function () {
-            try {
-                yield new P\RejectedPromise('a');
-                $this->fail('Should have thrown into the coroutine!');
-            } catch (P\RejectionException $e) {
-                throw new \Exception('foo');
-            }
-        });
-        $promise->otherwise(function ($value) use (&$result) { $result = $value; });
-        P\queue()->run();
-        $this->assertEquals(P\PromiseInterface::REJECTED, $promise->getState());
-        $this->assertContains('foo', $result->getMessage());
-    }
-
-    public function testCanCatchAndYieldOtherException()
-    {
-        $promise = P\coroutine(function () {
-            try {
-                yield new P\RejectedPromise('a');
-                $this->fail('Should have thrown into the coroutine!');
-            } catch (P\RejectionException $e) {
-                yield new P\RejectedPromise('foo');
-            }
-        });
-        $promise->otherwise(function ($value) use (&$result) { $result = $value; });
-        P\queue()->run();
-        $this->assertEquals(P\PromiseInterface::REJECTED, $promise->getState());
-        $this->assertContains('foo', $result->getMessage());
-    }
-
-    public function createLotsOfSynchronousPromise()
-    {
-        return P\coroutine(function () {
-            $value = 0;
-            for ($i = 0; $i < 1000; $i++) {
-                $value = (yield new P\FulfilledPromise($i));
-            }
-            yield $value;
-        });
-    }
-
-    public function testLotsOfSynchronousDoesNotBlowStack()
-    {
-        $promise = $this->createLotsOfSynchronousPromise();
-        $promise->then(function ($v) use (&$r) { $r = $v; });
-        P\queue()->run();
-        $this->assertEquals(999, $r);
-    }
-
-    public function testLotsOfSynchronousWaitDoesNotBlowStack()
-    {
-        $promise = $this->createLotsOfSynchronousPromise();
-        $promise->then(function ($v) use (&$r) { $r = $v; });
-        $this->assertEquals(999, $promise->wait());
-        $this->assertEquals(999, $r);
-    }
-
-    private function createLotsOfFlappingPromise()
-    {
-        return P\coroutine(function () {
-            $value = 0;
-            for ($i = 0; $i < 1000; $i++) {
-                try {
-                    if ($i % 2) {
-                        $value = (yield new P\FulfilledPromise($i));
-                    } else {
-                        $value = (yield new P\RejectedPromise($i));
-                    }
-                } catch (\Exception $e) {
-                    $value = (yield new P\FulfilledPromise($i));
-                }
-            }
-            yield $value;
-        });
-    }
-
-    public function testLotsOfTryCatchingDoesNotBlowStack()
-    {
-        $promise = $this->createLotsOfFlappingPromise();
-        $promise->then(function ($v) use (&$r) { $r = $v; });
-        P\queue()->run();
-        $this->assertEquals(999, $r);
-    }
-
-    public function testLotsOfTryCatchingWaitingDoesNotBlowStack()
-    {
-        $promise = $this->createLotsOfFlappingPromise();
-        $promise->then(function ($v) use (&$r) { $r = $v; });
-        $this->assertEquals(999, $promise->wait());
-        $this->assertEquals(999, $r);
-    }
-
-    public function testAsyncPromisesWithCorrectlyYieldedValues()
-    {
-        $promises = [
-            new P\Promise(),
-            new P\Promise(),
-            new P\Promise()
-        ];
-
-        $promise = P\coroutine(function () use ($promises) {
-            $value = null;
-            $this->assertEquals('skip', (yield new P\FulfilledPromise('skip')));
-            foreach ($promises as $idx => $p) {
-                $value = (yield $p);
-                $this->assertEquals($value, $idx);
-                $this->assertEquals('skip', (yield new P\FulfilledPromise('skip')));
-            }
-            $this->assertEquals('skip', (yield new P\FulfilledPromise('skip')));
-            yield $value;
-        });
-
-        $promises[0]->resolve(0);
-        $promises[1]->resolve(1);
-        $promises[2]->resolve(2);
-
-        $promise->then(function ($v) use (&$r) { $r = $v; });
-        P\queue()->run();
-        $this->assertEquals(2, $r);
-    }
-
-    public function testYieldFinalWaitablePromise()
-    {
-        $p1 = new P\Promise(function () use (&$p1) {
-            $p1->resolve('skip me');
-        });
-        $p2 = new P\Promise(function () use (&$p2) {
-            $p2->resolve('hello!');
-        });
-        $co = P\coroutine(function() use ($p1, $p2) {
-            yield $p1;
-            yield $p2;
-        });
-        P\queue()->run();
-        $this->assertEquals('hello!', $co->wait());
-    }
-
-    public function testCanYieldFinalPendingPromise()
-    {
-        $p1 = new P\Promise();
-        $p2 = new P\Promise();
-        $co = P\coroutine(function() use ($p1, $p2) {
-            yield $p1;
-            yield $p2;
-        });
-        $p1->resolve('a');
-        $p2->resolve('b');
-        $co->then(function ($value) use (&$result) { $result = $value; });
-        P\queue()->run();
-        $this->assertEquals('b', $result);
-    }
-
-    public function testCanNestYieldsAndFailures()
-    {
-        $p1 = new P\Promise();
-        $p2 = new P\Promise();
-        $p3 = new P\Promise();
-        $p4 = new P\Promise();
-        $p5 = new P\Promise();
-        $co = P\coroutine(function() use ($p1, $p2, $p3, $p4, $p5) {
-            try {
-                yield $p1;
-            } catch (\Exception $e) {
-                yield $p2;
-                try {
-                    yield $p3;
-                    yield $p4;
-                } catch (\Exception $e) {
-                    yield $p5;
-                }
-            }
-        });
-        $p1->reject('a');
-        $p2->resolve('b');
-        $p3->resolve('c');
-        $p4->reject('d');
-        $p5->resolve('e');
-        $co->then(function ($value) use (&$result) { $result = $value; });
-        P\queue()->run();
-        $this->assertEquals('e', $result);
-    }
-
-    public function testCanYieldErrorsAndSuccessesWithoutRecursion()
-    {
-        $promises = [];
-        for ($i = 0; $i < 20; $i++) {
-            $promises[] = new P\Promise();
-        }
-
-        $co = P\coroutine(function() use ($promises) {
-            for ($i = 0; $i < 20; $i += 4) {
-                try {
-                    yield $promises[$i];
-                    yield $promises[$i + 1];
-                } catch (\Exception $e) {
-                    yield $promises[$i + 2];
-                    yield $promises[$i + 3];
-                }
-            }
-        });
-
-        for ($i = 0; $i < 20; $i += 4) {
-            $promises[$i]->resolve($i);
-            $promises[$i + 1]->reject($i + 1);
-            $promises[$i + 2]->resolve($i + 2);
-            $promises[$i + 3]->resolve($i + 3);
-        }
-
-        $co->then(function ($value) use (&$result) { $result = $value; });
-        P\queue()->run();
-        $this->assertEquals('19', $result);
-    }
-
-    public function testCanWaitOnPromiseAfterFulfilled()
-    {
-        $f = function () {
-            static $i = 0;
-            $i++;
-            return $p = new P\Promise(function () use (&$p, $i) {
-                $p->resolve($i . '-bar');
-            });
-        };
-
-        $promises = [];
-        for ($i = 0; $i < 20; $i++) {
-            $promises[] = $f();
-        }
-
-        $p = P\coroutine(function () use ($promises) {
-            yield new P\FulfilledPromise('foo!');
-            foreach ($promises as $promise) {
-                yield $promise;
-            }
-        });
-
-        $this->assertEquals('20-bar', $p->wait());
-    }
-
-    public function testCanWaitOnErroredPromises()
-    {
-        $p1 = new P\Promise(function () use (&$p1) { $p1->reject('a'); });
-        $p2 = new P\Promise(function () use (&$p2) { $p2->resolve('b'); });
-        $p3 = new P\Promise(function () use (&$p3) { $p3->resolve('c'); });
-        $p4 = new P\Promise(function () use (&$p4) { $p4->reject('d'); });
-        $p5 = new P\Promise(function () use (&$p5) { $p5->resolve('e'); });
-        $p6 = new P\Promise(function () use (&$p6) { $p6->reject('f'); });
-
-        $co = P\coroutine(function() use ($p1, $p2, $p3, $p4, $p5, $p6) {
-            try {
-                yield $p1;
-            } catch (\Exception $e) {
-                yield $p2;
-                try {
-                    yield $p3;
-                    yield $p4;
-                } catch (\Exception $e) {
-                    yield $p5;
-                    yield $p6;
-                }
-            }
-        });
-
-        $res = P\inspect($co);
-        $this->assertEquals('f', $res['reason']);
-    }
-
-    public function testCoroutineOtherwiseIntegrationTest()
-    {
-        $a = new P\Promise();
-        $b = new P\Promise();
-        $promise = P\coroutine(function () use ($a, $b) {
-            // Execute the pool of commands concurrently, and process errors.
-            yield $a;
-            yield $b;
-        })->otherwise(function (\Exception $e) {
-            // Throw errors from the operations as a specific Multipart error.
-            throw new \OutOfBoundsException('a', 0, $e);
-        });
-        $a->resolve('a');
-        $b->reject('b');
-        $reason = P\inspect($promise)['reason'];
-        $this->assertInstanceOf('OutOfBoundsException', $reason);
-        $this->assertInstanceOf('GuzzleHttp\Promise\RejectionException', $reason->getPrevious());
-    }
-}
diff --git a/vendor/guzzlehttp/psr7/tests/AppendStreamTest.php b/vendor/guzzlehttp/psr7/tests/AppendStreamTest.php
deleted file mode 100644
index 3c197dc..0000000
--- a/vendor/guzzlehttp/psr7/tests/AppendStreamTest.php
+++ /dev/null
@@ -1,186 +0,0 @@
-<?php
-namespace GuzzleHttp\Tests\Psr7;
-
-use GuzzleHttp\Psr7\AppendStream;
-use GuzzleHttp\Psr7;
-
-class AppendStreamTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @expectedException \InvalidArgumentException
-     * @expectedExceptionMessage Each stream must be readable
-     */
-    public function testValidatesStreamsAreReadable()
-    {
-        $a = new AppendStream();
-        $s = $this->getMockBuilder('Psr\Http\Message\StreamInterface')
-            ->setMethods(['isReadable'])
-            ->getMockForAbstractClass();
-        $s->expects($this->once())
-            ->method('isReadable')
-            ->will($this->returnValue(false));
-        $a->addStream($s);
-    }
-
-    /**
-     * @expectedException \RuntimeException
-     * @expectedExceptionMessage The AppendStream can only seek with SEEK_SET
-     */
-    public function testValidatesSeekType()
-    {
-        $a = new AppendStream();
-        $a->seek(100, SEEK_CUR);
-    }
-
-    /**
-     * @expectedException \RuntimeException
-     * @expectedExceptionMessage Unable to seek stream 0 of the AppendStream
-     */
-    public function testTriesToRewindOnSeek()
-    {
-        $a = new AppendStream();
-        $s = $this->getMockBuilder('Psr\Http\Message\StreamInterface')
-            ->setMethods(['isReadable', 'rewind', 'isSeekable'])
-            ->getMockForAbstractClass();
-        $s->expects($this->once())
-            ->method('isReadable')
-            ->will($this->returnValue(true));
-        $s->expects($this->once())
-            ->method('isSeekable')
-            ->will($this->returnValue(true));
-        $s->expects($this->once())
-            ->method('rewind')
-            ->will($this->throwException(new \RuntimeException()));
-        $a->addStream($s);
-        $a->seek(10);
-    }
-
-    public function testSeeksToPositionByReading()
-    {
-        $a = new AppendStream([
-            Psr7\stream_for('foo'),
-            Psr7\stream_for('bar'),
-            Psr7\stream_for('baz'),
-        ]);
-
-        $a->seek(3);
-        $this->assertEquals(3, $a->tell());
-        $this->assertEquals('bar', $a->read(3));
-
-        $a->seek(6);
-        $this->assertEquals(6, $a->tell());
-        $this->assertEquals('baz', $a->read(3));
-    }
-
-    public function testDetachesEachStream()
-    {
-        $s1 = Psr7\stream_for('foo');
-        $s2 = Psr7\stream_for('bar');
-        $a = new AppendStream([$s1, $s2]);
-        $this->assertSame('foobar', (string) $a);
-        $a->detach();
-        $this->assertSame('', (string) $a);
-        $this->assertSame(0, $a->getSize());
-    }
-
-    public function testClosesEachStream()
-    {
-        $s1 = Psr7\stream_for('foo');
-        $a = new AppendStream([$s1]);
-        $a->close();
-        $this->assertSame('', (string) $a);
-    }
-
-    /**
-     * @expectedExceptionMessage Cannot write to an AppendStream
-     * @expectedException \RuntimeException
-     */
-    public function testIsNotWritable()
-    {
-        $a = new AppendStream([Psr7\stream_for('foo')]);
-        $this->assertFalse($a->isWritable());
-        $this->assertTrue($a->isSeekable());
-        $this->assertTrue($a->isReadable());
-        $a->write('foo');
-    }
-
-    public function testDoesNotNeedStreams()
-    {
-        $a = new AppendStream();
-        $this->assertEquals('', (string) $a);
-    }
-
-    public function testCanReadFromMultipleStreams()
-    {
-        $a = new AppendStream([
-            Psr7\stream_for('foo'),
-            Psr7\stream_for('bar'),
-            Psr7\stream_for('baz'),
-        ]);
-        $this->assertFalse($a->eof());
-        $this->assertSame(0, $a->tell());
-        $this->assertEquals('foo', $a->read(3));
-        $this->assertEquals('bar', $a->read(3));
-        $this->assertEquals('baz', $a->read(3));
-        $this->assertSame('', $a->read(1));
-        $this->assertTrue($a->eof());
-        $this->assertSame(9, $a->tell());
-        $this->assertEquals('foobarbaz', (string) $a);
-    }
-
-    public function testCanDetermineSizeFromMultipleStreams()
-    {
-        $a = new AppendStream([
-            Psr7\stream_for('foo'),
-            Psr7\stream_for('bar')
-        ]);
-        $this->assertEquals(6, $a->getSize());
-
-        $s = $this->getMockBuilder('Psr\Http\Message\StreamInterface')
-            ->setMethods(['isSeekable', 'isReadable'])
-            ->getMockForAbstractClass();
-        $s->expects($this->once())
-            ->method('isSeekable')
-            ->will($this->returnValue(null));
-        $s->expects($this->once())
-            ->method('isReadable')
-            ->will($this->returnValue(true));
-        $a->addStream($s);
-        $this->assertNull($a->getSize());
-    }
-
-    public function testCatchesExceptionsWhenCastingToString()
-    {
-        $s = $this->getMockBuilder('Psr\Http\Message\StreamInterface')
-            ->setMethods(['isSeekable', 'read', 'isReadable', 'eof'])
-            ->getMockForAbstractClass();
-        $s->expects($this->once())
-            ->method('isSeekable')
-            ->will($this->returnValue(true));
-        $s->expects($this->once())
-            ->method('read')
-            ->will($this->throwException(new \RuntimeException('foo')));
-        $s->expects($this->once())
-            ->method('isReadable')
-            ->will($this->returnValue(true));
-        $s->expects($this->any())
-            ->method('eof')
-            ->will($this->returnValue(false));
-        $a = new AppendStream([$s]);
-        $this->assertFalse($a->eof());
-        $this->assertSame('', (string) $a);
-    }
-
-    public function testCanDetach()
-    {
-        $s = new AppendStream();
-        $s->detach();
-    }
-
-    public function testReturnsEmptyMetadata()
-    {
-        $s = new AppendStream();
-        $this->assertEquals([], $s->getMetadata());
-        $this->assertNull($s->getMetadata('foo'));
-    }
-}
diff --git a/vendor/guzzlehttp/psr7/tests/BufferStreamTest.php b/vendor/guzzlehttp/psr7/tests/BufferStreamTest.php
deleted file mode 100644
index 0a635d4..0000000
--- a/vendor/guzzlehttp/psr7/tests/BufferStreamTest.php
+++ /dev/null
@@ -1,63 +0,0 @@
-<?php
-namespace GuzzleHttp\Tests\Psr7;
-
-use GuzzleHttp\Psr7\BufferStream;
-
-class BufferStreamTest extends \PHPUnit_Framework_TestCase
-{
-    public function testHasMetadata()
-    {
-        $b = new BufferStream(10);
-        $this->assertTrue($b->isReadable());
-        $this->assertTrue($b->isWritable());
-        $this->assertFalse($b->isSeekable());
-        $this->assertEquals(null, $b->getMetadata('foo'));
-        $this->assertEquals(10, $b->getMetadata('hwm'));
-        $this->assertEquals([], $b->getMetadata());
-    }
-
-    public function testRemovesReadDataFromBuffer()
-    {
-        $b = new BufferStream();
-        $this->assertEquals(3, $b->write('foo'));
-        $this->assertEquals(3, $b->getSize());
-        $this->assertFalse($b->eof());
-        $this->assertEquals('foo', $b->read(10));
-        $this->assertTrue($b->eof());
-        $this->assertEquals('', $b->read(10));
-    }
-
-    /**
-     * @expectedException \RuntimeException
-     * @expectedExceptionMessage Cannot determine the position of a BufferStream
-     */
-    public function testCanCastToStringOrGetContents()
-    {
-        $b = new BufferStream();
-        $b->write('foo');
-        $b->write('baz');
-        $this->assertEquals('foo', $b->read(3));
-        $b->write('bar');
-        $this->assertEquals('bazbar', (string) $b);
-        $b->tell();
-    }
-
-    public function testDetachClearsBuffer()
-    {
-        $b = new BufferStream();
-        $b->write('foo');
-        $b->detach();
-        $this->assertTrue($b->eof());
-        $this->assertEquals(3, $b->write('abc'));
-        $this->assertEquals('abc', $b->read(10));
-    }
-
-    public function testExceedingHighwaterMarkReturnsFalseButStillBuffers()
-    {
-        $b = new BufferStream(5);
-        $this->assertEquals(3, $b->write('hi '));
-        $this->assertFalse($b->write('hello'));
-        $this->assertEquals('hi hello', (string) $b);
-        $this->assertEquals(4, $b->write('test'));
-    }
-}
diff --git a/vendor/guzzlehttp/psr7/tests/CachingStreamTest.php b/vendor/guzzlehttp/psr7/tests/CachingStreamTest.php
deleted file mode 100644
index f82c3a5..0000000
--- a/vendor/guzzlehttp/psr7/tests/CachingStreamTest.php
+++ /dev/null
@@ -1,166 +0,0 @@
-<?php
-namespace GuzzleHttp\Tests\Psr7;
-
-use GuzzleHttp\Psr7;
-use GuzzleHttp\Psr7\CachingStream;
-
-/**
- * @covers GuzzleHttp\Psr7\CachingStream
- */
-class CachingStreamTest extends \PHPUnit_Framework_TestCase
-{
-    /** @var CachingStream */
-    protected $body;
-    protected $decorated;
-
-    public function setUp()
-    {
-        $this->decorated = Psr7\stream_for('testing');
-        $this->body = new CachingStream($this->decorated);
-    }
-
-    public function tearDown()
-    {
-        $this->decorated->close();
-        $this->body->close();
-    }
-
-    public function testUsesRemoteSizeIfPossible()
-    {
-        $body = Psr7\stream_for('test');
-        $caching = new CachingStream($body);
-        $this->assertEquals(4, $caching->getSize());
-    }
-
-    public function testReadsUntilCachedToByte()
-    {
-        $this->body->seek(5);
-        $this->assertEquals('n', $this->body->read(1));
-        $this->body->seek(0);
-        $this->assertEquals('t', $this->body->read(1));
-    }
-
-    public function testCanSeekNearEndWithSeekEnd()
-    {
-        $baseStream = Psr7\stream_for(implode('', range('a', 'z')));
-        $cached = new CachingStream($baseStream);
-        $cached->seek(1, SEEK_END);
-        $this->assertEquals(24, $baseStream->tell());
-        $this->assertEquals('y', $cached->read(1));
-        $this->assertEquals(26, $cached->getSize());
-    }
-
-    public function testCanSeekToEndWithSeekEnd()
-    {
-        $baseStream = Psr7\stream_for(implode('', range('a', 'z')));
-        $cached = new CachingStream($baseStream);
-        $cached->seek(0, SEEK_END);
-        $this->assertEquals(25, $baseStream->tell());
-        $this->assertEquals('z', $cached->read(1));
-        $this->assertEquals(26, $cached->getSize());
-    }
-
-    public function testCanUseSeekEndWithUnknownSize()
-    {
-        $baseStream = Psr7\stream_for('testing');
-        $decorated = Psr7\FnStream::decorate($baseStream, [
-            'getSize' => function () { return null; }
-        ]);
-        $cached = new CachingStream($decorated);
-        $cached->seek(1, SEEK_END);
-        $this->assertEquals('ng', $cached->read(2));
-    }
-
-    public function testRewindUsesSeek()
-    {
-        $a = Psr7\stream_for('foo');
-        $d = $this->getMockBuilder('GuzzleHttp\Psr7\CachingStream')
-            ->setMethods(array('seek'))
-            ->setConstructorArgs(array($a))
-            ->getMock();
-        $d->expects($this->once())
-            ->method('seek')
-            ->with(0)
-            ->will($this->returnValue(true));
-        $d->seek(0);
-    }
-
-    public function testCanSeekToReadBytes()
-    {
-        $this->assertEquals('te', $this->body->read(2));
-        $this->body->seek(0);
-        $this->assertEquals('test', $this->body->read(4));
-        $this->assertEquals(4, $this->body->tell());
-        $this->body->seek(2);
-        $this->assertEquals(2, $this->body->tell());
-        $this->body->seek(2, SEEK_CUR);
-        $this->assertEquals(4, $this->body->tell());
-        $this->assertEquals('ing', $this->body->read(3));
-    }
-
-    public function testWritesToBufferStream()
-    {
-        $this->body->read(2);
-        $this->body->write('hi');
-        $this->body->seek(0);
-        $this->assertEquals('tehiing', (string) $this->body);
-    }
-
-    public function testSkipsOverwrittenBytes()
-    {
-        $decorated = Psr7\stream_for(
-            implode("\n", array_map(function ($n) {
-                return str_pad($n, 4, '0', STR_PAD_LEFT);
-            }, range(0, 25)))
-        );
-
-        $body = new CachingStream($decorated);
-
-        $this->assertEquals("0000\n", Psr7\readline($body));
-        $this->assertEquals("0001\n", Psr7\readline($body));
-        // Write over part of the body yet to be read, so skip some bytes
-        $this->assertEquals(5, $body->write("TEST\n"));
-        $this->assertEquals(5, $this->readAttribute($body, 'skipReadBytes'));
-        // Read, which skips bytes, then reads
-        $this->assertEquals("0003\n", Psr7\readline($body));
-        $this->assertEquals(0, $this->readAttribute($body, 'skipReadBytes'));
-        $this->assertEquals("0004\n", Psr7\readline($body));
-        $this->assertEquals("0005\n", Psr7\readline($body));
-
-        // Overwrite part of the cached body (so don't skip any bytes)
-        $body->seek(5);
-        $this->assertEquals(5, $body->write("ABCD\n"));
-        $this->assertEquals(0, $this->readAttribute($body, 'skipReadBytes'));
-        $this->assertEquals("TEST\n", Psr7\readline($body));
-        $this->assertEquals("0003\n", Psr7\readline($body));
-        $this->assertEquals("0004\n", Psr7\readline($body));
-        $this->assertEquals("0005\n", Psr7\readline($body));
-        $this->assertEquals("0006\n", Psr7\readline($body));
-        $this->assertEquals(5, $body->write("1234\n"));
-        $this->assertEquals(5, $this->readAttribute($body, 'skipReadBytes'));
-
-        // Seek to 0 and ensure the overwritten bit is replaced
-        $body->seek(0);
-        $this->assertEquals("0000\nABCD\nTEST\n0003\n0004\n0005\n0006\n1234\n0008\n0009\n", $body->read(50));
-
-        // Ensure that casting it to a string does not include the bit that was overwritten
-        $this->assertContains("0000\nABCD\nTEST\n0003\n0004\n0005\n0006\n1234\n0008\n0009\n", (string) $body);
-    }
-
-    public function testClosesBothStreams()
-    {
-        $s = fopen('php://temp', 'r');
-        $a = Psr7\stream_for($s);
-        $d = new CachingStream($a);
-        $d->close();
-        $this->assertFalse(is_resource($s));
-    }
-
-    /**
-     * @expectedException \InvalidArgumentException
-     */
-    public function testEnsuresValidWhence()
-    {
-        $this->body->seek(10, -123456);
-    }
-}
diff --git a/vendor/guzzlehttp/psr7/tests/DroppingStreamTest.php b/vendor/guzzlehttp/psr7/tests/DroppingStreamTest.php
deleted file mode 100644
index 915b215..0000000
--- a/vendor/guzzlehttp/psr7/tests/DroppingStreamTest.php
+++ /dev/null
@@ -1,26 +0,0 @@
-<?php
-namespace GuzzleHttp\Tests\Psr7;
-
-use GuzzleHttp\Psr7\BufferStream;
-use GuzzleHttp\Psr7\DroppingStream;
-
-class DroppingStreamTest extends \PHPUnit_Framework_TestCase
-{
-    public function testBeginsDroppingWhenSizeExceeded()
-    {
-        $stream = new BufferStream();
-        $drop = new DroppingStream($stream, 5);
-        $this->assertEquals(3, $drop->write('hel'));
-        $this->assertEquals(2, $drop->write('lo'));
-        $this->assertEquals(5, $drop->getSize());
-        $this->assertEquals('hello', $drop->read(5));
-        $this->assertEquals(0, $drop->getSize());
-        $drop->write('12345678910');
-        $this->assertEquals(5, $stream->getSize());
-        $this->assertEquals(5, $drop->getSize());
-        $this->assertEquals('12345', (string) $drop);
-        $this->assertEquals(0, $drop->getSize());
-        $drop->write('hello');
-        $this->assertSame(0, $drop->write('test'));
-    }
-}
diff --git a/vendor/guzzlehttp/psr7/tests/FnStreamTest.php b/vendor/guzzlehttp/psr7/tests/FnStreamTest.php
deleted file mode 100644
index 66ae90a..0000000
--- a/vendor/guzzlehttp/psr7/tests/FnStreamTest.php
+++ /dev/null
@@ -1,90 +0,0 @@
-<?php
-namespace GuzzleHttp\Tests\Psr7;
-
-use GuzzleHttp\Psr7;
-use GuzzleHttp\Psr7\FnStream;
-
-/**
- * @covers GuzzleHttp\Psr7\FnStream
- */
-class FnStreamTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @expectedException \BadMethodCallException
-     * @expectedExceptionMessage seek() is not implemented in the FnStream
-     */
-    public function testThrowsWhenNotImplemented()
-    {
-        (new FnStream([]))->seek(1);
-    }
-
-    public function testProxiesToFunction()
-    {
-        $s = new FnStream([
-            'read' => function ($len) {
-                $this->assertEquals(3, $len);
-                return 'foo';
-            }
-        ]);
-
-        $this->assertEquals('foo', $s->read(3));
-    }
-
-    public function testCanCloseOnDestruct()
-    {
-        $called = false;
-        $s = new FnStream([
-            'close' => function () use (&$called) {
-                $called = true;
-            }
-        ]);
-        unset($s);
-        $this->assertTrue($called);
-    }
-
-    public function testDoesNotRequireClose()
-    {
-        $s = new FnStream([]);
-        unset($s);
-    }
-
-    public function testDecoratesStream()
-    {
-        $a = Psr7\stream_for('foo');
-        $b = FnStream::decorate($a, []);
-        $this->assertEquals(3, $b->getSize());
-        $this->assertEquals($b->isWritable(), true);
-        $this->assertEquals($b->isReadable(), true);
-        $this->assertEquals($b->isSeekable(), true);
-        $this->assertEquals($b->read(3), 'foo');
-        $this->assertEquals($b->tell(), 3);
-        $this->assertEquals($a->tell(), 3);
-        $this->assertSame('', $a->read(1));
-        $this->assertEquals($b->eof(), true);
-        $this->assertEquals($a->eof(), true);
-        $b->seek(0);
-        $this->assertEquals('foo', (string) $b);
-        $b->seek(0);
-        $this->assertEquals('foo', $b->getContents());
-        $this->assertEquals($a->getMetadata(), $b->getMetadata());
-        $b->seek(0, SEEK_END);
-        $b->write('bar');
-        $this->assertEquals('foobar', (string) $b);
-        $this->assertInternalType('resource', $b->detach());
-        $b->close();
-    }
-
-    public function testDecoratesWithCustomizations()
-    {
-        $called = false;
-        $a = Psr7\stream_for('foo');
-        $b = FnStream::decorate($a, [
-            'read' => function ($len) use (&$called, $a) {
-                $called = true;
-                return $a->read($len);
-            }
-        ]);
-        $this->assertEquals('foo', $b->read(3));
-        $this->assertTrue($called);
-    }
-}
diff --git a/vendor/guzzlehttp/psr7/tests/FunctionsTest.php b/vendor/guzzlehttp/psr7/tests/FunctionsTest.php
deleted file mode 100644
index de5b5cb..0000000
--- a/vendor/guzzlehttp/psr7/tests/FunctionsTest.php
+++ /dev/null
@@ -1,586 +0,0 @@
-<?php
-namespace GuzzleHttp\Tests\Psr7;
-
-use GuzzleHttp\Psr7;
-use GuzzleHttp\Psr7\FnStream;
-use GuzzleHttp\Psr7\NoSeekStream;
-
-class FunctionsTest extends \PHPUnit_Framework_TestCase
-{
-    public function testCopiesToString()
-    {
-        $s = Psr7\stream_for('foobaz');
-        $this->assertEquals('foobaz', Psr7\copy_to_string($s));
-        $s->seek(0);
-        $this->assertEquals('foo', Psr7\copy_to_string($s, 3));
-        $this->assertEquals('baz', Psr7\copy_to_string($s, 3));
-        $this->assertEquals('', Psr7\copy_to_string($s));
-    }
-
-    public function testCopiesToStringStopsWhenReadFails()
-    {
-        $s1 = Psr7\stream_for('foobaz');
-        $s1 = FnStream::decorate($s1, [
-            'read' => function () { return ''; }
-        ]);
-        $result = Psr7\copy_to_string($s1);
-        $this->assertEquals('', $result);
-    }
-
-    public function testCopiesToStream()
-    {
-        $s1 = Psr7\stream_for('foobaz');
-        $s2 = Psr7\stream_for('');
-        Psr7\copy_to_stream($s1, $s2);
-        $this->assertEquals('foobaz', (string) $s2);
-        $s2 = Psr7\stream_for('');
-        $s1->seek(0);
-        Psr7\copy_to_stream($s1, $s2, 3);
-        $this->assertEquals('foo', (string) $s2);
-        Psr7\copy_to_stream($s1, $s2, 3);
-        $this->assertEquals('foobaz', (string) $s2);
-    }
-
-    public function testStopsCopyToStreamWhenWriteFails()
-    {
-        $s1 = Psr7\stream_for('foobaz');
-        $s2 = Psr7\stream_for('');
-        $s2 = FnStream::decorate($s2, ['write' => function () { return 0; }]);
-        Psr7\copy_to_stream($s1, $s2);
-        $this->assertEquals('', (string) $s2);
-    }
-
-    public function testStopsCopyToSteamWhenWriteFailsWithMaxLen()
-    {
-        $s1 = Psr7\stream_for('foobaz');
-        $s2 = Psr7\stream_for('');
-        $s2 = FnStream::decorate($s2, ['write' => function () { return 0; }]);
-        Psr7\copy_to_stream($s1, $s2, 10);
-        $this->assertEquals('', (string) $s2);
-    }
-
-    public function testStopsCopyToSteamWhenReadFailsWithMaxLen()
-    {
-        $s1 = Psr7\stream_for('foobaz');
-        $s1 = FnStream::decorate($s1, ['read' => function () { return ''; }]);
-        $s2 = Psr7\stream_for('');
-        Psr7\copy_to_stream($s1, $s2, 10);
-        $this->assertEquals('', (string) $s2);
-    }
-
-    public function testReadsLines()
-    {
-        $s = Psr7\stream_for("foo\nbaz\nbar");
-        $this->assertEquals("foo\n", Psr7\readline($s));
-        $this->assertEquals("baz\n", Psr7\readline($s));
-        $this->assertEquals("bar", Psr7\readline($s));
-    }
-
-    public function testReadsLinesUpToMaxLength()
-    {
-        $s = Psr7\stream_for("12345\n");
-        $this->assertEquals("123", Psr7\readline($s, 4));
-        $this->assertEquals("45\n", Psr7\readline($s));
-    }
-
-    public function testReadsLineUntilFalseReturnedFromRead()
-    {
-        $s = $this->getMockBuilder('GuzzleHttp\Psr7\Stream')
-            ->setMethods(['read', 'eof'])
-            ->disableOriginalConstructor()
-            ->getMock();
-        $s->expects($this->exactly(2))
-            ->method('read')
-            ->will($this->returnCallback(function () {
-                static $c = false;
-                if ($c) {
-                    return false;
-                }
-                $c = true;
-                return 'h';
-            }));
-        $s->expects($this->exactly(2))
-            ->method('eof')
-            ->will($this->returnValue(false));
-        $this->assertEquals("h", Psr7\readline($s));
-    }
-
-    public function testCalculatesHash()
-    {
-        $s = Psr7\stream_for('foobazbar');
-        $this->assertEquals(md5('foobazbar'), Psr7\hash($s, 'md5'));
-    }
-
-    /**
-     * @expectedException \RuntimeException
-     */
-    public function testCalculatesHashThrowsWhenSeekFails()
-    {
-        $s = new NoSeekStream(Psr7\stream_for('foobazbar'));
-        $s->read(2);
-        Psr7\hash($s, 'md5');
-    }
-
-    public function testCalculatesHashSeeksToOriginalPosition()
-    {
-        $s = Psr7\stream_for('foobazbar');
-        $s->seek(4);
-        $this->assertEquals(md5('foobazbar'), Psr7\hash($s, 'md5'));
-        $this->assertEquals(4, $s->tell());
-    }
-
-    public function testOpensFilesSuccessfully()
-    {
-        $r = Psr7\try_fopen(__FILE__, 'r');
-        $this->assertInternalType('resource', $r);
-        fclose($r);
-    }
-
-    /**
-     * @expectedException \RuntimeException
-     * @expectedExceptionMessage Unable to open /path/to/does/not/exist using mode r
-     */
-    public function testThrowsExceptionNotWarning()
-    {
-        Psr7\try_fopen('/path/to/does/not/exist', 'r');
-    }
-
-    public function parseQueryProvider()
-    {
-        return [
-            // Does not need to parse when the string is empty
-            ['', []],
-            // Can parse mult-values items
-            ['q=a&q=b', ['q' => ['a', 'b']]],
-            // Can parse multi-valued items that use numeric indices
-            ['q[0]=a&q[1]=b', ['q[0]' => 'a', 'q[1]' => 'b']],
-            // Can parse duplicates and does not include numeric indices
-            ['q[]=a&q[]=b', ['q[]' => ['a', 'b']]],
-            // Ensures that the value of "q" is an array even though one value
-            ['q[]=a', ['q[]' => 'a']],
-            // Does not modify "." to "_" like PHP's parse_str()
-            ['q.a=a&q.b=b', ['q.a' => 'a', 'q.b' => 'b']],
-            // Can decode %20 to " "
-            ['q%20a=a%20b', ['q a' => 'a b']],
-            // Can parse funky strings with no values by assigning each to null
-            ['q&a', ['q' => null, 'a' => null]],
-            // Does not strip trailing equal signs
-            ['data=abc=', ['data' => 'abc=']],
-            // Can store duplicates without affecting other values
-            ['foo=a&foo=b&?µ=c', ['foo' => ['a', 'b'], '?µ' => 'c']],
-            // Sets value to null when no "=" is present
-            ['foo', ['foo' => null]],
-            // Preserves "0" keys.
-            ['0', ['0' => null]],
-            // Sets the value to an empty string when "=" is present
-            ['0=', ['0' => '']],
-            // Preserves falsey keys
-            ['var=0', ['var' => '0']],
-            ['a[b][c]=1&a[b][c]=2', ['a[b][c]' => ['1', '2']]],
-            ['a[b]=c&a[d]=e', ['a[b]' => 'c', 'a[d]' => 'e']],
-            // Ensure it doesn't leave things behind with repeated values
-            // Can parse mult-values items
-            ['q=a&q=b&q=c', ['q' => ['a', 'b', 'c']]],
-        ];
-    }
-
-    /**
-     * @dataProvider parseQueryProvider
-     */
-    public function testParsesQueries($input, $output)
-    {
-        $result = Psr7\parse_query($input);
-        $this->assertSame($output, $result);
-    }
-
-    public function testDoesNotDecode()
-    {
-        $str = 'foo%20=bar';
-        $data = Psr7\parse_query($str, false);
-        $this->assertEquals(['foo%20' => 'bar'], $data);
-    }
-
-    /**
-     * @dataProvider parseQueryProvider
-     */
-    public function testParsesAndBuildsQueries($input, $output)
-    {
-        $result = Psr7\parse_query($input, false);
-        $this->assertSame($input, Psr7\build_query($result, false));
-    }
-
-    public function testEncodesWithRfc1738()
-    {
-        $str = Psr7\build_query(['foo bar' => 'baz+'], PHP_QUERY_RFC1738);
-        $this->assertEquals('foo+bar=baz%2B', $str);
-    }
-
-    public function testEncodesWithRfc3986()
-    {
-        $str = Psr7\build_query(['foo bar' => 'baz+'], PHP_QUERY_RFC3986);
-        $this->assertEquals('foo%20bar=baz%2B', $str);
-    }
-
-    public function testDoesNotEncode()
-    {
-        $str = Psr7\build_query(['foo bar' => 'baz+'], false);
-        $this->assertEquals('foo bar=baz+', $str);
-    }
-
-    public function testCanControlDecodingType()
-    {
-        $result = Psr7\parse_query('var=foo+bar', PHP_QUERY_RFC3986);
-        $this->assertEquals('foo+bar', $result['var']);
-        $result = Psr7\parse_query('var=foo+bar', PHP_QUERY_RFC1738);
-        $this->assertEquals('foo bar', $result['var']);
-    }
-
-    public function testParsesRequestMessages()
-    {
-        $req = "GET /abc HTTP/1.0\r\nHost: foo.com\r\nFoo: Bar\r\nBaz: Bam\r\nBaz: Qux\r\n\r\nTest";
-        $request = Psr7\parse_request($req);
-        $this->assertEquals('GET', $request->getMethod());
-        $this->assertEquals('/abc', $request->getRequestTarget());
-        $this->assertEquals('1.0', $request->getProtocolVersion());
-        $this->assertEquals('foo.com', $request->getHeaderLine('Host'));
-        $this->assertEquals('Bar', $request->getHeaderLine('Foo'));
-        $this->assertEquals('Bam, Qux', $request->getHeaderLine('Baz'));
-        $this->assertEquals('Test', (string) $request->getBody());
-        $this->assertEquals('http://foo.com/abc', (string) $request->getUri());
-    }
-
-    public function testParsesRequestMessagesWithHttpsScheme()
-    {
-        $req = "PUT /abc?baz=bar HTTP/1.1\r\nHost: foo.com:443\r\n\r\n";
-        $request = Psr7\parse_request($req);
-        $this->assertEquals('PUT', $request->getMethod());
-        $this->assertEquals('/abc?baz=bar', $request->getRequestTarget());
-        $this->assertEquals('1.1', $request->getProtocolVersion());
-        $this->assertEquals('foo.com:443', $request->getHeaderLine('Host'));
-        $this->assertEquals('', (string) $request->getBody());
-        $this->assertEquals('https://foo.com/abc?baz=bar', (string) $request->getUri());
-    }
-
-    public function testParsesRequestMessagesWithUriWhenHostIsNotFirst()
-    {
-        $req = "PUT / HTTP/1.1\r\nFoo: Bar\r\nHost: foo.com\r\n\r\n";
-        $request = Psr7\parse_request($req);
-        $this->assertEquals('PUT', $request->getMethod());
-        $this->assertEquals('/', $request->getRequestTarget());
-        $this->assertEquals('http://foo.com/', (string) $request->getUri());
-    }
-
-    public function testParsesRequestMessagesWithFullUri()
-    {
-        $req = "GET https://www.google.com:443/search?q=foobar HTTP/1.1\r\nHost: www.google.com\r\n\r\n";
-        $request = Psr7\parse_request($req);
-        $this->assertEquals('GET', $request->getMethod());
-        $this->assertEquals('https://www.google.com:443/search?q=foobar', $request->getRequestTarget());
-        $this->assertEquals('1.1', $request->getProtocolVersion());
-        $this->assertEquals('www.google.com', $request->getHeaderLine('Host'));
-        $this->assertEquals('', (string) $request->getBody());
-        $this->assertEquals('https://www.google.com/search?q=foobar', (string) $request->getUri());
-    }
-
-    /**
-     * @expectedException \InvalidArgumentException
-     */
-    public function testValidatesRequestMessages()
-    {
-        Psr7\parse_request("HTTP/1.1 200 OK\r\n\r\n");
-    }
-
-    public function testParsesResponseMessages()
-    {
-        $res = "HTTP/1.0 200 OK\r\nFoo: Bar\r\nBaz: Bam\r\nBaz: Qux\r\n\r\nTest";
-        $response = Psr7\parse_response($res);
-        $this->assertEquals(200, $response->getStatusCode());
-        $this->assertEquals('OK', $response->getReasonPhrase());
-        $this->assertEquals('1.0', $response->getProtocolVersion());
-        $this->assertEquals('Bar', $response->getHeaderLine('Foo'));
-        $this->assertEquals('Bam, Qux', $response->getHeaderLine('Baz'));
-        $this->assertEquals('Test', (string) $response->getBody());
-    }
-
-    /**
-     * @expectedException \InvalidArgumentException
-     */
-    public function testValidatesResponseMessages()
-    {
-        Psr7\parse_response("GET / HTTP/1.1\r\n\r\n");
-    }
-
-    public function testDetermineMimetype()
-    {
-        $this->assertNull(Psr7\mimetype_from_extension('not-a-real-extension'));
-        $this->assertEquals(
-            'application/json',
-            Psr7\mimetype_from_extension('json')
-        );
-        $this->assertEquals(
-            'image/jpeg',
-            Psr7\mimetype_from_filename('/tmp/images/IMG034821.JPEG')
-        );
-    }
-
-    public function testCreatesUriForValue()
-    {
-        $this->assertInstanceOf('GuzzleHttp\Psr7\Uri', Psr7\uri_for('/foo'));
-        $this->assertInstanceOf(
-            'GuzzleHttp\Psr7\Uri',
-            Psr7\uri_for(new Psr7\Uri('/foo'))
-        );
-    }
-
-    /**
-     * @expectedException \InvalidArgumentException
-     */
-    public function testValidatesUri()
-    {
-        Psr7\uri_for([]);
-    }
-
-    public function testKeepsPositionOfResource()
-    {
-        $h = fopen(__FILE__, 'r');
-        fseek($h, 10);
-        $stream = Psr7\stream_for($h);
-        $this->assertEquals(10, $stream->tell());
-        $stream->close();
-    }
-
-    public function testCreatesWithFactory()
-    {
-        $stream = Psr7\stream_for('foo');
-        $this->assertInstanceOf('GuzzleHttp\Psr7\Stream', $stream);
-        $this->assertEquals('foo', $stream->getContents());
-        $stream->close();
-    }
-
-    public function testFactoryCreatesFromEmptyString()
-    {
-        $s = Psr7\stream_for();
-        $this->assertInstanceOf('GuzzleHttp\Psr7\Stream', $s);
-    }
-
-    public function testFactoryCreatesFromNull()
-    {
-        $s = Psr7\stream_for(null);
-        $this->assertInstanceOf('GuzzleHttp\Psr7\Stream', $s);
-    }
-
-    public function testFactoryCreatesFromResource()
-    {
-        $r = fopen(__FILE__, 'r');
-        $s = Psr7\stream_for($r);
-        $this->assertInstanceOf('GuzzleHttp\Psr7\Stream', $s);
-        $this->assertSame(file_get_contents(__FILE__), (string) $s);
-    }
-
-    public function testFactoryCreatesFromObjectWithToString()
-    {
-        $r = new HasToString();
-        $s = Psr7\stream_for($r);
-        $this->assertInstanceOf('GuzzleHttp\Psr7\Stream', $s);
-        $this->assertEquals('foo', (string) $s);
-    }
-
-    public function testCreatePassesThrough()
-    {
-        $s = Psr7\stream_for('foo');
-        $this->assertSame($s, Psr7\stream_for($s));
-    }
-
-    /**
-     * @expectedException \InvalidArgumentException
-     */
-    public function testThrowsExceptionForUnknown()
-    {
-        Psr7\stream_for(new \stdClass());
-    }
-
-    public function testReturnsCustomMetadata()
-    {
-        $s = Psr7\stream_for('foo', ['metadata' => ['hwm' => 3]]);
-        $this->assertEquals(3, $s->getMetadata('hwm'));
-        $this->assertArrayHasKey('hwm', $s->getMetadata());
-    }
-
-    public function testCanSetSize()
-    {
-        $s = Psr7\stream_for('', ['size' => 10]);
-        $this->assertEquals(10, $s->getSize());
-    }
-
-    public function testCanCreateIteratorBasedStream()
-    {
-        $a = new \ArrayIterator(['foo', 'bar', '123']);
-        $p = Psr7\stream_for($a);
-        $this->assertInstanceOf('GuzzleHttp\Psr7\PumpStream', $p);
-        $this->assertEquals('foo', $p->read(3));
-        $this->assertFalse($p->eof());
-        $this->assertEquals('b', $p->read(1));
-        $this->assertEquals('a', $p->read(1));
-        $this->assertEquals('r12', $p->read(3));
-        $this->assertFalse($p->eof());
-        $this->assertEquals('3', $p->getContents());
-        $this->assertTrue($p->eof());
-        $this->assertEquals(9, $p->tell());
-    }
-
-    public function testConvertsRequestsToStrings()
-    {
-        $request = new Psr7\Request('PUT', 'http://foo.com/hi?123', [
-            'Baz' => 'bar',
-            'Qux' => ' ipsum'
-        ], 'hello', '1.0');
-        $this->assertEquals(
-            "PUT /hi?123 HTTP/1.0\r\nHost: foo.com\r\nBaz: bar\r\nQux: ipsum\r\n\r\nhello",
-            Psr7\str($request)
-        );
-    }
-
-    public function testConvertsResponsesToStrings()
-    {
-        $response = new Psr7\Response(200, [
-            'Baz' => 'bar',
-            'Qux' => ' ipsum'
-        ], 'hello', '1.0', 'FOO');
-        $this->assertEquals(
-            "HTTP/1.0 200 FOO\r\nBaz: bar\r\nQux: ipsum\r\n\r\nhello",
-            Psr7\str($response)
-        );
-    }
-
-    public function parseParamsProvider()
-    {
-        $res1 = array(
-            array(
-                '<http:/.../front.jpeg>',
-                'rel' => 'front',
-                'type' => 'image/jpeg',
-            ),
-            array(
-                '<http://.../back.jpeg>',
-                'rel' => 'back',
-                'type' => 'image/jpeg',
-            ),
-        );
-        return array(
-            array(
-                '<http:/.../front.jpeg>; rel="front"; type="image/jpeg", <http://.../back.jpeg>; rel=back; type="image/jpeg"',
-                $res1
-            ),
-            array(
-                '<http:/.../front.jpeg>; rel="front"; type="image/jpeg",<http://.../back.jpeg>; rel=back; type="image/jpeg"',
-                $res1
-            ),
-            array(
-                'foo="baz"; bar=123, boo, test="123", foobar="foo;bar"',
-                array(
-                    array('foo' => 'baz', 'bar' => '123'),
-                    array('boo'),
-                    array('test' => '123'),
-                    array('foobar' => 'foo;bar')
-                )
-            ),
-            array(
-                '<http://.../side.jpeg?test=1>; rel="side"; type="image/jpeg",<http://.../side.jpeg?test=2>; rel=side; type="image/jpeg"',
-                array(
-                    array('<http://.../side.jpeg?test=1>', 'rel' => 'side', 'type' => 'image/jpeg'),
-                    array('<http://.../side.jpeg?test=2>', 'rel' => 'side', 'type' => 'image/jpeg')
-                )
-            ),
-            array(
-                '',
-                array()
-            )
-        );
-    }
-    /**
-     * @dataProvider parseParamsProvider
-     */
-    public function testParseParams($header, $result)
-    {
-        $this->assertEquals($result, Psr7\parse_header($header));
-    }
-
-    public function testParsesArrayHeaders()
-    {
-        $header = ['a, b', 'c', 'd, e'];
-        $this->assertEquals(['a', 'b', 'c', 'd', 'e'], Psr7\normalize_header($header));
-    }
-
-    public function testRewindsBody()
-    {
-        $body = Psr7\stream_for('abc');
-        $res = new Psr7\Response(200, [], $body);
-        Psr7\rewind_body($res);
-        $this->assertEquals(0, $body->tell());
-        $body->rewind(1);
-        Psr7\rewind_body($res);
-        $this->assertEquals(0, $body->tell());
-    }
-
-    /**
-     * @expectedException \RuntimeException
-     */
-    public function testThrowsWhenBodyCannotBeRewound()
-    {
-        $body = Psr7\stream_for('abc');
-        $body->read(1);
-        $body = FnStream::decorate($body, [
-            'rewind' => function () { throw new \RuntimeException('a'); }
-        ]);
-        $res = new Psr7\Response(200, [], $body);
-        Psr7\rewind_body($res);
-    }
-
-    public function testCanModifyRequestWithUri()
-    {
-        $r1 = new Psr7\Request('GET', 'http://foo.com');
-        $r2 = Psr7\modify_request($r1, [
-            'uri' => new Psr7\Uri('http://www.foo.com')
-        ]);
-        $this->assertEquals('http://www.foo.com', (string) $r2->getUri());
-        $this->assertEquals('www.foo.com', (string) $r2->getHeaderLine('host'));
-    }
-
-    public function testCanModifyRequestWithCaseInsensitiveHeader()
-    {
-        $r1 = new Psr7\Request('GET', 'http://foo.com', ['User-Agent' => 'foo']);
-        $r2 = Psr7\modify_request($r1, ['set_headers' => ['User-agent' => 'bar']]);
-        $this->assertEquals('bar', $r2->getHeaderLine('User-Agent'));
-        $this->assertEquals('bar', $r2->getHeaderLine('User-agent'));
-    }
-
-    public function testReturnsAsIsWhenNoChanges()
-    {
-        $request = new Psr7\Request('GET', 'http://foo.com');
-        $this->assertSame($request, Psr7\modify_request($request, []));
-    }
-
-    public function testReturnsUriAsIsWhenNoChanges()
-    {
-        $r1 = new Psr7\Request('GET', 'http://foo.com');
-        $r2 = Psr7\modify_request($r1, ['set_headers' => ['foo' => 'bar']]);
-        $this->assertNotSame($r1, $r2);
-        $this->assertEquals('bar', $r2->getHeaderLine('foo'));
-    }
-
-    public function testRemovesHeadersFromMessage()
-    {
-        $r1 = new Psr7\Request('GET', 'http://foo.com', ['foo' => 'bar']);
-        $r2 = Psr7\modify_request($r1, ['remove_headers' => ['foo']]);
-        $this->assertNotSame($r1, $r2);
-        $this->assertFalse($r2->hasHeader('foo'));
-    }
-
-    public function testAddsQueryToUri()
-    {
-        $r1 = new Psr7\Request('GET', 'http://foo.com');
-        $r2 = Psr7\modify_request($r1, ['query' => 'foo=bar']);
-        $this->assertNotSame($r1, $r2);
-        $this->assertEquals('foo=bar', $r2->getUri()->getQuery());
-    }
-}
diff --git a/vendor/guzzlehttp/psr7/tests/InflateStreamTest.php b/vendor/guzzlehttp/psr7/tests/InflateStreamTest.php
deleted file mode 100644
index 927fc0b..0000000
--- a/vendor/guzzlehttp/psr7/tests/InflateStreamTest.php
+++ /dev/null
@@ -1,16 +0,0 @@
-<?php
-namespace GuzzleHttp\Tests\Psr7;
-
-use GuzzleHttp\Psr7;
-use GuzzleHttp\Psr7\InflateStream;
-
-class InflateStreamtest extends \PHPUnit_Framework_TestCase
-{
-    public function testInflatesStreams()
-    {
-        $content = gzencode('test');
-        $a = Psr7\stream_for($content);
-        $b = new InflateStream($a);
-        $this->assertEquals('test', (string) $b);
-    }
-}
diff --git a/vendor/guzzlehttp/psr7/tests/LazyOpenStreamTest.php b/vendor/guzzlehttp/psr7/tests/LazyOpenStreamTest.php
deleted file mode 100644
index fdef142..0000000
--- a/vendor/guzzlehttp/psr7/tests/LazyOpenStreamTest.php
+++ /dev/null
@@ -1,64 +0,0 @@
-<?php
-namespace GuzzleHttp\Tests\Psr7;
-
-use GuzzleHttp\Psr7\LazyOpenStream;
-
-class LazyOpenStreamTest extends \PHPUnit_Framework_TestCase
-{
-    private $fname;
-
-    public function setup()
-    {
-        $this->fname = tempnam('/tmp', 'tfile');
-
-        if (file_exists($this->fname)) {
-            unlink($this->fname);
-        }
-    }
-
-    public function tearDown()
-    {
-        if (file_exists($this->fname)) {
-            unlink($this->fname);
-        }
-    }
-
-    public function testOpensLazily()
-    {
-        $l = new LazyOpenStream($this->fname, 'w+');
-        $l->write('foo');
-        $this->assertInternalType('array', $l->getMetadata());
-        $this->assertFileExists($this->fname);
-        $this->assertEquals('foo', file_get_contents($this->fname));
-        $this->assertEquals('foo', (string) $l);
-    }
-
-    public function testProxiesToFile()
-    {
-        file_put_contents($this->fname, 'foo');
-        $l = new LazyOpenStream($this->fname, 'r');
-        $this->assertEquals('foo', $l->read(4));
-        $this->assertTrue($l->eof());
-        $this->assertEquals(3, $l->tell());
-        $this->assertTrue($l->isReadable());
-        $this->assertTrue($l->isSeekable());
-        $this->assertFalse($l->isWritable());
-        $l->seek(1);
-        $this->assertEquals('oo', $l->getContents());
-        $this->assertEquals('foo', (string) $l);
-        $this->assertEquals(3, $l->getSize());
-        $this->assertInternalType('array', $l->getMetadata());
-        $l->close();
-    }
-
-    public function testDetachesUnderlyingStream()
-    {
-        file_put_contents($this->fname, 'foo');
-        $l = new LazyOpenStream($this->fname, 'r');
-        $r = $l->detach();
-        $this->assertInternalType('resource', $r);
-        fseek($r, 0);
-        $this->assertEquals('foo', stream_get_contents($r));
-        fclose($r);
-    }
-}
diff --git a/vendor/guzzlehttp/psr7/tests/LimitStreamTest.php b/vendor/guzzlehttp/psr7/tests/LimitStreamTest.php
deleted file mode 100644
index 2198b7a..0000000
--- a/vendor/guzzlehttp/psr7/tests/LimitStreamTest.php
+++ /dev/null
@@ -1,166 +0,0 @@
-<?php
-namespace GuzzleHttp\Tests\Psr7;
-
-use GuzzleHttp\Psr7;
-use GuzzleHttp\Psr7\FnStream;
-use GuzzleHttp\Psr7\Stream;
-use GuzzleHttp\Psr7\LimitStream;
-use GuzzleHttp\Psr7\NoSeekStream;
-
-/**
- * @covers GuzzleHttp\Psr7\LimitStream
- */
-class LimitStreamTest extends \PHPUnit_Framework_TestCase
-{
-    /** @var LimitStream */
-    protected $body;
-
-    /** @var Stream */
-    protected $decorated;
-
-    public function setUp()
-    {
-        $this->decorated = Psr7\stream_for(fopen(__FILE__, 'r'));
-        $this->body = new LimitStream($this->decorated, 10, 3);
-    }
-
-    public function testReturnsSubset()
-    {
-        $body = new LimitStream(Psr7\stream_for('foo'), -1, 1);
-        $this->assertEquals('oo', (string) $body);
-        $this->assertTrue($body->eof());
-        $body->seek(0);
-        $this->assertFalse($body->eof());
-        $this->assertEquals('oo', $body->read(100));
-        $this->assertSame('', $body->read(1));
-        $this->assertTrue($body->eof());
-    }
-
-    public function testReturnsSubsetWhenCastToString()
-    {
-        $body = Psr7\stream_for('foo_baz_bar');
-        $limited = new LimitStream($body, 3, 4);
-        $this->assertEquals('baz', (string) $limited);
-    }
-
-    /**
-     * @expectedException \RuntimeException
-     * @expectedExceptionMessage Unable to seek to stream position 10 with whence 0
-     */
-    public function testEnsuresPositionCanBeekSeekedTo()
-    {
-        new LimitStream(Psr7\stream_for(''), 0, 10);
-    }
-
-    public function testReturnsSubsetOfEmptyBodyWhenCastToString()
-    {
-        $body = Psr7\stream_for('01234567891234');
-        $limited = new LimitStream($body, 0, 10);
-        $this->assertEquals('', (string) $limited);
-    }
-
-    public function testReturnsSpecificSubsetOBodyWhenCastToString()
-    {
-        $body = Psr7\stream_for('0123456789abcdef');
-        $limited = new LimitStream($body, 3, 10);
-        $this->assertEquals('abc', (string) $limited);
-    }
-
-    public function testSeeksWhenConstructed()
-    {
-        $this->assertEquals(0, $this->body->tell());
-        $this->assertEquals(3, $this->decorated->tell());
-    }
-
-    public function testAllowsBoundedSeek()
-    {
-        $this->body->seek(100);
-        $this->assertEquals(10, $this->body->tell());
-        $this->assertEquals(13, $this->decorated->tell());
-        $this->body->seek(0);
-        $this->assertEquals(0, $this->body->tell());
-        $this->assertEquals(3, $this->decorated->tell());
-        try {
-            $this->body->seek(-10);
-            $this->fail();
-        } catch (\RuntimeException $e) {}
-        $this->assertEquals(0, $this->body->tell());
-        $this->assertEquals(3, $this->decorated->tell());
-        $this->body->seek(5);
-        $this->assertEquals(5, $this->body->tell());
-        $this->assertEquals(8, $this->decorated->tell());
-        // Fail
-        try {
-            $this->body->seek(1000, SEEK_END);
-            $this->fail();
-        } catch (\RuntimeException $e) {}
-    }
-
-    public function testReadsOnlySubsetOfData()
-    {
-        $data = $this->body->read(100);
-        $this->assertEquals(10, strlen($data));
-        $this->assertSame('', $this->body->read(1000));
-
-        $this->body->setOffset(10);
-        $newData = $this->body->read(100);
-        $this->assertEquals(10, strlen($newData));
-        $this->assertNotSame($data, $newData);
-    }
-
-    /**
-     * @expectedException \RuntimeException
-     * @expectedExceptionMessage Could not seek to stream offset 2
-     */
-    public function testThrowsWhenCurrentGreaterThanOffsetSeek()
-    {
-        $a = Psr7\stream_for('foo_bar');
-        $b = new NoSeekStream($a);
-        $c = new LimitStream($b);
-        $a->getContents();
-        $c->setOffset(2);
-    }
-
-    public function testCanGetContentsWithoutSeeking()
-    {
-        $a = Psr7\stream_for('foo_bar');
-        $b = new NoSeekStream($a);
-        $c = new LimitStream($b);
-        $this->assertEquals('foo_bar', $c->getContents());
-    }
-
-    public function testClaimsConsumedWhenReadLimitIsReached()
-    {
-        $this->assertFalse($this->body->eof());
-        $this->body->read(1000);
-        $this->assertTrue($this->body->eof());
-    }
-
-    public function testContentLengthIsBounded()
-    {
-        $this->assertEquals(10, $this->body->getSize());
-    }
-
-    public function testGetContentsIsBasedOnSubset()
-    {
-        $body = new LimitStream(Psr7\stream_for('foobazbar'), 3, 3);
-        $this->assertEquals('baz', $body->getContents());
-    }
-
-    public function testReturnsNullIfSizeCannotBeDetermined()
-    {
-        $a = new FnStream([
-            'getSize' => function () { return null; },
-            'tell'    => function () { return 0; },
-        ]);
-        $b = new LimitStream($a);
-        $this->assertNull($b->getSize());
-    }
-
-    public function testLengthLessOffsetWhenNoLimitSize()
-    {
-        $a = Psr7\stream_for('foo_bar');
-        $b = new LimitStream($a, -1, 4);
-        $this->assertEquals(3, $b->getSize());
-    }
-}
diff --git a/vendor/guzzlehttp/psr7/tests/MultipartStreamTest.php b/vendor/guzzlehttp/psr7/tests/MultipartStreamTest.php
deleted file mode 100644
index 61edb06..0000000
--- a/vendor/guzzlehttp/psr7/tests/MultipartStreamTest.php
+++ /dev/null
@@ -1,214 +0,0 @@
-<?php
-namespace GuzzleHttp\Tests;
-
-use GuzzleHttp\Psr7;
-use GuzzleHttp\Psr7\MultipartStream;
-
-class MultipartStreamTest extends \PHPUnit_Framework_TestCase
-{
-    public function testCreatesDefaultBoundary()
-    {
-        $b = new MultipartStream();
-        $this->assertNotEmpty($b->getBoundary());
-    }
-
-    public function testCanProvideBoundary()
-    {
-        $b = new MultipartStream([], 'foo');
-        $this->assertEquals('foo', $b->getBoundary());
-    }
-
-    public function testIsNotWritable()
-    {
-        $b = new MultipartStream();
-        $this->assertFalse($b->isWritable());
-    }
-
-    public function testCanCreateEmptyStream()
-    {
-        $b = new MultipartStream();
-        $boundary = $b->getBoundary();
-        $this->assertSame("--{$boundary}--\r\n", $b->getContents());
-        $this->assertSame(strlen($boundary) + 6, $b->getSize());
-    }
-
-    /**
-     * @expectedException \InvalidArgumentException
-     */
-    public function testValidatesFilesArrayElement()
-    {
-        new MultipartStream([['foo' => 'bar']]);
-    }
-
-    /**
-     * @expectedException \InvalidArgumentException
-     */
-    public function testEnsuresFileHasName()
-    {
-        new MultipartStream([['contents' => 'bar']]);
-    }
-
-    public function testSerializesFields()
-    {
-        $b = new MultipartStream([
-            [
-                'name'     => 'foo',
-                'contents' => 'bar'
-            ],
-            [
-                'name' => 'baz',
-                'contents' => 'bam'
-            ]
-        ], 'boundary');
-        $this->assertEquals(
-            "--boundary\r\nContent-Disposition: form-data; name=\"foo\"\r\nContent-Length: 3\r\n\r\n"
-            . "bar\r\n--boundary\r\nContent-Disposition: form-data; name=\"baz\"\r\nContent-Length: 3"
-            . "\r\n\r\nbam\r\n--boundary--\r\n", (string) $b);
-    }
-
-    public function testSerializesFiles()
-    {
-        $f1 = Psr7\FnStream::decorate(Psr7\stream_for('foo'), [
-            'getMetadata' => function () {
-                return '/foo/bar.txt';
-            }
-        ]);
-
-        $f2 = Psr7\FnStream::decorate(Psr7\stream_for('baz'), [
-            'getMetadata' => function () {
-                return '/foo/baz.jpg';
-            }
-        ]);
-
-        $f3 = Psr7\FnStream::decorate(Psr7\stream_for('bar'), [
-            'getMetadata' => function () {
-                return '/foo/bar.gif';
-            }
-        ]);
-
-        $b = new MultipartStream([
-            [
-                'name'     => 'foo',
-                'contents' => $f1
-            ],
-            [
-                'name' => 'qux',
-                'contents' => $f2
-            ],
-            [
-                'name'     => 'qux',
-                'contents' => $f3
-            ],
-        ], 'boundary');
-
-        $expected = <<<EOT
---boundary
-Content-Disposition: form-data; name="foo"; filename="bar.txt"
-Content-Length: 3
-Content-Type: text/plain
-
-foo
---boundary
-Content-Disposition: form-data; name="qux"; filename="baz.jpg"
-Content-Length: 3
-Content-Type: image/jpeg
-
-baz
---boundary
-Content-Disposition: form-data; name="qux"; filename="bar.gif"
-Content-Length: 3
-Content-Type: image/gif
-
-bar
---boundary--
-
-EOT;
-
-        $this->assertEquals($expected, str_replace("\r", '', $b));
-    }
-
-    public function testSerializesFilesWithCustomHeaders()
-    {
-        $f1 = Psr7\FnStream::decorate(Psr7\stream_for('foo'), [
-            'getMetadata' => function () {
-                return '/foo/bar.txt';
-            }
-        ]);
-
-        $b = new MultipartStream([
-            [
-                'name' => 'foo',
-                'contents' => $f1,
-                'headers'  => [
-                    'x-foo' => 'bar',
-                    'content-disposition' => 'custom'
-                ]
-            ]
-        ], 'boundary');
-
-        $expected = <<<EOT
---boundary
-x-foo: bar
-content-disposition: custom
-Content-Length: 3
-Content-Type: text/plain
-
-foo
---boundary--
-
-EOT;
-
-        $this->assertEquals($expected, str_replace("\r", '', $b));
-    }
-
-    public function testSerializesFilesWithCustomHeadersAndMultipleValues()
-    {
-        $f1 = Psr7\FnStream::decorate(Psr7\stream_for('foo'), [
-            'getMetadata' => function () {
-                return '/foo/bar.txt';
-            }
-        ]);
-
-        $f2 = Psr7\FnStream::decorate(Psr7\stream_for('baz'), [
-            'getMetadata' => function () {
-                return '/foo/baz.jpg';
-            }
-        ]);
-
-        $b = new MultipartStream([
-            [
-                'name'     => 'foo',
-                'contents' => $f1,
-                'headers'  => [
-                    'x-foo' => 'bar',
-                    'content-disposition' => 'custom'
-                ]
-            ],
-            [
-                'name'     => 'foo',
-                'contents' => $f2,
-                'headers'  => ['cOntenT-Type' => 'custom'],
-            ]
-        ], 'boundary');
-
-        $expected = <<<EOT
---boundary
-x-foo: bar
-content-disposition: custom
-Content-Length: 3
-Content-Type: text/plain
-
-foo
---boundary
-cOntenT-Type: custom
-Content-Disposition: form-data; name="foo"; filename="baz.jpg"
-Content-Length: 3
-
-baz
---boundary--
-
-EOT;
-
-        $this->assertEquals($expected, str_replace("\r", '', $b));
-    }
-}
diff --git a/vendor/guzzlehttp/psr7/tests/NoSeekStreamTest.php b/vendor/guzzlehttp/psr7/tests/NoSeekStreamTest.php
deleted file mode 100644
index a309317..0000000
--- a/vendor/guzzlehttp/psr7/tests/NoSeekStreamTest.php
+++ /dev/null
@@ -1,40 +0,0 @@
-<?php
-namespace GuzzleHttp\Tests\Psr7;
-
-use GuzzleHttp\Psr7;
-use GuzzleHttp\Psr7\NoSeekStream;
-
-/**
- * @covers GuzzleHttp\Psr7\NoSeekStream
- * @covers GuzzleHttp\Psr7\StreamDecoratorTrait
- */
-class NoSeekStreamTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @expectedException \RuntimeException
-     * @expectedExceptionMessage Cannot seek a NoSeekStream
-     */
-    public function testCannotSeek()
-    {
-        $s = $this->getMockBuilder('Psr\Http\Message\StreamInterface')
-            ->setMethods(['isSeekable', 'seek'])
-            ->getMockForAbstractClass();
-        $s->expects($this->never())->method('seek');
-        $s->expects($this->never())->method('isSeekable');
-        $wrapped = new NoSeekStream($s);
-        $this->assertFalse($wrapped->isSeekable());
-        $wrapped->seek(2);
-    }
-
-    /**
-     * @expectedException \RuntimeException
-     * @expectedExceptionMessage Cannot write to a non-writable stream
-     */
-    public function testHandlesClose()
-    {
-        $s = Psr7\stream_for('foo');
-        $wrapped = new NoSeekStream($s);
-        $wrapped->close();
-        $wrapped->write('foo');
-    }
-}
diff --git a/vendor/guzzlehttp/psr7/tests/PumpStreamTest.php b/vendor/guzzlehttp/psr7/tests/PumpStreamTest.php
deleted file mode 100644
index 7358bb6..0000000
--- a/vendor/guzzlehttp/psr7/tests/PumpStreamTest.php
+++ /dev/null
@@ -1,72 +0,0 @@
-<?php
-namespace GuzzleHttp\Tests\Psr7;
-
-use GuzzleHttp\Psr7\LimitStream;
-use GuzzleHttp\Psr7\PumpStream;
-use GuzzleHttp\Psr7;
-
-class PumpStreamTest extends \PHPUnit_Framework_TestCase
-{
-    public function testHasMetadataAndSize()
-    {
-        $p = new PumpStream(function () {}, [
-            'metadata' => ['foo' => 'bar'],
-            'size'     => 100
-        ]);
-
-        $this->assertEquals('bar', $p->getMetadata('foo'));
-        $this->assertEquals(['foo' => 'bar'], $p->getMetadata());
-        $this->assertEquals(100, $p->getSize());
-    }
-
-    public function testCanReadFromCallable()
-    {
-        $p = Psr7\stream_for(function ($size) {
-            return 'a';
-        });
-        $this->assertEquals('a', $p->read(1));
-        $this->assertEquals(1, $p->tell());
-        $this->assertEquals('aaaaa', $p->read(5));
-        $this->assertEquals(6, $p->tell());
-    }
-
-    public function testStoresExcessDataInBuffer()
-    {
-        $called = [];
-        $p = Psr7\stream_for(function ($size) use (&$called) {
-            $called[] = $size;
-            return 'abcdef';
-        });
-        $this->assertEquals('a', $p->read(1));
-        $this->assertEquals('b', $p->read(1));
-        $this->assertEquals('cdef', $p->read(4));
-        $this->assertEquals('abcdefabc', $p->read(9));
-        $this->assertEquals([1, 9, 3], $called);
-    }
-
-    public function testInifiniteStreamWrappedInLimitStream()
-    {
-        $p = Psr7\stream_for(function () { return 'a'; });
-        $s = new LimitStream($p, 5);
-        $this->assertEquals('aaaaa', (string) $s);
-    }
-
-    public function testDescribesCapabilities()
-    {
-        $p = Psr7\stream_for(function () {});
-        $this->assertTrue($p->isReadable());
-        $this->assertFalse($p->isSeekable());
-        $this->assertFalse($p->isWritable());
-        $this->assertNull($p->getSize());
-        $this->assertEquals('', $p->getContents());
-        $this->assertEquals('', (string) $p);
-        $p->close();
-        $this->assertEquals('', $p->read(10));
-        $this->assertTrue($p->eof());
-
-        try {
-            $this->assertFalse($p->write('aa'));
-            $this->fail();
-        } catch (\RuntimeException $e) {}
-    }
-}
diff --git a/vendor/guzzlehttp/psr7/tests/RequestTest.php b/vendor/guzzlehttp/psr7/tests/RequestTest.php
deleted file mode 100644
index 9defe68..0000000
--- a/vendor/guzzlehttp/psr7/tests/RequestTest.php
+++ /dev/null
@@ -1,157 +0,0 @@
-<?php
-namespace GuzzleHttp\Tests\Psr7;
-
-use GuzzleHttp\Psr7\Request;
-use GuzzleHttp\Psr7\Uri;
-
-/**
- * @covers GuzzleHttp\Psr7\Request
- */
-class RequestTest extends \PHPUnit_Framework_TestCase
-{
-    public function testRequestUriMayBeString()
-    {
-        $r = new Request('GET', '/');
-        $this->assertEquals('/', (string) $r->getUri());
-    }
-
-    public function testRequestUriMayBeUri()
-    {
-        $uri = new Uri('/');
-        $r = new Request('GET', $uri);
-        $this->assertSame($uri, $r->getUri());
-    }
-
-    /**
-     * @expectedException \InvalidArgumentException
-     */
-    public function testValidateRequestUri()
-    {
-        new Request('GET', true);
-    }
-
-    public function testCanConstructWithBody()
-    {
-        $r = new Request('GET', '/', [], 'baz');
-        $this->assertEquals('baz', (string) $r->getBody());
-    }
-
-    public function testCapitalizesMethod()
-    {
-        $r = new Request('get', '/');
-        $this->assertEquals('GET', $r->getMethod());
-    }
-
-    public function testCapitalizesWithMethod()
-    {
-        $r = new Request('GET', '/');
-        $this->assertEquals('PUT', $r->withMethod('put')->getMethod());
-    }
-
-    public function testWithUri()
-    {
-        $r1 = new Request('GET', '/');
-        $u1 = $r1->getUri();
-        $u2 = new Uri('http://www.example.com');
-        $r2 = $r1->withUri($u2);
-        $this->assertNotSame($r1, $r2);
-        $this->assertSame($u2, $r2->getUri());
-        $this->assertSame($u1, $r1->getUri());
-    }
-
-    public function testSameInstanceWhenSameUri()
-    {
-        $r1 = new Request('GET', 'http://foo.com');
-        $r2 = $r1->withUri($r1->getUri());
-        $this->assertSame($r1, $r2);
-    }
-
-    public function testWithRequestTarget()
-    {
-        $r1 = new Request('GET', '/');
-        $r2 = $r1->withRequestTarget('*');
-        $this->assertEquals('*', $r2->getRequestTarget());
-        $this->assertEquals('/', $r1->getRequestTarget());
-    }
-
-    /**
-     * @expectedException \InvalidArgumentException
-     */
-    public function testRequestTargetDoesNotAllowSpaces()
-    {
-        $r1 = new Request('GET', '/');
-        $r1->withRequestTarget('/foo bar');
-    }
-
-    public function testRequestTargetDefaultsToSlash()
-    {
-        $r1 = new Request('GET', '');
-        $this->assertEquals('/', $r1->getRequestTarget());
-        $r2 = new Request('GET', '*');
-        $this->assertEquals('*', $r2->getRequestTarget());
-        $r3 = new Request('GET', 'http://foo.com/bar baz/');
-        $this->assertEquals('/bar%20baz/', $r3->getRequestTarget());
-    }
-
-    public function testBuildsRequestTarget()
-    {
-        $r1 = new Request('GET', 'http://foo.com/baz?bar=bam');
-        $this->assertEquals('/baz?bar=bam', $r1->getRequestTarget());
-    }
-
-    public function testHostIsAddedFirst()
-    {
-        $r = new Request('GET', 'http://foo.com/baz?bar=bam', ['Foo' => 'Bar']);
-        $this->assertEquals([
-            'Host' => ['foo.com'],
-            'Foo'  => ['Bar']
-        ], $r->getHeaders());
-    }
-
-    public function testCanGetHeaderAsCsv()
-    {
-        $r = new Request('GET', 'http://foo.com/baz?bar=bam', [
-            'Foo' => ['a', 'b', 'c']
-        ]);
-        $this->assertEquals('a, b, c', $r->getHeaderLine('Foo'));
-        $this->assertEquals('', $r->getHeaderLine('Bar'));
-    }
-
-    public function testHostIsNotOverwrittenWhenPreservingHost()
-    {
-        $r = new Request('GET', 'http://foo.com/baz?bar=bam', ['Host' => 'a.com']);
-        $this->assertEquals(['Host' => ['a.com']], $r->getHeaders());
-        $r2 = $r->withUri(new Uri('http://www.foo.com/bar'), true);
-        $this->assertEquals('a.com', $r2->getHeaderLine('Host'));
-    }
-
-    public function testOverridesHostWithUri()
-    {
-        $r = new Request('GET', 'http://foo.com/baz?bar=bam');
-        $this->assertEquals(['Host' => ['foo.com']], $r->getHeaders());
-        $r2 = $r->withUri(new Uri('http://www.baz.com/bar'));
-        $this->assertEquals('www.baz.com', $r2->getHeaderLine('Host'));
-    }
-
-    public function testAggregatesHeaders()
-    {
-        $r = new Request('GET', 'http://foo.com', [
-            'ZOO' => 'zoobar',
-            'zoo' => ['foobar', 'zoobar']
-        ]);
-        $this->assertEquals('zoobar, foobar, zoobar', $r->getHeaderLine('zoo'));
-    }
-
-    public function testAddsPortToHeader()
-    {
-        $r = new Request('GET', 'http://foo.com:8124/bar');
-        $this->assertEquals('foo.com:8124', $r->getHeaderLine('host'));
-    }
-
-    public function testAddsPortToHeaderAndReplacePreviousPort()
-    {
-        $r = new Request('GET', 'http://foo.com:8124/bar');
-        $r = $r->withUri(new Uri('http://foo.com:8125/bar'));
-        $this->assertEquals('foo.com:8125', $r->getHeaderLine('host'));
-    }
-}
diff --git a/vendor/guzzlehttp/psr7/tests/ResponseTest.php b/vendor/guzzlehttp/psr7/tests/ResponseTest.php
deleted file mode 100644
index 0ce3e21..0000000
--- a/vendor/guzzlehttp/psr7/tests/ResponseTest.php
+++ /dev/null
@@ -1,146 +0,0 @@
-<?php
-namespace GuzzleHttp\Tests\Psr7;
-
-use GuzzleHttp\Psr7\Response;
-use GuzzleHttp\Psr7;
-
-/**
- * @covers GuzzleHttp\Psr7\MessageTrait
- * @covers GuzzleHttp\Psr7\Response
- */
-class ResponseTest extends \PHPUnit_Framework_TestCase
-{
-    public function testAddsDefaultReason()
-    {
-        $r = new Response('200');
-        $this->assertSame(200, $r->getStatusCode());
-        $this->assertEquals('OK', $r->getReasonPhrase());
-    }
-
-    public function testCanGiveCustomReason()
-    {
-        $r = new Response(200, [], null, '1.1', 'bar');
-        $this->assertEquals('bar', $r->getReasonPhrase());
-    }
-
-    public function testCanGiveCustomProtocolVersion()
-    {
-        $r = new Response(200, [], null, '1000');
-        $this->assertEquals('1000', $r->getProtocolVersion());
-    }
-
-    public function testCanCreateNewResponseWithStatusAndNoReason()
-    {
-        $r = new Response(200);
-        $r2 = $r->withStatus(201);
-        $this->assertEquals(200, $r->getStatusCode());
-        $this->assertEquals('OK', $r->getReasonPhrase());
-        $this->assertEquals(201, $r2->getStatusCode());
-        $this->assertEquals('Created', $r2->getReasonPhrase());
-    }
-
-    public function testCanCreateNewResponseWithStatusAndReason()
-    {
-        $r = new Response(200);
-        $r2 = $r->withStatus(201, 'Foo');
-        $this->assertEquals(200, $r->getStatusCode());
-        $this->assertEquals('OK', $r->getReasonPhrase());
-        $this->assertEquals(201, $r2->getStatusCode());
-        $this->assertEquals('Foo', $r2->getReasonPhrase());
-    }
-
-    public function testCreatesResponseWithAddedHeaderArray()
-    {
-        $r = new Response();
-        $r2 = $r->withAddedHeader('foo', ['baz', 'bar']);
-        $this->assertFalse($r->hasHeader('foo'));
-        $this->assertEquals('baz, bar', $r2->getHeaderLine('foo'));
-    }
-
-    public function testReturnsIdentityWhenRemovingMissingHeader()
-    {
-        $r = new Response();
-        $this->assertSame($r, $r->withoutHeader('foo'));
-    }
-
-    public function testAlwaysReturnsBody()
-    {
-        $r = new Response();
-        $this->assertInstanceOf('Psr\Http\Message\StreamInterface', $r->getBody());
-    }
-
-    public function testCanSetHeaderAsArray()
-    {
-        $r = new Response(200, [
-            'foo' => ['baz ', ' bar ']
-        ]);
-        $this->assertEquals('baz, bar', $r->getHeaderLine('foo'));
-        $this->assertEquals(['baz', 'bar'], $r->getHeader('foo'));
-    }
-
-    public function testSameInstanceWhenSameBody()
-    {
-        $r = new Response(200, [], 'foo');
-        $b = $r->getBody();
-        $this->assertSame($r, $r->withBody($b));
-    }
-
-    public function testNewInstanceWhenNewBody()
-    {
-        $r = new Response(200, [], 'foo');
-        $b2 = Psr7\stream_for('abc');
-        $this->assertNotSame($r, $r->withBody($b2));
-    }
-
-    public function testSameInstanceWhenSameProtocol()
-    {
-        $r = new Response(200);
-        $this->assertSame($r, $r->withProtocolVersion('1.1'));
-    }
-
-    public function testNewInstanceWhenNewProtocol()
-    {
-        $r = new Response(200);
-        $this->assertNotSame($r, $r->withProtocolVersion('1.0'));
-    }
-
-    public function testNewInstanceWhenRemovingHeader()
-    {
-        $r = new Response(200, ['Foo' => 'Bar']);
-        $r2 = $r->withoutHeader('Foo');
-        $this->assertNotSame($r, $r2);
-        $this->assertFalse($r2->hasHeader('foo'));
-    }
-
-    public function testNewInstanceWhenAddingHeader()
-    {
-        $r = new Response(200, ['Foo' => 'Bar']);
-        $r2 = $r->withAddedHeader('Foo', 'Baz');
-        $this->assertNotSame($r, $r2);
-        $this->assertEquals('Bar, Baz', $r2->getHeaderLine('foo'));
-    }
-
-    public function testNewInstanceWhenAddingHeaderThatWasNotThereBefore()
-    {
-        $r = new Response(200, ['Foo' => 'Bar']);
-        $r2 = $r->withAddedHeader('Baz', 'Bam');
-        $this->assertNotSame($r, $r2);
-        $this->assertEquals('Bam', $r2->getHeaderLine('Baz'));
-        $this->assertEquals('Bar', $r2->getHeaderLine('Foo'));
-    }
-
-    public function testRemovesPreviouslyAddedHeaderOfDifferentCase()
-    {
-        $r = new Response(200, ['Foo' => 'Bar']);
-        $r2 = $r->withHeader('foo', 'Bam');
-        $this->assertNotSame($r, $r2);
-        $this->assertEquals('Bam', $r2->getHeaderLine('Foo'));
-    }
-
-    public function testBodyConsistent()
-    {
-        $r = new Response(200, [], '0');
-        $this->assertEquals('0', (string)$r->getBody());
-    }
-    
-}
diff --git a/vendor/guzzlehttp/psr7/tests/StreamDecoratorTraitTest.php b/vendor/guzzlehttp/psr7/tests/StreamDecoratorTraitTest.php
deleted file mode 100644
index 682079e..0000000
--- a/vendor/guzzlehttp/psr7/tests/StreamDecoratorTraitTest.php
+++ /dev/null
@@ -1,137 +0,0 @@
-<?php
-namespace GuzzleHttp\Tests\Psr7;
-
-use Psr\Http\Message\StreamInterface;
-use GuzzleHttp\Psr7;
-use GuzzleHttp\Psr7\StreamDecoratorTrait;
-
-class Str implements StreamInterface
-{
-    use StreamDecoratorTrait;
-}
-
-/**
- * @covers GuzzleHttp\Psr7\StreamDecoratorTrait
- */
-class StreamDecoratorTraitTest extends \PHPUnit_Framework_TestCase
-{
-    private $a;
-    private $b;
-    private $c;
-
-    public function setUp()
-    {
-        $this->c = fopen('php://temp', 'r+');
-        fwrite($this->c, 'foo');
-        fseek($this->c, 0);
-        $this->a = Psr7\stream_for($this->c);
-        $this->b = new Str($this->a);
-    }
-
-    public function testCatchesExceptionsWhenCastingToString()
-    {
-        $s = $this->getMockBuilder('Psr\Http\Message\StreamInterface')
-            ->setMethods(['read'])
-            ->getMockForAbstractClass();
-        $s->expects($this->once())
-            ->method('read')
-            ->will($this->throwException(new \Exception('foo')));
-        $msg = '';
-        set_error_handler(function ($errNo, $str) use (&$msg) { $msg = $str; });
-        echo new Str($s);
-        restore_error_handler();
-        $this->assertContains('foo', $msg);
-    }
-
-    public function testToString()
-    {
-        $this->assertEquals('foo', (string) $this->b);
-    }
-
-    public function testHasSize()
-    {
-        $this->assertEquals(3, $this->b->getSize());
-    }
-
-    public function testReads()
-    {
-        $this->assertEquals('foo', $this->b->read(10));
-    }
-
-    public function testCheckMethods()
-    {
-        $this->assertEquals($this->a->isReadable(), $this->b->isReadable());
-        $this->assertEquals($this->a->isWritable(), $this->b->isWritable());
-        $this->assertEquals($this->a->isSeekable(), $this->b->isSeekable());
-    }
-
-    public function testSeeksAndTells()
-    {
-        $this->b->seek(1);
-        $this->assertEquals(1, $this->a->tell());
-        $this->assertEquals(1, $this->b->tell());
-        $this->b->seek(0);
-        $this->assertEquals(0, $this->a->tell());
-        $this->assertEquals(0, $this->b->tell());
-        $this->b->seek(0, SEEK_END);
-        $this->assertEquals(3, $this->a->tell());
-        $this->assertEquals(3, $this->b->tell());
-    }
-
-    public function testGetsContents()
-    {
-        $this->assertEquals('foo', $this->b->getContents());
-        $this->assertEquals('', $this->b->getContents());
-        $this->b->seek(1);
-        $this->assertEquals('oo', $this->b->getContents(1));
-    }
-
-    public function testCloses()
-    {
-        $this->b->close();
-        $this->assertFalse(is_resource($this->c));
-    }
-
-    public function testDetaches()
-    {
-        $this->b->detach();
-        $this->assertFalse($this->b->isReadable());
-    }
-
-    public function testWrapsMetadata()
-    {
-        $this->assertSame($this->b->getMetadata(), $this->a->getMetadata());
-        $this->assertSame($this->b->getMetadata('uri'), $this->a->getMetadata('uri'));
-    }
-
-    public function testWrapsWrites()
-    {
-        $this->b->seek(0, SEEK_END);
-        $this->b->write('foo');
-        $this->assertEquals('foofoo', (string) $this->a);
-    }
-
-    /**
-     * @expectedException \UnexpectedValueException
-     */
-    public function testThrowsWithInvalidGetter()
-    {
-        $this->b->foo;
-    }
-
-    /**
-     * @expectedException \BadMethodCallException
-     */
-    public function testThrowsWhenGetterNotImplemented()
-    {
-        $s = new BadStream();
-        $s->stream;
-    }
-}
-
-class BadStream
-{
-    use StreamDecoratorTrait;
-
-    public function __construct() {}
-}
diff --git a/vendor/guzzlehttp/psr7/tests/StreamTest.php b/vendor/guzzlehttp/psr7/tests/StreamTest.php
deleted file mode 100644
index 4fe92cc..0000000
--- a/vendor/guzzlehttp/psr7/tests/StreamTest.php
+++ /dev/null
@@ -1,161 +0,0 @@
-<?php
-namespace GuzzleHttp\Tests\Psr7;
-
-use GuzzleHttp\Psr7\NoSeekStream;
-use GuzzleHttp\Psr7\Stream;
-
-/**
- * @covers GuzzleHttp\Psr7\Stream
- */
-class StreamTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @expectedException \InvalidArgumentException
-     */
-    public function testConstructorThrowsExceptionOnInvalidArgument()
-    {
-        new Stream(true);
-    }
-
-    public function testConstructorInitializesProperties()
-    {
-        $handle = fopen('php://temp', 'r+');
-        fwrite($handle, 'data');
-        $stream = new Stream($handle);
-        $this->assertTrue($stream->isReadable());
-        $this->assertTrue($stream->isWritable());
-        $this->assertTrue($stream->isSeekable());
-        $this->assertEquals('php://temp', $stream->getMetadata('uri'));
-        $this->assertInternalType('array', $stream->getMetadata());
-        $this->assertEquals(4, $stream->getSize());
-        $this->assertFalse($stream->eof());
-        $stream->close();
-    }
-
-    public function testStreamClosesHandleOnDestruct()
-    {
-        $handle = fopen('php://temp', 'r');
-        $stream = new Stream($handle);
-        unset($stream);
-        $this->assertFalse(is_resource($handle));
-    }
-
-    public function testConvertsToString()
-    {
-        $handle = fopen('php://temp', 'w+');
-        fwrite($handle, 'data');
-        $stream = new Stream($handle);
-        $this->assertEquals('data', (string) $stream);
-        $this->assertEquals('data', (string) $stream);
-        $stream->close();
-    }
-
-    public function testGetsContents()
-    {
-        $handle = fopen('php://temp', 'w+');
-        fwrite($handle, 'data');
-        $stream = new Stream($handle);
-        $this->assertEquals('', $stream->getContents());
-        $stream->seek(0);
-        $this->assertEquals('data', $stream->getContents());
-        $this->assertEquals('', $stream->getContents());
-    }
-
-    public function testChecksEof()
-    {
-        $handle = fopen('php://temp', 'w+');
-        fwrite($handle, 'data');
-        $stream = new Stream($handle);
-        $this->assertFalse($stream->eof());
-        $stream->read(4);
-        $this->assertTrue($stream->eof());
-        $stream->close();
-    }
-
-    public function testGetSize()
-    {
-        $size = filesize(__FILE__);
-        $handle = fopen(__FILE__, 'r');
-        $stream = new Stream($handle);
-        $this->assertEquals($size, $stream->getSize());
-        // Load from cache
-        $this->assertEquals($size, $stream->getSize());
-        $stream->close();
-    }
-
-    public function testEnsuresSizeIsConsistent()
-    {
-        $h = fopen('php://temp', 'w+');
-        $this->assertEquals(3, fwrite($h, 'foo'));
-        $stream = new Stream($h);
-        $this->assertEquals(3, $stream->getSize());
-        $this->assertEquals(4, $stream->write('test'));
-        $this->assertEquals(7, $stream->getSize());
-        $this->assertEquals(7, $stream->getSize());
-        $stream->close();
-    }
-
-    public function testProvidesStreamPosition()
-    {
-        $handle = fopen('php://temp', 'w+');
-        $stream = new Stream($handle);
-        $this->assertEquals(0, $stream->tell());
-        $stream->write('foo');
-        $this->assertEquals(3, $stream->tell());
-        $stream->seek(1);
-        $this->assertEquals(1, $stream->tell());
-        $this->assertSame(ftell($handle), $stream->tell());
-        $stream->close();
-    }
-
-    public function testCanDetachStream()
-    {
-        $r = fopen('php://temp', 'w+');
-        $stream = new Stream($r);
-        $stream->write('foo');
-        $this->assertTrue($stream->isReadable());
-        $this->assertSame($r, $stream->detach());
-        $stream->detach();
-
-        $this->assertFalse($stream->isReadable());
-        $this->assertFalse($stream->isWritable());
-        $this->assertFalse($stream->isSeekable());
-
-        $throws = function (callable $fn) use ($stream) {
-            try {
-                $fn($stream);
-                $this->fail();
-            } catch (\Exception $e) {}
-        };
-
-        $throws(function ($stream) { $stream->read(10); });
-        $throws(function ($stream) { $stream->write('bar'); });
-        $throws(function ($stream) { $stream->seek(10); });
-        $throws(function ($stream) { $stream->tell(); });
-        $throws(function ($stream) { $stream->eof(); });
-        $throws(function ($stream) { $stream->getSize(); });
-        $throws(function ($stream) { $stream->getContents(); });
-        $this->assertSame('', (string) $stream);
-        $stream->close();
-    }
-
-    public function testCloseClearProperties()
-    {
-        $handle = fopen('php://temp', 'r+');
-        $stream = new Stream($handle);
-        $stream->close();
-
-        $this->assertFalse($stream->isSeekable());
-        $this->assertFalse($stream->isReadable());
-        $this->assertFalse($stream->isWritable());
-        $this->assertNull($stream->getSize());
-        $this->assertEmpty($stream->getMetadata());
-    }
-
-    public function testDoesNotThrowInToString()
-    {
-        $s = \GuzzleHttp\Psr7\stream_for('foo');
-        $s = new NoSeekStream($s);
-        $this->assertEquals('foo', (string) $s);
-    }
-}
diff --git a/vendor/guzzlehttp/psr7/tests/StreamWrapperTest.php b/vendor/guzzlehttp/psr7/tests/StreamWrapperTest.php
deleted file mode 100644
index 0156e59..0000000
--- a/vendor/guzzlehttp/psr7/tests/StreamWrapperTest.php
+++ /dev/null
@@ -1,100 +0,0 @@
-<?php
-namespace GuzzleHttp\Tests\Psr7;
-
-use GuzzleHttp\Psr7\StreamWrapper;
-use GuzzleHttp\Psr7;
-
-/**
- * @covers GuzzleHttp\Psr7\StreamWrapper
- */
-class StreamWrapperTest extends \PHPUnit_Framework_TestCase
-{
-    public function testResource()
-    {
-        $stream = Psr7\stream_for('foo');
-        $handle = StreamWrapper::getResource($stream);
-        $this->assertSame('foo', fread($handle, 3));
-        $this->assertSame(3, ftell($handle));
-        $this->assertSame(3, fwrite($handle, 'bar'));
-        $this->assertSame(0, fseek($handle, 0));
-        $this->assertSame('foobar', fread($handle, 6));
-        $this->assertSame('', fread($handle, 1));
-        $this->assertTrue(feof($handle));
-
-        // This fails on HHVM for some reason
-        if (!defined('HHVM_VERSION')) {
-            $this->assertEquals([
-                'dev'     => 0,
-                'ino'     => 0,
-                'mode'    => 33206,
-                'nlink'   => 0,
-                'uid'     => 0,
-                'gid'     => 0,
-                'rdev'    => 0,
-                'size'    => 6,
-                'atime'   => 0,
-                'mtime'   => 0,
-                'ctime'   => 0,
-                'blksize' => 0,
-                'blocks'  => 0,
-                0         => 0,
-                1         => 0,
-                2         => 33206,
-                3         => 0,
-                4         => 0,
-                5         => 0,
-                6         => 0,
-                7         => 6,
-                8         => 0,
-                9         => 0,
-                10        => 0,
-                11        => 0,
-                12        => 0,
-            ], fstat($handle));
-        }
-
-        $this->assertTrue(fclose($handle));
-        $this->assertSame('foobar', (string) $stream);
-    }
-
-    /**
-     * @expectedException \InvalidArgumentException
-     */
-    public function testValidatesStream()
-    {
-        $stream = $this->getMockBuilder('Psr\Http\Message\StreamInterface')
-            ->setMethods(['isReadable', 'isWritable'])
-            ->getMockForAbstractClass();
-        $stream->expects($this->once())
-            ->method('isReadable')
-            ->will($this->returnValue(false));
-        $stream->expects($this->once())
-            ->method('isWritable')
-            ->will($this->returnValue(false));
-        StreamWrapper::getResource($stream);
-    }
-
-    /**
-     * @expectedException \PHPUnit_Framework_Error_Warning
-     */
-    public function testReturnsFalseWhenStreamDoesNotExist()
-    {
-        fopen('guzzle://foo', 'r');
-    }
-
-    public function testCanOpenReadonlyStream()
-    {
-        $stream = $this->getMockBuilder('Psr\Http\Message\StreamInterface')
-            ->setMethods(['isReadable', 'isWritable'])
-            ->getMockForAbstractClass();
-        $stream->expects($this->once())
-            ->method('isReadable')
-            ->will($this->returnValue(false));
-        $stream->expects($this->once())
-            ->method('isWritable')
-            ->will($this->returnValue(true));
-        $r = StreamWrapper::getResource($stream);
-        $this->assertInternalType('resource', $r);
-        fclose($r);
-    }
-}
diff --git a/vendor/guzzlehttp/psr7/tests/UriTest.php b/vendor/guzzlehttp/psr7/tests/UriTest.php
deleted file mode 100644
index 2776920..0000000
--- a/vendor/guzzlehttp/psr7/tests/UriTest.php
+++ /dev/null
@@ -1,247 +0,0 @@
-<?php
-namespace GuzzleHttp\Tests\Psr7;
-
-use GuzzleHttp\Psr7\Uri;
-
-/**
- * @covers GuzzleHttp\Psr7\Uri
- */
-class UriTest extends \PHPUnit_Framework_TestCase
-{
-    const RFC3986_BASE = "http://a/b/c/d;p?q";
-
-    public function testParsesProvidedUrl()
-    {
-        $uri = new Uri('https://michael:test@test.com:443/path/123?q=abc#test');
-
-        // Standard port 443 for https gets ignored.
-        $this->assertEquals(
-            'https://michael:test@test.com/path/123?q=abc#test',
-            (string) $uri
-        );
-
-        $this->assertEquals('test', $uri->getFragment());
-        $this->assertEquals('test.com', $uri->getHost());
-        $this->assertEquals('/path/123', $uri->getPath());
-        $this->assertEquals(null, $uri->getPort());
-        $this->assertEquals('q=abc', $uri->getQuery());
-        $this->assertEquals('https', $uri->getScheme());
-        $this->assertEquals('michael:test', $uri->getUserInfo());
-    }
-
-    /**
-     * @expectedException \InvalidArgumentException
-     * @expectedExceptionMessage Unable to parse URI
-     */
-    public function testValidatesUriCanBeParsed()
-    {
-        new Uri('///');
-    }
-
-    public function testCanTransformAndRetrievePartsIndividually()
-    {
-        $uri = (new Uri(''))
-            ->withFragment('#test')
-            ->withHost('example.com')
-            ->withPath('path/123')
-            ->withPort(8080)
-            ->withQuery('?q=abc')
-            ->withScheme('http')
-            ->withUserInfo('user', 'pass');
-
-        // Test getters.
-        $this->assertEquals('user:pass@example.com:8080', $uri->getAuthority());
-        $this->assertEquals('test', $uri->getFragment());
-        $this->assertEquals('example.com', $uri->getHost());
-        $this->assertEquals('path/123', $uri->getPath());
-        $this->assertEquals(8080, $uri->getPort());
-        $this->assertEquals('q=abc', $uri->getQuery());
-        $this->assertEquals('http', $uri->getScheme());
-        $this->assertEquals('user:pass', $uri->getUserInfo());
-    }
-
-    /**
-     * @expectedException \InvalidArgumentException
-     */
-    public function testPortMustBeValid()
-    {
-        (new Uri(''))->withPort(100000);
-    }
-
-    /**
-     * @expectedException \InvalidArgumentException
-     */
-    public function testPathMustBeValid()
-    {
-        (new Uri(''))->withPath([]);
-    }
-
-    /**
-     * @expectedException \InvalidArgumentException
-     */
-    public function testQueryMustBeValid()
-    {
-        (new Uri(''))->withQuery(new \stdClass);
-    }
-
-    public function testAllowsFalseyUrlParts()
-    {
-        $url = new Uri('http://a:1/0?0#0');
-        $this->assertSame('a', $url->getHost());
-        $this->assertEquals(1, $url->getPort());
-        $this->assertSame('/0', $url->getPath());
-        $this->assertEquals('0', (string) $url->getQuery());
-        $this->assertSame('0', $url->getFragment());
-        $this->assertEquals('http://a:1/0?0#0', (string) $url);
-        $url = new Uri('');
-        $this->assertSame('', (string) $url);
-        $url = new Uri('0');
-        $this->assertSame('0', (string) $url);
-        $url = new Uri('/');
-        $this->assertSame('/', (string) $url);
-    }
-
-    /**
-     * @dataProvider getResolveTestCases
-     */
-    public function testResolvesUris($base, $rel, $expected)
-    {
-        $uri = new Uri($base);
-        $actual = Uri::resolve($uri, $rel);
-        $this->assertEquals($expected, (string) $actual);
-    }
-
-    public function getResolveTestCases()
-    {
-        return [
-            //[self::RFC3986_BASE, 'g:h',           'g:h'],
-            [self::RFC3986_BASE, 'g',             'http://a/b/c/g'],
-            [self::RFC3986_BASE, './g',           'http://a/b/c/g'],
-            [self::RFC3986_BASE, 'g/',            'http://a/b/c/g/'],
-            [self::RFC3986_BASE, '/g',            'http://a/g'],
-            [self::RFC3986_BASE, '//g',           'http://g'],
-            [self::RFC3986_BASE, '?y',            'http://a/b/c/d;p?y'],
-            [self::RFC3986_BASE, 'g?y',           'http://a/b/c/g?y'],
-            [self::RFC3986_BASE, '#s',            'http://a/b/c/d;p?q#s'],
-            [self::RFC3986_BASE, 'g#s',           'http://a/b/c/g#s'],
-            [self::RFC3986_BASE, 'g?y#s',         'http://a/b/c/g?y#s'],
-            [self::RFC3986_BASE, ';x',            'http://a/b/c/;x'],
-            [self::RFC3986_BASE, 'g;x',           'http://a/b/c/g;x'],
-            [self::RFC3986_BASE, 'g;x?y#s',       'http://a/b/c/g;x?y#s'],
-            [self::RFC3986_BASE, '',              self::RFC3986_BASE],
-            [self::RFC3986_BASE, '.',             'http://a/b/c/'],
-            [self::RFC3986_BASE, './',            'http://a/b/c/'],
-            [self::RFC3986_BASE, '..',            'http://a/b/'],
-            [self::RFC3986_BASE, '../',           'http://a/b/'],
-            [self::RFC3986_BASE, '../g',          'http://a/b/g'],
-            [self::RFC3986_BASE, '../..',         'http://a/'],
-            [self::RFC3986_BASE, '../../',        'http://a/'],
-            [self::RFC3986_BASE, '../../g',       'http://a/g'],
-            [self::RFC3986_BASE, '../../../g',    'http://a/g'],
-            [self::RFC3986_BASE, '../../../../g', 'http://a/g'],
-            [self::RFC3986_BASE, '/./g',          'http://a/g'],
-            [self::RFC3986_BASE, '/../g',         'http://a/g'],
-            [self::RFC3986_BASE, 'g.',            'http://a/b/c/g.'],
-            [self::RFC3986_BASE, '.g',            'http://a/b/c/.g'],
-            [self::RFC3986_BASE, 'g..',           'http://a/b/c/g..'],
-            [self::RFC3986_BASE, '..g',           'http://a/b/c/..g'],
-            [self::RFC3986_BASE, './../g',        'http://a/b/g'],
-            [self::RFC3986_BASE, 'foo////g',      'http://a/b/c/foo////g'],
-            [self::RFC3986_BASE, './g/.',         'http://a/b/c/g/'],
-            [self::RFC3986_BASE, 'g/./h',         'http://a/b/c/g/h'],
-            [self::RFC3986_BASE, 'g/../h',        'http://a/b/c/h'],
-            [self::RFC3986_BASE, 'g;x=1/./y',     'http://a/b/c/g;x=1/y'],
-            [self::RFC3986_BASE, 'g;x=1/../y',    'http://a/b/c/y'],
-            ['http://u@a/b/c/d;p?q', '.',         'http://u@a/b/c/'],
-            ['http://u:p@a/b/c/d;p?q', '.',       'http://u:p@a/b/c/'],
-            //[self::RFC3986_BASE, 'http:g',        'http:g'],
-        ];
-    }
-
-    public function testAddAndRemoveQueryValues()
-    {
-        $uri = new Uri('http://foo.com/bar');
-        $uri = Uri::withQueryValue($uri, 'a', 'b');
-        $uri = Uri::withQueryValue($uri, 'c', 'd');
-        $uri = Uri::withQueryValue($uri, 'e', null);
-        $this->assertEquals('a=b&c=d&e', $uri->getQuery());
-
-        $uri = Uri::withoutQueryValue($uri, 'c');
-        $uri = Uri::withoutQueryValue($uri, 'e');
-        $this->assertEquals('a=b', $uri->getQuery());
-        $uri = Uri::withoutQueryValue($uri, 'a');
-        $uri = Uri::withoutQueryValue($uri, 'a');
-        $this->assertEquals('', $uri->getQuery());
-    }
-
-    public function testGetAuthorityReturnsCorrectPort()
-    {
-        // HTTPS non-standard port
-        $uri = new Uri('https://foo.co:99');
-        $this->assertEquals('foo.co:99', $uri->getAuthority());
-
-        // HTTP non-standard port
-        $uri = new Uri('http://foo.co:99');
-        $this->assertEquals('foo.co:99', $uri->getAuthority());
-
-        // No scheme
-        $uri = new Uri('foo.co:99');
-        $this->assertEquals('foo.co:99', $uri->getAuthority());
-
-        // No host or port
-        $uri = new Uri('http:');
-        $this->assertEquals('', $uri->getAuthority());
-
-        // No host or port
-        $uri = new Uri('http://foo.co');
-        $this->assertEquals('foo.co', $uri->getAuthority());
-    }
-
-    public function pathTestProvider()
-    {
-        return [
-            // Percent encode spaces.
-            ['http://foo.com/baz bar', 'http://foo.com/baz%20bar'],
-            // Don't encoding something that's already encoded.
-            ['http://foo.com/baz%20bar', 'http://foo.com/baz%20bar'],
-            // Percent encode invalid percent encodings
-            ['http://foo.com/baz%2-bar', 'http://foo.com/baz%252-bar'],
-            // Don't encode path segments
-            ['http://foo.com/baz/bar/bam?a', 'http://foo.com/baz/bar/bam?a'],
-            ['http://foo.com/baz+bar', 'http://foo.com/baz+bar'],
-            ['http://foo.com/baz:bar', 'http://foo.com/baz:bar'],
-            ['http://foo.com/baz@bar', 'http://foo.com/baz@bar'],
-            ['http://foo.com/baz(bar);bam/', 'http://foo.com/baz(bar);bam/'],
-            ['http://foo.com/a-zA-Z0-9.-_~!$&\'()*+,;=:@', 'http://foo.com/a-zA-Z0-9.-_~!$&\'()*+,;=:@'],
-        ];
-    }
-
-    /**
-     * @dataProvider pathTestProvider
-     */
-    public function testUriEncodesPathProperly($input, $output)
-    {
-        $uri = new Uri($input);
-        $this->assertEquals((string) $uri, $output);
-    }
-
-    public function testDoesNotAddPortWhenNoPort()
-    {
-        $this->assertEquals('bar', new Uri('//bar'));
-        $this->assertEquals('bar', (new Uri('//bar'))->getHost());
-    }
-
-    public function testAllowsForRelativeUri()
-    {
-        $uri = (new Uri)->withPath('foo');
-        $this->assertEquals('foo', $uri->getPath());
-        $this->assertEquals('foo', (string) $uri);
-    }
-
-    public function testAddsSlashForRelativeUriStringWithHost()
-    {
-        $uri = (new Uri)->withPath('foo')->withHost('bar.com');
-        $this->assertEquals('foo', $uri->getPath());
-        $this->assertEquals('bar.com/foo', (string) $uri);
-    }
-}
diff --git a/vendor/guzzlehttp/psr7/tests/bootstrap.php b/vendor/guzzlehttp/psr7/tests/bootstrap.php
deleted file mode 100644
index 8601dd3..0000000
--- a/vendor/guzzlehttp/psr7/tests/bootstrap.php
+++ /dev/null
@@ -1,11 +0,0 @@
-<?php
-namespace GuzzleHttp\Tests\Psr7;
-
-require __DIR__ . '/../vendor/autoload.php';
-
-class HasToString
-{
-    public function __toString() {
-        return 'foo';
-    }
-}
diff --git a/vendor/masterminds/html5/test/HTML5/ElementsTest.php b/vendor/masterminds/html5/test/HTML5/ElementsTest.php
deleted file mode 100644
index 629b561..0000000
--- a/vendor/masterminds/html5/test/HTML5/ElementsTest.php
+++ /dev/null
@@ -1,486 +0,0 @@
-<?php
-namespace Masterminds\HTML5\Tests;
-
-use Masterminds\HTML5\Elements;
-
-class ElementsTest extends TestCase
-{
-
-    public $html5Elements = array(
-        "a",
-        "abbr",
-        "address",
-        "area",
-        "article",
-        "aside",
-        "audio",
-        "b",
-        "base",
-        "bdi",
-        "bdo",
-        "blockquote",
-        "body",
-        "br",
-        "button",
-        "canvas",
-        "caption",
-        "cite",
-        "code",
-        "col",
-        "colgroup",
-        "command",
-        // "data",
-        "datalist",
-        "dd",
-        "del",
-        "details",
-        "dfn",
-        "dialog",
-        "div",
-        "dl",
-        "dt",
-        "em",
-        "embed",
-        "fieldset",
-        "figcaption",
-        "figure",
-        "footer",
-        "form",
-        "h1",
-        "h2",
-        "h3",
-        "h4",
-        "h5",
-        "h6",
-        "head",
-        "header",
-        "hgroup",
-        "hr",
-        "html",
-        "i",
-        "iframe",
-        "img",
-        "input",
-        "ins",
-        "kbd",
-        "keygen",
-        "label",
-        "legend",
-        "li",
-        "link",
-        "map",
-        "mark",
-        "menu",
-        "meta",
-        "meter",
-        "nav",
-        "noscript",
-        "object",
-        "ol",
-        "optgroup",
-        "option",
-        "output",
-        "p",
-        "param",
-        "pre",
-        "progress",
-        "q",
-        "rp",
-        "rt",
-        "ruby",
-        "s",
-        "samp",
-        "script",
-        "section",
-        "select",
-        "small",
-        "source",
-        "span",
-        "strong",
-        "style",
-        "sub",
-        "summary",
-        "sup",
-        "table",
-        "tbody",
-        "td",
-        "textarea",
-        "tfoot",
-        "th",
-        "thead",
-        "time",
-        "title",
-        "tr",
-        "track",
-        "u",
-        "ul",
-        "var",
-        "video",
-        "wbr"
-    );
-
-    public $mathmlElements = array(
-        "maction",
-        "maligngroup",
-        "malignmark",
-        "math",
-        "menclose",
-        "merror",
-        "mfenced",
-        "mfrac",
-        "mglyph",
-        "mi",
-        "mlabeledtr",
-        "mlongdiv",
-        "mmultiscripts",
-        "mn",
-        "mo",
-        "mover",
-        "mpadded",
-        "mphantom",
-        "mroot",
-        "mrow",
-        "ms",
-        "mscarries",
-        "mscarry",
-        "msgroup",
-        "msline",
-        "mspace",
-        "msqrt",
-        "msrow",
-        "mstack",
-        "mstyle",
-        "msub",
-        "msup",
-        "msubsup",
-        "mtable",
-        "mtd",
-        "mtext",
-        "mtr",
-        "munder",
-        "munderover"
-    );
-
-    public $svgElements = array(
-        "a",
-        "altGlyph",
-        "altGlyphDef",
-        "altGlyphItem",
-        "animate",
-        "animateColor",
-        "animateMotion",
-        "animateTransform",
-        "circle",
-        "clipPath",
-        "color-profile",
-        "cursor",
-        "defs",
-        "desc",
-        "ellipse",
-        "feBlend",
-        "feColorMatrix",
-        "feComponentTransfer",
-        "feComposite",
-        "feConvolveMatrix",
-        "feDiffuseLighting",
-        "feDisplacementMap",
-        "feDistantLight",
-        "feFlood",
-        "feFuncA",
-        "feFuncB",
-        "feFuncG",
-        "feFuncR",
-        "feGaussianBlur",
-        "feImage",
-        "feMerge",
-        "feMergeNode",
-        "feMorphology",
-        "feOffset",
-        "fePointLight",
-        "feSpecularLighting",
-        "feSpotLight",
-        "feTile",
-        "feTurbulence",
-        "filter",
-        "font",
-        "font-face",
-        "font-face-format",
-        "font-face-name",
-        "font-face-src",
-        "font-face-uri",
-        "foreignObject",
-        "g",
-        "glyph",
-        "glyphRef",
-        "hkern",
-        "image",
-        "line",
-        "linearGradient",
-        "marker",
-        "mask",
-        "metadata",
-        "missing-glyph",
-        "mpath",
-        "path",
-        "pattern",
-        "polygon",
-        "polyline",
-        "radialGradient",
-        "rect",
-        "script",
-        "set",
-        "stop",
-        "style",
-        "svg",
-        "switch",
-        "symbol",
-        "text",
-        "textPath",
-        "title",
-        "tref",
-        "tspan",
-        "use",
-        "view",
-        "vkern"
-    );
-
-    public function testIsHtml5Element()
-    {
-        foreach ($this->html5Elements as $element) {
-            $this->assertTrue(Elements::isHtml5Element($element), 'html5 element test failed on: ' . $element);
-
-            $this->assertTrue(Elements::isHtml5Element(strtoupper($element)), 'html5 element test failed on: ' . strtoupper($element));
-        }
-
-        $nonhtml5 = array(
-            'foo',
-            'bar',
-            'baz'
-        );
-        foreach ($nonhtml5 as $element) {
-            $this->assertFalse(Elements::isHtml5Element($element), 'html5 element test failed on: ' . $element);
-
-            $this->assertFalse(Elements::isHtml5Element(strtoupper($element)), 'html5 element test failed on: ' . strtoupper($element));
-        }
-    }
-
-    public function testIsMathMLElement()
-    {
-        foreach ($this->mathmlElements as $element) {
-            $this->assertTrue(Elements::isMathMLElement($element), 'MathML element test failed on: ' . $element);
-
-            // MathML is case sensetitive so these should all fail.
-            $this->assertFalse(Elements::isMathMLElement(strtoupper($element)), 'MathML element test failed on: ' . strtoupper($element));
-        }
-
-        $nonMathML = array(
-            'foo',
-            'bar',
-            'baz'
-        );
-        foreach ($nonMathML as $element) {
-            $this->assertFalse(Elements::isMathMLElement($element), 'MathML element test failed on: ' . $element);
-        }
-    }
-
-    public function testIsSvgElement()
-    {
-        foreach ($this->svgElements as $element) {
-            $this->assertTrue(Elements::isSvgElement($element), 'SVG element test failed on: ' . $element);
-
-            // SVG is case sensetitive so these should all fail.
-            $this->assertFalse(Elements::isSvgElement(strtoupper($element)), 'SVG element test failed on: ' . strtoupper($element));
-        }
-
-        $nonSVG = array(
-            'foo',
-            'bar',
-            'baz'
-        );
-        foreach ($nonSVG as $element) {
-            $this->assertFalse(Elements::isSvgElement($element), 'SVG element test failed on: ' . $element);
-        }
-    }
-
-    public function testIsElement()
-    {
-        foreach ($this->html5Elements as $element) {
-            $this->assertTrue(Elements::isElement($element), 'html5 element test failed on: ' . $element);
-
-            $this->assertTrue(Elements::isElement(strtoupper($element)), 'html5 element test failed on: ' . strtoupper($element));
-        }
-
-        foreach ($this->mathmlElements as $element) {
-            $this->assertTrue(Elements::isElement($element), 'MathML element test failed on: ' . $element);
-
-            // MathML is case sensetitive so these should all fail.
-            $this->assertFalse(Elements::isElement(strtoupper($element)), 'MathML element test failed on: ' . strtoupper($element));
-        }
-
-        foreach ($this->svgElements as $element) {
-            $this->assertTrue(Elements::isElement($element), 'SVG element test failed on: ' . $element);
-
-            // SVG is case sensetitive so these should all fail. But, there is duplication
-            // html5 and SVG. Since html5 is case insensetitive we need to make sure
-            // it's not a html5 element first.
-            if (! in_array($element, $this->html5Elements)) {
-                $this->assertFalse(Elements::isElement(strtoupper($element)), 'SVG element test failed on: ' . strtoupper($element));
-            }
-        }
-
-        $nonhtml5 = array(
-            'foo',
-            'bar',
-            'baz'
-        );
-        foreach ($nonhtml5 as $element) {
-            $this->assertFalse(Elements::isElement($element), 'html5 element test failed on: ' . $element);
-
-            $this->assertFalse(Elements::isElement(strtoupper($element)), 'html5 element test failed on: ' . strtoupper($element));
-        }
-    }
-
-    public function testElement()
-    {
-        foreach ($this->html5Elements as $element) {
-            $this->assertGreaterThan(0, Elements::element($element));
-        }
-        $nonhtml5 = array(
-            'foo',
-            'bar',
-            'baz'
-        );
-        foreach ($nonhtml5 as $element) {
-            $this->assertFalse(Elements::element($element));
-        }
-    }
-
-    public function testIsA()
-    {
-        $this->assertTrue(Elements::isA('script', Elements::KNOWN_ELEMENT));
-        $this->assertFalse(Elements::isA('scriptypoo', Elements::KNOWN_ELEMENT));
-        $this->assertTrue(Elements::isA('script', Elements::TEXT_RAW));
-        $this->assertFalse(Elements::isA('script', Elements::TEXT_RCDATA));
-
-        $voidElements = array(
-            'area',
-            'base',
-            'basefont',
-            'bgsound',
-            'br',
-            'col',
-            'command',
-            'embed',
-            'frame',
-            'hr',
-            'img'
-        );
-
-        foreach ($voidElements as $element) {
-            $this->assertTrue(Elements::isA($element, Elements::VOID_TAG), 'Void element test failed on: ' . $element);
-        }
-
-        $nonVoid = array(
-            'span',
-            'a',
-            'div'
-        );
-        foreach ($nonVoid as $tag) {
-            $this->assertFalse(Elements::isA($tag, Elements::VOID_TAG), 'Void element test failed on: ' . $tag);
-        }
-
-        $blockTags = array(
-            'address',
-            'article',
-            'aside',
-            'audio',
-            'blockquote',
-            'canvas',
-            'dd',
-            'div',
-            'dl',
-            'fieldset',
-            'figcaption',
-            'figure',
-            'footer',
-            'form',
-            'h1',
-            'h2',
-            'h3',
-            'h4',
-            'h5',
-            'h6',
-            'header',
-            'hgroup',
-            'hr',
-            'noscript',
-            'ol',
-            'output',
-            'p',
-            'pre',
-            'section',
-            'table',
-            'tfoot',
-            'ul',
-            'video'
-        );
-
-        foreach ($blockTags as $tag) {
-            $this->assertTrue(Elements::isA($tag, Elements::BLOCK_TAG), 'Block tag test failed on: ' . $tag);
-        }
-
-        $nonBlockTags = array(
-            'span',
-            'img',
-            'label'
-        );
-        foreach ($nonBlockTags as $tag) {
-            $this->assertFalse(Elements::isA($tag, Elements::BLOCK_TAG), 'Block tag test failed on: ' . $tag);
-        }
-    }
-
-    public function testNormalizeSvgElement()
-    {
-        $tests = array(
-            'foo' => 'foo',
-            'altglyph' => 'altGlyph',
-            'BAR' => 'bar',
-            'fespecularlighting' => 'feSpecularLighting',
-            'bAz' => 'baz',
-            'foreignobject' => 'foreignObject'
-        );
-
-        foreach ($tests as $input => $expected) {
-            $this->assertEquals($expected, Elements::normalizeSvgElement($input));
-        }
-    }
-
-    public function testNormalizeSvgAttribute()
-    {
-        $tests = array(
-            'foo' => 'foo',
-            'attributename' => 'attributeName',
-            'BAR' => 'bar',
-            'limitingconeangle' => 'limitingConeAngle',
-            'bAz' => 'baz',
-            'patterncontentunits' => 'patternContentUnits'
-        );
-
-        foreach ($tests as $input => $expected) {
-            $this->assertEquals($expected, Elements::normalizeSvgAttribute($input));
-        }
-    }
-
-    public function testNormalizeMathMlAttribute()
-    {
-        $tests = array(
-            'foo' => 'foo',
-            'definitionurl' => 'definitionURL',
-            'BAR' => 'bar'
-        );
-
-        foreach ($tests as $input => $expected) {
-            $this->assertEquals($expected, Elements::normalizeMathMlAttribute($input));
-        }
-    }
-}
diff --git a/vendor/masterminds/html5/test/HTML5/Html5Test.html b/vendor/masterminds/html5/test/HTML5/Html5Test.html
deleted file mode 100644
index a976e8b..0000000
--- a/vendor/masterminds/html5/test/HTML5/Html5Test.html
+++ /dev/null
@@ -1,10 +0,0 @@
-<!doctype html>
-<html lang="en">
-  <head>
-    <meta charset="utf-8">
-    <title>Test</title>
-  </head>
-  <body>
-    <p>This is a test.</p>
-  </body>
-</html>
\ No newline at end of file
diff --git a/vendor/masterminds/html5/test/HTML5/Html5Test.php b/vendor/masterminds/html5/test/HTML5/Html5Test.php
deleted file mode 100644
index cce58b7..0000000
--- a/vendor/masterminds/html5/test/HTML5/Html5Test.php
+++ /dev/null
@@ -1,401 +0,0 @@
-<?php
-namespace Masterminds\HTML5\Tests;
-
-class Html5Test extends TestCase
-{
-
-    public function setUp()
-    {
-        $this->html5 = $this->getInstance();
-    }
-
-    /**
-     * Parse and serialize a string.
-     */
-    protected function cycle($html)
-    {
-        $dom = $this->html5->loadHTML('<!DOCTYPE html><html><body>' . $html . '</body></html>');
-        $out = $this->html5->saveHTML($dom);
-
-        return $out;
-    }
-
-    protected function cycleFragment($fragment)
-    {
-        $dom = $this->html5->loadHTMLFragment($fragment);
-        $out = $this->html5->saveHTML($dom);
-
-        return $out;
-    }
-
-    public function testLoadOptions()
-    {
-        // doc
-        $dom = $this->html5->loadHTML($this->wrap('<t:tag/>'), array(
-                        'implicitNamespaces' => array('t' => 'http://example.com'),
-                        "xmlNamespaces" => true
-        ));
-        $this->assertInstanceOf('\DOMDocument', $dom);
-        $this->assertEmpty($this->html5->getErrors());
-        $this->assertFalse($this->html5->hasErrors());
-
-        $xpath = new \DOMXPath( $dom );
-        $xpath->registerNamespace( "t", "http://example.com" );
-        $this->assertEquals(1, $xpath->query( "//t:tag" )->length);
-
-        // doc fragment
-        $frag = $this->html5->loadHTMLFragment('<t:tag/>', array(
-                        'implicitNamespaces' => array('t' => 'http://example.com'),
-                        "xmlNamespaces" => true
-        ));
-        $this->assertInstanceOf('\DOMDocumentFragment', $frag);
-        $this->assertEmpty($this->html5->getErrors());
-        $this->assertFalse($this->html5->hasErrors());
-
-        $frag->ownerDocument->appendChild($frag);
-        $xpath = new \DOMXPath( $frag->ownerDocument );
-        $xpath->registerNamespace( "t", "http://example.com" );
-        $this->assertEquals(1, $xpath->query( "//t:tag" , $frag)->length);
-    }
-
-    public function testErrors()
-    {
-        $dom = $this->html5->loadHTML('<xx as>');
-        $this->assertInstanceOf('\DOMDocument', $dom);
-
-        $this->assertNotEmpty($this->html5->getErrors());
-        $this->assertTrue($this->html5->hasErrors());
-    }
-
-    public function testLoad()
-    {
-        $dom = $this->html5->load(__DIR__ . '/Html5Test.html');
-        $this->assertInstanceOf('\DOMDocument', $dom);
-        $this->assertEmpty($this->html5->getErrors());
-        $this->assertFalse($this->html5->hasErrors());
-
-        $file = fopen(__DIR__ . '/Html5Test.html', 'r');
-        $dom = $this->html5->load($file);
-        $this->assertInstanceOf('\DOMDocument', $dom);
-        $this->assertEmpty($this->html5->getErrors());
-
-        $dom = $this->html5->loadHTMLFile(__DIR__ . '/Html5Test.html');
-        $this->assertInstanceOf('\DOMDocument', $dom);
-        $this->assertEmpty($this->html5->getErrors());
-    }
-
-    public function testLoadHTML()
-    {
-        $contents = file_get_contents(__DIR__ . '/Html5Test.html');
-        $dom = $this->html5->loadHTML($contents);
-        $this->assertInstanceOf('\DOMDocument', $dom);
-        $this->assertEmpty($this->html5->getErrors());
-    }
-
-    public function testLoadHTMLFragment()
-    {
-        $fragment = '<section id="Foo"><div class="Bar">Baz</div></section>';
-        $dom = $this->html5->loadHTMLFragment($fragment);
-        $this->assertInstanceOf('\DOMDocumentFragment', $dom);
-        $this->assertEmpty($this->html5->getErrors());
-    }
-
-    public function testSaveHTML()
-    {
-        $dom = $this->html5->load(__DIR__ . '/Html5Test.html');
-        $this->assertInstanceOf('\DOMDocument', $dom);
-        $this->assertEmpty($this->html5->getErrors());
-
-        $saved = $this->html5->saveHTML($dom);
-        $this->assertRegExp('|<p>This is a test.</p>|', $saved);
-    }
-
-    public function testSaveHTMLFragment()
-    {
-        $fragment = '<section id="Foo"><div class="Bar">Baz</div></section>';
-        $dom = $this->html5->loadHTMLFragment($fragment);
-
-        $string = $this->html5->saveHTML($dom);
-        $this->assertEquals($fragment, $string);
-    }
-
-    public function testSave()
-    {
-        $dom = $this->html5->load(__DIR__ . '/Html5Test.html');
-        $this->assertInstanceOf('\DOMDocument', $dom);
-        $this->assertEmpty($this->html5->getErrors());
-
-        // Test resource
-        $file = fopen('php://temp', 'w');
-        $this->html5->save($dom, $file);
-        $content = stream_get_contents($file, - 1, 0);
-        $this->assertRegExp('|<p>This is a test.</p>|', $content);
-
-        // Test file
-        $tmpfname = tempnam(sys_get_temp_dir(), "html5-php");
-        $this->html5->save($dom, $tmpfname);
-        $content = file_get_contents($tmpfname);
-        $this->assertRegExp('|<p>This is a test.</p>|', $content);
-        unlink($tmpfname);
-    }
-
-    // This test reads a document into a dom, turn the dom into a document,
-    // then tries to read that document again. This makes sure we are reading,
-    // and generating a document that works at a high level.
-    public function testItWorks()
-    {
-        $dom = $this->html5->load(__DIR__ . '/Html5Test.html');
-        $this->assertInstanceOf('\DOMDocument', $dom);
-        $this->assertEmpty($this->html5->getErrors());
-
-        $saved = $this->html5->saveHTML($dom);
-
-        $dom2 = $this->html5->loadHTML($saved);
-        $this->assertInstanceOf('\DOMDocument', $dom2);
-        $this->assertEmpty($this->html5->getErrors());
-    }
-
-    public function testConfig()
-    {
-        $html5 = $this->getInstance();
-        $options = $html5->getOptions();
-        $this->assertEquals(false, $options['encode_entities']);
-
-        $html5 = $this->getInstance(array(
-            'foo' => 'bar',
-            'encode_entities' => true
-        ));
-        $options = $html5->getOptions();
-        $this->assertEquals('bar', $options['foo']);
-        $this->assertEquals(true, $options['encode_entities']);
-
-        // Need to reset to original so future tests pass as expected.
-        // $this->getInstance()->setOption('encode_entities', false);
-    }
-
-    public function testSvg()
-    {
-        $dom = $this->html5->loadHTML(
-            '<!doctype html>
-      <html lang="en">
-        <body>
-          <div id="foo" class="bar baz">foo bar baz</div>
-          <svg width="150" height="100" viewBox="0 0 3 2">
-            <rect width="1" height="2" x="0" fill="#008d46" />
-            <rect width="1" height="2" x="1" fill="#ffffff" />
-            <rect width="1" height="2" x="2" fill="#d2232c" />
-            <text font-family="Verdana" font-size="32">
-              <textPath xlink:href="#Foo">
-                Test Text.
-              </textPath>
-            </text>
-          </svg>
-        </body>
-      </html>');
-
-        $this->assertEmpty($this->html5->getErrors());
-
-        // Test a mixed case attribute.
-        $list = $dom->getElementsByTagName('svg');
-        $this->assertNotEmpty($list->length);
-        $svg = $list->item(0);
-        $this->assertEquals("0 0 3 2", $svg->getAttribute('viewBox'));
-        $this->assertFalse($svg->hasAttribute('viewbox'));
-
-        // Test a mixed case tag.
-        // Note: getElementsByTagName is not case sensetitive.
-        $list = $dom->getElementsByTagName('textPath');
-        $this->assertNotEmpty($list->length);
-        $textPath = $list->item(0);
-        $this->assertEquals('textPath', $textPath->tagName);
-        $this->assertNotEquals('textpath', $textPath->tagName);
-
-        $html = $this->html5->saveHTML($dom);
-        $this->assertRegExp('|<svg width="150" height="100" viewBox="0 0 3 2">|', $html);
-        $this->assertRegExp('|<rect width="1" height="2" x="0" fill="#008d46" />|', $html);
-    }
-
-    public function testMathMl()
-    {
-        $dom = $this->html5->loadHTML(
-            '<!doctype html>
-      <html lang="en">
-        <body>
-          <div id="foo" class="bar baz" definitionURL="http://example.com">foo bar baz</div>
-          <math>
-            <mi>x</mi>
-            <csymbol definitionURL="http://www.example.com/mathops/multiops.html#plusminus">
-              <mo>&PlusMinus;</mo>
-            </csymbol>
-            <mi>y</mi>
-          </math>
-        </body>
-      </html>');
-
-        $this->assertEmpty($this->html5->getErrors());
-        $list = $dom->getElementsByTagName('math');
-        $this->assertNotEmpty($list->length);
-
-        $list = $dom->getElementsByTagName('div');
-        $this->assertNotEmpty($list->length);
-        $div = $list->item(0);
-        $this->assertEquals('http://example.com', $div->getAttribute('definitionurl'));
-        $this->assertFalse($div->hasAttribute('definitionURL'));
-        $list = $dom->getElementsByTagName('csymbol');
-        $csymbol = $list->item(0);
-        $this->assertEquals('http://www.example.com/mathops/multiops.html#plusminus', $csymbol->getAttribute('definitionURL'));
-        $this->assertFalse($csymbol->hasAttribute('definitionurl'));
-
-        $html = $this->html5->saveHTML($dom);
-        $this->assertRegExp('|<csymbol definitionURL="http://www.example.com/mathops/multiops.html#plusminus">|', $html);
-        $this->assertRegExp('|<mi>y</mi>|', $html);
-    }
-
-    public function testUnknownElements()
-    {
-        // The : should not have special handling accourding to section 2.9 of the
-        // spec. This is differenant than XML. Since we don't know these elements
-        // they are handled as normal elements. Note, to do this is really
-        // an invalid example and you should not embed prefixed xml in html5.
-        $dom = $this->html5->loadHTMLFragment(
-            "<f:rug>
-      <f:name>Big rectangle thing</f:name>
-      <f:width>40</f:width>
-      <f:length>80</f:length>
-    </f:rug>
-    <sarcasm>um, yeah</sarcasm>");
-
-        $this->assertEmpty($this->html5->getErrors());
-        $markup = $this->html5->saveHTML($dom);
-        $this->assertRegExp('|<f:name>Big rectangle thing</f:name>|', $markup);
-        $this->assertRegExp('|<sarcasm>um, yeah</sarcasm>|', $markup);
-    }
-
-    public function testElements()
-    {
-        // Should have content.
-        $res = $this->cycle('<div>FOO</div>');
-        $this->assertRegExp('|<div>FOO</div>|', $res);
-
-        // Should be empty
-        $res = $this->cycle('<span></span>');
-        $this->assertRegExp('|<span></span>|', $res);
-
-        // Should have content.
-        $res = $this->cycleFragment('<div>FOO</div>');
-        $this->assertRegExp('|<div>FOO</div>|', $res);
-
-        // Should be empty
-        $res = $this->cycleFragment('<span></span>');
-        $this->assertRegExp('|<span></span>|', $res);
-
-        // Elements with dashes and underscores
-        $res = $this->cycleFragment('<sp-an></sp-an>');
-        $this->assertRegExp('|<sp-an></sp-an>|', $res);
-        $res = $this->cycleFragment('<sp_an></sp_an>');
-        $this->assertRegExp('|<sp_an></sp_an>|', $res);
-
-        // Should have no closing tag.
-        $res = $this->cycle('<hr>');
-        $this->assertRegExp('|<hr></body>|', $res);
-    }
-
-    public function testAttributes()
-    {
-        $res = $this->cycle('<div attr="val">FOO</div>');
-        $this->assertRegExp('|<div attr="val">FOO</div>|', $res);
-
-        // XXX: Note that spec does NOT require attrs in the same order.
-        $res = $this->cycle('<div attr="val" class="even">FOO</div>');
-        $this->assertRegExp('|<div attr="val" class="even">FOO</div>|', $res);
-
-        $res = $this->cycle('<div xmlns:foo="http://example.com">FOO</div>');
-        $this->assertRegExp('|<div xmlns:foo="http://example.com">FOO</div>|', $res);
-
-        $res = $this->cycleFragment('<div attr="val">FOO</div>');
-        $this->assertRegExp('|<div attr="val">FOO</div>|', $res);
-
-        // XXX: Note that spec does NOT require attrs in the same order.
-        $res = $this->cycleFragment('<div attr="val" class="even">FOO</div>');
-        $this->assertRegExp('|<div attr="val" class="even">FOO</div>|', $res);
-
-        $res = $this->cycleFragment('<div xmlns:foo="http://example.com">FOO</div>');
-        $this->assertRegExp('|<div xmlns:foo="http://example.com">FOO</div>|', $res);
-    }
-
-    public function testPCData()
-    {
-        $res = $this->cycle('<a>This is a test.</a>');
-        $this->assertRegExp('|This is a test.|', $res);
-
-        $res = $this->cycleFragment('<a>This is a test.</a>');
-        $this->assertRegExp('|This is a test.|', $res);
-
-        $res = $this->cycle('This
-      is
-      a
-      test.');
-
-        // Check that newlines are there, but don't count spaces.
-        $this->assertRegExp('|This\n\s*is\n\s*a\n\s*test.|', $res);
-
-        $res = $this->cycleFragment('This
-      is
-      a
-      test.');
-
-        // Check that newlines are there, but don't count spaces.
-        $this->assertRegExp('|This\n\s*is\n\s*a\n\s*test.|', $res);
-
-        $res = $this->cycle('<a>This <em>is</em> a test.</a>');
-        $this->assertRegExp('|This <em>is</em> a test.|', $res);
-
-        $res = $this->cycleFragment('<a>This <em>is</em> a test.</a>');
-        $this->assertRegExp('|This <em>is</em> a test.|', $res);
-    }
-
-    public function testUnescaped()
-    {
-        $res = $this->cycle('<script>2 < 1</script>');
-        $this->assertRegExp('|2 < 1|', $res);
-
-        $res = $this->cycle('<style>div>div>div</style>');
-        $this->assertRegExp('|div>div>div|', $res);
-
-        $res = $this->cycleFragment('<script>2 < 1</script>');
-        $this->assertRegExp('|2 < 1|', $res);
-
-        $res = $this->cycleFragment('<style>div>div>div</style>');
-        $this->assertRegExp('|div>div>div|', $res);
-    }
-
-    public function testEntities()
-    {
-        $res = $this->cycle('<a>Apples &amp; bananas.</a>');
-        $this->assertRegExp('|Apples &amp; bananas.|', $res);
-
-        $res = $this->cycleFragment('<a>Apples &amp; bananas.</a>');
-        $this->assertRegExp('|Apples &amp; bananas.|', $res);
-
-        $res = $this->cycleFragment('<p>R&D</p>');
-        $this->assertRegExp('|R&amp;D|', $res);
-    }
-
-    public function testComment()
-    {
-        $res = $this->cycle('a<!-- This is a test. -->b');
-        $this->assertRegExp('|<!-- This is a test. -->|', $res);
-
-        $res = $this->cycleFragment('a<!-- This is a test. -->b');
-        $this->assertRegExp('|<!-- This is a test. -->|', $res);
-    }
-
-    public function testCDATA()
-    {
-        $res = $this->cycle('a<![CDATA[ This <is> a test. ]]>b');
-        $this->assertRegExp('|<!\[CDATA\[ This <is> a test\. \]\]>|', $res);
-
-        $res = $this->cycleFragment('a<![CDATA[ This <is> a test. ]]>b');
-        $this->assertRegExp('|<!\[CDATA\[ This <is> a test\. \]\]>|', $res);
-    }
-}
diff --git a/vendor/masterminds/html5/test/HTML5/Parser/CharacterReferenceTest.php b/vendor/masterminds/html5/test/HTML5/Parser/CharacterReferenceTest.php
deleted file mode 100644
index 762bcc2..0000000
--- a/vendor/masterminds/html5/test/HTML5/Parser/CharacterReferenceTest.php
+++ /dev/null
@@ -1,44 +0,0 @@
-<?php
-/**
- * @file
- * Test the Scanner. This requires the InputStream tests are all good.
- */
-namespace Masterminds\HTML5\Tests\Parser;
-
-use Masterminds\HTML5\Parser\CharacterReference;
-
-class CharacterReferenceTest extends \Masterminds\HTML5\Tests\TestCase
-{
-
-    public function testLookupName()
-    {
-        $this->assertEquals('&', CharacterReference::lookupName('amp'));
-        $this->assertEquals('<', CharacterReference::lookupName('lt'));
-        $this->assertEquals('>', CharacterReference::lookupName('gt'));
-        $this->assertEquals('"', CharacterReference::lookupName('quot'));
-        $this->assertEquals('∌', CharacterReference::lookupName('NotReverseElement'));
-
-        $this->assertNull(CharacterReference::lookupName('StinkyCheese'));
-    }
-
-    public function testLookupHex()
-    {
-        $this->assertEquals('<', CharacterReference::lookupHex('3c'));
-        $this->assertEquals('<', CharacterReference::lookupHex('003c'));
-        $this->assertEquals('&', CharacterReference::lookupHex('26'));
-        $this->assertEquals('}', CharacterReference::lookupHex('7d'));
-        $this->assertEquals('Σ', CharacterReference::lookupHex('3A3'));
-        $this->assertEquals('Σ', CharacterReference::lookupHex('03A3'));
-        $this->assertEquals('Σ', CharacterReference::lookupHex('3a3'));
-        $this->assertEquals('Σ', CharacterReference::lookupHex('03a3'));
-    }
-
-    public function testLookupDecimal()
-    {
-        $this->assertEquals('&', CharacterReference::lookupDecimal(38));
-        $this->assertEquals('&', CharacterReference::lookupDecimal('38'));
-        $this->assertEquals('<', CharacterReference::lookupDecimal(60));
-        $this->assertEquals('Σ', CharacterReference::lookupDecimal(931));
-        $this->assertEquals('Σ', CharacterReference::lookupDecimal('0931'));
-    }
-}
diff --git a/vendor/masterminds/html5/test/HTML5/Parser/DOMTreeBuilderTest.php b/vendor/masterminds/html5/test/HTML5/Parser/DOMTreeBuilderTest.php
deleted file mode 100644
index b2a2d39..0000000
--- a/vendor/masterminds/html5/test/HTML5/Parser/DOMTreeBuilderTest.php
+++ /dev/null
@@ -1,537 +0,0 @@
-<?php
-/**
- * @file
- * Test the Tree Builder.
- */
-namespace Masterminds\HTML5\Tests\Parser;
-
-use Masterminds\HTML5\Parser\StringInputStream;
-use Masterminds\HTML5\Parser\Scanner;
-use Masterminds\HTML5\Parser\Tokenizer;
-use Masterminds\HTML5\Parser\DOMTreeBuilder;
-
-/**
- * These tests are functional, not necessarily unit tests.
- */
-class DOMTreeBuilderTest extends \Masterminds\HTML5\Tests\TestCase
-{
-    protected $errors = array();
-    /**
-     * Convenience function for parsing.
-     */
-    protected function parse($string, array $options = array())
-    {
-        $treeBuilder = new DOMTreeBuilder(false, $options);
-        $input = new StringInputStream($string);
-        $scanner = new Scanner($input);
-        $parser = new Tokenizer($scanner, $treeBuilder);
-
-        $parser->parse();
-        $this->errors = $treeBuilder->getErrors();
-
-        return $treeBuilder->document();
-    }
-
-    /**
-     * Utility function for parsing a fragment of HTML5.
-     */
-    protected function parseFragment($string)
-    {
-        $treeBuilder = new DOMTreeBuilder(true);
-        $input = new StringInputStream($string);
-        $scanner = new Scanner($input);
-        $parser = new Tokenizer($scanner, $treeBuilder);
-
-        $parser->parse();
-        $this->errors = $treeBuilder->getErrors();
-
-        return $treeBuilder->fragment();
-    }
-
-    public function testDocument()
-    {
-        $html = "<!DOCTYPE html><html></html>";
-        $doc = $this->parse($html);
-
-        $this->assertInstanceOf('\DOMDocument', $doc);
-        $this->assertEquals('html', $doc->documentElement->tagName);
-        $this->assertEquals('http://www.w3.org/1999/xhtml', $doc->documentElement->namespaceURI);
-    }
-
-    public function testStrangeCapitalization()
-    {
-        $html = "<!doctype html>
-        <html>
-            <head>
-                <Title>Hello, world!</TitlE>
-            </head>
-            <body>TheBody<script>foo</script></body>
-        </html>";
-        $doc = $this->parse($html);
-
-        $this->assertInstanceOf('\DOMDocument', $doc);
-        $this->assertEquals('html', $doc->documentElement->tagName);
-
-        $xpath = new \DOMXPath( $doc );
-        $xpath->registerNamespace( "x", "http://www.w3.org/1999/xhtml" );
-
-        $this->assertEquals("Hello, world!", $xpath->query( "//x:title" )->item( 0 )->nodeValue);
-        $this->assertEquals("foo", $xpath->query( "//x:script" )->item( 0 )->nodeValue);
-    }
-
-    public function testDocumentWithDisabledNamespaces()
-    {
-        $html = "<!DOCTYPE html><html></html>";
-        $doc = $this->parse($html, array('disable_html_ns' => true));
-
-        $this->assertInstanceOf('\DOMDocument', $doc);
-        $this->assertEquals('html', $doc->documentElement->tagName);
-        $this->assertNull($doc->documentElement->namespaceURI);
-    }
-
-    public function testDocumentWithATargetDocument()
-    {
-        $targetDom = new \DOMDocument();
-
-        $html = "<!DOCTYPE html><html></html>";
-        $doc = $this->parse($html, array('target_document' => $targetDom));
-
-        $this->assertInstanceOf('\DOMDocument', $doc);
-        $this->assertSame($doc, $targetDom);
-        $this->assertEquals('html', $doc->documentElement->tagName);
-    }
-    
-    public function testDocumentFakeAttrAbsence()
-    {
-        $html = "<!DOCTYPE html><html xmlns=\"http://www.w3.org/1999/xhtml\"><body>foo</body></html>";
-        $doc = $this->parse($html, array('xmlNamespaces'=>true));
-
-        $xp = new \DOMXPath($doc);
-        $this->assertEquals(0, $xp->query("//@html5-php-fake-id-attribute")->length);
-    }
-
-    public function testFragment()
-    {
-        $html = "<div>test</div><span>test2</span>";
-        $doc = $this->parseFragment($html);
-
-        $this->assertInstanceOf('\DOMDocumentFragment', $doc);
-        $this->assertTrue($doc->hasChildNodes());
-        $this->assertEquals('div', $doc->childNodes->item(0)->tagName);
-        $this->assertEquals('test', $doc->childNodes->item(0)->textContent);
-        $this->assertEquals('span', $doc->childNodes->item(1)->tagName);
-        $this->assertEquals('test2', $doc->childNodes->item(1)->textContent);
-    }
-
-    public function testElements()
-    {
-        $html = "<!DOCTYPE html><html><head><title></title></head><body></body></html>";
-        $doc = $this->parse($html);
-        $root = $doc->documentElement;
-
-        $this->assertEquals('html', $root->tagName);
-        $this->assertEquals('html', $root->localName);
-        $this->assertEquals('html', $root->nodeName);
-
-        $this->assertEquals(2, $root->childNodes->length);
-        $kids = $root->childNodes;
-
-        $this->assertEquals('head', $kids->item(0)->tagName);
-        $this->assertEquals('body', $kids->item(1)->tagName);
-
-        $head = $kids->item(0);
-        $this->assertEquals(1, $head->childNodes->length);
-        $this->assertEquals('title', $head->childNodes->item(0)->tagName);
-    }
-
-    public function testImplicitNamespaces()
-    {
-        $dom = $this->parse('<!DOCTYPE html><html><body><a xlink:href="bar">foo</a></body></html>');
-        $a = $dom->getElementsByTagName('a')->item(0);
-        $attr = $a->getAttributeNode('xlink:href');
-        $this->assertEquals('http://www.w3.org/1999/xlink', $attr->namespaceURI);
-
-        $dom = $this->parse('<!DOCTYPE html><html><body><a xml:base="bar">foo</a></body></html>');
-        $a = $dom->getElementsByTagName('a')->item(0);
-        $attr = $a->getAttributeNode('xml:base');
-        $this->assertEquals('http://www.w3.org/XML/1998/namespace', $attr->namespaceURI);
-    }
-
-    public function testCustomImplicitNamespaces()
-    {
-        $dom = $this->parse('<!DOCTYPE html><html><body><a t:href="bar">foo</a></body></html>', array(
-            'implicitNamespaces' => array(
-                't' => 'http://www.example.com'
-            )
-        ));
-        $a = $dom->getElementsByTagName('a')->item(0);
-        $attr = $a->getAttributeNode('t:href');
-        $this->assertEquals('http://www.example.com', $attr->namespaceURI);
-
-        $dom = $this->parse('<!DOCTYPE html><html><body><t:a>foo</t:a></body></html>', array(
-            'implicitNamespaces' => array(
-                't' => 'http://www.example.com'
-            )
-        ));
-        $list = $dom->getElementsByTagNameNS('http://www.example.com', 'a');
-        $this->assertEquals(1, $list->length);
-    }
-
-    public function testXmlNamespaces()
-    {
-        $dom = $this->parse(
-            '<!DOCTYPE html><html>
-            <t:body xmlns:t="http://www.example.com">
-                <a t:href="bar">foo</a>
-            </body>
-            <div>foo</div>
-          </html>', array(
-                'xmlNamespaces' => true
-            ));
-        $a = $dom->getElementsByTagName('a')->item(0);
-        $attr = $a->getAttributeNode('t:href');
-        $this->assertEquals('http://www.example.com', $attr->namespaceURI);
-
-        $list = $dom->getElementsByTagNameNS('http://www.example.com', 'body');
-        $this->assertEquals(1, $list->length);
-    }
-
-    public function testXmlNamespaceNesting()
-    {
-        $dom = $this->parse(
-            '<!DOCTYPE html><html>
-            <body xmlns:x="http://www.prefixed.com" id="body">
-                <a id="bar1" xmlns="http://www.prefixed.com/bar1">
-                    <b id="bar4" xmlns="http://www.prefixed.com/bar4"><x:prefixed id="prefixed"/></b>
-                </a>
-                <svg id="svg"></svg>
-                <c id="bar2" xmlns="http://www.prefixed.com/bar2"></c>
-                <div id="div"></div>
-                <d id="bar3"></d>
-                <xn:d xmlns:xn="http://www.prefixed.com/xn" xmlns="http://www.prefixed.com/bar5_x" id="bar5"><x id="bar5_x"/></xn:d>
-            </body>
-          </html>', array(
-                'xmlNamespaces' => true
-            ));
-
-
-        $this->assertEmpty($this->errors);
-
-        $div = $dom->getElementById('div');
-        $this->assertEquals('http://www.w3.org/1999/xhtml', $div->namespaceURI);
-
-        $body = $dom->getElementById('body');
-        $this->assertEquals('http://www.w3.org/1999/xhtml', $body->namespaceURI);
-
-        $bar1 = $dom->getElementById('bar1');
-        $this->assertEquals('http://www.prefixed.com/bar1', $bar1->namespaceURI);
-
-        $bar2 = $dom->getElementById('bar2');
-        $this->assertEquals("http://www.prefixed.com/bar2", $bar2->namespaceURI);
-
-        $bar3 = $dom->getElementById('bar3');
-        $this->assertEquals("http://www.w3.org/1999/xhtml", $bar3->namespaceURI);
-
-        $bar4 = $dom->getElementById('bar4');
-        $this->assertEquals("http://www.prefixed.com/bar4", $bar4->namespaceURI);
-
-        $svg = $dom->getElementById('svg');
-        $this->assertEquals("http://www.w3.org/2000/svg", $svg->namespaceURI);
-
-        $prefixed = $dom->getElementById('prefixed');
-        $this->assertEquals("http://www.prefixed.com", $prefixed->namespaceURI);
-
-        $prefixed = $dom->getElementById('bar5');
-        $this->assertEquals("http://www.prefixed.com/xn", $prefixed->namespaceURI);
-
-        $prefixed = $dom->getElementById('bar5_x');
-        $this->assertEquals("http://www.prefixed.com/bar5_x", $prefixed->namespaceURI);
-    }
-
-    public function testMoveNonInlineElements()
-    {
-    	$doc = $this->parse('<p>line1<br/><hr/>line2</p>');
-		$this->assertEquals('<html xmlns="http://www.w3.org/1999/xhtml"><p>line1<br/></p><hr/>line2</html>', $doc->saveXML($doc->documentElement), 'Move non-inline elements outside of inline containers.');
-
-		$doc = $this->parse('<p>line1<div>line2</div></p>');
-		$this->assertEquals('<html xmlns="http://www.w3.org/1999/xhtml"><p>line1</p><div>line2</div></html>', $doc->saveXML($doc->documentElement), 'Move non-inline elements outside of inline containers.');
-    }
-
-    public function testAttributes()
-    {
-        $html = "<!DOCTYPE html>
-      <html>
-      <head><title></title></head>
-      <body id='a' class='b c'></body>
-      </html>";
-        $doc = $this->parse($html);
-        $root = $doc->documentElement;
-
-        $body = $root->GetElementsByTagName('body')->item(0);
-        $this->assertEquals('body', $body->tagName);
-        $this->assertTrue($body->hasAttributes());
-        $this->assertEquals('a', $body->getAttribute('id'));
-        $this->assertEquals('b c', $body->getAttribute('class'));
-
-        $body2 = $doc->getElementById('a');
-        $this->assertEquals('body', $body2->tagName);
-        $this->assertEquals('a', $body2->getAttribute('id'));
-    }
-
-    public function testSVGAttributes()
-    {
-        $html = "<!DOCTYPE html>
-      <html><body>
-      <svg width='150' viewbox='2'>
-      <rect textlength='2'/>
-      <animatecolor>foo</animatecolor>
-      </svg>
-      </body></html>";
-        $doc = $this->parse($html);
-        $root = $doc->documentElement;
-
-        $svg = $root->getElementsByTagName('svg')->item(0);
-        $this->assertTrue($svg->hasAttribute('viewBox'));
-
-        $rect = $root->getElementsByTagName('rect')->item(0);
-        $this->assertTrue($rect->hasAttribute('textLength'));
-
-        $ac = $root->getElementsByTagName('animateColor');
-        $this->assertEquals(1, $ac->length);
-    }
-
-    public function testMathMLAttribute()
-    {
-        $html = '<!doctype html>
-      <html lang="en">
-        <body>
-          <math>
-            <mi>x</mi>
-            <csymbol definitionurl="http://www.example.com/mathops/multiops.html#plusminus">
-              <mo>&PlusMinus;</mo>
-            </csymbol>
-            <mi>y</mi>
-          </math>
-        </body>
-      </html>';
-
-        $doc = $this->parse($html);
-        $root = $doc->documentElement;
-
-        $csymbol = $root->getElementsByTagName('csymbol')->item(0);
-        $this->assertTrue($csymbol->hasAttribute('definitionURL'));
-    }
-
-    public function testMissingHtmlTag()
-    {
-        $html = "<!DOCTYPE html><title>test</title>";
-        $doc = $this->parse($html);
-
-        $this->assertEquals('html', $doc->documentElement->tagName);
-        $this->assertEquals('title', $doc->documentElement->childNodes->item(0)->tagName);
-    }
-
-    public function testComment()
-    {
-        $html = '<html><!--Hello World.--></html>';
-
-        $doc = $this->parse($html);
-
-        $comment = $doc->documentElement->childNodes->item(0);
-        $this->assertEquals(XML_COMMENT_NODE, $comment->nodeType);
-        $this->assertEquals("Hello World.", $comment->data);
-
-        $html = '<!--Hello World.--><html></html>';
-        $doc = $this->parse($html);
-
-        $comment = $doc->childNodes->item(1);
-        $this->assertEquals(XML_COMMENT_NODE, $comment->nodeType);
-        $this->assertEquals("Hello World.", $comment->data);
-
-        $comment = $doc->childNodes->item(2);
-        $this->assertEquals(XML_ELEMENT_NODE, $comment->nodeType);
-        $this->assertEquals("html", $comment->tagName);
-    }
-
-    public function testCDATA()
-    {
-        $html = "<!DOCTYPE html><html><math><![CDATA[test]]></math></html>";
-        $doc = $this->parse($html);
-
-        $wrapper = $doc->getElementsByTagName('math')->item(0);
-        $this->assertEquals(1, $wrapper->childNodes->length);
-        $cdata = $wrapper->childNodes->item(0);
-        $this->assertEquals(XML_CDATA_SECTION_NODE, $cdata->nodeType);
-        $this->assertEquals('test', $cdata->data);
-    }
-
-    public function testText()
-    {
-        $html = "<!DOCTYPE html><html><head></head><body><math>test</math></body></html>";
-        $doc = $this->parse($html);
-
-        $wrapper = $doc->getElementsByTagName('math')->item(0);
-        $this->assertEquals(1, $wrapper->childNodes->length);
-        $data = $wrapper->childNodes->item(0);
-        $this->assertEquals(XML_TEXT_NODE, $data->nodeType);
-        $this->assertEquals('test', $data->data);
-
-        // The DomTreeBuilder has special handling for text when in before head mode.
-        $html = "<!DOCTYPE html><html>
-    Foo<head></head><body></body></html>";
-        $doc = $this->parse($html);
-        $this->assertEquals('Line 0, Col 0: Unexpected text. Ignoring: Foo', $this->errors[0]);
-        $headElement = $doc->documentElement->firstChild;
-        $this->assertEquals('head', $headElement->tagName);
-    }
-
-    public function testParseErrors()
-    {
-        $html = "<!DOCTYPE html><html><math><![CDATA[test";
-        $doc = $this->parse($html);
-
-        // We're JUST testing that we can access errors. Actual testing of
-        // error messages happen in the Tokenizer's tests.
-        $this->assertGreaterThan(0, count($this->errors));
-        $this->assertTrue(is_string($this->errors[0]));
-    }
-
-    public function testProcessingInstruction()
-    {
-        // Test the simple case, which is where PIs are inserted into the DOM.
-        $doc = $this->parse('<!DOCTYPE html><html><?foo bar?>');
-        $this->assertEquals(1, $doc->documentElement->childNodes->length);
-        $pi = $doc->documentElement->firstChild;
-        $this->assertInstanceOf('\DOMProcessingInstruction', $pi);
-        $this->assertEquals('foo', $pi->nodeName);
-        $this->assertEquals('bar', $pi->data);
-
-        // Leading xml PIs should be ignored.
-        $doc = $this->parse('<?xml version="1.0"?><!DOCTYPE html><html><head></head></html>');
-
-        $this->assertEquals(2, $doc->childNodes->length);
-        $this->assertInstanceOf('\DOMDocumentType', $doc->childNodes->item(0));
-        $this->assertInstanceOf('\DOMElement', $doc->childNodes->item(1));
-    }
-
-    public function testAutocloseP()
-    {
-        $html = "<!DOCTYPE html><html><body><p><figure></body></html>";
-        $doc = $this->parse($html);
-
-        $p = $doc->getElementsByTagName('p')->item(0);
-        $this->assertEquals(0, $p->childNodes->length);
-        $this->assertEquals('figure', $p->nextSibling->tagName);
-    }
-
-    public function testAutocloseLI()
-    {
-        $html = '<!doctype html>
-      <html lang="en">
-        <body>
-          <ul><li>Foo<li>Bar<li>Baz</ul>
-        </body>
-      </html>';
-
-        $doc = $this->parse($html);
-        $length = $doc->getElementsByTagName('ul')->item(0)->childNodes->length;
-        $this->assertEquals(3, $length);
-    }
-
-    public function testMathML()
-    {
-        $html = '<!doctype html>
-      <html lang="en">
-        <body>
-          <math xmlns="http://www.w3.org/1998/Math/MathML">
-            <mi>x</mi>
-            <csymbol definitionurl="http://www.example.com/mathops/multiops.html#plusminus">
-              <mo>&PlusMinus;</mo>
-            </csymbol>
-            <mi>y</mi>
-          </math>
-        </body>
-      </html>';
-
-        $doc = $this->parse($html);
-        $math = $doc->getElementsByTagName('math')->item(0);
-        $this->assertEquals('math', $math->tagName);
-        $this->assertEquals('math', $math->nodeName);
-        $this->assertEquals('math', $math->localName);
-        $this->assertEquals('http://www.w3.org/1998/Math/MathML', $math->namespaceURI);
-    }
-
-    public function testSVG()
-    {
-        $html = '<!doctype html>
-      <html lang="en">
-        <body>
-          <svg width="150" height="100" viewBox="0 0 3 2" xmlns="http://www.w3.org/2000/svg">
-            <rect width="1" height="2" x="2" fill="#d2232c" />
-            <text font-family="Verdana" font-size="32">
-              <textpath xlink:href="#Foo">
-                Test Text.
-              </textPath>
-            </text>
-          </svg>
-        </body>
-      </html>';
-
-        $doc = $this->parse($html);
-        $svg = $doc->getElementsByTagName('svg')->item(0);
-        $this->assertEquals('svg', $svg->tagName);
-        $this->assertEquals('svg', $svg->nodeName);
-        $this->assertEquals('svg', $svg->localName);
-        $this->assertEquals('http://www.w3.org/2000/svg', $svg->namespaceURI);
-
-        $textPath = $doc->getElementsByTagName('textPath')->item(0);
-        $this->assertEquals('textPath', $textPath->tagName);
-    }
-
-    public function testNoScript()
-    {
-        $html = '<!DOCTYPE html><html><head><noscript>No JS</noscript></head></html>';
-        $doc = $this->parse($html);
-        $this->assertEmpty($this->errors);
-        $noscript = $doc->getElementsByTagName('noscript')->item(0);
-        $this->assertEquals('noscript', $noscript->tagName);
-    }
-
-    /**
-     * Regression for issue #13
-     */
-    public function testRegressionHTMLNoBody()
-    {
-        $html = '<!DOCTYPE html><html><span id="test">Test</span></html>';
-        $doc = $this->parse($html);
-        $span = $doc->getElementById('test');
-
-        $this->assertEmpty($this->errors);
-
-        $this->assertEquals('span', $span->tagName);
-        $this->assertEquals('Test', $span->textContent);
-    }
-
-    public function testInstructionProcessor()
-    {
-        $string = '<!DOCTYPE html><html><?foo bar ?></html>';
-
-        $treeBuilder = new DOMTreeBuilder();
-        $is = new InstructionProcessorMock();
-        $treeBuilder->setInstructionProcessor($is);
-
-        $input = new StringInputStream($string);
-        $scanner = new Scanner($input);
-        $parser = new Tokenizer($scanner, $treeBuilder);
-
-        $parser->parse();
-        $dom = $treeBuilder->document();
-        $div = $dom->getElementsByTagName('div')->item(0);
-
-        $this->assertEquals(1, $is->count);
-        $this->assertEquals('foo', $is->name);
-        $this->assertEquals('bar ', $is->data);
-        $this->assertEquals('div', $div->tagName);
-        $this->assertEquals('foo', $div->textContent);
-    }
-}
diff --git a/vendor/masterminds/html5/test/HTML5/Parser/EventStack.php b/vendor/masterminds/html5/test/HTML5/Parser/EventStack.php
deleted file mode 100644
index 60e2abe..0000000
--- a/vendor/masterminds/html5/test/HTML5/Parser/EventStack.php
+++ /dev/null
@@ -1,116 +0,0 @@
-<?php
-namespace Masterminds\HTML5\Tests\Parser;
-
-use Masterminds\HTML5\Elements;
-use Masterminds\HTML5\Parser\EventHandler;
-
-/**
- * This testing class gathers events from a parser and builds a stack of events.
- * It is useful for checking the output of a tokenizer.
- *
- * IMPORTANT:
- *
- * The startTag event also kicks the parser into TEXT_RAW when it encounters
- * script or pre tags. This is to match the behavior required by the HTML5 spec,
- * which says that the tree builder must tell the tokenizer when to switch states.
- */
-class EventStack implements EventHandler
-{
-
-    protected $stack;
-
-    public function __construct()
-    {
-        $this->stack = array();
-    }
-
-    /**
-     * Get the event stack.
-     */
-    public function events()
-    {
-        return $this->stack;
-    }
-
-    public function depth()
-    {
-        return count($this->stack);
-    }
-
-    public function get($index)
-    {
-        return $this->stack[$index];
-    }
-
-    protected function store($event, $data = null)
-    {
-        $this->stack[] = array(
-            'name' => $event,
-            'data' => $data
-        );
-    }
-
-    public function doctype($name, $type = 0, $id = null, $quirks = false)
-    {
-        $args = array(
-            $name,
-            $type,
-            $id,
-            $quirks
-        );
-        $this->store('doctype', $args);
-    }
-
-    public function startTag($name, $attributes = array(), $selfClosing = false)
-    {
-        $args = func_get_args();
-        $this->store('startTag', $args);
-        if ($name == 'pre' || $name == 'script') {
-            return Elements::TEXT_RAW;
-        }
-    }
-
-    public function endTag($name)
-    {
-        $this->store('endTag', array(
-            $name
-        ));
-    }
-
-    public function comment($cdata)
-    {
-        $this->store('comment', array(
-            $cdata
-        ));
-    }
-
-    public function cdata($data)
-    {
-        $this->store('cdata', func_get_args());
-    }
-
-    public function text($cdata)
-    {
-        // fprintf(STDOUT, "Received TEXT event with: " . $cdata);
-        $this->store('text', array(
-            $cdata
-        ));
-    }
-
-    public function eof()
-    {
-        $this->store('eof');
-    }
-
-    public function parseError($msg, $line, $col)
-    {
-        // throw new EventStackParseError(sprintf("%s (line %d, col %d)", $msg, $line, $col));
-        // $this->store(sprintf("%s (line %d, col %d)", $msg, $line, $col));
-        $this->store('error', func_get_args());
-    }
-
-    public function processingInstruction($name, $data = null)
-    {
-        $this->store('pi', func_get_args());
-    }
-}
diff --git a/vendor/masterminds/html5/test/HTML5/Parser/EventStackError.php b/vendor/masterminds/html5/test/HTML5/Parser/EventStackError.php
deleted file mode 100644
index e58fdff..0000000
--- a/vendor/masterminds/html5/test/HTML5/Parser/EventStackError.php
+++ /dev/null
@@ -1,6 +0,0 @@
-<?php
-namespace Masterminds\HTML5\Tests\Parser;
-
-class EventStackError extends \Exception
-{
-}
diff --git a/vendor/masterminds/html5/test/HTML5/Parser/FileInputStreamTest.html b/vendor/masterminds/html5/test/HTML5/Parser/FileInputStreamTest.html
deleted file mode 100644
index a976e8b..0000000
--- a/vendor/masterminds/html5/test/HTML5/Parser/FileInputStreamTest.html
+++ /dev/null
@@ -1,10 +0,0 @@
-<!doctype html>
-<html lang="en">
-  <head>
-    <meta charset="utf-8">
-    <title>Test</title>
-  </head>
-  <body>
-    <p>This is a test.</p>
-  </body>
-</html>
\ No newline at end of file
diff --git a/vendor/masterminds/html5/test/HTML5/Parser/FileInputStreamTest.php b/vendor/masterminds/html5/test/HTML5/Parser/FileInputStreamTest.php
deleted file mode 100644
index 71dd828..0000000
--- a/vendor/masterminds/html5/test/HTML5/Parser/FileInputStreamTest.php
+++ /dev/null
@@ -1,195 +0,0 @@
-<?php
-namespace Masterminds\HTML5\Tests\Parser;
-
-use Masterminds\HTML5\Parser\FileInputStream;
-
-class FileInputStreamTest extends \Masterminds\HTML5\Tests\TestCase
-{
-
-    public function testConstruct()
-    {
-        $s = new FileInputStream(__DIR__ . '/FileInputStreamTest.html');
-
-        $this->assertInstanceOf('\Masterminds\HTML5\Parser\FileInputStream', $s);
-    }
-
-    public function testNext()
-    {
-        $s = new FileInputStream(__DIR__ . '/FileInputStreamTest.html');
-
-        $s->next();
-        $this->assertEquals('!', $s->current());
-        $s->next();
-        $this->assertEquals('d', $s->current());
-    }
-
-    public function testKey()
-    {
-        $s = new FileInputStream(__DIR__ . '/FileInputStreamTest.html');
-
-        $this->assertEquals(0, $s->key());
-
-        $s->next();
-        $this->assertEquals(1, $s->key());
-    }
-
-    public function testPeek()
-    {
-        $s = new FileInputStream(__DIR__ . '/FileInputStreamTest.html');
-
-        $this->assertEquals('!', $s->peek());
-
-        $s->next();
-        $this->assertEquals('d', $s->peek());
-    }
-
-    public function testCurrent()
-    {
-        $s = new FileInputStream(__DIR__ . '/FileInputStreamTest.html');
-
-        $this->assertEquals('<', $s->current());
-
-        $s->next();
-        $this->assertEquals('!', $s->current());
-
-        $s->next();
-        $this->assertEquals('d', $s->current());
-    }
-
-    public function testColumnOffset()
-    {
-        $s = new FileInputStream(__DIR__ . '/FileInputStreamTest.html');
-        $this->assertEquals(0, $s->columnOffset());
-        $s->next();
-        $this->assertEquals(1, $s->columnOffset());
-        $s->next();
-        $this->assertEquals(2, $s->columnOffset());
-        $s->next();
-        $this->assertEquals(3, $s->columnOffset());
-
-        // Make sure we get to the second line
-        $s->next();
-        $s->next();
-        $s->next();
-        $s->next();
-        $s->next();
-        $s->next();
-        $s->next();
-        $s->next();
-        $s->next();
-        $s->next();
-        $s->next();
-        $s->next();
-        $s->next();
-        $this->assertEquals(0, $s->columnOffset());
-
-        $s->next();
-        $canary = $s->current(); // h
-        $this->assertEquals('h', $canary);
-        $this->assertEquals(1, $s->columnOffset());
-    }
-
-    public function testCurrentLine()
-    {
-        $s = new FileInputStream(__DIR__ . '/FileInputStreamTest.html');
-
-        $this->assertEquals(1, $s->currentLine());
-
-        // Make sure we get to the second line
-        $s->next();
-        $s->next();
-        $s->next();
-        $s->next();
-        $s->next();
-        $s->next();
-        $s->next();
-        $s->next();
-        $s->next();
-        $s->next();
-        $s->next();
-        $s->next();
-        $s->next();
-        $s->next();
-        $s->next();
-        $s->next();
-        $this->assertEquals(2, $s->currentLine());
-
-        // Make sure we get to the third line
-        $s->next();
-        $s->next();
-        $s->next();
-        $s->next();
-        $s->next();
-        $s->next();
-        $s->next();
-        $s->next();
-        $s->next();
-        $s->next();
-        $s->next();
-        $s->next();
-        $s->next();
-        $s->next();
-        $s->next();
-        $s->next();
-        $s->next();
-        $this->assertEquals(3, $s->currentLine());
-    }
-
-    public function testRemainingChars()
-    {
-        $text = file_get_contents(__DIR__ . '/FileInputStreamTest.html');
-        $s = new FileInputStream(__DIR__ . '/FileInputStreamTest.html');
-        $this->assertEquals($text, $s->remainingChars());
-
-        $text = substr(file_get_contents(__DIR__ . '/FileInputStreamTest.html'), 1);
-        $s = new FileInputStream(__DIR__ . '/FileInputStreamTest.html');
-        $s->next(); // Pop one.
-        $this->assertEquals($text, $s->remainingChars());
-    }
-
-    public function testCharsUnitl()
-    {
-        $s = new FileInputStream(__DIR__ . '/FileInputStreamTest.html');
-
-        $this->assertEquals('', $s->charsUntil('<'));
-        // Pointer at '<', moves to ' '
-        $this->assertEquals('<!doctype', $s->charsUntil(' ', 20));
-
-        // Pointer at ' ', moves to '>'
-        $this->assertEquals(' html', $s->charsUntil('>'));
-
-        // Pointer at '>', moves to '\n'.
-        $this->assertEquals('>', $s->charsUntil("\n"));
-
-        // Pointer at '\n', move forward then to the next'\n'.
-        $s->next();
-        $this->assertEquals('<html lang="en">', $s->charsUntil("\n"));
-
-        // Ony get one of the spaces.
-        $this->assertEquals("\n ", $s->charsUntil('<', 2));
-
-        // Get the other space.
-        $this->assertEquals(" ", $s->charsUntil('<'));
-
-        // This should scan to the end of the file.
-        $text = "<head>
-    <meta charset=\"utf-8\">
-    <title>Test</title>
-  </head>
-  <body>
-    <p>This is a test.</p>
-  </body>
-</html>";
-        $this->assertEquals($text, $s->charsUntil("\t"));
-    }
-
-    public function testCharsWhile()
-    {
-        $s = new FileInputStream(__DIR__ . '/FileInputStreamTest.html');
-
-        $this->assertEquals('<!', $s->charsWhile('!<'));
-        $this->assertEquals('', $s->charsWhile('>'));
-        $this->assertEquals('doctype', $s->charsWhile('odcyept'));
-        $this->assertEquals(' htm', $s->charsWhile('html ', 4));
-    }
-}
diff --git a/vendor/masterminds/html5/test/HTML5/Parser/InstructionProcessorMock.php b/vendor/masterminds/html5/test/HTML5/Parser/InstructionProcessorMock.php
deleted file mode 100644
index 32a2204..0000000
--- a/vendor/masterminds/html5/test/HTML5/Parser/InstructionProcessorMock.php
+++ /dev/null
@@ -1,26 +0,0 @@
-<?php
-namespace Masterminds\HTML5\Tests\Parser;
-
-class InstructionProcessorMock implements \Masterminds\HTML5\InstructionProcessor
-{
-
-    public $name = null;
-
-    public $data = null;
-
-    public $count = 0;
-
-    public function process(\DOMElement $element, $name, $data)
-    {
-        $this->name = $name;
-        $this->data = $data;
-        $this->count ++;
-
-        $div = $element->ownerDocument->createElement("div");
-        $div->nodeValue = 'foo';
-
-        $element->appendChild($div);
-
-        return $div;
-    }
-}
diff --git a/vendor/masterminds/html5/test/HTML5/Parser/ScannerTest.php b/vendor/masterminds/html5/test/HTML5/Parser/ScannerTest.php
deleted file mode 100644
index 8fa5110..0000000
--- a/vendor/masterminds/html5/test/HTML5/Parser/ScannerTest.php
+++ /dev/null
@@ -1,171 +0,0 @@
-<?php
-/**
- * @file
- * Test the Scanner. This requires the InputStream tests are all good.
- */
-namespace Masterminds\HTML5\Tests\Parser;
-
-use Masterminds\HTML5\Parser\StringInputStream;
-use Masterminds\HTML5\Parser\Scanner;
-
-class ScannerTest extends \Masterminds\HTML5\Tests\TestCase
-{
-
-    /**
-     * A canary test to make sure the basics are setup and working.
-     */
-    public function testConstruct()
-    {
-        $is = new StringInputStream("abc");
-        $s = new Scanner($is);
-
-        $this->assertInstanceOf('\Masterminds\HTML5\Parser\Scanner', $s);
-    }
-
-    public function testNext()
-    {
-        $s = new Scanner(new StringInputStream("abc"));
-
-        $this->assertEquals('b', $s->next());
-        $this->assertEquals('c', $s->next());
-    }
-
-    public function testPosition()
-    {
-        $s = new Scanner(new StringInputStream("abc"));
-
-        $this->assertEquals(0, $s->position());
-
-        $s->next();
-        $this->assertEquals(1, $s->position());
-    }
-
-    public function testPeek()
-    {
-        $s = new Scanner(new StringInputStream("abc"));
-
-        $this->assertEquals('b', $s->peek());
-
-        $s->next();
-        $this->assertEquals('c', $s->peek());
-    }
-
-    public function testCurrent()
-    {
-        $s = new Scanner(new StringInputStream("abc"));
-
-        // Before scanning the string begins the current is empty.
-        $this->assertEquals('a', $s->current());
-
-        $c = $s->next();
-        $this->assertEquals('b', $s->current());
-
-        // Test movement through the string.
-        $c = $s->next();
-        $this->assertEquals('c', $s->current());
-    }
-
-    public function testUnconsume()
-    {
-        $s = new Scanner(new StringInputStream("abcdefghijklmnopqrst"));
-
-        // Get initial position.
-        $s->next();
-        $start = $s->position();
-
-        // Move forward a bunch of positions.
-        $amount = 7;
-        for ($i = 0; $i < $amount; $i ++) {
-            $s->next();
-        }
-
-        // Roll back the amount we moved forward.
-        $s->unconsume($amount);
-
-        $this->assertEquals($start, $s->position());
-    }
-
-    public function testGetHex()
-    {
-        $s = new Scanner(new StringInputStream("ab13ck45DE*"));
-
-        $this->assertEquals('ab13c', $s->getHex());
-
-        $s->next();
-        $this->assertEquals('45DE', $s->getHex());
-    }
-
-    public function testGetAsciiAlpha()
-    {
-        $s = new Scanner(new StringInputStream("abcdef1%mnop*"));
-
-        $this->assertEquals('abcdef', $s->getAsciiAlpha());
-
-        // Move past the 1% to scan the next group of text.
-        $s->next();
-        $s->next();
-        $this->assertEquals('mnop', $s->getAsciiAlpha());
-    }
-
-    public function testGetAsciiAlphaNum()
-    {
-        $s = new Scanner(new StringInputStream("abcdef1ghpo#mn94op"));
-
-        $this->assertEquals('abcdef1ghpo', $s->getAsciiAlphaNum());
-
-        // Move past the # to scan the next group of text.
-        $s->next();
-        $this->assertEquals('mn94op', $s->getAsciiAlphaNum());
-    }
-
-    public function testGetNumeric()
-    {
-        $s = new Scanner(new StringInputStream("1784a 45 9867 #"));
-
-        $this->assertEquals('1784', $s->getNumeric());
-
-        // Move past the 'a ' to scan the next group of text.
-        $s->next();
-        $s->next();
-        $this->assertEquals('45', $s->getNumeric());
-    }
-
-    public function testCurrentLine()
-    {
-        $s = new Scanner(new StringInputStream("1784a\n45\n9867 #\nThis is a test."));
-
-        $this->assertEquals(1, $s->currentLine());
-
-        // Move to the next line.
-        $s->getAsciiAlphaNum();
-        $s->next();
-        $this->assertEquals(2, $s->currentLine());
-    }
-
-    public function testColumnOffset()
-    {
-        $s = new Scanner(new StringInputStream("1784a a\n45 9867 #\nThis is a test."));
-
-        // Move the pointer to the space.
-        $s->getAsciiAlphaNum();
-        $this->assertEquals(5, $s->columnOffset());
-
-        // We move the pointer ahead. There must be a better way to do this.
-        $s->next();
-        $s->next();
-        $s->next();
-        $s->next();
-        $s->next();
-        $s->next();
-        $this->assertEquals(3, $s->columnOffset());
-    }
-
-    public function testRemainingChars()
-    {
-        $string = "\n45\n9867 #\nThis is a test.";
-        $s = new Scanner(new StringInputStream("1784a\n45\n9867 #\nThis is a test."));
-
-        $s->getAsciiAlphaNum();
-        $this->assertEquals($string, $s->remainingChars());
-    }
-}
diff --git a/vendor/masterminds/html5/test/HTML5/Parser/StringInputStreamTest.php b/vendor/masterminds/html5/test/HTML5/Parser/StringInputStreamTest.php
deleted file mode 100644
index f87cc10..0000000
--- a/vendor/masterminds/html5/test/HTML5/Parser/StringInputStreamTest.php
+++ /dev/null
@@ -1,327 +0,0 @@
-<?php
-namespace Masterminds\HTML5\Tests\Parser;
-
-use Masterminds\HTML5\Parser\StringInputStream;
-
-class StringInputStreamTest extends \Masterminds\HTML5\Tests\TestCase
-{
-
-    /**
-     * A canary test to make sure the basics are setup and working.
-     */
-    public function testConstruct()
-    {
-        $s = new StringInputStream("abc");
-
-        $this->assertInstanceOf('\Masterminds\HTML5\Parser\StringInputStream', $s);
-    }
-
-    public function testNext()
-    {
-        $s = new StringInputStream("abc");
-
-        $s->next();
-        $this->assertEquals('b', $s->current());
-        $s->next();
-        $this->assertEquals('c', $s->current());
-    }
-
-    public function testKey()
-    {
-        $s = new StringInputStream("abc");
-
-        $this->assertEquals(0, $s->key());
-
-        $s->next();
-        $this->assertEquals(1, $s->key());
-    }
-
-    public function testPeek()
-    {
-        $s = new StringInputStream("abc");
-
-        $this->assertEquals('b', $s->peek());
-
-        $s->next();
-        $this->assertEquals('c', $s->peek());
-    }
-
-    public function testCurrent()
-    {
-        $s = new StringInputStream("abc");
-
-        // Before scanning the string begins the current is empty.
-        $this->assertEquals('a', $s->current());
-
-        $s->next();
-        $this->assertEquals('b', $s->current());
-
-        // Test movement through the string.
-        $s->next();
-        $this->assertEquals('c', $s->current());
-    }
-
-    public function testColumnOffset()
-    {
-        $s = new StringInputStream("abc\ndef\n");
-        $this->assertEquals(0, $s->columnOffset());
-        $s->next();
-        $this->assertEquals(1, $s->columnOffset());
-        $s->next();
-        $this->assertEquals(2, $s->columnOffset());
-        $s->next();
-        $this->assertEquals(3, $s->columnOffset());
-        $s->next(); // LF
-        $this->assertEquals(0, $s->columnOffset());
-        $s->next();
-        $canary = $s->current(); // e
-        $this->assertEquals('e', $canary);
-        $this->assertEquals(1, $s->columnOffset());
-
-        $s = new StringInputStream("abc");
-        $this->assertEquals(0, $s->columnOffset());
-        $s->next();
-        $this->assertEquals(1, $s->columnOffset());
-        $s->next();
-        $this->assertEquals(2, $s->columnOffset());
-    }
-
-    public function testCurrentLine()
-    {
-        $txt = "1\n2\n\n\n\n3";
-        $stream = new StringInputStream($txt);
-        $this->assertEquals(1, $stream->currentLine());
-
-        // Advance over 1 and LF on to line 2 value 2.
-        $stream->next();
-        $stream->next();
-        $canary = $stream->current();
-        $this->assertEquals(2, $stream->currentLine());
-        $this->assertEquals('2', $canary);
-
-        // Advance over 4x LF
-        $stream->next();
-        $stream->next();
-        $stream->next();
-        $stream->next();
-        $stream->next();
-        $this->assertEquals(6, $stream->currentLine());
-        $this->assertEquals('3', $stream->current());
-
-        // Make sure it doesn't do 7.
-        $this->assertEquals(6, $stream->currentLine());
-    }
-
-    public function testRemainingChars()
-    {
-        $text = "abcd";
-        $s = new StringInputStream($text);
-        $this->assertEquals($text, $s->remainingChars());
-
-        $text = "abcd";
-        $s = new StringInputStream($text);
-        $s->next(); // Pop one.
-        $this->assertEquals('bcd', $s->remainingChars());
-    }
-
-    public function testCharsUnitl()
-    {
-        $text = "abcdefffffffghi";
-        $s = new StringInputStream($text);
-        $this->assertEquals('', $s->charsUntil('a'));
-        // Pointer at 'a', moves 2 to 'c'
-        $this->assertEquals('ab', $s->charsUntil('w', 2));
-
-        // Pointer at 'c', moves to first 'f'
-        $this->assertEquals('cde', $s->charsUntil('fzxv'));
-
-        // Only get five 'f's
-        $this->assertEquals('fffff', $s->charsUntil('g', 5));
-
-        // Get just the last two 'f's
-        $this->assertEquals('ff', $s->charsUntil('g'));
-
-        // This should scan to the end.
-        $this->assertEquals('ghi', $s->charsUntil('w', 9));
-    }
-
-    public function testCharsWhile()
-    {
-        $text = "abcdefffffffghi";
-        $s = new StringInputStream($text);
-
-        $this->assertEquals('ab', $s->charsWhile('ba'));
-
-        $this->assertEquals('', $s->charsWhile('a'));
-        $this->assertEquals('cde', $s->charsWhile('cdeba'));
-        $this->assertEquals('ff', $s->charsWhile('f', 2));
-        $this->assertEquals('fffff', $s->charsWhile('f'));
-        $this->assertEquals('g', $s->charsWhile('fg'));
-        $this->assertEquals('hi', $s->charsWhile('fghi', 99));
-    }
-
-    public function testBOM()
-    {
-        // Ignore in-text BOM.
-        $stream = new StringInputStream("a\xEF\xBB\xBF");
-        $this->assertEquals("a\xEF\xBB\xBF", $stream->remainingChars(), 'A non-leading U+FEFF (BOM/ZWNBSP) should remain');
-
-        // Strip leading BOM
-        $leading = new StringInputStream("\xEF\xBB\xBFa");
-        $this->assertEquals('a', $leading->current(), 'BOM should be stripped');
-    }
-
-    public function testCarriageReturn()
-    {
-        // Replace NULL with Unicode replacement.
-        $stream = new StringInputStream("\0\0\0");
-        $this->assertEquals("\xEF\xBF\xBD\xEF\xBF\xBD\xEF\xBF\xBD", $stream->remainingChars(), 'Null character should be replaced by U+FFFD');
-        $this->assertEquals(3, count($stream->errors), 'Null character should set parse error: ' . print_r($stream->errors, true));
-
-        // Remove CR when next to LF.
-        $stream = new StringInputStream("\r\n");
-        $this->assertEquals("\n", $stream->remainingChars(), 'CRLF should be replaced by LF');
-
-        // Convert CR to LF when on its own.
-        $stream = new StringInputStream("\r");
-        $this->assertEquals("\n", $stream->remainingChars(), 'CR should be replaced by LF');
-    }
-
-    public function invalidParseErrorTestHandler($input, $numErrors, $name)
-    {
-        $stream = new StringInputStream($input, 'UTF-8');
-        $this->assertEquals($input, $stream->remainingChars(), $name . ' (stream content)');
-        $this->assertEquals($numErrors, count($stream->errors), $name . ' (number of errors)');
-    }
-
-    public function testInvalidReplace()
-    {
-        $invalidTest = array(
-
-            // Min/max overlong
-            "\xC0\x80a" => 'Overlong representation of U+0000',
-            "\xE0\x80\x80a" => 'Overlong representation of U+0000',
-            "\xF0\x80\x80\x80a" => 'Overlong representation of U+0000',
-            "\xF8\x80\x80\x80\x80a" => 'Overlong representation of U+0000',
-            "\xFC\x80\x80\x80\x80\x80a" => 'Overlong representation of U+0000',
-            "\xC1\xBFa" => 'Overlong representation of U+007F',
-            "\xE0\x9F\xBFa" => 'Overlong representation of U+07FF',
-            "\xF0\x8F\xBF\xBFa" => 'Overlong representation of U+FFFF',
-
-            "a\xDF" => 'Incomplete two byte sequence (missing final byte)',
-            "a\xEF\xBF" => 'Incomplete three byte sequence (missing final byte)',
-            "a\xF4\xBF\xBF" => 'Incomplete four byte sequence (missing final byte)',
-
-            // Min/max continuation bytes
-            "a\x80" => 'Lone 80 continuation byte',
-            "a\xBF" => 'Lone BF continuation byte',
-
-            // Invalid bytes (these can never occur)
-            "a\xFE" => 'Invalid FE byte',
-            "a\xFF" => 'Invalid FF byte'
-        );
-        foreach ($invalidTest as $test => $note) {
-            $stream = new StringInputStream($test);
-            $this->assertEquals('a', $stream->remainingChars(), $note);
-        }
-
-        // MPB:
-        // It appears that iconv just leaves these alone. Not sure what to
-        // do.
-        /*
-         * $converted = array( "a\xF5\x90\x80\x80" => 'U+110000, off unicode planes.', ); foreach ($converted as $test => $note) { $stream = new StringInputStream($test); $this->assertEquals(2, mb_strlen($stream->remainingChars()), $note); }
-         */
-    }
-
-    public function testInvalidParseError()
-    {
-        // C0 controls (except U+0000 and U+000D due to different handling)
-        $this->invalidParseErrorTestHandler("\x01", 1, 'U+0001 (C0 control)');
-        $this->invalidParseErrorTestHandler("\x02", 1, 'U+0002 (C0 control)');
-        $this->invalidParseErrorTestHandler("\x03", 1, 'U+0003 (C0 control)');
-        $this->invalidParseErrorTestHandler("\x04", 1, 'U+0004 (C0 control)');
-        $this->invalidParseErrorTestHandler("\x05", 1, 'U+0005 (C0 control)');
-        $this->invalidParseErrorTestHandler("\x06", 1, 'U+0006 (C0 control)');
-        $this->invalidParseErrorTestHandler("\x07", 1, 'U+0007 (C0 control)');
-        $this->invalidParseErrorTestHandler("\x08", 1, 'U+0008 (C0 control)');
-        $this->invalidParseErrorTestHandler("\x09", 0, 'U+0009 (C0 control)');
-        $this->invalidParseErrorTestHandler("\x0A", 0, 'U+000A (C0 control)');
-        $this->invalidParseErrorTestHandler("\x0B", 1, 'U+000B (C0 control)');
-        $this->invalidParseErrorTestHandler("\x0C", 0, 'U+000C (C0 control)');
-        $this->invalidParseErrorTestHandler("\x0E", 1, 'U+000E (C0 control)');
-        $this->invalidParseErrorTestHandler("\x0F", 1, 'U+000F (C0 control)');
-        $this->invalidParseErrorTestHandler("\x10", 1, 'U+0010 (C0 control)');
-        $this->invalidParseErrorTestHandler("\x11", 1, 'U+0011 (C0 control)');
-        $this->invalidParseErrorTestHandler("\x12", 1, 'U+0012 (C0 control)');
-        $this->invalidParseErrorTestHandler("\x13", 1, 'U+0013 (C0 control)');
-        $this->invalidParseErrorTestHandler("\x14", 1, 'U+0014 (C0 control)');
-        $this->invalidParseErrorTestHandler("\x15", 1, 'U+0015 (C0 control)');
-        $this->invalidParseErrorTestHandler("\x16", 1, 'U+0016 (C0 control)');
-        $this->invalidParseErrorTestHandler("\x17", 1, 'U+0017 (C0 control)');
-        $this->invalidParseErrorTestHandler("\x18", 1, 'U+0018 (C0 control)');
-        $this->invalidParseErrorTestHandler("\x19", 1, 'U+0019 (C0 control)');
-        $this->invalidParseErrorTestHandler("\x1A", 1, 'U+001A (C0 control)');
-        $this->invalidParseErrorTestHandler("\x1B", 1, 'U+001B (C0 control)');
-        $this->invalidParseErrorTestHandler("\x1C", 1, 'U+001C (C0 control)');
-        $this->invalidParseErrorTestHandler("\x1D", 1, 'U+001D (C0 control)');
-        $this->invalidParseErrorTestHandler("\x1E", 1, 'U+001E (C0 control)');
-        $this->invalidParseErrorTestHandler("\x1F", 1, 'U+001F (C0 control)');
-
-        // DEL (U+007F)
-        $this->invalidParseErrorTestHandler("\x7F", 1, 'U+007F');
-
-        // C1 Controls
-        $this->invalidParseErrorTestHandler("\xC2\x80", 1, 'U+0080 (C1 control)');
-        $this->invalidParseErrorTestHandler("\xC2\x9F", 1, 'U+009F (C1 control)');
-        $this->invalidParseErrorTestHandler("\xC2\xA0", 0, 'U+00A0 (first codepoint above highest C1 control)');
-
-        // Charcters surrounding surrogates
-        $this->invalidParseErrorTestHandler("\xED\x9F\xBF", 0, 'U+D7FF (one codepoint below lowest surrogate codepoint)');
-        $this->invalidParseErrorTestHandler("\xEF\xBF\xBD", 0, 'U+DE00 (one codepoint above highest surrogate codepoint)');
-
-        // Permanent noncharacters
-        $this->invalidParseErrorTestHandler("\xEF\xB7\x90", 1, 'U+FDD0 (permanent noncharacter)');
-        $this->invalidParseErrorTestHandler("\xEF\xB7\xAF", 1, 'U+FDEF (permanent noncharacter)');
-        $this->invalidParseErrorTestHandler("\xEF\xBF\xBE", 1, 'U+FFFE (permanent noncharacter)');
-        $this->invalidParseErrorTestHandler("\xEF\xBF\xBF", 1, 'U+FFFF (permanent noncharacter)');
-        $this->invalidParseErrorTestHandler("\xF0\x9F\xBF\xBE", 1, 'U+1FFFE (permanent noncharacter)');
-        $this->invalidParseErrorTestHandler("\xF0\x9F\xBF\xBF", 1, 'U+1FFFF (permanent noncharacter)');
-        $this->invalidParseErrorTestHandler("\xF0\xAF\xBF\xBE", 1, 'U+2FFFE (permanent noncharacter)');
-        $this->invalidParseErrorTestHandler("\xF0\xAF\xBF\xBF", 1, 'U+2FFFF (permanent noncharacter)');
-        $this->invalidParseErrorTestHandler("\xF0\xBF\xBF\xBE", 1, 'U+3FFFE (permanent noncharacter)');
-        $this->invalidParseErrorTestHandler("\xF0\xBF\xBF\xBF", 1, 'U+3FFFF (permanent noncharacter)');
-        $this->invalidParseErrorTestHandler("\xF1\x8F\xBF\xBE", 1, 'U+4FFFE (permanent noncharacter)');
-        $this->invalidParseErrorTestHandler("\xF1\x8F\xBF\xBF", 1, 'U+4FFFF (permanent noncharacter)');
-        $this->invalidParseErrorTestHandler("\xF1\x9F\xBF\xBE", 1, 'U+5FFFE (permanent noncharacter)');
-        $this->invalidParseErrorTestHandler("\xF1\x9F\xBF\xBF", 1, 'U+5FFFF (permanent noncharacter)');
-        $this->invalidParseErrorTestHandler("\xF1\xAF\xBF\xBE", 1, 'U+6FFFE (permanent noncharacter)');
-        $this->invalidParseErrorTestHandler("\xF1\xAF\xBF\xBF", 1, 'U+6FFFF (permanent noncharacter)');
-        $this->invalidParseErrorTestHandler("\xF1\xBF\xBF\xBE", 1, 'U+7FFFE (permanent noncharacter)');
-        $this->invalidParseErrorTestHandler("\xF1\xBF\xBF\xBF", 1, 'U+7FFFF (permanent noncharacter)');
-        $this->invalidParseErrorTestHandler("\xF2\x8F\xBF\xBE", 1, 'U+8FFFE (permanent noncharacter)');
-        $this->invalidParseErrorTestHandler("\xF2\x8F\xBF\xBF", 1, 'U+8FFFF (permanent noncharacter)');
-        $this->invalidParseErrorTestHandler("\xF2\x9F\xBF\xBE", 1, 'U+9FFFE (permanent noncharacter)');
-        $this->invalidParseErrorTestHandler("\xF2\x9F\xBF\xBF", 1, 'U+9FFFF (permanent noncharacter)');
-        $this->invalidParseErrorTestHandler("\xF2\xAF\xBF\xBE", 1, 'U+AFFFE (permanent noncharacter)');
-        $this->invalidParseErrorTestHandler("\xF2\xAF\xBF\xBF", 1, 'U+AFFFF (permanent noncharacter)');
-        $this->invalidParseErrorTestHandler("\xF2\xBF\xBF\xBE", 1, 'U+BFFFE (permanent noncharacter)');
-        $this->invalidParseErrorTestHandler("\xF2\xBF\xBF\xBF", 1, 'U+BFFFF (permanent noncharacter)');
-        $this->invalidParseErrorTestHandler("\xF3\x8F\xBF\xBE", 1, 'U+CFFFE (permanent noncharacter)');
-        $this->invalidParseErrorTestHandler("\xF3\x8F\xBF\xBF", 1, 'U+CFFFF (permanent noncharacter)');
-        $this->invalidParseErrorTestHandler("\xF3\x9F\xBF\xBE", 1, 'U+DFFFE (permanent noncharacter)');
-        $this->invalidParseErrorTestHandler("\xF3\x9F\xBF\xBF", 1, 'U+DFFFF (permanent noncharacter)');
-        $this->invalidParseErrorTestHandler("\xF3\xAF\xBF\xBE", 1, 'U+EFFFE (permanent noncharacter)');
-        $this->invalidParseErrorTestHandler("\xF3\xAF\xBF\xBF", 1, 'U+EFFFF (permanent noncharacter)');
-        $this->invalidParseErrorTestHandler("\xF3\xBF\xBF\xBE", 1, 'U+FFFFE (permanent noncharacter)');
-        $this->invalidParseErrorTestHandler("\xF3\xBF\xBF\xBF", 1, 'U+FFFFF (permanent noncharacter)');
-        $this->invalidParseErrorTestHandler("\xF4\x8F\xBF\xBE", 1, 'U+10FFFE (permanent noncharacter)');
-        $this->invalidParseErrorTestHandler("\xF4\x8F\xBF\xBF", 1, 'U+10FFFF (permanent noncharacter)');
-
-        // MPB: These pass on some versions of iconv, and fail on others. Since we aren't in the
-        // business of writing tests against iconv, I've just commented these out. Should revisit
-        // at a later point.
-        /*
-         * $this->invalidParseErrorTestHandler("\xED\xA0\x80", 1, 'U+D800 (UTF-16 surrogate character)'); $this->invalidParseErrorTestHandler("\xED\xAD\xBF", 1, 'U+DB7F (UTF-16 surrogate character)'); $this->invalidParseErrorTestHandler("\xED\xAE\x80", 1, 'U+DB80 (UTF-16 surrogate character)'); $this->invalidParseErrorTestHandler("\xED\xAF\xBF", 1, 'U+DBFF (UTF-16 surrogate character)'); $this->invalidParseErrorTestHandler("\xED\xB0\x80", 1, 'U+DC00 (UTF-16 surrogate character)'); $this->invalidParseErrorTestHandler("\xED\xBE\x80", 1, 'U+DF80 (UTF-16 surrogate character)'); $this->invalidParseErrorTestHandler("\xED\xBF\xBF", 1, 'U+DFFF (UTF-16 surrogate character)'); // Paired UTF-16 surrogates $this->invalidParseErrorTestHandler("\xED\xA0\x80\xED\xB0\x80", 2, 'U+D800 U+DC00 (paired UTF-16 surrogates)'); $this->invalidParseErrorTestHandler("\xED\xA0\x80\xED\xBF\xBF", 2, 'U+D800 U+DFFF (paired UTF-16 surrogates)'); $this->invalidParseErrorTestHandler("\xED\xAD\xBF\xED\xB0\x80", 2, 'U+DB7F U+DC00 (paired UTF-16 surrogates)'); $this->invalidParseErrorTestHandler("\xED\xAD\xBF\xED\xBF\xBF", 2, 'U+DB7F U+DFFF (paired UTF-16 surrogates)'); $this->invalidParseErrorTestHandler("\xED\xAE\x80\xED\xB0\x80", 2, 'U+DB80 U+DC00 (paired UTF-16 surrogates)'); $this->invalidParseErrorTestHandler("\xED\xAE\x80\xED\xBF\xBF", 2, 'U+DB80 U+DFFF (paired UTF-16 surrogates)'); $this->invalidParseErrorTestHandler("\xED\xAF\xBF\xED\xB0\x80", 2, 'U+DBFF U+DC00 (paired UTF-16 surrogates)'); $this->invalidParseErrorTestHandler("\xED\xAF\xBF\xED\xBF\xBF", 2, 'U+DBFF U+DFFF (paired UTF-16 surrogates)');
-         */
-    }
-}
diff --git a/vendor/masterminds/html5/test/HTML5/Parser/TokenizerTest.php b/vendor/masterminds/html5/test/HTML5/Parser/TokenizerTest.php
deleted file mode 100644
index 3d834fd..0000000
--- a/vendor/masterminds/html5/test/HTML5/Parser/TokenizerTest.php
+++ /dev/null
@@ -1,970 +0,0 @@
-<?php
-namespace Masterminds\HTML5\Tests\Parser;
-
-use Masterminds\HTML5\Parser\UTF8Utils;
-use Masterminds\HTML5\Parser\StringInputStream;
-use Masterminds\HTML5\Parser\Scanner;
-use Masterminds\HTML5\Parser\Tokenizer;
-
-class TokenizerTest extends \Masterminds\HTML5\Tests\TestCase
-{
-    // ================================================================
-    // Additional assertions.
-    // ================================================================
-    /**
-     * Tests that an event matches both the event type and the expected value.
-     *
-     * @param string $type
-     *            Expected event type.
-     * @param string $expects
-     *            The value expected in $event['data'][0].
-     */
-    public function assertEventEquals($type, $expects, $event)
-    {
-        $this->assertEquals($type, $event['name'], "Event $type for " . print_r($event, true));
-        if (is_array($expects)) {
-            $this->assertEquals($expects, $event['data'], "Event $type should equal " . print_r($expects, true) . ": " . print_r($event, true));
-        } else {
-            $this->assertEquals($expects, $event['data'][0], "Event $type should equal $expects: " . print_r($event, true));
-        }
-    }
-
-    /**
-     * Assert that a given event is 'error'.
-     */
-    public function assertEventError($event)
-    {
-        $this->assertEquals('error', $event['name'], "Expected error for event: " . print_r($event, true));
-    }
-
-    /**
-     * Asserts that all of the tests are good.
-     *
-     * This loops through a map of tests/expectations and runs a few assertions on each test.
-     *
-     * Checks:
-     * - depth (if depth is > 0)
-     * - event name
-     * - matches on event 0.
-     */
-    protected function isAllGood($name, $depth, $tests, $debug = false)
-    {
-        foreach ($tests as $try => $expects) {
-            if ($debug) {
-                fprintf(STDOUT, "%s expects %s\n", $try, print_r($expects, true));
-            }
-            $e = $this->parse($try);
-            if ($depth > 0) {
-                $this->assertEquals($depth, $e->depth(), "Expected depth $depth for test $try." . print_r($e, true));
-            }
-            $this->assertEventEquals($name, $expects, $e->get(0));
-        }
-    }
-
-    // ================================================================
-    // Utility functions.
-    // ================================================================
-    public function testParse()
-    {
-        list ($tok, $events) = $this->createTokenizer('');
-
-        $tok->parse();
-        $e1 = $events->get(0);
-
-        $this->assertEquals(1, $events->Depth());
-        $this->assertEquals('eof', $e1['name']);
-    }
-
-    public function testWhitespace()
-    {
-        $spaces = '    ';
-        list ($tok, $events) = $this->createTokenizer($spaces);
-
-        $tok->parse();
-
-        $this->assertEquals(2, $events->depth());
-
-        $e1 = $events->get(0);
-
-        $this->assertEquals('text', $e1['name']);
-        $this->assertEquals($spaces, $e1['data'][0]);
-    }
-
-    public function testCharacterReference()
-    {
-        $good = array(
-            '&amp;' => '&',
-            '&#x0003c;' => '<',
-            '&#38;' => '&',
-            '&' => '&'
-        );
-        $this->isAllGood('text', 2, $good);
-
-        // Test with broken charref
-        $str = '&foo';
-        $events = $this->parse($str);
-        $e1 = $events->get(0);
-        $this->assertEquals('error', $e1['name']);
-
-        $str = '&#xfoo';
-        $events = $this->parse($str);
-        $e1 = $events->get(0);
-        $this->assertEquals('error', $e1['name']);
-
-        $str = '&#foo';
-        $events = $this->parse($str);
-        $e1 = $events->get(0);
-        $this->assertEquals('error', $e1['name']);
-
-        // FIXME: Once the text processor is done, need to verify that the
-        // tokens are transformed correctly into text.
-    }
-
-    public function testBogusComment()
-    {
-        $bogus = array(
-            '</+this is a bogus comment. +>',
-            '<!+this is a bogus comment. !>',
-            '<!D OCTYPE foo bar>',
-            '<!DOCTYEP foo bar>',
-            '<![CADATA[ TEST ]]>',
-            '<![CDATA Hello ]]>',
-            '<![CDATA[ Hello [[>',
-            '<!CDATA[[ test ]]>',
-            '<![CDATA[',
-            '<![CDATA[hellooooo hello',
-            '<? Hello World ?>',
-            '<? Hello World'
-        );
-        foreach ($bogus as $str) {
-            $events = $this->parse($str);
-            $this->assertEventError($events->get(0));
-            $this->assertEventEquals('comment', $str, $events->get(1));
-        }
-    }
-
-    public function testEndTag()
-    {
-        $succeed = array(
-            '</a>' => 'a',
-            '</test>' => 'test',
-            '</test
-      >' => 'test',
-            '</thisIsTheTagThatDoesntEndItJustGoesOnAndOnMyFriend>' => 'thisisthetagthatdoesntenditjustgoesonandonmyfriend',
-            // See 8.2.4.10, which requires this and does not say error.
-            '</a<b>' => 'a<b'
-        );
-        $this->isAllGood('endTag', 2, $succeed);
-
-        // Recoverable failures
-        $fail = array(
-            '</a class="monkey">' => 'a',
-            '</a <b>' => 'a',
-            '</a <b <c>' => 'a',
-            '</a is the loneliest letter>' => 'a',
-            '</a' => 'a'
-        );
-        foreach ($fail as $test => $result) {
-            $events = $this->parse($test);
-            $this->assertEquals(3, $events->depth());
-            // Should have triggered an error.
-            $this->assertEventError($events->get(0));
-            // Should have tried to parse anyway.
-            $this->assertEventEquals('endTag', $result, $events->get(1));
-        }
-
-        // BogoComments
-        $comments = array(
-            '</>' => '</>',
-            '</ >' => '</ >',
-            '</ a>' => '</ a>'
-        );
-        foreach ($comments as $test => $result) {
-            $events = $this->parse($test);
-            $this->assertEquals(3, $events->depth());
-
-            // Should have triggered an error.
-            $this->assertEventError($events->get(0));
-
-            // Should have tried to parse anyway.
-            $this->assertEventEquals('comment', $result, $events->get(1));
-        }
-    }
-
-    public function testComment()
-    {
-        $good = array(
-            '<!--easy-->' => 'easy',
-            '<!-- 1 > 0 -->' => ' 1 > 0 ',
-            '<!-- --$i -->' => ' --$i ',
-            '<!----$i-->' => '--$i',
-            '<!-- 1 > 0 -->' => ' 1 > 0 ',
-            "<!--\nHello World.\na-->" => "\nHello World.\na",
-            '<!-- <!-- -->' => ' <!-- '
-        );
-        foreach ($good as $test => $expected) {
-            $events = $this->parse($test);
-            $this->assertEventEquals('comment', $expected, $events->get(0));
-        }
-
-        $fail = array(
-            '<!-->' => '',
-            '<!--Hello' => 'Hello',
-            "<!--\0Hello" => UTF8Utils::FFFD . 'Hello',
-            '<!--' => ''
-        );
-        foreach ($fail as $test => $expected) {
-            $events = $this->parse($test);
-            $this->assertEquals(3, $events->depth());
-            $this->assertEventError($events->get(0));
-            $this->assertEventEquals('comment', $expected, $events->get(1));
-        }
-    }
-
-    public function testCDATASection()
-    {
-        $good = array(
-            '<![CDATA[ This is a test. ]]>' => ' This is a test. ',
-            '<![CDATA[CDATA]]>' => 'CDATA',
-            '<![CDATA[ ]] > ]]>' => ' ]] > ',
-            '<![CDATA[ ]]>' => ' '
-        );
-        $this->isAllGood('cdata', 2, $good);
-    }
-
-    public function testDoctype()
-    {
-        $good = array(
-            '<!DOCTYPE html>' => array(
-                'html',
-                0,
-                null,
-                false
-            ),
-            '<!doctype html>' => array(
-                'html',
-                0,
-                null,
-                false
-            ),
-            '<!DocType html>' => array(
-                'html',
-                0,
-                null,
-                false
-            ),
-            "<!DOCTYPE\nhtml>" => array(
-                'html',
-                0,
-                null,
-                false
-            ),
-            "<!DOCTYPE\fhtml>" => array(
-                'html',
-                0,
-                null,
-                false
-            ),
-            '<!DOCTYPE html PUBLIC "foo bar">' => array(
-                'html',
-                EventStack::DOCTYPE_PUBLIC,
-                'foo bar',
-                false
-            ),
-            "<!DOCTYPE html PUBLIC 'foo bar'>" => array(
-                'html',
-                EventStack::DOCTYPE_PUBLIC,
-                'foo bar',
-                false
-            ),
-            '<!DOCTYPE      html      PUBLIC     "foo bar"    >' => array(
-                'html',
-                EventStack::DOCTYPE_PUBLIC,
-                'foo bar',
-                false
-            ),
-            "<!DOCTYPE html \nPUBLIC\n'foo bar'>" => array(
-                'html',
-                EventStack::DOCTYPE_PUBLIC,
-                'foo bar',
-                false
-            ),
-            '<!DOCTYPE html SYSTEM "foo bar">' => array(
-                'html',
-                EventStack::DOCTYPE_SYSTEM,
-                'foo bar',
-                false
-            ),
-            "<!DOCTYPE html SYSTEM 'foo bar'>" => array(
-                'html',
-                EventStack::DOCTYPE_SYSTEM,
-                'foo bar',
-                false
-            ),
-            '<!DOCTYPE      html      SYSTEM "foo/bar"    >' => array(
-                'html',
-                EventStack::DOCTYPE_SYSTEM,
-                'foo/bar',
-                false
-            ),
-            "<!DOCTYPE html \nSYSTEM\n'foo bar'>" => array(
-                'html',
-                EventStack::DOCTYPE_SYSTEM,
-                'foo bar',
-                false
-            )
-        );
-        $this->isAllGood('doctype', 2, $good);
-
-        $bad = array(
-            '<!DOCTYPE>' => array(
-                null,
-                EventStack::DOCTYPE_NONE,
-                null,
-                true
-            ),
-            '<!DOCTYPE    >' => array(
-                null,
-                EventStack::DOCTYPE_NONE,
-                null,
-                true
-            ),
-            '<!DOCTYPE  foo' => array(
-                'foo',
-                EventStack::DOCTYPE_NONE,
-                null,
-                true
-            ),
-            '<!DOCTYPE foo PUB' => array(
-                'foo',
-                EventStack::DOCTYPE_NONE,
-                null,
-                true
-            ),
-            '<!DOCTYPE foo PUB>' => array(
-                'foo',
-                EventStack::DOCTYPE_NONE,
-                null,
-                true
-            ),
-            '<!DOCTYPE  foo PUB "Looks good">' => array(
-                'foo',
-                EventStack::DOCTYPE_NONE,
-                null,
-                true
-            ),
-            '<!DOCTYPE  foo SYSTME "Looks good"' => array(
-                'foo',
-                EventStack::DOCTYPE_NONE,
-                null,
-                true
-            ),
-
-            // Can't tell whether these are ids or ID types, since the context is chopped.
-            '<!DOCTYPE foo PUBLIC' => array(
-                'foo',
-                EventStack::DOCTYPE_NONE,
-                null,
-                true
-            ),
-            '<!DOCTYPE  foo PUBLIC>' => array(
-                'foo',
-                EventStack::DOCTYPE_NONE,
-                null,
-                true
-            ),
-            '<!DOCTYPE foo SYSTEM' => array(
-                'foo',
-                EventStack::DOCTYPE_NONE,
-                null,
-                true
-            ),
-            '<!DOCTYPE  foo SYSTEM>' => array(
-                'foo',
-                EventStack::DOCTYPE_NONE,
-                null,
-                true
-            ),
-
-            '<!DOCTYPE html SYSTEM "foo bar"' => array(
-                'html',
-                EventStack::DOCTYPE_SYSTEM,
-                'foo bar',
-                true
-            ),
-            '<!DOCTYPE html SYSTEM "foo bar" more stuff>' => array(
-                'html',
-                EventStack::DOCTYPE_SYSTEM,
-                'foo bar',
-                true
-            )
-        );
-        foreach ($bad as $test => $expects) {
-            $events = $this->parse($test);
-            // fprintf(STDOUT, $test . PHP_EOL);
-            $this->assertEquals(3, $events->depth(), "Counting events for '$test': " . print_r($events, true));
-            $this->assertEventError($events->get(0));
-            $this->assertEventEquals('doctype', $expects, $events->get(1));
-        }
-    }
-
-    public function testProcessorInstruction()
-    {
-        $good = array(
-            '<?hph ?>' => 'hph',
-            '<?hph echo "Hello World"; ?>' => array(
-                'hph',
-                'echo "Hello World"; '
-            ),
-            "<?hph \necho 'Hello World';\n?>" => array(
-                'hph',
-                "echo 'Hello World';\n"
-            )
-        );
-        $this->isAllGood('pi', 2, $good);
-    }
-
-    /**
-     * This tests just simple tags.
-     */
-    public function testSimpleTags()
-    {
-        $open = array(
-            '<foo>' => 'foo',
-            '<FOO>' => 'foo',
-            '<fOO>' => 'foo',
-            '<foo >' => 'foo',
-            "<foo\n\n\n\n>" => 'foo',
-            '<foo:bar>' => 'foo:bar'
-        );
-        $this->isAllGood('startTag', 2, $open);
-
-        $selfClose = array(
-            '<foo/>' => 'foo',
-            '<FOO/>' => 'foo',
-            '<foo />' => 'foo',
-            "<foo\n\n\n\n/>" => 'foo',
-            '<foo:bar/>' => 'foo:bar'
-        );
-        foreach ($selfClose as $test => $expects) {
-            $events = $this->parse($test);
-            $this->assertEquals(3, $events->depth(), "Counting events for '$test'" . print_r($events, true));
-            $this->assertEventEquals('startTag', $expects, $events->get(0));
-            $this->assertEventEquals('endTag', $expects, $events->get(1));
-        }
-
-        $bad = array(
-            '<foo' => 'foo',
-            '<foo ' => 'foo',
-            '<foo/' => 'foo',
-            '<foo /' => 'foo'
-        );
-
-        foreach ($bad as $test => $expects) {
-            $events = $this->parse($test);
-            $this->assertEquals(3, $events->depth(), "Counting events for '$test': " . print_r($events, true));
-            $this->assertEventError($events->get(0));
-            $this->assertEventEquals('startTag', $expects, $events->get(1));
-        }
-    }
-
-    public function testTagsWithAttributeAndMissingName()
-    {
-        $cases = array(
-            '<id="top_featured">' => 'id',
-            '<color="white">' => 'color',
-            "<class='neaktivni_stranka'>" => 'class',
-            '<bgcolor="white">' => 'bgcolor',
-            '<class="nom">' => 'class'
-        );
-
-        foreach ($cases as $html => $expected) {
-            $events = $this->parse($html);
-            $this->assertEventError($events->get(0));
-            $this->assertEventError($events->get(1));
-            $this->assertEventError($events->get(2));
-            $this->assertEventEquals('startTag', $expected, $events->get(3));
-            $this->assertEventEquals('eof', null, $events->get(4));
-        }
-    }
-
-    public function testTagNotClosedAfterTagName()
-    {
-        $cases = array(
-            "<noscript<img>" => array(
-                'noscript',
-                'img'
-            ),
-            '<center<a>' => array(
-                'center',
-                'a'
-            ),
-            '<br<br>' => array(
-                'br',
-                'br'
-            )
-        );
-
-        foreach ($cases as $html => $expected) {
-            $events = $this->parse($html);
-            $this->assertEventError($events->get(0));
-            $this->assertEventEquals('startTag', $expected[0], $events->get(1));
-            $this->assertEventEquals('startTag', $expected[1], $events->get(2));
-            $this->assertEventEquals('eof', null, $events->get(3));
-        }
-
-        $events = $this->parse('<span<>02</span>');
-        $this->assertEventError($events->get(0));
-        $this->assertEventEquals('startTag', 'span', $events->get(1));
-        $this->assertEventError($events->get(2));
-        $this->assertEventEquals('text', '>02', $events->get(3));
-        $this->assertEventEquals('endTag', 'span', $events->get(4));
-        $this->assertEventEquals('eof', null, $events->get(5));
-
-        $events = $this->parse('<p</p>');
-        $this->assertEventError($events->get(0));
-        $this->assertEventEquals('startTag', 'p', $events->get(1));
-        $this->assertEventEquals('endTag', 'p', $events->get(2));
-        $this->assertEventEquals('eof', null, $events->get(3));
-
-        $events = $this->parse('<strong><WordPress</strong>');
-        $this->assertEventEquals('startTag', 'strong', $events->get(0));
-        $this->assertEventError($events->get(1));
-        $this->assertEventEquals('startTag', 'wordpress', $events->get(2));
-        $this->assertEventEquals('endTag', 'strong', $events->get(3));
-        $this->assertEventEquals('eof', null, $events->get(4));
-
-        $events = $this->parse('<src=<a>');
-        $this->assertEventError($events->get(0));
-        $this->assertEventError($events->get(1));
-        $this->assertEventError($events->get(2));
-        $this->assertEventEquals('startTag', 'src', $events->get(3));
-        $this->assertEventEquals('startTag', 'a', $events->get(4));
-        $this->assertEventEquals('eof', null, $events->get(5));
-
-        $events = $this->parse('<br...<a>');
-        $this->assertEventError($events->get(0));
-        $this->assertEventEquals('startTag', 'br', $events->get(1));
-        $this->assertEventEquals('eof', null, $events->get(2));
-    }
-
-    public function testIllegalTagNames()
-    {
-        $cases = array(
-            '<li">' => 'li',
-            '<p">' => 'p',
-            '<b&nbsp; >' => 'b',
-            '<static*all>' => 'static',
-            '<h*0720/>' => 'h',
-            '<st*ATTRIBUTE />' => 'st',
-        );
-
-        foreach ($cases as $html => $expected) {
-            $events = $this->parse($html);
-            $this->assertEventError($events->get(0));
-            $this->assertEventEquals('startTag', $expected, $events->get(1));
-        }
-    }
-
-    /**
-     * @depends testCharacterReference
-     */
-    public function testTagAttributes()
-    {
-        // Opening tags.
-        $good = array(
-            '<foo bar="baz">' => array(
-                'foo',
-                array(
-                    'bar' => 'baz'
-                ),
-                false
-            ),
-            '<foo bar=" baz ">' => array(
-                'foo',
-                array(
-                    'bar' => ' baz '
-                ),
-                false
-            ),
-            "<foo bar=\"\nbaz\n\">" => array(
-                'foo',
-                array(
-                    'bar' => "\nbaz\n"
-                ),
-                false
-            ),
-            "<foo bar='baz'>" => array(
-                'foo',
-                array(
-                    'bar' => 'baz'
-                ),
-                false
-            ),
-            '<foo bar="A full sentence.">' => array(
-                'foo',
-                array(
-                    'bar' => 'A full sentence.'
-                ),
-                false
-            ),
-            "<foo a='1' b=\"2\">" => array(
-                'foo',
-                array(
-                    'a' => '1',
-                    'b' => '2'
-                ),
-                false
-            ),
-            "<foo ns:bar='baz'>" => array(
-                'foo',
-                array(
-                    'ns:bar' => 'baz'
-                ),
-                false
-            ),
-            "<foo a='blue&amp;red'>" => array(
-                'foo',
-                array(
-                    'a' => 'blue&red'
-                ),
-                false
-            ),
-            "<foo a='blue&&amp;red'>" => array(
-                'foo',
-                array(
-                    'a' => 'blue&&red'
-                ),
-                false
-            ),
-            "<foo\nbar='baz'\n>" => array(
-                'foo',
-                array(
-                    'bar' => 'baz'
-                ),
-                false
-            ),
-            '<doe a deer>' => array(
-                'doe',
-                array(
-                    'a' => null,
-                    'deer' => null
-                ),
-                false
-            ),
-            '<foo bar=baz>' => array(
-                'foo',
-                array(
-                    'bar' => 'baz'
-                ),
-                false
-            ),
-
-            // Updated for 8.1.2.3
-            '<foo    bar   =   "baz"      >' => array(
-                'foo',
-                array(
-                    'bar' => 'baz'
-                ),
-                false
-            ),
-
-            // The spec allows an unquoted value '/'. This will not be a closing
-            // tag.
-            '<foo bar=/>' => array(
-                'foo',
-                array(
-                    'bar' => '/'
-                ),
-                false
-            ),
-            '<foo bar=baz/>' => array(
-                'foo',
-                array(
-                    'bar' => 'baz/'
-                ),
-                false
-            )
-        );
-        $this->isAllGood('startTag', 2, $good);
-
-        // Self-closing tags.
-        $withEnd = array(
-            '<foo bar="baz"/>' => array(
-                'foo',
-                array(
-                    'bar' => 'baz'
-                ),
-                true
-            ),
-            '<foo BAR="baz"/>' => array(
-                'foo',
-                array(
-                    'bar' => 'baz'
-                ),
-                true
-            ),
-            '<foo BAR="BAZ"/>' => array(
-                'foo',
-                array(
-                    'bar' => 'BAZ'
-                ),
-                true
-            ),
-            "<foo a='1' b=\"2\" c=3 d/>" => array(
-                'foo',
-                array(
-                    'a' => '1',
-                    'b' => '2',
-                    'c' => '3',
-                    'd' => null
-                ),
-                true
-            )
-        );
-        $this->isAllGood('startTag', 3, $withEnd);
-
-        // Cause a parse error.
-        $bad = array(
-            // This will emit an entity lookup failure for &red.
-            "<foo a='blue&red'>" => array(
-                'foo',
-                array(
-                    'a' => 'blue&red'
-                ),
-                false
-            ),
-            "<foo a='blue&&amp;&red'>" => array(
-                'foo',
-                array(
-                    'a' => 'blue&&&red'
-                ),
-                false
-            ),
-            '<foo bar=>' => array(
-                'foo',
-                array(
-                    'bar' => null
-                ),
-                false
-            ),
-            '<foo bar="oh' => array(
-                'foo',
-                array(
-                    'bar' => 'oh'
-                ),
-                false
-            ),
-            '<foo bar=oh">' => array(
-                'foo',
-                array(
-                    'bar' => 'oh"'
-                ),
-                false
-            ),
-
-            // these attributes are ignored because of current implementation
-            // of method "DOMElement::setAttribute"
-            // see issue #23: https://github.com/Masterminds/html5-php/issues/23
-            '<foo b"="baz">' => array(
-                'foo',
-                array(),
-                false
-            ),
-            '<foo 2abc="baz">' => array(
-                'foo',
-                array(),
-                false
-            ),
-            '<foo ?="baz">' => array(
-                'foo',
-                array(),
-                false
-            ),
-            '<foo foo?bar="baz">' => array(
-                'foo',
-                array(),
-                false
-            )
-        )
-        ;
-        foreach ($bad as $test => $expects) {
-            $events = $this->parse($test);
-            $this->assertEquals(3, $events->depth(), "Counting events for '$test': " . print_r($events, true));
-            $this->assertEventError($events->get(0));
-            $this->assertEventEquals('startTag', $expects, $events->get(1));
-        }
-
-        // Cause multiple parse errors.
-        $reallyBad = array(
-            '<foo ="bar">' => array(
-                'foo',
-                array(
-                    '=' => null,
-                    '"bar"' => null
-                ),
-                false
-            ),
-            '<foo////>' => array(
-                'foo',
-                array(),
-                true
-            ),
-            // character "&" in unquoted attribute shouldn't cause an infinite loop
-            '<foo bar=index.php?str=1&amp;id=29>' => array(
-                'foo',
-                array(
-                    'bar' => 'index.php?str=1&id=29'
-                ),
-                false
-            )
-        );
-        foreach ($reallyBad as $test => $expects) {
-            $events = $this->parse($test);
-            // fprintf(STDOUT, $test . print_r($events, true));
-            $this->assertEventError($events->get(0));
-            $this->assertEventError($events->get(1));
-            // $this->assertEventEquals('startTag', $expects, $events->get(1));
-        }
-
-        // Regression: Malformed elements should be detected.
-        // '<foo baz="1" <bar></foo>' => array('foo', array('baz' => '1'), false),
-        $events = $this->parse('<foo baz="1" <bar></foo>');
-        $this->assertEventError($events->get(0));
-        $this->assertEventEquals('startTag', array(
-            'foo',
-            array(
-                'baz' => '1'
-            ),
-            false
-        ), $events->get(1));
-        $this->assertEventEquals('startTag', array(
-            'bar',
-            array(),
-            false
-        ), $events->get(2));
-        $this->assertEventEquals('endTag', array(
-            'foo'
-        ), $events->get(3));
-    }
-
-    public function testRawText()
-    {
-        $good = array(
-            '<script>abcd efg hijk lmnop</script>     ' => 'abcd efg hijk lmnop',
-            '<script><not/><the/><tag></script>' => '<not/><the/><tag>',
-            '<script><<<<<<<<</script>' => '<<<<<<<<',
-            '<script>hello</script</script>' => 'hello</script',
-            "<script>\nhello</script\n</script>" => "\nhello</script\n",
-            '<script>&amp;</script>' => '&amp;',
-            '<script><!--not a comment--></script>' => '<!--not a comment-->',
-            '<script><![CDATA[not a comment]]></script>' => '<![CDATA[not a comment]]>'
-        );
-        foreach ($good as $test => $expects) {
-            $events = $this->parse($test);
-            $this->assertEventEquals('startTag', 'script', $events->get(0));
-            $this->assertEventEquals('text', $expects, $events->get(1));
-            $this->assertEventEquals('endTag', 'script', $events->get(2));
-        }
-
-        $bad = array(
-            '<script>&amp;</script' => '&amp;</script',
-            '<script>Hello world' => 'Hello world'
-        );
-        foreach ($bad as $test => $expects) {
-            $events = $this->parse($test);
-            $this->assertEquals(4, $events->depth(), "Counting events for '$test': " . print_r($events, true));
-            $this->assertEventEquals('startTag', 'script', $events->get(0));
-            $this->assertEventError($events->get(1));
-            $this->assertEventEquals('text', $expects, $events->get(2));
-        }
-
-        // Testing case sensitivity
-        $events = $this->parse('<TITLE>a test</TITLE>');
-        $this->assertEventEquals('startTag', 'title', $events->get(0));
-        $this->assertEventEquals('text', 'a test', $events->get(1));
-        $this->assertEventEquals('endTag', 'title', $events->get(2));
-
-        // Testing end tags with whitespaces
-        $events = $this->parse('<title>Whitespaces are tasty</title >');
-        $this->assertEventEquals('startTag', 'title', $events->get(0));
-        $this->assertEventEquals('text', 'Whitespaces are tasty', $events->get(1));
-        $this->assertEventEquals('endTag', 'title', $events->get(2));
-    }
-
-    public function testRcdata()
-    {
-        list ($tok, $events) = $this->createTokenizer('<title>&#x27;<!-- not a comment --></TITLE>');
-        $tok->setTextMode(\Masterminds\HTML5\Elements::TEXT_RCDATA, 'title');
-        $tok->parse();
-        $this->assertEventEquals('text', "'<!-- not a comment -->", $events->get(1));
-    }
-
-    public function testText()
-    {
-        $events = $this->parse('a<br>b');
-        $this->assertEquals(4, $events->depth(), "Events: " . print_r($events, true));
-        $this->assertEventEquals('text', 'a', $events->get(0));
-        $this->assertEventEquals('startTag', 'br', $events->get(1));
-        $this->assertEventEquals('text', 'b', $events->get(2));
-
-        $events = $this->parse('<a>Test</a>');
-        $this->assertEquals(4, $events->depth(), "Events: " . print_r($events, true));
-        $this->assertEventEquals('startTag', 'a', $events->get(0));
-        $this->assertEventEquals('text', 'Test', $events->get(1));
-        $this->assertEventEquals('endTag', 'a', $events->get(2));
-
-        $events = $this->parse('<p>0</p><p>1</p>');
-        $this->assertEquals(7, $events->depth(), "Events: " . print_r($events, true));
-
-        $this->assertEventEquals('startTag', 'p', $events->get(0));
-        $this->assertEventEquals('text', '0', $events->get(1));
-        $this->assertEventEquals('endTag', 'p', $events->get(2));
-
-        $this->assertEventEquals('startTag', 'p', $events->get(3));
-        $this->assertEventEquals('text', '1', $events->get(4));
-        $this->assertEventEquals('endTag', 'p', $events->get(5));
-
-
-        $events = $this->parse('a<![CDATA[test]]>b');
-        $this->assertEquals(4, $events->depth(), "Events: " . print_r($events, true));
-        $this->assertEventEquals('text', 'a', $events->get(0));
-        $this->assertEventEquals('cdata', 'test', $events->get(1));
-        $this->assertEventEquals('text', 'b', $events->get(2));
-
-        $events = $this->parse('a<!--test-->b');
-        $this->assertEquals(4, $events->depth(), "Events: " . print_r($events, true));
-        $this->assertEventEquals('text', 'a', $events->get(0));
-        $this->assertEventEquals('comment', 'test', $events->get(1));
-        $this->assertEventEquals('text', 'b', $events->get(2));
-
-        $events = $this->parse('a&amp;b');
-        $this->assertEquals(2, $events->depth(), "Events: " . print_r($events, true));
-        $this->assertEventEquals('text', 'a&b', $events->get(0));
-    }
-
-    // ================================================================
-    // Utility functions.
-    // ================================================================
-    protected function createTokenizer($string, $debug = false)
-    {
-        $eventHandler = new EventStack();
-        $stream = new StringInputStream($string);
-        $scanner = new Scanner($stream);
-
-        $scanner->debug = $debug;
-
-        return array(
-            new Tokenizer($scanner, $eventHandler),
-            $eventHandler
-        );
-    }
-
-    public function parse($string, $debug = false)
-    {
-        list ($tok, $events) = $this->createTokenizer($string, $debug);
-        $tok->parse();
-
-        return $events;
-    }
-}
diff --git a/vendor/masterminds/html5/test/HTML5/Parser/TreeBuildingRulesTest.php b/vendor/masterminds/html5/test/HTML5/Parser/TreeBuildingRulesTest.php
deleted file mode 100644
index bff2530..0000000
--- a/vendor/masterminds/html5/test/HTML5/Parser/TreeBuildingRulesTest.php
+++ /dev/null
@@ -1,104 +0,0 @@
-<?php
-/**
- * @file
- * Test the Tree Builder's special-case rules.
- */
-namespace Masterminds\HTML5\Tests\Parser;
-
-use Masterminds\HTML5\Parser\TreeBuildingRules;
-use Masterminds\HTML5\Parser\Tokenizer;
-use Masterminds\HTML5\Parser\Scanner;
-use Masterminds\HTML5\Parser\StringInputStream;
-use Masterminds\HTML5\Parser\DOMTreeBuilder;
-
-/**
- * These tests are functional, not necessarily unit tests.
- */
-class TreeBuildingRulesTest extends \Masterminds\HTML5\Tests\TestCase
-{
-
-    const HTML_STUB = '<!DOCTYPE html><html><head><title>test</title></head><body>%s</body></html>';
-
-    /**
-     * Convenience function for parsing.
-     */
-    protected function parse($string)
-    {
-        $treeBuilder = new DOMTreeBuilder();
-        $scanner = new Scanner(new StringInputStream($string));
-        $parser = new Tokenizer($scanner, $treeBuilder);
-
-        $parser->parse();
-        return $treeBuilder->document();
-    }
-    /**
-     * Convenience function for parsing fragments.
-     */
-    protected function parseFragment($string)
-    {
-        $events = new DOMTreeBuilder(true);
-        $scanner = new Scanner(new StringInputStream($string));
-        $parser = new Tokenizer($scanner, $events);
-
-        $parser->parse();
-        return $events->fragment();
-    }
-
-    public function testTDFragment()
-    {
-
-        $frag = $this->parseFragment("<td>This is a test of the HTML5 parser</td>");
-
-        $td = $frag->childNodes->item(0);
-
-        $this->assertEquals(1, $frag->childNodes->length);
-        $this->assertEquals('td', $td->tagName);
-        $this->assertEquals('This is a test of the HTML5 parser', $td->nodeValue);
-    }
-
-    public function testHasRules()
-    {
-        $doc = new \DOMDocument('1.0');
-        $engine = new TreeBuildingRules($doc);
-
-        $this->assertTrue($engine->hasRules('li'));
-        $this->assertFalse($engine->hasRules('imaginary'));
-    }
-
-    public function testHandleLI()
-    {
-        $html = sprintf(self::HTML_STUB, '<ul id="a"><li>test<li>test2</ul><a></a>');
-        $doc = $this->parse($html);
-
-        $list = $doc->getElementById('a');
-
-        $this->assertEquals(2, $list->childNodes->length);
-        foreach ($list->childNodes as $ele) {
-            $this->assertEquals('li', $ele->tagName);
-        }
-    }
-
-    public function testHandleDT()
-    {
-        $html = sprintf(self::HTML_STUB, '<dl id="a"><dt>Hello<dd>Hi</dl><a></a>');
-        $doc = $this->parse($html);
-
-        $list = $doc->getElementById('a');
-
-        $this->assertEquals(2, $list->childNodes->length);
-        $this->assertEquals('dt', $list->firstChild->tagName);
-        $this->assertEquals('dd', $list->lastChild->tagName);
-    }
-
-    public function testTable()
-    {
-        $html = sprintf(self::HTML_STUB, '<table><thead id="a"><th>foo<td>bar<td>baz');
-        $doc = $this->parse($html);
-
-        $list = $doc->getElementById('a');
-
-        $this->assertEquals(3, $list->childNodes->length);
-        $this->assertEquals('th', $list->firstChild->tagName);
-        $this->assertEquals('td', $list->lastChild->tagName);
-    }
-}
diff --git a/vendor/masterminds/html5/test/HTML5/Parser/UTF8UtilsTest.php b/vendor/masterminds/html5/test/HTML5/Parser/UTF8UtilsTest.php
deleted file mode 100644
index 0e8555a..0000000
--- a/vendor/masterminds/html5/test/HTML5/Parser/UTF8UtilsTest.php
+++ /dev/null
@@ -1,26 +0,0 @@
-<?php
-
-namespace Masterminds\HTML5\Tests\Parser;
-
-use Masterminds\HTML5\Parser\UTF8Utils;
-
-class UTF8UtilsTest extends \Masterminds\HTML5\Tests\TestCase
-{
-	public function testConvertToUTF8() {
-		$out = UTF8Utils::convertToUTF8('éàa', 'ISO-8859-1');
-		$this->assertEquals('Ã©Ã a', $out);
-	}
-
-	/**
-	 * @todo add tests for invalid codepoints
-	 */
-	public function testCheckForIllegalCodepoints() {
-		$smoke = "Smoke test";
-		$err = UTF8Utils::checkForIllegalCodepoints($smoke);
-		$this->assertEmpty($err);
-
-		$data = "Foo Bar \0 Baz";
-		$errors = UTF8Utils::checkForIllegalCodepoints($data);
-		$this->assertContains('null-character', $errors);
-	}
-}
\ No newline at end of file
diff --git a/vendor/masterminds/html5/test/HTML5/Serializer/OutputRulesTest.php b/vendor/masterminds/html5/test/HTML5/Serializer/OutputRulesTest.php
deleted file mode 100644
index 72d1cd3..0000000
--- a/vendor/masterminds/html5/test/HTML5/Serializer/OutputRulesTest.php
+++ /dev/null
@@ -1,587 +0,0 @@
-<?php
-namespace Masterminds\HTML5\Tests\Serializer;
-
-use Masterminds\HTML5\Serializer\OutputRules;
-use Masterminds\HTML5\Serializer\Traverser;
-
-class OutputRulesTest extends \Masterminds\HTML5\Tests\TestCase
-{
-
-    protected $markup = '<!doctype html>
-    <html lang="en">
-      <head>
-        <meta charset="utf-8">
-        <title>Test</title>
-      </head>
-      <body>
-        <p>This is a test.</p>
-      </body>
-    </html>';
-
-    public function setUp()
-    {
-        $this->html5 = $this->getInstance();
-    }
-
-    /**
-     * Using reflection we make a protected method accessible for testing.
-     *
-     * @param string $name
-     *            The name of the method on the Traverser class to test.
-     *
-     * @return \ReflectionMethod \ReflectionMethod for the specified method
-     */
-    public function getProtectedMethod($name)
-    {
-        $class = new \ReflectionClass('\Masterminds\HTML5\Serializer\OutputRules');
-        $method = $class->getMethod($name);
-        $method->setAccessible(true);
-
-        return $method;
-    }
-
-    public function getTraverserProtectedProperty($name)
-    {
-        $class = new \ReflectionClass('\Masterminds\HTML5\Serializer\Traverser');
-        $property = $class->getProperty($name);
-        $property->setAccessible(true);
-
-        return $property;
-    }
-
-    public function getOutputRules($options = array())
-    {
-        $options = $options + $this->html5->getOptions();
-        $stream = fopen('php://temp', 'w');
-        $dom = $this->html5->loadHTML($this->markup);
-        $r = new OutputRules($stream, $options);
-        $t = new Traverser($dom, $stream, $r, $options);
-
-        return array(
-            $r,
-            $stream
-        );
-    }
-
-    public function testDocument()
-    {
-        $dom = $this->html5->loadHTML('<!doctype html><html lang="en"><body>foo</body></html>');
-
-        $stream = fopen('php://temp', 'w');
-        $r = new OutputRules($stream, $this->html5->getOptions());
-        $t = new Traverser($dom, $stream, $r, $this->html5->getOptions());
-
-        $r->document($dom);
-        $expected = '<!DOCTYPE html>' . PHP_EOL . '<html lang="en"><body>foo</body></html>' . PHP_EOL;
-        $this->assertEquals($expected, stream_get_contents($stream, - 1, 0));
-    }
-
-    public function testEmptyDocument()
-    {
-    	$dom = $this->html5->loadHTML('');
-
-    	$stream = fopen('php://temp', 'w');
-    	$r = new OutputRules($stream, $this->html5->getOptions());
-    	$t = new Traverser($dom, $stream, $r, $this->html5->getOptions());
-
-    	$r->document($dom);
-    	$expected = '<!DOCTYPE html>' . PHP_EOL;
-    	$this->assertEquals($expected, stream_get_contents($stream, - 1, 0));
-    }
-
-    public function testDoctype()
-    {
-        $dom = $this->html5->loadHTML('<!doctype html><html lang="en"><body>foo</body></html>');
-
-        $stream = fopen('php://temp', 'w');
-        $r = new OutputRules($stream, $this->html5->getOptions());
-        $t = new Traverser($dom, $stream, $r, $this->html5->getOptions());
-
-        $m = $this->getProtectedMethod('doctype');
-        $m->invoke($r, 'foo');
-        $this->assertEquals("<!DOCTYPE html>" . PHP_EOL, stream_get_contents($stream, - 1, 0));
-    }
-
-    public function testElement()
-    {
-        $dom = $this->html5->loadHTML(
-            '<!doctype html>
-    <html lang="en">
-      <body>
-        <div id="foo" class="bar baz">foo bar baz</div>
-        <svg width="150" height="100" viewBox="0 0 3 2">
-          <rect width="1" height="2" x="0" fill="#008d46" />
-          <rect width="1" height="2" x="1" fill="#ffffff" />
-          <rect width="1" height="2" x="2" fill="#d2232c" />
-        </svg>
-      </body>
-    </html>');
-
-        $stream = fopen('php://temp', 'w');
-        $r = new OutputRules($stream, $this->html5->getOptions());
-        $t = new Traverser($dom, $stream, $r, $this->html5->getOptions());
-
-        $list = $dom->getElementsByTagName('div');
-        $r->element($list->item(0));
-        $this->assertEquals('<div id="foo" class="bar baz">foo bar baz</div>', stream_get_contents($stream, - 1, 0));
-    }
-
-    function testSerializeWithNamespaces()
-    {
-        $this->html5 = $this->getInstance(array(
-            'xmlNamespaces' => true
-        ));
-
-        $source = '
-            <!DOCTYPE html>
-            <html><body id="body" xmlns:x="http://www.prefixed.com">
-                    <a id="bar1" xmlns="http://www.prefixed.com/bar1">
-                        <b id="bar4" xmlns="http://www.prefixed.com/bar4"><x:prefixed id="prefixed">xy</x:prefixed></b>
-                    </a>
-                    <svg id="svg">svg</svg>
-                    <c id="bar2" xmlns="http://www.prefixed.com/bar2"></c>
-                    <div id="div"></div>
-                    <d id="bar3"></d>
-                    <xn:d id="bar5" xmlns:xn="http://www.prefixed.com/xn" xmlns="http://www.prefixed.com/bar5_x"><x id="bar5_x">y</x></xn:d>
-                </body>
-            </html>';
-
-        $dom = $this->html5->loadHTML($source, array(
-            'xmlNamespaces' => true
-        ));
-        $this->assertFalse($this->html5->hasErrors(), print_r($this->html5->getErrors(), 1));
-
-        $stream = fopen('php://temp', 'w');
-        $r = new OutputRules($stream, $this->html5->getOptions());
-        $t = new Traverser($dom, $stream, $r, $this->html5->getOptions());
-
-        $t->walk();
-        $rendered = stream_get_contents($stream, - 1, 0);
-
-        $clear = function($s){
-            return trim(preg_replace('/[\s]+/', " ", $s));
-        };
-
-        $this->assertEquals($clear($source), $clear($rendered));
-    }
-
-    public function testElementWithScript()
-    {
-        $dom = $this->html5->loadHTML(
-            '<!doctype html>
-    <html lang="en">
-      <head>
-        <script>
-          var $jQ = jQuery.noConflict();
-          // Use jQuery via $jQ(...)
-          $jQ(document).ready(function () {
-            $jQ("#mktFrmSubmit").wrap("<div class=\'buttonSubmit\'></div>");
-            $jQ(".buttonSubmit").prepend("<span></span>");
-          });
-        </script>
-      </head>
-      <body>
-        <div id="foo" class="bar baz">foo bar baz</div>
-      </body>
-    </html>');
-
-        $stream = fopen('php://temp', 'w');
-        $r = new OutputRules($stream, $this->html5->getOptions());
-        $t = new Traverser($dom, $stream, $r, $this->html5->getOptions());
-
-        $script = $dom->getElementsByTagName('script');
-        $r->element($script->item(0));
-        $this->assertEquals(
-            '<script>
-          var $jQ = jQuery.noConflict();
-          // Use jQuery via $jQ(...)
-          $jQ(document).ready(function () {
-            $jQ("#mktFrmSubmit").wrap("<div class=\'buttonSubmit\'></div>");
-            $jQ(".buttonSubmit").prepend("<span></span>");
-          });
-        </script>', stream_get_contents($stream, - 1, 0));
-    }
-
-    public function testElementWithStyle()
-    {
-        $dom = $this->html5->loadHTML(
-            '<!doctype html>
-    <html lang="en">
-      <head>
-        <style>
-          body > .bar {
-            display: none;
-          }
-        </style>
-      </head>
-      <body>
-        <div id="foo" class="bar baz">foo bar baz</div>
-      </body>
-    </html>');
-
-        $stream = fopen('php://temp', 'w');
-        $r = new OutputRules($stream, $this->html5->getOptions());
-        $t = new Traverser($dom, $stream, $r, $this->html5->getOptions());
-
-        $style = $dom->getElementsByTagName('style');
-        $r->element($style->item(0));
-        $this->assertEquals('<style>
-          body > .bar {
-            display: none;
-          }
-        </style>', stream_get_contents($stream, - 1, 0));
-    }
-
-    public function testOpenTag()
-    {
-        $dom = $this->html5->loadHTML('<!doctype html>
-    <html lang="en">
-      <body>
-        <div id="foo" class="bar baz">foo bar baz</div>
-      </body>
-    </html>');
-
-        $stream = fopen('php://temp', 'w');
-        $r = new OutputRules($stream, $this->html5->getOptions());
-        $t = new Traverser($dom, $stream, $r, $this->html5->getOptions());
-
-        $list = $dom->getElementsByTagName('div');
-        $m = $this->getProtectedMethod('openTag');
-        $m->invoke($r, $list->item(0));
-        $this->assertEquals('<div id="foo" class="bar baz">', stream_get_contents($stream, - 1, 0));
-    }
-
-    public function testCData()
-    {
-        $dom = $this->html5->loadHTML('<!doctype html>
-    <html lang="en">
-      <body>
-        <div><![CDATA[bar]]></div>
-      </body>
-    </html>');
-
-        $stream = fopen('php://temp', 'w');
-        $r = new OutputRules($stream, $this->html5->getOptions());
-        $t = new Traverser($dom, $stream, $r, $this->html5->getOptions());
-
-        $list = $dom->getElementsByTagName('div');
-        $r->cdata($list->item(0)->childNodes->item(0));
-        $this->assertEquals('<![CDATA[bar]]>', stream_get_contents($stream, - 1, 0));
-
-        $dom = $this->html5->loadHTML('<!doctype html>
-    <html lang="en">
-      <body>
-        <div id="foo"></div>
-      </body>
-    </html>');
-
-        $dom->getElementById('foo')->appendChild(new \DOMCdataSection("]]>Foo<[![CDATA test ]]>"));
-
-        $stream = fopen('php://temp', 'w');
-        $r = new OutputRules($stream, $this->html5->getOptions());
-        $t = new Traverser($dom, $stream, $r, $this->html5->getOptions());
-        $list = $dom->getElementsByTagName('div');
-        $r->cdata($list->item(0)->childNodes->item(0));
-
-        $this->assertEquals('<![CDATA[]]]]><![CDATA[>Foo<[![CDATA test ]]]]><![CDATA[>]]>', stream_get_contents($stream, - 1, 0));
-    }
-
-    public function testComment()
-    {
-        $dom = $this->html5->loadHTML('<!doctype html>
-    <html lang="en">
-      <body>
-        <div><!-- foo --></div>
-      </body>
-    </html>');
-
-        $stream = fopen('php://temp', 'w');
-        $r = new OutputRules($stream, $this->html5->getOptions());
-        $t = new Traverser($dom, $stream, $r, $this->html5->getOptions());
-
-        $list = $dom->getElementsByTagName('div');
-        $r->comment($list->item(0)->childNodes->item(0));
-        $this->assertEquals('<!-- foo -->', stream_get_contents($stream, - 1, 0));
-
-        $dom = $this->html5->loadHTML('<!doctype html>
-    <html lang="en">
-      <body>
-        <div id="foo"></div>
-      </body>
-      </html>');
-        $dom->getElementById('foo')->appendChild(new \DOMComment('<!-- --> --> Foo -->'));
-
-        $stream = fopen('php://temp', 'w');
-        $r = new OutputRules($stream, $this->html5->getOptions());
-        $t = new Traverser($dom, $stream, $r, $this->html5->getOptions());
-
-        $list = $dom->getElementsByTagName('div');
-        $r->comment($list->item(0)->childNodes->item(0));
-
-        // Could not find more definitive guidelines on what this should be. Went with
-        // what the HTML5 spec says and what \DOMDocument::saveXML() produces.
-        $this->assertEquals('<!--<!-- --> --> Foo -->-->', stream_get_contents($stream, - 1, 0));
-    }
-
-    public function testText()
-    {
-        $dom = $this->html5->loadHTML('<!doctype html>
-    <html lang="en">
-      <head>
-        <script>baz();</script>
-      </head>
-    </html>');
-
-        $stream = fopen('php://temp', 'w');
-        $r = new OutputRules($stream, $this->html5->getOptions());
-        $t = new Traverser($dom, $stream, $r, $this->html5->getOptions());
-
-        $list = $dom->getElementsByTagName('script');
-        $r->text($list->item(0)->childNodes->item(0));
-        $this->assertEquals('baz();', stream_get_contents($stream, - 1, 0));
-
-        $dom = $this->html5->loadHTML('<!doctype html>
-    <html lang="en">
-      <head id="foo"></head>
-    </html>');
-        $foo = $dom->getElementById('foo');
-        $foo->appendChild(new \DOMText('<script>alert("hi");</script>'));
-
-        $stream = fopen('php://temp', 'w');
-        $r = new OutputRules($stream, $this->html5->getOptions());
-        $t = new Traverser($dom, $stream, $r, $this->html5->getOptions());
-
-        $r->text($foo->firstChild);
-        $this->assertEquals('&lt;script&gt;alert("hi");&lt;/script&gt;', stream_get_contents($stream, - 1, 0));
-    }
-
-    public function testNl()
-    {
-        list ($o, $s) = $this->getOutputRules();
-
-        $m = $this->getProtectedMethod('nl');
-        $m->invoke($o);
-        $this->assertEquals(PHP_EOL, stream_get_contents($s, - 1, 0));
-    }
-
-    public function testWr()
-    {
-        list ($o, $s) = $this->getOutputRules();
-
-        $m = $this->getProtectedMethod('wr');
-        $m->invoke($o, 'foo');
-        $this->assertEquals('foo', stream_get_contents($s, - 1, 0));
-    }
-
-    public function getEncData()
-    {
-        return array(
-            array(
-                false,
-                '&\'<>"',
-                '&amp;\'&lt;&gt;"',
-                '&amp;&apos;&lt;&gt;&quot;'
-            ),
-            array(
-                false,
-                'This + is. a < test',
-                'This + is. a &lt; test',
-                'This &plus; is&period; a &lt; test'
-            ),
-            array(
-                false,
-                '.+#',
-                '.+#',
-                '&period;&plus;&num;'
-            ),
-
-            array(
-                true,
-                '.+#\'',
-                '.+#\'',
-                '&period;&plus;&num;&apos;'
-            ),
-            array(
-                true,
-                '&".<',
-                '&amp;&quot;.<',
-                '&amp;&quot;&period;&lt;'
-            ),
-            array(
-                true,
-                '&\'<>"',
-                '&amp;\'<>&quot;',
-                '&amp;&apos;&lt;&gt;&quot;'
-            ),
-            array(
-                true,
-                "\xc2\xa0\"'",
-                '&nbsp;&quot;\'',
-                '&nbsp;&quot;&apos;'
-            )
-        );
-    }
-
-    /**
-     * Test basic encoding of text.
-     * @dataProvider getEncData
-     */
-    public function testEnc($isAttribute, $test, $expected, $expectedEncoded)
-    {
-        list ($o, $s) = $this->getOutputRules();
-        $m = $this->getProtectedMethod('enc');
-
-        $this->assertEquals($expected, $m->invoke($o, $test, $isAttribute));
-
-        list ($o, $s) = $this->getOutputRules(array(
-            'encode_entities' => true
-        ));
-        $m = $this->getProtectedMethod('enc');
-        $this->assertEquals($expectedEncoded, $m->invoke($o, $test, $isAttribute));
-    }
-
-    /**
-     * Test basic encoding of text.
-     * @dataProvider getEncData
-     */
-    public function testEscape($isAttribute, $test, $expected, $expectedEncoded)
-    {
-        list ($o, $s) = $this->getOutputRules();
-        $m = $this->getProtectedMethod('escape');
-
-        $this->assertEquals($expected, $m->invoke($o, $test, $isAttribute));
-    }
-
-    public function booleanAttributes()
-    {
-        return array(
-            array('<img alt="" ismap>'),
-            array('<img alt="">'),
-            array('<input type="radio" readonly>'),
-            array('<input type="radio" checked disabled>'),
-            array('<input type="checkbox" checked disabled>'),
-            array('<input type="radio" value="" checked disabled>'),
-            array('<div data-value=""></div>'),
-            array('<select disabled></select>'),
-            array('<div ng-app></div>'),
-            array('<script defer></script>'),
-        );
-    }
-    /**
-     * @dataProvider booleanAttributes
-     */
-    public function testBooleanAttrs($html)
-    {
-        $dom = $this->html5->loadHTML('<!doctype html><html lang="en"><body>'.$html.'</body></html>');
-
-        $stream = fopen('php://temp', 'w');
-        $r = new OutputRules($stream, $this->html5->getOptions());
-        $t = new Traverser($dom, $stream, $r, $this->html5->getOptions());
-
-        $node = $dom->getElementsByTagName('body')->item(0)->firstChild;
-
-        $m = $this->getProtectedMethod('attrs');
-        $m->invoke($r, $node);
-
-        $content = stream_get_contents($stream, - 1, 0);
-
-        $html = preg_replace('~<[a-z]+(.*)></[a-z]+>~', '\1', $html);
-        $html = preg_replace('~<[a-z]+(.*)/?>~', '\1', $html);
-
-        $this->assertEquals($content, $html);
-
-    }
-
-    public function testAttrs()
-    {
-        $dom = $this->html5->loadHTML('<!doctype html>
-    <html lang="en">
-      <body>
-        <div id="foo" class="bar baz">foo bar baz</div>
-      </body>
-    </html>');
-
-        $stream = fopen('php://temp', 'w');
-        $r = new OutputRules($stream, $this->html5->getOptions());
-        $t = new Traverser($dom, $stream, $r, $this->html5->getOptions());
-
-        $list = $dom->getElementsByTagName('div');
-
-        $m = $this->getProtectedMethod('attrs');
-        $m->invoke($r, $list->item(0));
-
-        $content = stream_get_contents($stream, - 1, 0);
-        $this->assertEquals(' id="foo" class="bar baz"', $content);
-    }
-
-    public function testSvg()
-    {
-        $dom = $this->html5->loadHTML(
-            '<!doctype html>
-    <html lang="en">
-      <body>
-        <div id="foo" class="bar baz">foo bar baz</div>
-        <svg width="150" height="100" viewBox="0 0 3 2">
-          <rect width="1" height="2" x="0" fill="#008d46" />
-          <rect width="1" height="2" x="1" fill="#ffffff" />
-          <rect width="1" height="2" x="2" fill="#d2232c" />
-          <rect id="Bar" x="300" y="100" width="300" height="100" fill="rgb(255,255,0)">
-            <animate attributeName="x" attributeType="XML" begin="0s" dur="9s" fill="freeze" from="300" to="0" />
-          </rect>
-        </svg>
-      </body>
-    </html>');
-
-        $stream = fopen('php://temp', 'w');
-        $r = new OutputRules($stream, $this->html5->getOptions());
-        $t = new Traverser($dom, $stream, $r, $this->html5->getOptions());
-
-        $list = $dom->getElementsByTagName('svg');
-        $r->element($list->item(0));
-        $contents = stream_get_contents($stream, - 1, 0);
-        $this->assertRegExp('|<svg width="150" height="100" viewBox="0 0 3 2">|', $contents);
-        $this->assertRegExp('|<rect width="1" height="2" x="0" fill="#008d46" />|', $contents);
-        $this->assertRegExp('|<rect id="Bar" x="300" y="100" width="300" height="100" fill="rgb\(255,255,0\)">|', $contents);
-    }
-
-    public function testMath()
-    {
-        $dom = $this->html5->loadHTML(
-            '<!doctype html>
-    <html lang="en">
-      <body>
-        <div id="foo" class="bar baz">foo bar baz</div>
-        <math>
-          <mi>x</mi>
-          <csymbol definitionURL="http://www.example.com/mathops/multiops.html#plusminus">
-            <mo>&PlusMinus;</mo>
-          </csymbol>
-          <mi>y</mi>
-        </math>
-      </body>
-    </html>');
-
-        $stream = fopen('php://temp', 'w');
-        $r = new OutputRules($stream, $this->html5->getOptions());
-        $t = new Traverser($dom, $stream, $r, $this->html5->getOptions());
-
-        $list = $dom->getElementsByTagName('math');
-        $r->element($list->item(0));
-        $content = stream_get_contents($stream, - 1, 0);
-        $this->assertRegExp('|<math>|', $content);
-        $this->assertRegExp('|<csymbol definitionURL="http://www.example.com/mathops/multiops.html#plusminus">|', $content);
-    }
-
-    public function testProcessorInstruction()
-    {
-        $dom = $this->html5->loadHTMLFragment('<?foo bar ?>');
-
-        $stream = fopen('php://temp', 'w');
-        $r = new OutputRules($stream, $this->html5->getOptions());
-        $t = new Traverser($dom, $stream, $r, $this->html5->getOptions());
-
-        $r->processorInstruction($dom->firstChild);
-        $content = stream_get_contents($stream, - 1, 0);
-        $this->assertRegExp('|<\?foo bar \?>|', $content);
-    }
-}
diff --git a/vendor/masterminds/html5/test/HTML5/Serializer/TraverserTest.php b/vendor/masterminds/html5/test/HTML5/Serializer/TraverserTest.php
deleted file mode 100644
index c914633..0000000
--- a/vendor/masterminds/html5/test/HTML5/Serializer/TraverserTest.php
+++ /dev/null
@@ -1,105 +0,0 @@
-<?php
-namespace Masterminds\HTML5\Tests\Serializer;
-
-use Masterminds\HTML5\Serializer\OutputRules;
-use Masterminds\HTML5\Serializer\Traverser;
-use Masterminds\HTML5\Parser;
-
-class TraverserTest extends \Masterminds\HTML5\Tests\TestCase
-{
-
-    protected $markup = '<!doctype html>
-    <html lang="en">
-      <head>
-        <meta charset="utf-8">
-        <title>Test</title>
-      </head>
-      <body>
-        <p>This is a test.</p>
-      </body>
-    </html>';
-
-    public function setUp()
-    {
-        $this->html5 = $this->getInstance();
-    }
-
-    /**
-     * Using reflection we make a protected method accessible for testing.
-     *
-     * @param string $name
-     *            The name of the method on the Traverser class to test.
-     *
-     * @return \ReflectionMethod \ReflectionMethod for the specified method
-     */
-    public function getProtectedMethod($name)
-    {
-        $class = new \ReflectionClass('\Masterminds\HTML5\Serializer\Traverser');
-        $method = $class->getMethod($name);
-        $method->setAccessible(true);
-
-        return $method;
-    }
-
-    public function getTraverser()
-    {
-        $stream = fopen('php://temp', 'w');
-
-        $dom = $this->html5->loadHTML($this->markup);
-        $t = new Traverser($dom, $stream, $html5->getOptions());
-
-        // We return both the traverser and stream so we can pull from it.
-        return array(
-            $t,
-            $stream
-        );
-    }
-
-    public function testConstruct()
-    {
-        // The traverser needs a place to write the output to. In our case we
-        // use a stream in temp space.
-        $stream = fopen('php://temp', 'w');
-
-        $html5 = $this->getInstance();
-
-        $r = new OutputRules($stream, $this->html5->getOptions());
-        $dom = $this->html5->loadHTML($this->markup);
-
-        $t = new Traverser($dom, $stream, $r, $html5->getOptions());
-
-        $this->assertInstanceOf('\Masterminds\HTML5\Serializer\Traverser', $t);
-    }
-
-    public function testFragment()
-    {
-        $html = '<span class="bar">foo</span><span></span><div>bar</div>';
-        $input = new \Masterminds\HTML5\Parser\StringInputStream($html);
-        $dom = $this->html5->parseFragment($input);
-
-        $this->assertInstanceOf('\DOMDocumentFragment', $dom);
-
-        $stream = fopen('php://temp', 'w');
-        $r = new OutputRules($stream, $this->html5->getOptions());
-        $t = new Traverser($dom, $stream, $r, $this->html5->getOptions());
-
-        $out = $t->walk();
-        $this->assertEquals($html, stream_get_contents($stream, - 1, 0));
-    }
-
-    public function testProcessorInstruction()
-    {
-        $html = '<?foo bar ?>';
-        $input = new \Masterminds\HTML5\Parser\StringInputStream($html);
-        $dom = $this->html5->parseFragment($input);
-
-        $this->assertInstanceOf('\DOMDocumentFragment', $dom);
-
-        $stream = fopen('php://temp', 'w');
-        $r = new OutputRules($stream, $this->html5->getOptions());
-        $t = new Traverser($dom, $stream, $r, $this->html5->getOptions());
-
-        $out = $t->walk();
-        $this->assertEquals($html, stream_get_contents($stream, - 1, 0));
-    }
-}
diff --git a/vendor/masterminds/html5/test/HTML5/TestCase.php b/vendor/masterminds/html5/test/HTML5/TestCase.php
deleted file mode 100644
index 3cb8645..0000000
--- a/vendor/masterminds/html5/test/HTML5/TestCase.php
+++ /dev/null
@@ -1,27 +0,0 @@
-<?php
-namespace Masterminds\HTML5\Tests;
-
-use Masterminds\HTML5;
-
-class TestCase extends \PHPUnit_Framework_TestCase
-{
-
-    const DOC_OPEN = '<!DOCTYPE html><html><head><title>test</title></head><body>';
-
-    const DOC_CLOSE = '</body></html>';
-
-    public function testFoo()
-    {
-        // Placeholder. Why is PHPUnit emitting warnings about no tests?
-    }
-
-    public function getInstance(array $options = array())
-    {
-        return new HTML5($options);
-    }
-
-    protected function wrap($fragment)
-    {
-        return self::DOC_OPEN . $fragment . self::DOC_CLOSE;
-    }
-}
diff --git a/vendor/phpdocumentor/reflection-docblock/tests/phpDocumentor/Reflection/DocBlock/DescriptionTest.php b/vendor/phpdocumentor/reflection-docblock/tests/phpDocumentor/Reflection/DocBlock/DescriptionTest.php
deleted file mode 100644
index a6ca7b3..0000000
--- a/vendor/phpdocumentor/reflection-docblock/tests/phpDocumentor/Reflection/DocBlock/DescriptionTest.php
+++ /dev/null
@@ -1,245 +0,0 @@
-<?php
-/**
- * phpDocumentor Description Test
- *
- * PHP Version 5.3
- *
- * @author    Vasil Rangelov <boen.robot@gmail.com>
- * @copyright 2010-2011 Mike van Riel / Naenius. (http://www.naenius.com)
- * @license   http://www.opensource.org/licenses/mit-license.php MIT
- * @link      http://phpdoc.org
- */
-
-namespace phpDocumentor\Reflection\DocBlock;
-
-/**
- * Test class for \phpDocumentor\Reflection\DocBlock\Description
- *
- * @author    Vasil Rangelov <boen.robot@gmail.com>
- * @copyright 2010-2011 Mike van Riel / Naenius. (http://www.naenius.com)
- * @license   http://www.opensource.org/licenses/mit-license.php MIT
- * @link      http://phpdoc.org
- */
-class DescriptionTest extends \PHPUnit_Framework_TestCase
-{
-    public function testConstruct()
-    {
-        $fixture = <<<LONGDESC
-This is text for a description.
-LONGDESC;
-        $object = new Description($fixture);
-        $this->assertSame($fixture, $object->getContents());
-
-        $parsedContents = $object->getParsedContents();
-        $this->assertCount(1, $parsedContents);
-        $this->assertSame($fixture, $parsedContents[0]);
-    }
-
-    public function testInlineTagParsing()
-    {
-        $fixture = <<<LONGDESC
-This is text for a {@link http://phpdoc.org/ description} that uses inline
-tags.
-LONGDESC;
-        $object = new Description($fixture);
-        $this->assertSame($fixture, $object->getContents());
-
-        $parsedContents = $object->getParsedContents();
-        $this->assertCount(3, $parsedContents);
-        $this->assertSame('This is text for a ', $parsedContents[0]);
-        $this->assertInstanceOf(
-            __NAMESPACE__ . '\Tag\LinkTag',
-            $parsedContents[1]
-        );
-        $this->assertSame(
-            ' that uses inline
-tags.',
-            $parsedContents[2]
-        );
-    }
-
-    public function testInlineTagAtStartParsing()
-    {
-        $fixture = <<<LONGDESC
-{@link http://phpdoc.org/ This} is text for a description that uses inline
-tags.
-LONGDESC;
-        $object = new Description($fixture);
-        $this->assertSame($fixture, $object->getContents());
-
-        $parsedContents = $object->getParsedContents();
-        $this->assertCount(3, $parsedContents);
-
-        $this->assertSame('', $parsedContents[0]);
-        $this->assertInstanceOf(
-            __NAMESPACE__ . '\Tag\LinkTag',
-            $parsedContents[1]
-        );
-        $this->assertSame(
-            ' is text for a description that uses inline
-tags.',
-            $parsedContents[2]
-        );
-    }
-
-    public function testNestedInlineTagParsing()
-    {
-        $fixture = <<<LONGDESC
-This is text for a description with {@internal inline tag with
-{@link http://phpdoc.org another inline tag} in it}.
-LONGDESC;
-        $object = new Description($fixture);
-        $this->assertSame($fixture, $object->getContents());
-
-        $parsedContents = $object->getParsedContents();
-        $this->assertCount(3, $parsedContents);
-
-        $this->assertSame(
-            'This is text for a description with ',
-            $parsedContents[0]
-        );
-        $this->assertInstanceOf(
-            __NAMESPACE__ . '\Tag',
-            $parsedContents[1]
-        );
-        $this->assertSame('.', $parsedContents[2]);
-
-        $parsedDescription = $parsedContents[1]->getParsedDescription();
-        $this->assertCount(3, $parsedDescription);
-        $this->assertSame("inline tag with\n", $parsedDescription[0]);
-        $this->assertInstanceOf(
-            __NAMESPACE__ . '\Tag\LinkTag',
-            $parsedDescription[1]
-        );
-        $this->assertSame(' in it', $parsedDescription[2]);
-    }
-
-    public function testLiteralOpeningDelimiter()
-    {
-        $fixture = <<<LONGDESC
-This is text for a description containing { that is literal.
-LONGDESC;
-        $object = new Description($fixture);
-        $this->assertSame($fixture, $object->getContents());
-
-        $parsedContents = $object->getParsedContents();
-        $this->assertCount(1, $parsedContents);
-        $this->assertSame($fixture, $parsedContents[0]);
-    }
-
-    public function testNestedLiteralOpeningDelimiter()
-    {
-        $fixture = <<<LONGDESC
-This is text for a description containing {@internal inline tag that has { that
-is literal}.
-LONGDESC;
-        $object = new Description($fixture);
-        $this->assertSame($fixture, $object->getContents());
-
-        $parsedContents = $object->getParsedContents();
-        $this->assertCount(3, $parsedContents);
-        $this->assertSame(
-            'This is text for a description containing ',
-            $parsedContents[0]
-        );
-        $this->assertInstanceOf(
-            __NAMESPACE__ . '\Tag',
-            $parsedContents[1]
-        );
-        $this->assertSame('.', $parsedContents[2]);
-
-        $this->assertSame(
-            array('inline tag that has { that
-is literal'),
-            $parsedContents[1]->getParsedDescription()
-        );
-    }
-
-    public function testLiteralClosingDelimiter()
-    {
-        $fixture = <<<LONGDESC
-This is text for a description with {} that is not a tag.
-LONGDESC;
-        $object = new Description($fixture);
-        $this->assertSame($fixture, $object->getContents());
-
-        $parsedContents = $object->getParsedContents();
-        $this->assertCount(1, $parsedContents);
-        $this->assertSame(
-            'This is text for a description with } that is not a tag.',
-            $parsedContents[0]
-        );
-    }
-
-    public function testNestedLiteralClosingDelimiter()
-    {
-        $fixture = <<<LONGDESC
-This is text for a description with {@internal inline tag with {} that is not an
-inline tag}.
-LONGDESC;
-        $object = new Description($fixture);
-        $this->assertSame($fixture, $object->getContents());
-
-        $parsedContents = $object->getParsedContents();
-        $this->assertCount(3, $parsedContents);
-        $this->assertSame(
-            'This is text for a description with ',
-            $parsedContents[0]
-        );
-        $this->assertInstanceOf(
-            __NAMESPACE__ . '\Tag',
-            $parsedContents[1]
-        );
-        $this->assertSame('.', $parsedContents[2]);
-
-        $this->assertSame(
-            array('inline tag with } that is not an
-inline tag'),
-            $parsedContents[1]->getParsedDescription()
-        );
-    }
-
-    public function testInlineTagEscapingSequence()
-    {
-        $fixture = <<<LONGDESC
-This is text for a description with literal {{@}link}.
-LONGDESC;
-        $object = new Description($fixture);
-        $this->assertSame($fixture, $object->getContents());
-
-        $parsedContents = $object->getParsedContents();
-        $this->assertCount(1, $parsedContents);
-        $this->assertSame(
-            'This is text for a description with literal {@link}.',
-            $parsedContents[0]
-        );
-    }
-
-    public function testNestedInlineTagEscapingSequence()
-    {
-        $fixture = <<<LONGDESC
-This is text for a description with an {@internal inline tag with literal
-{{@}link{} in it}.
-LONGDESC;
-        $object = new Description($fixture);
-        $this->assertSame($fixture, $object->getContents());
-
-        $parsedContents = $object->getParsedContents();
-        $this->assertCount(3, $parsedContents);
-        $this->assertSame(
-            'This is text for a description with an ',
-            $parsedContents[0]
-        );
-        $this->assertInstanceOf(
-            __NAMESPACE__ . '\Tag',
-            $parsedContents[1]
-        );
-        $this->assertSame('.', $parsedContents[2]);
-
-        $this->assertSame(
-            array('inline tag with literal
-{@link} in it'),
-            $parsedContents[1]->getParsedDescription()
-        );
-    }
-}
diff --git a/vendor/phpdocumentor/reflection-docblock/tests/phpDocumentor/Reflection/DocBlock/Tag/CoversTagTest.php b/vendor/phpdocumentor/reflection-docblock/tests/phpDocumentor/Reflection/DocBlock/Tag/CoversTagTest.php
deleted file mode 100644
index ff257aa..0000000
--- a/vendor/phpdocumentor/reflection-docblock/tests/phpDocumentor/Reflection/DocBlock/Tag/CoversTagTest.php
+++ /dev/null
@@ -1,86 +0,0 @@
-<?php
-/**
- * phpDocumentor Covers Tag Test
- * 
- * PHP version 5.3
- *
- * @author    Daniel O'Connor <daniel.oconnor@gmail.com>
- * @copyright 2010-2011 Mike van Riel / Naenius. (http://www.naenius.com)
- * @license   http://www.opensource.org/licenses/mit-license.php MIT
- * @link      http://phpdoc.org
- */
-
-namespace phpDocumentor\Reflection\DocBlock\Tag;
-
-/**
- * Test class for \phpDocumentor\Reflection\DocBlock\Tag\CoversTag
- *
- * @author    Daniel O'Connor <daniel.oconnor@gmail.com>
- * @copyright 2010-2011 Mike van Riel / Naenius. (http://www.naenius.com)
- * @license   http://www.opensource.org/licenses/mit-license.php MIT
- * @link      http://phpdoc.org
- */
-class CoversTagTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * Test that the \phpDocumentor\Reflection\DocBlock\Tag\CoversTag can create
-     * a link for the covers doc block.
-     *
-     * @param string $type
-     * @param string $content
-     * @param string $exContent
-     * @param string $exReference
-     *
-     * @covers \phpDocumentor\Reflection\DocBlock\Tag\CoversTag
-     * @dataProvider provideDataForConstuctor
-     *
-     * @return void
-     */
-    public function testConstructorParesInputsIntoCorrectFields(
-        $type,
-        $content,
-        $exContent,
-        $exDescription,
-        $exReference
-    ) {
-        $tag = new CoversTag($type, $content);
-
-        $this->assertEquals($type, $tag->getName());
-        $this->assertEquals($exContent, $tag->getContent());
-        $this->assertEquals($exDescription, $tag->getDescription());
-        $this->assertEquals($exReference, $tag->getReference());
-    }
-
-    /**
-     * Data provider for testConstructorParesInputsIntoCorrectFields
-     *
-     * @return array
-     */
-    public function provideDataForConstuctor()
-    {
-        // $type, $content, $exContent, $exDescription, $exReference
-        return array(
-            array(
-                'covers',
-                'Foo::bar()',
-                'Foo::bar()',
-                '',
-                'Foo::bar()'
-            ),
-            array(
-                'covers',
-                'Foo::bar() Testing',
-                'Foo::bar() Testing',
-                'Testing',
-                'Foo::bar()',
-            ),
-            array(
-                'covers',
-                'Foo::bar() Testing comments',
-                'Foo::bar() Testing comments',
-                'Testing comments',
-                'Foo::bar()',
-            ),
-        );
-    }
-}
diff --git a/vendor/phpdocumentor/reflection-docblock/tests/phpDocumentor/Reflection/DocBlock/Tag/DeprecatedTagTest.php b/vendor/phpdocumentor/reflection-docblock/tests/phpDocumentor/Reflection/DocBlock/Tag/DeprecatedTagTest.php
deleted file mode 100644
index 7a75e79..0000000
--- a/vendor/phpdocumentor/reflection-docblock/tests/phpDocumentor/Reflection/DocBlock/Tag/DeprecatedTagTest.php
+++ /dev/null
@@ -1,115 +0,0 @@
-<?php
-/**
- * phpDocumentor Deprecated Tag Test
- * 
- * PHP version 5.3
- *
- * @author    Vasil Rangelov <boen.robot@gmail.com>
- * @copyright 2010-2011 Mike van Riel / Naenius. (http://www.naenius.com)
- * @license   http://www.opensource.org/licenses/mit-license.php MIT
- * @link      http://phpdoc.org
- */
-
-namespace phpDocumentor\Reflection\DocBlock\Tag;
-
-/**
- * Test class for \phpDocumentor\Reflection\DocBlock\Tag\DeprecatedTag
- *
- * @author    Vasil Rangelov <boen.robot@gmail.com>
- * @copyright 2010-2011 Mike van Riel / Naenius. (http://www.naenius.com)
- * @license   http://www.opensource.org/licenses/mit-license.php MIT
- * @link      http://phpdoc.org
- */
-class DeprecatedTagTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * Test that the \phpDocumentor\Reflection\DocBlock\Tag\LinkTag can create
-     * a link for the @deprecated doc block.
-     *
-     * @param string $type
-     * @param string $content
-     * @param string $exContent
-     * @param string $exDescription
-     * @param string $exVersion
-     *
-     * @covers \phpDocumentor\Reflection\DocBlock\Tag\DeprecatedTag
-     * @dataProvider provideDataForConstuctor
-     *
-     * @return void
-     */
-    public function testConstructorParesInputsIntoCorrectFields(
-        $type,
-        $content,
-        $exContent,
-        $exDescription,
-        $exVersion
-    ) {
-        $tag = new DeprecatedTag($type, $content);
-
-        $this->assertEquals($type, $tag->getName());
-        $this->assertEquals($exContent, $tag->getContent());
-        $this->assertEquals($exDescription, $tag->getDescription());
-        $this->assertEquals($exVersion, $tag->getVersion());
-    }
-
-    /**
-     * Data provider for testConstructorParesInputsIntoCorrectFields
-     *
-     * @return array
-     */
-    public function provideDataForConstuctor()
-    {
-        // $type, $content, $exContent, $exDescription, $exVersion
-        return array(
-            array(
-                'deprecated',
-                '1.0 First release.',
-                '1.0 First release.',
-                'First release.',
-                '1.0'
-            ),
-            array(
-                'deprecated',
-                "1.0\nFirst release.",
-                "1.0\nFirst release.",
-                'First release.',
-                '1.0'
-            ),
-            array(
-                'deprecated',
-                "1.0\nFirst\nrelease.",
-                "1.0\nFirst\nrelease.",
-                "First\nrelease.",
-                '1.0'
-            ),
-            array(
-                'deprecated',
-                'Unfinished release',
-                'Unfinished release',
-                'Unfinished release',
-                ''
-            ),
-            array(
-                'deprecated',
-                '1.0',
-                '1.0',
-                '',
-                '1.0'
-            ),
-            array(
-                'deprecated',
-                'GIT: $Id$',
-                'GIT: $Id$',
-                '',
-                'GIT: $Id$'
-            ),
-            array(
-                'deprecated',
-                'GIT: $Id$ Dev build',
-                'GIT: $Id$ Dev build',
-                'Dev build',
-                'GIT: $Id$'
-            )
-        );
-    }
-}
diff --git a/vendor/phpdocumentor/reflection-docblock/tests/phpDocumentor/Reflection/DocBlock/Tag/ExampleTagTest.php b/vendor/phpdocumentor/reflection-docblock/tests/phpDocumentor/Reflection/DocBlock/Tag/ExampleTagTest.php
deleted file mode 100644
index 519a61b..0000000
--- a/vendor/phpdocumentor/reflection-docblock/tests/phpDocumentor/Reflection/DocBlock/Tag/ExampleTagTest.php
+++ /dev/null
@@ -1,203 +0,0 @@
-<?php
-/**
- * phpDocumentor Example Tag Test
- * 
- * PHP version 5.3
- *
- * @author    Vasil Rangelov <boen.robot@gmail.com>
- * @copyright 2010-2011 Mike van Riel / Naenius. (http://www.naenius.com)
- * @license   http://www.opensource.org/licenses/mit-license.php MIT
- * @link      http://phpdoc.org
- */
-
-namespace phpDocumentor\Reflection\DocBlock\Tag;
-
-/**
- * Test class for \phpDocumentor\Reflection\DocBlock\Tag\ExampleTag
- *
- * @author    Vasil Rangelov <boen.robot@gmail.com>
- * @copyright 2010-2011 Mike van Riel / Naenius. (http://www.naenius.com)
- * @license   http://www.opensource.org/licenses/mit-license.php MIT
- * @link      http://phpdoc.org
- */
-class ExampleTagTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * Test that the \phpDocumentor\Reflection\DocBlock\Tag\SourceTag can
-     * understand the @source DocBlock.
-     *
-     * @param string $type
-     * @param string $content
-     * @param string $exContent
-     * @param string $exStartingLine
-     * @param string $exLineCount
-     * @param string $exFilepath
-     *
-     * @covers \phpDocumentor\Reflection\DocBlock\Tag\ExampleTag
-     * @dataProvider provideDataForConstuctor
-     *
-     * @return void
-     */
-    public function testConstructorParesInputsIntoCorrectFields(
-        $type,
-        $content,
-        $exContent,
-        $exDescription,
-        $exStartingLine,
-        $exLineCount,
-        $exFilePath
-    ) {
-        $tag = new ExampleTag($type, $content);
-
-        $this->assertEquals($type, $tag->getName());
-        $this->assertEquals($exContent, $tag->getContent());
-        $this->assertEquals($exDescription, $tag->getDescription());
-        $this->assertEquals($exStartingLine, $tag->getStartingLine());
-        $this->assertEquals($exLineCount, $tag->getLineCount());
-        $this->assertEquals($exFilePath, $tag->getFilePath());
-    }
-
-    /**
-     * Data provider for testConstructorParesInputsIntoCorrectFields
-     *
-     * @return array
-     */
-    public function provideDataForConstuctor()
-    {
-        // $type,
-        // $content,
-        // $exContent,
-        // $exDescription,
-        // $exStartingLine,
-        // $exLineCount,
-        // $exFilePath
-        return array(
-            array(
-                'example',
-                'file.php',
-                'file.php',
-                '',
-                1,
-                null,
-                'file.php'
-            ),
-            array(
-                'example',
-                'Testing comments',
-                'Testing comments',
-                'comments',
-                1,
-                null,
-                'Testing'
-            ),
-            array(
-                'example',
-                'file.php 2 Testing',
-                'file.php 2 Testing',
-                'Testing',
-                2,
-                null,
-                'file.php'
-            ),
-            array(
-                'example',
-                'file.php 2 3 Testing comments',
-                'file.php 2 3 Testing comments',
-                'Testing comments',
-                2,
-                3,
-                'file.php'
-            ),
-            array(
-                'example',
-                'file.php 2 -1 Testing comments',
-                'file.php 2 -1 Testing comments',
-                '-1 Testing comments',
-                2,
-                null,
-                'file.php'
-            ),
-            array(
-                'example',
-                'file.php -1 1 Testing comments',
-                'file.php -1 1 Testing comments',
-                '-1 1 Testing comments',
-                1,
-                null,
-                'file.php'
-            ),
-            array(
-                'example',
-                '"file with spaces.php" Testing comments',
-                '"file with spaces.php" Testing comments',
-                'Testing comments',
-                1,
-                null,
-                'file with spaces.php'
-            ),
-            array(
-                'example',
-                '"file with spaces.php" 2 Testing comments',
-                '"file with spaces.php" 2 Testing comments',
-                'Testing comments',
-                2,
-                null,
-                'file with spaces.php'
-            ),
-            array(
-                'example',
-                '"file with spaces.php" 2 3 Testing comments',
-                '"file with spaces.php" 2 3 Testing comments',
-                'Testing comments',
-                2,
-                3,
-                'file with spaces.php'
-            ),
-            array(
-                'example',
-                '"file with spaces.php" 2 -3 Testing comments',
-                '"file with spaces.php" 2 -3 Testing comments',
-                '-3 Testing comments',
-                2,
-                null,
-                'file with spaces.php'
-            ),
-            array(
-                'example',
-                '"file with spaces.php" -2 3 Testing comments',
-                '"file with spaces.php" -2 3 Testing comments',
-                '-2 3 Testing comments',
-                1,
-                null,
-                'file with spaces.php'
-            ),
-            array(
-                'example',
-                'file%20with%20spaces.php Testing comments',
-                'file%20with%20spaces.php Testing comments',
-                'Testing comments',
-                1,
-                null,
-                'file with spaces.php'
-            ),
-            array(
-                'example',
-                'folder/file%20with%20spaces.php Testing comments',
-                'folder/file%20with%20spaces.php Testing comments',
-                'Testing comments',
-                1,
-                null,
-                'folder/file with spaces.php'
-            ),
-            array(
-                'example',
-                'http://example.com/file%20with%20spaces.php Testing comments',
-                'http://example.com/file%20with%20spaces.php Testing comments',
-                'Testing comments',
-                1,
-                null,
-                'http://example.com/file%20with%20spaces.php'
-            )
-        );
-    }
-}
diff --git a/vendor/phpdocumentor/reflection-docblock/tests/phpDocumentor/Reflection/DocBlock/Tag/LinkTagTest.php b/vendor/phpdocumentor/reflection-docblock/tests/phpDocumentor/Reflection/DocBlock/Tag/LinkTagTest.php
deleted file mode 100644
index 0c64ed0..0000000
--- a/vendor/phpdocumentor/reflection-docblock/tests/phpDocumentor/Reflection/DocBlock/Tag/LinkTagTest.php
+++ /dev/null
@@ -1,87 +0,0 @@
-<?php
-/**
- * phpDocumentor Link Tag Test
- * 
- * PHP version 5.3
- *
- * @author    Ben Selby <benmatselby@gmail.com>
- * @copyright 2010-2011 Mike van Riel / Naenius. (http://www.naenius.com)
- * @license   http://www.opensource.org/licenses/mit-license.php MIT
- * @link      http://phpdoc.org
- */
-
-namespace phpDocumentor\Reflection\DocBlock\Tag;
-
-/**
- * Test class for \phpDocumentor\Reflection\DocBlock\Tag\LinkTag
- *
- * @author    Ben Selby <benmatselby@gmail.com>
- * @copyright 2010-2011 Mike van Riel / Naenius. (http://www.naenius.com)
- * @license   http://www.opensource.org/licenses/mit-license.php MIT
- * @link      http://phpdoc.org
- */
-class LinkTagTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * Test that the \phpDocumentor\Reflection\DocBlock\Tag\LinkTag can create
-     * a link for the @link doc block.
-     *
-     * @param string $type
-     * @param string $content
-     * @param string $exContent
-     * @param string $exDescription
-     * @param string $exLink
-     *
-     * @covers \phpDocumentor\Reflection\DocBlock\Tag\LinkTag
-     * @dataProvider provideDataForConstuctor
-     *
-     * @return void
-     */
-    public function testConstructorParesInputsIntoCorrectFields(
-        $type,
-        $content,
-        $exContent,
-        $exDescription,
-        $exLink
-    ) {
-        $tag = new LinkTag($type, $content);
-
-        $this->assertEquals($type, $tag->getName());
-        $this->assertEquals($exContent, $tag->getContent());
-        $this->assertEquals($exDescription, $tag->getDescription());
-        $this->assertEquals($exLink, $tag->getLink());
-    }
-
-    /**
-     * Data provider for testConstructorParesInputsIntoCorrectFields
-     *
-     * @return array
-     */
-    public function provideDataForConstuctor()
-    {
-        // $type, $content, $exContent, $exDescription, $exLink
-        return array(
-            array(
-                'link',
-                'http://www.phpdoc.org/',
-                'http://www.phpdoc.org/',
-                'http://www.phpdoc.org/',
-                'http://www.phpdoc.org/'
-            ),
-            array(
-                'link',
-                'http://www.phpdoc.org/ Testing',
-                'http://www.phpdoc.org/ Testing',
-                'Testing',
-                'http://www.phpdoc.org/'
-            ),
-            array(
-                'link',
-                'http://www.phpdoc.org/ Testing comments',
-                'http://www.phpdoc.org/ Testing comments',
-                'Testing comments',
-                'http://www.phpdoc.org/'
-            ),
-        );
-    }
-}
diff --git a/vendor/phpdocumentor/reflection-docblock/tests/phpDocumentor/Reflection/DocBlock/Tag/MethodTagTest.php b/vendor/phpdocumentor/reflection-docblock/tests/phpDocumentor/Reflection/DocBlock/Tag/MethodTagTest.php
deleted file mode 100644
index efc3a15..0000000
--- a/vendor/phpdocumentor/reflection-docblock/tests/phpDocumentor/Reflection/DocBlock/Tag/MethodTagTest.php
+++ /dev/null
@@ -1,146 +0,0 @@
-<?php
-/**
- * phpDocumentor Method Tag Test
- * 
- * PHP version 5.3
- *
- * @author    Mike van Riel <mike.vanriel@naenius.com>
- * @copyright 2010-2011 Mike van Riel / Naenius. (http://www.naenius.com)
- * @license   http://www.opensource.org/licenses/mit-license.php MIT
- * @link      http://phpdoc.org
- */
-
-namespace phpDocumentor\Reflection\DocBlock\Tag;
-
-/**
- * Test class for \phpDocumentor\Reflection\DocBlock\Tag\MethodTag
- *
- * @author    Mike van Riel <mike.vanriel@naenius.com>
- * @copyright 2010-2011 Mike van Riel / Naenius. (http://www.naenius.com)
- * @license   http://www.opensource.org/licenses/mit-license.php MIT
- * @link      http://phpdoc.org
- */
-class MethodTagTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @param string $signature       The signature to test.
-     * @param bool   $valid           Whether the given signature is expected to
-     *     be valid.
-     * @param string $expected_name   The method name that is expected from this
-     *     signature.
-     * @param string $expected_return The return type that is expected from this
-     *     signature.
-     * @param bool   $paramCount      Number of parameters in the signature.
-     * @param string $description     The short description mentioned in the
-     *     signature.
-     * 
-     * @covers \phpDocumentor\Reflection\DocBlock\Tag\MethodTag
-     * @dataProvider getTestSignatures
-     *
-     * @return void
-     */
-    public function testConstruct(
-        $signature,
-        $valid,
-        $expected_name,
-        $expected_return,
-        $expected_isStatic,
-        $paramCount,
-        $description
-    ) {
-        ob_start();
-        $tag = new MethodTag('method', $signature);
-        $stdout = ob_get_clean();
-
-        $this->assertSame(
-            $valid,
-            empty($stdout),
-            'No error should have been output if the signature is valid'
-        );
-
-        if (!$valid) {
-            return;
-        }
-
-        $this->assertEquals($expected_name, $tag->getMethodName());
-        $this->assertEquals($expected_return, $tag->getType());
-        $this->assertEquals($description, $tag->getDescription());
-        $this->assertEquals($expected_isStatic, $tag->isStatic());
-        $this->assertCount($paramCount, $tag->getArguments());
-    }
-
-    public function getTestSignatures()
-    {
-        return array(
-            // TODO: Verify this case
-//            array(
-//                'foo',
-//                false, 'foo', '', false, 0, ''
-//            ),
-            array(
-                'foo()',
-                true, 'foo', 'void', false, 0, ''
-            ),
-            array(
-                'foo() description',
-                true, 'foo', 'void', false, 0, 'description'
-            ),
-            array(
-                'int foo()',
-                true, 'foo', 'int', false, 0, ''
-            ),
-            array(
-                'int foo() description',
-                true, 'foo', 'int', false, 0, 'description'
-            ),
-            array(
-                'int foo($a, $b)',
-                true, 'foo', 'int', false, 2, ''
-            ),
-            array(
-                'int foo() foo(int $a, int $b)',
-                true, 'foo', 'int', false, 2, ''
-            ),
-            array(
-                'int foo(int $a, int $b)',
-                true, 'foo', 'int', false, 2, ''
-            ),
-            array(
-                'null|int foo(int $a, int $b)',
-                true, 'foo', 'null|int', false, 2, ''
-            ),
-            array(
-                'int foo(null|int $a, int $b)',
-                true, 'foo', 'int', false, 2, ''
-            ),
-            array(
-                '\Exception foo() foo(Exception $a, Exception $b)',
-                true, 'foo', '\Exception', false, 2, ''
-            ),
-            array(
-                'int foo() foo(Exception $a, Exception $b) description',
-                true, 'foo', 'int', false, 2, 'description'
-            ),
-            array(
-                'int foo() foo(\Exception $a, \Exception $b) description',
-                true, 'foo', 'int', false, 2, 'description'
-            ),
-            array(
-                'void()',
-                true, 'void', 'void', false, 0, ''
-            ),
-            array(
-                'static foo()',
-                true, 'foo', 'static', false, 0, ''
-            ),
-            array(
-                'static void foo()',
-                true, 'foo', 'void', true, 0, ''
-            ),
-            array(
-                'static static foo()',
-                true, 'foo', 'static', true, 0, ''
-            )
-        );
-    }
-}
diff --git a/vendor/phpdocumentor/reflection-docblock/tests/phpDocumentor/Reflection/DocBlock/Tag/ParamTagTest.php b/vendor/phpdocumentor/reflection-docblock/tests/phpDocumentor/Reflection/DocBlock/Tag/ParamTagTest.php
deleted file mode 100644
index 0e05382..0000000
--- a/vendor/phpdocumentor/reflection-docblock/tests/phpDocumentor/Reflection/DocBlock/Tag/ParamTagTest.php
+++ /dev/null
@@ -1,118 +0,0 @@
-<?php
-/**
- * phpDocumentor Param tag test.
- * 
- * PHP version 5.3
- *
- * @author    Mike van Riel <mike.vanriel@naenius.com>
- * @copyright 2010-2011 Mike van Riel / Naenius. (http://www.naenius.com)
- * @license   http://www.opensource.org/licenses/mit-license.php MIT
- * @link      http://phpdoc.org
- */
-
-namespace phpDocumentor\Reflection\DocBlock\Tag;
-
-/**
- * Test class for \phpDocumentor\Reflection\DocBlock\ParamTag
- *
- * @author    Mike van Riel <mike.vanriel@naenius.com>
- * @copyright 2010-2011 Mike van Riel / Naenius. (http://www.naenius.com)
- * @license   http://www.opensource.org/licenses/mit-license.php MIT
- * @link      http://phpdoc.org
- */
-class ParamTagTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * Test that the \phpDocumentor\Reflection\DocBlock\Tag\ParamTag can
-     * understand the @param DocBlock.
-     *
-     * @param string $type
-     * @param string $content
-     * @param string $extractedType
-     * @param string $extractedTypes
-     * @param string $extractedVarName
-     * @param string $extractedDescription
-     *
-     * @covers \phpDocumentor\Reflection\DocBlock\Tag\ParamTag
-     * @dataProvider provideDataForConstructor
-     *
-     * @return void
-     */
-    public function testConstructorParsesInputsIntoCorrectFields(
-        $type,
-        $content,
-        $extractedType,
-        $extractedTypes,
-        $extractedVarName,
-        $extractedDescription
-    ) {
-        $tag = new ParamTag($type, $content);
-
-        $this->assertEquals($type, $tag->getName());
-        $this->assertEquals($extractedType, $tag->getType());
-        $this->assertEquals($extractedTypes, $tag->getTypes());
-        $this->assertEquals($extractedVarName, $tag->getVariableName());
-        $this->assertEquals($extractedDescription, $tag->getDescription());
-    }
-
-    /**
-     * Data provider for testConstructorParsesInputsIntoCorrectFields()
-     *
-     * @return array
-     */
-    public function provideDataForConstructor()
-    {
-        return array(
-            array('param', 'int', 'int', array('int'), '', ''),
-            array('param', '$bob', '', array(), '$bob', ''),
-            array(
-                'param',
-                'int Number of bobs',
-                'int',
-                array('int'),
-                '',
-                'Number of bobs'
-            ),
-            array(
-                'param',
-                'int $bob',
-                'int',
-                array('int'),
-                '$bob',
-                ''
-            ),
-            array(
-                'param',
-                'int $bob Number of bobs',
-                'int',
-                array('int'),
-                '$bob',
-                'Number of bobs'
-            ),
-            array(
-                'param',
-                "int Description \n on multiple lines",
-                'int',
-                array('int'),
-                '',
-                "Description \n on multiple lines"
-            ),
-            array(
-                'param',
-                "int \n\$bob Variable name on a new line",
-                'int',
-                array('int'),
-                '$bob',
-                "Variable name on a new line"
-            ),
-            array(
-                'param',
-                "\nint \$bob Type on a new line",
-                'int',
-                array('int'),
-                '$bob',
-                "Type on a new line"
-            )
-        );
-    }
-}
diff --git a/vendor/phpdocumentor/reflection-docblock/tests/phpDocumentor/Reflection/DocBlock/Tag/ReturnTagTest.php b/vendor/phpdocumentor/reflection-docblock/tests/phpDocumentor/Reflection/DocBlock/Tag/ReturnTagTest.php
deleted file mode 100644
index 9e2aec0..0000000
--- a/vendor/phpdocumentor/reflection-docblock/tests/phpDocumentor/Reflection/DocBlock/Tag/ReturnTagTest.php
+++ /dev/null
@@ -1,102 +0,0 @@
-<?php
-/**
- * phpDocumentor Return tag test.
- * 
- * PHP version 5.3
- *
- * @author    Mike van Riel <mike.vanriel@naenius.com>
- * @copyright 2010-2011 Mike van Riel / Naenius. (http://www.naenius.com)
- * @license   http://www.opensource.org/licenses/mit-license.php MIT
- * @link      http://phpdoc.org
- */
-
-namespace phpDocumentor\Reflection\DocBlock\Tag;
-
-/**
- * Test class for \phpDocumentor\Reflection\DocBlock\ReturnTag
- *
- * @author    Mike van Riel <mike.vanriel@naenius.com>
- * @copyright 2010-2011 Mike van Riel / Naenius. (http://www.naenius.com)
- * @license   http://www.opensource.org/licenses/mit-license.php MIT
- * @link      http://phpdoc.org
- */
-class ReturnTagTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * Test that the \phpDocumentor\Reflection\DocBlock\Tag\ReturnTag can
-     * understand the @return DocBlock.
-     *
-     * @param string $type
-     * @param string $content
-     * @param string $extractedType
-     * @param string $extractedTypes
-     * @param string $extractedDescription
-     *
-     * @covers \phpDocumentor\Reflection\DocBlock\Tag\ReturnTag
-     * @dataProvider provideDataForConstructor
-     *
-     * @return void
-     */
-    public function testConstructorParsesInputsIntoCorrectFields(
-        $type,
-        $content,
-        $extractedType,
-        $extractedTypes,
-        $extractedDescription
-    ) {
-        $tag = new ReturnTag($type, $content);
-
-        $this->assertEquals($type, $tag->getName());
-        $this->assertEquals($extractedType, $tag->getType());
-        $this->assertEquals($extractedTypes, $tag->getTypes());
-        $this->assertEquals($extractedDescription, $tag->getDescription());
-    }
-
-    /**
-     * Data provider for testConstructorParsesInputsIntoCorrectFields()
-     *
-     * @return array
-     */
-    public function provideDataForConstructor()
-    {
-        return array(
-            array('return', '', '', array(), ''),
-            array('return', 'int', 'int', array('int'), ''),
-            array(
-                'return',
-                'int Number of Bobs',
-                'int',
-                array('int'),
-                'Number of Bobs'
-            ),
-            array(
-                'return',
-                'int|double Number of Bobs',
-                'int|double',
-                array('int', 'double'),
-                'Number of Bobs'
-            ),
-            array(
-                'return',
-                "int Number of \n Bobs",
-                'int',
-                array('int'),
-                "Number of \n Bobs"
-            ),
-            array(
-                'return',
-                " int Number of Bobs",
-                'int',
-                array('int'),
-                "Number of Bobs"
-            ),
-            array(
-                'return',
-                "int\nNumber of Bobs",
-                'int',
-                array('int'),
-                "Number of Bobs"
-            )
-        );
-    }
-}
diff --git a/vendor/phpdocumentor/reflection-docblock/tests/phpDocumentor/Reflection/DocBlock/Tag/SeeTagTest.php b/vendor/phpdocumentor/reflection-docblock/tests/phpDocumentor/Reflection/DocBlock/Tag/SeeTagTest.php
deleted file mode 100644
index 6829b04..0000000
--- a/vendor/phpdocumentor/reflection-docblock/tests/phpDocumentor/Reflection/DocBlock/Tag/SeeTagTest.php
+++ /dev/null
@@ -1,86 +0,0 @@
-<?php
-/**
- * phpDocumentor See Tag Test
- * 
- * PHP version 5.3
- *
- * @author    Daniel O'Connor <daniel.oconnor@gmail.com>
- * @copyright 2010-2011 Mike van Riel / Naenius. (http://www.naenius.com)
- * @license   http://www.opensource.org/licenses/mit-license.php MIT
- * @link      http://phpdoc.org
- */
-
-namespace phpDocumentor\Reflection\DocBlock\Tag;
-
-/**
- * Test class for \phpDocumentor\Reflection\DocBlock\Tag\SeeTag
- *
- * @author    Daniel O'Connor <daniel.oconnor@gmail.com>
- * @copyright 2010-2011 Mike van Riel / Naenius. (http://www.naenius.com)
- * @license   http://www.opensource.org/licenses/mit-license.php MIT
- * @link      http://phpdoc.org
- */
-class SeeTagTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * Test that the phpDocumentor_Reflection_DocBlock_Tag_See can create a link
-     * for the @see doc block.
-     *
-     * @param string $type
-     * @param string $content
-     * @param string $exContent
-     * @param string $exReference
-     *
-     * @covers \phpDocumentor\Reflection\DocBlock\Tag\SeeTag
-     * @dataProvider provideDataForConstuctor
-     *
-     * @return void
-     */
-    public function testConstructorParesInputsIntoCorrectFields(
-        $type,
-        $content,
-        $exContent,
-        $exDescription,
-        $exReference
-    ) {
-        $tag = new SeeTag($type, $content);
-
-        $this->assertEquals($type, $tag->getName());
-        $this->assertEquals($exContent, $tag->getContent());
-        $this->assertEquals($exDescription, $tag->getDescription());
-        $this->assertEquals($exReference, $tag->getReference());
-    }
-
-    /**
-     * Data provider for testConstructorParesInputsIntoCorrectFields
-     *
-     * @return array
-     */
-    public function provideDataForConstuctor()
-    {
-        // $type, $content, $exContent, $exDescription, $exReference
-        return array(
-            array(
-                'see',
-                'Foo::bar()',
-                'Foo::bar()',
-                '',
-                'Foo::bar()'
-            ),
-            array(
-                'see',
-                'Foo::bar() Testing',
-                'Foo::bar() Testing',
-                'Testing',
-                'Foo::bar()',
-            ),
-            array(
-                'see',
-                'Foo::bar() Testing comments',
-                'Foo::bar() Testing comments',
-                'Testing comments',
-                'Foo::bar()',
-            ),
-        );
-    }
-}
diff --git a/vendor/phpdocumentor/reflection-docblock/tests/phpDocumentor/Reflection/DocBlock/Tag/SinceTagTest.php b/vendor/phpdocumentor/reflection-docblock/tests/phpDocumentor/Reflection/DocBlock/Tag/SinceTagTest.php
deleted file mode 100644
index 8caf25d..0000000
--- a/vendor/phpdocumentor/reflection-docblock/tests/phpDocumentor/Reflection/DocBlock/Tag/SinceTagTest.php
+++ /dev/null
@@ -1,115 +0,0 @@
-<?php
-/**
- * phpDocumentor Since Tag Test
- * 
- * PHP version 5.3
- *
- * @author    Vasil Rangelov <boen.robot@gmail.com>
- * @copyright 2010-2011 Mike van Riel / Naenius. (http://www.naenius.com)
- * @license   http://www.opensource.org/licenses/mit-license.php MIT
- * @link      http://phpdoc.org
- */
-
-namespace phpDocumentor\Reflection\DocBlock\Tag;
-
-/**
- * Test class for \phpDocumentor\Reflection\DocBlock\Tag\SinceTag
- *
- * @author    Vasil Rangelov <boen.robot@gmail.com>
- * @copyright 2010-2011 Mike van Riel / Naenius. (http://www.naenius.com)
- * @license   http://www.opensource.org/licenses/mit-license.php MIT
- * @link      http://phpdoc.org
- */
-class SinceTagTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * Test that the \phpDocumentor\Reflection\DocBlock\Tag\LinkTag can create
-     * a link for the @since doc block.
-     *
-     * @param string $type
-     * @param string $content
-     * @param string $exContent
-     * @param string $exDescription
-     * @param string $exVersion
-     *
-     * @covers \phpDocumentor\Reflection\DocBlock\Tag\SinceTag
-     * @dataProvider provideDataForConstuctor
-     *
-     * @return void
-     */
-    public function testConstructorParesInputsIntoCorrectFields(
-        $type,
-        $content,
-        $exContent,
-        $exDescription,
-        $exVersion
-    ) {
-        $tag = new SinceTag($type, $content);
-
-        $this->assertEquals($type, $tag->getName());
-        $this->assertEquals($exContent, $tag->getContent());
-        $this->assertEquals($exDescription, $tag->getDescription());
-        $this->assertEquals($exVersion, $tag->getVersion());
-    }
-
-    /**
-     * Data provider for testConstructorParesInputsIntoCorrectFields
-     *
-     * @return array
-     */
-    public function provideDataForConstuctor()
-    {
-        // $type, $content, $exContent, $exDescription, $exVersion
-        return array(
-            array(
-                'since',
-                '1.0 First release.',
-                '1.0 First release.',
-                'First release.',
-                '1.0'
-            ),
-            array(
-                'since',
-                "1.0\nFirst release.",
-                "1.0\nFirst release.",
-                'First release.',
-                '1.0'
-            ),
-            array(
-                'since',
-                "1.0\nFirst\nrelease.",
-                "1.0\nFirst\nrelease.",
-                "First\nrelease.",
-                '1.0'
-            ),
-            array(
-                'since',
-                'Unfinished release',
-                'Unfinished release',
-                'Unfinished release',
-                ''
-            ),
-            array(
-                'since',
-                '1.0',
-                '1.0',
-                '',
-                '1.0'
-            ),
-            array(
-                'since',
-                'GIT: $Id$',
-                'GIT: $Id$',
-                '',
-                'GIT: $Id$'
-            ),
-            array(
-                'since',
-                'GIT: $Id$ Dev build',
-                'GIT: $Id$ Dev build',
-                'Dev build',
-                'GIT: $Id$'
-            )
-        );
-    }
-}
diff --git a/vendor/phpdocumentor/reflection-docblock/tests/phpDocumentor/Reflection/DocBlock/Tag/SourceTagTest.php b/vendor/phpdocumentor/reflection-docblock/tests/phpDocumentor/Reflection/DocBlock/Tag/SourceTagTest.php
deleted file mode 100644
index 2a40e0a..0000000
--- a/vendor/phpdocumentor/reflection-docblock/tests/phpDocumentor/Reflection/DocBlock/Tag/SourceTagTest.php
+++ /dev/null
@@ -1,116 +0,0 @@
-<?php
-/**
- * phpDocumentor Source Tag Test
- * 
- * PHP version 5.3
- *
- * @author    Vasil Rangelov <boen.robot@gmail.com>
- * @copyright 2010-2011 Mike van Riel / Naenius. (http://www.naenius.com)
- * @license   http://www.opensource.org/licenses/mit-license.php MIT
- * @link      http://phpdoc.org
- */
-
-namespace phpDocumentor\Reflection\DocBlock\Tag;
-
-/**
- * Test class for \phpDocumentor\Reflection\DocBlock\Tag\SourceTag
- *
- * @author    Vasil Rangelov <boen.robot@gmail.com>
- * @copyright 2010-2011 Mike van Riel / Naenius. (http://www.naenius.com)
- * @license   http://www.opensource.org/licenses/mit-license.php MIT
- * @link      http://phpdoc.org
- */
-class SourceTagTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * Test that the \phpDocumentor\Reflection\DocBlock\Tag\SourceTag can
-     * understand the @source DocBlock.
-     *
-     * @param string $type
-     * @param string $content
-     * @param string $exContent
-     * @param string $exStartingLine
-     * @param string $exLineCount
-     *
-     * @covers \phpDocumentor\Reflection\DocBlock\Tag\SourceTag
-     * @dataProvider provideDataForConstuctor
-     *
-     * @return void
-     */
-    public function testConstructorParesInputsIntoCorrectFields(
-        $type,
-        $content,
-        $exContent,
-        $exDescription,
-        $exStartingLine,
-        $exLineCount
-    ) {
-        $tag = new SourceTag($type, $content);
-
-        $this->assertEquals($type, $tag->getName());
-        $this->assertEquals($exContent, $tag->getContent());
-        $this->assertEquals($exDescription, $tag->getDescription());
-        $this->assertEquals($exStartingLine, $tag->getStartingLine());
-        $this->assertEquals($exLineCount, $tag->getLineCount());
-    }
-
-    /**
-     * Data provider for testConstructorParesInputsIntoCorrectFields
-     *
-     * @return array
-     */
-    public function provideDataForConstuctor()
-    {
-        // $type, $content, $exContent, $exDescription, $exStartingLine, $exLineCount
-        return array(
-            array(
-                'source',
-                '2',
-                '2',
-                '',
-                2,
-                null
-            ),
-            array(
-                'source',
-                'Testing',
-                'Testing',
-                'Testing',
-                1,
-                null
-            ),
-            array(
-                'source',
-                '2 Testing',
-                '2 Testing',
-                'Testing',
-                2,
-                null
-            ),
-            array(
-                'source',
-                '2 3 Testing comments',
-                '2 3 Testing comments',
-                'Testing comments',
-                2,
-                3
-            ),
-            array(
-                'source',
-                '2 -1 Testing comments',
-                '2 -1 Testing comments',
-                '-1 Testing comments',
-                2,
-                null
-            ),
-            array(
-                'source',
-                '-1 1 Testing comments',
-                '-1 1 Testing comments',
-                '-1 1 Testing comments',
-                1,
-                null
-            )
-        );
-    }
-}
diff --git a/vendor/phpdocumentor/reflection-docblock/tests/phpDocumentor/Reflection/DocBlock/Tag/ThrowsTagTest.php b/vendor/phpdocumentor/reflection-docblock/tests/phpDocumentor/Reflection/DocBlock/Tag/ThrowsTagTest.php
deleted file mode 100644
index 3c669d5..0000000
--- a/vendor/phpdocumentor/reflection-docblock/tests/phpDocumentor/Reflection/DocBlock/Tag/ThrowsTagTest.php
+++ /dev/null
@@ -1,102 +0,0 @@
-<?php
-/**
- * phpDocumentor Throws tag test.
- * 
- * PHP version 5.3
- *
- * @author    Mike van Riel <mike.vanriel@naenius.com>
- * @copyright 2010-2011 Mike van Riel / Naenius. (http://www.naenius.com)
- * @license   http://www.opensource.org/licenses/mit-license.php MIT
- * @link      http://phpdoc.org
- */
-
-namespace phpDocumentor\Reflection\DocBlock\Tag;
-
-/**
- * Test class for \phpDocumentor\Reflection\DocBlock\ThrowsTag
- *
- * @author    Mike van Riel <mike.vanriel@naenius.com>
- * @copyright 2010-2011 Mike van Riel / Naenius. (http://www.naenius.com)
- * @license   http://www.opensource.org/licenses/mit-license.php MIT
- * @link      http://phpdoc.org
- */
-class ThrowsTagTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * Test that the \phpDocumentor\Reflection\DocBlock\Tag\ThrowsTag can
-     * understand the @throws DocBlock.
-     *
-     * @param string $type
-     * @param string $content
-     * @param string $extractedType
-     * @param string $extractedTypes
-     * @param string $extractedDescription
-     *
-     * @covers \phpDocumentor\Reflection\DocBlock\Tag\ThrowsTag
-     * @dataProvider provideDataForConstructor
-     *
-     * @return void
-     */
-    public function testConstructorParsesInputsIntoCorrectFields(
-        $type,
-        $content,
-        $extractedType,
-        $extractedTypes,
-        $extractedDescription
-    ) {
-        $tag = new ThrowsTag($type, $content);
-
-        $this->assertEquals($type, $tag->getName());
-        $this->assertEquals($extractedType, $tag->getType());
-        $this->assertEquals($extractedTypes, $tag->getTypes());
-        $this->assertEquals($extractedDescription, $tag->getDescription());
-    }
-
-    /**
-     * Data provider for testConstructorParsesInputsIntoCorrectFields()
-     *
-     * @return array
-     */
-    public function provideDataForConstructor()
-    {
-        return array(
-            array('throws', '', '', array(), ''),
-            array('throws', 'int', 'int', array('int'), ''),
-            array(
-                'throws',
-                'int Number of Bobs',
-                'int',
-                array('int'),
-                'Number of Bobs'
-            ),
-            array(
-                'throws',
-                'int|double Number of Bobs',
-                'int|double',
-                array('int', 'double'),
-                'Number of Bobs'
-            ),
-            array(
-                'throws',
-                "int Number of \n Bobs",
-                'int',
-                array('int'),
-                "Number of \n Bobs"
-            ),
-            array(
-                'throws',
-                " int Number of Bobs",
-                'int',
-                array('int'),
-                "Number of Bobs"
-            ),
-            array(
-                'throws',
-                "int\nNumber of Bobs",
-                'int',
-                array('int'),
-                "Number of Bobs"
-            )
-        );
-    }
-}
diff --git a/vendor/phpdocumentor/reflection-docblock/tests/phpDocumentor/Reflection/DocBlock/Tag/UsesTagTest.php b/vendor/phpdocumentor/reflection-docblock/tests/phpDocumentor/Reflection/DocBlock/Tag/UsesTagTest.php
deleted file mode 100644
index 45868d7..0000000
--- a/vendor/phpdocumentor/reflection-docblock/tests/phpDocumentor/Reflection/DocBlock/Tag/UsesTagTest.php
+++ /dev/null
@@ -1,86 +0,0 @@
-<?php
-/**
- * phpDocumentor Uses Tag Test
- * 
- * PHP version 5.3
- *
- * @author    Daniel O'Connor <daniel.oconnor@gmail.com>
- * @copyright 2010-2011 Mike van Riel / Naenius. (http://www.naenius.com)
- * @license   http://www.opensource.org/licenses/mit-license.php MIT
- * @link      http://phpdoc.org
- */
-
-namespace phpDocumentor\Reflection\DocBlock\Tag;
-
-/**
- * Test class for \phpDocumentor\Reflection\DocBlock\Tag\UsesTag
- *
- * @author    Daniel O'Connor <daniel.oconnor@gmail.com>
- * @copyright 2010-2011 Mike van Riel / Naenius. (http://www.naenius.com)
- * @license   http://www.opensource.org/licenses/mit-license.php MIT
- * @link      http://phpdoc.org
- */
-class UsesTagTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * Test that the \phpDocumentor\Reflection\DocBlock\Tag\UsesTag can create
-     * a link for the @uses doc block.
-     *
-     * @param string $type
-     * @param string $content
-     * @param string $exContent
-     * @param string $exReference
-     *
-     * @covers \phpDocumentor\Reflection\DocBlock\Tag\UsesTag
-     * @dataProvider provideDataForConstuctor
-     *
-     * @return void
-     */
-    public function testConstructorParesInputsIntoCorrectFields(
-        $type,
-        $content,
-        $exContent,
-        $exDescription,
-        $exReference
-    ) {
-        $tag = new UsesTag($type, $content);
-
-        $this->assertEquals($type, $tag->getName());
-        $this->assertEquals($exContent, $tag->getContent());
-        $this->assertEquals($exDescription, $tag->getDescription());
-        $this->assertEquals($exReference, $tag->getReference());
-    }
-
-    /**
-     * Data provider for testConstructorParesInputsIntoCorrectFields
-     *
-     * @return array
-     */
-    public function provideDataForConstuctor()
-    {
-        // $type, $content, $exContent, $exDescription, $exReference
-        return array(
-            array(
-                'uses',
-                'Foo::bar()',
-                'Foo::bar()',
-                '',
-                'Foo::bar()'
-            ),
-            array(
-                'uses',
-                'Foo::bar() Testing',
-                'Foo::bar() Testing',
-                'Testing',
-                'Foo::bar()',
-            ),
-            array(
-                'uses',
-                'Foo::bar() Testing comments',
-                'Foo::bar() Testing comments',
-                'Testing comments',
-                'Foo::bar()',
-            ),
-        );
-    }
-}
diff --git a/vendor/phpdocumentor/reflection-docblock/tests/phpDocumentor/Reflection/DocBlock/Tag/VarTagTest.php b/vendor/phpdocumentor/reflection-docblock/tests/phpDocumentor/Reflection/DocBlock/Tag/VarTagTest.php
deleted file mode 100644
index 9ae2aa5..0000000
--- a/vendor/phpdocumentor/reflection-docblock/tests/phpDocumentor/Reflection/DocBlock/Tag/VarTagTest.php
+++ /dev/null
@@ -1,94 +0,0 @@
-<?php
-/**
- * phpDocumentor Var Tag Test
- * 
- * PHP version 5.3
- *
- * @author    Daniel O'Connor <daniel.oconnor@gmail.com>
- * @copyright 2010-2011 Mike van Riel / Naenius. (http://www.naenius.com)
- * @license   http://www.opensource.org/licenses/mit-license.php MIT
- * @link      http://phpdoc.org
- */
-
-namespace phpDocumentor\Reflection\DocBlock\Tag;
-
-/**
- * Test class for \phpDocumentor\Reflection\DocBlock\Tag\VarTag
- *
- * @author    Daniel O'Connor <daniel.oconnor@gmail.com>
- * @copyright 2010-2011 Mike van Riel / Naenius. (http://www.naenius.com)
- * @license   http://www.opensource.org/licenses/mit-license.php MIT
- * @link      http://phpdoc.org
- */
-class VarTagTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * Test that the \phpDocumentor\Reflection\DocBlock\Tag\VarTag can
-     * understand the @var doc block.
-     *
-     * @param string $type
-     * @param string $content
-     * @param string $exType
-     * @param string $exVariable
-     * @param string $exDescription
-     *
-     * @covers \phpDocumentor\Reflection\DocBlock\Tag\VarTag
-     * @dataProvider provideDataForConstuctor
-     *
-     * @return void
-     */
-    public function testConstructorParesInputsIntoCorrectFields(
-        $type,
-        $content,
-        $exType,
-        $exVariable,
-        $exDescription
-    ) {
-        $tag = new VarTag($type, $content);
-
-        $this->assertEquals($type, $tag->getName());
-        $this->assertEquals($exType, $tag->getType());
-        $this->assertEquals($exVariable, $tag->getVariableName());
-        $this->assertEquals($exDescription, $tag->getDescription());
-    }
-
-    /**
-     * Data provider for testConstructorParesInputsIntoCorrectFields
-     *
-     * @return array
-     */
-    public function provideDataForConstuctor()
-    {
-        // $type, $content, $exType, $exVariable, $exDescription
-        return array(
-            array(
-                'var',
-                'int',
-                'int',
-                '',
-                ''
-            ),
-            array(
-                'var',
-                'int $bob',
-                'int',
-                '$bob',
-                ''
-            ),
-            array(
-                'var',
-                'int $bob Number of bobs',
-                'int',
-                '$bob',
-                'Number of bobs'
-            ),
-            array(
-                'var',
-                '',
-                '',
-                '',
-                ''
-            ),
-        );
-    }
-}
diff --git a/vendor/phpdocumentor/reflection-docblock/tests/phpDocumentor/Reflection/DocBlock/Tag/VersionTagTest.php b/vendor/phpdocumentor/reflection-docblock/tests/phpDocumentor/Reflection/DocBlock/Tag/VersionTagTest.php
deleted file mode 100644
index e145386..0000000
--- a/vendor/phpdocumentor/reflection-docblock/tests/phpDocumentor/Reflection/DocBlock/Tag/VersionTagTest.php
+++ /dev/null
@@ -1,115 +0,0 @@
-<?php
-/**
- * phpDocumentor Version Tag Test
- * 
- * PHP version 5.3
- *
- * @author    Vasil Rangelov <boen.robot@gmail.com>
- * @copyright 2010-2011 Mike van Riel / Naenius. (http://www.naenius.com)
- * @license   http://www.opensource.org/licenses/mit-license.php MIT
- * @link      http://phpdoc.org
- */
-
-namespace phpDocumentor\Reflection\DocBlock\Tag;
-
-/**
- * Test class for \phpDocumentor\Reflection\DocBlock\Tag\VersionTag
- *
- * @author    Vasil Rangelov <boen.robot@gmail.com>
- * @copyright 2010-2011 Mike van Riel / Naenius. (http://www.naenius.com)
- * @license   http://www.opensource.org/licenses/mit-license.php MIT
- * @link      http://phpdoc.org
- */
-class VersionTagTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * Test that the \phpDocumentor\Reflection\DocBlock\Tag\LinkTag can create
-     * a link for the @version doc block.
-     *
-     * @param string $type
-     * @param string $content
-     * @param string $exContent
-     * @param string $exDescription
-     * @param string $exVersion
-     *
-     * @covers \phpDocumentor\Reflection\DocBlock\Tag\VersionTag
-     * @dataProvider provideDataForConstuctor
-     *
-     * @return void
-     */
-    public function testConstructorParesInputsIntoCorrectFields(
-        $type,
-        $content,
-        $exContent,
-        $exDescription,
-        $exVersion
-    ) {
-        $tag = new VersionTag($type, $content);
-
-        $this->assertEquals($type, $tag->getName());
-        $this->assertEquals($exContent, $tag->getContent());
-        $this->assertEquals($exDescription, $tag->getDescription());
-        $this->assertEquals($exVersion, $tag->getVersion());
-    }
-
-    /**
-     * Data provider for testConstructorParesInputsIntoCorrectFields
-     *
-     * @return array
-     */
-    public function provideDataForConstuctor()
-    {
-        // $type, $content, $exContent, $exDescription, $exVersion
-        return array(
-            array(
-                'version',
-                '1.0 First release.',
-                '1.0 First release.',
-                'First release.',
-                '1.0'
-            ),
-            array(
-                'version',
-                "1.0\nFirst release.",
-                "1.0\nFirst release.",
-                'First release.',
-                '1.0'
-            ),
-            array(
-                'version',
-                "1.0\nFirst\nrelease.",
-                "1.0\nFirst\nrelease.",
-                "First\nrelease.",
-                '1.0'
-            ),
-            array(
-                'version',
-                'Unfinished release',
-                'Unfinished release',
-                'Unfinished release',
-                ''
-            ),
-            array(
-                'version',
-                '1.0',
-                '1.0',
-                '',
-                '1.0'
-            ),
-            array(
-                'version',
-                'GIT: $Id$',
-                'GIT: $Id$',
-                '',
-                'GIT: $Id$'
-            ),
-            array(
-                'version',
-                'GIT: $Id$ Dev build',
-                'GIT: $Id$ Dev build',
-                'Dev build',
-                'GIT: $Id$'
-            )
-        );
-    }
-}
diff --git a/vendor/phpdocumentor/reflection-docblock/tests/phpDocumentor/Reflection/DocBlock/TagTest.php b/vendor/phpdocumentor/reflection-docblock/tests/phpDocumentor/Reflection/DocBlock/TagTest.php
deleted file mode 100644
index 9e873ec..0000000
--- a/vendor/phpdocumentor/reflection-docblock/tests/phpDocumentor/Reflection/DocBlock/TagTest.php
+++ /dev/null
@@ -1,313 +0,0 @@
-<?php
-/**
- * phpDocumentor Var Tag Test
- * 
- * PHP version 5.3
- *
- * @author    Daniel O'Connor <daniel.oconnor@gmail.com>
- * @copyright 2010-2011 Mike van Riel / Naenius. (http://www.naenius.com)
- * @license   http://www.opensource.org/licenses/mit-license.php MIT
- * @link      http://phpdoc.org
- */
-
-namespace phpDocumentor\Reflection\DocBlock;
-
-use phpDocumentor\Reflection\DocBlock;
-use phpDocumentor\Reflection\DocBlock\Context;
-
-/**
- * Test class for \phpDocumentor\Reflection\DocBlock\Tag\VarTag
- *
- * @author    Daniel O'Connor <daniel.oconnor@gmail.com>
- * @copyright 2010-2011 Mike van Riel / Naenius. (http://www.naenius.com)
- * @license   http://www.opensource.org/licenses/mit-license.php MIT
- * @link      http://phpdoc.org
- */
-class TagTest extends \PHPUnit_Framework_TestCase
-{
-    
-    /**
-     * @expectedException \InvalidArgumentException
-     * 
-     * @return void
-     */
-    public function testInvalidTagLine()
-    {
-        Tag::createInstance('Invalid tag line');
-    }
-
-    /**
-     * @covers \phpDocumentor\Reflection\DocBlock\Tag::registerTagHandler
-     * 
-     * @return void
-     */
-    public function testTagHandlerUnregistration()
-    {
-        $currentHandler = __NAMESPACE__ . '\Tag\VarTag';
-        $tagPreUnreg = Tag::createInstance('@var mixed');
-        $this->assertInstanceOf(
-            $currentHandler,
-            $tagPreUnreg
-        );
-        $this->assertInstanceOf(
-            __NAMESPACE__ . '\Tag',
-            $tagPreUnreg
-        );
-
-        Tag::registerTagHandler('var', null);
-
-        $tagPostUnreg = Tag::createInstance('@var mixed');
-        $this->assertNotInstanceOf(
-            $currentHandler,
-            $tagPostUnreg
-        );
-        $this->assertInstanceOf(
-            __NAMESPACE__ . '\Tag',
-            $tagPostUnreg
-        );
-
-        Tag::registerTagHandler('var', $currentHandler);
-    }
-
-    /**
-     * @covers \phpDocumentor\Reflection\DocBlock\Tag::registerTagHandler
-     * 
-     * @return void
-     */
-    public function testTagHandlerCorrectRegistration()
-    {
-        if (0 == ini_get('allow_url_include')) {
-            $this->markTestSkipped('"data" URIs for includes are required.');
-        }
-        $currentHandler = __NAMESPACE__ . '\Tag\VarTag';
-        $tagPreReg = Tag::createInstance('@var mixed');
-        $this->assertInstanceOf(
-            $currentHandler,
-            $tagPreReg
-        );
-        $this->assertInstanceOf(
-            __NAMESPACE__ . '\Tag',
-            $tagPreReg
-        );
-
-        include 'data:text/plain;base64,'. base64_encode(
-<<<TAG_HANDLER
-<?php
-    class MyTagHandler extends \phpDocumentor\Reflection\DocBlock\Tag {}
-TAG_HANDLER
-        );
-
-        $this->assertTrue(Tag::registerTagHandler('var', '\MyTagHandler'));
-
-        $tagPostReg = Tag::createInstance('@var mixed');
-        $this->assertNotInstanceOf(
-            $currentHandler,
-            $tagPostReg
-        );
-        $this->assertInstanceOf(
-            __NAMESPACE__ . '\Tag',
-            $tagPostReg
-        );
-        $this->assertInstanceOf(
-            '\MyTagHandler',
-            $tagPostReg
-        );
-
-        $this->assertTrue(Tag::registerTagHandler('var', $currentHandler));
-    }
-    
-    /**
-     * @depends testTagHandlerCorrectRegistration
-     * @covers \phpDocumentor\Reflection\DocBlock\Tag::registerTagHandler
-     * @covers \phpDocumentor\Reflection\DocBlock\Tag::createInstance
-     * 
-     * @return void
-     */
-    public function testNamespacedTagHandlerCorrectRegistration()
-    {
-        $tagPreReg = Tag::createInstance('@T something');
-        $this->assertInstanceOf(
-            __NAMESPACE__ . '\Tag',
-            $tagPreReg
-        );
-        $this->assertNotInstanceOf(
-            '\MyTagHandler',
-            $tagPreReg
-        );
-
-        $this->assertTrue(
-            Tag::registerTagHandler('\MyNamespace\MyTag', '\MyTagHandler')
-        );
-
-        $tagPostReg = Tag::createInstance(
-            '@T something',
-            new DocBlock(
-                '',
-                new Context('', array('T' => '\MyNamespace\MyTag'))
-            )
-        );
-        $this->assertInstanceOf(
-            __NAMESPACE__ . '\Tag',
-            $tagPostReg
-        );
-        $this->assertInstanceOf(
-            '\MyTagHandler',
-            $tagPostReg
-        );
-
-        $this->assertTrue(
-            Tag::registerTagHandler('\MyNamespace\MyTag', null)
-        );
-    }
-    
-    /**
-     * @depends testTagHandlerCorrectRegistration
-     * @covers \phpDocumentor\Reflection\DocBlock\Tag::registerTagHandler
-     * @covers \phpDocumentor\Reflection\DocBlock\Tag::createInstance
-     * 
-     * @return void
-     */
-    public function testNamespacedTagHandlerIncorrectRegistration()
-    {
-        $tagPreReg = Tag::createInstance('@T something');
-        $this->assertInstanceOf(
-            __NAMESPACE__ . '\Tag',
-            $tagPreReg
-        );
-        $this->assertNotInstanceOf(
-            '\MyTagHandler',
-            $tagPreReg
-        );
-
-        $this->assertFalse(
-            Tag::registerTagHandler('MyNamespace\MyTag', '\MyTagHandler')
-        );
-
-        $tagPostReg = Tag::createInstance(
-            '@T something',
-            new DocBlock(
-                '',
-                new Context('', array('T' => '\MyNamespace\MyTag'))
-            )
-        );
-        $this->assertInstanceOf(
-            __NAMESPACE__ . '\Tag',
-            $tagPostReg
-        );
-        $this->assertNotInstanceOf(
-            '\MyTagHandler',
-            $tagPostReg
-        );
-    }
-
-    /**
-     * @covers \phpDocumentor\Reflection\DocBlock\Tag::registerTagHandler
-     * 
-     * @return void
-     */
-    public function testNonExistentTagHandlerRegistration()
-    {
-        $currentHandler = __NAMESPACE__ . '\Tag\VarTag';
-        $tagPreReg = Tag::createInstance('@var mixed');
-        $this->assertInstanceOf(
-            $currentHandler,
-            $tagPreReg
-        );
-        $this->assertInstanceOf(
-            __NAMESPACE__ . '\Tag',
-            $tagPreReg
-        );
-
-        $this->assertFalse(Tag::registerTagHandler('var', 'Non existent'));
-
-        $tagPostReg = Tag::createInstance('@var mixed');
-        $this->assertInstanceOf(
-            $currentHandler,
-            $tagPostReg
-        );
-        $this->assertInstanceOf(
-            __NAMESPACE__ . '\Tag',
-            $tagPostReg
-        );
-    }
-
-    /**
-     * @covers \phpDocumentor\Reflection\DocBlock\Tag::registerTagHandler
-     * 
-     * @return void
-     */
-    public function testIncompatibleTagHandlerRegistration()
-    {
-        $currentHandler = __NAMESPACE__ . '\Tag\VarTag';
-        $tagPreReg = Tag::createInstance('@var mixed');
-        $this->assertInstanceOf(
-            $currentHandler,
-            $tagPreReg
-        );
-        $this->assertInstanceOf(
-            __NAMESPACE__ . '\Tag',
-            $tagPreReg
-        );
-
-        $this->assertFalse(
-            Tag::registerTagHandler('var', __NAMESPACE__ . '\TagTest')
-        );
-
-        $tagPostReg = Tag::createInstance('@var mixed');
-        $this->assertInstanceOf(
-            $currentHandler,
-            $tagPostReg
-        );
-        $this->assertInstanceOf(
-            __NAMESPACE__ . '\Tag',
-            $tagPostReg
-        );
-    }
-
-    /**
-     * Test that the \phpDocumentor\Reflection\DocBlock\Tag\VarTag can
-     * understand the @var doc block.
-     *
-     * @param string $type
-     * @param string $content
-     * @param string $exDescription
-     *
-     * @covers \phpDocumentor\Reflection\DocBlock\Tag
-     * @dataProvider provideDataForConstuctor
-     *
-     * @return void
-     */
-    public function testConstructorParesInputsIntoCorrectFields(
-        $type,
-        $content,
-        $exDescription
-    ) {
-        $tag = new Tag($type, $content);
-
-        $this->assertEquals($type, $tag->getName());
-        $this->assertEquals($content, $tag->getContent());
-        $this->assertEquals($exDescription, $tag->getDescription());
-    }
-
-    /**
-     * Data provider for testConstructorParesInputsIntoCorrectFields
-     *
-     * @return array
-     */
-    public function provideDataForConstuctor()
-    {
-        // $type, $content, $exDescription
-        return array(
-            array(
-                'unknown',
-                'some content',
-                'some content',
-            ),
-            array(
-                'unknown',
-                '',
-                '',
-            )
-        );
-    }
-}
diff --git a/vendor/phpdocumentor/reflection-docblock/tests/phpDocumentor/Reflection/DocBlock/Type/CollectionTest.php b/vendor/phpdocumentor/reflection-docblock/tests/phpDocumentor/Reflection/DocBlock/Type/CollectionTest.php
deleted file mode 100644
index 78c7306..0000000
--- a/vendor/phpdocumentor/reflection-docblock/tests/phpDocumentor/Reflection/DocBlock/Type/CollectionTest.php
+++ /dev/null
@@ -1,195 +0,0 @@
-<?php
-/**
- * phpDocumentor Collection Test
- * 
- * PHP version 5.3
- *
- * @author    Mike van Riel <mike.vanriel@naenius.com>
- * @copyright 2010-2011 Mike van Riel / Naenius. (http://www.naenius.com)
- * @license   http://www.opensource.org/licenses/mit-license.php MIT
- * @link      http://phpdoc.org
- */
-
-namespace phpDocumentor\Reflection\DocBlock\Type;
-
-use phpDocumentor\Reflection\DocBlock\Context;
-
-/**
- * Test class for \phpDocumentor\Reflection\DocBlock\Type\Collection
- * 
- * @covers phpDocumentor\Reflection\DocBlock\Type\Collection
- *
- * @author    Mike van Riel <mike.vanriel@naenius.com>
- * @copyright 2010-2011 Mike van Riel / Naenius. (http://www.naenius.com)
- * @license   http://www.opensource.org/licenses/mit-license.php MIT
- * @link      http://phpdoc.org
- */
-class CollectionTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @covers phpDocumentor\Reflection\DocBlock\Type\Collection::__construct
-     * @covers phpDocumentor\Reflection\DocBlock\Type\Collection::getContext
-     * 
-     * @return void
-     */
-    public function testConstruct()
-    {
-        $collection = new Collection();
-        $this->assertCount(0, $collection);
-        $this->assertEquals('', $collection->getContext()->getNamespace());
-        $this->assertCount(0, $collection->getContext()->getNamespaceAliases());
-    }
-
-    /**
-     * @covers phpDocumentor\Reflection\DocBlock\Type\Collection::__construct
-     * 
-     * @return void
-     */
-    public function testConstructWithTypes()
-    {
-        $collection = new Collection(array('integer', 'string'));
-        $this->assertCount(2, $collection);
-    }
-
-    /**
-     * @covers phpDocumentor\Reflection\DocBlock\Type\Collection::__construct
-     * 
-     * @return void
-     */
-    public function testConstructWithNamespace()
-    {
-        $collection = new Collection(array(), new Context('\My\Space'));
-        $this->assertEquals('My\Space', $collection->getContext()->getNamespace());
-
-        $collection = new Collection(array(), new Context('My\Space'));
-        $this->assertEquals('My\Space', $collection->getContext()->getNamespace());
-
-        $collection = new Collection(array(), null);
-        $this->assertEquals('', $collection->getContext()->getNamespace());
-    }
-
-    /**
-     * @covers phpDocumentor\Reflection\DocBlock\Type\Collection::__construct
-     * 
-     * @return void
-     */
-    public function testConstructWithNamespaceAliases()
-    {
-        $fixture = array('a' => 'b');
-        $collection = new Collection(array(), new Context(null, $fixture));
-        $this->assertEquals(
-            array('a' => '\b'),
-            $collection->getContext()->getNamespaceAliases()
-        );
-    }
-
-    /**
-     * @param string $fixture
-     * @param array  $expected
-     *
-     * @dataProvider provideTypesToExpand
-     * @covers phpDocumentor\Reflection\DocBlock\Type\Collection::add
-     * 
-     * @return void
-     */
-    public function testAdd($fixture, $expected)
-    {
-        $collection = new Collection(
-            array(),
-            new Context('\My\Space', array('Alias' => '\My\Space\Aliasing'))
-        );
-        $collection->add($fixture);
-
-        $this->assertSame($expected, $collection->getArrayCopy());
-    }
-
-    /**
-     * @param string $fixture
-     * @param array  $expected
-     *
-     * @dataProvider provideTypesToExpandWithoutNamespace
-     * @covers phpDocumentor\Reflection\DocBlock\Type\Collection::add
-     * 
-     * @return void
-     */
-    public function testAddWithoutNamespace($fixture, $expected)
-    {
-        $collection = new Collection(
-            array(),
-            new Context(null, array('Alias' => '\My\Space\Aliasing'))
-        );
-        $collection->add($fixture);
-
-        $this->assertSame($expected, $collection->getArrayCopy());
-    }
-
-    /**
-     * @covers phpDocumentor\Reflection\DocBlock\Type\Collection::add
-     * @expectedException InvalidArgumentException
-     * 
-     * @return void
-     */
-    public function testAddWithInvalidArgument()
-    {
-        $collection = new Collection();
-        $collection->add(array());
-    }
-
-    /**
-     * Returns the types and their expected values to test the retrieval of
-     * types.
-     *
-     * @param string $method    Name of the method consuming this data provider.
-     * @param string $namespace Name of the namespace to user as basis.
-     *
-     * @return string[]
-     */
-    public function provideTypesToExpand($method, $namespace = '\My\Space\\')
-    {
-        return array(
-            array('', array()),
-            array(' ', array()),
-            array('int', array('int')),
-            array('int ', array('int')),
-            array('string', array('string')),
-            array('DocBlock', array($namespace.'DocBlock')),
-            array('DocBlock[]', array($namespace.'DocBlock[]')),
-            array(' DocBlock ', array($namespace.'DocBlock')),
-            array('\My\Space\DocBlock', array('\My\Space\DocBlock')),
-            array('Alias\DocBlock', array('\My\Space\Aliasing\DocBlock')),
-            array(
-                'DocBlock|Tag',
-                array($namespace .'DocBlock', $namespace .'Tag')
-            ),
-            array(
-                'DocBlock|null',
-                array($namespace.'DocBlock', 'null')
-            ),
-            array(
-                '\My\Space\DocBlock|Tag',
-                array('\My\Space\DocBlock', $namespace.'Tag')
-            ),
-            array(
-                'DocBlock[]|null',
-                array($namespace.'DocBlock[]', 'null')
-            ),
-            array(
-                'DocBlock[]|int[]',
-                array($namespace.'DocBlock[]', 'int[]')
-            ),
-        );
-    }
-
-    /**
-     * Returns the types and their expected values to test the retrieval of
-     * types when no namespace is available.
-     *
-     * @param string $method Name of the method consuming this data provider.
-     *
-     * @return string[]
-     */
-    public function provideTypesToExpandWithoutNamespace($method)
-    {
-        return $this->provideTypesToExpand($method, '\\');
-    }
-}
diff --git a/vendor/phpdocumentor/reflection-docblock/tests/phpDocumentor/Reflection/DocBlockTest.php b/vendor/phpdocumentor/reflection-docblock/tests/phpDocumentor/Reflection/DocBlockTest.php
deleted file mode 100644
index 30eedfc..0000000
--- a/vendor/phpdocumentor/reflection-docblock/tests/phpDocumentor/Reflection/DocBlockTest.php
+++ /dev/null
@@ -1,337 +0,0 @@
-<?php
-/**
- * phpDocumentor DocBlock Test
- *
- * PHP Version 5.3
- *
- * @author    Mike van Riel <mike.vanriel@naenius.com>
- * @copyright 2010-2011 Mike van Riel / Naenius. (http://www.naenius.com)
- * @license   http://www.opensource.org/licenses/mit-license.php MIT
- * @link      http://phpdoc.org
- */
-
-namespace phpDocumentor\Reflection;
-
-use phpDocumentor\Reflection\DocBlock\Context;
-use phpDocumentor\Reflection\DocBlock\Location;
-use phpDocumentor\Reflection\DocBlock\Tag\ReturnTag;
-
-/**
- * Test class for phpDocumentor\Reflection\DocBlock
- *
- * @author    Mike van Riel <mike.vanriel@naenius.com>
- * @copyright 2010-2011 Mike van Riel / Naenius. (http://www.naenius.com)
- * @license   http://www.opensource.org/licenses/mit-license.php MIT
- * @link      http://phpdoc.org
- */
-class DocBlockTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @covers \phpDocumentor\Reflection\DocBlock
-     * 
-     * @return void
-     */
-    public function testConstruct()
-    {
-        $fixture = <<<DOCBLOCK
-/**
- * This is a short description
- *
- * This is a long description
- *
- * @see \MyClass
- * @return void
- */
-DOCBLOCK;
-        $object = new DocBlock(
-            $fixture,
-            new Context('\MyNamespace', array('PHPDoc' => '\phpDocumentor')),
-            new Location(2)
-        );
-        $this->assertEquals(
-            'This is a short description',
-            $object->getShortDescription()
-        );
-        $this->assertEquals(
-            'This is a long description',
-            $object->getLongDescription()->getContents()
-        );
-        $this->assertCount(2, $object->getTags());
-        $this->assertTrue($object->hasTag('see'));
-        $this->assertTrue($object->hasTag('return'));
-        $this->assertFalse($object->hasTag('category'));
-        
-        $this->assertSame('MyNamespace', $object->getContext()->getNamespace());
-        $this->assertSame(
-            array('PHPDoc' => '\phpDocumentor'),
-            $object->getContext()->getNamespaceAliases()
-        );
-        $this->assertSame(2, $object->getLocation()->getLineNumber());
-    }
-
-    /**
-     * @covers \phpDocumentor\Reflection\DocBlock::splitDocBlock
-     *
-     * @return void
-     */
-    public function testConstructWithTagsOnly()
-    {
-        $fixture = <<<DOCBLOCK
-/**
- * @see \MyClass
- * @return void
- */
-DOCBLOCK;
-        $object = new DocBlock($fixture);
-        $this->assertEquals('', $object->getShortDescription());
-        $this->assertEquals('', $object->getLongDescription()->getContents());
-        $this->assertCount(2, $object->getTags());
-        $this->assertTrue($object->hasTag('see'));
-        $this->assertTrue($object->hasTag('return'));
-        $this->assertFalse($object->hasTag('category'));
-    }
-
-    /**
-     * @covers \phpDocumentor\Reflection\DocBlock::isTemplateStart
-     */
-    public function testIfStartOfTemplateIsDiscovered()
-    {
-        $fixture = <<<DOCBLOCK
-/**#@+
- * @see \MyClass
- * @return void
- */
-DOCBLOCK;
-        $object = new DocBlock($fixture);
-        $this->assertEquals('', $object->getShortDescription());
-        $this->assertEquals('', $object->getLongDescription()->getContents());
-        $this->assertCount(2, $object->getTags());
-        $this->assertTrue($object->hasTag('see'));
-        $this->assertTrue($object->hasTag('return'));
-        $this->assertFalse($object->hasTag('category'));
-        $this->assertTrue($object->isTemplateStart());
-    }
-
-    /**
-     * @covers \phpDocumentor\Reflection\DocBlock::isTemplateEnd
-     */
-    public function testIfEndOfTemplateIsDiscovered()
-    {
-        $fixture = <<<DOCBLOCK
-/**#@-*/
-DOCBLOCK;
-        $object = new DocBlock($fixture);
-        $this->assertEquals('', $object->getShortDescription());
-        $this->assertEquals('', $object->getLongDescription()->getContents());
-        $this->assertTrue($object->isTemplateEnd());
-    }
-
-    /**
-     * @covers \phpDocumentor\Reflection\DocBlock::cleanInput
-     * 
-     * @return void
-     */
-    public function testConstructOneLiner()
-    {
-        $fixture = '/** Short description and nothing more. */';
-        $object = new DocBlock($fixture);
-        $this->assertEquals(
-            'Short description and nothing more.',
-            $object->getShortDescription()
-        );
-        $this->assertEquals('', $object->getLongDescription()->getContents());
-        $this->assertCount(0, $object->getTags());
-    }
-
-    /**
-     * @covers \phpDocumentor\Reflection\DocBlock::__construct
-     * 
-     * @return void
-     */
-    public function testConstructFromReflector()
-    {
-        $object = new DocBlock(new \ReflectionClass($this));
-        $this->assertEquals(
-            'Test class for phpDocumentor\Reflection\DocBlock',
-            $object->getShortDescription()
-        );
-        $this->assertEquals('', $object->getLongDescription()->getContents());
-        $this->assertCount(4, $object->getTags());
-        $this->assertTrue($object->hasTag('author'));
-        $this->assertTrue($object->hasTag('copyright'));
-        $this->assertTrue($object->hasTag('license'));
-        $this->assertTrue($object->hasTag('link'));
-        $this->assertFalse($object->hasTag('category'));
-    }
-
-    /**
-     * @expectedException \InvalidArgumentException
-     * 
-     * @return void
-     */
-    public function testExceptionOnInvalidObject()
-    {
-        new DocBlock($this);
-    }
-
-    public function testDotSeperation()
-    {
-        $fixture = <<<DOCBLOCK
-/**
- * This is a short description.
- * This is a long description.
- * This is a continuation of the long description.
- */
-DOCBLOCK;
-        $object = new DocBlock($fixture);
-        $this->assertEquals(
-            'This is a short description.',
-            $object->getShortDescription()
-        );
-        $this->assertEquals(
-            "This is a long description.\nThis is a continuation of the long "
-            ."description.",
-            $object->getLongDescription()->getContents()
-        );
-    }
-
-    /**
-     * @covers \phpDocumentor\Reflection\DocBlock::parseTags
-     * @expectedException \LogicException
-     * 
-     * @return void
-     */
-    public function testInvalidTagBlock()
-    {
-        if (0 == ini_get('allow_url_include')) {
-            $this->markTestSkipped('"data" URIs for includes are required.');
-        }
-
-        include 'data:text/plain;base64,'. base64_encode(
-            <<<DOCBLOCK_EXTENSION
-<?php
-class MyReflectionDocBlock extends \phpDocumentor\Reflection\DocBlock {
-    protected function splitDocBlock(\$comment) {
-        return array('', '', 'Invalid tag block');
-    }
-}
-DOCBLOCK_EXTENSION
-        );
-        new \MyReflectionDocBlock('');
-        
-    }
-
-    public function testTagCaseSensitivity()
-    {
-        $fixture = <<<DOCBLOCK
-/**
- * This is a short description.
- *
- * This is a long description.
- *
- * @method null something()
- * @Method({"GET", "POST"})
- */
-DOCBLOCK;
-        $object = new DocBlock($fixture);
-        $this->assertEquals(
-            'This is a short description.',
-            $object->getShortDescription()
-        );
-        $this->assertEquals(
-            'This is a long description.',
-            $object->getLongDescription()->getContents()
-        );
-        $tags = $object->getTags();
-        $this->assertCount(2, $tags);
-        $this->assertTrue($object->hasTag('method'));
-        $this->assertTrue($object->hasTag('Method'));
-        $this->assertInstanceOf(
-            __NAMESPACE__ . '\DocBlock\Tag\MethodTag',
-            $tags[0]
-        );
-        $this->assertInstanceOf(
-            __NAMESPACE__ . '\DocBlock\Tag',
-            $tags[1]
-        );
-        $this->assertNotInstanceOf(
-            __NAMESPACE__ . '\DocBlock\Tag\MethodTag',
-            $tags[1]
-        );
-    }
-
-    /**
-     * @depends testConstructFromReflector
-     * @covers \phpDocumentor\Reflection\DocBlock::getTagsByName
-     * 
-     * @return void
-     */
-    public function testGetTagsByNameZeroAndOneMatch()
-    {
-        $object = new DocBlock(new \ReflectionClass($this));
-        $this->assertEmpty($object->getTagsByName('category'));
-        $this->assertCount(1, $object->getTagsByName('author'));
-    }
-
-    /**
-     * @depends testConstructWithTagsOnly
-     * @covers \phpDocumentor\Reflection\DocBlock::parseTags
-     * 
-     * @return void
-     */
-    public function testParseMultilineTag()
-    {
-        $fixture = <<<DOCBLOCK
-/**
- * @return void Content on
- *     multiple lines.
- */
-DOCBLOCK;
-        $object = new DocBlock($fixture);
-        $this->assertCount(1, $object->getTags());
-    }
-
-    /**
-     * @depends testConstructWithTagsOnly
-     * @covers \phpDocumentor\Reflection\DocBlock::parseTags
-     * 
-     * @return void
-     */
-    public function testParseMultilineTagWithLineBreaks()
-    {
-        $fixture = <<<DOCBLOCK
-/**
- * @return void Content on
- *     multiple lines.
- *
- *     One more, after the break.
- */
-DOCBLOCK;
-        $object = new DocBlock($fixture);
-        $this->assertCount(1, $tags = $object->getTags());
-	    /** @var ReturnTag $tag */
-	    $tag = reset($tags);
-	    $this->assertEquals("Content on\n    multiple lines.\n\n    One more, after the break.", $tag->getDescription());
-    }
-
-    /**
-     * @depends testConstructWithTagsOnly
-     * @covers \phpDocumentor\Reflection\DocBlock::getTagsByName
-     * 
-     * @return void
-     */
-    public function testGetTagsByNameMultipleMatch()
-    {
-        $fixture = <<<DOCBLOCK
-/**
- * @param string
- * @param int
- * @return void
- */
-DOCBLOCK;
-        $object = new DocBlock($fixture);
-        $this->assertEmpty($object->getTagsByName('category'));
-        $this->assertCount(1, $object->getTagsByName('return'));
-        $this->assertCount(2, $object->getTagsByName('param'));
-    }
-}
diff --git a/vendor/phpunit/php-code-coverage/tests/PHP/CodeCoverage/FilterTest.php b/vendor/phpunit/php-code-coverage/tests/PHP/CodeCoverage/FilterTest.php
deleted file mode 100644
index 66f8bb4..0000000
--- a/vendor/phpunit/php-code-coverage/tests/PHP/CodeCoverage/FilterTest.php
+++ /dev/null
@@ -1,281 +0,0 @@
-<?php
-/*
- * This file is part of the PHP_CodeCoverage package.
- *
- * (c) Sebastian Bergmann <sebastian@phpunit.de>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-if (!defined('TEST_FILES_PATH')) {
-    define(
-        'TEST_FILES_PATH',
-        dirname(dirname(dirname(__FILE__))) . DIRECTORY_SEPARATOR .
-        '_files' . DIRECTORY_SEPARATOR
-    );
-}
-
-/**
- * Tests for the PHP_CodeCoverage_Filter class.
- *
- * @since Class available since Release 1.0.0
- */
-class PHP_CodeCoverage_FilterTest extends PHPUnit_Framework_TestCase
-{
-    protected $filter;
-    protected $files;
-
-    protected function setUp()
-    {
-        $this->filter = unserialize('O:23:"PHP_CodeCoverage_Filter":0:{}');
-
-        $this->files = array(
-            TEST_FILES_PATH . 'BankAccount.php',
-            TEST_FILES_PATH . 'BankAccountTest.php',
-            TEST_FILES_PATH . 'CoverageClassExtendedTest.php',
-            TEST_FILES_PATH . 'CoverageClassTest.php',
-            TEST_FILES_PATH . 'CoverageFunctionParenthesesTest.php',
-            TEST_FILES_PATH . 'CoverageFunctionParenthesesWhitespaceTest.php',
-            TEST_FILES_PATH . 'CoverageFunctionTest.php',
-            TEST_FILES_PATH . 'CoverageMethodOneLineAnnotationTest.php',
-            TEST_FILES_PATH . 'CoverageMethodParenthesesTest.php',
-            TEST_FILES_PATH . 'CoverageMethodParenthesesWhitespaceTest.php',
-            TEST_FILES_PATH . 'CoverageMethodTest.php',
-            TEST_FILES_PATH . 'CoverageNoneTest.php',
-            TEST_FILES_PATH . 'CoverageNotPrivateTest.php',
-            TEST_FILES_PATH . 'CoverageNotProtectedTest.php',
-            TEST_FILES_PATH . 'CoverageNotPublicTest.php',
-            TEST_FILES_PATH . 'CoverageNothingTest.php',
-            TEST_FILES_PATH . 'CoveragePrivateTest.php',
-            TEST_FILES_PATH . 'CoverageProtectedTest.php',
-            TEST_FILES_PATH . 'CoveragePublicTest.php',
-            TEST_FILES_PATH . 'CoverageTwoDefaultClassAnnotations.php',
-            TEST_FILES_PATH . 'CoveredClass.php',
-            TEST_FILES_PATH . 'CoveredFunction.php',
-            TEST_FILES_PATH . 'NamespaceCoverageClassExtendedTest.php',
-            TEST_FILES_PATH . 'NamespaceCoverageClassTest.php',
-            TEST_FILES_PATH . 'NamespaceCoverageCoversClassPublicTest.php',
-            TEST_FILES_PATH . 'NamespaceCoverageCoversClassTest.php',
-            TEST_FILES_PATH . 'NamespaceCoverageMethodTest.php',
-            TEST_FILES_PATH . 'NamespaceCoverageNotPrivateTest.php',
-            TEST_FILES_PATH . 'NamespaceCoverageNotProtectedTest.php',
-            TEST_FILES_PATH . 'NamespaceCoverageNotPublicTest.php',
-            TEST_FILES_PATH . 'NamespaceCoveragePrivateTest.php',
-            TEST_FILES_PATH . 'NamespaceCoverageProtectedTest.php',
-            TEST_FILES_PATH . 'NamespaceCoveragePublicTest.php',
-            TEST_FILES_PATH . 'NamespaceCoveredClass.php',
-            TEST_FILES_PATH . 'NotExistingCoveredElementTest.php',
-            TEST_FILES_PATH . 'source_with_class_and_anonymous_function.php',
-            TEST_FILES_PATH . 'source_with_ignore.php',
-            TEST_FILES_PATH . 'source_with_namespace.php',
-            TEST_FILES_PATH . 'source_with_oneline_annotations.php',
-            TEST_FILES_PATH . 'source_without_ignore.php',
-            TEST_FILES_PATH . 'source_without_namespace.php'
-        );
-    }
-
-    /**
-     * @covers PHP_CodeCoverage_Filter::addFileToBlacklist
-     * @covers PHP_CodeCoverage_Filter::getBlacklist
-     */
-    public function testAddingAFileToTheBlacklistWorks()
-    {
-        $this->filter->addFileToBlacklist($this->files[0]);
-
-        $this->assertEquals(
-            array($this->files[0]),
-            $this->filter->getBlacklist()
-        );
-    }
-
-    /**
-     * @covers PHP_CodeCoverage_Filter::removeFileFromBlacklist
-     * @covers PHP_CodeCoverage_Filter::getBlacklist
-     */
-    public function testRemovingAFileFromTheBlacklistWorks()
-    {
-        $this->filter->addFileToBlacklist($this->files[0]);
-        $this->filter->removeFileFromBlacklist($this->files[0]);
-
-        $this->assertEquals(array(), $this->filter->getBlacklist());
-    }
-
-    /**
-     * @covers  PHP_CodeCoverage_Filter::addDirectoryToBlacklist
-     * @covers  PHP_CodeCoverage_Filter::getBlacklist
-     * @depends testAddingAFileToTheBlacklistWorks
-     */
-    public function testAddingADirectoryToTheBlacklistWorks()
-    {
-        $this->filter->addDirectoryToBlacklist(TEST_FILES_PATH);
-
-        $blacklist = $this->filter->getBlacklist();
-        sort($blacklist);
-
-        $this->assertEquals($this->files, $blacklist);
-    }
-
-    /**
-     * @covers PHP_CodeCoverage_Filter::addFilesToBlacklist
-     * @covers PHP_CodeCoverage_Filter::getBlacklist
-     */
-    public function testAddingFilesToTheBlacklistWorks()
-    {
-        $facade = new File_Iterator_Facade;
-        $files  = $facade->getFilesAsArray(
-            TEST_FILES_PATH,
-            $suffixes = '.php'
-        );
-
-        $this->filter->addFilesToBlacklist($files);
-
-        $blacklist = $this->filter->getBlacklist();
-        sort($blacklist);
-
-        $this->assertEquals($this->files, $blacklist);
-    }
-
-    /**
-     * @covers  PHP_CodeCoverage_Filter::removeDirectoryFromBlacklist
-     * @covers  PHP_CodeCoverage_Filter::getBlacklist
-     * @depends testAddingADirectoryToTheBlacklistWorks
-     */
-    public function testRemovingADirectoryFromTheBlacklistWorks()
-    {
-        $this->filter->addDirectoryToBlacklist(TEST_FILES_PATH);
-        $this->filter->removeDirectoryFromBlacklist(TEST_FILES_PATH);
-
-        $this->assertEquals(array(), $this->filter->getBlacklist());
-    }
-
-    /**
-     * @covers PHP_CodeCoverage_Filter::addFileToWhitelist
-     * @covers PHP_CodeCoverage_Filter::getWhitelist
-     */
-    public function testAddingAFileToTheWhitelistWorks()
-    {
-        $this->filter->addFileToWhitelist($this->files[0]);
-
-        $this->assertEquals(
-            array($this->files[0]),
-            $this->filter->getWhitelist()
-        );
-    }
-
-    /**
-     * @covers PHP_CodeCoverage_Filter::removeFileFromWhitelist
-     * @covers PHP_CodeCoverage_Filter::getWhitelist
-     */
-    public function testRemovingAFileFromTheWhitelistWorks()
-    {
-        $this->filter->addFileToWhitelist($this->files[0]);
-        $this->filter->removeFileFromWhitelist($this->files[0]);
-
-        $this->assertEquals(array(), $this->filter->getWhitelist());
-    }
-
-    /**
-     * @covers  PHP_CodeCoverage_Filter::addDirectoryToWhitelist
-     * @covers  PHP_CodeCoverage_Filter::getWhitelist
-     * @depends testAddingAFileToTheWhitelistWorks
-     */
-    public function testAddingADirectoryToTheWhitelistWorks()
-    {
-        $this->filter->addDirectoryToWhitelist(TEST_FILES_PATH);
-
-        $whitelist = $this->filter->getWhitelist();
-        sort($whitelist);
-
-        $this->assertEquals($this->files, $whitelist);
-    }
-
-    /**
-     * @covers PHP_CodeCoverage_Filter::addFilesToWhitelist
-     * @covers PHP_CodeCoverage_Filter::getBlacklist
-     */
-    public function testAddingFilesToTheWhitelistWorks()
-    {
-        $facade = new File_Iterator_Facade;
-        $files  = $facade->getFilesAsArray(
-            TEST_FILES_PATH,
-            $suffixes = '.php'
-        );
-
-        $this->filter->addFilesToWhitelist($files);
-
-        $whitelist = $this->filter->getWhitelist();
-        sort($whitelist);
-
-        $this->assertEquals($this->files, $whitelist);
-    }
-
-    /**
-     * @covers  PHP_CodeCoverage_Filter::removeDirectoryFromWhitelist
-     * @covers  PHP_CodeCoverage_Filter::getWhitelist
-     * @depends testAddingADirectoryToTheWhitelistWorks
-     */
-    public function testRemovingADirectoryFromTheWhitelistWorks()
-    {
-        $this->filter->addDirectoryToWhitelist(TEST_FILES_PATH);
-        $this->filter->removeDirectoryFromWhitelist(TEST_FILES_PATH);
-
-        $this->assertEquals(array(), $this->filter->getWhitelist());
-    }
-
-    /**
-     * @covers PHP_CodeCoverage_Filter::isFile
-     */
-    public function testIsFile()
-    {
-        $this->assertFalse($this->filter->isFile('vfs://root/a/path'));
-        $this->assertFalse($this->filter->isFile('xdebug://debug-eval'));
-        $this->assertFalse($this->filter->isFile('eval()\'d code'));
-        $this->assertFalse($this->filter->isFile('runtime-created function'));
-        $this->assertFalse($this->filter->isFile('assert code'));
-        $this->assertFalse($this->filter->isFile('regexp code'));
-        $this->assertTrue($this->filter->isFile(__FILE__));
-    }
-
-    /**
-     * @covers PHP_CodeCoverage_Filter::isFiltered
-     */
-    public function testBlacklistedFileIsFiltered()
-    {
-        $this->filter->addFileToBlacklist($this->files[0]);
-        $this->assertTrue($this->filter->isFiltered($this->files[0]));
-    }
-
-    /**
-     * @covers PHP_CodeCoverage_Filter::isFiltered
-     */
-    public function testWhitelistedFileIsNotFiltered()
-    {
-        $this->filter->addFileToWhitelist($this->files[0]);
-        $this->assertFalse($this->filter->isFiltered($this->files[0]));
-    }
-
-    /**
-     * @covers PHP_CodeCoverage_Filter::isFiltered
-     */
-    public function testNotWhitelistedFileIsFiltered()
-    {
-        $this->filter->addFileToWhitelist($this->files[0]);
-        $this->assertTrue($this->filter->isFiltered($this->files[1]));
-    }
-
-    /**
-     * @covers PHP_CodeCoverage_Filter::isFiltered
-     * @covers PHP_CodeCoverage_Filter::isFile
-     */
-    public function testNonFilesAreFiltered()
-    {
-        $this->assertTrue($this->filter->isFiltered('vfs://root/a/path'));
-        $this->assertTrue($this->filter->isFiltered('xdebug://debug-eval'));
-        $this->assertTrue($this->filter->isFiltered('eval()\'d code'));
-        $this->assertTrue($this->filter->isFiltered('runtime-created function'));
-        $this->assertTrue($this->filter->isFiltered('assert code'));
-        $this->assertTrue($this->filter->isFiltered('regexp code'));
-        $this->assertFalse($this->filter->isFiltered(__FILE__));
-    }
-}
diff --git a/vendor/phpunit/php-code-coverage/tests/PHP/CodeCoverage/Report/CloverTest.php b/vendor/phpunit/php-code-coverage/tests/PHP/CodeCoverage/Report/CloverTest.php
deleted file mode 100644
index 8d860bd..0000000
--- a/vendor/phpunit/php-code-coverage/tests/PHP/CodeCoverage/Report/CloverTest.php
+++ /dev/null
@@ -1,66 +0,0 @@
-<?php
-/*
- * This file is part of the PHP_CodeCoverage package.
- *
- * (c) Sebastian Bergmann <sebastian@phpunit.de>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-if (!defined('TEST_FILES_PATH')) {
-    define(
-        'TEST_FILES_PATH',
-        dirname(dirname(dirname(__FILE__))) . DIRECTORY_SEPARATOR .
-        '_files' . DIRECTORY_SEPARATOR
-    );
-}
-
-require_once TEST_FILES_PATH . '../TestCase.php';
-
-/**
- * Tests for the PHP_CodeCoverage_Report_Clover class.
- *
- * @since Class available since Release 1.0.0
- */
-class PHP_CodeCoverage_Report_CloverTest extends PHP_CodeCoverage_TestCase
-{
-    /**
-     * @covers PHP_CodeCoverage_Report_Clover
-     */
-    public function testCloverForBankAccountTest()
-    {
-        $clover = new PHP_CodeCoverage_Report_Clover;
-
-        $this->assertStringMatchesFormatFile(
-            TEST_FILES_PATH . 'BankAccount-clover.xml',
-            $clover->process($this->getCoverageForBankAccount(), null, 'BankAccount')
-        );
-    }
-
-    /**
-     * @covers PHP_CodeCoverage_Report_Clover
-     */
-    public function testCloverForFileWithIgnoredLines()
-    {
-        $clover = new PHP_CodeCoverage_Report_Clover;
-
-        $this->assertStringMatchesFormatFile(
-            TEST_FILES_PATH . 'ignored-lines-clover.xml',
-            $clover->process($this->getCoverageForFileWithIgnoredLines())
-        );
-    }
-
-    /**
-     * @covers PHP_CodeCoverage_Report_Clover
-     */
-    public function testCloverForClassWithAnonymousFunction()
-    {
-        $clover = new PHP_CodeCoverage_Report_Clover;
-
-        $this->assertStringMatchesFormatFile(
-            TEST_FILES_PATH . 'class-with-anonymous-function-clover.xml',
-            $clover->process($this->getCoverageForClassWithAnonymousFunction())
-        );
-    }
-}
diff --git a/vendor/phpunit/php-code-coverage/tests/PHP/CodeCoverage/Report/FactoryTest.php b/vendor/phpunit/php-code-coverage/tests/PHP/CodeCoverage/Report/FactoryTest.php
deleted file mode 100644
index 84f14ae..0000000
--- a/vendor/phpunit/php-code-coverage/tests/PHP/CodeCoverage/Report/FactoryTest.php
+++ /dev/null
@@ -1,222 +0,0 @@
-<?php
-/*
- * This file is part of the PHP_CodeCoverage package.
- *
- * (c) Sebastian Bergmann <sebastian@phpunit.de>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-if (!defined('TEST_FILES_PATH')) {
-    define(
-        'TEST_FILES_PATH',
-        dirname(dirname(dirname(dirname(__FILE__)))) . DIRECTORY_SEPARATOR .
-        '_files' . DIRECTORY_SEPARATOR
-    );
-}
-
-require_once TEST_FILES_PATH . '../TestCase.php';
-
-/**
- * Tests for the PHP_CodeCoverage_Report_Factory class.
- *
- * @since Class available since Release 1.1.0
- */
-class PHP_CodeCoverage_Report_FactoryTest extends PHP_CodeCoverage_TestCase
-{
-    protected $factory;
-
-    protected function setUp()
-    {
-        $this->factory = new PHP_CodeCoverage_Report_Factory;
-    }
-
-    public function testSomething()
-    {
-        $root = $this->getCoverageForBankAccount()->getReport();
-
-        $expectedPath = rtrim(TEST_FILES_PATH, DIRECTORY_SEPARATOR);
-        $this->assertEquals($expectedPath, $root->getName());
-        $this->assertEquals($expectedPath, $root->getPath());
-        $this->assertEquals(10, $root->getNumExecutableLines());
-        $this->assertEquals(5, $root->getNumExecutedLines());
-        $this->assertEquals(1, $root->getNumClasses());
-        $this->assertEquals(0, $root->getNumTestedClasses());
-        $this->assertEquals(4, $root->getNumMethods());
-        $this->assertEquals(3, $root->getNumTestedMethods());
-        $this->assertEquals('0.00%', $root->getTestedClassesPercent());
-        $this->assertEquals('75.00%', $root->getTestedMethodsPercent());
-        $this->assertEquals('50.00%', $root->getLineExecutedPercent());
-        $this->assertEquals(0, $root->getNumFunctions());
-        $this->assertEquals(0, $root->getNumTestedFunctions());
-        $this->assertNull($root->getParent());
-        $this->assertEquals(array(), $root->getDirectories());
-        #$this->assertEquals(array(), $root->getFiles());
-        #$this->assertEquals(array(), $root->getChildNodes());
-
-        $this->assertEquals(
-            array(
-                'BankAccount' => array(
-                    'methods' => array(
-                        'getBalance' => array(
-                            'signature'       => 'getBalance()',
-                            'startLine'       => 6,
-                            'endLine'         => 9,
-                            'executableLines' => 1,
-                            'executedLines'   => 1,
-                            'ccn'             => 1,
-                            'coverage'        => 100,
-                            'crap'            => '1',
-                            'link'            => 'BankAccount.php.html#6',
-                            'methodName'      => 'getBalance'
-                        ),
-                        'setBalance' => array(
-                            'signature'       => 'setBalance($balance)',
-                            'startLine'       => 11,
-                            'endLine'         => 18,
-                            'executableLines' => 5,
-                            'executedLines'   => 0,
-                            'ccn'             => 2,
-                            'coverage'        => 0,
-                            'crap'            => 6,
-                            'link'            => 'BankAccount.php.html#11',
-                            'methodName'      => 'setBalance'
-                        ),
-                        'depositMoney' => array(
-                            'signature'       => 'depositMoney($balance)',
-                            'startLine'       => 20,
-                            'endLine'         => 25,
-                            'executableLines' => 2,
-                            'executedLines'   => 2,
-                            'ccn'             => 1,
-                            'coverage'        => 100,
-                            'crap'            => '1',
-                            'link'            => 'BankAccount.php.html#20',
-                            'methodName'      => 'depositMoney'
-                        ),
-                        'withdrawMoney' => array(
-                            'signature'       => 'withdrawMoney($balance)',
-                            'startLine'       => 27,
-                            'endLine'         => 32,
-                            'executableLines' => 2,
-                            'executedLines'   => 2,
-                            'ccn'             => 1,
-                            'coverage'        => 100,
-                            'crap'            => '1',
-                            'link'            => 'BankAccount.php.html#27',
-                            'methodName'      => 'withdrawMoney'
-                        ),
-                    ),
-                    'startLine'       => 2,
-                    'executableLines' => 10,
-                    'executedLines'   => 5,
-                    'ccn'             => 5,
-                    'coverage'        => 50,
-                    'crap'            => '8.12',
-                    'package'         => array(
-                        'namespace'   => '',
-                        'fullPackage' => '',
-                        'category'    => '',
-                        'package'     => '',
-                        'subpackage'  => ''
-                    ),
-                    'link'      => 'BankAccount.php.html#2',
-                    'className' => 'BankAccount'
-                )
-            ),
-            $root->getClasses()
-        );
-
-        $this->assertEquals(array(), $root->getFunctions());
-    }
-
-    /**
-     * @covers PHP_CodeCoverage_Report_Factory::buildDirectoryStructure
-     */
-    public function testBuildDirectoryStructure()
-    {
-        $method = new ReflectionMethod(
-            'PHP_CodeCoverage_Report_Factory',
-            'buildDirectoryStructure'
-        );
-
-        $method->setAccessible(true);
-
-        $this->assertEquals(
-            array(
-                'src' => array(
-                    'Money.php/f'    => array(),
-                    'MoneyBag.php/f' => array()
-                )
-            ),
-            $method->invoke(
-                $this->factory,
-                array('src/Money.php' => array(), 'src/MoneyBag.php' => array())
-            )
-        );
-    }
-
-    /**
-     * @covers       PHP_CodeCoverage_Report_Factory::reducePaths
-     * @dataProvider reducePathsProvider
-     */
-    public function testReducePaths($reducedPaths, $commonPath, $paths)
-    {
-        $method = new ReflectionMethod(
-            'PHP_CodeCoverage_Report_Factory',
-            'reducePaths'
-        );
-
-        $method->setAccessible(true);
-
-        $_commonPath = $method->invokeArgs($this->factory, array(&$paths));
-
-        $this->assertEquals($reducedPaths, $paths);
-        $this->assertEquals($commonPath, $_commonPath);
-    }
-
-    public function reducePathsProvider()
-    {
-        return array(
-            array(
-                array(
-                    'Money.php'    => array(),
-                    'MoneyBag.php' => array()
-                ),
-                '/home/sb/Money',
-                array(
-                    '/home/sb/Money/Money.php'    => array(),
-                    '/home/sb/Money/MoneyBag.php' => array()
-                )
-            ),
-            array(
-                array(
-                    'Money.php' => array()
-                ),
-                '/home/sb/Money/',
-                array(
-                    '/home/sb/Money/Money.php' => array()
-                )
-            ),
-            array(
-                array(),
-                '.',
-                array()
-            ),
-            array(
-                array(
-                    'Money.php'          => array(),
-                    'MoneyBag.php'       => array(),
-                    'Cash.phar/Cash.php' => array(),
-                ),
-                '/home/sb/Money',
-                array(
-                    '/home/sb/Money/Money.php'                 => array(),
-                    '/home/sb/Money/MoneyBag.php'              => array(),
-                    'phar:///home/sb/Money/Cash.phar/Cash.php' => array(),
-                ),
-            ),
-        );
-    }
-}
diff --git a/vendor/phpunit/php-code-coverage/tests/PHP/CodeCoverage/UtilTest.php b/vendor/phpunit/php-code-coverage/tests/PHP/CodeCoverage/UtilTest.php
deleted file mode 100644
index 0b4caea..0000000
--- a/vendor/phpunit/php-code-coverage/tests/PHP/CodeCoverage/UtilTest.php
+++ /dev/null
@@ -1,30 +0,0 @@
-<?php
-/*
- * This file is part of the PHP_CodeCoverage package.
- *
- * (c) Sebastian Bergmann <sebastian@phpunit.de>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-/**
- * Tests for the PHP_CodeCoverage_Util class.
- *
- * @since Class available since Release 1.0.0
- */
-class PHP_CodeCoverage_UtilTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @covers PHP_CodeCoverage_Util::percent
-     */
-    public function testPercent()
-    {
-        $this->assertEquals(100, PHP_CodeCoverage_Util::percent(100, 0));
-        $this->assertEquals(100, PHP_CodeCoverage_Util::percent(100, 100));
-        $this->assertEquals(
-            '100.00%',
-            PHP_CodeCoverage_Util::percent(100, 100, true)
-        );
-    }
-}
diff --git a/vendor/phpunit/php-code-coverage/tests/PHP/CodeCoverageTest.php b/vendor/phpunit/php-code-coverage/tests/PHP/CodeCoverageTest.php
deleted file mode 100644
index a755b88..0000000
--- a/vendor/phpunit/php-code-coverage/tests/PHP/CodeCoverageTest.php
+++ /dev/null
@@ -1,487 +0,0 @@
-<?php
-/*
- * This file is part of the PHP_CodeCoverage package.
- *
- * (c) Sebastian Bergmann <sebastian@phpunit.de>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-if (!defined('TEST_FILES_PATH')) {
-    define(
-        'TEST_FILES_PATH',
-        dirname(dirname(__FILE__)) . DIRECTORY_SEPARATOR .
-        '_files' . DIRECTORY_SEPARATOR
-    );
-}
-
-require_once TEST_FILES_PATH . '../TestCase.php';
-require_once TEST_FILES_PATH . 'BankAccount.php';
-require_once TEST_FILES_PATH . 'BankAccountTest.php';
-
-/**
- * Tests for the PHP_CodeCoverage class.
- *
- * @since Class available since Release 1.0.0
- */
-class PHP_CodeCoverageTest extends PHP_CodeCoverage_TestCase
-{
-    /**
-     * @var PHP_CodeCoverage
-     */
-    private $coverage;
-
-    protected function setUp()
-    {
-        $this->coverage = new PHP_CodeCoverage;
-    }
-
-    /**
-     * @covers PHP_CodeCoverage::__construct
-     * @covers PHP_CodeCoverage::filter
-     */
-    public function testConstructor()
-    {
-        $this->assertAttributeInstanceOf(
-            'PHP_CodeCoverage_Driver_Xdebug',
-            'driver',
-            $this->coverage
-        );
-
-        $this->assertAttributeInstanceOf(
-            'PHP_CodeCoverage_Filter',
-            'filter',
-            $this->coverage
-        );
-    }
-
-    /**
-     * @covers PHP_CodeCoverage::__construct
-     * @covers PHP_CodeCoverage::filter
-     */
-    public function testConstructor2()
-    {
-        $filter   = new PHP_CodeCoverage_Filter;
-        $coverage = new PHP_CodeCoverage(null, $filter);
-
-        $this->assertAttributeInstanceOf(
-            'PHP_CodeCoverage_Driver_Xdebug',
-            'driver',
-            $coverage
-        );
-
-        $this->assertSame($filter, $coverage->filter());
-    }
-
-    /**
-     * @covers            PHP_CodeCoverage::start
-     * @expectedException PHP_CodeCoverage_Exception
-     */
-    public function testStartThrowsExceptionForInvalidArgument()
-    {
-        $this->coverage->start(null, array(), null);
-    }
-
-    /**
-     * @covers            PHP_CodeCoverage::stop
-     * @expectedException PHP_CodeCoverage_Exception
-     */
-    public function testStopThrowsExceptionForInvalidArgument()
-    {
-        $this->coverage->stop(null);
-    }
-
-    /**
-     * @covers            PHP_CodeCoverage::stop
-     * @expectedException PHP_CodeCoverage_Exception
-     */
-    public function testStopThrowsExceptionForInvalidArgument2()
-    {
-        $this->coverage->stop(true, null);
-    }
-
-    /**
-     * @covers            PHP_CodeCoverage::append
-     * @expectedException PHP_CodeCoverage_Exception
-     */
-    public function testAppendThrowsExceptionForInvalidArgument()
-    {
-        $this->coverage->append(array(), null);
-    }
-
-    /**
-     * @covers            PHP_CodeCoverage::setCacheTokens
-     * @expectedException PHP_CodeCoverage_Exception
-     */
-    public function testSetCacheTokensThrowsExceptionForInvalidArgument()
-    {
-        $this->coverage->setCacheTokens(null);
-    }
-
-    /**
-     * @covers PHP_CodeCoverage::setCacheTokens
-     */
-    public function testSetCacheTokens()
-    {
-        $this->coverage->setCacheTokens(true);
-        $this->assertAttributeEquals(true, 'cacheTokens', $this->coverage);
-    }
-
-    /**
-     * @covers            PHP_CodeCoverage::setCheckForUnintentionallyCoveredCode
-     * @expectedException PHP_CodeCoverage_Exception
-     */
-    public function testSetCheckForUnintentionallyCoveredCodeThrowsExceptionForInvalidArgument()
-    {
-        $this->coverage->setCheckForUnintentionallyCoveredCode(null);
-    }
-
-    /**
-     * @covers PHP_CodeCoverage::setCheckForUnintentionallyCoveredCode
-     */
-    public function testSetCheckForUnintentionallyCoveredCode()
-    {
-        $this->coverage->setCheckForUnintentionallyCoveredCode(true);
-        $this->assertAttributeEquals(
-            true,
-            'checkForUnintentionallyCoveredCode',
-            $this->coverage
-        );
-    }
-
-    /**
-     * @covers            PHP_CodeCoverage::setForceCoversAnnotation
-     * @expectedException PHP_CodeCoverage_Exception
-     */
-    public function testSetForceCoversAnnotationThrowsExceptionForInvalidArgument()
-    {
-        $this->coverage->setForceCoversAnnotation(null);
-    }
-
-    /**
-     * @covers PHP_CodeCoverage::setForceCoversAnnotation
-     */
-    public function testSetForceCoversAnnotation()
-    {
-        $this->coverage->setForceCoversAnnotation(true);
-        $this->assertAttributeEquals(
-            true,
-            'forceCoversAnnotation',
-            $this->coverage
-        );
-    }
-
-    /**
-     * @covers            PHP_CodeCoverage::setAddUncoveredFilesFromWhitelist
-     * @expectedException PHP_CodeCoverage_Exception
-     */
-    public function testSetAddUncoveredFilesFromWhitelistThrowsExceptionForInvalidArgument()
-    {
-        $this->coverage->setAddUncoveredFilesFromWhitelist(null);
-    }
-
-    /**
-     * @covers PHP_CodeCoverage::setAddUncoveredFilesFromWhitelist
-     */
-    public function testSetAddUncoveredFilesFromWhitelist()
-    {
-        $this->coverage->setAddUncoveredFilesFromWhitelist(true);
-        $this->assertAttributeEquals(
-            true,
-            'addUncoveredFilesFromWhitelist',
-            $this->coverage
-        );
-    }
-
-    /**
-     * @covers            PHP_CodeCoverage::setProcessUncoveredFilesFromWhitelist
-     * @expectedException PHP_CodeCoverage_Exception
-     */
-    public function testSetProcessUncoveredFilesFromWhitelistThrowsExceptionForInvalidArgument()
-    {
-        $this->coverage->setProcessUncoveredFilesFromWhitelist(null);
-    }
-
-    /**
-     * @covers PHP_CodeCoverage::setProcessUncoveredFilesFromWhitelist
-     */
-    public function testSetProcessUncoveredFilesFromWhitelist()
-    {
-        $this->coverage->setProcessUncoveredFilesFromWhitelist(true);
-        $this->assertAttributeEquals(
-            true,
-            'processUncoveredFilesFromWhitelist',
-            $this->coverage
-        );
-    }
-
-    /**
-     * @covers PHP_CodeCoverage::setMapTestClassNameToCoveredClassName
-     */
-    public function testSetMapTestClassNameToCoveredClassName()
-    {
-        $this->coverage->setMapTestClassNameToCoveredClassName(true);
-        $this->assertAttributeEquals(
-            true,
-            'mapTestClassNameToCoveredClassName',
-            $this->coverage
-        );
-    }
-
-    /**
-     * @covers            PHP_CodeCoverage::setMapTestClassNameToCoveredClassName
-     * @expectedException PHP_CodeCoverage_Exception
-     */
-    public function testSetMapTestClassNameToCoveredClassNameThrowsExceptionForInvalidArgument()
-    {
-        $this->coverage->setMapTestClassNameToCoveredClassName(null);
-    }
-
-    /**
-     * @covers PHP_CodeCoverage::clear
-     */
-    public function testClear()
-    {
-        $this->coverage->clear();
-
-        $this->assertAttributeEquals(null, 'currentId', $this->coverage);
-        $this->assertAttributeEquals(array(), 'data', $this->coverage);
-        $this->assertAttributeEquals(array(), 'tests', $this->coverage);
-    }
-
-    /**
-     * @covers PHP_CodeCoverage::start
-     * @covers PHP_CodeCoverage::stop
-     * @covers PHP_CodeCoverage::append
-     * @covers PHP_CodeCoverage::applyListsFilter
-     * @covers PHP_CodeCoverage::initializeFilesThatAreSeenTheFirstTime
-     * @covers PHP_CodeCoverage::applyCoversAnnotationFilter
-     * @covers PHP_CodeCoverage::getTests
-     */
-    public function testCollect()
-    {
-        $coverage = $this->getCoverageForBankAccount();
-
-        $this->assertEquals(
-            $this->getExpectedDataArrayForBankAccount(),
-            $coverage->getData()
-        );
-
-        if (version_compare(PHPUnit_Runner_Version::id(), '4.7', '>=')) {
-            $size = 'unknown';
-        } else {
-            $size = 'small';
-        }
-
-        $this->assertEquals(
-            array(
-                'BankAccountTest::testBalanceIsInitiallyZero'       => array('size' => $size, 'status' => null),
-                'BankAccountTest::testBalanceCannotBecomeNegative'  => array('size' => $size, 'status' => null),
-                'BankAccountTest::testBalanceCannotBecomeNegative2' => array('size' => $size, 'status' => null),
-                'BankAccountTest::testDepositWithdrawMoney'         => array('size' => $size, 'status' => null)
-            ),
-            $coverage->getTests()
-        );
-    }
-
-    /**
-     * @covers PHP_CodeCoverage::getData
-     * @covers PHP_CodeCoverage::merge
-     */
-    public function testMerge()
-    {
-        $coverage = $this->getCoverageForBankAccountForFirstTwoTests();
-        $coverage->merge($this->getCoverageForBankAccountForLastTwoTests());
-
-        $this->assertEquals(
-            $this->getExpectedDataArrayForBankAccount(),
-            $coverage->getData()
-        );
-    }
-
-    /**
-     * @covers PHP_CodeCoverage::getData
-     * @covers PHP_CodeCoverage::merge
-     */
-    public function testMerge2()
-    {
-        $coverage = new PHP_CodeCoverage(
-            $this->getMock('PHP_CodeCoverage_Driver_Xdebug'),
-            new PHP_CodeCoverage_Filter
-        );
-
-        $coverage->merge($this->getCoverageForBankAccount());
-
-        $this->assertEquals(
-            $this->getExpectedDataArrayForBankAccount(),
-            $coverage->getData()
-        );
-    }
-
-    /**
-     * @covers PHP_CodeCoverage::getLinesToBeIgnored
-     */
-    public function testGetLinesToBeIgnored()
-    {
-        $this->assertEquals(
-            array(
-                1,
-                3,
-                4,
-                5,
-                7,
-                8,
-                9,
-                10,
-                11,
-                12,
-                13,
-                14,
-                15,
-                16,
-                17,
-                18,
-                19,
-                20,
-                21,
-                22,
-                23,
-                24,
-                25,
-                26,
-                27,
-                28,
-                30,
-                32,
-                33,
-                34,
-                35,
-                36,
-                37,
-                38
-            ),
-            $this->getLinesToBeIgnored()->invoke(
-                $this->coverage,
-                TEST_FILES_PATH . 'source_with_ignore.php'
-            )
-        );
-    }
-
-    /**
-     * @covers PHP_CodeCoverage::getLinesToBeIgnored
-     */
-    public function testGetLinesToBeIgnored2()
-    {
-        $this->assertEquals(
-            array(1, 5),
-            $this->getLinesToBeIgnored()->invoke(
-                $this->coverage,
-                TEST_FILES_PATH . 'source_without_ignore.php'
-            )
-        );
-    }
-
-    /**
-     * @covers PHP_CodeCoverage::getLinesToBeIgnored
-     */
-    public function testGetLinesToBeIgnored3()
-    {
-        $this->assertEquals(
-            array(
-                1,
-                2,
-                3,
-                4,
-                5,
-                8,
-                11,
-                15,
-                16,
-                19,
-                20
-            ),
-            $this->getLinesToBeIgnored()->invoke(
-                $this->coverage,
-                TEST_FILES_PATH . 'source_with_class_and_anonymous_function.php'
-            )
-        );
-    }
-
-    /**
-     * @covers PHP_CodeCoverage::getLinesToBeIgnored
-     */
-    public function testGetLinesToBeIgnoredOneLineAnnotations()
-    {
-        $this->assertEquals(
-            array(
-                1,
-                2,
-                3,
-                4,
-                5,
-                6,
-                7,
-                8,
-                9,
-                10,
-                11,
-                12,
-                13,
-                14,
-                15,
-                16,
-                18,
-                20,
-                21,
-                23,
-                24,
-                25,
-                27,
-                28,
-                29,
-                30,
-                31,
-                32,
-                33,
-                34,
-                37
-            ),
-            $this->getLinesToBeIgnored()->invoke(
-                $this->coverage,
-                TEST_FILES_PATH . 'source_with_oneline_annotations.php'
-            )
-        );
-    }
-
-    /**
-     * @return ReflectionMethod
-     */
-    private function getLinesToBeIgnored()
-    {
-        $getLinesToBeIgnored = new ReflectionMethod(
-            'PHP_CodeCoverage',
-            'getLinesToBeIgnored'
-        );
-
-        $getLinesToBeIgnored->setAccessible(true);
-
-        return $getLinesToBeIgnored;
-    }
-
-    /**
-     * @covers PHP_CodeCoverage::getLinesToBeIgnored
-     */
-    public function testGetLinesToBeIgnoredWhenIgnoreIsDisabled()
-    {
-        $this->coverage->setDisableIgnoredLines(true);
-
-        $this->assertEquals(
-            array(),
-            $this->getLinesToBeIgnored()->invoke(
-                $this->coverage,
-                TEST_FILES_PATH . 'source_with_ignore.php'
-            )
-        );
-    }
-}
diff --git a/vendor/phpunit/php-code-coverage/tests/TestCase.php b/vendor/phpunit/php-code-coverage/tests/TestCase.php
deleted file mode 100644
index f982428..0000000
--- a/vendor/phpunit/php-code-coverage/tests/TestCase.php
+++ /dev/null
@@ -1,311 +0,0 @@
-<?php
-/*
- * This file is part of the PHP_CodeCoverage package.
- *
- * (c) Sebastian Bergmann <sebastian@phpunit.de>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-/**
- * Abstract base class for test case classes.
- *
- * @since Class available since Release 1.0.0
- */
-abstract class PHP_CodeCoverage_TestCase extends PHPUnit_Framework_TestCase
-{
-    protected function getXdebugDataForBankAccount()
-    {
-        return array(
-            array(
-                TEST_FILES_PATH . 'BankAccount.php' => array(
-                    8  => 1,
-                    9  => -2,
-                    13 => -1,
-                    14 => -1,
-                    15 => -1,
-                    16 => -1,
-                    18 => -1,
-                    22 => -1,
-                    24 => -1,
-                    25 => -2,
-                    29 => -1,
-                    31 => -1,
-                    32 => -2
-                )
-            ),
-            array(
-                TEST_FILES_PATH . 'BankAccount.php' => array(
-                    8  => 1,
-                    13 => 1,
-                    16 => 1,
-                    29 => 1,
-                )
-            ),
-            array(
-                TEST_FILES_PATH . 'BankAccount.php' => array(
-                    8  => 1,
-                    13 => 1,
-                    16 => 1,
-                    22 => 1,
-                )
-            ),
-            array(
-                TEST_FILES_PATH . 'BankAccount.php' => array(
-                    8  => 1,
-                    13 => 1,
-                    14 => 1,
-                    15 => 1,
-                    18 => 1,
-                    22 => 1,
-                    24 => 1,
-                    29 => 1,
-                    31 => 1,
-                )
-            )
-        );
-    }
-
-    protected function getCoverageForBankAccount()
-    {
-        $data = $this->getXdebugDataForBankAccount();
-
-        $stub = $this->getMock('PHP_CodeCoverage_Driver_Xdebug');
-        $stub->expects($this->any())
-            ->method('stop')
-            ->will($this->onConsecutiveCalls(
-                $data[0],
-                $data[1],
-                $data[2],
-                $data[3]
-            ));
-
-        $coverage = new PHP_CodeCoverage($stub, new PHP_CodeCoverage_Filter);
-
-        $coverage->start(
-            new BankAccountTest('testBalanceIsInitiallyZero'),
-            true
-        );
-
-        $coverage->stop(
-            true,
-            array(TEST_FILES_PATH . 'BankAccount.php' => range(6, 9))
-        );
-
-        $coverage->start(
-            new BankAccountTest('testBalanceCannotBecomeNegative')
-        );
-
-        $coverage->stop(
-            true,
-            array(TEST_FILES_PATH . 'BankAccount.php' => range(27, 32))
-        );
-
-        $coverage->start(
-            new BankAccountTest('testBalanceCannotBecomeNegative2')
-        );
-
-        $coverage->stop(
-            true,
-            array(TEST_FILES_PATH . 'BankAccount.php' => range(20, 25))
-        );
-
-        $coverage->start(
-            new BankAccountTest('testDepositWithdrawMoney')
-        );
-
-        $coverage->stop(
-            true,
-            array(
-                TEST_FILES_PATH . 'BankAccount.php' => array_merge(
-                    range(6, 9),
-                    range(20, 25),
-                    range(27, 32)
-                )
-            )
-        );
-
-        return $coverage;
-    }
-
-    protected function getCoverageForBankAccountForFirstTwoTests()
-    {
-        $data = $this->getXdebugDataForBankAccount();
-
-        $stub = $this->getMock('PHP_CodeCoverage_Driver_Xdebug');
-        $stub->expects($this->any())
-            ->method('stop')
-            ->will($this->onConsecutiveCalls(
-                $data[0],
-                $data[1]
-            ));
-
-        $coverage = new PHP_CodeCoverage($stub, new PHP_CodeCoverage_Filter);
-
-        $coverage->start(
-            new BankAccountTest('testBalanceIsInitiallyZero'),
-            true
-        );
-
-        $coverage->stop(
-            true,
-            array(TEST_FILES_PATH . 'BankAccount.php' => range(6, 9))
-        );
-
-        $coverage->start(
-            new BankAccountTest('testBalanceCannotBecomeNegative')
-        );
-
-        $coverage->stop(
-            true,
-            array(TEST_FILES_PATH . 'BankAccount.php' => range(27, 32))
-        );
-
-        return $coverage;
-    }
-
-    protected function getCoverageForBankAccountForLastTwoTests()
-    {
-        $data = $this->getXdebugDataForBankAccount();
-
-        $stub = $this->getMock('PHP_CodeCoverage_Driver_Xdebug');
-        $stub->expects($this->any())
-            ->method('stop')
-            ->will($this->onConsecutiveCalls(
-                $data[2],
-                $data[3]
-            ));
-
-        $coverage = new PHP_CodeCoverage($stub, new PHP_CodeCoverage_Filter);
-
-        $coverage->start(
-            new BankAccountTest('testBalanceCannotBecomeNegative2')
-        );
-
-        $coverage->stop(
-            true,
-            array(TEST_FILES_PATH . 'BankAccount.php' => range(20, 25))
-        );
-
-        $coverage->start(
-            new BankAccountTest('testDepositWithdrawMoney')
-        );
-
-        $coverage->stop(
-            true,
-            array(
-                TEST_FILES_PATH . 'BankAccount.php' => array_merge(
-                    range(6, 9),
-                    range(20, 25),
-                    range(27, 32)
-                )
-            )
-        );
-
-        return $coverage;
-    }
-
-    protected function getExpectedDataArrayForBankAccount()
-    {
-        return array(
-            TEST_FILES_PATH . 'BankAccount.php' => array(
-                8 => array(
-                    0 => 'BankAccountTest::testBalanceIsInitiallyZero',
-                    1 => 'BankAccountTest::testDepositWithdrawMoney'
-                ),
-                9  => null,
-                13 => array(),
-                14 => array(),
-                15 => array(),
-                16 => array(),
-                18 => array(),
-                22 => array(
-                    0 => 'BankAccountTest::testBalanceCannotBecomeNegative2',
-                    1 => 'BankAccountTest::testDepositWithdrawMoney'
-                ),
-                24 => array(
-                    0 => 'BankAccountTest::testDepositWithdrawMoney',
-                ),
-                25 => null,
-                29 => array(
-                    0 => 'BankAccountTest::testBalanceCannotBecomeNegative',
-                    1 => 'BankAccountTest::testDepositWithdrawMoney'
-                ),
-                31 => array(
-                    0 => 'BankAccountTest::testDepositWithdrawMoney'
-                ),
-                32 => null
-            )
-        );
-    }
-
-    protected function getCoverageForFileWithIgnoredLines()
-    {
-        $coverage = new PHP_CodeCoverage(
-            $this->setUpXdebugStubForFileWithIgnoredLines(),
-            new PHP_CodeCoverage_Filter
-        );
-
-        $coverage->start('FileWithIgnoredLines', true);
-        $coverage->stop();
-
-        return $coverage;
-    }
-
-    protected function setUpXdebugStubForFileWithIgnoredLines()
-    {
-        $stub = $this->getMock('PHP_CodeCoverage_Driver_Xdebug');
-        $stub->expects($this->any())
-            ->method('stop')
-            ->will($this->returnValue(
-                array(
-                    TEST_FILES_PATH . 'source_with_ignore.php' => array(
-                        2 => 1,
-                        4 => -1,
-                        6 => -1,
-                        7 => 1
-                    )
-                )
-            ));
-
-        return $stub;
-    }
-
-    protected function getCoverageForClassWithAnonymousFunction()
-    {
-        $coverage = new PHP_CodeCoverage(
-            $this->setUpXdebugStubForClassWithAnonymousFunction(),
-            new PHP_CodeCoverage_Filter
-        );
-
-        $coverage->start('ClassWithAnonymousFunction', true);
-        $coverage->stop();
-
-        return $coverage;
-    }
-
-    protected function setUpXdebugStubForClassWithAnonymousFunction()
-    {
-        $stub = $this->getMock('PHP_CodeCoverage_Driver_Xdebug');
-        $stub->expects($this->any())
-            ->method('stop')
-            ->will($this->returnValue(
-                array(
-                    TEST_FILES_PATH . 'source_with_class_and_anonymous_function.php' => array(
-                        7  => 1,
-                        9  => 1,
-                        10 => -1,
-                        11 => 1,
-                        12 => 1,
-                        13 => 1,
-                        14 => 1,
-                        17 => 1,
-                        18 => 1
-                    )
-                )
-            ));
-
-        return $stub;
-    }
-}
diff --git a/vendor/phpunit/php-code-coverage/tests/_files/BankAccount-clover.xml b/vendor/phpunit/php-code-coverage/tests/_files/BankAccount-clover.xml
deleted file mode 100644
index 578a7cc..0000000
--- a/vendor/phpunit/php-code-coverage/tests/_files/BankAccount-clover.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<coverage generated="%i">
-  <project timestamp="%i" name="BankAccount">
-    <file name="%s/BankAccount.php">
-      <class name="BankAccount" namespace="global">
-        <metrics methods="4" coveredmethods="3" conditionals="0" coveredconditionals="0" statements="10" coveredstatements="5" elements="14" coveredelements="8"/>
-      </class>
-      <line num="6" type="method" name="getBalance" crap="1" count="2"/>
-      <line num="8" type="stmt" count="2"/>
-      <line num="11" type="method" name="setBalance" crap="6" count="0"/>
-      <line num="13" type="stmt" count="0"/>
-      <line num="14" type="stmt" count="0"/>
-      <line num="15" type="stmt" count="0"/>
-      <line num="16" type="stmt" count="0"/>
-      <line num="18" type="stmt" count="0"/>
-      <line num="20" type="method" name="depositMoney" crap="1" count="2"/>
-      <line num="22" type="stmt" count="2"/>
-      <line num="24" type="stmt" count="1"/>
-      <line num="27" type="method" name="withdrawMoney" crap="1" count="2"/>
-      <line num="29" type="stmt" count="2"/>
-      <line num="31" type="stmt" count="1"/>
-      <metrics loc="33" ncloc="33" classes="1" methods="4" coveredmethods="3" conditionals="0" coveredconditionals="0" statements="10" coveredstatements="5" elements="14" coveredelements="8"/>
-    </file>
-    <metrics files="1" loc="33" ncloc="33" classes="1" methods="4" coveredmethods="3" conditionals="0" coveredconditionals="0" statements="10" coveredstatements="5" elements="14" coveredelements="8"/>
-  </project>
-</coverage>
diff --git a/vendor/phpunit/php-code-coverage/tests/_files/BankAccount.php b/vendor/phpunit/php-code-coverage/tests/_files/BankAccount.php
deleted file mode 100644
index 4238c15..0000000
--- a/vendor/phpunit/php-code-coverage/tests/_files/BankAccount.php
+++ /dev/null
@@ -1,33 +0,0 @@
-<?php
-class BankAccount
-{
-    protected $balance = 0;
-
-    public function getBalance()
-    {
-        return $this->balance;
-    }
-
-    protected function setBalance($balance)
-    {
-        if ($balance >= 0) {
-            $this->balance = $balance;
-        } else {
-            throw new RuntimeException;
-        }
-    }
-
-    public function depositMoney($balance)
-    {
-        $this->setBalance($this->getBalance() + $balance);
-
-        return $this->getBalance();
-    }
-
-    public function withdrawMoney($balance)
-    {
-        $this->setBalance($this->getBalance() - $balance);
-
-        return $this->getBalance();
-    }
-}
diff --git a/vendor/phpunit/php-code-coverage/tests/_files/BankAccountTest.php b/vendor/phpunit/php-code-coverage/tests/_files/BankAccountTest.php
deleted file mode 100644
index 3a6277b..0000000
--- a/vendor/phpunit/php-code-coverage/tests/_files/BankAccountTest.php
+++ /dev/null
@@ -1,66 +0,0 @@
-<?php
-require_once 'BankAccount.php';
-
-class BankAccountTest extends PHPUnit_Framework_TestCase
-{
-    protected $ba;
-
-    protected function setUp()
-    {
-        $this->ba = new BankAccount;
-    }
-
-    /**
-     * @covers BankAccount::getBalance
-     */
-    public function testBalanceIsInitiallyZero()
-    {
-        $this->assertEquals(0, $this->ba->getBalance());
-    }
-
-    /**
-     * @covers BankAccount::withdrawMoney
-     */
-    public function testBalanceCannotBecomeNegative()
-    {
-        try {
-            $this->ba->withdrawMoney(1);
-        } catch (RuntimeException $e) {
-            $this->assertEquals(0, $this->ba->getBalance());
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers BankAccount::depositMoney
-     */
-    public function testBalanceCannotBecomeNegative2()
-    {
-        try {
-            $this->ba->depositMoney(-1);
-        } catch (RuntimeException $e) {
-            $this->assertEquals(0, $this->ba->getBalance());
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers BankAccount::getBalance
-     * @covers BankAccount::depositMoney
-     * @covers BankAccount::withdrawMoney
-     */
-    public function testDepositWithdrawMoney()
-    {
-        $this->assertEquals(0, $this->ba->getBalance());
-        $this->ba->depositMoney(1);
-        $this->assertEquals(1, $this->ba->getBalance());
-        $this->ba->withdrawMoney(1);
-        $this->assertEquals(0, $this->ba->getBalance());
-    }
-}
diff --git a/vendor/phpunit/php-code-coverage/tests/_files/CoverageClassExtendedTest.php b/vendor/phpunit/php-code-coverage/tests/_files/CoverageClassExtendedTest.php
deleted file mode 100644
index df12d34..0000000
--- a/vendor/phpunit/php-code-coverage/tests/_files/CoverageClassExtendedTest.php
+++ /dev/null
@@ -1,12 +0,0 @@
-<?php
-class CoverageClassExtendedTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @covers CoveredClass<extended>
-     */
-    public function testSomething()
-    {
-        $o = new CoveredClass;
-        $o->publicMethod();
-    }
-}
diff --git a/vendor/phpunit/php-code-coverage/tests/_files/CoverageClassTest.php b/vendor/phpunit/php-code-coverage/tests/_files/CoverageClassTest.php
deleted file mode 100644
index 7f569ae..0000000
--- a/vendor/phpunit/php-code-coverage/tests/_files/CoverageClassTest.php
+++ /dev/null
@@ -1,12 +0,0 @@
-<?php
-class CoverageClassTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @covers CoveredClass
-     */
-    public function testSomething()
-    {
-        $o = new CoveredClass;
-        $o->publicMethod();
-    }
-}
diff --git a/vendor/phpunit/php-code-coverage/tests/_files/CoverageFunctionParenthesesTest.php b/vendor/phpunit/php-code-coverage/tests/_files/CoverageFunctionParenthesesTest.php
deleted file mode 100644
index 33b5fe3..0000000
--- a/vendor/phpunit/php-code-coverage/tests/_files/CoverageFunctionParenthesesTest.php
+++ /dev/null
@@ -1,11 +0,0 @@
-<?php
-class CoverageFunctionParenthesesTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @covers ::globalFunction()
-     */
-    public function testSomething()
-    {
-        globalFunction();
-    }
-}
diff --git a/vendor/phpunit/php-code-coverage/tests/_files/CoverageFunctionParenthesesWhitespaceTest.php b/vendor/phpunit/php-code-coverage/tests/_files/CoverageFunctionParenthesesWhitespaceTest.php
deleted file mode 100644
index becc6c8..0000000
--- a/vendor/phpunit/php-code-coverage/tests/_files/CoverageFunctionParenthesesWhitespaceTest.php
+++ /dev/null
@@ -1,11 +0,0 @@
-<?php
-class CoverageFunctionParenthesesWhitespaceTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @covers ::globalFunction ( )
-     */
-    public function testSomething()
-    {
-        globalFunction();
-    }
-}
diff --git a/vendor/phpunit/php-code-coverage/tests/_files/CoverageFunctionTest.php b/vendor/phpunit/php-code-coverage/tests/_files/CoverageFunctionTest.php
deleted file mode 100644
index c621fd2..0000000
--- a/vendor/phpunit/php-code-coverage/tests/_files/CoverageFunctionTest.php
+++ /dev/null
@@ -1,11 +0,0 @@
-<?php
-class CoverageFunctionTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @covers ::globalFunction
-     */
-    public function testSomething()
-    {
-        globalFunction();
-    }
-}
diff --git a/vendor/phpunit/php-code-coverage/tests/_files/CoverageMethodOneLineAnnotationTest.php b/vendor/phpunit/php-code-coverage/tests/_files/CoverageMethodOneLineAnnotationTest.php
deleted file mode 100644
index 55d7f57..0000000
--- a/vendor/phpunit/php-code-coverage/tests/_files/CoverageMethodOneLineAnnotationTest.php
+++ /dev/null
@@ -1,11 +0,0 @@
-<?php
-
-class CoverageMethodOneLineAnnotationTest extends PHPUnit_Framework_TestCase
-{
-    /** @covers CoveredClass::publicMethod */
-    public function testSomething()
-    {
-        $o = new CoveredClass;
-        $o->publicMethod();
-    }
-}
diff --git a/vendor/phpunit/php-code-coverage/tests/_files/CoverageMethodParenthesesTest.php b/vendor/phpunit/php-code-coverage/tests/_files/CoverageMethodParenthesesTest.php
deleted file mode 100644
index 4223004..0000000
--- a/vendor/phpunit/php-code-coverage/tests/_files/CoverageMethodParenthesesTest.php
+++ /dev/null
@@ -1,12 +0,0 @@
-<?php
-class CoverageMethodParenthesesTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @covers CoveredClass::publicMethod()
-     */
-    public function testSomething()
-    {
-        $o = new CoveredClass;
-        $o->publicMethod();
-    }
-}
diff --git a/vendor/phpunit/php-code-coverage/tests/_files/CoverageMethodParenthesesWhitespaceTest.php b/vendor/phpunit/php-code-coverage/tests/_files/CoverageMethodParenthesesWhitespaceTest.php
deleted file mode 100644
index d1be1c6..0000000
--- a/vendor/phpunit/php-code-coverage/tests/_files/CoverageMethodParenthesesWhitespaceTest.php
+++ /dev/null
@@ -1,12 +0,0 @@
-<?php
-class CoverageMethodParenthesesWhitespaceTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @covers CoveredClass::publicMethod ( )
-     */
-    public function testSomething()
-    {
-        $o = new CoveredClass;
-        $o->publicMethod();
-    }
-}
diff --git a/vendor/phpunit/php-code-coverage/tests/_files/CoverageMethodTest.php b/vendor/phpunit/php-code-coverage/tests/_files/CoverageMethodTest.php
deleted file mode 100644
index 167b3db..0000000
--- a/vendor/phpunit/php-code-coverage/tests/_files/CoverageMethodTest.php
+++ /dev/null
@@ -1,12 +0,0 @@
-<?php
-class CoverageMethodTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @covers CoveredClass::publicMethod
-     */
-    public function testSomething()
-    {
-        $o = new CoveredClass;
-        $o->publicMethod();
-    }
-}
diff --git a/vendor/phpunit/php-code-coverage/tests/_files/CoverageNoneTest.php b/vendor/phpunit/php-code-coverage/tests/_files/CoverageNoneTest.php
deleted file mode 100644
index 0b414c2..0000000
--- a/vendor/phpunit/php-code-coverage/tests/_files/CoverageNoneTest.php
+++ /dev/null
@@ -1,9 +0,0 @@
-<?php
-class CoverageNoneTest extends PHPUnit_Framework_TestCase
-{
-    public function testSomething()
-    {
-        $o = new CoveredClass;
-        $o->publicMethod();
-    }
-}
diff --git a/vendor/phpunit/php-code-coverage/tests/_files/CoverageNotPrivateTest.php b/vendor/phpunit/php-code-coverage/tests/_files/CoverageNotPrivateTest.php
deleted file mode 100644
index 12b56e8..0000000
--- a/vendor/phpunit/php-code-coverage/tests/_files/CoverageNotPrivateTest.php
+++ /dev/null
@@ -1,12 +0,0 @@
-<?php
-class CoverageNotPrivateTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @covers CoveredClass::<!private>
-     */
-    public function testSomething()
-    {
-        $o = new CoveredClass;
-        $o->publicMethod();
-    }
-}
diff --git a/vendor/phpunit/php-code-coverage/tests/_files/CoverageNotProtectedTest.php b/vendor/phpunit/php-code-coverage/tests/_files/CoverageNotProtectedTest.php
deleted file mode 100644
index c69d261..0000000
--- a/vendor/phpunit/php-code-coverage/tests/_files/CoverageNotProtectedTest.php
+++ /dev/null
@@ -1,12 +0,0 @@
-<?php
-class CoverageNotProtectedTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @covers CoveredClass::<!protected>
-     */
-    public function testSomething()
-    {
-        $o = new CoveredClass;
-        $o->publicMethod();
-    }
-}
diff --git a/vendor/phpunit/php-code-coverage/tests/_files/CoverageNotPublicTest.php b/vendor/phpunit/php-code-coverage/tests/_files/CoverageNotPublicTest.php
deleted file mode 100644
index aebfe4b..0000000
--- a/vendor/phpunit/php-code-coverage/tests/_files/CoverageNotPublicTest.php
+++ /dev/null
@@ -1,12 +0,0 @@
-<?php
-class CoverageNotPublicTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @covers CoveredClass::<!public>
-     */
-    public function testSomething()
-    {
-        $o = new CoveredClass;
-        $o->publicMethod();
-    }
-}
diff --git a/vendor/phpunit/php-code-coverage/tests/_files/CoverageNothingTest.php b/vendor/phpunit/php-code-coverage/tests/_files/CoverageNothingTest.php
deleted file mode 100644
index 5d5680d..0000000
--- a/vendor/phpunit/php-code-coverage/tests/_files/CoverageNothingTest.php
+++ /dev/null
@@ -1,13 +0,0 @@
-<?php
-class CoverageNothingTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @covers CoveredClass::publicMethod
-     * @coversNothing
-     */
-    public function testSomething()
-    {
-        $o = new CoveredClass;
-        $o->publicMethod();
-    }
-}
diff --git a/vendor/phpunit/php-code-coverage/tests/_files/CoveragePrivateTest.php b/vendor/phpunit/php-code-coverage/tests/_files/CoveragePrivateTest.php
deleted file mode 100644
index f09560d..0000000
--- a/vendor/phpunit/php-code-coverage/tests/_files/CoveragePrivateTest.php
+++ /dev/null
@@ -1,12 +0,0 @@
-<?php
-class CoveragePrivateTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @covers CoveredClass::<private>
-     */
-    public function testSomething()
-    {
-        $o = new CoveredClass;
-        $o->publicMethod();
-    }
-}
diff --git a/vendor/phpunit/php-code-coverage/tests/_files/CoverageProtectedTest.php b/vendor/phpunit/php-code-coverage/tests/_files/CoverageProtectedTest.php
deleted file mode 100644
index 9b3acbf..0000000
--- a/vendor/phpunit/php-code-coverage/tests/_files/CoverageProtectedTest.php
+++ /dev/null
@@ -1,12 +0,0 @@
-<?php
-class CoverageProtectedTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @covers CoveredClass::<protected>
-     */
-    public function testSomething()
-    {
-        $o = new CoveredClass;
-        $o->publicMethod();
-    }
-}
diff --git a/vendor/phpunit/php-code-coverage/tests/_files/CoveragePublicTest.php b/vendor/phpunit/php-code-coverage/tests/_files/CoveragePublicTest.php
deleted file mode 100644
index 480a522..0000000
--- a/vendor/phpunit/php-code-coverage/tests/_files/CoveragePublicTest.php
+++ /dev/null
@@ -1,12 +0,0 @@
-<?php
-class CoveragePublicTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @covers CoveredClass::<public>
-     */
-    public function testSomething()
-    {
-        $o = new CoveredClass;
-        $o->publicMethod();
-    }
-}
diff --git a/vendor/phpunit/php-code-coverage/tests/_files/CoverageTwoDefaultClassAnnotations.php b/vendor/phpunit/php-code-coverage/tests/_files/CoverageTwoDefaultClassAnnotations.php
deleted file mode 100644
index 7ffc5c9..0000000
--- a/vendor/phpunit/php-code-coverage/tests/_files/CoverageTwoDefaultClassAnnotations.php
+++ /dev/null
@@ -1,18 +0,0 @@
-<?php
-
-/**
- * @coversDefaultClass \NamespaceOne
- * @coversDefaultClass \AnotherDefault\Name\Space\Does\Not\Work
- */
-class CoverageTwoDefaultClassAnnotations
-{
-    /**
-     * @covers Foo\CoveredClass::<public>
-     */
-    public function testSomething()
-    {
-        $o = new Foo\CoveredClass;
-        $o->publicMethod();
-    }
-
-}
diff --git a/vendor/phpunit/php-code-coverage/tests/_files/CoveredClass.php b/vendor/phpunit/php-code-coverage/tests/_files/CoveredClass.php
deleted file mode 100644
index f382ce9..0000000
--- a/vendor/phpunit/php-code-coverage/tests/_files/CoveredClass.php
+++ /dev/null
@@ -1,36 +0,0 @@
-<?php
-class CoveredParentClass
-{
-    private function privateMethod()
-    {
-    }
-
-    protected function protectedMethod()
-    {
-        $this->privateMethod();
-    }
-
-    public function publicMethod()
-    {
-        $this->protectedMethod();
-    }
-}
-
-class CoveredClass extends CoveredParentClass
-{
-    private function privateMethod()
-    {
-    }
-
-    protected function protectedMethod()
-    {
-        parent::protectedMethod();
-        $this->privateMethod();
-    }
-
-    public function publicMethod()
-    {
-        parent::publicMethod();
-        $this->protectedMethod();
-    }
-}
diff --git a/vendor/phpunit/php-code-coverage/tests/_files/CoveredFunction.php b/vendor/phpunit/php-code-coverage/tests/_files/CoveredFunction.php
deleted file mode 100644
index 9989eb0..0000000
--- a/vendor/phpunit/php-code-coverage/tests/_files/CoveredFunction.php
+++ /dev/null
@@ -1,4 +0,0 @@
-<?php
-function globalFunction()
-{
-}
diff --git a/vendor/phpunit/php-code-coverage/tests/_files/NamespaceCoverageClassExtendedTest.php b/vendor/phpunit/php-code-coverage/tests/_files/NamespaceCoverageClassExtendedTest.php
deleted file mode 100644
index d0954cb..0000000
--- a/vendor/phpunit/php-code-coverage/tests/_files/NamespaceCoverageClassExtendedTest.php
+++ /dev/null
@@ -1,12 +0,0 @@
-<?php
-class NamespaceCoverageClassExtendedTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @covers Foo\CoveredClass<extended>
-     */
-    public function testSomething()
-    {
-        $o = new Foo\CoveredClass;
-        $o->publicMethod();
-    }
-}
diff --git a/vendor/phpunit/php-code-coverage/tests/_files/NamespaceCoverageClassTest.php b/vendor/phpunit/php-code-coverage/tests/_files/NamespaceCoverageClassTest.php
deleted file mode 100644
index 63912c0..0000000
--- a/vendor/phpunit/php-code-coverage/tests/_files/NamespaceCoverageClassTest.php
+++ /dev/null
@@ -1,12 +0,0 @@
-<?php
-class NamespaceCoverageClassTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @covers Foo\CoveredClass
-     */
-    public function testSomething()
-    {
-        $o = new Foo\CoveredClass;
-        $o->publicMethod();
-    }
-}
diff --git a/vendor/phpunit/php-code-coverage/tests/_files/NamespaceCoverageCoversClassPublicTest.php b/vendor/phpunit/php-code-coverage/tests/_files/NamespaceCoverageCoversClassPublicTest.php
deleted file mode 100644
index 45f583b..0000000
--- a/vendor/phpunit/php-code-coverage/tests/_files/NamespaceCoverageCoversClassPublicTest.php
+++ /dev/null
@@ -1,15 +0,0 @@
-<?php
-/**
- * @coversDefaultClass \Foo\CoveredClass
- */
-class NamespaceCoverageCoversClassPublicTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @covers ::publicMethod
-     */
-    public function testSomething()
-    {
-        $o = new Foo\CoveredClass;
-        $o->publicMethod();
-    }
-}
diff --git a/vendor/phpunit/php-code-coverage/tests/_files/NamespaceCoverageCoversClassTest.php b/vendor/phpunit/php-code-coverage/tests/_files/NamespaceCoverageCoversClassTest.php
deleted file mode 100644
index b336745..0000000
--- a/vendor/phpunit/php-code-coverage/tests/_files/NamespaceCoverageCoversClassTest.php
+++ /dev/null
@@ -1,20 +0,0 @@
-<?php
-/**
- * @coversDefaultClass \Foo\CoveredClass
- */
-class NamespaceCoverageCoversClassTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @covers ::privateMethod
-     * @covers ::protectedMethod
-     * @covers ::publicMethod
-     * @covers \Foo\CoveredParentClass::privateMethod
-     * @covers \Foo\CoveredParentClass::protectedMethod
-     * @covers \Foo\CoveredParentClass::publicMethod
-     */
-    public function testSomething()
-    {
-        $o = new Foo\CoveredClass;
-        $o->publicMethod();
-    }
-}
diff --git a/vendor/phpunit/php-code-coverage/tests/_files/NamespaceCoverageMethodTest.php b/vendor/phpunit/php-code-coverage/tests/_files/NamespaceCoverageMethodTest.php
deleted file mode 100644
index 35dfb8b..0000000
--- a/vendor/phpunit/php-code-coverage/tests/_files/NamespaceCoverageMethodTest.php
+++ /dev/null
@@ -1,12 +0,0 @@
-<?php
-class NamespaceCoverageMethodTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @covers Foo\CoveredClass::publicMethod
-     */
-    public function testSomething()
-    {
-        $o = new Foo\CoveredClass;
-        $o->publicMethod();
-    }
-}
diff --git a/vendor/phpunit/php-code-coverage/tests/_files/NamespaceCoverageNotPrivateTest.php b/vendor/phpunit/php-code-coverage/tests/_files/NamespaceCoverageNotPrivateTest.php
deleted file mode 100644
index 552c9ec..0000000
--- a/vendor/phpunit/php-code-coverage/tests/_files/NamespaceCoverageNotPrivateTest.php
+++ /dev/null
@@ -1,12 +0,0 @@
-<?php
-class NamespaceCoverageNotPrivateTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @covers Foo\CoveredClass::<!private>
-     */
-    public function testSomething()
-    {
-        $o = new Foo\CoveredClass;
-        $o->publicMethod();
-    }
-}
diff --git a/vendor/phpunit/php-code-coverage/tests/_files/NamespaceCoverageNotProtectedTest.php b/vendor/phpunit/php-code-coverage/tests/_files/NamespaceCoverageNotProtectedTest.php
deleted file mode 100644
index 33fc8c7..0000000
--- a/vendor/phpunit/php-code-coverage/tests/_files/NamespaceCoverageNotProtectedTest.php
+++ /dev/null
@@ -1,12 +0,0 @@
-<?php
-class NamespaceCoverageNotProtectedTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @covers Foo\CoveredClass::<!protected>
-     */
-    public function testSomething()
-    {
-        $o = new Foo\CoveredClass;
-        $o->publicMethod();
-    }
-}
diff --git a/vendor/phpunit/php-code-coverage/tests/_files/NamespaceCoverageNotPublicTest.php b/vendor/phpunit/php-code-coverage/tests/_files/NamespaceCoverageNotPublicTest.php
deleted file mode 100644
index ccbc500..0000000
--- a/vendor/phpunit/php-code-coverage/tests/_files/NamespaceCoverageNotPublicTest.php
+++ /dev/null
@@ -1,12 +0,0 @@
-<?php
-class NamespaceCoverageNotPublicTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @covers Foo\CoveredClass::<!public>
-     */
-    public function testSomething()
-    {
-        $o = new Foo\CoveredClass;
-        $o->publicMethod();
-    }
-}
diff --git a/vendor/phpunit/php-code-coverage/tests/_files/NamespaceCoveragePrivateTest.php b/vendor/phpunit/php-code-coverage/tests/_files/NamespaceCoveragePrivateTest.php
deleted file mode 100644
index cce7ba9..0000000
--- a/vendor/phpunit/php-code-coverage/tests/_files/NamespaceCoveragePrivateTest.php
+++ /dev/null
@@ -1,12 +0,0 @@
-<?php
-class NamespaceCoveragePrivateTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @covers Foo\CoveredClass::<private>
-     */
-    public function testSomething()
-    {
-        $o = new Foo\CoveredClass;
-        $o->publicMethod();
-    }
-}
diff --git a/vendor/phpunit/php-code-coverage/tests/_files/NamespaceCoverageProtectedTest.php b/vendor/phpunit/php-code-coverage/tests/_files/NamespaceCoverageProtectedTest.php
deleted file mode 100644
index dbbcc1c..0000000
--- a/vendor/phpunit/php-code-coverage/tests/_files/NamespaceCoverageProtectedTest.php
+++ /dev/null
@@ -1,12 +0,0 @@
-<?php
-class NamespaceCoverageProtectedTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @covers Foo\CoveredClass::<protected>
-     */
-    public function testSomething()
-    {
-        $o = new Foo\CoveredClass;
-        $o->publicMethod();
-    }
-}
diff --git a/vendor/phpunit/php-code-coverage/tests/_files/NamespaceCoveragePublicTest.php b/vendor/phpunit/php-code-coverage/tests/_files/NamespaceCoveragePublicTest.php
deleted file mode 100644
index bf1bff8..0000000
--- a/vendor/phpunit/php-code-coverage/tests/_files/NamespaceCoveragePublicTest.php
+++ /dev/null
@@ -1,12 +0,0 @@
-<?php
-class NamespaceCoveragePublicTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @covers Foo\CoveredClass::<public>
-     */
-    public function testSomething()
-    {
-        $o = new Foo\CoveredClass;
-        $o->publicMethod();
-    }
-}
diff --git a/vendor/phpunit/php-code-coverage/tests/_files/NamespaceCoveredClass.php b/vendor/phpunit/php-code-coverage/tests/_files/NamespaceCoveredClass.php
deleted file mode 100644
index 5bd0ddf..0000000
--- a/vendor/phpunit/php-code-coverage/tests/_files/NamespaceCoveredClass.php
+++ /dev/null
@@ -1,38 +0,0 @@
-<?php
-namespace Foo;
-
-class CoveredParentClass
-{
-    private function privateMethod()
-    {
-    }
-
-    protected function protectedMethod()
-    {
-        $this->privateMethod();
-    }
-
-    public function publicMethod()
-    {
-        $this->protectedMethod();
-    }
-}
-
-class CoveredClass extends CoveredParentClass
-{
-    private function privateMethod()
-    {
-    }
-
-    protected function protectedMethod()
-    {
-        parent::protectedMethod();
-        $this->privateMethod();
-    }
-
-    public function publicMethod()
-    {
-        parent::publicMethod();
-        $this->protectedMethod();
-    }
-}
diff --git a/vendor/phpunit/php-code-coverage/tests/_files/NotExistingCoveredElementTest.php b/vendor/phpunit/php-code-coverage/tests/_files/NotExistingCoveredElementTest.php
deleted file mode 100644
index be07ef4..0000000
--- a/vendor/phpunit/php-code-coverage/tests/_files/NotExistingCoveredElementTest.php
+++ /dev/null
@@ -1,24 +0,0 @@
-<?php
-class NotExistingCoveredElementTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @covers NotExistingClass
-     */
-    public function testOne()
-    {
-    }
-
-    /**
-     * @covers NotExistingClass::notExistingMethod
-     */
-    public function testTwo()
-    {
-    }
-
-    /**
-     * @covers NotExistingClass::<public>
-     */
-    public function testThree()
-    {
-    }
-}
diff --git a/vendor/phpunit/php-code-coverage/tests/_files/class-with-anonymous-function-clover.xml b/vendor/phpunit/php-code-coverage/tests/_files/class-with-anonymous-function-clover.xml
deleted file mode 100644
index ac43b80..0000000
--- a/vendor/phpunit/php-code-coverage/tests/_files/class-with-anonymous-function-clover.xml
+++ /dev/null
@@ -1,22 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<coverage generated="%i">
-  <project timestamp="%i">
-    <file name="%s/source_with_class_and_anonymous_function.php">
-      <class name="CoveredClassWithAnonymousFunctionInStaticMethod" namespace="global">
-        <metrics methods="2" coveredmethods="1" conditionals="0" coveredconditionals="0" statements="5" coveredstatements="4" elements="7" coveredelements="5"/>
-      </class>
-      <line num="5" type="method" name="runAnonymous" crap="1.04" count="1"/>
-      <line num="7" type="stmt" count="1"/>
-      <line num="9" type="stmt" count="1"/>
-      <line num="10" type="stmt" count="0"/>
-      <line num="11" type="method" name="anonymous function" crap="1" count="1"/>
-      <line num="12" type="stmt" count="1"/>
-      <line num="13" type="stmt" count="1"/>
-      <line num="14" type="stmt" count="1"/>
-      <line num="17" type="stmt" count="1"/>
-      <line num="18" type="stmt" count="1"/>
-      <metrics loc="19" ncloc="17" classes="1" methods="2" coveredmethods="1" conditionals="0" coveredconditionals="0" statements="8" coveredstatements="7" elements="10" coveredelements="8"/>
-    </file>
-    <metrics files="1" loc="19" ncloc="17" classes="1" methods="2" coveredmethods="1" conditionals="0" coveredconditionals="0" statements="8" coveredstatements="7" elements="10" coveredelements="8"/>
-  </project>
-</coverage>
diff --git a/vendor/phpunit/php-code-coverage/tests/_files/ignored-lines-clover.xml b/vendor/phpunit/php-code-coverage/tests/_files/ignored-lines-clover.xml
deleted file mode 100644
index cda929c..0000000
--- a/vendor/phpunit/php-code-coverage/tests/_files/ignored-lines-clover.xml
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<coverage generated="%i">
-  <project timestamp="%i">
-    <file name="%s/source_with_ignore.php">
-      <class name="Foo" namespace="global">
-        <metrics methods="0" coveredmethods="0" conditionals="0" coveredconditionals="0" statements="0" coveredstatements="0" elements="0" coveredelements="0"/>
-      </class>
-      <class name="Bar" namespace="global">
-        <metrics methods="0" coveredmethods="0" conditionals="0" coveredconditionals="0" statements="0" coveredstatements="0" elements="0" coveredelements="0"/>
-      </class>
-      <line num="2" type="stmt" count="1"/>
-      <line num="6" type="stmt" count="0"/>
-      <metrics loc="37" ncloc="25" classes="2" methods="0" coveredmethods="0" conditionals="0" coveredconditionals="0" statements="2" coveredstatements="1" elements="2" coveredelements="1"/>
-    </file>
-    <metrics files="1" loc="37" ncloc="25" classes="2" methods="0" coveredmethods="0" conditionals="0" coveredconditionals="0" statements="2" coveredstatements="1" elements="2" coveredelements="1"/>
-  </project>
-</coverage>
diff --git a/vendor/phpunit/php-code-coverage/tests/_files/source_with_class_and_anonymous_function.php b/vendor/phpunit/php-code-coverage/tests/_files/source_with_class_and_anonymous_function.php
deleted file mode 100644
index eaba387..0000000
--- a/vendor/phpunit/php-code-coverage/tests/_files/source_with_class_and_anonymous_function.php
+++ /dev/null
@@ -1,19 +0,0 @@
-<?php
-
-class CoveredClassWithAnonymousFunctionInStaticMethod
-{
-    public static function runAnonymous()
-    {
-        $filter = array('abc124', 'abc123', '123');
-
-        array_walk(
-            $filter,
-            function (&$val, $key) {
-                $val = preg_replace('|[^0-9]|', '', $val);
-            }
-        );
-
-        // Should be covered
-        $extravar = true;
-    }
-}
diff --git a/vendor/phpunit/php-code-coverage/tests/_files/source_with_ignore.php b/vendor/phpunit/php-code-coverage/tests/_files/source_with_ignore.php
deleted file mode 100644
index dd9aa12..0000000
--- a/vendor/phpunit/php-code-coverage/tests/_files/source_with_ignore.php
+++ /dev/null
@@ -1,37 +0,0 @@
-<?php
-if ($neverHappens) {
-    // @codeCoverageIgnoreStart
-    print '*';
-    // @codeCoverageIgnoreEnd
-}
-
-/**
- * @codeCoverageIgnore
- */
-class Foo
-{
-    public function bar()
-    {
-    }
-}
-
-class Bar
-{
-    /**
-     * @codeCoverageIgnore
-     */
-    public function foo()
-    {
-    }
-}
-
-function baz()
-{
-    print '*'; // @codeCoverageIgnore
-}
-
-interface Bor
-{
-    public function foo();
-
-}
diff --git a/vendor/phpunit/php-code-coverage/tests/_files/source_with_namespace.php b/vendor/phpunit/php-code-coverage/tests/_files/source_with_namespace.php
deleted file mode 100644
index fb9dfa3..0000000
--- a/vendor/phpunit/php-code-coverage/tests/_files/source_with_namespace.php
+++ /dev/null
@@ -1,20 +0,0 @@
-<?php
-namespace bar\baz;
-
-/**
- * Represents foo.
- */
-class source_with_namespace
-{
-}
-
-/**
- * @param mixed $bar
- */
-function &foo($bar)
-{
-    $baz = function () {};
-    $a   = true ? true : false;
-    $b   = "{$a}";
-    $c   = "${b}";
-}
diff --git a/vendor/phpunit/php-code-coverage/tests/_files/source_with_oneline_annotations.php b/vendor/phpunit/php-code-coverage/tests/_files/source_with_oneline_annotations.php
deleted file mode 100644
index 19dd4cd..0000000
--- a/vendor/phpunit/php-code-coverage/tests/_files/source_with_oneline_annotations.php
+++ /dev/null
@@ -1,36 +0,0 @@
-<?php
-
-/** Docblock */
-interface Foo
-{
-    public function bar();
-}
-
-class Foo
-{
-    public function bar()
-    {
-    }
-}
-
-function baz()
-{
-    // a one-line comment
-    print '*'; // a one-line comment
-
-    /* a one-line comment */
-    print '*'; /* a one-line comment */
-
-    /* a one-line comment
-     */
-    print '*'; /* a one-line comment
-    */
-
-    print '*'; // @codeCoverageIgnore
-
-    print '*'; // @codeCoverageIgnoreStart
-    print '*';
-    print '*'; // @codeCoverageIgnoreEnd
-
-    print '*';
-}
diff --git a/vendor/phpunit/php-code-coverage/tests/_files/source_without_ignore.php b/vendor/phpunit/php-code-coverage/tests/_files/source_without_ignore.php
deleted file mode 100644
index be4e836..0000000
--- a/vendor/phpunit/php-code-coverage/tests/_files/source_without_ignore.php
+++ /dev/null
@@ -1,4 +0,0 @@
-<?php
-if ($neverHappens) {
-    print '*';
-}
diff --git a/vendor/phpunit/php-code-coverage/tests/_files/source_without_namespace.php b/vendor/phpunit/php-code-coverage/tests/_files/source_without_namespace.php
deleted file mode 100644
index a291e74..0000000
--- a/vendor/phpunit/php-code-coverage/tests/_files/source_without_namespace.php
+++ /dev/null
@@ -1,18 +0,0 @@
-<?php
-/**
- * Represents foo.
- */
-class Foo
-{
-}
-
-/**
- * @param mixed $bar
- */
-function &foo($bar)
-{
-    $baz = function () {};
-    $a   = true ? true : false;
-    $b   = "{$a}";
-    $c   = "${b}";
-}
diff --git a/vendor/phpunit/php-timer/Tests/TimerTest.php b/vendor/phpunit/php-timer/Tests/TimerTest.php
deleted file mode 100644
index 9d97d30..0000000
--- a/vendor/phpunit/php-timer/Tests/TimerTest.php
+++ /dev/null
@@ -1,101 +0,0 @@
-<?php
-/*
- * This file is part of the PHP_Timer package.
- *
- * (c) Sebastian Bergmann <sebastian@phpunit.de>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-/**
- * Tests for PHP_Timer.
- *
- * @since      Class available since Release 1.0.0
- */
-class PHP_TimerTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @covers PHP_Timer::start
-     * @covers PHP_Timer::stop
-     */
-    public function testStartStop()
-    {
-        $this->assertInternalType('float', PHP_Timer::stop());
-    }
-
-    /**
-     * @covers       PHP_Timer::secondsToTimeString
-     * @dataProvider secondsProvider
-     */
-    public function testSecondsToTimeString($string, $seconds)
-    {
-        $this->assertEquals(
-            $string,
-            PHP_Timer::secondsToTimeString($seconds)
-        );
-    }
-
-    /**
-     * @covers PHP_Timer::timeSinceStartOfRequest
-     */
-    public function testTimeSinceStartOfRequest()
-    {
-        $this->assertStringMatchesFormat(
-            '%f %s',
-            PHP_Timer::timeSinceStartOfRequest()
-        );
-    }
-
-
-    /**
-     * @covers PHP_Timer::resourceUsage
-     */
-    public function testResourceUsage()
-    {
-        $this->assertStringMatchesFormat(
-            'Time: %s, Memory: %s',
-            PHP_Timer::resourceUsage()
-        );
-    }
-
-    public function secondsProvider()
-    {
-        return array(
-          array('0 ms', 0),
-          array('1 ms', .001),
-          array('10 ms', .01),
-          array('100 ms', .1),
-          array('999 ms', .999),
-          array('1 second', .9999),
-          array('1 second', 1),
-          array('2 seconds', 2),
-          array('59.9 seconds', 59.9),
-          array('59.99 seconds', 59.99),
-          array('59.99 seconds', 59.999),
-          array('1 minute', 59.9999),
-          array('59 seconds', 59.001),
-          array('59.01 seconds', 59.01),
-          array('1 minute', 60),
-          array('1.01 minutes', 61),
-          array('2 minutes', 120),
-          array('2.01 minutes', 121),
-          array('59.99 minutes', 3599.9),
-          array('59.99 minutes', 3599.99),
-          array('59.99 minutes', 3599.999),
-          array('1 hour', 3599.9999),
-          array('59.98 minutes', 3599.001),
-          array('59.98 minutes', 3599.01),
-          array('1 hour', 3600),
-          array('1 hour', 3601),
-          array('1 hour', 3601.9),
-          array('1 hour', 3601.99),
-          array('1 hour', 3601.999),
-          array('1 hour', 3601.9999),
-          array('1.01 hours', 3659.9999),
-          array('1.01 hours', 3659.001),
-          array('1.01 hours', 3659.01),
-          array('2 hours', 7199.9999),
-        );
-    }
-}
diff --git a/vendor/phpunit/php-token-stream/tests/Token/ClassTest.php b/vendor/phpunit/php-token-stream/tests/Token/ClassTest.php
deleted file mode 100644
index 4ba0296..0000000
--- a/vendor/phpunit/php-token-stream/tests/Token/ClassTest.php
+++ /dev/null
@@ -1,112 +0,0 @@
-<?php
-/*
- * This file is part of the PHP_TokenStream package.
- *
- * (c) Sebastian Bergmann <sebastian@phpunit.de>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-/**
- * Tests for the PHP_Token_CLASS class.
- *
- * @package    PHP_TokenStream
- * @subpackage Tests
- * @author     Laurent Laville <pear@laurent-laville.org>
- * @copyright  Sebastian Bergmann <sebastian@phpunit.de>
- * @license    http://www.opensource.org/licenses/BSD-3-Clause  The BSD 3-Clause License
- * @version    Release: @package_version@
- * @link       http://github.com/sebastianbergmann/php-token-stream/
- * @since      Class available since Release 1.0.2
- */
-class PHP_Token_ClassTest extends PHPUnit_Framework_TestCase
-{
-    protected $class;
-    protected $function;
-
-    protected function setUp()
-    {
-        $ts = new PHP_Token_Stream(TEST_FILES_PATH . 'source2.php');
-
-        foreach ($ts as $token) {
-            if ($token instanceof PHP_Token_CLASS) {
-                $this->class = $token;
-            }
-
-            if ($token instanceof PHP_Token_FUNCTION) {
-                $this->function = $token;
-                break;
-            }
-        }
-    }
-
-    /**
-     * @covers PHP_Token_CLASS::getKeywords
-     */
-    public function testGetClassKeywords()
-    {
-        $this->assertEquals('abstract', $this->class->getKeywords());
-    }
-
-    /**
-     * @covers PHP_Token_FUNCTION::getKeywords
-     */
-    public function testGetFunctionKeywords()
-    {
-        $this->assertEquals('abstract,static', $this->function->getKeywords());
-    }
-
-    /**
-     * @covers PHP_Token_FUNCTION::getVisibility
-     */
-    public function testGetFunctionVisibility()
-    {
-        $this->assertEquals('public', $this->function->getVisibility());
-    }
-
-    public function testIssue19()
-    {
-        $ts = new PHP_Token_Stream(TEST_FILES_PATH . 'issue19.php');
-
-        foreach ($ts as $token) {
-            if ($token instanceof PHP_Token_CLASS) {
-                $this->assertFalse($token->hasInterfaces());
-            }
-        }
-    }
-
-    public function testIssue30()
-    {
-        $ts = new PHP_Token_Stream(TEST_FILES_PATH . 'issue30.php');
-        $this->assertCount(1, $ts->getClasses());
-    }
-
-    /**
-     * @requires PHP 7
-     */
-    public function testAnonymousClassesAreHandledCorrectly()
-    {
-        $ts = new PHP_Token_Stream(TEST_FILES_PATH . 'class_with_method_that_declares_anonymous_class.php');
-
-        $classes = $ts->getClasses();
-
-        $this->assertEquals(array('class_with_method_that_declares_anonymous_class'), array_keys($classes));
-    }
-
-    /**
-     * @requires PHP 7
-     * @ticket   https://github.com/sebastianbergmann/php-token-stream/issues/52
-     */
-    public function testAnonymousClassesAreHandledCorrectly2()
-    {
-        $ts = new PHP_Token_Stream(TEST_FILES_PATH . 'class_with_method_that_declares_anonymous_class2.php');
-
-        $classes = $ts->getClasses();
-
-        $this->assertEquals(array('Test'), array_keys($classes));
-        $this->assertEquals(array('methodOne', 'methodTwo'), array_keys($classes['Test']['methods']));
-
-        $this->assertEmpty($ts->getFunctions());
-    }
-}
diff --git a/vendor/phpunit/php-token-stream/tests/Token/ClosureTest.php b/vendor/phpunit/php-token-stream/tests/Token/ClosureTest.php
deleted file mode 100644
index f1e508c..0000000
--- a/vendor/phpunit/php-token-stream/tests/Token/ClosureTest.php
+++ /dev/null
@@ -1,85 +0,0 @@
-<?php
-/*
- * This file is part of the PHP_TokenStream package.
- *
- * (c) Sebastian Bergmann <sebastian@phpunit.de>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-/**
- * Tests for the PHP_Token_FUNCTION class.
- *
- * @package    PHP_TokenStream
- * @subpackage Tests
- * @author     Sebastian Bergmann <sebastian@phpunit.de>
- * @copyright  Sebastian Bergmann <sebastian@phpunit.de>
- * @license    http://www.opensource.org/licenses/BSD-3-Clause  The BSD 3-Clause License
- * @version    Release: @package_version@
- * @link       http://github.com/sebastianbergmann/php-token-stream/
- * @since      Class available since Release 1.0.0
- */
-class PHP_Token_ClosureTest extends PHPUnit_Framework_TestCase
-{
-    protected $functions;
-
-    protected function setUp()
-    {
-        $ts = new PHP_Token_Stream(TEST_FILES_PATH . 'closure.php');
-
-        foreach ($ts as $token) {
-            if ($token instanceof PHP_Token_FUNCTION) {
-                $this->functions[] = $token;
-            }
-        }
-    }
-
-    /**
-     * @covers PHP_Token_FUNCTION::getArguments
-     */
-    public function testGetArguments()
-    {
-        $this->assertEquals(array('$foo' => null, '$bar' => null), $this->functions[0]->getArguments());
-        $this->assertEquals(array('$foo' => 'Foo', '$bar' => null), $this->functions[1]->getArguments());
-        $this->assertEquals(array('$foo' => null, '$bar' => null, '$baz' => null), $this->functions[2]->getArguments());
-        $this->assertEquals(array('$foo' => 'Foo', '$bar' => null, '$baz' => null), $this->functions[3]->getArguments());
-        $this->assertEquals(array(), $this->functions[4]->getArguments());
-        $this->assertEquals(array(), $this->functions[5]->getArguments());
-    }
-
-    /**
-     * @covers PHP_Token_FUNCTION::getName
-     */
-    public function testGetName()
-    {
-        $this->assertEquals('anonymous function', $this->functions[0]->getName());
-        $this->assertEquals('anonymous function', $this->functions[1]->getName());
-        $this->assertEquals('anonymous function', $this->functions[2]->getName());
-        $this->assertEquals('anonymous function', $this->functions[3]->getName());
-        $this->assertEquals('anonymous function', $this->functions[4]->getName());
-        $this->assertEquals('anonymous function', $this->functions[5]->getName());
-    }
-
-    /**
-     * @covers PHP_Token::getLine
-     */
-    public function testGetLine()
-    {
-        $this->assertEquals(2, $this->functions[0]->getLine());
-        $this->assertEquals(3, $this->functions[1]->getLine());
-        $this->assertEquals(4, $this->functions[2]->getLine());
-        $this->assertEquals(5, $this->functions[3]->getLine());
-    }
-
-    /**
-     * @covers PHP_TokenWithScope::getEndLine
-     */
-    public function testGetEndLine()
-    {
-        $this->assertEquals(2, $this->functions[0]->getLine());
-        $this->assertEquals(3, $this->functions[1]->getLine());
-        $this->assertEquals(4, $this->functions[2]->getLine());
-        $this->assertEquals(5, $this->functions[3]->getLine());
-    }
-}
diff --git a/vendor/phpunit/php-token-stream/tests/Token/FunctionTest.php b/vendor/phpunit/php-token-stream/tests/Token/FunctionTest.php
deleted file mode 100644
index 4f23c39..0000000
--- a/vendor/phpunit/php-token-stream/tests/Token/FunctionTest.php
+++ /dev/null
@@ -1,146 +0,0 @@
-<?php
-/*
- * This file is part of the PHP_TokenStream package.
- *
- * (c) Sebastian Bergmann <sebastian@phpunit.de>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-/**
- * Tests for the PHP_Token_FUNCTION class.
- *
- * @package    PHP_TokenStream
- * @subpackage Tests
- * @author     Sebastian Bergmann <sebastian@phpunit.de>
- * @copyright  Sebastian Bergmann <sebastian@phpunit.de>
- * @license    http://www.opensource.org/licenses/BSD-3-Clause  The BSD 3-Clause License
- * @version    Release: @package_version@
- * @link       http://github.com/sebastianbergmann/php-token-stream/
- * @since      Class available since Release 1.0.0
- */
-class PHP_Token_FunctionTest extends PHPUnit_Framework_TestCase
-{
-    protected $functions;
-
-    protected function setUp()
-    {
-        $ts = new PHP_Token_Stream(TEST_FILES_PATH . 'source.php');
-
-        foreach ($ts as $token) {
-            if ($token instanceof PHP_Token_FUNCTION) {
-                $this->functions[] = $token;
-            }
-        }
-    }
-
-    /**
-     * @covers PHP_Token_FUNCTION::getArguments
-     */
-    public function testGetArguments()
-    {
-        $this->assertEquals(array(), $this->functions[0]->getArguments());
-
-        $this->assertEquals(
-          array('$baz' => 'Baz'), $this->functions[1]->getArguments()
-        );
-
-        $this->assertEquals(
-          array('$foobar' => 'Foobar'), $this->functions[2]->getArguments()
-        );
-
-        $this->assertEquals(
-          array('$barfoo' => 'Barfoo'), $this->functions[3]->getArguments()
-        );
-
-        $this->assertEquals(array(), $this->functions[4]->getArguments());
-
-        $this->assertEquals(array('$x' => null, '$y' => null), $this->functions[5]->getArguments());
-    }
-
-    /**
-     * @covers PHP_Token_FUNCTION::getName
-     */
-    public function testGetName()
-    {
-        $this->assertEquals('foo', $this->functions[0]->getName());
-        $this->assertEquals('bar', $this->functions[1]->getName());
-        $this->assertEquals('foobar', $this->functions[2]->getName());
-        $this->assertEquals('barfoo', $this->functions[3]->getName());
-        $this->assertEquals('baz', $this->functions[4]->getName());
-    }
-
-    /**
-     * @covers PHP_Token::getLine
-     */
-    public function testGetLine()
-    {
-        $this->assertEquals(5, $this->functions[0]->getLine());
-        $this->assertEquals(10, $this->functions[1]->getLine());
-        $this->assertEquals(17, $this->functions[2]->getLine());
-        $this->assertEquals(21, $this->functions[3]->getLine());
-        $this->assertEquals(29, $this->functions[4]->getLine());
-    }
-
-    /**
-     * @covers PHP_TokenWithScope::getEndLine
-     */
-    public function testGetEndLine()
-    {
-        $this->assertEquals(5, $this->functions[0]->getEndLine());
-        $this->assertEquals(12, $this->functions[1]->getEndLine());
-        $this->assertEquals(19, $this->functions[2]->getEndLine());
-        $this->assertEquals(23, $this->functions[3]->getEndLine());
-        $this->assertEquals(31, $this->functions[4]->getEndLine());
-    }
-
-    /**
-     * @covers PHP_Token_FUNCTION::getDocblock
-     */
-    public function testGetDocblock()
-    {
-        $this->assertNull($this->functions[0]->getDocblock());
-
-        $this->assertEquals(
-          "/**\n     * @param Baz \$baz\n     */",
-          $this->functions[1]->getDocblock()
-        );
-
-        $this->assertEquals(
-          "/**\n     * @param Foobar \$foobar\n     */",
-          $this->functions[2]->getDocblock()
-        );
-
-        $this->assertNull($this->functions[3]->getDocblock());
-        $this->assertNull($this->functions[4]->getDocblock());
-    }
-
-    public function testSignature()
-    {
-        $ts = new PHP_Token_Stream(TEST_FILES_PATH . 'source5.php');
-        $f  = $ts->getFunctions();
-        $c  = $ts->getClasses();
-        $i  = $ts->getInterfaces();
-
-        $this->assertEquals(
-          'foo($a, array $b, array $c = array())',
-          $f['foo']['signature']
-        );
-
-        $this->assertEquals(
-          'm($a, array $b, array $c = array())',
-          $c['c']['methods']['m']['signature']
-        );
-
-        $this->assertEquals(
-          'm($a, array $b, array $c = array())',
-          $c['a']['methods']['m']['signature']
-        );
-
-        $this->assertEquals(
-          'm($a, array $b, array $c = array())',
-          $i['i']['methods']['m']['signature']
-        );
-    }
-}
diff --git a/vendor/phpunit/php-token-stream/tests/Token/IncludeTest.php b/vendor/phpunit/php-token-stream/tests/Token/IncludeTest.php
deleted file mode 100644
index 1e43351..0000000
--- a/vendor/phpunit/php-token-stream/tests/Token/IncludeTest.php
+++ /dev/null
@@ -1,73 +0,0 @@
-<?php
-/*
- * This file is part of the PHP_TokenStream package.
- *
- * (c) Sebastian Bergmann <sebastian@phpunit.de>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-/**
- * Tests for the PHP_Token_REQUIRE_ONCE, PHP_Token_REQUIRE
- * PHP_Token_INCLUDE_ONCE and PHP_Token_INCLUDE_ONCE classes.
- *
- * @package    PHP_TokenStream
- * @subpackage Tests
- * @author     Laurent Laville <pear@laurent-laville.org>
- * @copyright  Sebastian Bergmann <sebastian@phpunit.de>
- * @license    http://www.opensource.org/licenses/BSD-3-Clause  The BSD 3-Clause License
- * @version    Release: @package_version@
- * @link       http://github.com/sebastianbergmann/php-token-stream/
- * @since      Class available since Release 1.0.2
- */
-class PHP_Token_IncludeTest extends PHPUnit_Framework_TestCase
-{
-    protected $ts;
-
-    protected function setUp()
-    {
-        $this->ts = new PHP_Token_Stream(TEST_FILES_PATH . 'source3.php');
-    }
-
-    /**
-     * @covers PHP_Token_Includes::getName
-     * @covers PHP_Token_Includes::getType
-     */
-    public function testGetIncludes()
-    {
-        $this->assertSame(
-          array('test4.php', 'test3.php', 'test2.php', 'test1.php'),
-          $this->ts->getIncludes()
-        );
-    }
-
-    /**
-     * @covers PHP_Token_Includes::getName
-     * @covers PHP_Token_Includes::getType
-     */
-    public function testGetIncludesCategorized()
-    {
-        $this->assertSame(
-          array(
-            'require_once' => array('test4.php'),
-            'require'      => array('test3.php'),
-            'include_once' => array('test2.php'),
-            'include'      => array('test1.php')
-          ),
-          $this->ts->getIncludes(TRUE)
-        );
-    }
-
-    /**
-     * @covers PHP_Token_Includes::getName
-     * @covers PHP_Token_Includes::getType
-     */
-    public function testGetIncludesCategory()
-    {
-        $this->assertSame(
-          array('test4.php'),
-          $this->ts->getIncludes(TRUE, 'require_once')
-        );
-    }
-}
diff --git a/vendor/phpunit/php-token-stream/tests/Token/InterfaceTest.php b/vendor/phpunit/php-token-stream/tests/Token/InterfaceTest.php
deleted file mode 100644
index 56caede..0000000
--- a/vendor/phpunit/php-token-stream/tests/Token/InterfaceTest.php
+++ /dev/null
@@ -1,191 +0,0 @@
-<?php
-/*
- * This file is part of the PHP_TokenStream package.
- *
- * (c) Sebastian Bergmann <sebastian@phpunit.de>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-/**
- * Tests for the PHP_Token_INTERFACE class.
- *
- * @package    PHP_TokenStream
- * @subpackage Tests
- * @author     Sebastian Bergmann <sebastian@phpunit.de>
- * @author     Laurent Laville <pear@laurent-laville.org>
- * @copyright  Sebastian Bergmann <sebastian@phpunit.de>
- * @license    http://www.opensource.org/licenses/BSD-3-Clause  The BSD 3-Clause License
- * @version    Release: @package_version@
- * @link       http://github.com/sebastianbergmann/php-token-stream/
- * @since      Class available since Release 1.0.0
- */
-class PHP_Token_InterfaceTest extends PHPUnit_Framework_TestCase
-{
-    protected $class;
-    protected $interfaces;
-
-    protected function setUp()
-    {
-        $ts = new PHP_Token_Stream(TEST_FILES_PATH . 'source4.php');
-        $i  = 0;
-        foreach ($ts as $token) {
-            if ($token instanceof PHP_Token_CLASS) {
-                $this->class = $token;
-            }
-            elseif ($token instanceof PHP_Token_INTERFACE) {
-                $this->interfaces[$i] = $token;
-                $i++;
-            }
-        }
-    }
-
-    /**
-     * @covers PHP_Token_INTERFACE::getName
-     */
-    public function testGetName()
-    {
-        $this->assertEquals(
-            'iTemplate', $this->interfaces[0]->getName()
-        );
-    }
-
-    /**
-     * @covers PHP_Token_INTERFACE::getParent
-     */
-    public function testGetParentNotExists()
-    {
-        $this->assertFalse(
-            $this->interfaces[0]->getParent()
-        );
-    }
-
-    /**
-     * @covers PHP_Token_INTERFACE::hasParent
-     */
-    public function testHasParentNotExists()
-    {
-        $this->assertFalse(
-            $this->interfaces[0]->hasParent()
-        );
-    }
-
-    /**
-     * @covers PHP_Token_INTERFACE::getParent
-     */
-    public function testGetParentExists()
-    {
-        $this->assertEquals(
-            'a', $this->interfaces[2]->getParent()
-        );
-    }
-
-    /**
-     * @covers PHP_Token_INTERFACE::hasParent
-     */
-    public function testHasParentExists()
-    {
-        $this->assertTrue(
-            $this->interfaces[2]->hasParent()
-        );
-    }
-
-    /**
-     * @covers PHP_Token_INTERFACE::getInterfaces
-     */
-    public function testGetInterfacesExists()
-    {
-        $this->assertEquals(
-            array('b'),
-            $this->class->getInterfaces()
-        );
-    }
-
-    /**
-     * @covers PHP_Token_INTERFACE::hasInterfaces
-     */
-    public function testHasInterfacesExists()
-    {
-        $this->assertTrue(
-            $this->class->hasInterfaces()
-        );
-    }
-    /**
-     * @covers PHP_Token_INTERFACE::getPackage
-     */
-    public function testGetPackageNamespace() {
-        $tokenStream = new PHP_Token_Stream(TEST_FILES_PATH . 'classInNamespace.php');
-        foreach($tokenStream as $token) {
-            if($token instanceOf PHP_Token_INTERFACE) {
-                $package = $token->getPackage();
-                $this->assertSame('Foo\\Bar', $package['namespace']);
-            }
-        }
-    }
-
-
-    public function provideFilesWithClassesWithinMultipleNamespaces() {
-        return array(
-            array(TEST_FILES_PATH . 'multipleNamespacesWithOneClassUsingBraces.php'),
-            array(TEST_FILES_PATH . 'multipleNamespacesWithOneClassUsingNonBraceSyntax.php'),
-        );
-    }
-
-    /**
-     * @dataProvider provideFilesWithClassesWithinMultipleNamespaces
-     * @covers PHP_Token_INTERFACE::getPackage
-     */
-    public function testGetPackageNamespaceForFileWithMultipleNamespaces($filepath) {
-        $tokenStream = new PHP_Token_Stream($filepath);
-        $firstClassFound = false;
-        foreach($tokenStream as $token) {
-            if($firstClassFound === false && $token instanceOf PHP_Token_INTERFACE) {
-                $package = $token->getPackage();
-                $this->assertSame('TestClassInBar', $token->getName());
-                $this->assertSame('Foo\\Bar', $package['namespace']);
-                $firstClassFound = true;
-                continue;
-            }
-            // Secound class
-            if($token instanceOf PHP_Token_INTERFACE) {
-                $package = $token->getPackage();
-                $this->assertSame('TestClassInBaz', $token->getName());
-                $this->assertSame('Foo\\Baz', $package['namespace']);
-                return;
-            }
-        }
-        $this->fail("Seachring for 2 classes failed");
-    }
-
-    public function testGetPackageNamespaceIsEmptyForInterfacesThatAreNotWithinNamespaces() {
-        foreach($this->interfaces as $token) {
-            $package = $token->getPackage();
-            $this->assertSame("", $package['namespace']);
-        }
-    }
-
-    /**
-     * @covers PHP_Token_INTERFACE::getPackage
-     */
-    public function testGetPackageNamespaceWhenExtentingFromNamespaceClass() {
-        $tokenStream = new PHP_Token_Stream(TEST_FILES_PATH . 'classExtendsNamespacedClass.php');
-        $firstClassFound = false;
-        foreach($tokenStream as $token) {
-            if($firstClassFound === false && $token instanceOf PHP_Token_INTERFACE) {
-                $package = $token->getPackage();
-                $this->assertSame('Baz', $token->getName());
-                $this->assertSame('Foo\\Bar', $package['namespace']);
-                $firstClassFound = true;
-                continue;
-            }
-            if($token instanceOf PHP_Token_INTERFACE) {
-                $package = $token->getPackage();
-                $this->assertSame('Extender', $token->getName());
-                $this->assertSame('Other\\Space', $package['namespace']);
-                return;
-            }
-        }
-        $this->fail("Searching for 2 classes failed");
-    }
-}
diff --git a/vendor/phpunit/php-token-stream/tests/Token/NamespaceTest.php b/vendor/phpunit/php-token-stream/tests/Token/NamespaceTest.php
deleted file mode 100644
index 469f787..0000000
--- a/vendor/phpunit/php-token-stream/tests/Token/NamespaceTest.php
+++ /dev/null
@@ -1,80 +0,0 @@
-<?php
-/*
- * This file is part of the PHP_TokenStream package.
- *
- * (c) Sebastian Bergmann <sebastian@phpunit.de>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-/**
- * Tests for the PHP_Token_NAMESPACE class.
- *
- * @package    PHP_TokenStream
- * @subpackage Tests
- * @author     Sebastian Bergmann <sebastian@phpunit.de>
- * @copyright  Sebastian Bergmann <sebastian@phpunit.de>
- * @license    http://www.opensource.org/licenses/BSD-3-Clause  The BSD 3-Clause License
- * @version    Release: @package_version@
- * @link       http://github.com/sebastianbergmann/php-token-stream/
- * @since      Class available since Release 1.0.0
- */
-class PHP_Token_NamespaceTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @covers PHP_Token_NAMESPACE::getName
-     */
-    public function testGetName()
-    {
-        $tokenStream = new PHP_Token_Stream(
-          TEST_FILES_PATH . 'classInNamespace.php'
-        );
-
-        foreach ($tokenStream as $token) {
-            if ($token instanceof PHP_Token_NAMESPACE) {
-                $this->assertSame('Foo\\Bar', $token->getName());
-            }
-        }
-    }
-
-    public function testGetStartLineWithUnscopedNamespace()
-    {
-        $tokenStream = new PHP_Token_Stream(TEST_FILES_PATH . 'classInNamespace.php');
-        foreach($tokenStream as $token) {
-            if($token instanceOf PHP_Token_NAMESPACE) {
-                $this->assertSame(2, $token->getLine());
-            }
-        }
-    }
-
-    public function testGetEndLineWithUnscopedNamespace()
-    {
-        $tokenStream = new PHP_Token_Stream(TEST_FILES_PATH . 'classInNamespace.php');
-        foreach($tokenStream as $token) {
-            if($token instanceOf PHP_Token_NAMESPACE) {
-                $this->assertSame(2, $token->getEndLine());
-            }
-        }
-    }
-    public function testGetStartLineWithScopedNamespace()
-    {
-        $tokenStream = new PHP_Token_Stream(TEST_FILES_PATH . 'classInScopedNamespace.php');
-        foreach($tokenStream as $token) {
-            if($token instanceOf PHP_Token_NAMESPACE) {
-                $this->assertSame(2, $token->getLine());
-            }
-        }
-    }
-
-    public function testGetEndLineWithScopedNamespace()
-    {
-        $tokenStream = new PHP_Token_Stream(TEST_FILES_PATH . 'classInScopedNamespace.php');
-        foreach($tokenStream as $token) {
-            if($token instanceOf PHP_Token_NAMESPACE) {
-                $this->assertSame(8, $token->getEndLine());
-            }
-        }
-    }
-
-}
diff --git a/vendor/phpunit/php-token-stream/tests/TokenTest.php b/vendor/phpunit/php-token-stream/tests/TokenTest.php
deleted file mode 100644
index 67bf79a..0000000
--- a/vendor/phpunit/php-token-stream/tests/TokenTest.php
+++ /dev/null
@@ -1,42 +0,0 @@
-<?php
-/*
- * This file is part of the PHP_TokenStream package.
- *
- * (c) Sebastian Bergmann <sebastian@phpunit.de>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-/**
- * Tests for the PHP_Token class.
- *
- * @package    PHP_TokenStream
- * @subpackage Tests
- * @author     Sebastian Bergmann <sebastian@phpunit.de>
- * @copyright  Sebastian Bergmann <sebastian@phpunit.de>
- * @license    http://www.opensource.org/licenses/BSD-3-Clause  The BSD 3-Clause License
- * @version    Release: @package_version@
- * @link       http://github.com/sebastianbergmann/php-token-stream/
- * @since      Class available since Release 1.0.0
- */
-class PHP_TokenTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @covers PHP_Token::__construct
-     * @covers PHP_Token::__toString
-     */
-    public function testToString()
-    {
-        $this->markTestIncomplete();
-    }
-
-    /**
-     * @covers PHP_Token::__construct
-     * @covers PHP_Token::getLine
-     */
-    public function testGetLine()
-    {
-        $this->markTestIncomplete();
-    }
-}
diff --git a/vendor/phpunit/php-token-stream/tests/_fixture/classExtendsNamespacedClass.php b/vendor/phpunit/php-token-stream/tests/_fixture/classExtendsNamespacedClass.php
deleted file mode 100644
index 560eec9..0000000
--- a/vendor/phpunit/php-token-stream/tests/_fixture/classExtendsNamespacedClass.php
+++ /dev/null
@@ -1,10 +0,0 @@
-<?php
-
-namespace Foo\Bar;
-
-class Baz {}
-
-namespace Other\Space;
-
-class Extender extends \Foo\Bar\Baz {}
-
diff --git a/vendor/phpunit/php-token-stream/tests/_fixture/classInNamespace.php b/vendor/phpunit/php-token-stream/tests/_fixture/classInNamespace.php
deleted file mode 100644
index 8ade7cd..0000000
--- a/vendor/phpunit/php-token-stream/tests/_fixture/classInNamespace.php
+++ /dev/null
@@ -1,6 +0,0 @@
-<?php
-namespace Foo\Bar;
-
-class TestClass
-{
-}
diff --git a/vendor/phpunit/php-token-stream/tests/_fixture/classInScopedNamespace.php b/vendor/phpunit/php-token-stream/tests/_fixture/classInScopedNamespace.php
deleted file mode 100644
index 1ba475c..0000000
--- a/vendor/phpunit/php-token-stream/tests/_fixture/classInScopedNamespace.php
+++ /dev/null
@@ -1,9 +0,0 @@
-<?php
-namespace Foo\BarScoped {
-
-    class TestClass {
-
-    }
-
-}
-
diff --git a/vendor/phpunit/php-token-stream/tests/_fixture/class_with_method_that_declares_anonymous_class.php b/vendor/phpunit/php-token-stream/tests/_fixture/class_with_method_that_declares_anonymous_class.php
deleted file mode 100644
index 4a02fe1..0000000
--- a/vendor/phpunit/php-token-stream/tests/_fixture/class_with_method_that_declares_anonymous_class.php
+++ /dev/null
@@ -1,15 +0,0 @@
-<?php
-interface foo {
-}
-
-class class_with_method_that_declares_anonymous_class
-{
-    public function method()
-    {
-        $o = new class { public function foo() {} };
-        $o = new class{public function foo(){}};
-        $o = new class extends stdClass {};
-        $o = new class extends stdClass {};
-        $o = new class implements foo {};
-    }
-}
diff --git a/vendor/phpunit/php-token-stream/tests/_fixture/class_with_method_that_declares_anonymous_class2.php b/vendor/phpunit/php-token-stream/tests/_fixture/class_with_method_that_declares_anonymous_class2.php
deleted file mode 100644
index 9f3ee28..0000000
--- a/vendor/phpunit/php-token-stream/tests/_fixture/class_with_method_that_declares_anonymous_class2.php
+++ /dev/null
@@ -1,16 +0,0 @@
-<?php
-class Test {
-	public function methodOne() {
-		$foo = new class {
-			public function method_in_anonymous_class() {
-				return true;
-			}
-		};
-
-		return $foo->method_in_anonymous_class();
-	}
-
-	public function methodTwo() {
-		return false;
-	}
-}
diff --git a/vendor/phpunit/php-token-stream/tests/_fixture/closure.php b/vendor/phpunit/php-token-stream/tests/_fixture/closure.php
deleted file mode 100644
index a0e3a81..0000000
--- a/vendor/phpunit/php-token-stream/tests/_fixture/closure.php
+++ /dev/null
@@ -1,7 +0,0 @@
-<?php
-$function1 = function($foo, $bar) use ($var) {};
-$function2 = function(Foo $foo, $bar) use ($var) {};
-$function3 = function ($foo, $bar, $baz) {};
-$function4 = function (Foo $foo, $bar, $baz) {};
-$function5 = function () {};
-$function6 = function() {};
diff --git a/vendor/phpunit/php-token-stream/tests/_fixture/issue19.php b/vendor/phpunit/php-token-stream/tests/_fixture/issue19.php
deleted file mode 100644
index 91eeb47..0000000
--- a/vendor/phpunit/php-token-stream/tests/_fixture/issue19.php
+++ /dev/null
@@ -1,3 +0,0 @@
-<?php
-class TestClass {
-}
diff --git a/vendor/phpunit/php-token-stream/tests/_fixture/issue30.php b/vendor/phpunit/php-token-stream/tests/_fixture/issue30.php
deleted file mode 100644
index 0d1f6f3..0000000
--- a/vendor/phpunit/php-token-stream/tests/_fixture/issue30.php
+++ /dev/null
@@ -1,8 +0,0 @@
-<?php
-class Foo
-{
-    public function bar()
-    {
-        return Foo::CLASS;
-    }
-}
diff --git a/vendor/phpunit/php-token-stream/tests/_fixture/multipleNamespacesWithOneClassUsingBraces.php b/vendor/phpunit/php-token-stream/tests/_fixture/multipleNamespacesWithOneClassUsingBraces.php
deleted file mode 100644
index d3a12e3..0000000
--- a/vendor/phpunit/php-token-stream/tests/_fixture/multipleNamespacesWithOneClassUsingBraces.php
+++ /dev/null
@@ -1,12 +0,0 @@
-<?php
-namespace Foo\Bar;
-
-class TestClassInBar
-{
-}
-
-namespace Foo\Baz;
-
-class TestClassInBaz
-{
-}
diff --git a/vendor/phpunit/php-token-stream/tests/_fixture/multipleNamespacesWithOneClassUsingNonBraceSyntax.php b/vendor/phpunit/php-token-stream/tests/_fixture/multipleNamespacesWithOneClassUsingNonBraceSyntax.php
deleted file mode 100644
index 4ee4f24..0000000
--- a/vendor/phpunit/php-token-stream/tests/_fixture/multipleNamespacesWithOneClassUsingNonBraceSyntax.php
+++ /dev/null
@@ -1,14 +0,0 @@
-<?php
-namespace Foo\Bar
-{
-    class TestClassInBar
-    {
-    }
-}
-
-namespace Foo\Baz
-{
-    class TestClassInBaz
-    {
-    }
-}
diff --git a/vendor/phpunit/php-token-stream/tests/_fixture/source.php b/vendor/phpunit/php-token-stream/tests/_fixture/source.php
deleted file mode 100644
index 0c9b87f..0000000
--- a/vendor/phpunit/php-token-stream/tests/_fixture/source.php
+++ /dev/null
@@ -1,36 +0,0 @@
-<?php
-/**
- * Some comment
- */
-class Foo{function foo(){}
-
-    /**
-     * @param Baz $baz
-     */
-    public function bar(Baz $baz)
-    {
-    }
-
-    /**
-     * @param Foobar $foobar
-     */
-    static public function foobar(Foobar $foobar)
-    {
-    }
-
-    public function barfoo(Barfoo $barfoo)
-    {
-    }
-
-    /**
-     * This docblock does not belong to the baz function
-     */
-
-    public function baz()
-    {
-    }
-
-    public function blaz($x, $y)
-    {
-    }
-}
diff --git a/vendor/phpunit/php-token-stream/tests/_fixture/source2.php b/vendor/phpunit/php-token-stream/tests/_fixture/source2.php
deleted file mode 100644
index b33dce1..0000000
--- a/vendor/phpunit/php-token-stream/tests/_fixture/source2.php
+++ /dev/null
@@ -1,6 +0,0 @@
-<?php
-// short desc
-abstract class A {
-    /* abst meth: */
-    public static  abstract function method();
-}
diff --git a/vendor/phpunit/php-token-stream/tests/_fixture/source3.php b/vendor/phpunit/php-token-stream/tests/_fixture/source3.php
deleted file mode 100644
index 7e42b60..0000000
--- a/vendor/phpunit/php-token-stream/tests/_fixture/source3.php
+++ /dev/null
@@ -1,14 +0,0 @@
-<?php
-// This file is example#1
-// from http://www.php.net/manual/en/function.get-included-files.php
-
-include 'test1.php';
-include_once 'test2.php';
-require 'test3.php';
-require_once 'test4.php';
-
-$included_files = get_included_files();
-
-foreach ($included_files as $filename) {
-    echo "$filename\n";
-}
diff --git a/vendor/phpunit/php-token-stream/tests/_fixture/source4.php b/vendor/phpunit/php-token-stream/tests/_fixture/source4.php
deleted file mode 100644
index 6b064fc..0000000
--- a/vendor/phpunit/php-token-stream/tests/_fixture/source4.php
+++ /dev/null
@@ -1,30 +0,0 @@
-<?php
-// Declare the interface 'iTemplate'
-interface iTemplate
-{
-    public function setVariable($name, $var);
-    public function
-        getHtml($template);
-}
-
-interface a
-{
-    public function foo();
-}
-
-interface b extends a
-{
-    public function baz(Baz $baz);
-}
-
-// short desc for class that implement a unique interface
-class c implements b
-{
-    public function foo()
-    {
-    }
-
-    public function baz(Baz $baz)
-    {
-    }
-}
diff --git a/vendor/phpunit/php-token-stream/tests/_fixture/source5.php b/vendor/phpunit/php-token-stream/tests/_fixture/source5.php
deleted file mode 100644
index ef7d474..0000000
--- a/vendor/phpunit/php-token-stream/tests/_fixture/source5.php
+++ /dev/null
@@ -1,5 +0,0 @@
-<?php
-function foo($a, array $b, array $c = array()) {}
-interface i { public function m($a, array $b, array $c = array()); }
-abstract class a { abstract public function m($a, array $b, array $c = array()); }
-class c { public function m($a, array $b, array $c = array()) {} }
diff --git a/vendor/phpunit/php-token-stream/tests/bootstrap.php b/vendor/phpunit/php-token-stream/tests/bootstrap.php
deleted file mode 100644
index f92b7df..0000000
--- a/vendor/phpunit/php-token-stream/tests/bootstrap.php
+++ /dev/null
@@ -1,7 +0,0 @@
-<?php
-require __DIR__ . '/../vendor/autoload.php';
-
-define(
-    'TEST_FILES_PATH',
-    __DIR__ . DIRECTORY_SEPARATOR . '_fixture' . DIRECTORY_SEPARATOR
-);
diff --git a/vendor/phpunit/phpunit/tests/Extensions/PhptTestCaseTest.php b/vendor/phpunit/phpunit/tests/Extensions/PhptTestCaseTest.php
deleted file mode 100644
index 6bcab85..0000000
--- a/vendor/phpunit/phpunit/tests/Extensions/PhptTestCaseTest.php
+++ /dev/null
@@ -1,37 +0,0 @@
-<?php
-/*
- * This file is part of PHPUnit.
- *
- * (c) Sebastian Bergmann <sebastian@phpunit.de>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-class Extensions_PhptTestCaseTest extends \PHPUnit_Framework_TestCase
-{
-    public function testParseIniSection()
-    {
-        $phptTestCase = new PhpTestCaseProxy(__FILE__);
-        $settings     = $phptTestCase->parseIniSection("foo=1\nbar = 2\rbaz = 3\r\nempty=\nignore");
-
-        $expected = array(
-            'foo=1',
-            'bar = 2',
-            'baz = 3',
-            'empty=',
-            'ignore',
-        );
-
-        $this->assertEquals($expected, $settings);
-
-    }
-}
-
-class PhpTestCaseProxy extends PHPUnit_Extensions_PhptTestCase
-{
-    public function parseIniSection($content)
-    {
-        return parent::parseIniSection($content);
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/Extensions/RepeatedTestTest.php b/vendor/phpunit/phpunit/tests/Extensions/RepeatedTestTest.php
deleted file mode 100644
index de83fb5..0000000
--- a/vendor/phpunit/phpunit/tests/Extensions/RepeatedTestTest.php
+++ /dev/null
@@ -1,64 +0,0 @@
-<?php
-/*
- * This file is part of PHPUnit.
- *
- * (c) Sebastian Bergmann <sebastian@phpunit.de>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-/**
- * @since      Class available since Release 2.0.0
- * @covers     PHPUnit_Extensions_RepeatedTest
- */
-class Extensions_RepeatedTestTest extends PHPUnit_Framework_TestCase
-{
-    protected $suite;
-
-    public function __construct()
-    {
-        $this->suite = new PHPUnit_Framework_TestSuite;
-
-        $this->suite->addTest(new Success);
-        $this->suite->addTest(new Success);
-    }
-
-    public function testRepeatedOnce()
-    {
-        $test = new PHPUnit_Extensions_RepeatedTest($this->suite, 1);
-        $this->assertEquals(2, count($test));
-
-        $result = $test->run();
-        $this->assertEquals(2, count($result));
-    }
-
-    public function testRepeatedMoreThanOnce()
-    {
-        $test = new PHPUnit_Extensions_RepeatedTest($this->suite, 3);
-        $this->assertEquals(6, count($test));
-
-        $result = $test->run();
-        $this->assertEquals(6, count($result));
-    }
-
-    public function testRepeatedZero()
-    {
-        $test = new PHPUnit_Extensions_RepeatedTest($this->suite, 0);
-        $this->assertEquals(0, count($test));
-
-        $result = $test->run();
-        $this->assertEquals(0, count($result));
-    }
-
-    public function testRepeatedNegative()
-    {
-        try {
-            $test = new PHPUnit_Extensions_RepeatedTest($this->suite, -1);
-        } catch (Exception $e) {
-            return;
-        }
-
-        $this->fail('Should throw an Exception');
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/Fail/fail.phpt b/vendor/phpunit/phpunit/tests/Fail/fail.phpt
deleted file mode 100644
index b88454f..0000000
--- a/vendor/phpunit/phpunit/tests/Fail/fail.phpt
+++ /dev/null
@@ -1,5 +0,0 @@
---TEST--
-// This test intentionally fails and it is checked by Travis.
---FILE--
---EXPECTF--
-unexpected
diff --git a/vendor/phpunit/phpunit/tests/Framework/AssertTest.php b/vendor/phpunit/phpunit/tests/Framework/AssertTest.php
deleted file mode 100644
index 3406be8..0000000
--- a/vendor/phpunit/phpunit/tests/Framework/AssertTest.php
+++ /dev/null
@@ -1,4130 +0,0 @@
-<?php
-/*
- * This file is part of PHPUnit.
- *
- * (c) Sebastian Bergmann <sebastian@phpunit.de>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-/**
- * @since      Class available since Release 2.0.0
- */
-class Framework_AssertTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @var string
-     */
-    private $filesDirectory;
-
-    protected function setUp()
-    {
-        $this->filesDirectory = dirname(__DIR__) . DIRECTORY_SEPARATOR . '_files' . DIRECTORY_SEPARATOR;
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::fail
-     */
-    public function testFail()
-    {
-        try {
-            $this->fail();
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        throw new PHPUnit_Framework_AssertionFailedError('Fail did not throw fail exception');
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertContains
-     */
-    public function testAssertSplObjectStorageContainsObject()
-    {
-        $a = new stdClass;
-        $b = new stdClass;
-        $c = new SplObjectStorage;
-        $c->attach($a);
-
-        $this->assertContains($a, $c);
-
-        try {
-            $this->assertContains($b, $c);
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertContains
-     */
-    public function testAssertArrayContainsObject()
-    {
-        $a = new stdClass;
-        $b = new stdClass;
-
-        $this->assertContains($a, array($a));
-
-        try {
-            $this->assertContains($a, array($b));
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertContains
-     */
-    public function testAssertArrayContainsString()
-    {
-        $this->assertContains('foo', array('foo'));
-
-        try {
-            $this->assertContains('foo', array('bar'));
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertContains
-     */
-    public function testAssertArrayContainsNonObject()
-    {
-        $this->assertContains('foo', array(true));
-
-        try {
-            $this->assertContains('foo', array(true), '', false, true, true);
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertContainsOnlyInstancesOf
-     */
-    public function testAssertContainsOnlyInstancesOf()
-    {
-        $test = array(
-            new Book(),
-            new Book
-        );
-        $this->assertContainsOnlyInstancesOf('Book', $test);
-        $this->assertContainsOnlyInstancesOf('stdClass', array(new stdClass()));
-
-        $test2 = array(
-            new Author('Test')
-        );
-        try {
-            $this->assertContainsOnlyInstancesOf('Book', $test2);
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-        $this->fail();
-    }
-
-    /**
-     * @covers            PHPUnit_Framework_Assert::assertArrayHasKey
-     * @expectedException PHPUnit_Framework_Exception
-     */
-    public function testAssertArrayHasKeyThrowsExceptionForInvalidFirstArgument()
-    {
-        $this->assertArrayHasKey(null, array());
-    }
-
-    /**
-     * @covers            PHPUnit_Framework_Assert::assertArrayHasKey
-     * @expectedException PHPUnit_Framework_Exception
-     */
-    public function testAssertArrayHasKeyThrowsExceptionForInvalidSecondArgument()
-    {
-        $this->assertArrayHasKey(0, null);
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertArrayHasKey
-     */
-    public function testAssertArrayHasIntegerKey()
-    {
-        $this->assertArrayHasKey(0, array('foo'));
-
-        try {
-            $this->assertArrayHasKey(1, array('foo'));
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertArraySubset
-     * @covers PHPUnit_Framework_Constraint_ArraySubset
-     */
-    public function testAssertArraySubset()
-    {
-        $array = array(
-            'a' => 'item a',
-            'b' => 'item b',
-            'c' => array('a2' => 'item a2', 'b2' => 'item b2'),
-            'd' => array('a2' => array('a3' => 'item a3', 'b3' => 'item b3'))
-        );
-
-        $this->assertArraySubset(array('a' => 'item a', 'c' => array('a2' => 'item a2')), $array);
-        $this->assertArraySubset(array('a' => 'item a', 'd' => array('a2' => array('b3' => 'item b3'))), $array);
-
-        try {
-            $this->assertArraySubset(array('a' => 'bad value'), $array);
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-        }
-
-        try {
-            $this->assertArraySubset(array('d' => array('a2' => array('bad index' => 'item b3'))), $array);
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertArraySubset
-     * @covers PHPUnit_Framework_Constraint_ArraySubset
-     */
-    public function testAssertArraySubsetWithDeepNestedArrays()
-    {
-        $array = array(
-            'path' => array(
-                'to' => array(
-                    'the' => array(
-                        'cake' => 'is a lie'
-                    )
-                )
-            )
-        );
-
-        $this->assertArraySubset(array('path' => array()), $array);
-        $this->assertArraySubset(array('path' => array('to' => array())), $array);
-        $this->assertArraySubset(array('path' => array('to' => array('the' => array()))), $array);
-        $this->assertArraySubset(array('path' => array('to' => array('the' => array('cake' => 'is a lie')))), $array);
-
-        try {
-            $this->assertArraySubset(array('path' => array('to' => array('the' => array('cake' => 'is not a lie')))), $array);
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertArraySubset
-     * @covers PHPUnit_Framework_Constraint_ArraySubset
-     */
-    public function testAssertArraySubsetWithNoStrictCheckAndObjects()
-    {
-        $obj       = new \stdClass;
-        $reference = &$obj;
-        $array     = array('a' => $obj);
-
-        $this->assertArraySubset(array('a' => $reference), $array);
-        $this->assertArraySubset(array('a' => new \stdClass), $array);
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertArraySubset
-     * @covers PHPUnit_Framework_Constraint_ArraySubset
-     */
-    public function testAssertArraySubsetWithStrictCheckAndObjects()
-    {
-        $obj       = new \stdClass;
-        $reference = &$obj;
-        $array     = array('a' => $obj);
-
-        $this->assertArraySubset(array('a' => $reference), $array, true);
-
-        try {
-            $this->assertArraySubset(array('a' => new \stdClass), $array, true);
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail('Strict recursive array check fail.');
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertArraySubset
-     * @covers PHPUnit_Framework_Constraint_ArraySubset
-     * @expectedException PHPUnit_Framework_Exception
-     * @expectedExceptionMessage array or ArrayAccess
-     * @dataProvider assertArraySubsetInvalidArgumentProvider
-     */
-    public function testAssertArraySubsetRaisesExceptionForInvalidArguments($partial, $subject)
-    {
-        $this->assertArraySubset($partial, $subject);
-    }
-
-    /**
-     * @return array
-     */
-    public function assertArraySubsetInvalidArgumentProvider()
-    {
-        return array(
-            array(false, array()),
-            array(array(), false),
-        );
-    }
-
-    /**
-     * @covers            PHPUnit_Framework_Assert::assertArrayNotHasKey
-     * @expectedException PHPUnit_Framework_Exception
-     */
-    public function testAssertArrayNotHasKeyThrowsExceptionForInvalidFirstArgument()
-    {
-        $this->assertArrayNotHasKey(null, array());
-    }
-
-    /**
-     * @covers            PHPUnit_Framework_Assert::assertArrayNotHasKey
-     * @expectedException PHPUnit_Framework_Exception
-     */
-    public function testAssertArrayNotHasKeyThrowsExceptionForInvalidSecondArgument()
-    {
-        $this->assertArrayNotHasKey(0, null);
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertArrayNotHasKey
-     */
-    public function testAssertArrayNotHasIntegerKey()
-    {
-        $this->assertArrayNotHasKey(1, array('foo'));
-
-        try {
-            $this->assertArrayNotHasKey(0, array('foo'));
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertArrayHasKey
-     */
-    public function testAssertArrayHasStringKey()
-    {
-        $this->assertArrayHasKey('foo', array('foo' => 'bar'));
-
-        try {
-            $this->assertArrayHasKey('bar', array('foo' => 'bar'));
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertArrayNotHasKey
-     */
-    public function testAssertArrayNotHasStringKey()
-    {
-        $this->assertArrayNotHasKey('bar', array('foo' => 'bar'));
-
-        try {
-            $this->assertArrayNotHasKey('foo', array('foo' => 'bar'));
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertArrayHasKey
-     */
-    public function testAssertArrayHasKeyAcceptsArrayObjectValue()
-    {
-        $array        = new ArrayObject();
-        $array['foo'] = 'bar';
-        $this->assertArrayHasKey('foo', $array);
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertArrayHasKey
-     * @expectedException PHPUnit_Framework_AssertionFailedError
-     */
-    public function testAssertArrayHasKeyProperlyFailsWithArrayObjectValue()
-    {
-        $array        = new ArrayObject();
-        $array['bar'] = 'bar';
-        $this->assertArrayHasKey('foo', $array);
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertArrayHasKey
-     */
-    public function testAssertArrayHasKeyAcceptsArrayAccessValue()
-    {
-        $array        = new SampleArrayAccess();
-        $array['foo'] = 'bar';
-        $this->assertArrayHasKey('foo', $array);
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertArrayHasKey
-     * @expectedException PHPUnit_Framework_AssertionFailedError
-     */
-    public function testAssertArrayHasKeyProperlyFailsWithArrayAccessValue()
-    {
-        $array        = new SampleArrayAccess();
-        $array['bar'] = 'bar';
-        $this->assertArrayHasKey('foo', $array);
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertArrayNotHasKey
-     */
-    public function testAssertArrayNotHasKeyAcceptsArrayAccessValue()
-    {
-        $array        = new ArrayObject();
-        $array['foo'] = 'bar';
-        $this->assertArrayNotHasKey('bar', $array);
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertArrayNotHasKey
-     * @expectedException PHPUnit_Framework_AssertionFailedError
-     */
-    public function testAssertArrayNotHasKeyPropertlyFailsWithArrayAccessValue()
-    {
-        $array        = new ArrayObject();
-        $array['bar'] = 'bar';
-        $this->assertArrayNotHasKey('bar', $array);
-    }
-
-    /**
-     * @covers            PHPUnit_Framework_Assert::assertContains
-     * @expectedException PHPUnit_Framework_Exception
-     */
-    public function testAssertContainsThrowsException()
-    {
-        $this->assertContains(null, null);
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertContains
-     */
-    public function testAssertIteratorContainsObject()
-    {
-        $foo = new stdClass;
-
-        $this->assertContains($foo, new TestIterator(array($foo)));
-
-        try {
-            $this->assertContains($foo, new TestIterator(array(new stdClass)));
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertContains
-     */
-    public function testAssertIteratorContainsString()
-    {
-        $this->assertContains('foo', new TestIterator(array('foo')));
-
-        try {
-            $this->assertContains('foo', new TestIterator(array('bar')));
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertContains
-     */
-    public function testAssertStringContainsString()
-    {
-        $this->assertContains('foo', 'foobar');
-
-        try {
-            $this->assertContains('foo', 'bar');
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers            PHPUnit_Framework_Assert::assertNotContains
-     * @expectedException PHPUnit_Framework_Exception
-     */
-    public function testAssertNotContainsThrowsException()
-    {
-        $this->assertNotContains(null, null);
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertNotContains
-     */
-    public function testAssertSplObjectStorageNotContainsObject()
-    {
-        $a = new stdClass;
-        $b = new stdClass;
-        $c = new SplObjectStorage;
-        $c->attach($a);
-
-        $this->assertNotContains($b, $c);
-
-        try {
-            $this->assertNotContains($a, $c);
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertNotContains
-     */
-    public function testAssertArrayNotContainsObject()
-    {
-        $a = new stdClass;
-        $b = new stdClass;
-
-        $this->assertNotContains($a, array($b));
-
-        try {
-            $this->assertNotContains($a, array($a));
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertNotContains
-     */
-    public function testAssertArrayNotContainsString()
-    {
-        $this->assertNotContains('foo', array('bar'));
-
-        try {
-            $this->assertNotContains('foo', array('foo'));
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertNotContains
-     */
-    public function testAssertArrayNotContainsNonObject()
-    {
-        $this->assertNotContains('foo', array(true), '', false, true, true);
-
-        try {
-            $this->assertNotContains('foo', array(true));
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertNotContains
-     */
-    public function testAssertStringNotContainsString()
-    {
-        $this->assertNotContains('foo', 'bar');
-
-        try {
-            $this->assertNotContains('foo', 'foo');
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers            PHPUnit_Framework_Assert::assertContainsOnly
-     * @expectedException PHPUnit_Framework_Exception
-     */
-    public function testAssertContainsOnlyThrowsException()
-    {
-        $this->assertContainsOnly(null, null);
-    }
-
-    /**
-     * @covers            PHPUnit_Framework_Assert::assertNotContainsOnly
-     * @expectedException PHPUnit_Framework_Exception
-     */
-    public function testAssertNotContainsOnlyThrowsException()
-    {
-        $this->assertNotContainsOnly(null, null);
-    }
-
-    /**
-     * @covers            PHPUnit_Framework_Assert::assertContainsOnlyInstancesOf
-     * @expectedException PHPUnit_Framework_Exception
-     */
-    public function testAssertContainsOnlyInstancesOfThrowsException()
-    {
-        $this->assertContainsOnlyInstancesOf(null, null);
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertContainsOnly
-     */
-    public function testAssertArrayContainsOnlyIntegers()
-    {
-        $this->assertContainsOnly('integer', array(1, 2, 3));
-
-        try {
-            $this->assertContainsOnly('integer', array('1', 2, 3));
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertNotContainsOnly
-     */
-    public function testAssertArrayNotContainsOnlyIntegers()
-    {
-        $this->assertNotContainsOnly('integer', array('1', 2, 3));
-
-        try {
-            $this->assertNotContainsOnly('integer', array(1, 2, 3));
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertContainsOnly
-     */
-    public function testAssertArrayContainsOnlyStdClass()
-    {
-        $this->assertContainsOnly('StdClass', array(new stdClass));
-
-        try {
-            $this->assertContainsOnly('StdClass', array('StdClass'));
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertNotContainsOnly
-     */
-    public function testAssertArrayNotContainsOnlyStdClass()
-    {
-        $this->assertNotContainsOnly('StdClass', array('StdClass'));
-
-        try {
-            $this->assertNotContainsOnly('StdClass', array(new stdClass));
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    protected function sameValues()
-    {
-        $object = new SampleClass(4, 8, 15);
-        // cannot use $filesDirectory, because neither setUp() nor
-        // setUpBeforeClass() are executed before the data providers
-        $file     = dirname(__DIR__) . DIRECTORY_SEPARATOR . '_files' . DIRECTORY_SEPARATOR . 'foo.xml';
-        $resource = fopen($file, 'r');
-
-        return array(
-            // null
-            array(null, null),
-            // strings
-            array('a', 'a'),
-            // integers
-            array(0, 0),
-            // floats
-            array(2.3, 2.3),
-            array(1/3, 1 - 2/3),
-            array(log(0), log(0)),
-            // arrays
-            array(array(), array()),
-            array(array(0 => 1), array(0 => 1)),
-            array(array(0 => null), array(0 => null)),
-            array(array('a', 'b' => array(1, 2)), array('a', 'b' => array(1, 2))),
-            // objects
-            array($object, $object),
-            // resources
-            array($resource, $resource),
-        );
-    }
-
-    protected function notEqualValues()
-    {
-        // cyclic dependencies
-        $book1                  = new Book;
-        $book1->author          = new Author('Terry Pratchett');
-        $book1->author->books[] = $book1;
-        $book2                  = new Book;
-        $book2->author          = new Author('Terry Pratch');
-        $book2->author->books[] = $book2;
-
-        $book3         = new Book;
-        $book3->author = 'Terry Pratchett';
-        $book4         = new stdClass;
-        $book4->author = 'Terry Pratchett';
-
-        $object1  = new SampleClass(4, 8, 15);
-        $object2  = new SampleClass(16, 23, 42);
-        $object3  = new SampleClass(4, 8, 15);
-        $storage1 = new SplObjectStorage;
-        $storage1->attach($object1);
-        $storage2 = new SplObjectStorage;
-        $storage2->attach($object3); // same content, different object
-
-        // cannot use $filesDirectory, because neither setUp() nor
-        // setUpBeforeClass() are executed before the data providers
-        $file = dirname(__DIR__) . DIRECTORY_SEPARATOR . '_files' . DIRECTORY_SEPARATOR . 'foo.xml';
-
-        return array(
-            // strings
-            array('a', 'b'),
-            array('a', 'A'),
-            // https://github.com/sebastianbergmann/phpunit/issues/1023
-            array('9E6666666','9E7777777'),
-            // integers
-            array(1, 2),
-            array(2, 1),
-            // floats
-            array(2.3, 4.2),
-            array(2.3, 4.2, 0.5),
-            array(array(2.3), array(4.2), 0.5),
-            array(array(array(2.3)), array(array(4.2)), 0.5),
-            array(new Struct(2.3), new Struct(4.2), 0.5),
-            array(array(new Struct(2.3)), array(new Struct(4.2)), 0.5),
-            // NAN
-            array(NAN, NAN),
-            // arrays
-            array(array(), array(0 => 1)),
-            array(array(0 => 1), array()),
-            array(array(0 => null), array()),
-            array(array(0 => 1, 1 => 2), array(0 => 1, 1 => 3)),
-            array(array('a', 'b' => array(1, 2)), array('a', 'b' => array(2, 1))),
-            // objects
-            array(new SampleClass(4, 8, 15), new SampleClass(16, 23, 42)),
-            array($object1, $object2),
-            array($book1, $book2),
-            array($book3, $book4), // same content, different class
-            // resources
-            array(fopen($file, 'r'), fopen($file, 'r')),
-            // SplObjectStorage
-            array($storage1, $storage2),
-            // DOMDocument
-            array(
-                PHPUnit_Util_XML::load('<root></root>'),
-                PHPUnit_Util_XML::load('<bar/>'),
-            ),
-            array(
-                PHPUnit_Util_XML::load('<foo attr1="bar"/>'),
-                PHPUnit_Util_XML::load('<foo attr1="foobar"/>'),
-            ),
-            array(
-                PHPUnit_Util_XML::load('<foo> bar </foo>'),
-                PHPUnit_Util_XML::load('<foo />'),
-            ),
-            array(
-                PHPUnit_Util_XML::load('<foo xmlns="urn:myns:bar"/>'),
-                PHPUnit_Util_XML::load('<foo xmlns="urn:notmyns:bar"/>'),
-            ),
-            array(
-                PHPUnit_Util_XML::load('<foo> bar </foo>'),
-                PHPUnit_Util_XML::load('<foo> bir </foo>'),
-            ),
-            array(
-                new DateTime('2013-03-29 04:13:35', new DateTimeZone('America/New_York')),
-                new DateTime('2013-03-29 03:13:35', new DateTimeZone('America/New_York')),
-            ),
-            array(
-                new DateTime('2013-03-29 04:13:35', new DateTimeZone('America/New_York')),
-                new DateTime('2013-03-29 03:13:35', new DateTimeZone('America/New_York')),
-                3500
-            ),
-            array(
-                new DateTime('2013-03-29 04:13:35', new DateTimeZone('America/New_York')),
-                new DateTime('2013-03-29 05:13:35', new DateTimeZone('America/New_York')),
-                3500
-            ),
-            array(
-                new DateTime('2013-03-29', new DateTimeZone('America/New_York')),
-                new DateTime('2013-03-30', new DateTimeZone('America/New_York')),
-            ),
-            array(
-                new DateTime('2013-03-29', new DateTimeZone('America/New_York')),
-                new DateTime('2013-03-30', new DateTimeZone('America/New_York')),
-                43200
-            ),
-            array(
-                new DateTime('2013-03-29 04:13:35', new DateTimeZone('America/New_York')),
-                new DateTime('2013-03-29 04:13:35', new DateTimeZone('America/Chicago')),
-            ),
-            array(
-                new DateTime('2013-03-29 04:13:35', new DateTimeZone('America/New_York')),
-                new DateTime('2013-03-29 04:13:35', new DateTimeZone('America/Chicago')),
-                3500
-            ),
-            array(
-                new DateTime('2013-03-30', new DateTimeZone('America/New_York')),
-                new DateTime('2013-03-30', new DateTimeZone('America/Chicago')),
-            ),
-            array(
-                new DateTime('2013-03-29T05:13:35-0600'),
-                new DateTime('2013-03-29T04:13:35-0600'),
-            ),
-            array(
-                new DateTime('2013-03-29T05:13:35-0600'),
-                new DateTime('2013-03-29T05:13:35-0500'),
-            ),
-            // Exception
-            //array(new Exception('Exception 1'), new Exception('Exception 2')),
-            // different types
-            array(new SampleClass(4, 8, 15), false),
-            array(false, new SampleClass(4, 8, 15)),
-            array(array(0 => 1, 1 => 2), false),
-            array(false, array(0 => 1, 1 => 2)),
-            array(array(), new stdClass),
-            array(new stdClass, array()),
-            // PHP: 0 == 'Foobar' => true!
-            // We want these values to differ
-            array(0, 'Foobar'),
-            array('Foobar', 0),
-            array(3, acos(8)),
-            array(acos(8), 3)
-        );
-    }
-
-    protected function equalValues()
-    {
-        // cyclic dependencies
-        $book1                  = new Book;
-        $book1->author          = new Author('Terry Pratchett');
-        $book1->author->books[] = $book1;
-        $book2                  = new Book;
-        $book2->author          = new Author('Terry Pratchett');
-        $book2->author->books[] = $book2;
-
-        $object1  = new SampleClass(4, 8, 15);
-        $object2  = new SampleClass(4, 8, 15);
-        $storage1 = new SplObjectStorage;
-        $storage1->attach($object1);
-        $storage2 = new SplObjectStorage;
-        $storage2->attach($object1);
-
-        return array(
-            // strings
-            array('a', 'A', 0, false, true), // ignore case
-            // arrays
-            array(array('a' => 1, 'b' => 2), array('b' => 2, 'a' => 1)),
-            array(array(1), array('1')),
-            array(array(3, 2, 1), array(2, 3, 1), 0, true), // canonicalized comparison
-            // floats
-            array(2.3, 2.5, 0.5),
-            array(array(2.3), array(2.5), 0.5),
-            array(array(array(2.3)), array(array(2.5)), 0.5),
-            array(new Struct(2.3), new Struct(2.5), 0.5),
-            array(array(new Struct(2.3)), array(new Struct(2.5)), 0.5),
-            // numeric with delta
-            array(1, 2, 1),
-            // objects
-            array($object1, $object2),
-            array($book1, $book2),
-            // SplObjectStorage
-            array($storage1, $storage2),
-            // DOMDocument
-            array(
-                PHPUnit_Util_XML::load('<root></root>'),
-                PHPUnit_Util_XML::load('<root/>'),
-            ),
-            array(
-                PHPUnit_Util_XML::load('<root attr="bar"></root>'),
-                PHPUnit_Util_XML::load('<root attr="bar"/>'),
-            ),
-            array(
-                PHPUnit_Util_XML::load('<root><foo attr="bar"></foo></root>'),
-                PHPUnit_Util_XML::load('<root><foo attr="bar"/></root>'),
-            ),
-            array(
-                PHPUnit_Util_XML::load("<root>\n  <child/>\n</root>"),
-                PHPUnit_Util_XML::load('<root><child/></root>'),
-            ),
-            array(
-                new DateTime('2013-03-29 04:13:35', new DateTimeZone('America/New_York')),
-                new DateTime('2013-03-29 04:13:35', new DateTimeZone('America/New_York')),
-            ),
-            array(
-                new DateTime('2013-03-29 04:13:35', new DateTimeZone('America/New_York')),
-                new DateTime('2013-03-29 04:13:25', new DateTimeZone('America/New_York')),
-                10
-            ),
-            array(
-                new DateTime('2013-03-29 04:13:35', new DateTimeZone('America/New_York')),
-                new DateTime('2013-03-29 04:14:40', new DateTimeZone('America/New_York')),
-                65
-            ),
-            array(
-                new DateTime('2013-03-29', new DateTimeZone('America/New_York')),
-                new DateTime('2013-03-29', new DateTimeZone('America/New_York')),
-            ),
-            array(
-                new DateTime('2013-03-29 04:13:35', new DateTimeZone('America/New_York')),
-                new DateTime('2013-03-29 03:13:35', new DateTimeZone('America/Chicago')),
-            ),
-            array(
-                new DateTime('2013-03-29 04:13:35', new DateTimeZone('America/New_York')),
-                new DateTime('2013-03-29 03:13:49', new DateTimeZone('America/Chicago')),
-                15
-            ),
-            array(
-                new DateTime('2013-03-30', new DateTimeZone('America/New_York')),
-                new DateTime('2013-03-29 23:00:00', new DateTimeZone('America/Chicago')),
-            ),
-            array(
-                new DateTime('2013-03-30', new DateTimeZone('America/New_York')),
-                new DateTime('2013-03-29 23:01:30', new DateTimeZone('America/Chicago')),
-                100
-            ),
-            array(
-                new DateTime('@1364616000'),
-                new DateTime('2013-03-29 23:00:00', new DateTimeZone('America/Chicago')),
-            ),
-            array(
-                new DateTime('2013-03-29T05:13:35-0500'),
-                new DateTime('2013-03-29T04:13:35-0600'),
-            ),
-            // Exception
-            //array(new Exception('Exception 1'), new Exception('Exception 1')),
-            // mixed types
-            array(0, '0'),
-            array('0', 0),
-            array(2.3, '2.3'),
-            array('2.3', 2.3),
-            array((string) (1/3), 1 - 2/3),
-            array(1/3, (string) (1 - 2/3)),
-            array('string representation', new ClassWithToString),
-            array(new ClassWithToString, 'string representation'),
-        );
-    }
-
-    public function equalProvider()
-    {
-        // same |= equal
-        return array_merge($this->equalValues(), $this->sameValues());
-    }
-
-    public function notEqualProvider()
-    {
-        return $this->notEqualValues();
-    }
-
-    public function sameProvider()
-    {
-        return $this->sameValues();
-    }
-
-    public function notSameProvider()
-    {
-        // not equal |= not same
-        // equal, ¬same |= not same
-        return array_merge($this->notEqualValues(), $this->equalValues());
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertEquals
-     * @dataProvider equalProvider
-     */
-    public function testAssertEqualsSucceeds($a, $b, $delta = 0.0, $canonicalize = false, $ignoreCase = false)
-    {
-        $this->assertEquals($a, $b, '', $delta, 10, $canonicalize, $ignoreCase);
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertEquals
-     * @dataProvider notEqualProvider
-     */
-    public function testAssertEqualsFails($a, $b, $delta = 0.0, $canonicalize = false, $ignoreCase = false)
-    {
-        try {
-            $this->assertEquals($a, $b, '', $delta, 10, $canonicalize, $ignoreCase);
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertNotEquals
-     * @dataProvider notEqualProvider
-     */
-    public function testAssertNotEqualsSucceeds($a, $b, $delta = 0.0, $canonicalize = false, $ignoreCase = false)
-    {
-        $this->assertNotEquals($a, $b, '', $delta, 10, $canonicalize, $ignoreCase);
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertNotEquals
-     * @dataProvider equalProvider
-     */
-    public function testAssertNotEqualsFails($a, $b, $delta = 0.0, $canonicalize = false, $ignoreCase = false)
-    {
-        try {
-            $this->assertNotEquals($a, $b, '', $delta, 10, $canonicalize, $ignoreCase);
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertSame
-     * @dataProvider sameProvider
-     */
-    public function testAssertSameSucceeds($a, $b)
-    {
-        $this->assertSame($a, $b);
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertSame
-     * @dataProvider notSameProvider
-     */
-    public function testAssertSameFails($a, $b)
-    {
-        try {
-            $this->assertSame($a, $b);
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertNotSame
-     * @dataProvider notSameProvider
-     */
-    public function testAssertNotSameSucceeds($a, $b)
-    {
-        $this->assertNotSame($a, $b);
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertNotSame
-     * @dataProvider sameProvider
-     */
-    public function testAssertNotSameFails($a, $b)
-    {
-        try {
-            $this->assertNotSame($a, $b);
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertXmlFileEqualsXmlFile
-     */
-    public function testAssertXmlFileEqualsXmlFile()
-    {
-        $this->assertXmlFileEqualsXmlFile(
-            $this->filesDirectory . 'foo.xml',
-            $this->filesDirectory . 'foo.xml'
-        );
-
-        try {
-            $this->assertXmlFileEqualsXmlFile(
-                $this->filesDirectory . 'foo.xml',
-                $this->filesDirectory . 'bar.xml'
-            );
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertXmlFileNotEqualsXmlFile
-     */
-    public function testAssertXmlFileNotEqualsXmlFile()
-    {
-        $this->assertXmlFileNotEqualsXmlFile(
-            $this->filesDirectory . 'foo.xml',
-            $this->filesDirectory . 'bar.xml'
-        );
-
-        try {
-            $this->assertXmlFileNotEqualsXmlFile(
-                $this->filesDirectory . 'foo.xml',
-                $this->filesDirectory . 'foo.xml'
-            );
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertXmlStringEqualsXmlFile
-     */
-    public function testAssertXmlStringEqualsXmlFile()
-    {
-        $this->assertXmlStringEqualsXmlFile(
-            $this->filesDirectory . 'foo.xml',
-            file_get_contents($this->filesDirectory . 'foo.xml')
-        );
-
-        try {
-            $this->assertXmlStringEqualsXmlFile(
-                $this->filesDirectory . 'foo.xml',
-                file_get_contents($this->filesDirectory . 'bar.xml')
-            );
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertXmlStringNotEqualsXmlFile
-     */
-    public function testXmlStringNotEqualsXmlFile()
-    {
-        $this->assertXmlStringNotEqualsXmlFile(
-            $this->filesDirectory . 'foo.xml',
-            file_get_contents($this->filesDirectory . 'bar.xml')
-        );
-
-        try {
-            $this->assertXmlStringNotEqualsXmlFile(
-                $this->filesDirectory . 'foo.xml',
-                file_get_contents($this->filesDirectory . 'foo.xml')
-            );
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertXmlStringEqualsXmlString
-     */
-    public function testAssertXmlStringEqualsXmlString()
-    {
-        $this->assertXmlStringEqualsXmlString('<root/>', '<root/>');
-
-        try {
-            $this->assertXmlStringEqualsXmlString('<foo/>', '<bar/>');
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @expectedException PHPUnit_Framework_Exception
-     * @covers            PHPUnit_Framework_Assert::assertXmlStringEqualsXmlString
-     * @ticket            1860
-     */
-    public function testAssertXmlStringEqualsXmlString2()
-    {
-        $this->assertXmlStringEqualsXmlString('<a></b>', '<c></d>');
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertXmlStringEqualsXmlString
-     * @ticket 1860
-     */
-    public function testAssertXmlStringEqualsXmlString3()
-    {
-        $expected = <<<XML
-<?xml version="1.0"?>
-<root>
-    <node />
-</root>
-XML;
-
-        $actual = <<<XML
-<?xml version="1.0"?>
-<root>
-<node />
-</root>
-XML;
-
-        $this->assertXmlStringEqualsXmlString($expected, $actual);
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertXmlStringNotEqualsXmlString
-     */
-    public function testAssertXmlStringNotEqualsXmlString()
-    {
-        $this->assertXmlStringNotEqualsXmlString('<foo/>', '<bar/>');
-
-        try {
-            $this->assertXmlStringNotEqualsXmlString('<root/>', '<root/>');
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertEqualXMLStructure
-     */
-    public function testXMLStructureIsSame()
-    {
-        $expected = new DOMDocument;
-        $expected->load($this->filesDirectory . 'structureExpected.xml');
-
-        $actual = new DOMDocument;
-        $actual->load($this->filesDirectory . 'structureExpected.xml');
-
-        $this->assertEqualXMLStructure(
-            $expected->firstChild, $actual->firstChild, true
-        );
-    }
-
-    /**
-     * @covers            PHPUnit_Framework_Assert::assertEqualXMLStructure
-     * @expectedException PHPUnit_Framework_ExpectationFailedException
-     */
-    public function testXMLStructureWrongNumberOfAttributes()
-    {
-        $expected = new DOMDocument;
-        $expected->load($this->filesDirectory . 'structureExpected.xml');
-
-        $actual = new DOMDocument;
-        $actual->load($this->filesDirectory . 'structureWrongNumberOfAttributes.xml');
-
-        $this->assertEqualXMLStructure(
-            $expected->firstChild, $actual->firstChild, true
-        );
-    }
-
-    /**
-     * @covers            PHPUnit_Framework_Assert::assertEqualXMLStructure
-     * @expectedException PHPUnit_Framework_ExpectationFailedException
-     */
-    public function testXMLStructureWrongNumberOfNodes()
-    {
-        $expected = new DOMDocument;
-        $expected->load($this->filesDirectory . 'structureExpected.xml');
-
-        $actual = new DOMDocument;
-        $actual->load($this->filesDirectory . 'structureWrongNumberOfNodes.xml');
-
-        $this->assertEqualXMLStructure(
-            $expected->firstChild, $actual->firstChild, true
-        );
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertEqualXMLStructure
-     */
-    public function testXMLStructureIsSameButDataIsNot()
-    {
-        $expected = new DOMDocument;
-        $expected->load($this->filesDirectory . 'structureExpected.xml');
-
-        $actual = new DOMDocument;
-        $actual->load($this->filesDirectory . 'structureIsSameButDataIsNot.xml');
-
-        $this->assertEqualXMLStructure(
-            $expected->firstChild, $actual->firstChild, true
-        );
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertEqualXMLStructure
-     */
-    public function testXMLStructureAttributesAreSameButValuesAreNot()
-    {
-        $expected = new DOMDocument;
-        $expected->load($this->filesDirectory . 'structureExpected.xml');
-
-        $actual = new DOMDocument;
-        $actual->load($this->filesDirectory . 'structureAttributesAreSameButValuesAreNot.xml');
-
-        $this->assertEqualXMLStructure(
-            $expected->firstChild, $actual->firstChild, true
-        );
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertEqualXMLStructure
-     */
-    public function testXMLStructureIgnoreTextNodes()
-    {
-        $expected = new DOMDocument;
-        $expected->load($this->filesDirectory . 'structureExpected.xml');
-
-        $actual = new DOMDocument;
-        $actual->load($this->filesDirectory . 'structureIgnoreTextNodes.xml');
-
-        $this->assertEqualXMLStructure(
-            $expected->firstChild, $actual->firstChild, true
-        );
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertEquals
-     */
-    public function testAssertStringEqualsNumeric()
-    {
-        $this->assertEquals('0', 0);
-
-        try {
-            $this->assertEquals('0', 1);
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertNotEquals
-     */
-    public function testAssertStringEqualsNumeric2()
-    {
-        $this->assertNotEquals('A', 0);
-    }
-
-    /**
-     * @covers            PHPUnit_Framework_Assert::assertFileExists
-     * @expectedException PHPUnit_Framework_Exception
-     */
-    public function testAssertFileExistsThrowsException()
-    {
-        $this->assertFileExists(null);
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertFileExists
-     */
-    public function testAssertFileExists()
-    {
-        $this->assertFileExists(__FILE__);
-
-        try {
-            $this->assertFileExists(__DIR__ . DIRECTORY_SEPARATOR . 'NotExisting');
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers            PHPUnit_Framework_Assert::assertFileNotExists
-     * @expectedException PHPUnit_Framework_Exception
-     */
-    public function testAssertFileNotExistsThrowsException()
-    {
-        $this->assertFileNotExists(null);
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertFileNotExists
-     */
-    public function testAssertFileNotExists()
-    {
-        $this->assertFileNotExists(__DIR__ . DIRECTORY_SEPARATOR . 'NotExisting');
-
-        try {
-            $this->assertFileNotExists(__FILE__);
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertObjectHasAttribute
-     */
-    public function testAssertObjectHasAttribute()
-    {
-        $o = new Author('Terry Pratchett');
-
-        $this->assertObjectHasAttribute('name', $o);
-
-        try {
-            $this->assertObjectHasAttribute('foo', $o);
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertObjectNotHasAttribute
-     */
-    public function testAssertObjectNotHasAttribute()
-    {
-        $o = new Author('Terry Pratchett');
-
-        $this->assertObjectNotHasAttribute('foo', $o);
-
-        try {
-            $this->assertObjectNotHasAttribute('name', $o);
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertNull
-     */
-    public function testAssertNull()
-    {
-        $this->assertNull(null);
-
-        try {
-            $this->assertNull(new stdClass);
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertNotNull
-     */
-    public function testAssertNotNull()
-    {
-        $this->assertNotNull(new stdClass);
-
-        try {
-            $this->assertNotNull(null);
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertTrue
-     */
-    public function testAssertTrue()
-    {
-        $this->assertTrue(true);
-
-        try {
-            $this->assertTrue(false);
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertNotTrue
-     */
-    public function testAssertNotTrue()
-    {
-        $this->assertNotTrue(false);
-        $this->assertNotTrue(1);
-        $this->assertNotTrue('true');
-
-        try {
-            $this->assertNotTrue(true);
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertFalse
-     */
-    public function testAssertFalse()
-    {
-        $this->assertFalse(false);
-
-        try {
-            $this->assertFalse(true);
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertNotFalse
-     */
-    public function testAssertNotFalse()
-    {
-        $this->assertNotFalse(true);
-        $this->assertNotFalse(0);
-        $this->assertNotFalse('');
-
-        try {
-            $this->assertNotFalse(false);
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers            PHPUnit_Framework_Assert::assertRegExp
-     * @expectedException PHPUnit_Framework_Exception
-     */
-    public function testAssertRegExpThrowsException()
-    {
-        $this->assertRegExp(null, null);
-    }
-
-    /**
-     * @covers            PHPUnit_Framework_Assert::assertRegExp
-     * @expectedException PHPUnit_Framework_Exception
-     */
-    public function testAssertRegExpThrowsException2()
-    {
-        $this->assertRegExp('', null);
-    }
-
-    /**
-     * @covers            PHPUnit_Framework_Assert::assertNotRegExp
-     * @expectedException PHPUnit_Framework_Exception
-     */
-    public function testAssertNotRegExpThrowsException()
-    {
-        $this->assertNotRegExp(null, null);
-    }
-
-    /**
-     * @covers            PHPUnit_Framework_Assert::assertNotRegExp
-     * @expectedException PHPUnit_Framework_Exception
-     */
-    public function testAssertNotRegExpThrowsException2()
-    {
-        $this->assertNotRegExp('', null);
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertRegExp
-     */
-    public function testAssertRegExp()
-    {
-        $this->assertRegExp('/foo/', 'foobar');
-
-        try {
-            $this->assertRegExp('/foo/', 'bar');
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertNotRegExp
-     */
-    public function testAssertNotRegExp()
-    {
-        $this->assertNotRegExp('/foo/', 'bar');
-
-        try {
-            $this->assertNotRegExp('/foo/', 'foobar');
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertSame
-     */
-    public function testAssertSame()
-    {
-        $o = new stdClass;
-
-        $this->assertSame($o, $o);
-
-        try {
-            $this->assertSame(
-                new stdClass,
-                new stdClass
-            );
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertSame
-     */
-    public function testAssertSame2()
-    {
-        $this->assertSame(true, true);
-        $this->assertSame(false, false);
-
-        try {
-            $this->assertSame(true, false);
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertNotSame
-     */
-    public function testAssertNotSame()
-    {
-        $this->assertNotSame(
-            new stdClass,
-            null
-        );
-
-        $this->assertNotSame(
-            null,
-            new stdClass
-        );
-
-        $this->assertNotSame(
-            new stdClass,
-            new stdClass
-        );
-
-        $o = new stdClass;
-
-        try {
-            $this->assertNotSame($o, $o);
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertNotSame
-     */
-    public function testAssertNotSame2()
-    {
-        $this->assertNotSame(true, false);
-        $this->assertNotSame(false, true);
-
-        try {
-            $this->assertNotSame(true, true);
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertNotSame
-     */
-    public function testAssertNotSameFailsNull()
-    {
-        try {
-            $this->assertNotSame(null, null);
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertGreaterThan
-     */
-    public function testGreaterThan()
-    {
-        $this->assertGreaterThan(1, 2);
-
-        try {
-            $this->assertGreaterThan(2, 1);
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertAttributeGreaterThan
-     */
-    public function testAttributeGreaterThan()
-    {
-        $this->assertAttributeGreaterThan(
-            1, 'bar', new ClassWithNonPublicAttributes
-        );
-
-        try {
-            $this->assertAttributeGreaterThan(
-                1, 'foo', new ClassWithNonPublicAttributes
-            );
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertGreaterThanOrEqual
-     */
-    public function testGreaterThanOrEqual()
-    {
-        $this->assertGreaterThanOrEqual(1, 2);
-
-        try {
-            $this->assertGreaterThanOrEqual(2, 1);
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertAttributeGreaterThanOrEqual
-     */
-    public function testAttributeGreaterThanOrEqual()
-    {
-        $this->assertAttributeGreaterThanOrEqual(
-            1, 'bar', new ClassWithNonPublicAttributes
-        );
-
-        try {
-            $this->assertAttributeGreaterThanOrEqual(
-                2, 'foo', new ClassWithNonPublicAttributes
-            );
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertLessThan
-     */
-    public function testLessThan()
-    {
-        $this->assertLessThan(2, 1);
-
-        try {
-            $this->assertLessThan(1, 2);
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertAttributeLessThan
-     */
-    public function testAttributeLessThan()
-    {
-        $this->assertAttributeLessThan(
-            2, 'foo', new ClassWithNonPublicAttributes
-        );
-
-        try {
-            $this->assertAttributeLessThan(
-                1, 'bar', new ClassWithNonPublicAttributes
-            );
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertLessThanOrEqual
-     */
-    public function testLessThanOrEqual()
-    {
-        $this->assertLessThanOrEqual(2, 1);
-
-        try {
-            $this->assertLessThanOrEqual(1, 2);
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertAttributeLessThanOrEqual
-     */
-    public function testAttributeLessThanOrEqual()
-    {
-        $this->assertAttributeLessThanOrEqual(
-            2, 'foo', new ClassWithNonPublicAttributes
-        );
-
-        try {
-            $this->assertAttributeLessThanOrEqual(
-                1, 'bar', new ClassWithNonPublicAttributes
-            );
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::readAttribute
-     * @covers PHPUnit_Framework_Assert::getStaticAttribute
-     * @covers PHPUnit_Framework_Assert::getObjectAttribute
-     */
-    public function testReadAttribute()
-    {
-        $obj = new ClassWithNonPublicAttributes;
-
-        $this->assertEquals('foo', $this->readAttribute($obj, 'publicAttribute'));
-        $this->assertEquals('bar', $this->readAttribute($obj, 'protectedAttribute'));
-        $this->assertEquals('baz', $this->readAttribute($obj, 'privateAttribute'));
-        $this->assertEquals('bar', $this->readAttribute($obj, 'protectedParentAttribute'));
-        //$this->assertEquals('bar', $this->readAttribute($obj, 'privateParentAttribute'));
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::readAttribute
-     * @covers PHPUnit_Framework_Assert::getStaticAttribute
-     * @covers PHPUnit_Framework_Assert::getObjectAttribute
-     */
-    public function testReadAttribute2()
-    {
-        $this->assertEquals('foo', $this->readAttribute('ClassWithNonPublicAttributes', 'publicStaticAttribute'));
-        $this->assertEquals('bar', $this->readAttribute('ClassWithNonPublicAttributes', 'protectedStaticAttribute'));
-        $this->assertEquals('baz', $this->readAttribute('ClassWithNonPublicAttributes', 'privateStaticAttribute'));
-        $this->assertEquals('foo', $this->readAttribute('ClassWithNonPublicAttributes', 'protectedStaticParentAttribute'));
-        $this->assertEquals('foo', $this->readAttribute('ClassWithNonPublicAttributes', 'privateStaticParentAttribute'));
-    }
-
-    /**
-     * @covers            PHPUnit_Framework_Assert::readAttribute
-     * @covers            PHPUnit_Framework_Assert::getStaticAttribute
-     * @covers            PHPUnit_Framework_Assert::getObjectAttribute
-     * @expectedException PHPUnit_Framework_Exception
-     */
-    public function testReadAttribute3()
-    {
-        $this->readAttribute('StdClass', null);
-    }
-
-    /**
-     * @covers            PHPUnit_Framework_Assert::readAttribute
-     * @covers            PHPUnit_Framework_Assert::getStaticAttribute
-     * @covers            PHPUnit_Framework_Assert::getObjectAttribute
-     * @expectedException PHPUnit_Framework_Exception
-     */
-    public function testReadAttribute4()
-    {
-        $this->readAttribute('NotExistingClass', 'foo');
-    }
-
-    /**
-     * @covers            PHPUnit_Framework_Assert::readAttribute
-     * @covers            PHPUnit_Framework_Assert::getStaticAttribute
-     * @covers            PHPUnit_Framework_Assert::getObjectAttribute
-     * @expectedException PHPUnit_Framework_Exception
-     */
-    public function testReadAttribute5()
-    {
-        $this->readAttribute(null, 'foo');
-    }
-
-    /**
-     * @covers            PHPUnit_Framework_Assert::readAttribute
-     * @covers            PHPUnit_Framework_Assert::getStaticAttribute
-     * @covers            PHPUnit_Framework_Assert::getObjectAttribute
-     * @expectedException PHPUnit_Framework_Exception
-     */
-    public function testReadAttributeIfAttributeNameIsNotValid()
-    {
-        $this->readAttribute('StdClass', '2');
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::getStaticAttribute
-     * @expectedException PHPUnit_Framework_Exception
-     */
-    public function testGetStaticAttributeRaisesExceptionForInvalidFirstArgument()
-    {
-        $this->getStaticAttribute(null, 'foo');
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::getStaticAttribute
-     * @expectedException PHPUnit_Framework_Exception
-     */
-    public function testGetStaticAttributeRaisesExceptionForInvalidFirstArgument2()
-    {
-        $this->getStaticAttribute('NotExistingClass', 'foo');
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::getStaticAttribute
-     * @expectedException PHPUnit_Framework_Exception
-     */
-    public function testGetStaticAttributeRaisesExceptionForInvalidSecondArgument()
-    {
-        $this->getStaticAttribute('stdClass', null);
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::getStaticAttribute
-     * @expectedException PHPUnit_Framework_Exception
-     */
-    public function testGetStaticAttributeRaisesExceptionForInvalidSecondArgument2()
-    {
-        $this->getStaticAttribute('stdClass', '0');
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::getStaticAttribute
-     * @expectedException PHPUnit_Framework_Exception
-     */
-    public function testGetStaticAttributeRaisesExceptionForInvalidSecondArgument3()
-    {
-        $this->getStaticAttribute('stdClass', 'foo');
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::getObjectAttribute
-     * @expectedException PHPUnit_Framework_Exception
-     */
-    public function testGetObjectAttributeRaisesExceptionForInvalidFirstArgument()
-    {
-        $this->getObjectAttribute(null, 'foo');
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::getObjectAttribute
-     * @expectedException PHPUnit_Framework_Exception
-     */
-    public function testGetObjectAttributeRaisesExceptionForInvalidSecondArgument()
-    {
-        $this->getObjectAttribute(new stdClass, null);
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::getObjectAttribute
-     * @expectedException PHPUnit_Framework_Exception
-     */
-    public function testGetObjectAttributeRaisesExceptionForInvalidSecondArgument2()
-    {
-        $this->getObjectAttribute(new stdClass, '0');
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::getObjectAttribute
-     * @expectedException PHPUnit_Framework_Exception
-     */
-    public function testGetObjectAttributeRaisesExceptionForInvalidSecondArgument3()
-    {
-        $this->getObjectAttribute(new stdClass, 'foo');
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::getObjectAttribute
-     */
-    public function testGetObjectAttributeWorksForInheritedAttributes()
-    {
-        $this->assertEquals(
-            'bar',
-            $this->getObjectAttribute(new ClassWithNonPublicAttributes, 'privateParentAttribute')
-        );
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertAttributeContains
-     */
-    public function testAssertPublicAttributeContains()
-    {
-        $obj = new ClassWithNonPublicAttributes;
-
-        $this->assertAttributeContains('foo', 'publicArray', $obj);
-
-        try {
-            $this->assertAttributeContains('bar', 'publicArray', $obj);
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertAttributeContainsOnly
-     */
-    public function testAssertPublicAttributeContainsOnly()
-    {
-        $obj = new ClassWithNonPublicAttributes;
-
-        $this->assertAttributeContainsOnly('string', 'publicArray', $obj);
-
-        try {
-            $this->assertAttributeContainsOnly('integer', 'publicArray', $obj);
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertAttributeNotContains
-     */
-    public function testAssertPublicAttributeNotContains()
-    {
-        $obj = new ClassWithNonPublicAttributes;
-
-        $this->assertAttributeNotContains('bar', 'publicArray', $obj);
-
-        try {
-            $this->assertAttributeNotContains('foo', 'publicArray', $obj);
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertAttributeNotContainsOnly
-     */
-    public function testAssertPublicAttributeNotContainsOnly()
-    {
-        $obj = new ClassWithNonPublicAttributes;
-
-        $this->assertAttributeNotContainsOnly('integer', 'publicArray', $obj);
-
-        try {
-            $this->assertAttributeNotContainsOnly('string', 'publicArray', $obj);
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertAttributeContains
-     */
-    public function testAssertProtectedAttributeContains()
-    {
-        $obj = new ClassWithNonPublicAttributes;
-
-        $this->assertAttributeContains('bar', 'protectedArray', $obj);
-
-        try {
-            $this->assertAttributeContains('foo', 'protectedArray', $obj);
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertAttributeNotContains
-     */
-    public function testAssertProtectedAttributeNotContains()
-    {
-        $obj = new ClassWithNonPublicAttributes;
-
-        $this->assertAttributeNotContains('foo', 'protectedArray', $obj);
-
-        try {
-            $this->assertAttributeNotContains('bar', 'protectedArray', $obj);
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertAttributeContains
-     */
-    public function testAssertPrivateAttributeContains()
-    {
-        $obj = new ClassWithNonPublicAttributes;
-
-        $this->assertAttributeContains('baz', 'privateArray', $obj);
-
-        try {
-            $this->assertAttributeContains('foo', 'privateArray', $obj);
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertAttributeNotContains
-     */
-    public function testAssertPrivateAttributeNotContains()
-    {
-        $obj = new ClassWithNonPublicAttributes;
-
-        $this->assertAttributeNotContains('foo', 'privateArray', $obj);
-
-        try {
-            $this->assertAttributeNotContains('baz', 'privateArray', $obj);
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertAttributeContains
-     */
-    public function testAssertAttributeContainsNonObject()
-    {
-        $obj = new ClassWithNonPublicAttributes;
-
-        $this->assertAttributeContains(true, 'privateArray', $obj);
-
-        try {
-            $this->assertAttributeContains(true, 'privateArray', $obj, '', false, true, true);
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertAttributeNotContains
-     */
-    public function testAssertAttributeNotContainsNonObject()
-    {
-        $obj = new ClassWithNonPublicAttributes;
-
-        $this->assertAttributeNotContains(true, 'privateArray', $obj, '', false, true, true);
-
-        try {
-            $this->assertAttributeNotContains(true, 'privateArray', $obj);
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertAttributeEquals
-     */
-    public function testAssertPublicAttributeEquals()
-    {
-        $obj = new ClassWithNonPublicAttributes;
-
-        $this->assertAttributeEquals('foo', 'publicAttribute', $obj);
-
-        try {
-            $this->assertAttributeEquals('bar', 'publicAttribute', $obj);
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertAttributeNotEquals
-     */
-    public function testAssertPublicAttributeNotEquals()
-    {
-        $obj = new ClassWithNonPublicAttributes;
-
-        $this->assertAttributeNotEquals('bar', 'publicAttribute', $obj);
-
-        try {
-            $this->assertAttributeNotEquals('foo', 'publicAttribute', $obj);
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertAttributeSame
-     */
-    public function testAssertPublicAttributeSame()
-    {
-        $obj = new ClassWithNonPublicAttributes;
-
-        $this->assertAttributeSame('foo', 'publicAttribute', $obj);
-
-        try {
-            $this->assertAttributeSame('bar', 'publicAttribute', $obj);
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertAttributeNotSame
-     */
-    public function testAssertPublicAttributeNotSame()
-    {
-        $obj = new ClassWithNonPublicAttributes;
-
-        $this->assertAttributeNotSame('bar', 'publicAttribute', $obj);
-
-        try {
-            $this->assertAttributeNotSame('foo', 'publicAttribute', $obj);
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertAttributeEquals
-     */
-    public function testAssertProtectedAttributeEquals()
-    {
-        $obj = new ClassWithNonPublicAttributes;
-
-        $this->assertAttributeEquals('bar', 'protectedAttribute', $obj);
-
-        try {
-            $this->assertAttributeEquals('foo', 'protectedAttribute', $obj);
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertAttributeNotEquals
-     */
-    public function testAssertProtectedAttributeNotEquals()
-    {
-        $obj = new ClassWithNonPublicAttributes;
-
-        $this->assertAttributeNotEquals('foo', 'protectedAttribute', $obj);
-
-        try {
-            $this->assertAttributeNotEquals('bar', 'protectedAttribute', $obj);
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertAttributeEquals
-     */
-    public function testAssertPrivateAttributeEquals()
-    {
-        $obj = new ClassWithNonPublicAttributes;
-
-        $this->assertAttributeEquals('baz', 'privateAttribute', $obj);
-
-        try {
-            $this->assertAttributeEquals('foo', 'privateAttribute', $obj);
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertAttributeNotEquals
-     */
-    public function testAssertPrivateAttributeNotEquals()
-    {
-        $obj = new ClassWithNonPublicAttributes;
-
-        $this->assertAttributeNotEquals('foo', 'privateAttribute', $obj);
-
-        try {
-            $this->assertAttributeNotEquals('baz', 'privateAttribute', $obj);
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertAttributeEquals
-     */
-    public function testAssertPublicStaticAttributeEquals()
-    {
-        $this->assertAttributeEquals('foo', 'publicStaticAttribute', 'ClassWithNonPublicAttributes');
-
-        try {
-            $this->assertAttributeEquals('bar', 'publicStaticAttribute', 'ClassWithNonPublicAttributes');
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertAttributeNotEquals
-     */
-    public function testAssertPublicStaticAttributeNotEquals()
-    {
-        $this->assertAttributeNotEquals('bar', 'publicStaticAttribute', 'ClassWithNonPublicAttributes');
-
-        try {
-            $this->assertAttributeNotEquals('foo', 'publicStaticAttribute', 'ClassWithNonPublicAttributes');
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertAttributeEquals
-     */
-    public function testAssertProtectedStaticAttributeEquals()
-    {
-        $this->assertAttributeEquals('bar', 'protectedStaticAttribute', 'ClassWithNonPublicAttributes');
-
-        try {
-            $this->assertAttributeEquals('foo', 'protectedStaticAttribute', 'ClassWithNonPublicAttributes');
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertAttributeNotEquals
-     */
-    public function testAssertProtectedStaticAttributeNotEquals()
-    {
-        $this->assertAttributeNotEquals('foo', 'protectedStaticAttribute', 'ClassWithNonPublicAttributes');
-
-        try {
-            $this->assertAttributeNotEquals('bar', 'protectedStaticAttribute', 'ClassWithNonPublicAttributes');
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertAttributeEquals
-     */
-    public function testAssertPrivateStaticAttributeEquals()
-    {
-        $this->assertAttributeEquals('baz', 'privateStaticAttribute', 'ClassWithNonPublicAttributes');
-
-        try {
-            $this->assertAttributeEquals('foo', 'privateStaticAttribute', 'ClassWithNonPublicAttributes');
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertAttributeNotEquals
-     */
-    public function testAssertPrivateStaticAttributeNotEquals()
-    {
-        $this->assertAttributeNotEquals('foo', 'privateStaticAttribute', 'ClassWithNonPublicAttributes');
-
-        try {
-            $this->assertAttributeNotEquals('baz', 'privateStaticAttribute', 'ClassWithNonPublicAttributes');
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers            PHPUnit_Framework_Assert::assertClassHasAttribute
-     * @expectedException PHPUnit_Framework_Exception
-     */
-    public function testAssertClassHasAttributeThrowsException()
-    {
-        $this->assertClassHasAttribute(null, null);
-    }
-
-    /**
-     * @covers            PHPUnit_Framework_Assert::assertClassHasAttribute
-     * @expectedException PHPUnit_Framework_Exception
-     */
-    public function testAssertClassHasAttributeThrowsException2()
-    {
-        $this->assertClassHasAttribute('foo', null);
-    }
-
-    /**
-     * @covers            PHPUnit_Framework_Assert::assertClassHasAttribute
-     * @expectedException PHPUnit_Framework_Exception
-     */
-    public function testAssertClassHasAttributeThrowsExceptionIfAttributeNameIsNotValid()
-    {
-        $this->assertClassHasAttribute('1', 'ClassWithNonPublicAttributes');
-    }
-
-    /**
-     * @covers            PHPUnit_Framework_Assert::assertClassNotHasAttribute
-     * @expectedException PHPUnit_Framework_Exception
-     */
-    public function testAssertClassNotHasAttributeThrowsException()
-    {
-        $this->assertClassNotHasAttribute(null, null);
-    }
-
-    /**
-     * @covers            PHPUnit_Framework_Assert::assertClassNotHasAttribute
-     * @expectedException PHPUnit_Framework_Exception
-     */
-    public function testAssertClassNotHasAttributeThrowsException2()
-    {
-        $this->assertClassNotHasAttribute('foo', null);
-    }
-
-    /**
-     * @covers            PHPUnit_Framework_Assert::assertClassNotHasAttribute
-     * @expectedException PHPUnit_Framework_Exception
-     */
-    public function testAssertClassNotHasAttributeThrowsExceptionIfAttributeNameIsNotValid()
-    {
-        $this->assertClassNotHasAttribute('1', 'ClassWithNonPublicAttributes');
-    }
-
-    /**
-     * @covers            PHPUnit_Framework_Assert::assertClassHasStaticAttribute
-     * @expectedException PHPUnit_Framework_Exception
-     */
-    public function testAssertClassHasStaticAttributeThrowsException()
-    {
-        $this->assertClassHasStaticAttribute(null, null);
-    }
-
-    /**
-     * @covers            PHPUnit_Framework_Assert::assertClassHasStaticAttribute
-     * @expectedException PHPUnit_Framework_Exception
-     */
-    public function testAssertClassHasStaticAttributeThrowsException2()
-    {
-        $this->assertClassHasStaticAttribute('foo', null);
-    }
-
-    /**
-     * @covers            PHPUnit_Framework_Assert::assertClassHasStaticAttribute
-     * @expectedException PHPUnit_Framework_Exception
-     */
-    public function testAssertClassHasStaticAttributeThrowsExceptionIfAttributeNameIsNotValid()
-    {
-        $this->assertClassHasStaticAttribute('1', 'ClassWithNonPublicAttributes');
-    }
-
-    /**
-     * @covers            PHPUnit_Framework_Assert::assertClassNotHasStaticAttribute
-     * @expectedException PHPUnit_Framework_Exception
-     */
-    public function testAssertClassNotHasStaticAttributeThrowsException()
-    {
-        $this->assertClassNotHasStaticAttribute(null, null);
-    }
-
-    /**
-     * @covers            PHPUnit_Framework_Assert::assertClassNotHasStaticAttribute
-     * @expectedException PHPUnit_Framework_Exception
-     */
-    public function testAssertClassNotHasStaticAttributeThrowsException2()
-    {
-        $this->assertClassNotHasStaticAttribute('foo', null);
-    }
-
-    /**
-     * @covers            PHPUnit_Framework_Assert::assertClassNotHasStaticAttribute
-     * @expectedException PHPUnit_Framework_Exception
-     */
-    public function testAssertClassNotHasStaticAttributeThrowsExceptionIfAttributeNameIsNotValid()
-    {
-        $this->assertClassNotHasStaticAttribute('1', 'ClassWithNonPublicAttributes');
-    }
-
-    /**
-     * @covers            PHPUnit_Framework_Assert::assertObjectHasAttribute
-     * @expectedException PHPUnit_Framework_Exception
-     */
-    public function testAssertObjectHasAttributeThrowsException()
-    {
-        $this->assertObjectHasAttribute(null, null);
-    }
-
-    /**
-     * @covers            PHPUnit_Framework_Assert::assertObjectHasAttribute
-     * @expectedException PHPUnit_Framework_Exception
-     */
-    public function testAssertObjectHasAttributeThrowsException2()
-    {
-        $this->assertObjectHasAttribute('foo', null);
-    }
-
-    /**
-     * @covers            PHPUnit_Framework_Assert::assertObjectHasAttribute
-     * @expectedException PHPUnit_Framework_Exception
-     */
-    public function testAssertObjectHasAttributeThrowsExceptionIfAttributeNameIsNotValid()
-    {
-        $this->assertObjectHasAttribute('1', 'ClassWithNonPublicAttributes');
-    }
-
-    /**
-     * @covers            PHPUnit_Framework_Assert::assertObjectNotHasAttribute
-     * @expectedException PHPUnit_Framework_Exception
-     */
-    public function testAssertObjectNotHasAttributeThrowsException()
-    {
-        $this->assertObjectNotHasAttribute(null, null);
-    }
-
-    /**
-     * @covers            PHPUnit_Framework_Assert::assertObjectNotHasAttribute
-     * @expectedException PHPUnit_Framework_Exception
-     */
-    public function testAssertObjectNotHasAttributeThrowsException2()
-    {
-        $this->assertObjectNotHasAttribute('foo', null);
-    }
-
-    /**
-     * @covers            PHPUnit_Framework_Assert::assertObjectNotHasAttribute
-     * @expectedException PHPUnit_Framework_Exception
-     */
-    public function testAssertObjectNotHasAttributeThrowsExceptionIfAttributeNameIsNotValid()
-    {
-        $this->assertObjectNotHasAttribute('1', 'ClassWithNonPublicAttributes');
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertClassHasAttribute
-     */
-    public function testClassHasPublicAttribute()
-    {
-        $this->assertClassHasAttribute('publicAttribute', 'ClassWithNonPublicAttributes');
-
-        try {
-            $this->assertClassHasAttribute('attribute', 'ClassWithNonPublicAttributes');
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertClassNotHasAttribute
-     */
-    public function testClassNotHasPublicAttribute()
-    {
-        $this->assertClassNotHasAttribute('attribute', 'ClassWithNonPublicAttributes');
-
-        try {
-            $this->assertClassNotHasAttribute('publicAttribute', 'ClassWithNonPublicAttributes');
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertClassHasStaticAttribute
-     */
-    public function testClassHasPublicStaticAttribute()
-    {
-        $this->assertClassHasStaticAttribute('publicStaticAttribute', 'ClassWithNonPublicAttributes');
-
-        try {
-            $this->assertClassHasStaticAttribute('attribute', 'ClassWithNonPublicAttributes');
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertClassNotHasStaticAttribute
-     */
-    public function testClassNotHasPublicStaticAttribute()
-    {
-        $this->assertClassNotHasStaticAttribute('attribute', 'ClassWithNonPublicAttributes');
-
-        try {
-            $this->assertClassNotHasStaticAttribute('publicStaticAttribute', 'ClassWithNonPublicAttributes');
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertObjectHasAttribute
-     */
-    public function testObjectHasPublicAttribute()
-    {
-        $obj = new ClassWithNonPublicAttributes;
-
-        $this->assertObjectHasAttribute('publicAttribute', $obj);
-
-        try {
-            $this->assertObjectHasAttribute('attribute', $obj);
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertObjectNotHasAttribute
-     */
-    public function testObjectNotHasPublicAttribute()
-    {
-        $obj = new ClassWithNonPublicAttributes;
-
-        $this->assertObjectNotHasAttribute('attribute', $obj);
-
-        try {
-            $this->assertObjectNotHasAttribute('publicAttribute', $obj);
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertObjectHasAttribute
-     */
-    public function testObjectHasOnTheFlyAttribute()
-    {
-        $obj      = new stdClass;
-        $obj->foo = 'bar';
-
-        $this->assertObjectHasAttribute('foo', $obj);
-
-        try {
-            $this->assertObjectHasAttribute('bar', $obj);
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertObjectNotHasAttribute
-     */
-    public function testObjectNotHasOnTheFlyAttribute()
-    {
-        $obj      = new stdClass;
-        $obj->foo = 'bar';
-
-        $this->assertObjectNotHasAttribute('bar', $obj);
-
-        try {
-            $this->assertObjectNotHasAttribute('foo', $obj);
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertObjectHasAttribute
-     */
-    public function testObjectHasProtectedAttribute()
-    {
-        $obj = new ClassWithNonPublicAttributes;
-
-        $this->assertObjectHasAttribute('protectedAttribute', $obj);
-
-        try {
-            $this->assertObjectHasAttribute('attribute', $obj);
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertObjectNotHasAttribute
-     */
-    public function testObjectNotHasProtectedAttribute()
-    {
-        $obj = new ClassWithNonPublicAttributes;
-
-        $this->assertObjectNotHasAttribute('attribute', $obj);
-
-        try {
-            $this->assertObjectNotHasAttribute('protectedAttribute', $obj);
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertObjectHasAttribute
-     */
-    public function testObjectHasPrivateAttribute()
-    {
-        $obj = new ClassWithNonPublicAttributes;
-
-        $this->assertObjectHasAttribute('privateAttribute', $obj);
-
-        try {
-            $this->assertObjectHasAttribute('attribute', $obj);
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertObjectNotHasAttribute
-     */
-    public function testObjectNotHasPrivateAttribute()
-    {
-        $obj = new ClassWithNonPublicAttributes;
-
-        $this->assertObjectNotHasAttribute('attribute', $obj);
-
-        try {
-            $this->assertObjectNotHasAttribute('privateAttribute', $obj);
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertThat
-     * @covers PHPUnit_Framework_Assert::attribute
-     * @covers PHPUnit_Framework_Assert::equalTo
-     */
-    public function testAssertThatAttributeEquals()
-    {
-        $this->assertThat(
-            new ClassWithNonPublicAttributes,
-            $this->attribute(
-                $this->equalTo('foo'),
-                'publicAttribute'
-            )
-        );
-    }
-
-    /**
-     * @covers            PHPUnit_Framework_Assert::assertThat
-     * @covers            PHPUnit_Framework_Assert::attribute
-     * @covers            PHPUnit_Framework_Assert::equalTo
-     * @expectedException PHPUnit_Framework_AssertionFailedError
-     */
-    public function testAssertThatAttributeEquals2()
-    {
-        $this->assertThat(
-            new ClassWithNonPublicAttributes,
-            $this->attribute(
-                $this->equalTo('bar'),
-                'publicAttribute'
-            )
-        );
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertThat
-     * @covers PHPUnit_Framework_Assert::attribute
-     * @covers PHPUnit_Framework_Assert::equalTo
-     */
-    public function testAssertThatAttributeEqualTo()
-    {
-        $this->assertThat(
-            new ClassWithNonPublicAttributes,
-            $this->attributeEqualTo('publicAttribute', 'foo')
-        );
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertThat
-     * @covers PHPUnit_Framework_Assert::anything
-     */
-    public function testAssertThatAnything()
-    {
-        $this->assertThat('anything', $this->anything());
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertThat
-     * @covers PHPUnit_Framework_Assert::isTrue
-     */
-    public function testAssertThatIsTrue()
-    {
-        $this->assertThat(true, $this->isTrue());
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertThat
-     * @covers PHPUnit_Framework_Assert::isFalse
-     */
-    public function testAssertThatIsFalse()
-    {
-        $this->assertThat(false, $this->isFalse());
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertThat
-     * @covers PHPUnit_Framework_Assert::isJson
-     */
-    public function testAssertThatIsJson()
-    {
-        $this->assertThat('{}', $this->isJson());
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertThat
-     * @covers PHPUnit_Framework_Assert::anything
-     * @covers PHPUnit_Framework_Assert::logicalAnd
-     */
-    public function testAssertThatAnythingAndAnything()
-    {
-        $this->assertThat(
-            'anything',
-            $this->logicalAnd(
-                $this->anything(), $this->anything()
-            )
-        );
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertThat
-     * @covers PHPUnit_Framework_Assert::anything
-     * @covers PHPUnit_Framework_Assert::logicalOr
-     */
-    public function testAssertThatAnythingOrAnything()
-    {
-        $this->assertThat(
-            'anything',
-            $this->logicalOr(
-                $this->anything(), $this->anything()
-            )
-        );
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertThat
-     * @covers PHPUnit_Framework_Assert::anything
-     * @covers PHPUnit_Framework_Assert::logicalNot
-     * @covers PHPUnit_Framework_Assert::logicalXor
-     */
-    public function testAssertThatAnythingXorNotAnything()
-    {
-        $this->assertThat(
-            'anything',
-            $this->logicalXor(
-                $this->anything(),
-                $this->logicalNot($this->anything())
-            )
-        );
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertThat
-     * @covers PHPUnit_Framework_Assert::contains
-     */
-    public function testAssertThatContains()
-    {
-        $this->assertThat(array('foo'), $this->contains('foo'));
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertThat
-     * @covers PHPUnit_Framework_Assert::stringContains
-     */
-    public function testAssertThatStringContains()
-    {
-        $this->assertThat('barfoobar', $this->stringContains('foo'));
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertThat
-     * @covers PHPUnit_Framework_Assert::containsOnly
-     */
-    public function testAssertThatContainsOnly()
-    {
-        $this->assertThat(array('foo'), $this->containsOnly('string'));
-    }
-    /**
-     * @covers PHPUnit_Framework_Assert::assertThat
-     * @covers PHPUnit_Framework_Assert::containsOnlyInstancesOf
-     */
-    public function testAssertThatContainsOnlyInstancesOf()
-    {
-        $this->assertThat(array(new Book), $this->containsOnlyInstancesOf('Book'));
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertThat
-     * @covers PHPUnit_Framework_Assert::arrayHasKey
-     */
-    public function testAssertThatArrayHasKey()
-    {
-        $this->assertThat(array('foo' => 'bar'), $this->arrayHasKey('foo'));
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertThat
-     * @covers PHPUnit_Framework_Assert::classHasAttribute
-     */
-    public function testAssertThatClassHasAttribute()
-    {
-        $this->assertThat(
-            new ClassWithNonPublicAttributes,
-            $this->classHasAttribute('publicAttribute')
-        );
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertThat
-     * @covers PHPUnit_Framework_Assert::classHasStaticAttribute
-     */
-    public function testAssertThatClassHasStaticAttribute()
-    {
-        $this->assertThat(
-            new ClassWithNonPublicAttributes,
-            $this->classHasStaticAttribute('publicStaticAttribute')
-        );
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertThat
-     * @covers PHPUnit_Framework_Assert::objectHasAttribute
-     */
-    public function testAssertThatObjectHasAttribute()
-    {
-        $this->assertThat(
-            new ClassWithNonPublicAttributes,
-            $this->objectHasAttribute('publicAttribute')
-        );
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertThat
-     * @covers PHPUnit_Framework_Assert::equalTo
-     */
-    public function testAssertThatEqualTo()
-    {
-        $this->assertThat('foo', $this->equalTo('foo'));
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertThat
-     * @covers PHPUnit_Framework_Assert::identicalTo
-     */
-    public function testAssertThatIdenticalTo()
-    {
-        $value      = new stdClass;
-        $constraint = $this->identicalTo($value);
-
-        $this->assertThat($value, $constraint);
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertThat
-     * @covers PHPUnit_Framework_Assert::isInstanceOf
-     */
-    public function testAssertThatIsInstanceOf()
-    {
-        $this->assertThat(new stdClass, $this->isInstanceOf('StdClass'));
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertThat
-     * @covers PHPUnit_Framework_Assert::isType
-     */
-    public function testAssertThatIsType()
-    {
-        $this->assertThat('string', $this->isType('string'));
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertThat
-     * @covers PHPUnit_Framework_Assert::isEmpty
-     */
-    public function testAssertThatIsEmpty()
-    {
-        $this->assertThat(array(), $this->isEmpty());
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertThat
-     * @covers PHPUnit_Framework_Assert::fileExists
-     */
-    public function testAssertThatFileExists()
-    {
-        $this->assertThat(__FILE__, $this->fileExists());
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertThat
-     * @covers PHPUnit_Framework_Assert::greaterThan
-     */
-    public function testAssertThatGreaterThan()
-    {
-        $this->assertThat(2, $this->greaterThan(1));
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertThat
-     * @covers PHPUnit_Framework_Assert::greaterThanOrEqual
-     */
-    public function testAssertThatGreaterThanOrEqual()
-    {
-        $this->assertThat(2, $this->greaterThanOrEqual(1));
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertThat
-     * @covers PHPUnit_Framework_Assert::lessThan
-     */
-    public function testAssertThatLessThan()
-    {
-        $this->assertThat(1, $this->lessThan(2));
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertThat
-     * @covers PHPUnit_Framework_Assert::lessThanOrEqual
-     */
-    public function testAssertThatLessThanOrEqual()
-    {
-        $this->assertThat(1, $this->lessThanOrEqual(2));
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertThat
-     * @covers PHPUnit_Framework_Assert::matchesRegularExpression
-     */
-    public function testAssertThatMatchesRegularExpression()
-    {
-        $this->assertThat('foobar', $this->matchesRegularExpression('/foo/'));
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertThat
-     * @covers PHPUnit_Framework_Assert::callback
-     */
-    public function testAssertThatCallback()
-    {
-        $this->assertThat(
-            null,
-            $this->callback(function ($other) { return true; })
-        );
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertThat
-     * @covers PHPUnit_Framework_Assert::countOf
-     */
-    public function testAssertThatCountOf()
-    {
-        $this->assertThat(array(1), $this->countOf(1));
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertFileEquals
-     */
-    public function testAssertFileEquals()
-    {
-        $this->assertFileEquals(
-            $this->filesDirectory . 'foo.xml',
-            $this->filesDirectory . 'foo.xml'
-        );
-
-        try {
-            $this->assertFileEquals(
-                $this->filesDirectory . 'foo.xml',
-                $this->filesDirectory . 'bar.xml'
-            );
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertFileNotEquals
-     */
-    public function testAssertFileNotEquals()
-    {
-        $this->assertFileNotEquals(
-            $this->filesDirectory . 'foo.xml',
-            $this->filesDirectory . 'bar.xml'
-        );
-
-        try {
-            $this->assertFileNotEquals(
-                $this->filesDirectory . 'foo.xml',
-                $this->filesDirectory . 'foo.xml'
-            );
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertStringEqualsFile
-     */
-    public function testAssertStringEqualsFile()
-    {
-        $this->assertStringEqualsFile(
-            $this->filesDirectory . 'foo.xml',
-            file_get_contents($this->filesDirectory . 'foo.xml')
-        );
-
-        try {
-            $this->assertStringEqualsFile(
-                $this->filesDirectory . 'foo.xml',
-                file_get_contents($this->filesDirectory . 'bar.xml')
-            );
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertStringNotEqualsFile
-     */
-    public function testAssertStringNotEqualsFile()
-    {
-        $this->assertStringNotEqualsFile(
-            $this->filesDirectory . 'foo.xml',
-            file_get_contents($this->filesDirectory . 'bar.xml')
-        );
-
-        try {
-            $this->assertStringNotEqualsFile(
-                $this->filesDirectory . 'foo.xml',
-                file_get_contents($this->filesDirectory . 'foo.xml')
-            );
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers            PHPUnit_Framework_Assert::assertStringStartsWith
-     * @expectedException PHPUnit_Framework_Exception
-     */
-    public function testAssertStringStartsWithThrowsException()
-    {
-        $this->assertStringStartsWith(null, null);
-    }
-
-    /**
-     * @covers            PHPUnit_Framework_Assert::assertStringStartsWith
-     * @expectedException PHPUnit_Framework_Exception
-     */
-    public function testAssertStringStartsWithThrowsException2()
-    {
-        $this->assertStringStartsWith('', null);
-    }
-
-    /**
-     * @covers            PHPUnit_Framework_Assert::assertStringStartsNotWith
-     * @expectedException PHPUnit_Framework_Exception
-     */
-    public function testAssertStringStartsNotWithThrowsException()
-    {
-        $this->assertStringStartsNotWith(null, null);
-    }
-
-    /**
-     * @covers            PHPUnit_Framework_Assert::assertStringStartsNotWith
-     * @expectedException PHPUnit_Framework_Exception
-     */
-    public function testAssertStringStartsNotWithThrowsException2()
-    {
-        $this->assertStringStartsNotWith('', null);
-    }
-
-    /**
-     * @covers            PHPUnit_Framework_Assert::assertStringEndsWith
-     * @expectedException PHPUnit_Framework_Exception
-     */
-    public function testAssertStringEndsWithThrowsException()
-    {
-        $this->assertStringEndsWith(null, null);
-    }
-
-    /**
-     * @covers            PHPUnit_Framework_Assert::assertStringEndsWith
-     * @expectedException PHPUnit_Framework_Exception
-     */
-    public function testAssertStringEndsWithThrowsException2()
-    {
-        $this->assertStringEndsWith('', null);
-    }
-
-    /**
-     * @covers            PHPUnit_Framework_Assert::assertStringEndsNotWith
-     * @expectedException PHPUnit_Framework_Exception
-     */
-    public function testAssertStringEndsNotWithThrowsException()
-    {
-        $this->assertStringEndsNotWith(null, null);
-    }
-
-    /**
-     * @covers            PHPUnit_Framework_Assert::assertStringEndsNotWith
-     * @expectedException PHPUnit_Framework_Exception
-     */
-    public function testAssertStringEndsNotWithThrowsException2()
-    {
-        $this->assertStringEndsNotWith('', null);
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertStringStartsWith
-     */
-    public function testAssertStringStartsWith()
-    {
-        $this->assertStringStartsWith('prefix', 'prefixfoo');
-
-        try {
-            $this->assertStringStartsWith('prefix', 'foo');
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertStringStartsNotWith
-     */
-    public function testAssertStringStartsNotWith()
-    {
-        $this->assertStringStartsNotWith('prefix', 'foo');
-
-        try {
-            $this->assertStringStartsNotWith('prefix', 'prefixfoo');
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertStringEndsWith
-     */
-    public function testAssertStringEndsWith()
-    {
-        $this->assertStringEndsWith('suffix', 'foosuffix');
-
-        try {
-            $this->assertStringEndsWith('suffix', 'foo');
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertStringEndsNotWith
-     */
-    public function testAssertStringEndsNotWith()
-    {
-        $this->assertStringEndsNotWith('suffix', 'foo');
-
-        try {
-            $this->assertStringEndsNotWith('suffix', 'foosuffix');
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertStringMatchesFormat
-     * @expectedException PHPUnit_Framework_Exception
-     */
-    public function testAssertStringMatchesFormatRaisesExceptionForInvalidFirstArgument()
-    {
-        $this->assertStringMatchesFormat(null, '');
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertStringMatchesFormat
-     * @expectedException PHPUnit_Framework_Exception
-     */
-    public function testAssertStringMatchesFormatRaisesExceptionForInvalidSecondArgument()
-    {
-        $this->assertStringMatchesFormat('', null);
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertStringMatchesFormat
-     */
-    public function testAssertStringMatchesFormat()
-    {
-        $this->assertStringMatchesFormat('*%s*', '***');
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertStringMatchesFormat
-     * @expectedException PHPUnit_Framework_AssertionFailedError
-     */
-    public function testAssertStringMatchesFormatFailure()
-    {
-        $this->assertStringMatchesFormat('*%s*', '**');
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertStringNotMatchesFormat
-     * @expectedException PHPUnit_Framework_Exception
-     */
-    public function testAssertStringNotMatchesFormatRaisesExceptionForInvalidFirstArgument()
-    {
-        $this->assertStringNotMatchesFormat(null, '');
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertStringNotMatchesFormat
-     * @expectedException PHPUnit_Framework_Exception
-     */
-    public function testAssertStringNotMatchesFormatRaisesExceptionForInvalidSecondArgument()
-    {
-        $this->assertStringNotMatchesFormat('', null);
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertStringNotMatchesFormat
-     */
-    public function testAssertStringNotMatchesFormat()
-    {
-        $this->assertStringNotMatchesFormat('*%s*', '**');
-
-        try {
-            $this->assertStringMatchesFormat('*%s*', '**');
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertEmpty
-     */
-    public function testAssertEmpty()
-    {
-        $this->assertEmpty(array());
-
-        try {
-            $this->assertEmpty(array('foo'));
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertNotEmpty
-     */
-    public function testAssertNotEmpty()
-    {
-        $this->assertNotEmpty(array('foo'));
-
-        try {
-            $this->assertNotEmpty(array());
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertAttributeEmpty
-     */
-    public function testAssertAttributeEmpty()
-    {
-        $o    = new stdClass;
-        $o->a = array();
-
-        $this->assertAttributeEmpty('a', $o);
-
-        try {
-            $o->a = array('b');
-            $this->assertAttributeEmpty('a', $o);
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertAttributeNotEmpty
-     */
-    public function testAssertAttributeNotEmpty()
-    {
-        $o    = new stdClass;
-        $o->a = array('b');
-
-        $this->assertAttributeNotEmpty('a', $o);
-
-        try {
-            $o->a = array();
-            $this->assertAttributeNotEmpty('a', $o);
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::markTestIncomplete
-     */
-    public function testMarkTestIncomplete()
-    {
-        try {
-            $this->markTestIncomplete('incomplete');
-        } catch (PHPUnit_Framework_IncompleteTestError $e) {
-            $this->assertEquals('incomplete', $e->getMessage());
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::markTestSkipped
-     */
-    public function testMarkTestSkipped()
-    {
-        try {
-            $this->markTestSkipped('skipped');
-        } catch (PHPUnit_Framework_SkippedTestError $e) {
-            $this->assertEquals('skipped', $e->getMessage());
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertCount
-     */
-    public function testAssertCount()
-    {
-        $this->assertCount(2, array(1, 2));
-
-        try {
-            $this->assertCount(2, array(1, 2, 3));
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertCount
-     */
-    public function testAssertCountTraversable()
-    {
-        $this->assertCount(2, new ArrayIterator(array(1, 2)));
-
-        try {
-            $this->assertCount(2, new ArrayIterator(array(1, 2, 3)));
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertCount
-     */
-    public function testAssertCountThrowsExceptionIfExpectedCountIsNoInteger()
-    {
-        try {
-            $this->assertCount('a', array());
-        } catch (PHPUnit_Framework_Exception $e) {
-            $this->assertEquals('Argument #1 (No Value) of PHPUnit_Framework_Assert::assertCount() must be a integer', $e->getMessage());
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertCount
-     */
-    public function testAssertCountThrowsExceptionIfElementIsNotCountable()
-    {
-        try {
-            $this->assertCount(2, '');
-        } catch (PHPUnit_Framework_Exception $e) {
-            $this->assertEquals('Argument #2 (No Value) of PHPUnit_Framework_Assert::assertCount() must be a countable or traversable', $e->getMessage());
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertAttributeCount
-     */
-    public function testAssertAttributeCount()
-    {
-        $o    = new stdClass;
-        $o->a = array();
-
-        $this->assertAttributeCount(0, 'a', $o);
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertNotCount
-     */
-    public function testAssertNotCount()
-    {
-        $this->assertNotCount(2, array(1, 2, 3));
-
-        try {
-            $this->assertNotCount(2, array(1, 2));
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertNotCount
-     * @expectedException PHPUnit_Framework_Exception
-     */
-    public function testAssertNotCountThrowsExceptionIfExpectedCountIsNoInteger()
-    {
-        $this->assertNotCount('a', array());
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertNotCount
-     * @expectedException PHPUnit_Framework_Exception
-     */
-    public function testAssertNotCountThrowsExceptionIfElementIsNotCountable()
-    {
-        $this->assertNotCount(2, '');
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertAttributeNotCount
-     */
-    public function testAssertAttributeNotCount()
-    {
-        $o    = new stdClass;
-        $o->a = array();
-
-        $this->assertAttributeNotCount(1, 'a', $o);
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertSameSize
-     */
-    public function testAssertSameSize()
-    {
-        $this->assertSameSize(array(1, 2), array(3, 4));
-
-        try {
-            $this->assertSameSize(array(1, 2), array(1, 2, 3));
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertSameSize
-     */
-    public function testAssertSameSizeThrowsExceptionIfExpectedIsNotCountable()
-    {
-        try {
-            $this->assertSameSize('a', array());
-        } catch (PHPUnit_Framework_Exception $e) {
-            $this->assertEquals('Argument #1 (No Value) of PHPUnit_Framework_Assert::assertSameSize() must be a countable or traversable', $e->getMessage());
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertSameSize
-     */
-    public function testAssertSameSizeThrowsExceptionIfActualIsNotCountable()
-    {
-        try {
-            $this->assertSameSize(array(), '');
-        } catch (PHPUnit_Framework_Exception $e) {
-            $this->assertEquals('Argument #2 (No Value) of PHPUnit_Framework_Assert::assertSameSize() must be a countable or traversable', $e->getMessage());
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertNotSameSize
-     */
-    public function testAssertNotSameSize()
-    {
-        $this->assertNotSameSize(array(1, 2), array(1, 2, 3));
-
-        try {
-            $this->assertNotSameSize(array(1, 2), array(3, 4));
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertNotSameSize
-     * @expectedException PHPUnit_Framework_Exception
-     */
-    public function testAssertNotSameSizeThrowsExceptionIfExpectedIsNotCountable()
-    {
-        $this->assertNotSameSize('a', array());
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertNotSameSize
-     * @expectedException PHPUnit_Framework_Exception
-     */
-    public function testAssertNotSameSizeThrowsExceptionIfActualIsNotCountable()
-    {
-        $this->assertNotSameSize(array(), '');
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertJson
-     * @expectedException PHPUnit_Framework_Exception
-     */
-    public function testAssertJsonRaisesExceptionForInvalidArgument()
-    {
-        $this->assertJson(null);
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertJson
-     */
-    public function testAssertJson()
-    {
-        $this->assertJson('{}');
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertJsonStringEqualsJsonString
-     */
-    public function testAssertJsonStringEqualsJsonString()
-    {
-        $expected = '{"Mascott" : "Tux"}';
-        $actual   = '{"Mascott" : "Tux"}';
-        $message  = 'Given Json strings do not match';
-
-        $this->assertJsonStringEqualsJsonString($expected, $actual, $message);
-    }
-
-    /**
-     * @dataProvider validInvalidJsonDataprovider
-     * @covers PHPUnit_Framework_Assert::assertJsonStringEqualsJsonString
-     */
-    public function testAssertJsonStringEqualsJsonStringErrorRaised($expected, $actual)
-    {
-        try {
-            $this->assertJsonStringEqualsJsonString($expected, $actual);
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-        $this->fail('Expected exception not found');
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertJsonStringNotEqualsJsonString
-     */
-    public function testAssertJsonStringNotEqualsJsonString()
-    {
-        $expected = '{"Mascott" : "Beastie"}';
-        $actual   = '{"Mascott" : "Tux"}';
-        $message  = 'Given Json strings do match';
-
-        $this->assertJsonStringNotEqualsJsonString($expected, $actual, $message);
-    }
-
-    /**
-     * @dataProvider validInvalidJsonDataprovider
-     * @covers PHPUnit_Framework_Assert::assertJsonStringNotEqualsJsonString
-     */
-    public function testAssertJsonStringNotEqualsJsonStringErrorRaised($expected, $actual)
-    {
-        try {
-            $this->assertJsonStringNotEqualsJsonString($expected, $actual);
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-        $this->fail('Expected exception not found');
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertJsonStringEqualsJsonFile
-     */
-    public function testAssertJsonStringEqualsJsonFile()
-    {
-        $file    = __DIR__ . '/../_files/JsonData/simpleObject.json';
-        $actual  = json_encode(array('Mascott' => 'Tux'));
-        $message = '';
-        $this->assertJsonStringEqualsJsonFile($file, $actual, $message);
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertJsonStringEqualsJsonFile
-     */
-    public function testAssertJsonStringEqualsJsonFileExpectingExpectationFailedException()
-    {
-        $file    = __DIR__ . '/../_files/JsonData/simpleObject.json';
-        $actual  = json_encode(array('Mascott' => 'Beastie'));
-        $message = '';
-        try {
-            $this->assertJsonStringEqualsJsonFile($file, $actual, $message);
-        } catch (PHPUnit_Framework_ExpectationFailedException $e) {
-            $this->assertEquals(
-                'Failed asserting that \'{"Mascott":"Beastie"}\' matches JSON string "{"Mascott":"Tux"}".',
-                $e->getMessage()
-            );
-
-            return;
-        }
-
-        $this->fail('Expected Exception not thrown.');
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertJsonStringEqualsJsonFile
-     */
-    public function testAssertJsonStringEqualsJsonFileExpectingException()
-    {
-        $file = __DIR__ . '/../_files/JsonData/simpleObject.json';
-        try {
-            $this->assertJsonStringEqualsJsonFile($file, null);
-        } catch (PHPUnit_Framework_Exception $e) {
-            return;
-        }
-        $this->fail('Expected Exception not thrown.');
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertJsonStringNotEqualsJsonFile
-     */
-    public function testAssertJsonStringNotEqualsJsonFile()
-    {
-        $file    = __DIR__ . '/../_files/JsonData/simpleObject.json';
-        $actual  = json_encode(array('Mascott' => 'Beastie'));
-        $message = '';
-        $this->assertJsonStringNotEqualsJsonFile($file, $actual, $message);
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertJsonStringNotEqualsJsonFile
-     */
-    public function testAssertJsonStringNotEqualsJsonFileExpectingException()
-    {
-        $file = __DIR__ . '/../_files/JsonData/simpleObject.json';
-        try {
-            $this->assertJsonStringNotEqualsJsonFile($file, null);
-        } catch (PHPUnit_Framework_Exception $e) {
-            return;
-        }
-        $this->fail('Expected exception not found.');
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertJsonFileNotEqualsJsonFile
-     */
-    public function testAssertJsonFileNotEqualsJsonFile()
-    {
-        $fileExpected = __DIR__ . '/../_files/JsonData/simpleObject.json';
-        $fileActual   = __DIR__ . '/../_files/JsonData/arrayObject.json';
-        $message      = '';
-        $this->assertJsonFileNotEqualsJsonFile($fileExpected, $fileActual, $message);
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertJsonFileEqualsJsonFile
-     */
-    public function testAssertJsonFileEqualsJsonFile()
-    {
-        $file    = __DIR__ . '/../_files/JsonData/simpleObject.json';
-        $message = '';
-        $this->assertJsonFileEqualsJsonFile($file, $file, $message);
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertInstanceOf
-     */
-    public function testAssertInstanceOf()
-    {
-        $this->assertInstanceOf('stdClass', new stdClass);
-
-        try {
-            $this->assertInstanceOf('Exception', new stdClass);
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertInstanceOf
-     * @expectedException PHPUnit_Framework_Exception
-     */
-    public function testAssertInstanceOfThrowsExceptionForInvalidArgument()
-    {
-        $this->assertInstanceOf(null, new stdClass);
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertAttributeInstanceOf
-     */
-    public function testAssertAttributeInstanceOf()
-    {
-        $o    = new stdClass;
-        $o->a = new stdClass;
-
-        $this->assertAttributeInstanceOf('stdClass', 'a', $o);
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertNotInstanceOf
-     */
-    public function testAssertNotInstanceOf()
-    {
-        $this->assertNotInstanceOf('Exception', new stdClass);
-
-        try {
-            $this->assertNotInstanceOf('stdClass', new stdClass);
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertNotInstanceOf
-     * @expectedException PHPUnit_Framework_Exception
-     */
-    public function testAssertNotInstanceOfThrowsExceptionForInvalidArgument()
-    {
-        $this->assertNotInstanceOf(null, new stdClass);
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertAttributeNotInstanceOf
-     */
-    public function testAssertAttributeNotInstanceOf()
-    {
-        $o    = new stdClass;
-        $o->a = new stdClass;
-
-        $this->assertAttributeNotInstanceOf('Exception', 'a', $o);
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertInternalType
-     */
-    public function testAssertInternalType()
-    {
-        $this->assertInternalType('integer', 1);
-
-        try {
-            $this->assertInternalType('string', 1);
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertInternalType
-     */
-    public function testAssertInternalTypeDouble()
-    {
-        $this->assertInternalType('double', 1.0);
-
-        try {
-            $this->assertInternalType('double', 1);
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertInternalType
-     * @expectedException PHPUnit_Framework_Exception
-     */
-    public function testAssertInternalTypeThrowsExceptionForInvalidArgument()
-    {
-        $this->assertInternalType(null, 1);
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertAttributeInternalType
-     */
-    public function testAssertAttributeInternalType()
-    {
-        $o    = new stdClass;
-        $o->a = 1;
-
-        $this->assertAttributeInternalType('integer', 'a', $o);
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertNotInternalType
-     */
-    public function testAssertNotInternalType()
-    {
-        $this->assertNotInternalType('string', 1);
-
-        try {
-            $this->assertNotInternalType('integer', 1);
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertNotInternalType
-     * @expectedException PHPUnit_Framework_Exception
-     */
-    public function testAssertNotInternalTypeThrowsExceptionForInvalidArgument()
-    {
-        $this->assertNotInternalType(null, 1);
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertAttributeNotInternalType
-     */
-    public function testAssertAttributeNotInternalType()
-    {
-        $o    = new stdClass;
-        $o->a = 1;
-
-        $this->assertAttributeNotInternalType('string', 'a', $o);
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertStringMatchesFormatFile
-     * @expectedException PHPUnit_Framework_Exception
-     */
-    public function testAssertStringMatchesFormatFileThrowsExceptionForInvalidArgument()
-    {
-        $this->assertStringMatchesFormatFile('not_existing_file', '');
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertStringMatchesFormatFile
-     * @expectedException PHPUnit_Framework_Exception
-     */
-    public function testAssertStringMatchesFormatFileThrowsExceptionForInvalidArgument2()
-    {
-        $this->assertStringMatchesFormatFile($this->filesDirectory . 'expectedFileFormat.txt', null);
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertStringMatchesFormatFile
-     */
-    public function testAssertStringMatchesFormatFile()
-    {
-        $this->assertStringMatchesFormatFile($this->filesDirectory . 'expectedFileFormat.txt', "FOO\n");
-
-        try {
-            $this->assertStringMatchesFormatFile($this->filesDirectory . 'expectedFileFormat.txt', "BAR\n");
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertStringNotMatchesFormatFile
-     * @expectedException PHPUnit_Framework_Exception
-     */
-    public function testAssertStringNotMatchesFormatFileThrowsExceptionForInvalidArgument()
-    {
-        $this->assertStringNotMatchesFormatFile('not_existing_file', '');
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertStringNotMatchesFormatFile
-     * @expectedException PHPUnit_Framework_Exception
-     */
-    public function testAssertStringNotMatchesFormatFileThrowsExceptionForInvalidArgument2()
-    {
-        $this->assertStringNotMatchesFormatFile($this->filesDirectory . 'expectedFileFormat.txt', null);
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::assertStringNotMatchesFormatFile
-     */
-    public function testAssertStringNotMatchesFormatFile()
-    {
-        $this->assertStringNotMatchesFormatFile($this->filesDirectory . 'expectedFileFormat.txt', "BAR\n");
-
-        try {
-            $this->assertStringNotMatchesFormatFile($this->filesDirectory . 'expectedFileFormat.txt', "FOO\n");
-        } catch (PHPUnit_Framework_AssertionFailedError $e) {
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @return array
-     */
-    public static function validInvalidJsonDataprovider()
-    {
-        return array(
-            'error syntax in expected JSON' => array('{"Mascott"::}', '{"Mascott" : "Tux"}'),
-            'error UTF-8 in actual JSON'    => array('{"Mascott" : "Tux"}', '{"Mascott" : :}'),
-        );
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/Framework/BaseTestListenerTest.php b/vendor/phpunit/phpunit/tests/Framework/BaseTestListenerTest.php
deleted file mode 100644
index 0d426cf..0000000
--- a/vendor/phpunit/phpunit/tests/Framework/BaseTestListenerTest.php
+++ /dev/null
@@ -1,34 +0,0 @@
-<?php
-/*
- * This file is part of PHPUnit.
- *
- * (c) Sebastian Bergmann <sebastian@phpunit.de>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-/**
- * @since      Class available since Release 4.0.0
- */
-class Framework_BaseTestListenerTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @var PHPUnit_Framework_TestResult
-     */
-    private $result;
-
-    /**
-     * @covers PHPUnit_Framework_TestResult
-     */
-    public function testEndEventsAreCounted()
-    {
-        $this->result = new PHPUnit_Framework_TestResult;
-        $listener     = new BaseTestListenerSample();
-        $this->result->addListener($listener);
-        $test = new Success;
-        $test->run($this->result);
-
-        $this->assertEquals(1, $listener->endCount);
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/Framework/Constraint/CountTest.php b/vendor/phpunit/phpunit/tests/Framework/Constraint/CountTest.php
deleted file mode 100644
index 79e99e8..0000000
--- a/vendor/phpunit/phpunit/tests/Framework/Constraint/CountTest.php
+++ /dev/null
@@ -1,63 +0,0 @@
-<?php
-/*
- * This file is part of PHPUnit.
- *
- * (c) Sebastian Bergmann <sebastian@phpunit.de>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-/**
- * @since      Class available since Release 3.7.30
- * @covers     PHPUnit_Framework_Constraint_Count
- */
-class CountTest extends PHPUnit_Framework_TestCase
-{
-    public function testCount()
-    {
-        $countConstraint = new PHPUnit_Framework_Constraint_Count(3);
-        $this->assertTrue($countConstraint->evaluate(array(1, 2, 3), '', true));
-
-        $countConstraint = new PHPUnit_Framework_Constraint_Count(0);
-        $this->assertTrue($countConstraint->evaluate(array(), '', true));
-
-        $countConstraint = new PHPUnit_Framework_Constraint_Count(2);
-        $it              = new TestIterator(array(1, 2));
-        $this->assertTrue($countConstraint->evaluate($it, '', true));
-    }
-
-    public function testCountDoesNotChangeIteratorKey()
-    {
-        $countConstraint = new PHPUnit_Framework_Constraint_Count(2);
-
-        // test with 1st implementation of Iterator
-        $it = new TestIterator(array(1, 2));
-
-        $countConstraint->evaluate($it, '', true);
-        $this->assertEquals(1, $it->current());
-
-        $it->next();
-        $countConstraint->evaluate($it, '', true);
-        $this->assertEquals(2, $it->current());
-
-        $it->next();
-        $countConstraint->evaluate($it, '', true);
-        $this->assertFalse($it->valid());
-
-        // test with 2nd implementation of Iterator
-        $it = new TestIterator2(array(1, 2));
-
-        $countConstraint = new PHPUnit_Framework_Constraint_Count(2);
-        $countConstraint->evaluate($it, '', true);
-        $this->assertEquals(1, $it->current());
-
-        $it->next();
-        $countConstraint->evaluate($it, '', true);
-        $this->assertEquals(2, $it->current());
-
-        $it->next();
-        $countConstraint->evaluate($it, '', true);
-        $this->assertFalse($it->valid());
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/Framework/Constraint/ExceptionMessageRegExpTest.php b/vendor/phpunit/phpunit/tests/Framework/Constraint/ExceptionMessageRegExpTest.php
deleted file mode 100644
index 1c02a12..0000000
--- a/vendor/phpunit/phpunit/tests/Framework/Constraint/ExceptionMessageRegExpTest.php
+++ /dev/null
@@ -1,56 +0,0 @@
-<?php
-/*
- * This file is part of PHPUnit.
- *
- * (c) Sebastian Bergmann <sebastian@phpunit.de>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-/**
- * @since      Class available since Release 4.3.0
- * @covers     PHPUnit_Framework_Constraint_ExceptionMessageRegExp
- */
-class ExceptionMessageRegExpTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @expectedException \Exception
-     * @expectedExceptionMessageRegExp /^A polymorphic \w+ message/
-     */
-    public function testRegexMessage()
-    {
-        throw new Exception('A polymorphic exception message');
-    }
-
-    /**
-     * @expectedException \Exception
-     * @expectedExceptionMessageRegExp /^a poly[a-z]+ [a-zA-Z0-9_]+ me(s){2}age$/i
-     */
-    public function testRegexMessageExtreme()
-    {
-        throw new Exception('A polymorphic exception message');
-    }
-
-    /**
-     * @runInSeparateProcess
-     * @requires extension xdebug
-     * @expectedException \Exception
-     * @expectedExceptionMessageRegExp #Screaming preg_match#
-     */
-    public function testMessageXdebugScreamCompatibility()
-    {
-        ini_set('xdebug.scream', '1');
-        throw new Exception('Screaming preg_match');
-    }
-
-    /**
-     * @coversNothing
-     * @expectedException \Exception variadic
-     * @expectedExceptionMessageRegExp /^A variadic \w+ message/
-     */
-    public function testSimultaneousLiteralAndRegExpExceptionMessage()
-    {
-        throw new Exception('A variadic exception message');
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/Framework/Constraint/ExceptionMessageTest.php b/vendor/phpunit/phpunit/tests/Framework/Constraint/ExceptionMessageTest.php
deleted file mode 100644
index 33f4319..0000000
--- a/vendor/phpunit/phpunit/tests/Framework/Constraint/ExceptionMessageTest.php
+++ /dev/null
@@ -1,52 +0,0 @@
-<?php
-/*
- * This file is part of PHPUnit.
- *
- * (c) Sebastian Bergmann <sebastian@phpunit.de>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-/**
- * @since      Class available since Release 4.0.20
- * @covers     PHPUnit_Framework_Constraint_ExceptionMessage
- */
-class ExceptionMessageTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @expectedException \Exception
-     * @expectedExceptionMessage A literal exception message
-     */
-    public function testLiteralMessage()
-    {
-        throw new Exception('A literal exception message');
-    }
-
-    /**
-     * @expectedException \Exception
-     * @expectedExceptionMessage A partial
-     */
-    public function testPatialMessageBegin()
-    {
-        throw new Exception('A partial exception message');
-    }
-
-    /**
-     * @expectedException \Exception
-     * @expectedExceptionMessage partial exception
-     */
-    public function testPatialMessageMiddle()
-    {
-        throw new Exception('A partial exception message');
-    }
-
-    /**
-     * @expectedException \Exception
-     * @expectedExceptionMessage exception message
-     */
-    public function testPatialMessageEnd()
-    {
-        throw new Exception('A partial exception message');
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/Framework/Constraint/JsonMatches/ErrorMessageProviderTest.php b/vendor/phpunit/phpunit/tests/Framework/Constraint/JsonMatches/ErrorMessageProviderTest.php
deleted file mode 100644
index 8529026..0000000
--- a/vendor/phpunit/phpunit/tests/Framework/Constraint/JsonMatches/ErrorMessageProviderTest.php
+++ /dev/null
@@ -1,83 +0,0 @@
-<?php
-/*
- * This file is part of PHPUnit.
- *
- * (c) Sebastian Bergmann <sebastian@phpunit.de>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-/**
- * @since      File available since Release 3.7.0
- */
-class Framework_Constraint_JsonMatches_ErrorMessageProviderTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @dataProvider translateTypeToPrefixDataprovider
-     * @covers PHPUnit_Framework_Constraint_JsonMatches_ErrorMessageProvider::translateTypeToPrefix
-     */
-    public function testTranslateTypeToPrefix($expected, $type)
-    {
-        $this->assertEquals(
-            $expected,
-            PHPUnit_Framework_Constraint_JsonMatches_ErrorMessageProvider::translateTypeToPrefix($type)
-        );
-    }
-
-    /**
-     * @dataProvider determineJsonErrorDataprovider
-     * @covers PHPUnit_Framework_Constraint_JsonMatches_ErrorMessageProvider::determineJsonError
-     */
-    public function testDetermineJsonError($expected, $error, $prefix)
-    {
-        $this->assertEquals(
-            $expected,
-            PHPUnit_Framework_Constraint_JsonMatches_ErrorMessageProvider::determineJsonError(
-                $error,
-                $prefix
-            )
-        );
-    }
-
-    public static function determineJsonErrorDataprovider()
-    {
-        return array(
-            'JSON_ERROR_NONE'  => array(
-                null, 'json_error_none', ''
-            ),
-            'JSON_ERROR_DEPTH' => array(
-                'Maximum stack depth exceeded', JSON_ERROR_DEPTH, ''
-            ),
-            'prefixed JSON_ERROR_DEPTH' => array(
-                'TUX: Maximum stack depth exceeded', JSON_ERROR_DEPTH, 'TUX: '
-            ),
-            'JSON_ERROR_STATE_MISMatch' => array(
-                'Underflow or the modes mismatch', JSON_ERROR_STATE_MISMATCH, ''
-            ),
-            'JSON_ERROR_CTRL_CHAR' => array(
-                'Unexpected control character found', JSON_ERROR_CTRL_CHAR, ''
-            ),
-            'JSON_ERROR_SYNTAX' => array(
-                'Syntax error, malformed JSON', JSON_ERROR_SYNTAX, ''
-            ),
-            'JSON_ERROR_UTF8`' => array(
-                'Malformed UTF-8 characters, possibly incorrectly encoded',
-                JSON_ERROR_UTF8,
-                ''
-            ),
-            'Invalid error indicator' => array(
-                'Unknown error', 55, ''
-            ),
-        );
-    }
-
-    public static function translateTypeToPrefixDataprovider()
-    {
-        return array(
-            'expected' => array('Expected value JSON decode error - ', 'expected'),
-            'actual'   => array('Actual value JSON decode error - ', 'actual'),
-            'default'  => array('', ''),
-        );
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/Framework/Constraint/JsonMatchesTest.php b/vendor/phpunit/phpunit/tests/Framework/Constraint/JsonMatchesTest.php
deleted file mode 100644
index 3203100..0000000
--- a/vendor/phpunit/phpunit/tests/Framework/Constraint/JsonMatchesTest.php
+++ /dev/null
@@ -1,48 +0,0 @@
-<?php
-/*
- * This file is part of PHPUnit.
- *
- * (c) Sebastian Bergmann <sebastian@phpunit.de>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-/**
- * @since      File available since Release 3.7.0
- */
-class Framework_Constraint_JsonMatchesTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @dataProvider evaluateDataprovider
-     * @covers PHPUnit_Framework_Constraint_JsonMatches::evaluate
-     * @covers PHPUnit_Framework_Constraint_JsonMatches::matches
-     * @covers PHPUnit_Framework_Constraint_JsonMatches::__construct
-     */
-    public function testEvaluate($expected, $jsonOther, $jsonValue)
-    {
-        $constraint = new PHPUnit_Framework_Constraint_JsonMatches($jsonValue);
-        $this->assertEquals($expected, $constraint->evaluate($jsonOther, '', true));
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_JsonMatches::toString
-     */
-    public function testToString()
-    {
-        $jsonValue  = json_encode(array('Mascott' => 'Tux'));
-        $constraint = new PHPUnit_Framework_Constraint_JsonMatches($jsonValue);
-
-        $this->assertEquals('matches JSON string "' . $jsonValue . '"', $constraint->toString());
-    }
-
-    public static function evaluateDataprovider()
-    {
-        return array(
-            'valid JSON'                          => array(true, json_encode(array('Mascott' => 'Tux')), json_encode(array('Mascott' => 'Tux'))),
-            'error syntax'                        => array(false, '{"Mascott"::}', json_encode(array('Mascott' => 'Tux'))),
-            'error UTF-8'                         => array(false, json_encode('\xB1\x31'), json_encode(array('Mascott' => 'Tux'))),
-            'invalid JSON in class instantiation' => array(false, json_encode(array('Mascott' => 'Tux')), '{"Mascott"::}'),
-        );
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/Framework/ConstraintTest.php b/vendor/phpunit/phpunit/tests/Framework/ConstraintTest.php
deleted file mode 100644
index f617133..0000000
--- a/vendor/phpunit/phpunit/tests/Framework/ConstraintTest.php
+++ /dev/null
@@ -1,3490 +0,0 @@
-<?php
-/*
- * This file is part of PHPUnit.
- *
- * (c) Sebastian Bergmann <sebastian@phpunit.de>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-/**
- * @since      Class available since Release 3.0.0
- */
-class Framework_ConstraintTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @covers PHPUnit_Framework_Constraint_ArrayHasKey
-     * @covers PHPUnit_Framework_Assert::arrayHasKey
-     * @covers PHPUnit_Framework_Constraint::count
-     * @covers PHPUnit_Framework_TestFailure::exceptionToString
-     */
-    public function testConstraintArrayHasKey()
-    {
-        $constraint = PHPUnit_Framework_Assert::arrayHasKey(0);
-
-        $this->assertFalse($constraint->evaluate(array(), '', true));
-        $this->assertEquals('has the key 0', $constraint->toString());
-        $this->assertEquals(1, count($constraint));
-
-        try {
-            $constraint->evaluate(array());
-        } catch (PHPUnit_Framework_ExpectationFailedException $e) {
-            $this->assertEquals(<<<EOF
-Failed asserting that an array has the key 0.
-
-EOF
-              ,
-              PHPUnit_Framework_TestFailure::exceptionToString($e)
-            );
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_ArrayHasKey
-     * @covers PHPUnit_Framework_Assert::arrayHasKey
-     * @covers PHPUnit_Framework_TestFailure::exceptionToString
-     */
-    public function testConstraintArrayHasKey2()
-    {
-        $constraint = PHPUnit_Framework_Assert::arrayHasKey(0);
-
-        try {
-            $constraint->evaluate(array(), 'custom message');
-        } catch (PHPUnit_Framework_ExpectationFailedException $e) {
-            $this->assertEquals(
-              <<<EOF
-custom message\nFailed asserting that an array has the key 0.
-
-EOF
-              ,
-              PHPUnit_Framework_TestFailure::exceptionToString($e)
-            );
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_ArrayHasKey
-     * @covers PHPUnit_Framework_Constraint_Not
-     * @covers PHPUnit_Framework_Assert::arrayHasKey
-     * @covers PHPUnit_Framework_Assert::logicalNot
-     * @covers PHPUnit_Framework_TestFailure::exceptionToString
-     */
-    public function testConstraintArrayNotHasKey()
-    {
-        $constraint = PHPUnit_Framework_Assert::logicalNot(
-          PHPUnit_Framework_Assert::arrayHasKey(0)
-        );
-
-        $this->assertFalse($constraint->evaluate(array(0 => 1), '', true));
-        $this->assertEquals('does not have the key 0', $constraint->toString());
-        $this->assertEquals(1, count($constraint));
-
-        try {
-            $constraint->evaluate(array(0 => 1));
-        } catch (PHPUnit_Framework_ExpectationFailedException $e) {
-            $this->assertEquals(
-              <<<EOF
-Failed asserting that an array does not have the key 0.
-
-EOF
-              ,
-              PHPUnit_Framework_TestFailure::exceptionToString($e)
-            );
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_ArrayHasKey
-     * @covers PHPUnit_Framework_Constraint_Not
-     * @covers PHPUnit_Framework_Assert::arrayHasKey
-     * @covers PHPUnit_Framework_Assert::logicalNot
-     * @covers PHPUnit_Framework_TestFailure::exceptionToString
-     */
-    public function testConstraintArrayNotHasKey2()
-    {
-        $constraint = PHPUnit_Framework_Assert::logicalNot(
-          PHPUnit_Framework_Assert::arrayHasKey(0)
-        );
-
-        try {
-            $constraint->evaluate(array(0), 'custom message');
-        } catch (PHPUnit_Framework_ExpectationFailedException $e) {
-            $this->assertEquals(
-              <<<EOF
-custom message
-Failed asserting that an array does not have the key 0.
-
-EOF
-              ,
-              PHPUnit_Framework_TestFailure::exceptionToString($e)
-            );
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_FileExists
-     * @covers PHPUnit_Framework_Assert::fileExists
-     * @covers PHPUnit_Framework_Constraint::count
-     * @covers PHPUnit_Framework_TestFailure::exceptionToString
-     */
-    public function testConstraintFileExists()
-    {
-        $constraint = PHPUnit_Framework_Assert::fileExists();
-
-        $this->assertFalse($constraint->evaluate('foo', '', true));
-        $this->assertEquals('file exists', $constraint->toString());
-        $this->assertEquals(1, count($constraint));
-
-        try {
-            $constraint->evaluate('foo');
-        } catch (PHPUnit_Framework_ExpectationFailedException $e) {
-            $this->assertEquals(
-              <<<EOF
-Failed asserting that file "foo" exists.
-
-EOF
-              ,
-              PHPUnit_Framework_TestFailure::exceptionToString($e)
-            );
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_FileExists
-     * @covers PHPUnit_Framework_Assert::fileExists
-     * @covers PHPUnit_Framework_TestFailure::exceptionToString
-     */
-    public function testConstraintFileExists2()
-    {
-        $constraint = PHPUnit_Framework_Assert::fileExists();
-
-        try {
-            $constraint->evaluate('foo', 'custom message');
-        } catch (PHPUnit_Framework_ExpectationFailedException $e) {
-            $this->assertEquals(<<<EOF
-custom message
-Failed asserting that file "foo" exists.
-
-EOF
-              ,
-              PHPUnit_Framework_TestFailure::exceptionToString($e)
-            );
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_FileExists
-     * @covers PHPUnit_Framework_Constraint_Not
-     * @covers PHPUnit_Framework_Assert::logicalNot
-     * @covers PHPUnit_Framework_Assert::fileExists
-     * @covers PHPUnit_Framework_TestFailure::exceptionToString
-     */
-    public function testConstraintFileNotExists()
-    {
-        $file = dirname(__DIR__) . DIRECTORY_SEPARATOR . '_files' . DIRECTORY_SEPARATOR . 'ClassWithNonPublicAttributes.php';
-
-        $constraint = PHPUnit_Framework_Assert::logicalNot(
-          PHPUnit_Framework_Assert::fileExists()
-        );
-
-        $this->assertFalse($constraint->evaluate($file, '', true));
-        $this->assertEquals('file does not exist', $constraint->toString());
-        $this->assertEquals(1, count($constraint));
-
-        try {
-            $constraint->evaluate($file);
-        } catch (PHPUnit_Framework_ExpectationFailedException $e) {
-            $this->assertEquals(
-              <<<EOF
-Failed asserting that file "$file" does not exist.
-
-EOF
-              ,
-              PHPUnit_Framework_TestFailure::exceptionToString($e)
-            );
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_FileExists
-     * @covers PHPUnit_Framework_Constraint_Not
-     * @covers PHPUnit_Framework_Assert::logicalNot
-     * @covers PHPUnit_Framework_Assert::fileExists
-     * @covers PHPUnit_Framework_TestFailure::exceptionToString
-     */
-    public function testConstraintFileNotExists2()
-    {
-        $file = dirname(__DIR__) . DIRECTORY_SEPARATOR . '_files' . DIRECTORY_SEPARATOR . 'ClassWithNonPublicAttributes.php';
-
-        $constraint = PHPUnit_Framework_Assert::logicalNot(
-          PHPUnit_Framework_Assert::fileExists()
-        );
-
-        try {
-            $constraint->evaluate($file, 'custom message');
-        } catch (PHPUnit_Framework_ExpectationFailedException $e) {
-            $this->assertEquals(<<<EOF
-custom message
-Failed asserting that file "$file" does not exist.
-
-EOF
-              ,
-              PHPUnit_Framework_TestFailure::exceptionToString($e)
-            );
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_GreaterThan
-     * @covers PHPUnit_Framework_Assert::greaterThan
-     * @covers PHPUnit_Framework_Constraint::count
-     * @covers PHPUnit_Framework_TestFailure::exceptionToString
-     */
-    public function testConstraintGreaterThan()
-    {
-        $constraint = PHPUnit_Framework_Assert::greaterThan(1);
-
-        $this->assertFalse($constraint->evaluate(0, '', true));
-        $this->assertTrue($constraint->evaluate(2, '', true));
-        $this->assertEquals('is greater than 1', $constraint->toString());
-        $this->assertEquals(1, count($constraint));
-
-        try {
-            $constraint->evaluate(0);
-        } catch (PHPUnit_Framework_ExpectationFailedException $e) {
-            $this->assertEquals(
-              <<<EOF
-Failed asserting that 0 is greater than 1.
-
-EOF
-              ,
-              PHPUnit_Framework_TestFailure::exceptionToString($e)
-            );
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_GreaterThan
-     * @covers PHPUnit_Framework_Assert::greaterThan
-     * @covers PHPUnit_Framework_TestFailure::exceptionToString
-     */
-    public function testConstraintGreaterThan2()
-    {
-        $constraint = PHPUnit_Framework_Assert::greaterThan(1);
-
-        try {
-            $constraint->evaluate(0, 'custom message');
-        } catch (PHPUnit_Framework_ExpectationFailedException $e) {
-            $this->assertEquals(
-              <<<EOF
-custom message
-Failed asserting that 0 is greater than 1.
-
-EOF
-              ,
-              PHPUnit_Framework_TestFailure::exceptionToString($e)
-            );
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_GreaterThan
-     * @covers PHPUnit_Framework_Constraint_Not
-     * @covers PHPUnit_Framework_Assert::greaterThan
-     * @covers PHPUnit_Framework_Assert::logicalNot
-     * @covers PHPUnit_Framework_TestFailure::exceptionToString
-     */
-    public function testConstraintNotGreaterThan()
-    {
-        $constraint = PHPUnit_Framework_Assert::logicalNot(
-          PHPUnit_Framework_Assert::greaterThan(1)
-        );
-
-        $this->assertTrue($constraint->evaluate(1, '', true));
-        $this->assertEquals('is not greater than 1', $constraint->toString());
-        $this->assertEquals(1, count($constraint));
-
-        try {
-            $constraint->evaluate(2);
-        } catch (PHPUnit_Framework_ExpectationFailedException $e) {
-            $this->assertEquals(
-              <<<EOF
-Failed asserting that 2 is not greater than 1.
-
-EOF
-              ,
-              PHPUnit_Framework_TestFailure::exceptionToString($e)
-            );
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_GreaterThan
-     * @covers PHPUnit_Framework_Constraint_Not
-     * @covers PHPUnit_Framework_Assert::greaterThan
-     * @covers PHPUnit_Framework_Assert::logicalNot
-     * @covers PHPUnit_Framework_TestFailure::exceptionToString
-     */
-    public function testConstraintNotGreaterThan2()
-    {
-        $constraint = PHPUnit_Framework_Assert::logicalNot(
-          PHPUnit_Framework_Assert::greaterThan(1)
-        );
-
-        try {
-            $constraint->evaluate(2, 'custom message');
-        } catch (PHPUnit_Framework_ExpectationFailedException $e) {
-            $this->assertEquals(
-              <<<EOF
-custom message
-Failed asserting that 2 is not greater than 1.
-
-EOF
-              ,
-              PHPUnit_Framework_TestFailure::exceptionToString($e)
-            );
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_IsEqual
-     * @covers PHPUnit_Framework_Constraint_GreaterThan
-     * @covers PHPUnit_Framework_Constraint_Or
-     * @covers PHPUnit_Framework_Assert::greaterThanOrEqual
-     * @covers PHPUnit_Framework_TestFailure::exceptionToString
-     */
-    public function testConstraintGreaterThanOrEqual()
-    {
-        $constraint = PHPUnit_Framework_Assert::greaterThanOrEqual(1);
-
-        $this->assertTrue($constraint->evaluate(1, '', true));
-        $this->assertFalse($constraint->evaluate(0, '', true));
-        $this->assertEquals('is equal to 1 or is greater than 1', $constraint->toString());
-        $this->assertEquals(2, count($constraint));
-
-        try {
-            $constraint->evaluate(0);
-        } catch (PHPUnit_Framework_ExpectationFailedException $e) {
-            $this->assertEquals(
-              <<<EOF
-Failed asserting that 0 is equal to 1 or is greater than 1.
-
-EOF
-              ,
-              PHPUnit_Framework_TestFailure::exceptionToString($e)
-            );
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_IsEqual
-     * @covers PHPUnit_Framework_Constraint_GreaterThan
-     * @covers PHPUnit_Framework_Constraint_Or
-     * @covers PHPUnit_Framework_Assert::greaterThanOrEqual
-     * @covers PHPUnit_Framework_TestFailure::exceptionToString
-     */
-    public function testConstraintGreaterThanOrEqual2()
-    {
-        $constraint = PHPUnit_Framework_Assert::greaterThanOrEqual(1);
-
-        try {
-            $constraint->evaluate(0, 'custom message');
-        } catch (PHPUnit_Framework_ExpectationFailedException $e) {
-            $this->assertEquals(
-              <<<EOF
-custom message
-Failed asserting that 0 is equal to 1 or is greater than 1.
-
-EOF
-              ,
-              PHPUnit_Framework_TestFailure::exceptionToString($e)
-            );
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_IsEqual
-     * @covers PHPUnit_Framework_Constraint_GreaterThan
-     * @covers PHPUnit_Framework_Constraint_Or
-     * @covers PHPUnit_Framework_Constraint_Not
-     * @covers PHPUnit_Framework_Assert::greaterThanOrEqual
-     * @covers PHPUnit_Framework_Assert::logicalNot
-     * @covers PHPUnit_Framework_TestFailure::exceptionToString
-     */
-    public function testConstraintNotGreaterThanOrEqual()
-    {
-        $constraint = PHPUnit_Framework_Assert::logicalNot(
-          PHPUnit_Framework_Assert::greaterThanOrEqual(1)
-        );
-
-        $this->assertFalse($constraint->evaluate(1, '', true));
-        $this->assertEquals('not( is equal to 1 or is greater than 1 )', $constraint->toString());
-        $this->assertEquals(2, count($constraint));
-
-        try {
-            $constraint->evaluate(1);
-        } catch (PHPUnit_Framework_ExpectationFailedException $e) {
-            $this->assertEquals(
-              <<<EOF
-Failed asserting that not( 1 is equal to 1 or is greater than 1 ).
-
-EOF
-              ,
-              PHPUnit_Framework_TestFailure::exceptionToString($e)
-            );
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_IsEqual
-     * @covers PHPUnit_Framework_Constraint_GreaterThan
-     * @covers PHPUnit_Framework_Constraint_Or
-     * @covers PHPUnit_Framework_Constraint_Not
-     * @covers PHPUnit_Framework_Assert::greaterThanOrEqual
-     * @covers PHPUnit_Framework_Assert::logicalNot
-     * @covers PHPUnit_Framework_TestFailure::exceptionToString
-     */
-    public function testConstraintNotGreaterThanOrEqual2()
-    {
-        $constraint = PHPUnit_Framework_Assert::logicalNot(
-          PHPUnit_Framework_Assert::greaterThanOrEqual(1)
-        );
-
-        try {
-            $constraint->evaluate(1, 'custom message');
-        } catch (PHPUnit_Framework_ExpectationFailedException $e) {
-            $this->assertEquals(
-              <<<EOF
-custom message
-Failed asserting that not( 1 is equal to 1 or is greater than 1 ).
-
-EOF
-              ,
-              PHPUnit_Framework_TestFailure::exceptionToString($e)
-            );
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_IsAnything
-     * @covers PHPUnit_Framework_Assert::anything
-     * @covers PHPUnit_Framework_Constraint::count
-     * @covers PHPUnit_Framework_TestFailure::exceptionToString
-     */
-    public function testConstraintIsAnything()
-    {
-        $constraint = PHPUnit_Framework_Assert::anything();
-
-        $this->assertTrue($constraint->evaluate(null, '', true));
-        $this->assertNull($constraint->evaluate(null));
-        $this->assertEquals('is anything', $constraint->toString());
-        $this->assertEquals(0, count($constraint));
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_IsAnything
-     * @covers PHPUnit_Framework_Constraint_Not
-     * @covers PHPUnit_Framework_Assert::anything
-     * @covers PHPUnit_Framework_Assert::logicalNot
-     * @covers PHPUnit_Framework_TestFailure::exceptionToString
-     */
-    public function testConstraintNotIsAnything()
-    {
-        $constraint = PHPUnit_Framework_Assert::logicalNot(
-          PHPUnit_Framework_Assert::anything()
-        );
-
-        $this->assertFalse($constraint->evaluate(null, '', true));
-        $this->assertEquals('is not anything', $constraint->toString());
-        $this->assertEquals(0, count($constraint));
-
-        try {
-            $constraint->evaluate(null);
-        } catch (PHPUnit_Framework_ExpectationFailedException $e) {
-            $this->assertEquals(
-              <<<EOF
-Failed asserting that null is not anything.
-
-EOF
-              ,
-              PHPUnit_Framework_TestFailure::exceptionToString($e)
-            );
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_IsEqual
-     * @covers PHPUnit_Framework_Assert::equalTo
-     * @covers PHPUnit_Framework_Constraint::count
-     * @covers PHPUnit_Framework_TestFailure::exceptionToString
-     */
-    public function testConstraintIsEqual()
-    {
-        $constraint = PHPUnit_Framework_Assert::equalTo(1);
-
-        $this->assertTrue($constraint->evaluate(1, '', true));
-        $this->assertFalse($constraint->evaluate(0, '', true));
-        $this->assertEquals('is equal to 1', $constraint->toString());
-        $this->assertEquals(1, count($constraint));
-
-        try {
-            $constraint->evaluate(0);
-        } catch (PHPUnit_Framework_ExpectationFailedException $e) {
-            $this->assertEquals(
-              <<<EOF
-Failed asserting that 0 matches expected 1.
-
-EOF
-              ,
-              PHPUnit_Framework_TestFailure::exceptionToString($e)
-            );
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    public function isEqualProvider()
-    {
-        $a      = new stdClass;
-        $a->foo = 'bar';
-        $b      = new stdClass;
-        $ahash  = spl_object_hash($a);
-        $bhash  = spl_object_hash($b);
-
-        $c               = new stdClass;
-        $c->foo          = 'bar';
-        $c->int          = 1;
-        $c->array        = array(0, array(1), array(2), 3);
-        $c->related      = new stdClass;
-        $c->related->foo = "a\nb\nc\nd\ne\nf\ng\nh\ni\nj\nk";
-        $c->self         = $c;
-        $c->c            = $c;
-        $d               = new stdClass;
-        $d->foo          = 'bar';
-        $d->int          = 2;
-        $d->array        = array(0, array(4), array(2), 3);
-        $d->related      = new stdClass;
-        $d->related->foo = "a\np\nc\nd\ne\nf\ng\nh\ni\nw\nk";
-        $d->self         = $d;
-        $d->c            = $c;
-
-        $storage1 = new SplObjectStorage;
-        $storage1->attach($a);
-        $storage1->attach($b);
-        $storage2 = new SplObjectStorage;
-        $storage2->attach($b);
-        $storage1hash = spl_object_hash($storage1);
-        $storage2hash = spl_object_hash($storage2);
-
-        $dom1                     = new DOMDocument;
-        $dom1->preserveWhiteSpace = false;
-        $dom1->loadXML('<root></root>');
-        $dom2                     = new DOMDocument;
-        $dom2->preserveWhiteSpace = false;
-        $dom2->loadXML('<root><foo/></root>');
-
-        $data = array(
-            array(1, 0, <<<EOF
-Failed asserting that 0 matches expected 1.
-
-EOF
-            ),
-            array(1.1, 0, <<<EOF
-Failed asserting that 0 matches expected 1.1.
-
-EOF
-            ),
-            array('a', 'b', <<<EOF
-Failed asserting that two strings are equal.
---- Expected
-+++ Actual
-@@ @@
--'a'
-+'b'
-
-EOF
-            ),
-            array("a\nb\nc\nd\ne\nf\ng\nh\ni\nj\nk", "a\np\nc\nd\ne\nf\ng\nh\ni\nw\nk", <<<EOF
-Failed asserting that two strings are equal.
---- Expected
-+++ Actual
-@@ @@
- 'a
--b
-+p
-
-@@ @@
- i
--j
-+w
- k'
-
-EOF
-            ),
-            array(1, array(0), <<<EOF
-Array (...) does not match expected type "integer".
-
-EOF
-            ),
-            array(array(0), 1, <<<EOF
-1 does not match expected type "array".
-
-EOF
-            ),
-            array(array(0), array(1), <<<EOF
-Failed asserting that two arrays are equal.
---- Expected
-+++ Actual
-@@ @@
- Array (
--    0 => 0
-+    0 => 1
- )
-
-EOF
-            ),
-            array(array(true), array('true'), <<<EOF
-Failed asserting that two arrays are equal.
---- Expected
-+++ Actual
-@@ @@
- Array (
--    0 => true
-+    0 => 'true'
- )
-
-EOF
-            ),
-            array(array(0, array(1), array(2), 3), array(0, array(4), array(2), 3), <<<EOF
-Failed asserting that two arrays are equal.
---- Expected
-+++ Actual
-@@ @@
- Array (
-     0 => 0
-     1 => Array (
--        0 => 1
-+        0 => 4
-     )
-     2 => Array (...)
-     3 => 3
- )
-
-EOF
-            ),
-            array($a, array(0), <<<EOF
-Array (...) does not match expected type "object".
-
-EOF
-            ),
-            array(array(0), $a, <<<EOF
-stdClass Object (...) does not match expected type "array".
-
-EOF
-            ),
-            array($a, $b, <<<EOF
-Failed asserting that two objects are equal.
---- Expected
-+++ Actual
-@@ @@
- stdClass Object (
--    'foo' => 'bar'
- )
-
-EOF
-            ),
-            array($c, $d, <<<EOF
-Failed asserting that two objects are equal.
---- Expected
-+++ Actual
-@@ @@
- stdClass Object (
-     'foo' => 'bar'
--    'int' => 1
-+    'int' => 2
-     'array' => Array (
-         0 => 0
-         1 => Array (
--            0 => 1
-+            0 => 4
-
-@@ @@
-         'foo' => 'a
--        b
-+        p
-
-@@ @@
-         i
--        j
-+        w
-         k'
-     )
-     'self' => stdClass Object (...)
-     'c' => stdClass Object (...)
- )
-
-EOF
-            ),
-            array($dom1, $dom2, <<<EOF
-Failed asserting that two DOM documents are equal.
---- Expected
-+++ Actual
-@@ @@
- <?xml version="1.0"?>
--<root/>
-+<root>
-+  <foo/>
-+</root>
-
-EOF
-            ),
-            array(
-              new DateTime('2013-03-29 04:13:35', new DateTimeZone('America/New_York')),
-              new DateTime('2013-03-29 04:13:35', new DateTimeZone('America/Chicago')),
-              <<<EOF
-Failed asserting that two DateTime objects are equal.
---- Expected
-+++ Actual
-@@ @@
--2013-03-29T04:13:35-0400
-+2013-03-29T04:13:35-0500
-
-EOF
-            ),
-        );
-
-        if (PHP_MAJOR_VERSION < 7) {
-            $data[] = array($storage1, $storage2, <<<EOF
-Failed asserting that two objects are equal.
---- Expected
-+++ Actual
-@@ @@
--SplObjectStorage Object &$storage1hash (
--    '$ahash' => Array &0 (
--        'obj' => stdClass Object &$ahash (
--            'foo' => 'bar'
--        )
-+SplObjectStorage Object &$storage2hash (
-+    '$bhash' => Array &0 (
-+        'obj' => stdClass Object &$bhash ()
-         'inf' => null
-     )
--    '$bhash' => Array &0
- )
-
-EOF
-            );
-        } else {
-            $data[] = array($storage1, $storage2, <<<EOF
-Failed asserting that two objects are equal.
---- Expected
-+++ Actual
-@@ @@
--SplObjectStorage Object &$storage1hash (
--    '$ahash' => Array &0 (
--        'obj' => stdClass Object &$ahash (
--            'foo' => 'bar'
--        )
--        'inf' => null
--    )
--    '$bhash' => Array &1 (
-+SplObjectStorage Object &$storage2hash (
-+    '$bhash' => Array &0 (
-         'obj' => stdClass Object &$bhash ()
-         'inf' => null
-     )
- )
-
-EOF
-            );
-        }
-
-        return $data;
-    }
-
-    /**
-     * @dataProvider isEqualProvider
-     * @covers PHPUnit_Framework_Constraint_IsEqual
-     * @covers PHPUnit_Framework_Assert::equalTo
-     * @covers PHPUnit_Framework_TestFailure::exceptionToString
-     */
-    public function testConstraintIsEqual2($expected, $actual, $message)
-    {
-        $constraint = PHPUnit_Framework_Assert::equalTo($expected);
-
-        try {
-            $constraint->evaluate($actual, 'custom message');
-        } catch (PHPUnit_Framework_ExpectationFailedException $e) {
-            $this->assertEquals(
-              "custom message\n$message",
-              $this->trimnl(PHPUnit_Framework_TestFailure::exceptionToString($e))
-            );
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_IsEqual
-     * @covers PHPUnit_Framework_Constraint_Not
-     * @covers PHPUnit_Framework_Assert::equalTo
-     * @covers PHPUnit_Framework_Assert::logicalNot
-     * @covers PHPUnit_Framework_TestFailure::exceptionToString
-     */
-    public function testConstraintIsNotEqual()
-    {
-        $constraint = PHPUnit_Framework_Assert::logicalNot(
-          PHPUnit_Framework_Assert::equalTo(1)
-        );
-
-        $this->assertTrue($constraint->evaluate(0, '', true));
-        $this->assertFalse($constraint->evaluate(1, '', true));
-        $this->assertEquals('is not equal to 1', $constraint->toString());
-        $this->assertEquals(1, count($constraint));
-
-        try {
-            $constraint->evaluate(1);
-        } catch (PHPUnit_Framework_ExpectationFailedException $e) {
-            $this->assertEquals(
-              <<<EOF
-Failed asserting that 1 is not equal to 1.
-
-EOF
-              ,
-              PHPUnit_Framework_TestFailure::exceptionToString($e)
-            );
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_IsEqual
-     * @covers PHPUnit_Framework_Constraint_Not
-     * @covers PHPUnit_Framework_Assert::equalTo
-     * @covers PHPUnit_Framework_Assert::logicalNot
-     * @covers PHPUnit_Framework_TestFailure::exceptionToString
-     */
-    public function testConstraintIsNotEqual2()
-    {
-        $constraint = PHPUnit_Framework_Assert::logicalNot(
-          PHPUnit_Framework_Assert::equalTo(1)
-        );
-
-        try {
-            $constraint->evaluate(1, 'custom message');
-        } catch (PHPUnit_Framework_ExpectationFailedException $e) {
-            $this->assertEquals(
-              <<<EOF
-custom message
-Failed asserting that 1 is not equal to 1.
-
-EOF
-              ,
-              PHPUnit_Framework_TestFailure::exceptionToString($e)
-            );
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_IsIdentical
-     * @covers PHPUnit_Framework_Assert::identicalTo
-     * @covers PHPUnit_Framework_Constraint::count
-     * @covers PHPUnit_Framework_TestFailure::exceptionToString
-     */
-    public function testConstraintIsIdentical()
-    {
-        $a = new stdClass;
-        $b = new stdClass;
-
-        $constraint = PHPUnit_Framework_Assert::identicalTo($a);
-
-        $this->assertFalse($constraint->evaluate($b, '', true));
-        $this->assertTrue($constraint->evaluate($a, '', true));
-        $this->assertEquals('is identical to an object of class "stdClass"', $constraint->toString());
-        $this->assertEquals(1, count($constraint));
-
-        try {
-            $constraint->evaluate($b);
-        } catch (PHPUnit_Framework_ExpectationFailedException $e) {
-            $this->assertEquals(<<<EOF
-Failed asserting that two variables reference the same object.
-
-EOF
-              ,
-              PHPUnit_Framework_TestFailure::exceptionToString($e)
-            );
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_IsIdentical
-     * @covers PHPUnit_Framework_Assert::identicalTo
-     * @covers PHPUnit_Framework_TestFailure::exceptionToString
-     */
-    public function testConstraintIsIdentical2()
-    {
-        $a = new stdClass;
-        $b = new stdClass;
-
-        $constraint = PHPUnit_Framework_Assert::identicalTo($a);
-
-        try {
-            $constraint->evaluate($b, 'custom message');
-        } catch (PHPUnit_Framework_ExpectationFailedException $e) {
-            $this->assertEquals(<<<EOF
-custom message
-Failed asserting that two variables reference the same object.
-
-EOF
-              ,
-              PHPUnit_Framework_TestFailure::exceptionToString($e)
-            );
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_IsIdentical
-     * @covers PHPUnit_Framework_Assert::identicalTo
-     * @covers PHPUnit_Framework_TestFailure::exceptionToString
-     */
-    public function testConstraintIsIdentical3()
-    {
-        $constraint = PHPUnit_Framework_Assert::identicalTo('a');
-
-        try {
-            $constraint->evaluate('b', 'custom message');
-        } catch (PHPUnit_Framework_ExpectationFailedException $e) {
-            $this->assertEquals(<<<EOF
-custom message
-Failed asserting that two strings are identical.
---- Expected
-+++ Actual
-@@ @@
--a
-+b
-
-EOF
-              ,
-              PHPUnit_Framework_TestFailure::exceptionToString($e)
-            );
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_IsIdentical
-     * @covers PHPUnit_Framework_Constraint_Not
-     * @covers PHPUnit_Framework_Assert::identicalTo
-     * @covers PHPUnit_Framework_Assert::logicalNot
-     * @covers PHPUnit_Framework_TestFailure::exceptionToString
-     */
-    public function testConstraintIsNotIdentical()
-    {
-        $a = new stdClass;
-        $b = new stdClass;
-
-        $constraint = PHPUnit_Framework_Assert::logicalNot(
-          PHPUnit_Framework_Assert::identicalTo($a)
-        );
-
-        $this->assertTrue($constraint->evaluate($b, '', true));
-        $this->assertFalse($constraint->evaluate($a, '', true));
-        $this->assertEquals('is not identical to an object of class "stdClass"', $constraint->toString());
-        $this->assertEquals(1, count($constraint));
-
-        try {
-            $constraint->evaluate($a);
-        } catch (PHPUnit_Framework_ExpectationFailedException $e) {
-            $this->assertEquals(<<<EOF
-Failed asserting that two variables don't reference the same object.
-
-EOF
-              ,
-              $this->trimnl(PHPUnit_Framework_TestFailure::exceptionToString($e))
-            );
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_IsIdentical
-     * @covers PHPUnit_Framework_Constraint_Not
-     * @covers PHPUnit_Framework_Assert::identicalTo
-     * @covers PHPUnit_Framework_Assert::logicalNot
-     * @covers PHPUnit_Framework_TestFailure::exceptionToString
-     */
-    public function testConstraintIsNotIdentical2()
-    {
-        $a = new stdClass;
-
-        $constraint = PHPUnit_Framework_Assert::logicalNot(
-          PHPUnit_Framework_Assert::identicalTo($a)
-        );
-
-        try {
-            $constraint->evaluate($a, 'custom message');
-        } catch (PHPUnit_Framework_ExpectationFailedException $e) {
-            $this->assertEquals(<<<EOF
-custom message
-Failed asserting that two variables don't reference the same object.
-
-EOF
-              ,
-              PHPUnit_Framework_TestFailure::exceptionToString($e)
-            );
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_IsIdentical
-     * @covers PHPUnit_Framework_Constraint_Not
-     * @covers PHPUnit_Framework_Assert::identicalTo
-     * @covers PHPUnit_Framework_Assert::logicalNot
-     * @covers PHPUnit_Framework_TestFailure::exceptionToString
-     */
-    public function testConstraintIsNotIdentical3()
-    {
-        $constraint = PHPUnit_Framework_Assert::logicalNot(
-          PHPUnit_Framework_Assert::identicalTo('a')
-        );
-
-        try {
-            $constraint->evaluate('a', 'custom message');
-        } catch (PHPUnit_Framework_ExpectationFailedException $e) {
-            $this->assertEquals(<<<EOF
-custom message
-Failed asserting that two strings are not identical.
-
-EOF
-              ,
-              $this->trimnl(PHPUnit_Framework_TestFailure::exceptionToString($e))
-            );
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_IsInstanceOf
-     * @covers PHPUnit_Framework_Assert::isInstanceOf
-     * @covers PHPUnit_Framework_Constraint::count
-     * @covers PHPUnit_Framework_TestFailure::exceptionToString
-     */
-    public function testConstraintIsInstanceOf()
-    {
-        $constraint = PHPUnit_Framework_Assert::isInstanceOf('Exception');
-
-        $this->assertFalse($constraint->evaluate(new stdClass, '', true));
-        $this->assertTrue($constraint->evaluate(new Exception, '', true));
-        $this->assertEquals('is instance of class "Exception"', $constraint->toString());
-        $this->assertEquals(1, count($constraint));
-
-        $interfaceConstraint = PHPUnit_Framework_Assert::isInstanceOf('Countable');
-        $this->assertFalse($interfaceConstraint->evaluate(new stdClass, '', true));
-        $this->assertTrue($interfaceConstraint->evaluate(new ArrayObject, '', true));
-        $this->assertEquals('is instance of interface "Countable"', $interfaceConstraint->toString());
-
-        try {
-            $constraint->evaluate(new stdClass);
-        } catch (PHPUnit_Framework_ExpectationFailedException $e) {
-            $this->assertEquals(
-              <<<EOF
-Failed asserting that stdClass Object () is an instance of class "Exception".
-
-EOF
-              ,
-              PHPUnit_Framework_TestFailure::exceptionToString($e)
-            );
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_IsInstanceOf
-     * @covers PHPUnit_Framework_Assert::isInstanceOf
-     * @covers PHPUnit_Framework_TestFailure::exceptionToString
-     */
-    public function testConstraintIsInstanceOf2()
-    {
-        $constraint = PHPUnit_Framework_Assert::isInstanceOf('Exception');
-
-        try {
-            $constraint->evaluate(new stdClass, 'custom message');
-        } catch (PHPUnit_Framework_ExpectationFailedException $e) {
-            $this->assertEquals(<<<EOF
-custom message
-Failed asserting that stdClass Object () is an instance of class "Exception".
-
-EOF
-              ,
-              PHPUnit_Framework_TestFailure::exceptionToString($e)
-            );
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_IsInstanceOf
-     * @covers PHPUnit_Framework_Constraint_Not
-     * @covers PHPUnit_Framework_Assert::isInstanceOf
-     * @covers PHPUnit_Framework_Assert::logicalNot
-     * @covers PHPUnit_Framework_TestFailure::exceptionToString
-     */
-    public function testConstraintIsNotInstanceOf()
-    {
-        $constraint = PHPUnit_Framework_Assert::logicalNot(
-          PHPUnit_Framework_Assert::isInstanceOf('stdClass')
-        );
-
-        $this->assertFalse($constraint->evaluate(new stdClass, '', true));
-        $this->assertTrue($constraint->evaluate(new Exception, '', true));
-        $this->assertEquals('is not instance of class "stdClass"', $constraint->toString());
-        $this->assertEquals(1, count($constraint));
-
-        try {
-            $constraint->evaluate(new stdClass);
-        } catch (PHPUnit_Framework_ExpectationFailedException $e) {
-            $this->assertEquals(
-              <<<EOF
-Failed asserting that stdClass Object () is not an instance of class "stdClass".
-
-EOF
-              ,
-              PHPUnit_Framework_TestFailure::exceptionToString($e)
-            );
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_IsInstanceOf
-     * @covers PHPUnit_Framework_Constraint_Not
-     * @covers PHPUnit_Framework_Assert::isInstanceOf
-     * @covers PHPUnit_Framework_Assert::logicalNot
-     * @covers PHPUnit_Framework_TestFailure::exceptionToString
-     */
-    public function testConstraintIsNotInstanceOf2()
-    {
-        $constraint = PHPUnit_Framework_Assert::logicalNot(
-          PHPUnit_Framework_Assert::isInstanceOf('stdClass')
-        );
-
-        try {
-            $constraint->evaluate(new stdClass, 'custom message');
-        } catch (PHPUnit_Framework_ExpectationFailedException $e) {
-            $this->assertEquals(<<<EOF
-custom message
-Failed asserting that stdClass Object () is not an instance of class "stdClass".
-
-EOF
-              ,
-              PHPUnit_Framework_TestFailure::exceptionToString($e)
-            );
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_IsType
-     * @covers PHPUnit_Framework_Assert::isType
-     * @covers PHPUnit_Framework_Constraint::count
-     * @covers PHPUnit_Framework_TestFailure::exceptionToString
-     */
-    public function testConstraintIsType()
-    {
-        $constraint = PHPUnit_Framework_Assert::isType('string');
-
-        $this->assertFalse($constraint->evaluate(0, '', true));
-        $this->assertTrue($constraint->evaluate('', '', true));
-        $this->assertEquals('is of type "string"', $constraint->toString());
-        $this->assertEquals(1, count($constraint));
-
-        try {
-            $constraint->evaluate(new stdClass);
-        } catch (PHPUnit_Framework_ExpectationFailedException $e) {
-            $this->assertStringMatchesFormat(<<<EOF
-Failed asserting that stdClass Object &%x () is of type "string".
-
-EOF
-              ,
-              $this->trimnl(PHPUnit_Framework_TestFailure::exceptionToString($e))
-            );
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_IsType
-     * @covers PHPUnit_Framework_Assert::isType
-     * @covers PHPUnit_Framework_TestFailure::exceptionToString
-     */
-    public function testConstraintIsType2()
-    {
-        $constraint = PHPUnit_Framework_Assert::isType('string');
-
-        try {
-            $constraint->evaluate(new stdClass, 'custom message');
-        } catch (PHPUnit_Framework_ExpectationFailedException $e) {
-            $this->assertStringMatchesFormat(<<<EOF
-custom message
-Failed asserting that stdClass Object &%x () is of type "string".
-
-EOF
-              ,
-              $this->trimnl(PHPUnit_Framework_TestFailure::exceptionToString($e))
-            );
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    public function resources()
-    {
-        $fh = fopen(__FILE__, 'r');
-        fclose($fh);
-
-        return array(
-            'open resource'     => array(fopen(__FILE__, 'r')),
-            'closed resource'   => array($fh),
-        );
-    }
-
-    /**
-     * @dataProvider resources
-     * @covers PHPUnit_Framework_Constraint_IsType
-     * @covers PHPUnit_Framework_Assert::isType
-     */
-    public function testConstraintIsResourceTypeEvaluatesCorrectlyWithResources($resource)
-    {
-        $constraint = PHPUnit_Framework_Assert::isType('resource');
-
-        $this->assertTrue($constraint->evaluate($resource, '', true));
-
-        @fclose($resource);
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_IsType
-     * @covers PHPUnit_Framework_Constraint_Not
-     * @covers PHPUnit_Framework_Assert::isType
-     * @covers PHPUnit_Framework_Assert::logicalNot
-     * @covers PHPUnit_Framework_TestFailure::exceptionToString
-     */
-    public function testConstraintIsNotType()
-    {
-        $constraint = PHPUnit_Framework_Assert::logicalNot(
-          PHPUnit_Framework_Assert::isType('string')
-        );
-
-        $this->assertTrue($constraint->evaluate(0, '', true));
-        $this->assertFalse($constraint->evaluate('', '', true));
-        $this->assertEquals('is not of type "string"', $constraint->toString());
-        $this->assertEquals(1, count($constraint));
-
-        try {
-            $constraint->evaluate('');
-        } catch (PHPUnit_Framework_ExpectationFailedException $e) {
-            $this->assertEquals(
-              <<<EOF
-Failed asserting that '' is not of type "string".
-
-EOF
-              ,
-              PHPUnit_Framework_TestFailure::exceptionToString($e)
-            );
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_IsType
-     * @covers PHPUnit_Framework_Constraint_Not
-     * @covers PHPUnit_Framework_Assert::isType
-     * @covers PHPUnit_Framework_Assert::logicalNot
-     * @covers PHPUnit_Framework_TestFailure::exceptionToString
-     */
-    public function testConstraintIsNotType2()
-    {
-        $constraint = PHPUnit_Framework_Assert::logicalNot(
-          PHPUnit_Framework_Assert::isType('string')
-        );
-
-        try {
-            $constraint->evaluate('', 'custom message');
-        } catch (PHPUnit_Framework_ExpectationFailedException $e) {
-            $this->assertEquals(<<<EOF
-custom message
-Failed asserting that '' is not of type "string".
-
-EOF
-              ,
-              PHPUnit_Framework_TestFailure::exceptionToString($e)
-            );
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_IsNull
-     * @covers PHPUnit_Framework_Assert::isNull
-     * @covers PHPUnit_Framework_Constraint::count
-     * @covers PHPUnit_Framework_TestFailure::exceptionToString
-     */
-    public function testConstraintIsNull()
-    {
-        $constraint = PHPUnit_Framework_Assert::isNull();
-
-        $this->assertFalse($constraint->evaluate(0, '', true));
-        $this->assertTrue($constraint->evaluate(null, '', true));
-        $this->assertEquals('is null', $constraint->toString());
-        $this->assertEquals(1, count($constraint));
-
-        try {
-            $constraint->evaluate(0);
-        } catch (PHPUnit_Framework_ExpectationFailedException $e) {
-            $this->assertEquals(<<<EOF
-Failed asserting that 0 is null.
-
-EOF
-              ,
-              PHPUnit_Framework_TestFailure::exceptionToString($e)
-            );
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_IsNull
-     * @covers PHPUnit_Framework_Assert::isNull
-     * @covers PHPUnit_Framework_TestFailure::exceptionToString
-     */
-    public function testConstraintIsNull2()
-    {
-        $constraint = PHPUnit_Framework_Assert::isNull();
-
-        try {
-            $constraint->evaluate(0, 'custom message');
-        } catch (PHPUnit_Framework_ExpectationFailedException $e) {
-            $this->assertEquals(<<<EOF
-custom message
-Failed asserting that 0 is null.
-
-EOF
-              ,
-              PHPUnit_Framework_TestFailure::exceptionToString($e)
-            );
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_IsNull
-     * @covers PHPUnit_Framework_Constraint_Not
-     * @covers PHPUnit_Framework_Assert::isNull
-     * @covers PHPUnit_Framework_Assert::logicalNot
-     * @covers PHPUnit_Framework_Constraint::count
-     * @covers PHPUnit_Framework_TestFailure::exceptionToString
-     */
-    public function testConstraintIsNotNull()
-    {
-        $constraint = PHPUnit_Framework_Assert::logicalNot(
-          PHPUnit_Framework_Assert::isNull()
-        );
-
-        $this->assertFalse($constraint->evaluate(null, '', true));
-        $this->assertTrue($constraint->evaluate(0, '', true));
-        $this->assertEquals('is not null', $constraint->toString());
-        $this->assertEquals(1, count($constraint));
-
-        try {
-            $constraint->evaluate(null);
-        } catch (PHPUnit_Framework_ExpectationFailedException $e) {
-            $this->assertEquals(<<<EOF
-Failed asserting that null is not null.
-
-EOF
-              ,
-              PHPUnit_Framework_TestFailure::exceptionToString($e)
-            );
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_IsNull
-     * @covers PHPUnit_Framework_Constraint_Not
-     * @covers PHPUnit_Framework_Assert::isNull
-     * @covers PHPUnit_Framework_Assert::logicalNot
-     * @covers PHPUnit_Framework_TestFailure::exceptionToString
-     */
-    public function testConstraintIsNotNull2()
-    {
-        $constraint = PHPUnit_Framework_Assert::logicalNot(
-          PHPUnit_Framework_Assert::isNull()
-        );
-
-        try {
-            $constraint->evaluate(null, 'custom message');
-        } catch (PHPUnit_Framework_ExpectationFailedException $e) {
-            $this->assertEquals(<<<EOF
-custom message
-Failed asserting that null is not null.
-
-EOF
-              ,
-              PHPUnit_Framework_TestFailure::exceptionToString($e)
-            );
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_LessThan
-     * @covers PHPUnit_Framework_Assert::lessThan
-     * @covers PHPUnit_Framework_Constraint::count
-     * @covers PHPUnit_Framework_TestFailure::exceptionToString
-     */
-    public function testConstraintLessThan()
-    {
-        $constraint = PHPUnit_Framework_Assert::lessThan(1);
-
-        $this->assertTrue($constraint->evaluate(0, '', true));
-        $this->assertFalse($constraint->evaluate(1, '', true));
-        $this->assertEquals('is less than 1', $constraint->toString());
-        $this->assertEquals(1, count($constraint));
-
-        try {
-            $constraint->evaluate(1);
-        } catch (PHPUnit_Framework_ExpectationFailedException $e) {
-            $this->assertEquals(
-              <<<EOF
-Failed asserting that 1 is less than 1.
-
-EOF
-              ,
-              PHPUnit_Framework_TestFailure::exceptionToString($e)
-            );
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_LessThan
-     * @covers PHPUnit_Framework_Assert::lessThan
-     * @covers PHPUnit_Framework_TestFailure::exceptionToString
-     */
-    public function testConstraintLessThan2()
-    {
-        $constraint = PHPUnit_Framework_Assert::lessThan(1);
-
-        try {
-            $constraint->evaluate(1, 'custom message');
-        } catch (PHPUnit_Framework_ExpectationFailedException $e) {
-            $this->assertEquals(
-              <<<EOF
-custom message
-Failed asserting that 1 is less than 1.
-
-EOF
-              ,
-              PHPUnit_Framework_TestFailure::exceptionToString($e)
-            );
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_LessThan
-     * @covers PHPUnit_Framework_Constraint_Not
-     * @covers PHPUnit_Framework_Assert::lessThan
-     * @covers PHPUnit_Framework_Assert::logicalNot
-     * @covers PHPUnit_Framework_TestFailure::exceptionToString
-     */
-    public function testConstraintNotLessThan()
-    {
-        $constraint = PHPUnit_Framework_Assert::logicalNot(
-          PHPUnit_Framework_Assert::lessThan(1)
-        );
-
-        $this->assertTrue($constraint->evaluate(1, '', true));
-        $this->assertFalse($constraint->evaluate(0, '', true));
-        $this->assertEquals('is not less than 1', $constraint->toString());
-        $this->assertEquals(1, count($constraint));
-
-        try {
-            $constraint->evaluate(0);
-        } catch (PHPUnit_Framework_ExpectationFailedException $e) {
-            $this->assertEquals(
-              <<<EOF
-Failed asserting that 0 is not less than 1.
-
-EOF
-              ,
-              PHPUnit_Framework_TestFailure::exceptionToString($e)
-            );
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_LessThan
-     * @covers PHPUnit_Framework_Constraint_Not
-     * @covers PHPUnit_Framework_Assert::lessThan
-     * @covers PHPUnit_Framework_Assert::logicalNot
-     * @covers PHPUnit_Framework_TestFailure::exceptionToString
-     */
-    public function testConstraintNotLessThan2()
-    {
-        $constraint = PHPUnit_Framework_Assert::logicalNot(
-          PHPUnit_Framework_Assert::lessThan(1)
-        );
-
-        try {
-            $constraint->evaluate(0, 'custom message');
-        } catch (PHPUnit_Framework_ExpectationFailedException $e) {
-            $this->assertEquals(
-              <<<EOF
-custom message
-Failed asserting that 0 is not less than 1.
-
-EOF
-              ,
-              PHPUnit_Framework_TestFailure::exceptionToString($e)
-            );
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_IsEqual
-     * @covers PHPUnit_Framework_Constraint_LessThan
-     * @covers PHPUnit_Framework_Constraint_Or
-     * @covers PHPUnit_Framework_Assert::lessThanOrEqual
-     * @covers PHPUnit_Framework_TestFailure::exceptionToString
-     */
-    public function testConstraintLessThanOrEqual()
-    {
-        $constraint = PHPUnit_Framework_Assert::lessThanOrEqual(1);
-
-        $this->assertTrue($constraint->evaluate(1, '', true));
-        $this->assertFalse($constraint->evaluate(2, '', true));
-        $this->assertEquals('is equal to 1 or is less than 1', $constraint->toString());
-        $this->assertEquals(2, count($constraint));
-
-        try {
-            $constraint->evaluate(2);
-        } catch (PHPUnit_Framework_ExpectationFailedException $e) {
-            $this->assertEquals(
-              <<<EOF
-Failed asserting that 2 is equal to 1 or is less than 1.
-
-EOF
-              ,
-              PHPUnit_Framework_TestFailure::exceptionToString($e)
-            );
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_Callback
-     */
-    public function testConstraintCallback()
-    {
-        $closureReflect = function ($parameter) {
-            return $parameter;
-        };
-
-        $closureWithoutParameter = function () {
-            return true;
-        };
-
-        $constraint = PHPUnit_Framework_Assert::callback($closureWithoutParameter);
-        $this->assertTrue($constraint->evaluate('', '', true));
-
-        $constraint = PHPUnit_Framework_Assert::callback($closureReflect);
-        $this->assertTrue($constraint->evaluate(true, '', true));
-        $this->assertFalse($constraint->evaluate(false, '', true));
-
-        $callback   = array($this, 'callbackReturningTrue');
-        $constraint = PHPUnit_Framework_Assert::callback($callback);
-        $this->assertTrue($constraint->evaluate(false,  '', true));
-
-        $callback   = array('Framework_ConstraintTest', 'staticCallbackReturningTrue');
-        $constraint = PHPUnit_Framework_Assert::callback($callback);
-        $this->assertTrue($constraint->evaluate(null, '', true));
-
-        $this->assertEquals('is accepted by specified callback', $constraint->toString());
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_Callback
-     * @expectedException PHPUnit_Framework_ExpectationFailedException
-     * @expectedExceptionMessage Failed asserting that 'This fails' is accepted by specified callback.
-     */
-    public function testConstraintCallbackFailure()
-    {
-        $constraint = PHPUnit_Framework_Assert::callback(function () {
-            return false;
-        });
-        $constraint->evaluate('This fails');
-    }
-
-    public function callbackReturningTrue()
-    {
-        return true;
-    }
-
-    public static function staticCallbackReturningTrue()
-    {
-        return true;
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_IsEqual
-     * @covers PHPUnit_Framework_Constraint_LessThan
-     * @covers PHPUnit_Framework_Constraint_Or
-     * @covers PHPUnit_Framework_Assert::lessThanOrEqual
-     * @covers PHPUnit_Framework_TestFailure::exceptionToString
-     */
-    public function testConstraintLessThanOrEqual2()
-    {
-        $constraint = PHPUnit_Framework_Assert::lessThanOrEqual(1);
-
-        try {
-            $constraint->evaluate(2, 'custom message');
-        } catch (PHPUnit_Framework_ExpectationFailedException $e) {
-            $this->assertEquals(
-              <<<EOF
-custom message
-Failed asserting that 2 is equal to 1 or is less than 1.
-
-EOF
-              ,
-              PHPUnit_Framework_TestFailure::exceptionToString($e)
-            );
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_IsEqual
-     * @covers PHPUnit_Framework_Constraint_LessThan
-     * @covers PHPUnit_Framework_Constraint_Or
-     * @covers PHPUnit_Framework_Constraint_Not
-     * @covers PHPUnit_Framework_Assert::lessThanOrEqual
-     * @covers PHPUnit_Framework_Assert::logicalNot
-     * @covers PHPUnit_Framework_TestFailure::exceptionToString
-     */
-    public function testConstraintNotLessThanOrEqual()
-    {
-        $constraint = PHPUnit_Framework_Assert::logicalNot(
-          PHPUnit_Framework_Assert::lessThanOrEqual(1)
-        );
-
-        $this->assertTrue($constraint->evaluate(2, '', true));
-        $this->assertFalse($constraint->evaluate(1, '', true));
-        $this->assertEquals('not( is equal to 1 or is less than 1 )', $constraint->toString());
-        $this->assertEquals(2, count($constraint));
-
-        try {
-            $constraint->evaluate(1);
-        } catch (PHPUnit_Framework_ExpectationFailedException $e) {
-            $this->assertEquals(
-              <<<EOF
-Failed asserting that not( 1 is equal to 1 or is less than 1 ).
-
-EOF
-              ,
-              PHPUnit_Framework_TestFailure::exceptionToString($e)
-            );
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_IsEqual
-     * @covers PHPUnit_Framework_Constraint_LessThan
-     * @covers PHPUnit_Framework_Constraint_Or
-     * @covers PHPUnit_Framework_Constraint_Not
-     * @covers PHPUnit_Framework_Assert::lessThanOrEqual
-     * @covers PHPUnit_Framework_Assert::logicalNot
-     * @covers PHPUnit_Framework_TestFailure::exceptionToString
-     */
-    public function testConstraintNotLessThanOrEqual2()
-    {
-        $constraint = PHPUnit_Framework_Assert::logicalNot(
-          PHPUnit_Framework_Assert::lessThanOrEqual(1)
-        );
-
-        try {
-            $constraint->evaluate(1, 'custom message');
-        } catch (PHPUnit_Framework_ExpectationFailedException $e) {
-            $this->assertEquals(
-              <<<EOF
-custom message
-Failed asserting that not( 1 is equal to 1 or is less than 1 ).
-
-EOF
-              ,
-              PHPUnit_Framework_TestFailure::exceptionToString($e)
-            );
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_ClassHasAttribute
-     * @covers PHPUnit_Framework_Assert::classHasAttribute
-     * @covers PHPUnit_Framework_Constraint::count
-     * @covers PHPUnit_Framework_TestFailure::exceptionToString
-     */
-    public function testConstraintClassHasAttribute()
-    {
-        $constraint = PHPUnit_Framework_Assert::classHasAttribute('privateAttribute');
-
-        $this->assertTrue($constraint->evaluate('ClassWithNonPublicAttributes', '', true));
-        $this->assertFalse($constraint->evaluate('stdClass', '', true));
-        $this->assertEquals('has attribute "privateAttribute"', $constraint->toString());
-        $this->assertEquals(1, count($constraint));
-
-        try {
-            $constraint->evaluate('stdClass');
-        } catch (PHPUnit_Framework_ExpectationFailedException $e) {
-            $this->assertEquals(
-              <<<EOF
-Failed asserting that class "stdClass" has attribute "privateAttribute".
-
-EOF
-              ,
-              PHPUnit_Framework_TestFailure::exceptionToString($e)
-            );
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_ClassHasAttribute
-     * @covers PHPUnit_Framework_Assert::classHasAttribute
-     * @covers PHPUnit_Framework_TestFailure::exceptionToString
-     */
-    public function testConstraintClassHasAttribute2()
-    {
-        $constraint = PHPUnit_Framework_Assert::classHasAttribute('privateAttribute');
-
-        try {
-            $constraint->evaluate('stdClass', 'custom message');
-        } catch (PHPUnit_Framework_ExpectationFailedException $e) {
-            $this->assertEquals(<<<EOF
-custom message
-Failed asserting that class "stdClass" has attribute "privateAttribute".
-
-EOF
-              ,
-              PHPUnit_Framework_TestFailure::exceptionToString($e)
-            );
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_ClassHasAttribute
-     * @covers PHPUnit_Framework_Constraint_Not
-     * @covers PHPUnit_Framework_Assert::classHasAttribute
-     * @covers PHPUnit_Framework_Assert::logicalNot
-     * @covers PHPUnit_Framework_TestFailure::exceptionToString
-     */
-    public function testConstraintClassNotHasAttribute()
-    {
-        $constraint = PHPUnit_Framework_Assert::logicalNot(
-          PHPUnit_Framework_Assert::classHasAttribute('privateAttribute')
-        );
-
-        $this->assertTrue($constraint->evaluate('stdClass', '', true));
-        $this->assertFalse($constraint->evaluate('ClassWithNonPublicAttributes', '', true));
-        $this->assertEquals('does not have attribute "privateAttribute"', $constraint->toString());
-        $this->assertEquals(1, count($constraint));
-
-        try {
-            $constraint->evaluate('ClassWithNonPublicAttributes');
-        } catch (PHPUnit_Framework_ExpectationFailedException $e) {
-            $this->assertEquals(
-              <<<EOF
-Failed asserting that class "ClassWithNonPublicAttributes" does not have attribute "privateAttribute".
-
-EOF
-              ,
-              PHPUnit_Framework_TestFailure::exceptionToString($e)
-            );
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_ClassHasAttribute
-     * @covers PHPUnit_Framework_Constraint_Not
-     * @covers PHPUnit_Framework_Assert::classHasAttribute
-     * @covers PHPUnit_Framework_Assert::logicalNot
-     * @covers PHPUnit_Framework_TestFailure::exceptionToString
-     */
-    public function testConstraintClassNotHasAttribute2()
-    {
-        $constraint = PHPUnit_Framework_Assert::logicalNot(
-          PHPUnit_Framework_Assert::classHasAttribute('privateAttribute')
-        );
-
-        try {
-            $constraint->evaluate('ClassWithNonPublicAttributes', 'custom message');
-        } catch (PHPUnit_Framework_ExpectationFailedException $e) {
-            $this->assertEquals(<<<EOF
-custom message
-Failed asserting that class "ClassWithNonPublicAttributes" does not have attribute "privateAttribute".
-
-EOF
-              ,
-              PHPUnit_Framework_TestFailure::exceptionToString($e)
-            );
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_ClassHasStaticAttribute
-     * @covers PHPUnit_Framework_Assert::classHasStaticAttribute
-     * @covers PHPUnit_Framework_Constraint::count
-     * @covers PHPUnit_Framework_TestFailure::exceptionToString
-     */
-    public function testConstraintClassHasStaticAttribute()
-    {
-        $constraint = PHPUnit_Framework_Assert::classHasStaticAttribute('privateStaticAttribute');
-
-        $this->assertTrue($constraint->evaluate('ClassWithNonPublicAttributes', '', true));
-        $this->assertFalse($constraint->evaluate('stdClass', '', true));
-        $this->assertEquals('has static attribute "privateStaticAttribute"', $constraint->toString());
-        $this->assertEquals(1, count($constraint));
-
-        try {
-            $constraint->evaluate('stdClass');
-        } catch (PHPUnit_Framework_ExpectationFailedException $e) {
-            $this->assertEquals(
-              <<<EOF
-Failed asserting that class "stdClass" has static attribute "privateStaticAttribute".
-
-EOF
-              ,
-              PHPUnit_Framework_TestFailure::exceptionToString($e)
-            );
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_ClassHasStaticAttribute
-     * @covers PHPUnit_Framework_Assert::classHasStaticAttribute
-     * @covers PHPUnit_Framework_TestFailure::exceptionToString
-     */
-    public function testConstraintClassHasStaticAttribute2()
-    {
-        $constraint = PHPUnit_Framework_Assert::classHasStaticAttribute('foo');
-
-        try {
-            $constraint->evaluate('stdClass', 'custom message');
-        } catch (PHPUnit_Framework_ExpectationFailedException $e) {
-            $this->assertEquals(<<<EOF
-custom message
-Failed asserting that class "stdClass" has static attribute "foo".
-
-EOF
-              ,
-              PHPUnit_Framework_TestFailure::exceptionToString($e)
-            );
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_ClassHasStaticAttribute
-     * @covers PHPUnit_Framework_Constraint_Not
-     * @covers PHPUnit_Framework_Assert::classHasStaticAttribute
-     * @covers PHPUnit_Framework_Assert::logicalNot
-     * @covers PHPUnit_Framework_TestFailure::exceptionToString
-     */
-    public function testConstraintClassNotHasStaticAttribute()
-    {
-        $constraint = PHPUnit_Framework_Assert::logicalNot(
-          PHPUnit_Framework_Assert::classHasStaticAttribute('privateStaticAttribute')
-        );
-
-        $this->assertTrue($constraint->evaluate('stdClass', '', true));
-        $this->assertFalse($constraint->evaluate('ClassWithNonPublicAttributes', '', true));
-        $this->assertEquals('does not have static attribute "privateStaticAttribute"', $constraint->toString());
-        $this->assertEquals(1, count($constraint));
-
-        try {
-            $constraint->evaluate('ClassWithNonPublicAttributes');
-        } catch (PHPUnit_Framework_ExpectationFailedException $e) {
-            $this->assertEquals(
-              <<<EOF
-Failed asserting that class "ClassWithNonPublicAttributes" does not have static attribute "privateStaticAttribute".
-
-EOF
-              ,
-              PHPUnit_Framework_TestFailure::exceptionToString($e)
-            );
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_ClassHasStaticAttribute
-     * @covers PHPUnit_Framework_Constraint_Not
-     * @covers PHPUnit_Framework_Assert::classHasStaticAttribute
-     * @covers PHPUnit_Framework_Assert::logicalNot
-     * @covers PHPUnit_Framework_TestFailure::exceptionToString
-     */
-    public function testConstraintClassNotHasStaticAttribute2()
-    {
-        $constraint = PHPUnit_Framework_Assert::logicalNot(
-          PHPUnit_Framework_Assert::classHasStaticAttribute('privateStaticAttribute')
-        );
-
-        try {
-            $constraint->evaluate('ClassWithNonPublicAttributes', 'custom message');
-        } catch (PHPUnit_Framework_ExpectationFailedException $e) {
-            $this->assertEquals(<<<EOF
-custom message
-Failed asserting that class "ClassWithNonPublicAttributes" does not have static attribute "privateStaticAttribute".
-
-EOF
-              ,
-              PHPUnit_Framework_TestFailure::exceptionToString($e)
-            );
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_ObjectHasAttribute
-     * @covers PHPUnit_Framework_Assert::objectHasAttribute
-     * @covers PHPUnit_Framework_Constraint::count
-     * @covers PHPUnit_Framework_TestFailure::exceptionToString
-     */
-    public function testConstraintObjectHasAttribute()
-    {
-        $constraint = PHPUnit_Framework_Assert::objectHasAttribute('privateAttribute');
-
-        $this->assertTrue($constraint->evaluate(new ClassWithNonPublicAttributes, '', true));
-        $this->assertFalse($constraint->evaluate(new stdClass, '', true));
-        $this->assertEquals('has attribute "privateAttribute"', $constraint->toString());
-        $this->assertEquals(1, count($constraint));
-
-        try {
-            $constraint->evaluate(new stdClass);
-        } catch (PHPUnit_Framework_ExpectationFailedException $e) {
-            $this->assertEquals(
-              <<<EOF
-Failed asserting that object of class "stdClass" has attribute "privateAttribute".
-
-EOF
-              ,
-              PHPUnit_Framework_TestFailure::exceptionToString($e)
-            );
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_ObjectHasAttribute
-     * @covers PHPUnit_Framework_Assert::objectHasAttribute
-     * @covers PHPUnit_Framework_TestFailure::exceptionToString
-     */
-    public function testConstraintObjectHasAttribute2()
-    {
-        $constraint = PHPUnit_Framework_Assert::objectHasAttribute('privateAttribute');
-
-        try {
-            $constraint->evaluate(new stdClass, 'custom message');
-        } catch (PHPUnit_Framework_ExpectationFailedException $e) {
-            $this->assertEquals(<<<EOF
-custom message
-Failed asserting that object of class "stdClass" has attribute "privateAttribute".
-
-EOF
-              ,
-              PHPUnit_Framework_TestFailure::exceptionToString($e)
-            );
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_ObjectHasAttribute
-     * @covers PHPUnit_Framework_Constraint_Not
-     * @covers PHPUnit_Framework_Assert::objectHasAttribute
-     * @covers PHPUnit_Framework_Assert::logicalNot
-     * @covers PHPUnit_Framework_TestFailure::exceptionToString
-     */
-    public function testConstraintObjectNotHasAttribute()
-    {
-        $constraint = PHPUnit_Framework_Assert::logicalNot(
-          PHPUnit_Framework_Assert::objectHasAttribute('privateAttribute')
-        );
-
-        $this->assertTrue($constraint->evaluate(new stdClass, '', true));
-        $this->assertFalse($constraint->evaluate(new ClassWithNonPublicAttributes, '', true));
-        $this->assertEquals('does not have attribute "privateAttribute"', $constraint->toString());
-        $this->assertEquals(1, count($constraint));
-
-        try {
-            $constraint->evaluate(new ClassWithNonPublicAttributes);
-        } catch (PHPUnit_Framework_ExpectationFailedException $e) {
-            $this->assertEquals(
-              <<<EOF
-Failed asserting that object of class "ClassWithNonPublicAttributes" does not have attribute "privateAttribute".
-
-EOF
-              ,
-              PHPUnit_Framework_TestFailure::exceptionToString($e)
-            );
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_ObjectHasAttribute
-     * @covers PHPUnit_Framework_Constraint_Not
-     * @covers PHPUnit_Framework_Assert::objectHasAttribute
-     * @covers PHPUnit_Framework_Assert::logicalNot
-     * @covers PHPUnit_Framework_TestFailure::exceptionToString
-     */
-    public function testConstraintObjectNotHasAttribute2()
-    {
-        $constraint = PHPUnit_Framework_Assert::logicalNot(
-          PHPUnit_Framework_Assert::objectHasAttribute('privateAttribute')
-        );
-
-        try {
-            $constraint->evaluate(new ClassWithNonPublicAttributes, 'custom message');
-        } catch (PHPUnit_Framework_ExpectationFailedException $e) {
-            $this->assertEquals(<<<EOF
-custom message
-Failed asserting that object of class "ClassWithNonPublicAttributes" does not have attribute "privateAttribute".
-
-EOF
-              ,
-              PHPUnit_Framework_TestFailure::exceptionToString($e)
-            );
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_PCREMatch
-     * @covers PHPUnit_Framework_Assert::matchesRegularExpression
-     * @covers PHPUnit_Framework_Constraint::count
-     * @covers PHPUnit_Framework_TestFailure::exceptionToString
-     */
-    public function testConstraintPCREMatch()
-    {
-        $constraint = PHPUnit_Framework_Assert::matchesRegularExpression('/foo/');
-
-        $this->assertFalse($constraint->evaluate('barbazbar', '', true));
-        $this->assertTrue($constraint->evaluate('barfoobar', '', true));
-        $this->assertEquals('matches PCRE pattern "/foo/"', $constraint->toString());
-        $this->assertEquals(1, count($constraint));
-
-        try {
-            $constraint->evaluate('barbazbar');
-        } catch (PHPUnit_Framework_ExpectationFailedException $e) {
-            $this->assertEquals(
-              <<<EOF
-Failed asserting that 'barbazbar' matches PCRE pattern "/foo/".
-
-EOF
-              ,
-              PHPUnit_Framework_TestFailure::exceptionToString($e)
-            );
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_PCREMatch
-     * @covers PHPUnit_Framework_Assert::matchesRegularExpression
-     * @covers PHPUnit_Framework_TestFailure::exceptionToString
-     */
-    public function testConstraintPCREMatch2()
-    {
-        $constraint = PHPUnit_Framework_Assert::matchesRegularExpression('/foo/');
-
-        try {
-            $constraint->evaluate('barbazbar', 'custom message');
-        } catch (PHPUnit_Framework_ExpectationFailedException $e) {
-            $this->assertEquals(<<<EOF
-custom message
-Failed asserting that 'barbazbar' matches PCRE pattern "/foo/".
-
-EOF
-              ,
-              PHPUnit_Framework_TestFailure::exceptionToString($e)
-            );
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_PCREMatch
-     * @covers PHPUnit_Framework_Constraint_Not
-     * @covers PHPUnit_Framework_Assert::matchesRegularExpression
-     * @covers PHPUnit_Framework_Assert::logicalNot
-     * @covers PHPUnit_Framework_TestFailure::exceptionToString
-     */
-    public function testConstraintPCRENotMatch()
-    {
-        $constraint = PHPUnit_Framework_Assert::logicalNot(
-          PHPUnit_Framework_Assert::matchesRegularExpression('/foo/')
-        );
-
-        $this->assertTrue($constraint->evaluate('barbazbar', '', true));
-        $this->assertFalse($constraint->evaluate('barfoobar', '', true));
-        $this->assertEquals('does not match PCRE pattern "/foo/"', $constraint->toString());
-        $this->assertEquals(1, count($constraint));
-
-        try {
-            $constraint->evaluate('barfoobar');
-        } catch (PHPUnit_Framework_ExpectationFailedException $e) {
-            $this->assertEquals(
-              <<<EOF
-Failed asserting that 'barfoobar' does not match PCRE pattern "/foo/".
-
-EOF
-              ,
-              PHPUnit_Framework_TestFailure::exceptionToString($e)
-            );
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_PCREMatch
-     * @covers PHPUnit_Framework_Constraint_Not
-     * @covers PHPUnit_Framework_Assert::matchesRegularExpression
-     * @covers PHPUnit_Framework_Assert::logicalNot
-     * @covers PHPUnit_Framework_TestFailure::exceptionToString
-     */
-    public function testConstraintPCRENotMatch2()
-    {
-        $constraint = PHPUnit_Framework_Assert::logicalNot(
-          PHPUnit_Framework_Assert::matchesRegularExpression('/foo/')
-        );
-
-        try {
-            $constraint->evaluate('barfoobar', 'custom message');
-        } catch (PHPUnit_Framework_ExpectationFailedException $e) {
-            $this->assertEquals(<<<EOF
-custom message
-Failed asserting that 'barfoobar' does not match PCRE pattern "/foo/".
-
-EOF
-              ,
-              PHPUnit_Framework_TestFailure::exceptionToString($e)
-            );
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_StringMatches
-     * @covers PHPUnit_Framework_Assert::matches
-     * @covers PHPUnit_Framework_Constraint::count
-     */
-    public function testConstraintStringMatches()
-    {
-        $constraint = PHPUnit_Framework_Assert::matches('*%c*');
-        $this->assertFalse($constraint->evaluate('**', '', true));
-        $this->assertTrue($constraint->evaluate('***', '', true));
-        $this->assertEquals('matches PCRE pattern "/^\*.\*$/s"', $constraint->toString());
-        $this->assertEquals(1, count($constraint));
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_StringMatches
-     * @covers PHPUnit_Framework_Assert::matches
-     * @covers PHPUnit_Framework_Constraint::count
-     */
-    public function testConstraintStringMatches2()
-    {
-        $constraint = PHPUnit_Framework_Assert::matches('*%s*');
-        $this->assertFalse($constraint->evaluate('**', '', true));
-        $this->assertTrue($constraint->evaluate('***', '', true));
-        $this->assertEquals('matches PCRE pattern "/^\*[^\r\n]+\*$/s"', $constraint->toString());
-        $this->assertEquals(1, count($constraint));
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_StringMatches
-     * @covers PHPUnit_Framework_Assert::matches
-     * @covers PHPUnit_Framework_Constraint::count
-     */
-    public function testConstraintStringMatches3()
-    {
-        $constraint = PHPUnit_Framework_Assert::matches('*%i*');
-        $this->assertFalse($constraint->evaluate('**', '', true));
-        $this->assertTrue($constraint->evaluate('*0*', '', true));
-        $this->assertEquals('matches PCRE pattern "/^\*[+-]?\d+\*$/s"', $constraint->toString());
-        $this->assertEquals(1, count($constraint));
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_StringMatches
-     * @covers PHPUnit_Framework_Assert::matches
-     * @covers PHPUnit_Framework_Constraint::count
-     */
-    public function testConstraintStringMatches4()
-    {
-        $constraint = PHPUnit_Framework_Assert::matches('*%d*');
-        $this->assertFalse($constraint->evaluate('**', '', true));
-        $this->assertTrue($constraint->evaluate('*0*', '', true));
-        $this->assertEquals('matches PCRE pattern "/^\*\d+\*$/s"', $constraint->toString());
-        $this->assertEquals(1, count($constraint));
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_StringMatches
-     * @covers PHPUnit_Framework_Assert::matches
-     * @covers PHPUnit_Framework_Constraint::count
-     */
-    public function testConstraintStringMatches5()
-    {
-        $constraint = PHPUnit_Framework_Assert::matches('*%x*');
-        $this->assertFalse($constraint->evaluate('**', '', true));
-        $this->assertTrue($constraint->evaluate('*0f0f0f*', '', true));
-        $this->assertEquals('matches PCRE pattern "/^\*[0-9a-fA-F]+\*$/s"', $constraint->toString());
-        $this->assertEquals(1, count($constraint));
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_StringMatches
-     * @covers PHPUnit_Framework_Assert::matches
-     * @covers PHPUnit_Framework_Constraint::count
-     */
-    public function testConstraintStringMatches6()
-    {
-        $constraint = PHPUnit_Framework_Assert::matches('*%f*');
-        $this->assertFalse($constraint->evaluate('**', '', true));
-        $this->assertTrue($constraint->evaluate('*1.0*', '', true));
-        $this->assertEquals('matches PCRE pattern "/^\*[+-]?\.?\d+\.?\d*(?:[Ee][+-]?\d+)?\*$/s"', $constraint->toString());
-        $this->assertEquals(1, count($constraint));
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_StringStartsWith
-     * @covers PHPUnit_Framework_Assert::stringStartsWith
-     * @covers PHPUnit_Framework_Constraint::count
-     * @covers PHPUnit_Framework_TestFailure::exceptionToString
-     */
-    public function testConstraintStringStartsWith()
-    {
-        $constraint = PHPUnit_Framework_Assert::stringStartsWith('prefix');
-
-        $this->assertFalse($constraint->evaluate('foo', '', true));
-        $this->assertTrue($constraint->evaluate('prefixfoo', '', true));
-        $this->assertEquals('starts with "prefix"', $constraint->toString());
-        $this->assertEquals(1, count($constraint));
-
-        try {
-            $constraint->evaluate('foo');
-        } catch (PHPUnit_Framework_ExpectationFailedException $e) {
-            $this->assertEquals(
-              <<<EOF
-Failed asserting that 'foo' starts with "prefix".
-
-EOF
-              ,
-              PHPUnit_Framework_TestFailure::exceptionToString($e)
-            );
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_StringStartsWith
-     * @covers PHPUnit_Framework_Assert::stringStartsWith
-     * @covers PHPUnit_Framework_TestFailure::exceptionToString
-     */
-    public function testConstraintStringStartsWith2()
-    {
-        $constraint = PHPUnit_Framework_Assert::stringStartsWith('prefix');
-
-        try {
-            $constraint->evaluate('foo', 'custom message');
-        } catch (PHPUnit_Framework_ExpectationFailedException $e) {
-            $this->assertEquals(
-              <<<EOF
-custom message\nFailed asserting that 'foo' starts with "prefix".
-
-EOF
-              ,
-              PHPUnit_Framework_TestFailure::exceptionToString($e)
-            );
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_StringStartsWith
-     * @covers PHPUnit_Framework_Constraint_Not
-     * @covers PHPUnit_Framework_Assert::stringStartsWith
-     * @covers PHPUnit_Framework_Assert::logicalNot
-     * @covers PHPUnit_Framework_TestFailure::exceptionToString
-     */
-    public function testConstraintStringStartsNotWith()
-    {
-        $constraint = PHPUnit_Framework_Assert::logicalNot(
-          PHPUnit_Framework_Assert::stringStartsWith('prefix')
-        );
-
-        $this->assertTrue($constraint->evaluate('foo', '', true));
-        $this->assertFalse($constraint->evaluate('prefixfoo', '', true));
-        $this->assertEquals('starts not with "prefix"', $constraint->toString());
-        $this->assertEquals(1, count($constraint));
-
-        try {
-            $constraint->evaluate('prefixfoo');
-        } catch (PHPUnit_Framework_ExpectationFailedException $e) {
-            $this->assertEquals(
-              <<<EOF
-Failed asserting that 'prefixfoo' starts not with "prefix".
-
-EOF
-              ,
-              PHPUnit_Framework_TestFailure::exceptionToString($e)
-            );
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_StringStartsWith
-     * @covers PHPUnit_Framework_Assert::stringStartsWith
-     * @covers PHPUnit_Framework_TestFailure::exceptionToString
-     */
-    public function testConstraintStringStartsNotWith2()
-    {
-        $constraint = PHPUnit_Framework_Assert::logicalNot(
-          PHPUnit_Framework_Assert::stringStartsWith('prefix')
-        );
-
-        try {
-            $constraint->evaluate('prefixfoo', 'custom message');
-        } catch (PHPUnit_Framework_ExpectationFailedException $e) {
-            $this->assertEquals(
-              <<<EOF
-custom message
-Failed asserting that 'prefixfoo' starts not with "prefix".
-
-EOF
-              ,
-              PHPUnit_Framework_TestFailure::exceptionToString($e)
-            );
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_StringContains
-     * @covers PHPUnit_Framework_Assert::stringContains
-     * @covers PHPUnit_Framework_Constraint::count
-     * @covers PHPUnit_Framework_TestFailure::exceptionToString
-     */
-    public function testConstraintStringContains()
-    {
-        $constraint = PHPUnit_Framework_Assert::stringContains('foo');
-
-        $this->assertFalse($constraint->evaluate('barbazbar', '', true));
-        $this->assertTrue($constraint->evaluate('barfoobar', '', true));
-        $this->assertEquals('contains "foo"', $constraint->toString());
-        $this->assertEquals(1, count($constraint));
-
-        try {
-            $constraint->evaluate('barbazbar');
-        } catch (PHPUnit_Framework_ExpectationFailedException $e) {
-            $this->assertEquals(
-              <<<EOF
-Failed asserting that 'barbazbar' contains "foo".
-
-EOF
-              ,
-              PHPUnit_Framework_TestFailure::exceptionToString($e)
-            );
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_StringContains
-     * @covers PHPUnit_Framework_Assert::stringContains
-     * @covers PHPUnit_Framework_TestFailure::exceptionToString
-     */
-    public function testConstraintStringContains2()
-    {
-        $constraint = PHPUnit_Framework_Assert::stringContains('foo');
-
-        try {
-            $constraint->evaluate('barbazbar', 'custom message');
-        } catch (PHPUnit_Framework_ExpectationFailedException $e) {
-            $this->assertEquals(
-              <<<EOF
-custom message
-Failed asserting that 'barbazbar' contains "foo".
-
-EOF
-              ,
-              PHPUnit_Framework_TestFailure::exceptionToString($e)
-            );
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_StringContains
-     * @covers PHPUnit_Framework_Constraint_Not
-     * @covers PHPUnit_Framework_Assert::stringContains
-     * @covers PHPUnit_Framework_Assert::logicalNot
-     * @covers PHPUnit_Framework_TestFailure::exceptionToString
-     */
-    public function testConstraintStringNotContains()
-    {
-        $constraint = PHPUnit_Framework_Assert::logicalNot(
-          PHPUnit_Framework_Assert::stringContains('foo')
-        );
-
-        $this->assertTrue($constraint->evaluate('barbazbar', '', true));
-        $this->assertFalse($constraint->evaluate('barfoobar', '', true));
-        $this->assertEquals('does not contain "foo"', $constraint->toString());
-        $this->assertEquals(1, count($constraint));
-
-        try {
-            $constraint->evaluate('barfoobar');
-        } catch (PHPUnit_Framework_ExpectationFailedException $e) {
-            $this->assertEquals(
-              <<<EOF
-Failed asserting that 'barfoobar' does not contain "foo".
-
-EOF
-              ,
-              PHPUnit_Framework_TestFailure::exceptionToString($e)
-            );
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_StringContains
-     * @covers PHPUnit_Framework_Constraint_Not
-     * @covers PHPUnit_Framework_Assert::stringContains
-     * @covers PHPUnit_Framework_Assert::logicalNot
-     * @covers PHPUnit_Framework_TestFailure::exceptionToString
-     */
-    public function testConstraintStringNotContains2()
-    {
-        $constraint = PHPUnit_Framework_Assert::logicalNot(
-          PHPUnit_Framework_Assert::stringContains('foo')
-        );
-
-        try {
-            $constraint->evaluate('barfoobar', 'custom message');
-        } catch (PHPUnit_Framework_ExpectationFailedException $e) {
-            $this->assertEquals(
-              <<<EOF
-custom message
-Failed asserting that 'barfoobar' does not contain "foo".
-
-EOF
-              ,
-              PHPUnit_Framework_TestFailure::exceptionToString($e)
-            );
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_StringEndsWith
-     * @covers PHPUnit_Framework_Assert::stringEndsWith
-     * @covers PHPUnit_Framework_Constraint::count
-     * @covers PHPUnit_Framework_TestFailure::exceptionToString
-     */
-    public function testConstraintStringEndsWith()
-    {
-        $constraint = PHPUnit_Framework_Assert::stringEndsWith('suffix');
-
-        $this->assertFalse($constraint->evaluate('foo', '', true));
-        $this->assertTrue($constraint->evaluate('foosuffix', '', true));
-        $this->assertEquals('ends with "suffix"', $constraint->toString());
-        $this->assertEquals(1, count($constraint));
-
-        try {
-            $constraint->evaluate('foo');
-        } catch (PHPUnit_Framework_ExpectationFailedException $e) {
-            $this->assertEquals(
-              <<<EOF
-Failed asserting that 'foo' ends with "suffix".
-
-EOF
-              ,
-              PHPUnit_Framework_TestFailure::exceptionToString($e)
-            );
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_StringEndsWith
-     * @covers PHPUnit_Framework_Assert::stringEndsWith
-     * @covers PHPUnit_Framework_TestFailure::exceptionToString
-     */
-    public function testConstraintStringEndsWith2()
-    {
-        $constraint = PHPUnit_Framework_Assert::stringEndsWith('suffix');
-
-        try {
-            $constraint->evaluate('foo', 'custom message');
-        } catch (PHPUnit_Framework_ExpectationFailedException $e) {
-            $this->assertEquals(
-              <<<EOF
-custom message
-Failed asserting that 'foo' ends with "suffix".
-
-EOF
-              ,
-              PHPUnit_Framework_TestFailure::exceptionToString($e)
-            );
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_StringEndsWith
-     * @covers PHPUnit_Framework_Constraint_Not
-     * @covers PHPUnit_Framework_Assert::stringEndsWith
-     * @covers PHPUnit_Framework_Assert::logicalNot
-     * @covers PHPUnit_Framework_TestFailure::exceptionToString
-     */
-    public function testConstraintStringEndsNotWith()
-    {
-        $constraint = PHPUnit_Framework_Assert::logicalNot(
-          PHPUnit_Framework_Assert::stringEndsWith('suffix')
-        );
-
-        $this->assertTrue($constraint->evaluate('foo', '', true));
-        $this->assertFalse($constraint->evaluate('foosuffix', '', true));
-        $this->assertEquals('ends not with "suffix"', $constraint->toString());
-        $this->assertEquals(1, count($constraint));
-
-        try {
-            $constraint->evaluate('foosuffix');
-        } catch (PHPUnit_Framework_ExpectationFailedException $e) {
-            $this->assertEquals(
-              <<<EOF
-Failed asserting that 'foosuffix' ends not with "suffix".
-
-EOF
-              ,
-              PHPUnit_Framework_TestFailure::exceptionToString($e)
-            );
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_StringEndsWith
-     * @covers PHPUnit_Framework_Assert::stringEndsWith
-     * @covers PHPUnit_Framework_TestFailure::exceptionToString
-     */
-    public function testConstraintStringEndsNotWith2()
-    {
-        $constraint = PHPUnit_Framework_Assert::logicalNot(
-          PHPUnit_Framework_Assert::stringEndsWith('suffix')
-        );
-
-        try {
-            $constraint->evaluate('foosuffix', 'custom message');
-        } catch (PHPUnit_Framework_ExpectationFailedException $e) {
-            $this->assertEquals(
-              <<<EOF
-custom message
-Failed asserting that 'foosuffix' ends not with "suffix".
-
-EOF
-              ,
-              PHPUnit_Framework_TestFailure::exceptionToString($e)
-            );
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_TraversableContains
-     */
-    public function testConstraintArrayContainsCheckForObjectIdentity()
-    {
-        // Check for primitive type.
-        $constraint = new PHPUnit_Framework_Constraint_TraversableContains('foo', true, true);
-
-        $this->assertFalse($constraint->evaluate(array(0), '', true));
-        $this->assertFalse($constraint->evaluate(array(true), '', true));
-
-        // Default case.
-        $constraint = new PHPUnit_Framework_Constraint_TraversableContains('foo');
-
-        $this->assertTrue($constraint->evaluate(array(0), '', true));
-        $this->assertTrue($constraint->evaluate(array(true), '', true));
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_TraversableContains
-     * @covers PHPUnit_Framework_Constraint::count
-     * @covers PHPUnit_Framework_TestFailure::exceptionToString
-     */
-    public function testConstraintArrayContains()
-    {
-        $constraint = new PHPUnit_Framework_Constraint_TraversableContains('foo');
-
-        $this->assertFalse($constraint->evaluate(array('bar'), '', true));
-        $this->assertTrue($constraint->evaluate(array('foo'), '', true));
-        $this->assertEquals("contains 'foo'", $constraint->toString());
-        $this->assertEquals(1, count($constraint));
-
-        try {
-            $constraint->evaluate(array('bar'));
-        } catch (PHPUnit_Framework_ExpectationFailedException $e) {
-            $this->assertEquals(
-              <<<EOF
-Failed asserting that an array contains 'foo'.
-
-EOF
-              ,
-              PHPUnit_Framework_TestFailure::exceptionToString($e)
-            );
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_TraversableContains
-     * @covers PHPUnit_Framework_TestFailure::exceptionToString
-     */
-    public function testConstraintArrayContains2()
-    {
-        $constraint = new PHPUnit_Framework_Constraint_TraversableContains('foo');
-
-        try {
-            $constraint->evaluate(array('bar'), 'custom message');
-        } catch (PHPUnit_Framework_ExpectationFailedException $e) {
-            $this->assertEquals(
-              <<<EOF
-custom message
-Failed asserting that an array contains 'foo'.
-
-EOF
-              ,
-              PHPUnit_Framework_TestFailure::exceptionToString($e)
-            );
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_TraversableContains
-     * @covers PHPUnit_Framework_Constraint_Not
-     * @covers PHPUnit_Framework_Assert::logicalNot
-     * @covers PHPUnit_Framework_TestFailure::exceptionToString
-     */
-    public function testConstraintArrayNotContains()
-    {
-        $constraint = PHPUnit_Framework_Assert::logicalNot(
-          new PHPUnit_Framework_Constraint_TraversableContains('foo')
-        );
-
-        $this->assertTrue($constraint->evaluate(array('bar'), '', true));
-        $this->assertFalse($constraint->evaluate(array('foo'), '', true));
-        $this->assertEquals("does not contain 'foo'", $constraint->toString());
-        $this->assertEquals(1, count($constraint));
-
-        try {
-            $constraint->evaluate(array('foo'));
-        } catch (PHPUnit_Framework_ExpectationFailedException $e) {
-            $this->assertEquals(
-              <<<EOF
-Failed asserting that an array does not contain 'foo'.
-
-EOF
-              ,
-              PHPUnit_Framework_TestFailure::exceptionToString($e)
-            );
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_TraversableContains
-     * @covers PHPUnit_Framework_Constraint_Not
-     * @covers PHPUnit_Framework_Assert::logicalNot
-     * @covers PHPUnit_Framework_TestFailure::exceptionToString
-     */
-    public function testConstraintArrayNotContains2()
-    {
-        $constraint = PHPUnit_Framework_Assert::logicalNot(
-          new PHPUnit_Framework_Constraint_TraversableContains('foo')
-        );
-
-        try {
-            $constraint->evaluate(array('foo'), 'custom message');
-        } catch (PHPUnit_Framework_ExpectationFailedException $e) {
-            $this->assertEquals(
-              <<<EOF
-custom message
-Failed asserting that an array does not contain 'foo'.
-
-EOF
-              ,
-              PHPUnit_Framework_TestFailure::exceptionToString($e)
-            );
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_TraversableContains
-     * @covers PHPUnit_Framework_Constraint::count
-     * @covers PHPUnit_Framework_TestFailure::exceptionToString
-     */
-    public function testConstraintSplObjectStorageContains()
-    {
-        $object     = new StdClass;
-        $constraint = new PHPUnit_Framework_Constraint_TraversableContains($object);
-        $this->assertStringMatchesFormat('contains stdClass Object &%s ()', $constraint->toString());
-
-        $storage = new SplObjectStorage;
-        $this->assertFalse($constraint->evaluate($storage, '', true));
-
-        $storage->attach($object);
-        $this->assertTrue($constraint->evaluate($storage, '', true));
-
-        try {
-            $constraint->evaluate(new SplObjectStorage);
-        } catch (PHPUnit_Framework_ExpectationFailedException $e) {
-            $this->assertStringMatchesFormat(
-              <<<EOF
-Failed asserting that a traversable contains stdClass Object &%x ().
-
-EOF
-              ,
-              PHPUnit_Framework_TestFailure::exceptionToString($e)
-            );
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_TraversableContains
-     * @covers PHPUnit_Framework_TestFailure::exceptionToString
-     */
-    public function testConstraintSplObjectStorageContains2()
-    {
-        $object     = new StdClass;
-        $constraint = new PHPUnit_Framework_Constraint_TraversableContains($object);
-
-        try {
-            $constraint->evaluate(new SplObjectStorage, 'custom message');
-        } catch (PHPUnit_Framework_ExpectationFailedException $e) {
-            $this->assertStringMatchesFormat(
-              <<<EOF
-custom message
-Failed asserting that a traversable contains stdClass Object &%x ().
-
-EOF
-              ,
-              PHPUnit_Framework_TestFailure::exceptionToString($e)
-            );
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::attributeEqualTo
-     * @covers PHPUnit_Framework_Constraint_Attribute
-     * @covers PHPUnit_Framework_TestFailure::exceptionToString
-     */
-    public function testAttributeEqualTo()
-    {
-        $object     = new ClassWithNonPublicAttributes;
-        $constraint = PHPUnit_Framework_Assert::attributeEqualTo('foo', 1);
-
-        $this->assertTrue($constraint->evaluate($object, '', true));
-        $this->assertEquals('attribute "foo" is equal to 1', $constraint->toString());
-        $this->assertEquals(1, count($constraint));
-
-        $constraint = PHPUnit_Framework_Assert::attributeEqualTo('foo', 2);
-
-        $this->assertFalse($constraint->evaluate($object, '', true));
-
-        try {
-            $constraint->evaluate($object);
-        } catch (PHPUnit_Framework_ExpectationFailedException $e) {
-            $this->assertEquals(
-              <<<EOF
-Failed asserting that attribute "foo" is equal to 2.
-
-EOF
-              ,
-              PHPUnit_Framework_TestFailure::exceptionToString($e)
-            );
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::attributeEqualTo
-     * @covers PHPUnit_Framework_Constraint_Attribute
-     * @covers PHPUnit_Framework_TestFailure::exceptionToString
-     */
-    public function testAttributeEqualTo2()
-    {
-        $object     = new ClassWithNonPublicAttributes;
-        $constraint = PHPUnit_Framework_Assert::attributeEqualTo('foo', 2);
-
-        try {
-            $constraint->evaluate($object, 'custom message');
-        } catch (PHPUnit_Framework_ExpectationFailedException $e) {
-            $this->assertEquals(
-              <<<EOF
-custom message\nFailed asserting that attribute "foo" is equal to 2.
-
-EOF
-              ,
-              PHPUnit_Framework_TestFailure::exceptionToString($e)
-            );
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::attributeEqualTo
-     * @covers PHPUnit_Framework_Assert::logicalNot
-     * @covers PHPUnit_Framework_Constraint_Attribute
-     * @covers PHPUnit_Framework_Constraint_Not
-     * @covers PHPUnit_Framework_TestFailure::exceptionToString
-     */
-    public function testAttributeNotEqualTo()
-    {
-        $object     = new ClassWithNonPublicAttributes;
-        $constraint = PHPUnit_Framework_Assert::logicalNot(
-          PHPUnit_Framework_Assert::attributeEqualTo('foo', 2)
-        );
-
-        $this->assertTrue($constraint->evaluate($object, '', true));
-        $this->assertEquals('attribute "foo" is not equal to 2', $constraint->toString());
-        $this->assertEquals(1, count($constraint));
-
-        $constraint = PHPUnit_Framework_Assert::logicalNot(
-          PHPUnit_Framework_Assert::attributeEqualTo('foo', 1)
-        );
-
-        $this->assertFalse($constraint->evaluate($object, '', true));
-
-        try {
-            $constraint->evaluate($object);
-        } catch (PHPUnit_Framework_ExpectationFailedException $e) {
-            $this->assertEquals(
-              <<<EOF
-Failed asserting that attribute "foo" is not equal to 1.
-
-EOF
-              ,
-              PHPUnit_Framework_TestFailure::exceptionToString($e)
-            );
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Assert::attributeEqualTo
-     * @covers PHPUnit_Framework_Assert::logicalNot
-     * @covers PHPUnit_Framework_Constraint_Attribute
-     * @covers PHPUnit_Framework_Constraint_Not
-     * @covers PHPUnit_Framework_TestFailure::exceptionToString
-     */
-    public function testAttributeNotEqualTo2()
-    {
-        $object     = new ClassWithNonPublicAttributes;
-        $constraint = PHPUnit_Framework_Assert::logicalNot(
-          PHPUnit_Framework_Assert::attributeEqualTo('foo', 1)
-        );
-
-        try {
-            $constraint->evaluate($object, 'custom message');
-        } catch (PHPUnit_Framework_ExpectationFailedException $e) {
-            $this->assertEquals(
-              <<<EOF
-custom message\nFailed asserting that attribute "foo" is not equal to 1.
-
-EOF
-              ,
-              PHPUnit_Framework_TestFailure::exceptionToString($e)
-            );
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_IsEmpty
-     * @covers PHPUnit_Framework_Constraint::count
-     * @covers PHPUnit_Framework_TestFailure::exceptionToString
-     */
-    public function testConstraintIsEmpty()
-    {
-        $constraint = new PHPUnit_Framework_Constraint_IsEmpty;
-
-        $this->assertFalse($constraint->evaluate(array('foo'), '', true));
-        $this->assertTrue($constraint->evaluate(array(), '', true));
-        $this->assertFalse($constraint->evaluate(new ArrayObject(array('foo')), '', true));
-        $this->assertTrue($constraint->evaluate(new ArrayObject(array()), '', true));
-        $this->assertEquals('is empty', $constraint->toString());
-        $this->assertEquals(1, count($constraint));
-
-        try {
-            $constraint->evaluate(array('foo'));
-        } catch (PHPUnit_Framework_ExpectationFailedException $e) {
-            $this->assertEquals(
-              <<<EOF
-Failed asserting that an array is empty.
-
-EOF
-              ,
-              PHPUnit_Framework_TestFailure::exceptionToString($e)
-            );
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_IsEmpty
-     * @covers PHPUnit_Framework_TestFailure::exceptionToString
-     */
-    public function testConstraintIsEmpty2()
-    {
-        $constraint = new PHPUnit_Framework_Constraint_IsEmpty;
-
-        try {
-            $constraint->evaluate(array('foo'), 'custom message');
-        } catch (PHPUnit_Framework_ExpectationFailedException $e) {
-            $this->assertEquals(
-              <<<EOF
-custom message\nFailed asserting that an array is empty.
-
-EOF
-              ,
-              PHPUnit_Framework_TestFailure::exceptionToString($e)
-            );
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_Count
-     */
-    public function testConstraintCountWithAnArray()
-    {
-        $constraint = new PHPUnit_Framework_Constraint_Count(5);
-
-        $this->assertTrue($constraint->evaluate(array(1, 2, 3, 4, 5), '', true));
-        $this->assertFalse($constraint->evaluate(array(1, 2, 3, 4), '', true));
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_Count
-     */
-    public function testConstraintCountWithAnIteratorWhichDoesNotImplementCountable()
-    {
-        $constraint = new PHPUnit_Framework_Constraint_Count(5);
-
-        $this->assertTrue($constraint->evaluate(new TestIterator(array(1, 2, 3, 4, 5)), '', true));
-        $this->assertFalse($constraint->evaluate(new TestIterator(array(1, 2, 3, 4)), '', true));
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_Count
-     */
-    public function testConstraintCountWithAnObjectImplementingCountable()
-    {
-        $constraint = new PHPUnit_Framework_Constraint_Count(5);
-
-        $this->assertTrue($constraint->evaluate(new ArrayObject(array(1, 2, 3, 4, 5)), '', true));
-        $this->assertFalse($constraint->evaluate(new ArrayObject(array(1, 2, 3, 4)), '', true));
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_Count
-     * @covers PHPUnit_Framework_TestFailure::exceptionToString
-     */
-    public function testConstraintCountFailing()
-    {
-        $constraint = new PHPUnit_Framework_Constraint_Count(5);
-
-        try {
-            $constraint->evaluate(array(1, 2));
-        } catch (PHPUnit_Framework_ExpectationFailedException $e) {
-            $this->assertEquals(
-              <<<EOF
-Failed asserting that actual size 2 matches expected size 5.
-
-EOF
-              ,
-              PHPUnit_Framework_TestFailure::exceptionToString($e)
-            );
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_Count
-     * @covers PHPUnit_Framework_Constraint_Not
-     * @covers PHPUnit_Framework_Assert::logicalNot
-     * @covers PHPUnit_Framework_TestFailure::exceptionToString
-     */
-    public function testConstraintNotCountFailing()
-    {
-        $constraint = PHPUnit_Framework_Assert::logicalNot(
-          new PHPUnit_Framework_Constraint_Count(2)
-        );
-
-        try {
-            $constraint->evaluate(array(1, 2));
-        } catch (PHPUnit_Framework_ExpectationFailedException $e) {
-            $this->assertEquals(
-              <<<EOF
-Failed asserting that actual size 2 does not match expected size 2.
-
-EOF
-              ,
-              PHPUnit_Framework_TestFailure::exceptionToString($e)
-            );
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_SameSize
-     */
-    public function testConstraintSameSizeWithAnArray()
-    {
-        $constraint = new PHPUnit_Framework_Constraint_SameSize(array(1, 2, 3, 4, 5));
-
-        $this->assertTrue($constraint->evaluate(array(6, 7, 8, 9, 10), '', true));
-        $this->assertFalse($constraint->evaluate(array(1, 2, 3, 4), '', true));
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_SameSize
-     */
-    public function testConstraintSameSizeWithAnIteratorWhichDoesNotImplementCountable()
-    {
-        $constraint = new PHPUnit_Framework_Constraint_SameSize(new TestIterator(array(1, 2, 3, 4, 5)));
-
-        $this->assertTrue($constraint->evaluate(new TestIterator(array(6, 7, 8, 9, 10)), '', true));
-        $this->assertFalse($constraint->evaluate(new TestIterator(array(1, 2, 3, 4)), '', true));
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_SameSize
-     */
-    public function testConstraintSameSizeWithAnObjectImplementingCountable()
-    {
-        $constraint = new PHPUnit_Framework_Constraint_SameSize(new ArrayObject(array(1, 2, 3, 4, 5)));
-
-        $this->assertTrue($constraint->evaluate(new ArrayObject(array(6, 7, 8, 9, 10)), '', true));
-        $this->assertFalse($constraint->evaluate(new ArrayObject(array(1, 2, 3, 4)), '', true));
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_SameSize
-     * @covers PHPUnit_Framework_TestFailure::exceptionToString
-     */
-    public function testConstraintSameSizeFailing()
-    {
-        $constraint = new PHPUnit_Framework_Constraint_SameSize(array(1, 2, 3, 4, 5));
-
-        try {
-            $constraint->evaluate(array(1, 2));
-        } catch (PHPUnit_Framework_ExpectationFailedException $e) {
-            $this->assertEquals(
-              <<<EOF
-Failed asserting that actual size 2 matches expected size 5.
-
-EOF
-              ,
-              PHPUnit_Framework_TestFailure::exceptionToString($e)
-            );
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_SameSize
-     * @covers PHPUnit_Framework_Constraint_Not
-     * @covers PHPUnit_Framework_Assert::logicalNot
-     * @covers PHPUnit_Framework_TestFailure::exceptionToString
-     */
-    public function testConstraintNotSameSizeFailing()
-    {
-        $constraint = PHPUnit_Framework_Assert::logicalNot(
-          new PHPUnit_Framework_Constraint_SameSize(array(1, 2))
-        );
-
-        try {
-            $constraint->evaluate(array(3, 4));
-        } catch (PHPUnit_Framework_ExpectationFailedException $e) {
-            $this->assertEquals(
-              <<<EOF
-Failed asserting that actual size 2 does not match expected size 2.
-
-EOF
-              ,
-              PHPUnit_Framework_TestFailure::exceptionToString($e)
-            );
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_Exception
-     * @covers PHPUnit_Framework_TestFailure::exceptionToString
-     */
-    public function testConstraintException()
-    {
-        $constraint = new PHPUnit_Framework_Constraint_Exception('FoobarException');
-        $exception  = new DummyException('Test');
-        $stackTrace = $exception->getTraceAsString();
-
-        try {
-            $constraint->evaluate($exception);
-        } catch (PHPUnit_Framework_ExpectationFailedException $e) {
-            $this->assertEquals(
-              <<<EOF
-Failed asserting that exception of type "DummyException" matches expected exception "FoobarException". Message was: "Test" at
-$stackTrace.
-
-EOF
-                ,
-                PHPUnit_Framework_TestFailure::exceptionToString($e)
-            );
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * Removes spaces in front of newlines
-     *
-     * @param  string $string
-     * @return string
-     */
-    private function trimnl($string)
-    {
-        return preg_replace('/[ ]*\n/', "\n", $string);
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/Framework/SuiteTest.php b/vendor/phpunit/phpunit/tests/Framework/SuiteTest.php
deleted file mode 100644
index e3f58b3..0000000
--- a/vendor/phpunit/phpunit/tests/Framework/SuiteTest.php
+++ /dev/null
@@ -1,242 +0,0 @@
-<?php
-/*
- * This file is part of PHPUnit.
- *
- * (c) Sebastian Bergmann <sebastian@phpunit.de>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-require_once dirname(__DIR__) . DIRECTORY_SEPARATOR . '_files' . DIRECTORY_SEPARATOR . 'BeforeAndAfterTest.php';
-require_once dirname(__DIR__) . DIRECTORY_SEPARATOR . '_files' . DIRECTORY_SEPARATOR . 'BeforeClassAndAfterClassTest.php';
-require_once dirname(__DIR__) . DIRECTORY_SEPARATOR . '_files' . DIRECTORY_SEPARATOR . 'TestWithTest.php';
-require_once dirname(__DIR__) . DIRECTORY_SEPARATOR . '_files' . DIRECTORY_SEPARATOR . 'DataProviderSkippedTest.php';
-require_once dirname(__DIR__) . DIRECTORY_SEPARATOR . '_files' . DIRECTORY_SEPARATOR . 'DataProviderIncompleteTest.php';
-require_once dirname(__DIR__) . DIRECTORY_SEPARATOR . '_files' . DIRECTORY_SEPARATOR . 'InheritedTestCase.php';
-require_once dirname(__DIR__) . DIRECTORY_SEPARATOR . '_files' . DIRECTORY_SEPARATOR . 'NoTestCaseClass.php';
-require_once dirname(__DIR__) . DIRECTORY_SEPARATOR . '_files' . DIRECTORY_SEPARATOR . 'NoTestCases.php';
-require_once dirname(__DIR__) . DIRECTORY_SEPARATOR . '_files' . DIRECTORY_SEPARATOR . 'NotPublicTestCase.php';
-require_once dirname(__DIR__) . DIRECTORY_SEPARATOR . '_files' . DIRECTORY_SEPARATOR . 'NotVoidTestCase.php';
-require_once dirname(__DIR__) . DIRECTORY_SEPARATOR . '_files' . DIRECTORY_SEPARATOR . 'OverrideTestCase.php';
-require_once dirname(__DIR__) . DIRECTORY_SEPARATOR . '_files' . DIRECTORY_SEPARATOR . 'RequirementsClassBeforeClassHookTest.php';
-
-/**
- * @since      Class available since Release 2.0.0
- * @covers     PHPUnit_Framework_TestSuite
- */
-class Framework_SuiteTest extends PHPUnit_Framework_TestCase
-{
-    protected $result;
-
-    protected function setUp()
-    {
-        $this->result = new PHPUnit_Framework_TestResult;
-    }
-
-    public static function suite()
-    {
-        $suite = new PHPUnit_Framework_TestSuite;
-
-        $suite->addTest(new self('testAddTestSuite'));
-        $suite->addTest(new self('testInheritedTests'));
-        $suite->addTest(new self('testNoTestCases'));
-        $suite->addTest(new self('testNoTestCaseClass'));
-        $suite->addTest(new self('testNotExistingTestCase'));
-        $suite->addTest(new self('testNotPublicTestCase'));
-        $suite->addTest(new self('testNotVoidTestCase'));
-        $suite->addTest(new self('testOneTestCase'));
-        $suite->addTest(new self('testShadowedTests'));
-        $suite->addTest(new self('testBeforeClassAndAfterClassAnnotations'));
-        $suite->addTest(new self('testBeforeAnnotation'));
-        $suite->addTest(new self('testTestWithAnnotation'));
-        $suite->addTest(new self('testSkippedTestDataProvider'));
-        $suite->addTest(new self('testIncompleteTestDataProvider'));
-        $suite->addTest(new self('testRequirementsBeforeClassHook'));
-        $suite->addTest(new self('testDontSkipInheritedClass'));
-
-        return $suite;
-    }
-
-    public function testAddTestSuite()
-    {
-        $suite = new PHPUnit_Framework_TestSuite(
-            'OneTestCase'
-        );
-
-        $suite->run($this->result);
-
-        $this->assertEquals(1, count($this->result));
-    }
-
-    public function testInheritedTests()
-    {
-        $suite = new PHPUnit_Framework_TestSuite(
-            'InheritedTestCase'
-        );
-
-        $suite->run($this->result);
-
-        $this->assertTrue($this->result->wasSuccessful());
-        $this->assertEquals(2, count($this->result));
-    }
-
-    public function testNoTestCases()
-    {
-        $suite = new PHPUnit_Framework_TestSuite(
-            'NoTestCases'
-        );
-
-        $suite->run($this->result);
-
-        $this->assertTrue(!$this->result->wasSuccessful());
-        $this->assertEquals(1, $this->result->failureCount());
-        $this->assertEquals(1, count($this->result));
-    }
-
-    /**
-     * @expectedException PHPUnit_Framework_Exception
-     */
-    public function testNoTestCaseClass()
-    {
-        $suite = new PHPUnit_Framework_TestSuite('NoTestCaseClass');
-    }
-
-    public function testNotExistingTestCase()
-    {
-        $suite = new self('notExistingMethod');
-
-        $suite->run($this->result);
-
-        $this->assertEquals(0, $this->result->errorCount());
-        $this->assertEquals(1, $this->result->failureCount());
-        $this->assertEquals(1, count($this->result));
-    }
-
-    public function testNotPublicTestCase()
-    {
-        $suite = new PHPUnit_Framework_TestSuite(
-            'NotPublicTestCase'
-        );
-
-        $this->assertEquals(2, count($suite));
-    }
-
-    public function testNotVoidTestCase()
-    {
-        $suite = new PHPUnit_Framework_TestSuite(
-            'NotVoidTestCase'
-        );
-
-        $this->assertEquals(1, count($suite));
-    }
-
-    public function testOneTestCase()
-    {
-        $suite = new PHPUnit_Framework_TestSuite(
-            'OneTestCase'
-        );
-
-        $suite->run($this->result);
-
-        $this->assertEquals(0, $this->result->errorCount());
-        $this->assertEquals(0, $this->result->failureCount());
-        $this->assertEquals(1, count($this->result));
-        $this->assertTrue($this->result->wasSuccessful());
-    }
-
-    public function testShadowedTests()
-    {
-        $suite = new PHPUnit_Framework_TestSuite(
-            'OverrideTestCase'
-        );
-
-        $suite->run($this->result);
-
-        $this->assertEquals(1, count($this->result));
-    }
-
-    public function testBeforeClassAndAfterClassAnnotations()
-    {
-        $suite = new PHPUnit_Framework_TestSuite(
-            'BeforeClassAndAfterClassTest'
-        );
-
-        BeforeClassAndAfterClassTest::resetProperties();
-        $suite->run($this->result);
-
-        $this->assertEquals(1, BeforeClassAndAfterClassTest::$beforeClassWasRun, '@beforeClass method was not run once for the whole suite.');
-        $this->assertEquals(1, BeforeClassAndAfterClassTest::$afterClassWasRun, '@afterClass method was not run once for the whole suite.');
-    }
-
-    public function testBeforeAnnotation()
-    {
-        $test = new PHPUnit_Framework_TestSuite(
-            'BeforeAndAfterTest'
-        );
-
-        BeforeAndAfterTest::resetProperties();
-        $result = $test->run();
-
-        $this->assertEquals(2, BeforeAndAfterTest::$beforeWasRun);
-        $this->assertEquals(2, BeforeAndAfterTest::$afterWasRun);
-    }
-
-    public function testTestWithAnnotation()
-    {
-        $test = new PHPUnit_Framework_TestSuite(
-            'TestWithTest'
-        );
-
-        BeforeAndAfterTest::resetProperties();
-        $result = $test->run();
-
-        $this->assertEquals(4, count($result->passed()));
-    }
-
-    public function testSkippedTestDataProvider()
-    {
-        $suite = new PHPUnit_Framework_TestSuite('DataProviderSkippedTest');
-
-        $suite->run($this->result);
-
-        $this->assertEquals(3, $this->result->count());
-        $this->assertEquals(1, $this->result->skippedCount());
-    }
-
-    public function testIncompleteTestDataProvider()
-    {
-        $suite = new PHPUnit_Framework_TestSuite('DataProviderIncompleteTest');
-
-        $suite->run($this->result);
-
-        $this->assertEquals(3, $this->result->count());
-        $this->assertEquals(1, $this->result->notImplementedCount());
-    }
-
-    public function testRequirementsBeforeClassHook()
-    {
-        $suite = new PHPUnit_Framework_TestSuite(
-            'RequirementsClassBeforeClassHookTest'
-        );
-
-        $suite->run($this->result);
-
-        $this->assertEquals(0, $this->result->errorCount());
-        $this->assertEquals(1, $this->result->skippedCount());
-    }
-
-    public function testDontSkipInheritedClass()
-    {
-        $suite = new PHPUnit_Framework_TestSuite(
-            'DontSkipInheritedClass'
-        );
-
-        $dir = dirname(__DIR__) . DIRECTORY_SEPARATOR . '_files' . DIRECTORY_SEPARATOR . 'Inheritance' . DIRECTORY_SEPARATOR;
-
-        $suite->addTestFile($dir . 'InheritanceA.php');
-        $suite->addTestFile($dir . 'InheritanceB.php');
-        $result = $suite->run();
-        $this->assertEquals(2, count($result));
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/Framework/TestCaseTest.php b/vendor/phpunit/phpunit/tests/Framework/TestCaseTest.php
deleted file mode 100644
index 9133278..0000000
--- a/vendor/phpunit/phpunit/tests/Framework/TestCaseTest.php
+++ /dev/null
@@ -1,550 +0,0 @@
-<?php
-/*
- * This file is part of PHPUnit.
- *
- * (c) Sebastian Bergmann <sebastian@phpunit.de>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-require_once dirname(__DIR__) . DIRECTORY_SEPARATOR . '_files' . DIRECTORY_SEPARATOR . 'NoArgTestCaseTest.php';
-require_once dirname(__DIR__) . DIRECTORY_SEPARATOR . '_files' . DIRECTORY_SEPARATOR . 'Singleton.php';
-
-$GLOBALS['a']  = 'a';
-$_ENV['b']     = 'b';
-$_POST['c']    = 'c';
-$_GET['d']     = 'd';
-$_COOKIE['e']  = 'e';
-$_SERVER['f']  = 'f';
-$_FILES['g']   = 'g';
-$_REQUEST['h'] = 'h';
-$GLOBALS['i']  = 'i';
-
-/**
- * @since      Class available since Release 2.0.0
- * @covers     PHPUnit_Framework_TestCase
- */
-class Framework_TestCaseTest extends PHPUnit_Framework_TestCase
-{
-    protected $backupGlobalsBlacklist = array('i', 'singleton');
-
-    /**
-     * Used be testStaticAttributesBackupPre
-     */
-    protected static $_testStatic = 0;
-
-    public function testCaseToString()
-    {
-        $this->assertEquals(
-            'Framework_TestCaseTest::testCaseToString',
-            $this->toString()
-        );
-    }
-
-    public function testSuccess()
-    {
-        $test   = new Success;
-        $result = $test->run();
-
-        $this->assertEquals(PHPUnit_Runner_BaseTestRunner::STATUS_PASSED, $test->getStatus());
-        $this->assertEquals(0, $result->errorCount());
-        $this->assertEquals(0, $result->failureCount());
-        $this->assertEquals(0, $result->skippedCount());
-        $this->assertEquals(1, count($result));
-    }
-
-    public function testFailure()
-    {
-        $test   = new Failure;
-        $result = $test->run();
-
-        $this->assertEquals(PHPUnit_Runner_BaseTestRunner::STATUS_FAILURE, $test->getStatus());
-        $this->assertEquals(0, $result->errorCount());
-        $this->assertEquals(1, $result->failureCount());
-        $this->assertEquals(0, $result->skippedCount());
-        $this->assertEquals(1, count($result));
-    }
-
-    public function testError()
-    {
-        $test   = new TestError;
-        $result = $test->run();
-
-        $this->assertEquals(PHPUnit_Runner_BaseTestRunner::STATUS_ERROR, $test->getStatus());
-        $this->assertEquals(1, $result->errorCount());
-        $this->assertEquals(0, $result->failureCount());
-        $this->assertEquals(0, $result->skippedCount());
-        $this->assertEquals(1, count($result));
-    }
-
-    public function testSkipped()
-    {
-        $test   = new TestSkipped();
-        $result = $test->run();
-
-        $this->assertEquals(PHPUnit_Runner_BaseTestRunner::STATUS_SKIPPED, $test->getStatus());
-        $this->assertEquals('Skipped test', $test->getStatusMessage());
-        $this->assertEquals(0, $result->errorCount());
-        $this->assertEquals(0, $result->failureCount());
-        $this->assertEquals(1, $result->skippedCount());
-        $this->assertEquals(1, count($result));
-    }
-
-    public function testIncomplete()
-    {
-        $test   = new TestIncomplete();
-        $result = $test->run();
-
-        $this->assertEquals(PHPUnit_Runner_BaseTestRunner::STATUS_INCOMPLETE, $test->getStatus());
-        $this->assertEquals('Incomplete test', $test->getStatusMessage());
-        $this->assertEquals(0, $result->errorCount());
-        $this->assertEquals(0, $result->failureCount());
-        $this->assertEquals(0, $result->skippedCount());
-        $this->assertEquals(1, count($result));
-    }
-
-    public function testExceptionInSetUp()
-    {
-        $test   = new ExceptionInSetUpTest('testSomething');
-        $result = $test->run();
-
-        $this->assertTrue($test->setUp);
-        $this->assertFalse($test->assertPreConditions);
-        $this->assertFalse($test->testSomething);
-        $this->assertFalse($test->assertPostConditions);
-        $this->assertTrue($test->tearDown);
-    }
-
-    public function testExceptionInAssertPreConditions()
-    {
-        $test   = new ExceptionInAssertPreConditionsTest('testSomething');
-        $result = $test->run();
-
-        $this->assertTrue($test->setUp);
-        $this->assertTrue($test->assertPreConditions);
-        $this->assertFalse($test->testSomething);
-        $this->assertFalse($test->assertPostConditions);
-        $this->assertTrue($test->tearDown);
-    }
-
-    public function testExceptionInTest()
-    {
-        $test   = new ExceptionInTest('testSomething');
-        $result = $test->run();
-
-        $this->assertTrue($test->setUp);
-        $this->assertTrue($test->assertPreConditions);
-        $this->assertTrue($test->testSomething);
-        $this->assertFalse($test->assertPostConditions);
-        $this->assertTrue($test->tearDown);
-    }
-
-    public function testExceptionInAssertPostConditions()
-    {
-        $test   = new ExceptionInAssertPostConditionsTest('testSomething');
-        $result = $test->run();
-
-        $this->assertTrue($test->setUp);
-        $this->assertTrue($test->assertPreConditions);
-        $this->assertTrue($test->testSomething);
-        $this->assertTrue($test->assertPostConditions);
-        $this->assertTrue($test->tearDown);
-    }
-
-    public function testExceptionInTearDown()
-    {
-        $test   = new ExceptionInTearDownTest('testSomething');
-        $result = $test->run();
-
-        $this->assertTrue($test->setUp);
-        $this->assertTrue($test->assertPreConditions);
-        $this->assertTrue($test->testSomething);
-        $this->assertTrue($test->assertPostConditions);
-        $this->assertTrue($test->tearDown);
-    }
-
-    public function testNoArgTestCasePasses()
-    {
-        $result = new PHPUnit_Framework_TestResult;
-        $t      = new PHPUnit_Framework_TestSuite('NoArgTestCaseTest');
-
-        $t->run($result);
-
-        $this->assertEquals(1, count($result));
-        $this->assertEquals(0, $result->failureCount());
-        $this->assertEquals(0, $result->errorCount());
-    }
-
-    public function testWasRun()
-    {
-        $test = new WasRun;
-        $test->run();
-
-        $this->assertTrue($test->wasRun);
-    }
-
-    public function testException()
-    {
-        $test = new ThrowExceptionTestCase('test');
-        $test->setExpectedException('RuntimeException');
-
-        $result = $test->run();
-
-        $this->assertEquals(1, count($result));
-        $this->assertTrue($result->wasSuccessful());
-    }
-
-    public function testExceptionWithMessage()
-    {
-        $test = new ThrowExceptionTestCase('test');
-        $test->setExpectedException('RuntimeException', 'A runtime error occurred');
-
-        $result = $test->run();
-
-        $this->assertEquals(1, count($result));
-        $this->assertTrue($result->wasSuccessful());
-    }
-
-    public function testExceptionWithWrongMessage()
-    {
-        $test = new ThrowExceptionTestCase('test');
-        $test->setExpectedException('RuntimeException', 'A logic error occurred');
-
-        $result = $test->run();
-
-        $this->assertEquals(1, $result->failureCount());
-        $this->assertEquals(1, count($result));
-        $this->assertEquals(
-            "Failed asserting that exception message 'A runtime error occurred' contains 'A logic error occurred'.",
-            $test->getStatusMessage()
-        );
-    }
-
-    public function testExceptionWithRegexpMessage()
-    {
-        $test = new ThrowExceptionTestCase('test');
-        $test->setExpectedExceptionRegExp('RuntimeException', '/runtime .*? occurred/');
-
-        $result = $test->run();
-
-        $this->assertEquals(1, count($result));
-        $this->assertTrue($result->wasSuccessful());
-    }
-
-    public function testExceptionWithWrongRegexpMessage()
-    {
-        $test = new ThrowExceptionTestCase('test');
-        $test->setExpectedExceptionRegExp('RuntimeException', '/logic .*? occurred/');
-
-        $result = $test->run();
-
-        $this->assertEquals(1, $result->failureCount());
-        $this->assertEquals(1, count($result));
-        $this->assertEquals(
-            "Failed asserting that exception message 'A runtime error occurred' matches '/logic .*? occurred/'.",
-            $test->getStatusMessage()
-        );
-    }
-
-    /**
-     * @covers PHPUnit_Framework_Constraint_ExceptionMessageRegExp
-     */
-    public function testExceptionWithInvalidRegexpMessage()
-    {
-        $test = new ThrowExceptionTestCase('test');
-        $test->setExpectedExceptionRegExp('RuntimeException', '#runtime .*? occurred/'); // wrong delimiter
-
-        $result = $test->run();
-
-        $this->assertEquals(
-            "Invalid expected exception message regex given: '#runtime .*? occurred/'",
-            $test->getStatusMessage()
-        );
-    }
-
-    public function testNoException()
-    {
-        $test = new ThrowNoExceptionTestCase('test');
-        $test->setExpectedException('RuntimeException');
-
-        $result = $test->run();
-
-        $this->assertEquals(1, $result->failureCount());
-        $this->assertEquals(1, count($result));
-    }
-
-    public function testWrongException()
-    {
-        $test = new ThrowExceptionTestCase('test');
-        $test->setExpectedException('InvalidArgumentException');
-
-        $result = $test->run();
-
-        $this->assertEquals(1, $result->failureCount());
-        $this->assertEquals(1, count($result));
-    }
-
-    /**
-     * @backupGlobals enabled
-     */
-    public function testGlobalsBackupPre()
-    {
-        global $a;
-        global $i;
-
-        $this->assertEquals('a', $a);
-        $this->assertEquals('a', $GLOBALS['a']);
-        $this->assertEquals('b', $_ENV['b']);
-        $this->assertEquals('c', $_POST['c']);
-        $this->assertEquals('d', $_GET['d']);
-        $this->assertEquals('e', $_COOKIE['e']);
-        $this->assertEquals('f', $_SERVER['f']);
-        $this->assertEquals('g', $_FILES['g']);
-        $this->assertEquals('h', $_REQUEST['h']);
-        $this->assertEquals('i', $i);
-        $this->assertEquals('i', $GLOBALS['i']);
-
-        $GLOBALS['a']   = 'aa';
-        $GLOBALS['foo'] = 'bar';
-        $_ENV['b']      = 'bb';
-        $_POST['c']     = 'cc';
-        $_GET['d']      = 'dd';
-        $_COOKIE['e']   = 'ee';
-        $_SERVER['f']   = 'ff';
-        $_FILES['g']    = 'gg';
-        $_REQUEST['h']  = 'hh';
-        $GLOBALS['i']   = 'ii';
-
-        $this->assertEquals('aa', $a);
-        $this->assertEquals('aa', $GLOBALS['a']);
-        $this->assertEquals('bar', $GLOBALS['foo']);
-        $this->assertEquals('bb', $_ENV['b']);
-        $this->assertEquals('cc', $_POST['c']);
-        $this->assertEquals('dd', $_GET['d']);
-        $this->assertEquals('ee', $_COOKIE['e']);
-        $this->assertEquals('ff', $_SERVER['f']);
-        $this->assertEquals('gg', $_FILES['g']);
-        $this->assertEquals('hh', $_REQUEST['h']);
-        $this->assertEquals('ii', $i);
-        $this->assertEquals('ii', $GLOBALS['i']);
-    }
-
-    public function testGlobalsBackupPost()
-    {
-        global $a;
-        global $i;
-
-        $this->assertEquals('a', $a);
-        $this->assertEquals('a', $GLOBALS['a']);
-        $this->assertEquals('b', $_ENV['b']);
-        $this->assertEquals('c', $_POST['c']);
-        $this->assertEquals('d', $_GET['d']);
-        $this->assertEquals('e', $_COOKIE['e']);
-        $this->assertEquals('f', $_SERVER['f']);
-        $this->assertEquals('g', $_FILES['g']);
-        $this->assertEquals('h', $_REQUEST['h']);
-        $this->assertEquals('ii', $i);
-        $this->assertEquals('ii', $GLOBALS['i']);
-
-        $this->assertArrayNotHasKey('foo', $GLOBALS);
-    }
-
-    /**
-     * @backupGlobals enabled
-     * @backupStaticAttributes enabled
-     */
-    public function testStaticAttributesBackupPre()
-    {
-        $GLOBALS['singleton'] = Singleton::getInstance();
-        self::$_testStatic    = 123;
-    }
-
-    /**
-     * @depends testStaticAttributesBackupPre
-     */
-    public function testStaticAttributesBackupPost()
-    {
-        $this->assertNotSame($GLOBALS['singleton'], Singleton::getInstance());
-        $this->assertSame(0, self::$_testStatic);
-    }
-
-    public function testIsInIsolationReturnsFalse()
-    {
-        $test   = new IsolationTest('testIsInIsolationReturnsFalse');
-        $result = $test->run();
-
-        $this->assertEquals(1, count($result));
-        $this->assertTrue($result->wasSuccessful());
-    }
-
-    public function testIsInIsolationReturnsTrue()
-    {
-        $test   = new IsolationTest('testIsInIsolationReturnsTrue');
-        $test->setRunTestInSeparateProcess(true);
-        $result = $test->run();
-
-        $this->assertEquals(1, count($result));
-        $this->assertTrue($result->wasSuccessful());
-    }
-
-    public function testExpectOutputStringFooActualFoo()
-    {
-        $test   = new OutputTestCase('testExpectOutputStringFooActualFoo');
-        $result = $test->run();
-
-        $this->assertEquals(1, count($result));
-        $this->assertTrue($result->wasSuccessful());
-    }
-
-    public function testExpectOutputStringFooActualBar()
-    {
-        $test   = new OutputTestCase('testExpectOutputStringFooActualBar');
-        $result = $test->run();
-
-        $this->assertEquals(1, count($result));
-        $this->assertFalse($result->wasSuccessful());
-    }
-
-    public function testExpectOutputRegexFooActualFoo()
-    {
-        $test   = new OutputTestCase('testExpectOutputRegexFooActualFoo');
-        $result = $test->run();
-
-        $this->assertEquals(1, count($result));
-        $this->assertTrue($result->wasSuccessful());
-    }
-
-    public function testExpectOutputRegexFooActualBar()
-    {
-        $test   = new OutputTestCase('testExpectOutputRegexFooActualBar');
-        $result = $test->run();
-
-        $this->assertEquals(1, count($result));
-        $this->assertFalse($result->wasSuccessful());
-    }
-
-    public function testSkipsIfRequiresHigherVersionOfPHPUnit()
-    {
-        $test   = new RequirementsTest('testAlwaysSkip');
-        $result = $test->run();
-
-        $this->assertEquals(1, $result->skippedCount());
-        $this->assertEquals(
-            'PHPUnit 1111111 (or later) is required.',
-            $test->getStatusMessage()
-        );
-    }
-
-    public function testSkipsIfRequiresHigherVersionOfPHP()
-    {
-        $test   = new RequirementsTest('testAlwaysSkip2');
-        $result = $test->run();
-
-        $this->assertEquals(1, $result->skippedCount());
-        $this->assertEquals(
-            'PHP 9999999 (or later) is required.',
-            $test->getStatusMessage()
-        );
-    }
-
-    public function testSkipsIfRequiresNonExistingOs()
-    {
-        $test   = new RequirementsTest('testAlwaysSkip3');
-        $result = $test->run();
-
-        $this->assertEquals(1, $result->skippedCount());
-        $this->assertEquals(
-            'Operating system matching /DOESNOTEXIST/i is required.',
-            $test->getStatusMessage()
-        );
-    }
-
-    public function testSkipsIfRequiresNonExistingFunction()
-    {
-        $test   = new RequirementsTest('testNine');
-        $result = $test->run();
-
-        $this->assertEquals(1, $result->skippedCount());
-        $this->assertEquals(
-            'Function testFunc is required.',
-            $test->getStatusMessage()
-        );
-    }
-
-    public function testSkipsIfRequiresNonExistingExtension()
-    {
-        $test   = new RequirementsTest('testTen');
-        $result = $test->run();
-
-        $this->assertEquals(
-            'Extension testExt is required.',
-            $test->getStatusMessage()
-        );
-    }
-
-    public function testSkipsProvidesMessagesForAllSkippingReasons()
-    {
-        $test   = new RequirementsTest('testAllPossibleRequirements');
-        $result = $test->run();
-
-        $this->assertEquals(
-            'PHP 99-dev (or later) is required.' . PHP_EOL .
-            'PHPUnit 9-dev (or later) is required.' . PHP_EOL .
-            'Operating system matching /DOESNOTEXIST/i is required.' . PHP_EOL .
-            'Function testFuncOne is required.' . PHP_EOL .
-            'Function testFuncTwo is required.' . PHP_EOL .
-            'Extension testExtOne is required.' . PHP_EOL .
-            'Extension testExtTwo is required.',
-            $test->getStatusMessage()
-        );
-    }
-
-    public function testRequiringAnExistingMethodDoesNotSkip()
-    {
-        $test   = new RequirementsTest('testExistingMethod');
-        $result = $test->run();
-        $this->assertEquals(0, $result->skippedCount());
-    }
-
-    public function testRequiringAnExistingFunctionDoesNotSkip()
-    {
-        $test   = new RequirementsTest('testExistingFunction');
-        $result = $test->run();
-        $this->assertEquals(0, $result->skippedCount());
-    }
-
-    public function testRequiringAnExistingExtensionDoesNotSkip()
-    {
-        $test   = new RequirementsTest('testExistingExtension');
-        $result = $test->run();
-        $this->assertEquals(0, $result->skippedCount());
-    }
-
-    public function testRequiringAnExistingOsDoesNotSkip()
-    {
-        $test   = new RequirementsTest('testExistingOs');
-        $result = $test->run();
-        $this->assertEquals(0, $result->skippedCount());
-    }
-
-    public function testCurrentWorkingDirectoryIsRestored()
-    {
-        $expectedCwd = getcwd();
-
-        $test = new ChangeCurrentWorkingDirectoryTest('testSomethingThatChangesTheCwd');
-        $test->run();
-
-        $this->assertSame($expectedCwd, getcwd());
-    }
-
-    /**
-     * @requires PHP 7
-     * @expectedException TypeError
-     */
-    public function testTypeErrorCanBeExpected()
-    {
-        $o = new ClassWithScalarTypeDeclarations;
-        $o->foo(null, null);
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/Framework/TestFailureTest.php b/vendor/phpunit/phpunit/tests/Framework/TestFailureTest.php
deleted file mode 100644
index 8df0a39..0000000
--- a/vendor/phpunit/phpunit/tests/Framework/TestFailureTest.php
+++ /dev/null
@@ -1,27 +0,0 @@
-<?php
-/*
- * This file is part of PHPUnit.
- *
- * (c) Sebastian Bergmann <sebastian@phpunit.de>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-/**
- * @since      File available since Release 3.7.20
- */
-class Framework_TestFailureTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @covers PHPUnit_Framework_TestFailure::toString
-     */
-    public function testToString()
-    {
-        $test      = new self(__FUNCTION__);
-        $exception = new PHPUnit_Framework_Exception('message');
-        $failure   = new PHPUnit_Framework_TestFailure($test, $exception);
-
-        $this->assertEquals(__METHOD__ . ': message', $failure->toString());
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/Framework/TestImplementorTest.php b/vendor/phpunit/phpunit/tests/Framework/TestImplementorTest.php
deleted file mode 100644
index f10a509..0000000
--- a/vendor/phpunit/phpunit/tests/Framework/TestImplementorTest.php
+++ /dev/null
@@ -1,30 +0,0 @@
-<?php
-/*
- * This file is part of PHPUnit.
- *
- * (c) Sebastian Bergmann <sebastian@phpunit.de>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-/**
- * @since      Class available since Release 2.0.0
- */
-class Framework_TestImplementorTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @covers PHPUnit_Framework_TestCase
-     */
-    public function testSuccessfulRun()
-    {
-        $result = new PHPUnit_Framework_TestResult;
-
-        $test = new DoubleTestCase(new Success);
-        $test->run($result);
-
-        $this->assertEquals(count($test), count($result));
-        $this->assertEquals(0, $result->errorCount());
-        $this->assertEquals(0, $result->failureCount());
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/Framework/TestListenerTest.php b/vendor/phpunit/phpunit/tests/Framework/TestListenerTest.php
deleted file mode 100644
index 589741b..0000000
--- a/vendor/phpunit/phpunit/tests/Framework/TestListenerTest.php
+++ /dev/null
@@ -1,108 +0,0 @@
-<?php
-/*
- * This file is part of PHPUnit.
- *
- * (c) Sebastian Bergmann <sebastian@phpunit.de>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-/**
- * @since      Class available since Release 2.0.0
- * @covers     PHPUnit_Framework_TestCase
- */
-class Framework_TestListenerTest extends PHPUnit_Framework_TestCase implements PHPUnit_Framework_TestListener
-{
-    protected $endCount;
-    protected $errorCount;
-    protected $failureCount;
-    protected $notImplementedCount;
-    protected $riskyCount;
-    protected $skippedCount;
-    protected $result;
-    protected $startCount;
-
-    public function addError(PHPUnit_Framework_Test $test, Exception $e, $time)
-    {
-        $this->errorCount++;
-    }
-
-    public function addFailure(PHPUnit_Framework_Test $test, PHPUnit_Framework_AssertionFailedError $e, $time)
-    {
-        $this->failureCount++;
-    }
-
-    public function addIncompleteTest(PHPUnit_Framework_Test $test, Exception $e, $time)
-    {
-        $this->notImplementedCount++;
-    }
-
-    public function addRiskyTest(PHPUnit_Framework_Test $test, Exception $e, $time)
-    {
-        $this->riskyCount++;
-    }
-
-    public function addSkippedTest(PHPUnit_Framework_Test $test, Exception $e, $time)
-    {
-        $this->skippedCount++;
-    }
-
-    public function startTestSuite(PHPUnit_Framework_TestSuite $suite)
-    {
-    }
-
-    public function endTestSuite(PHPUnit_Framework_TestSuite $suite)
-    {
-    }
-
-    public function startTest(PHPUnit_Framework_Test $test)
-    {
-        $this->startCount++;
-    }
-
-    public function endTest(PHPUnit_Framework_Test $test, $time)
-    {
-        $this->endCount++;
-    }
-
-    protected function setUp()
-    {
-        $this->result = new PHPUnit_Framework_TestResult;
-        $this->result->addListener($this);
-
-        $this->endCount            = 0;
-        $this->failureCount        = 0;
-        $this->notImplementedCount = 0;
-        $this->riskyCount          = 0;
-        $this->skippedCount        = 0;
-        $this->startCount          = 0;
-    }
-
-    public function testError()
-    {
-        $test = new TestError;
-        $test->run($this->result);
-
-        $this->assertEquals(1, $this->errorCount);
-        $this->assertEquals(1, $this->endCount);
-    }
-
-    public function testFailure()
-    {
-        $test = new Failure;
-        $test->run($this->result);
-
-        $this->assertEquals(1, $this->failureCount);
-        $this->assertEquals(1, $this->endCount);
-    }
-
-    public function testStartStop()
-    {
-        $test = new Success;
-        $test->run($this->result);
-
-        $this->assertEquals(1, $this->startCount);
-        $this->assertEquals(1, $this->endCount);
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/Regression/1021.phpt b/vendor/phpunit/phpunit/tests/Regression/1021.phpt
deleted file mode 100644
index 45f4708..0000000
--- a/vendor/phpunit/phpunit/tests/Regression/1021.phpt
+++ /dev/null
@@ -1,19 +0,0 @@
---TEST--
-#1021: Depending on a test that uses a data provider does not work
---FILE--
-<?php
-$_SERVER['argv'][1] = '--no-configuration';
-$_SERVER['argv'][2] = 'Issue1021Test';
-$_SERVER['argv'][3] = dirname(__FILE__) . '/1021/Issue1021Test.php';
-
-require __DIR__ . '/../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-..
-
-Time: %s, Memory: %sMb
-
-OK (2 tests, 1 assertion)
diff --git a/vendor/phpunit/phpunit/tests/Regression/1021/Issue1021Test.php b/vendor/phpunit/phpunit/tests/Regression/1021/Issue1021Test.php
deleted file mode 100644
index 5814e94..0000000
--- a/vendor/phpunit/phpunit/tests/Regression/1021/Issue1021Test.php
+++ /dev/null
@@ -1,23 +0,0 @@
-<?php
-class Issue1021Test extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @dataProvider provider
-     */
-    public function testSomething($data)
-    {
-        $this->assertTrue($data);
-    }
-
-    /**
-     * @depends testSomething
-     */
-    public function testSomethingElse()
-    {
-    }
-
-    public function provider()
-    {
-        return array(array(true));
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/Regression/523.phpt b/vendor/phpunit/phpunit/tests/Regression/523.phpt
deleted file mode 100644
index 6ba2e42..0000000
--- a/vendor/phpunit/phpunit/tests/Regression/523.phpt
+++ /dev/null
@@ -1,19 +0,0 @@
---TEST--
-#523: assertAttributeEquals does not work with classes extending ArrayIterator
---FILE--
-<?php
-$_SERVER['argv'][1] = '--no-configuration';
-$_SERVER['argv'][2] = 'Issue523Test';
-$_SERVER['argv'][3] = dirname(__FILE__) . '/523/Issue523Test.php';
-
-require __DIR__ . '/../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-.
-
-Time: %s, Memory: %sMb
-
-OK (1 test, 1 assertion)
diff --git a/vendor/phpunit/phpunit/tests/Regression/523/Issue523Test.php b/vendor/phpunit/phpunit/tests/Regression/523/Issue523Test.php
deleted file mode 100644
index 80124f1..0000000
--- a/vendor/phpunit/phpunit/tests/Regression/523/Issue523Test.php
+++ /dev/null
@@ -1,13 +0,0 @@
-<?php
-class Issue523Test extends PHPUnit_Framework_TestCase
-{
-    public function testAttributeEquals()
-    {
-        $this->assertAttributeEquals('foo', 'field', new Issue523());
-    }
-};
-
-class Issue523 extends ArrayIterator
-{
-    protected $field = 'foo';
-}
diff --git a/vendor/phpunit/phpunit/tests/Regression/578.phpt b/vendor/phpunit/phpunit/tests/Regression/578.phpt
deleted file mode 100644
index c50d2e3..0000000
--- a/vendor/phpunit/phpunit/tests/Regression/578.phpt
+++ /dev/null
@@ -1,37 +0,0 @@
---TEST--
-#578: Double printing of trace line for exceptions from notices and warnings
---FILE--
-<?php
-$_SERVER['argv'][1] = '--no-configuration';
-$_SERVER['argv'][2] = 'Issue578Test';
-$_SERVER['argv'][3] = dirname(__FILE__) . '/578/Issue578Test.php';
-
-require __DIR__ . '/../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-EEE
-
-Time: %s, Memory: %sMb
-
-There were 3 errors:
-
-1) Issue578Test::testNoticesDoublePrintStackTrace
-Invalid error type specified
-
-%sIssue578Test.php:%i
-
-2) Issue578Test::testWarningsDoublePrintStackTrace
-Invalid error type specified
-
-%sIssue578Test.php:%i
-
-3) Issue578Test::testUnexpectedExceptionsPrintsCorrectly
-Exception: Double printed exception
-
-%sIssue578Test.php:%i
-
-FAILURES!
-Tests: 3, Assertions: 0, Errors: 3.
diff --git a/vendor/phpunit/phpunit/tests/Regression/578/Issue578Test.php b/vendor/phpunit/phpunit/tests/Regression/578/Issue578Test.php
deleted file mode 100644
index 262d97f..0000000
--- a/vendor/phpunit/phpunit/tests/Regression/578/Issue578Test.php
+++ /dev/null
@@ -1,20 +0,0 @@
-<?php
-class Issue578Test extends PHPUnit_Framework_TestCase
-{
-    public function testNoticesDoublePrintStackTrace()
-    {
-        $this->iniSet('error_reporting', E_ALL | E_NOTICE);
-        trigger_error('Stack Trace Test Notice', E_NOTICE);
-    }
-
-    public function testWarningsDoublePrintStackTrace()
-    {
-        $this->iniSet('error_reporting', E_ALL | E_NOTICE);
-        trigger_error('Stack Trace Test Notice', E_WARNING);
-    }
-
-    public function testUnexpectedExceptionsPrintsCorrectly()
-    {
-        throw new Exception('Double printed exception');
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/Regression/684.phpt b/vendor/phpunit/phpunit/tests/Regression/684.phpt
deleted file mode 100644
index ca88a55..0000000
--- a/vendor/phpunit/phpunit/tests/Regression/684.phpt
+++ /dev/null
@@ -1,25 +0,0 @@
---TEST--
-#684: Unable to find test class when no test methods exists
---FILE--
-<?php
-$_SERVER['argv'][1] = '--no-configuration';
-$_SERVER['argv'][2] = 'Issue684Test';
-$_SERVER['argv'][3] = dirname(__FILE__) . '/684/Issue684Test.php';
-
-require __DIR__ . '/../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-F
-
-Time: %s, Memory: %sMb
-
-There was 1 failure:
-
-1) Warning
-No tests found in class "Foo_Bar_Issue684Test".
-
-FAILURES!
-Tests: 1, Assertions: 0, Failures: 1.
diff --git a/vendor/phpunit/phpunit/tests/Regression/684/Issue684Test.php b/vendor/phpunit/phpunit/tests/Regression/684/Issue684Test.php
deleted file mode 100644
index e8e5d87..0000000
--- a/vendor/phpunit/phpunit/tests/Regression/684/Issue684Test.php
+++ /dev/null
@@ -1,4 +0,0 @@
-<?php
-class Foo_Bar_Issue684Test extends PHPUnit_Framework_TestCase
-{
-}
diff --git a/vendor/phpunit/phpunit/tests/Regression/783.phpt b/vendor/phpunit/phpunit/tests/Regression/783.phpt
deleted file mode 100644
index 687b237..0000000
--- a/vendor/phpunit/phpunit/tests/Regression/783.phpt
+++ /dev/null
@@ -1,21 +0,0 @@
---TEST--
-#783: Tests getting executed twice when using multiple groups
---FILE--
-<?php
-$_SERVER['argv'][1] = '--no-configuration';
-$_SERVER['argv'][2] = '--group';
-$_SERVER['argv'][3] = 'foo,bar';
-$_SERVER['argv'][4] = 'ParentSuite';
-$_SERVER['argv'][5] = dirname(__FILE__) . '/783/ParentSuite.php';
-
-require __DIR__ . '/../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-..
-
-Time: %s, Memory: %sMb
-
-OK (2 tests, 0 assertions)
diff --git a/vendor/phpunit/phpunit/tests/Regression/783/ChildSuite.php b/vendor/phpunit/phpunit/tests/Regression/783/ChildSuite.php
deleted file mode 100644
index 8bac514..0000000
--- a/vendor/phpunit/phpunit/tests/Regression/783/ChildSuite.php
+++ /dev/null
@@ -1,15 +0,0 @@
-<?php
-require_once 'OneTest.php';
-require_once 'TwoTest.php';
-
-class ChildSuite
-{
-    public static function suite()
-    {
-        $suite = new PHPUnit_Framework_TestSuite('Child');
-        $suite->addTestSuite('OneTest');
-        $suite->addTestSuite('TwoTest');
-
-        return $suite;
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/Regression/783/OneTest.php b/vendor/phpunit/phpunit/tests/Regression/783/OneTest.php
deleted file mode 100644
index 7195158..0000000
--- a/vendor/phpunit/phpunit/tests/Regression/783/OneTest.php
+++ /dev/null
@@ -1,10 +0,0 @@
-<?php
-/**
- * @group foo
- */
-class OneTest extends PHPUnit_Framework_TestCase
-{
-    public function testSomething()
-    {
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/Regression/783/ParentSuite.php b/vendor/phpunit/phpunit/tests/Regression/783/ParentSuite.php
deleted file mode 100644
index 6dd63e2..0000000
--- a/vendor/phpunit/phpunit/tests/Regression/783/ParentSuite.php
+++ /dev/null
@@ -1,13 +0,0 @@
-<?php
-require_once 'ChildSuite.php';
-
-class ParentSuite
-{
-    public static function suite()
-    {
-        $suite = new PHPUnit_Framework_TestSuite('Parent');
-        $suite->addTest(ChildSuite::suite());
-
-        return $suite;
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/Regression/783/TwoTest.php b/vendor/phpunit/phpunit/tests/Regression/783/TwoTest.php
deleted file mode 100644
index 580246c..0000000
--- a/vendor/phpunit/phpunit/tests/Regression/783/TwoTest.php
+++ /dev/null
@@ -1,10 +0,0 @@
-<?php
-/**
- * @group bar
- */
-class TwoTest extends PHPUnit_Framework_TestCase
-{
-    public function testSomething()
-    {
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/Regression/GitHub/1149.phpt b/vendor/phpunit/phpunit/tests/Regression/GitHub/1149.phpt
deleted file mode 100644
index 45e2435..0000000
--- a/vendor/phpunit/phpunit/tests/Regression/GitHub/1149.phpt
+++ /dev/null
@@ -1,20 +0,0 @@
---TEST--
-GH-1149: Test swallows output buffer when run in a separate process
---FILE--
-<?php
-
-$_SERVER['argv'][1] = '--no-configuration';
-$_SERVER['argv'][2] = 'Issue1149Test';
-$_SERVER['argv'][3] = dirname(__FILE__) . '/1149/Issue1149Test.php';
-
-require __DIR__ . '/../../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-.1.2
-
-Time: %s, Memory: %sMb
-
-OK (2 tests, 2 assertions)
diff --git a/vendor/phpunit/phpunit/tests/Regression/GitHub/1149/Issue1149Test.php b/vendor/phpunit/phpunit/tests/Regression/GitHub/1149/Issue1149Test.php
deleted file mode 100644
index 01ac870..0000000
--- a/vendor/phpunit/phpunit/tests/Regression/GitHub/1149/Issue1149Test.php
+++ /dev/null
@@ -1,18 +0,0 @@
-<?php
-class Issue1149Test extends PHPUnit_Framework_TestCase
-{
-    public function testOne()
-    {
-        $this->assertTrue(true);
-        print '1';
-    }
-
-    /**
-     * @runInSeparateProcess
-     */
-    public function testTwo()
-    {
-        $this->assertTrue(true);
-        print '2';
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/Regression/GitHub/1216.phpt b/vendor/phpunit/phpunit/tests/Regression/GitHub/1216.phpt
deleted file mode 100644
index d13403b..0000000
--- a/vendor/phpunit/phpunit/tests/Regression/GitHub/1216.phpt
+++ /dev/null
@@ -1,25 +0,0 @@
---TEST--
-GH-1216: PHPUnit bootstrap must take globals vars even when the file is specified in command line
---FILE--
-<?php
-
-$_SERVER['argv'][1] = '--configuration';
-$_SERVER['argv'][2] = dirname(__FILE__) . '/1216/phpunit1216.xml';
-$_SERVER['argv'][3] = '--debug';
-$_SERVER['argv'][4] = '--bootstrap';
-$_SERVER['argv'][5] = dirname(__FILE__) . '/1216/bootstrap1216.php';
-$_SERVER['argv'][6] = dirname(__FILE__) . '/1216/Issue1216Test.php';
-
-require __DIR__ . '/../../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-
-Starting test 'Issue1216Test::testConfigAvailableInBootstrap'.
-.
-
-Time: %s, Memory: %sMb
-
-OK (1 test, 1 assertion)
diff --git a/vendor/phpunit/phpunit/tests/Regression/GitHub/1216/Issue1216Test.php b/vendor/phpunit/phpunit/tests/Regression/GitHub/1216/Issue1216Test.php
deleted file mode 100644
index cfceaf5..0000000
--- a/vendor/phpunit/phpunit/tests/Regression/GitHub/1216/Issue1216Test.php
+++ /dev/null
@@ -1,8 +0,0 @@
-<?php
-class Issue1216Test extends PHPUnit_Framework_TestCase
-{
-    public function testConfigAvailableInBootstrap()
-    {
-        $this->assertTrue($_ENV['configAvailableInBootstrap']);
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/Regression/GitHub/1216/bootstrap1216.php b/vendor/phpunit/phpunit/tests/Regression/GitHub/1216/bootstrap1216.php
deleted file mode 100644
index cec2724..0000000
--- a/vendor/phpunit/phpunit/tests/Regression/GitHub/1216/bootstrap1216.php
+++ /dev/null
@@ -1,2 +0,0 @@
-<?php
-$_ENV['configAvailableInBootstrap'] = isset($_ENV['loadedFromConfig']);
diff --git a/vendor/phpunit/phpunit/tests/Regression/GitHub/1216/phpunit1216.xml b/vendor/phpunit/phpunit/tests/Regression/GitHub/1216/phpunit1216.xml
deleted file mode 100644
index c1cc9bd..0000000
--- a/vendor/phpunit/phpunit/tests/Regression/GitHub/1216/phpunit1216.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<phpunit>
-    <testsuite name="Github issue 1216">
-        <file>Issue1216Test.php</file>
-    </testsuite>
-    <php>
-        <env name="loadedFromConfig" value="1"/>
-    </php>
-</phpunit>
diff --git a/vendor/phpunit/phpunit/tests/Regression/GitHub/1265.phpt b/vendor/phpunit/phpunit/tests/Regression/GitHub/1265.phpt
deleted file mode 100644
index a179d5d..0000000
--- a/vendor/phpunit/phpunit/tests/Regression/GitHub/1265.phpt
+++ /dev/null
@@ -1,21 +0,0 @@
---TEST--
-GH-1265: Could not use "PHPUnit_Runner_StandardTestSuiteLoader" as loader
---FILE--
-<?php
-
-$_SERVER['argv'][1] = '--configuration';
-$_SERVER['argv'][2] = dirname(__FILE__) . '/1265/phpunit1265.xml';
-$_SERVER['argv'][3] = 'Issue1265Test';
-$_SERVER['argv'][4] = dirname(__FILE__) . '/1265/Issue1265Test.php';
-
-require __DIR__ . '/../../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-.
-
-Time: %s, Memory: %sMb
-
-OK (1 test, 1 assertion)
diff --git a/vendor/phpunit/phpunit/tests/Regression/GitHub/1265/Issue1265Test.php b/vendor/phpunit/phpunit/tests/Regression/GitHub/1265/Issue1265Test.php
deleted file mode 100644
index 68d71b3..0000000
--- a/vendor/phpunit/phpunit/tests/Regression/GitHub/1265/Issue1265Test.php
+++ /dev/null
@@ -1,8 +0,0 @@
-<?php
-class Issue1265Test extends PHPUnit_Framework_TestCase
-{
-    public function testTrue()
-    {
-        $this->assertTrue(true);
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/Regression/GitHub/1265/phpunit1265.xml b/vendor/phpunit/phpunit/tests/Regression/GitHub/1265/phpunit1265.xml
deleted file mode 100644
index 27fdd52..0000000
--- a/vendor/phpunit/phpunit/tests/Regression/GitHub/1265/phpunit1265.xml
+++ /dev/null
@@ -1,2 +0,0 @@
-<phpunit testSuiteLoaderClass="PHPUnit_Runner_StandardTestSuiteLoader">
-</phpunit>
diff --git a/vendor/phpunit/phpunit/tests/Regression/GitHub/1330.phpt b/vendor/phpunit/phpunit/tests/Regression/GitHub/1330.phpt
deleted file mode 100644
index c31073e..0000000
--- a/vendor/phpunit/phpunit/tests/Regression/GitHub/1330.phpt
+++ /dev/null
@@ -1,24 +0,0 @@
---TEST--
-GH-1330: Allow non-ambiguous shortened longopts
---FILE--
-<?php
-
-$_SERVER['argv'][1] = '--deb';
-$_SERVER['argv'][2] = '--config';
-$_SERVER['argv'][3] = dirname(__FILE__) . '/1330/phpunit1330.xml';
-$_SERVER['argv'][4] = 'Issue1330Test';
-$_SERVER['argv'][5] = dirname(__FILE__) . '/1330/Issue1330Test.php';
-
-require __DIR__ . '/../../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-
-Starting test 'Issue1330Test::testTrue'.
-.
-
-Time: %s, Memory: %sMb
-
-OK (1 test, 1 assertion)
diff --git a/vendor/phpunit/phpunit/tests/Regression/GitHub/1330/Issue1330Test.php b/vendor/phpunit/phpunit/tests/Regression/GitHub/1330/Issue1330Test.php
deleted file mode 100644
index 0829cb9..0000000
--- a/vendor/phpunit/phpunit/tests/Regression/GitHub/1330/Issue1330Test.php
+++ /dev/null
@@ -1,8 +0,0 @@
-<?php
-class Issue1330Test extends PHPUnit_Framework_TestCase
-{
-    public function testTrue()
-    {
-        $this->assertTrue(PHPUNIT_1330);
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/Regression/GitHub/1330/phpunit1330.xml b/vendor/phpunit/phpunit/tests/Regression/GitHub/1330/phpunit1330.xml
deleted file mode 100644
index a61e0cc..0000000
--- a/vendor/phpunit/phpunit/tests/Regression/GitHub/1330/phpunit1330.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<phpunit>
-  <php>
-    <const name="PHPUNIT_1330" value="true"/>
-  </php>
-</phpunit>
diff --git a/vendor/phpunit/phpunit/tests/Regression/GitHub/1335.phpt b/vendor/phpunit/phpunit/tests/Regression/GitHub/1335.phpt
deleted file mode 100644
index cd6aade..0000000
--- a/vendor/phpunit/phpunit/tests/Regression/GitHub/1335.phpt
+++ /dev/null
@@ -1,21 +0,0 @@
---TEST--
-GH-1335: exportVariable multiple backslash problem
---FILE--
-<?php
-
-$_SERVER['argv'][1] = '--no-configuration';
-$_SERVER['argv'][2] = '--bootstrap';
-$_SERVER['argv'][3] = dirname(__FILE__) . '/1335/bootstrap1335.php';
-$_SERVER['argv'][4] = dirname(__FILE__) . '/1335/Issue1335Test.php';
-
-require __DIR__ . '/../../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-............
-
-Time: %s, Memory: %sMb
-
-OK (12 tests, 12 assertions)
diff --git a/vendor/phpunit/phpunit/tests/Regression/GitHub/1335/Issue1335Test.php b/vendor/phpunit/phpunit/tests/Regression/GitHub/1335/Issue1335Test.php
deleted file mode 100644
index 4407ec8..0000000
--- a/vendor/phpunit/phpunit/tests/Regression/GitHub/1335/Issue1335Test.php
+++ /dev/null
@@ -1,67 +0,0 @@
-<?php
-/**
- * @runTestsInSeparateProcesses
- * @preserveGlobalState enabled
- */
-class Issue1335Test extends PHPUnit_Framework_TestCase
-{
-    public function testGlobalString()
-    {
-        $this->assertEquals('Hello', $GLOBALS['globalString']);
-    }
-
-    public function testGlobalIntTruthy()
-    {
-        $this->assertEquals(1, $GLOBALS['globalIntTruthy']);
-    }
-
-    public function testGlobalIntFalsey()
-    {
-        $this->assertEquals(0, $GLOBALS['globalIntFalsey']);
-    }
-
-    public function testGlobalFloat()
-    {
-        $this->assertEquals(1.123, $GLOBALS['globalFloat']);
-    }
-
-    public function testGlobalBoolTrue()
-    {
-        $this->assertEquals(true, $GLOBALS['globalBoolTrue']);
-    }
-
-    public function testGlobalBoolFalse()
-    {
-        $this->assertEquals(false, $GLOBALS['globalBoolFalse']);
-    }
-
-    public function testGlobalNull()
-    {
-        $this->assertEquals(null, $GLOBALS['globalNull']);
-    }
-
-    public function testGlobalArray()
-    {
-        $this->assertEquals(array('foo'), $GLOBALS['globalArray']);
-    }
-
-    public function testGlobalNestedArray()
-    {
-        $this->assertEquals(array(array('foo')), $GLOBALS['globalNestedArray']);
-    }
-
-    public function testGlobalObject()
-    {
-        $this->assertEquals((object) array('foo'=> 'bar'), $GLOBALS['globalObject']);
-    }
-
-    public function testGlobalObjectWithBackSlashString()
-    {
-        $this->assertEquals((object) array('foo'=> 'back\\slash'), $GLOBALS['globalObjectWithBackSlashString']);
-    }
-
-    public function testGlobalObjectWithDoubleBackSlashString()
-    {
-        $this->assertEquals((object) array('foo'=> 'back\\\\slash'), $GLOBALS['globalObjectWithDoubleBackSlashString']);
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/Regression/GitHub/1335/bootstrap1335.php b/vendor/phpunit/phpunit/tests/Regression/GitHub/1335/bootstrap1335.php
deleted file mode 100644
index 073a87e..0000000
--- a/vendor/phpunit/phpunit/tests/Regression/GitHub/1335/bootstrap1335.php
+++ /dev/null
@@ -1,13 +0,0 @@
-<?php
-$globalString                          = 'Hello';
-$globalIntTruthy                       = 1;
-$globalIntFalsey                       = 0;
-$globalFloat                           = 1.123;
-$globalBoolTrue                        = true;
-$globalBoolFalse                       = false;
-$globalNull                            = null;
-$globalArray                           = array('foo');
-$globalNestedArray                     = array(array('foo'));
-$globalObject                          = (object) array('foo'=> 'bar');
-$globalObjectWithBackSlashString       = (object) array('foo'=> 'back\\slash');
-$globalObjectWithDoubleBackSlashString = (object) array('foo'=> 'back\\\\slash');
diff --git a/vendor/phpunit/phpunit/tests/Regression/GitHub/1337.phpt b/vendor/phpunit/phpunit/tests/Regression/GitHub/1337.phpt
deleted file mode 100644
index 9c1d76f..0000000
--- a/vendor/phpunit/phpunit/tests/Regression/GitHub/1337.phpt
+++ /dev/null
@@ -1,21 +0,0 @@
---TEST--
-GH-1337: Data Provider with \ at the end of the name breaks with process isolation
---FILE--
-<?php
-
-$_SERVER['argv'][1] = '--no-configuration';
-$_SERVER['argv'][2] = '--process-isolation';
-$_SERVER['argv'][3] = 'Issue1337Test';
-$_SERVER['argv'][4] = dirname(__FILE__) . '/1337/Issue1337Test.php';
-
-require __DIR__ . '/../../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-..
-
-Time: %s, Memory: %sMb
-
-OK (2 tests, 2 assertions)
\ No newline at end of file
diff --git a/vendor/phpunit/phpunit/tests/Regression/GitHub/1337/Issue1337Test.php b/vendor/phpunit/phpunit/tests/Regression/GitHub/1337/Issue1337Test.php
deleted file mode 100644
index b972b2a..0000000
--- a/vendor/phpunit/phpunit/tests/Regression/GitHub/1337/Issue1337Test.php
+++ /dev/null
@@ -1,19 +0,0 @@
-<?php
-class Issue1337Test extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @dataProvider dataProvider
-     */
-    public function testProvider($a)
-    {
-        $this->assertTrue($a);
-    }
-
-    public function dataProvider()
-    {
-        return array(
-          'c:\\'=> array(true),
-          0.9   => array(true)
-        );
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/Regression/GitHub/1348.phpt b/vendor/phpunit/phpunit/tests/Regression/GitHub/1348.phpt
deleted file mode 100644
index 82f94ec..0000000
--- a/vendor/phpunit/phpunit/tests/Regression/GitHub/1348.phpt
+++ /dev/null
@@ -1,35 +0,0 @@
---TEST--
-GH-1348: STDOUT/STDERR IO streams should exist in process isolation
---SKIPIF--
-<?php
-if (defined('HHVM_VERSION'))
-    print 'skip: PHP runtime required';
-?>
---FILE--
-<?php
-
-$_SERVER['argv'][1] = '--no-configuration';
-$_SERVER['argv'][]  = '--report-useless-tests';
-$_SERVER['argv'][]  = '--process-isolation';
-$_SERVER['argv'][]  = 'Issue1348Test';
-$_SERVER['argv'][]  = __DIR__ . '/1348/Issue1348Test.php';
-
-require __DIR__ . '/../../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-.
-STDOUT does not break test result
-E
-
-Time: %s, Memory: %sMb
-
-There was 1 error:
-
-1) Issue1348Test::testSTDERR
-PHPUnit_Framework_Exception: STDERR works as usual.
-
-FAILURES!
-Tests: 2, Assertions: 1, Errors: 1.
diff --git a/vendor/phpunit/phpunit/tests/Regression/GitHub/1348/Issue1348Test.php b/vendor/phpunit/phpunit/tests/Regression/GitHub/1348/Issue1348Test.php
deleted file mode 100644
index d3c82f0..0000000
--- a/vendor/phpunit/phpunit/tests/Regression/GitHub/1348/Issue1348Test.php
+++ /dev/null
@@ -1,14 +0,0 @@
-<?php
-class Issue1348Test extends PHPUnit_Framework_TestCase
-{
-    public function testSTDOUT()
-    {
-        fwrite(STDOUT, "\nSTDOUT does not break test result\n");
-        $this->assertTrue(true);
-    }
-
-    public function testSTDERR()
-    {
-        fwrite(STDERR, 'STDERR works as usual.');
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/Regression/GitHub/1351.phpt b/vendor/phpunit/phpunit/tests/Regression/GitHub/1351.phpt
deleted file mode 100644
index 2dbc2af..0000000
--- a/vendor/phpunit/phpunit/tests/Regression/GitHub/1351.phpt
+++ /dev/null
@@ -1,48 +0,0 @@
---TEST--
-GH-1351: Test result does not serialize test class in process isolation
---SKIPIF--
-<?php
-if (!extension_loaded('pdo') || !in_array('sqlite', PDO::getAvailableDrivers())) {
-    print 'skip: PDO_SQLITE is required';
-}
-?>
---FILE--
-<?php
-
-$_SERVER['argv'][1] = '--no-configuration';
-$_SERVER['argv'][2] = '--process-isolation';
-$_SERVER['argv'][3] = 'Issue1351Test';
-$_SERVER['argv'][4] = __DIR__ . '/1351/Issue1351Test.php';
-
-require __DIR__ . '/../../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-F.E.E
-
-Time: %s, Memory: %sMb
-
-There were 2 errors:
-
-1) Issue1351Test::testExceptionPre
-RuntimeException: Expected rethrown exception.
-%A
-Caused by
-LogicException: Expected exception.
-%A
-
-2) Issue1351Test::testPhpCoreLanguageException
-PDOException: SQLSTATE[HY000]: General error: 1 no such table: php_wtf
-%A
-
---
-
-There was 1 failure:
-
-1) Issue1351Test::testFailurePre
-Expected failure.
-%A
-FAILURES!
-Tests: 5, Assertions: 5, Errors: 2, Failures: 1.
diff --git a/vendor/phpunit/phpunit/tests/Regression/GitHub/1351/ChildProcessClass1351.php b/vendor/phpunit/phpunit/tests/Regression/GitHub/1351/ChildProcessClass1351.php
deleted file mode 100644
index 24c0537..0000000
--- a/vendor/phpunit/phpunit/tests/Regression/GitHub/1351/ChildProcessClass1351.php
+++ /dev/null
@@ -1,4 +0,0 @@
-<?php
-class ChildProcessClass1351
-{
-}
diff --git a/vendor/phpunit/phpunit/tests/Regression/GitHub/1351/Issue1351Test.php b/vendor/phpunit/phpunit/tests/Regression/GitHub/1351/Issue1351Test.php
deleted file mode 100644
index f688c55..0000000
--- a/vendor/phpunit/phpunit/tests/Regression/GitHub/1351/Issue1351Test.php
+++ /dev/null
@@ -1,48 +0,0 @@
-<?php
-class Issue1351Test extends PHPUnit_Framework_TestCase
-{
-    protected $instance;
-
-    /**
-     * @runInSeparateProcess
-     */
-    public function testFailurePre()
-    {
-        $this->instance = new ChildProcessClass1351();
-        $this->assertFalse(true, 'Expected failure.');
-    }
-
-    public function testFailurePost()
-    {
-        $this->assertNull($this->instance);
-        $this->assertFalse(class_exists('ChildProcessClass1351', false), 'ChildProcessClass1351 is not loaded.');
-    }
-
-    /**
-     * @runInSeparateProcess
-     */
-    public function testExceptionPre()
-    {
-        $this->instance = new ChildProcessClass1351();
-        try {
-            throw new LogicException('Expected exception.');
-        } catch (LogicException $e) {
-            throw new RuntimeException('Expected rethrown exception.', 0, $e);
-        }
-    }
-
-    public function testExceptionPost()
-    {
-        $this->assertNull($this->instance);
-        $this->assertFalse(class_exists('ChildProcessClass1351', false), 'ChildProcessClass1351 is not loaded.');
-    }
-
-    public function testPhpCoreLanguageException()
-    {
-        // User-space code cannot instantiate a PDOException with a string code,
-        // so trigger a real one.
-        $connection = new PDO('sqlite::memory:');
-        $connection->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
-        $connection->query("DELETE FROM php_wtf WHERE exception_code = 'STRING'");
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/Regression/GitHub/1374.phpt b/vendor/phpunit/phpunit/tests/Regression/GitHub/1374.phpt
deleted file mode 100644
index 84d13be..0000000
--- a/vendor/phpunit/phpunit/tests/Regression/GitHub/1374.phpt
+++ /dev/null
@@ -1,21 +0,0 @@
---TEST--
-GH-1374: tearDown() is called despite unmet requirements
---FILE--
-<?php
-
-$_SERVER['argv'][1] = '--no-configuration';
-$_SERVER['argv'][2] = 'Issue1374Test';
-$_SERVER['argv'][3] = dirname(__FILE__) . '/1374/Issue1374Test.php';
-
-require __DIR__ . '/../../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-S
-
-Time: %s, Memory: %sMb
-
-OK, but incomplete, skipped, or risky tests!
-Tests: 1, Assertions: 0, Skipped: 1.
diff --git a/vendor/phpunit/phpunit/tests/Regression/GitHub/1374/Issue1374Test.php b/vendor/phpunit/phpunit/tests/Regression/GitHub/1374/Issue1374Test.php
deleted file mode 100644
index ad6a3bf..0000000
--- a/vendor/phpunit/phpunit/tests/Regression/GitHub/1374/Issue1374Test.php
+++ /dev/null
@@ -1,21 +0,0 @@
-<?php
-/**
- * @requires extension I_DO_NOT_EXIST
- */
-class Issue1374Test extends PHPUnit_Framework_TestCase
-{
-    protected function setUp()
-    {
-        print __FUNCTION__;
-    }
-
-    public function testSomething()
-    {
-        $this->fail('This should not be reached');
-    }
-
-    protected function tearDown()
-    {
-        print __FUNCTION__;
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/Regression/GitHub/1437.phpt b/vendor/phpunit/phpunit/tests/Regression/GitHub/1437.phpt
deleted file mode 100644
index f9bd41b..0000000
--- a/vendor/phpunit/phpunit/tests/Regression/GitHub/1437.phpt
+++ /dev/null
@@ -1,28 +0,0 @@
---TEST--
-GH-1437: Risky test messages mask failures
---FILE--
-<?php
-
-$_SERVER['argv'][1] = '--no-configuration';
-$_SERVER['argv'][2] = 'Issue1437Test';
-$_SERVER['argv'][3] = dirname(__FILE__) . '/1437/Issue1437Test.php';
-
-require __DIR__ . '/../../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-F
-
-Time: %s, Memory: %sMb
-
-There was 1 failure:
-
-1) Issue1437Test::testFailure
-Failed asserting that false is true.
-
-%sIssue1437Test.php:%i
-
-FAILURES!
-Tests: 1, Assertions: 1, Failures: 1.
diff --git a/vendor/phpunit/phpunit/tests/Regression/GitHub/1437/Issue1437Test.php b/vendor/phpunit/phpunit/tests/Regression/GitHub/1437/Issue1437Test.php
deleted file mode 100644
index bff4b20..0000000
--- a/vendor/phpunit/phpunit/tests/Regression/GitHub/1437/Issue1437Test.php
+++ /dev/null
@@ -1,9 +0,0 @@
-<?php
-class Issue1437Test extends PHPUnit_Framework_TestCase
-{
-    public function testFailure()
-    {
-        ob_start();
-        $this->assertTrue(false);
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/Regression/GitHub/1468.phpt b/vendor/phpunit/phpunit/tests/Regression/GitHub/1468.phpt
deleted file mode 100644
index 23c410b..0000000
--- a/vendor/phpunit/phpunit/tests/Regression/GitHub/1468.phpt
+++ /dev/null
@@ -1,22 +0,0 @@
---TEST--
-GH-1468: Incomplete and @todo annotated tests are counted twice
---FILE--
-<?php
-
-$_SERVER['argv'][1] = '--no-configuration';
-$_SERVER['argv'][2] = '--disallow-todo-tests';
-$_SERVER['argv'][3] = 'Issue1468Test';
-$_SERVER['argv'][4] = __DIR__ . '/1468/Issue1468Test.php';
-
-require __DIR__ . '/../../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-I
-
-Time: %s, Memory: %sMb
-
-OK, but incomplete, skipped, or risky tests!
-Tests: 1, Assertions: 0, Incomplete: 1.
diff --git a/vendor/phpunit/phpunit/tests/Regression/GitHub/1468/Issue1468Test.php b/vendor/phpunit/phpunit/tests/Regression/GitHub/1468/Issue1468Test.php
deleted file mode 100644
index 535b25b..0000000
--- a/vendor/phpunit/phpunit/tests/Regression/GitHub/1468/Issue1468Test.php
+++ /dev/null
@@ -1,11 +0,0 @@
-<?php
-class Issue1468Test extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @todo Implement this test
-     */
-    public function testFailure()
-    {
-        $this->markTestIncomplete();
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/Regression/GitHub/1471.phpt b/vendor/phpunit/phpunit/tests/Regression/GitHub/1471.phpt
deleted file mode 100644
index 631d6e6..0000000
--- a/vendor/phpunit/phpunit/tests/Regression/GitHub/1471.phpt
+++ /dev/null
@@ -1,28 +0,0 @@
---TEST--
-GH-1471: Output made while test is running is printed although expectOutputString() is used when an assertion fails
---FILE--
-<?php
-
-$_SERVER['argv'][1] = '--no-configuration';
-$_SERVER['argv'][2] = 'Issue1471Test';
-$_SERVER['argv'][3] = __DIR__ . '/1471/Issue1471Test.php';
-
-require __DIR__ . '/../../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-F
-
-Time: %s, Memory: %sMb
-
-There was 1 failure:
-
-1) Issue1471Test::testFailure
-Failed asserting that false is true.
-
-%s/Issue1471Test.php:10
-
-FAILURES!
-Tests: 1, Assertions: 1, Failures: 1.
diff --git a/vendor/phpunit/phpunit/tests/Regression/GitHub/1471/Issue1471Test.php b/vendor/phpunit/phpunit/tests/Regression/GitHub/1471/Issue1471Test.php
deleted file mode 100644
index 28f1274..0000000
--- a/vendor/phpunit/phpunit/tests/Regression/GitHub/1471/Issue1471Test.php
+++ /dev/null
@@ -1,12 +0,0 @@
-<?php
-class Issue1471Test extends PHPUnit_Framework_TestCase
-{
-    public function testFailure()
-    {
-        $this->expectOutputString('*');
-
-        print '*';
-
-        $this->assertTrue(false);
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/Regression/GitHub/1472.phpt b/vendor/phpunit/phpunit/tests/Regression/GitHub/1472.phpt
deleted file mode 100644
index 3e605b4..0000000
--- a/vendor/phpunit/phpunit/tests/Regression/GitHub/1472.phpt
+++ /dev/null
@@ -1,26 +0,0 @@
---TEST--
-GH-1472: assertEqualXMLStructure modifies the tested elements
---SKIPIF--
-<?php
-// See: https://github.com/facebook/hhvm/issues/4669
-if (defined('HHVM_VERSION')) {
-    print 'skip: HHVM does not support cloning DOM nodes';
-}
-?>
---FILE--
-<?php
-$_SERVER['argv'][1] = '--no-configuration';
-$_SERVER['argv'][2] = 'Issue1472Test';
-$_SERVER['argv'][3] = dirname(__FILE__) . '/1472/Issue1472Test.php';
-
-require __DIR__ . '/../../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-.
-
-Time: %s, Memory: %sMb
-
-OK (1 test, 4 assertions)
diff --git a/vendor/phpunit/phpunit/tests/Regression/GitHub/1472/Issue1472Test.php b/vendor/phpunit/phpunit/tests/Regression/GitHub/1472/Issue1472Test.php
deleted file mode 100644
index a392773..0000000
--- a/vendor/phpunit/phpunit/tests/Regression/GitHub/1472/Issue1472Test.php
+++ /dev/null
@@ -1,21 +0,0 @@
-<?php
-class Issue1472Test extends PHPUnit_Framework_TestCase
-{
-    public function testAssertEqualXMLStructure()
-    {
-        $doc = new DOMDocument;
-        $doc->loadXML('<root><label>text content</label></root>');
-
-        $xpath = new DOMXPath($doc);
-
-        $labelElement = $doc->getElementsByTagName('label')->item(0);
-
-        $this->assertEquals(1, $xpath->evaluate('count(//label[text() = "text content"])'));
-
-        $expectedElmt = $doc->createElement('label', 'text content');
-        $this->assertEqualXMLStructure($expectedElmt, $labelElement);
-
-        // the following assertion fails, even though it passed before - which is due to the assertEqualXMLStructure() has modified the $labelElement
-        $this->assertEquals(1, $xpath->evaluate('count(//label[text() = "text content"])'));
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/Regression/GitHub/1570.phpt b/vendor/phpunit/phpunit/tests/Regression/GitHub/1570.phpt
deleted file mode 100644
index a94b961..0000000
--- a/vendor/phpunit/phpunit/tests/Regression/GitHub/1570.phpt
+++ /dev/null
@@ -1,21 +0,0 @@
---TEST--
-GH-1570: Test that prints output is marked as failure and not as risky when --disallow-test-output is used
---FILE--
-<?php
-$_SERVER['argv'][1] = '--no-configuration';
-$_SERVER['argv'][2] = '--disallow-test-output';
-$_SERVER['argv'][3] = 'Issue1570Test';
-$_SERVER['argv'][4] = dirname(__FILE__) . '/1570/Issue1570Test.php';
-
-require __DIR__ . '/../../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-R*
-
-Time: %s, Memory: %sMb
-
-OK, but incomplete, skipped, or risky tests!
-Tests: 1, Assertions: 0, Risky: 1.
diff --git a/vendor/phpunit/phpunit/tests/Regression/GitHub/1570/Issue1570Test.php b/vendor/phpunit/phpunit/tests/Regression/GitHub/1570/Issue1570Test.php
deleted file mode 100644
index 0cb1b65..0000000
--- a/vendor/phpunit/phpunit/tests/Regression/GitHub/1570/Issue1570Test.php
+++ /dev/null
@@ -1,8 +0,0 @@
-<?php
-class Issue1570Test extends PHPUnit_Framework_TestCase
-{
-    public function testOne()
-    {
-        print '*';
-    }
-}
\ No newline at end of file
diff --git a/vendor/phpunit/phpunit/tests/Regression/GitHub/244.phpt b/vendor/phpunit/phpunit/tests/Regression/GitHub/244.phpt
deleted file mode 100644
index 3cb9aef..0000000
--- a/vendor/phpunit/phpunit/tests/Regression/GitHub/244.phpt
+++ /dev/null
@@ -1,32 +0,0 @@
---TEST--
-GH-244: Expected Exception should support string codes
---FILE--
-<?php
-$_SERVER['argv'][1] = '--no-configuration';
-$_SERVER['argv'][2] = '--process-isolation';
-$_SERVER['argv'][3] = 'Issue244Test';
-$_SERVER['argv'][4] = dirname(__FILE__) . '/244/Issue244Test.php';
-
-require __DIR__ . '/../../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-.FFF
-
-Time: %s, Memory: %sMb
-
-There were 3 failures:
-
-1) Issue244Test::testFails
-Failed asserting that '123StringCode' is equal to expected exception code 'OtherString'.
-
-2) Issue244Test::testFailsTooIfExpectationIsANumber
-Failed asserting that '123StringCode' is equal to expected exception code 123.
-
-3) Issue244Test::testFailsTooIfExceptionCodeIsANumber
-Failed asserting that 123 is equal to expected exception code '123String'.
-
-FAILURES!
-Tests: 4, Assertions: 8, Failures: 3.
diff --git a/vendor/phpunit/phpunit/tests/Regression/GitHub/244/Issue244Test.php b/vendor/phpunit/phpunit/tests/Regression/GitHub/244/Issue244Test.php
deleted file mode 100644
index 621c4cf..0000000
--- a/vendor/phpunit/phpunit/tests/Regression/GitHub/244/Issue244Test.php
+++ /dev/null
@@ -1,55 +0,0 @@
-<?php
-class Issue244Test extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @expectedException Issue244Exception
-     * @expectedExceptionCode 123StringCode
-     */
-    public function testWorks()
-    {
-        throw new Issue244Exception;
-    }
-
-    /**
-     * @expectedException Issue244Exception
-     * @expectedExceptionCode OtherString
-     */
-    public function testFails()
-    {
-        throw new Issue244Exception;
-    }
-
-    /**
-     * @expectedException Issue244Exception
-     * @expectedExceptionCode 123
-     */
-    public function testFailsTooIfExpectationIsANumber()
-    {
-        throw new Issue244Exception;
-    }
-
-    /**
-     * @expectedException Issue244ExceptionIntCode
-     * @expectedExceptionCode 123String
-     */
-    public function testFailsTooIfExceptionCodeIsANumber()
-    {
-        throw new Issue244ExceptionIntCode;
-    }
-}
-
-class Issue244Exception extends Exception
-{
-    public function __construct()
-    {
-        $this->code = '123StringCode';
-    }
-}
-
-class Issue244ExceptionIntCode extends Exception
-{
-    public function __construct()
-    {
-        $this->code = 123;
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/Regression/GitHub/322.phpt b/vendor/phpunit/phpunit/tests/Regression/GitHub/322.phpt
deleted file mode 100644
index 0d892c7..0000000
--- a/vendor/phpunit/phpunit/tests/Regression/GitHub/322.phpt
+++ /dev/null
@@ -1,26 +0,0 @@
---TEST--
-GH-322: group commandline option should override group/exclude setting in phpunit.xml
---FILE--
-<?php
-
-$_SERVER['argv'][1] = '--configuration';
-$_SERVER['argv'][2] = dirname(__FILE__) . '/322/phpunit322.xml';
-$_SERVER['argv'][3] = '--debug';
-$_SERVER['argv'][4] = '--group';
-$_SERVER['argv'][5] = 'one';
-$_SERVER['argv'][6] = 'Issue322Test';
-$_SERVER['argv'][7] = dirname(__FILE__) . '/322/Issue322Test.php';
-
-require __DIR__ . '/../../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-
-Starting test 'Issue322Test::testOne'.
-.
-
-Time: %s, Memory: %sMb
-
-OK (1 test, 0 assertions)
diff --git a/vendor/phpunit/phpunit/tests/Regression/GitHub/322/Issue322Test.php b/vendor/phpunit/phpunit/tests/Regression/GitHub/322/Issue322Test.php
deleted file mode 100644
index 618bcaa..0000000
--- a/vendor/phpunit/phpunit/tests/Regression/GitHub/322/Issue322Test.php
+++ /dev/null
@@ -1,17 +0,0 @@
-<?php
-class Issue322Test extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @group one
-     */
-    public function testOne()
-    {
-    }
-
-    /**
-     * @group two
-     */
-    public function testTwo()
-    {
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/Regression/GitHub/322/phpunit322.xml b/vendor/phpunit/phpunit/tests/Regression/GitHub/322/phpunit322.xml
deleted file mode 100644
index e3b2948..0000000
--- a/vendor/phpunit/phpunit/tests/Regression/GitHub/322/phpunit322.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<phpunit>
-  <testsuite name="My Test Suite">
-    <file>Test.php</file>
-  </testsuite>
-
-  <groups>
-    <exclude>
-      <group>one</group>
-    </exclude>
-  </groups>
-</phpunit>
diff --git a/vendor/phpunit/phpunit/tests/Regression/GitHub/433.phpt b/vendor/phpunit/phpunit/tests/Regression/GitHub/433.phpt
deleted file mode 100644
index ead9437..0000000
--- a/vendor/phpunit/phpunit/tests/Regression/GitHub/433.phpt
+++ /dev/null
@@ -1,31 +0,0 @@
---TEST--
-GH-433: expectOutputString not completely working as expected
---FILE--
-<?php
-
-$_SERVER['argv'][1] = '--no-configuration';
-$_SERVER['argv'][2] = 'Issue433Test';
-$_SERVER['argv'][3] = dirname(__FILE__) . '/433/Issue433Test.php';
-
-require __DIR__ . '/../../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-..F
-
-Time: %s, Memory: %sMb
-
-There was 1 failure:
-
-1) Issue433Test::testNotMatchingOutput
-Failed asserting that two strings are equal.
---- Expected
-+++ Actual
-@@ @@
--'foo'
-+'bar'
-
-FAILURES!
-Tests: 3, Assertions: 3, Failures: 1.
diff --git a/vendor/phpunit/phpunit/tests/Regression/GitHub/433/Issue433Test.php b/vendor/phpunit/phpunit/tests/Regression/GitHub/433/Issue433Test.php
deleted file mode 100644
index e0a91b3..0000000
--- a/vendor/phpunit/phpunit/tests/Regression/GitHub/433/Issue433Test.php
+++ /dev/null
@@ -1,21 +0,0 @@
-<?php
-class Issue433Test extends PHPUnit_Framework_TestCase
-{
-    public function testOutputWithExpectationBefore()
-    {
-        $this->expectOutputString('test');
-        print 'test';
-    }
-
-    public function testOutputWithExpectationAfter()
-    {
-        print 'test';
-        $this->expectOutputString('test');
-    }
-
-    public function testNotMatchingOutput()
-    {
-        print 'bar';
-        $this->expectOutputString('foo');
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/Regression/GitHub/445.phpt b/vendor/phpunit/phpunit/tests/Regression/GitHub/445.phpt
deleted file mode 100644
index e57e7fb..0000000
--- a/vendor/phpunit/phpunit/tests/Regression/GitHub/445.phpt
+++ /dev/null
@@ -1,32 +0,0 @@
---TEST--
-GH-455: expectOutputString not working in strict mode
---FILE--
-<?php
-
-$_SERVER['argv'][1] = '--no-configuration';
-$_SERVER['argv'][2] = '--disallow-test-output';
-$_SERVER['argv'][3] = 'Issue445Test';
-$_SERVER['argv'][4] = dirname(__FILE__) . '/445/Issue445Test.php';
-
-require __DIR__ . '/../../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-..F
-
-Time: %s, Memory: %sMb
-
-There was 1 failure:
-
-1) Issue445Test::testNotMatchingOutput
-Failed asserting that two strings are equal.
---- Expected
-+++ Actual
-@@ @@
--'foo'
-+'bar'
-
-FAILURES!
-Tests: 3, Assertions: 3, Failures: 1.
diff --git a/vendor/phpunit/phpunit/tests/Regression/GitHub/445/Issue445Test.php b/vendor/phpunit/phpunit/tests/Regression/GitHub/445/Issue445Test.php
deleted file mode 100644
index c309025..0000000
--- a/vendor/phpunit/phpunit/tests/Regression/GitHub/445/Issue445Test.php
+++ /dev/null
@@ -1,21 +0,0 @@
-<?php
-class Issue445Test extends PHPUnit_Framework_TestCase
-{
-    public function testOutputWithExpectationBefore()
-    {
-        $this->expectOutputString('test');
-        print 'test';
-    }
-
-    public function testOutputWithExpectationAfter()
-    {
-        print 'test';
-        $this->expectOutputString('test');
-    }
-
-    public function testNotMatchingOutput()
-    {
-        print 'bar';
-        $this->expectOutputString('foo');
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/Regression/GitHub/498.phpt b/vendor/phpunit/phpunit/tests/Regression/GitHub/498.phpt
deleted file mode 100644
index 51dbe75..0000000
--- a/vendor/phpunit/phpunit/tests/Regression/GitHub/498.phpt
+++ /dev/null
@@ -1,29 +0,0 @@
---TEST--
-GH-498: The test methods won't be run if a dataProvider throws Exception and --group is added in command line
---FILE--
-<?php
-
-$_SERVER['argv'][1] = '--no-configuration';
-$_SERVER['argv'][2] = '--group';
-$_SERVER['argv'][3] = 'trueOnly';
-$_SERVER['argv'][4] = 'Issue498Test';
-$_SERVER['argv'][5] = dirname(__FILE__) . '/498/Issue498Test.php';
-
-require __DIR__ . '/../../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-F
-
-Time: %s, Memory: %sMb
-
-There was 1 failure:
-
-1) Warning
-The data provider specified for Issue498Test::shouldBeFalse is invalid.
-Can't create the data
-
-FAILURES!
-Tests: 1, Assertions: 0, Failures: 1.
diff --git a/vendor/phpunit/phpunit/tests/Regression/GitHub/498/Issue498Test.php b/vendor/phpunit/phpunit/tests/Regression/GitHub/498/Issue498Test.php
deleted file mode 100644
index 49fa764..0000000
--- a/vendor/phpunit/phpunit/tests/Regression/GitHub/498/Issue498Test.php
+++ /dev/null
@@ -1,44 +0,0 @@
-<?php
-
-class Issue498Test extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @test
-     * @dataProvider shouldBeTrueDataProvider
-     * @group falseOnly
-     */
-    public function shouldBeTrue($testData)
-    {
-        $this->assertTrue(true);
-    }
-
-    /**
-     * @test
-     * @dataProvider shouldBeFalseDataProvider
-     * @group trueOnly
-     */
-    public function shouldBeFalse($testData)
-    {
-        $this->assertFalse(false);
-    }
-
-    public function shouldBeTrueDataProvider()
-    {
-
-        //throw new Exception("Can't create the data");
-        return array(
-            array(true),
-            array(false)
-        );
-    }
-
-    public function shouldBeFalseDataProvider()
-    {
-        throw new Exception("Can't create the data");
-
-        return array(
-            array(true),
-            array(false)
-        );
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/Regression/GitHub/503.phpt b/vendor/phpunit/phpunit/tests/Regression/GitHub/503.phpt
deleted file mode 100644
index 2e7b30f..0000000
--- a/vendor/phpunit/phpunit/tests/Regression/GitHub/503.phpt
+++ /dev/null
@@ -1,33 +0,0 @@
---TEST--
-GH-503: assertEquals() Line Ending Differences Are Obscure
---FILE--
-<?php
-
-$_SERVER['argv'][1] = '--no-configuration';
-$_SERVER['argv'][2] = 'Issue503Test';
-$_SERVER['argv'][3] = dirname(__FILE__) . '/503/Issue503Test.php';
-
-require __DIR__ . '/../../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-F
-
-Time: %s, Memory: %sMb
-
-There was 1 failure:
-
-1) Issue503Test::testCompareDifferentLineEndings
-Failed asserting that two strings are identical.
---- Expected
-+++ Actual
-@@ @@
- #Warning: Strings contain different line endings!
- foo
-
-%s:%i
-
-FAILURES!
-Tests: 1, Assertions: 1, Failures: 1.
diff --git a/vendor/phpunit/phpunit/tests/Regression/GitHub/503/Issue503Test.php b/vendor/phpunit/phpunit/tests/Regression/GitHub/503/Issue503Test.php
deleted file mode 100644
index 75ca8d4..0000000
--- a/vendor/phpunit/phpunit/tests/Regression/GitHub/503/Issue503Test.php
+++ /dev/null
@@ -1,11 +0,0 @@
-<?php
-class Issue503Test extends PHPUnit_Framework_TestCase
-{
-    public function testCompareDifferentLineEndings()
-    {
-        $this->assertSame(
-            "foo\n",
-            "foo\r\n"
-        );
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/Regression/GitHub/581.phpt b/vendor/phpunit/phpunit/tests/Regression/GitHub/581.phpt
deleted file mode 100644
index c2d6545..0000000
--- a/vendor/phpunit/phpunit/tests/Regression/GitHub/581.phpt
+++ /dev/null
@@ -1,42 +0,0 @@
---TEST--
-GH-581: PHPUnit_Util_Type::export adds extra newlines in Windows
---FILE--
-<?php
-
-$_SERVER['argv'][1] = '--no-configuration';
-$_SERVER['argv'][2] = 'Issue581Test';
-$_SERVER['argv'][3] = dirname(__FILE__) . '/581/Issue581Test.php';
-
-require __DIR__ . '/../../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-F
-
-Time: %s, Memory: %sMb
-
-There was 1 failure:
-
-1) Issue581Test::testExportingObjectsDoesNotBreakWindowsLineFeeds
-Failed asserting that two objects are equal.
---- Expected
-+++ Actual
-@@ @@
- stdClass Object (
-     0 => 1
-     1 => 2
-     2 => 'Test\n'
-     3 => 4
--    4 => 5
-+    4 => 1
-     5 => 6
-     6 => 7
-     7 => 8
- )
-
-%s:%i
-
-FAILURES!
-Tests: 1, Assertions: 1, Failures: 1.
diff --git a/vendor/phpunit/phpunit/tests/Regression/GitHub/581/Issue581Test.php b/vendor/phpunit/phpunit/tests/Regression/GitHub/581/Issue581Test.php
deleted file mode 100644
index 51de83b..0000000
--- a/vendor/phpunit/phpunit/tests/Regression/GitHub/581/Issue581Test.php
+++ /dev/null
@@ -1,11 +0,0 @@
-<?php
-class Issue581Test extends PHPUnit_Framework_TestCase
-{
-    public function testExportingObjectsDoesNotBreakWindowsLineFeeds()
-    {
-        $this->assertEquals(
-            (object) array(1, 2, "Test\r\n", 4, 5, 6, 7, 8),
-            (object) array(1, 2, "Test\r\n", 4, 1, 6, 7, 8)
-        );
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/Regression/GitHub/74.phpt b/vendor/phpunit/phpunit/tests/Regression/GitHub/74.phpt
deleted file mode 100644
index 8a4f79d..0000000
--- a/vendor/phpunit/phpunit/tests/Regression/GitHub/74.phpt
+++ /dev/null
@@ -1,28 +0,0 @@
---TEST--
-GH-74: catchable fatal error in 3.5
---FILE--
-<?php
-$_SERVER['argv'][1] = '--no-configuration';
-$_SERVER['argv'][2] = '--process-isolation';
-$_SERVER['argv'][3] = 'Issue74Test';
-$_SERVER['argv'][4] = dirname(__FILE__) . '/74/Issue74Test.php';
-
-require __DIR__ . '/../../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-E
-
-Time: %s, Memory: %sMb
-
-There was 1 error:
-
-1) Issue74Test::testCreateAndThrowNewExceptionInProcessIsolation
-NewException: Testing GH-74
-
-%sIssue74Test.php:7
-
-FAILURES!
-Tests: 1, Assertions: 0, Errors: 1.
diff --git a/vendor/phpunit/phpunit/tests/Regression/GitHub/74/Issue74Test.php b/vendor/phpunit/phpunit/tests/Regression/GitHub/74/Issue74Test.php
deleted file mode 100644
index 72f3592..0000000
--- a/vendor/phpunit/phpunit/tests/Regression/GitHub/74/Issue74Test.php
+++ /dev/null
@@ -1,9 +0,0 @@
-<?php
-class Issue74Test extends PHPUnit_Framework_TestCase
-{
-    public function testCreateAndThrowNewExceptionInProcessIsolation()
-    {
-        require_once __DIR__ . '/NewException.php';
-        throw new NewException('Testing GH-74');
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/Regression/GitHub/74/NewException.php b/vendor/phpunit/phpunit/tests/Regression/GitHub/74/NewException.php
deleted file mode 100644
index abe2f71..0000000
--- a/vendor/phpunit/phpunit/tests/Regression/GitHub/74/NewException.php
+++ /dev/null
@@ -1,4 +0,0 @@
-<?php
-class NewException extends Exception
-{
-}
diff --git a/vendor/phpunit/phpunit/tests/Regression/GitHub/765.phpt b/vendor/phpunit/phpunit/tests/Regression/GitHub/765.phpt
deleted file mode 100644
index dc59dd6..0000000
--- a/vendor/phpunit/phpunit/tests/Regression/GitHub/765.phpt
+++ /dev/null
@@ -1,26 +0,0 @@
---TEST--
-GH-765: Fatal error triggered in PHPUnit when exception is thrown in data provider of a test with a dependency
---FILE--
-<?php
-
-$_SERVER['argv'][1] = '--no-configuration';
-$_SERVER['argv'][2] = 'Issue765Test';
-$_SERVER['argv'][3] = dirname(__FILE__) . '/765/Issue765Test.php';
-
-require __DIR__ . '/../../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-.F
-
-Time: %s, Memory: %sMb
-
-There was 1 failure:
-
-1) Warning
-The data provider specified for Issue765Test::testDependent is invalid.
-
-FAILURES!
-Tests: 2, Assertions: 1, Failures: 1.
diff --git a/vendor/phpunit/phpunit/tests/Regression/GitHub/765/Issue765Test.php b/vendor/phpunit/phpunit/tests/Regression/GitHub/765/Issue765Test.php
deleted file mode 100644
index a47474b..0000000
--- a/vendor/phpunit/phpunit/tests/Regression/GitHub/765/Issue765Test.php
+++ /dev/null
@@ -1,22 +0,0 @@
-<?php
-class Issue765Test extends PHPUnit_Framework_TestCase
-{
-    public function testDependee()
-    {
-        $this->assertTrue(true);
-    }
-
-    /**
-     * @depends testDependee
-     * @dataProvider dependentProvider
-     */
-    public function testDependent($a)
-    {
-        $this->assertTrue(true);
-    }
-
-    public function dependentProvider()
-    {
-        throw new Exception;
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/Regression/GitHub/797.phpt b/vendor/phpunit/phpunit/tests/Regression/GitHub/797.phpt
deleted file mode 100644
index 4a6490f..0000000
--- a/vendor/phpunit/phpunit/tests/Regression/GitHub/797.phpt
+++ /dev/null
@@ -1,22 +0,0 @@
---TEST--
-GH-797: Disabled $preserveGlobalState does not load bootstrap.php.
---FILE--
-<?php
-
-$_SERVER['argv'][1] = '--no-configuration';
-$_SERVER['argv'][]  = '--process-isolation';
-$_SERVER['argv'][]  = '--bootstrap';
-$_SERVER['argv'][]  = __DIR__ . '/797/bootstrap797.php';
-$_SERVER['argv'][]  = __DIR__ . '/797/Issue797Test.php';
-
-require __DIR__ . '/../../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-.
-
-Time: %s, Memory: %sMb
-
-OK (1 test, 1 assertion)
\ No newline at end of file
diff --git a/vendor/phpunit/phpunit/tests/Regression/GitHub/797/Issue797Test.php b/vendor/phpunit/phpunit/tests/Regression/GitHub/797/Issue797Test.php
deleted file mode 100644
index b1c1b8f..0000000
--- a/vendor/phpunit/phpunit/tests/Regression/GitHub/797/Issue797Test.php
+++ /dev/null
@@ -1,10 +0,0 @@
-<?php
-class Issue797Test extends PHPUnit_Framework_TestCase
-{
-    protected $preserveGlobalState = false;
-
-    public function testBootstrapPhpIsExecutedInIsolation()
-    {
-        $this->assertEquals(GITHUB_ISSUE, 797);
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/Regression/GitHub/797/bootstrap797.php b/vendor/phpunit/phpunit/tests/Regression/GitHub/797/bootstrap797.php
deleted file mode 100644
index 03890a3..0000000
--- a/vendor/phpunit/phpunit/tests/Regression/GitHub/797/bootstrap797.php
+++ /dev/null
@@ -1,6 +0,0 @@
-<?php
-// If process isolation fails to include this file, then
-// PHPUnit_Framework_TestCase itself does not exist. :-)
-require __DIR__ . '/../../../bootstrap.php';
-
-const GITHUB_ISSUE = 797;
diff --git a/vendor/phpunit/phpunit/tests/Regression/GitHub/863.phpt b/vendor/phpunit/phpunit/tests/Regression/GitHub/863.phpt
deleted file mode 100644
index 1e0ffbd..0000000
--- a/vendor/phpunit/phpunit/tests/Regression/GitHub/863.phpt
+++ /dev/null
@@ -1,24 +0,0 @@
---TEST--
-GH-863: Number of tests to run calculated incorrectly when --repeat is used
---FILE--
-<?php
-
-$_SERVER['argv'][1] = '--no-configuration';
-$_SERVER['argv'][2] = '--repeat';
-$_SERVER['argv'][3] = '50';
-$_SERVER['argv'][4] = 'BankAccountTest';
-$_SERVER['argv'][5] = dirname(dirname(dirname(__FILE__))) . '/_files/BankAccountTest.php';
-
-require __DIR__ . '/../../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-...............................................................  63 / 150 ( 42%)
-............................................................... 126 / 150 ( 84%)
-........................
-
-Time: %s, Memory: %sMb
-
-OK (150 tests, 150 assertions)
diff --git a/vendor/phpunit/phpunit/tests/Regression/GitHub/873-php5.phpt b/vendor/phpunit/phpunit/tests/Regression/GitHub/873-php5.phpt
deleted file mode 100644
index 89b7402..0000000
--- a/vendor/phpunit/phpunit/tests/Regression/GitHub/873-php5.phpt
+++ /dev/null
@@ -1,22 +0,0 @@
---TEST--
-GH-873: PHPUnit suppresses exceptions thrown outside of test case function
---SKIPIF--
-<?php
-if (PHP_MAJOR_VERSION > 5) {
-    print 'skip: PHP 5 is required';
-}
-?>
---FILE--
-<?php
-$_SERVER['argv'][1] = '--no-configuration';
-$_SERVER['argv'][2] = 'Issue873Test';
-$_SERVER['argv'][3] = dirname(__FILE__) . '/873/Issue873Test.php';
-
-require __DIR__ . '/../../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-
-Fatal error: Uncaught exception 'Exception' with message 'PHPUnit suppresses exceptions thrown outside of test case function' in %s:%i
-Stack trace:
-%a
diff --git a/vendor/phpunit/phpunit/tests/Regression/GitHub/873-php7.phpt b/vendor/phpunit/phpunit/tests/Regression/GitHub/873-php7.phpt
deleted file mode 100644
index b022f99..0000000
--- a/vendor/phpunit/phpunit/tests/Regression/GitHub/873-php7.phpt
+++ /dev/null
@@ -1,22 +0,0 @@
---TEST--
-GH-873: PHPUnit suppresses exceptions thrown outside of test case function
---SKIPIF--
-<?php
-if (PHP_MAJOR_VERSION < 7) {
-    print 'skip: PHP 7 is required';
-}
-?>
---FILE--
-<?php
-$_SERVER['argv'][1] = '--no-configuration';
-$_SERVER['argv'][2] = 'Issue873Test';
-$_SERVER['argv'][3] = dirname(__FILE__) . '/873/Issue873Test.php';
-
-require __DIR__ . '/../../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-
-Fatal error: Uncaught Exception: PHPUnit suppresses exceptions thrown outside of test case function in %s:%i
-Stack trace:
-%a
diff --git a/vendor/phpunit/phpunit/tests/Regression/GitHub/873/Issue873Test.php b/vendor/phpunit/phpunit/tests/Regression/GitHub/873/Issue873Test.php
deleted file mode 100644
index 70fd904..0000000
--- a/vendor/phpunit/phpunit/tests/Regression/GitHub/873/Issue873Test.php
+++ /dev/null
@@ -1,9 +0,0 @@
-<?php
-
-if (extension_loaded('xdebug')) {
-    xdebug_disable();
-}
-
-    throw new Exception(
-        'PHPUnit suppresses exceptions thrown outside of test case function'
-    );
diff --git a/vendor/phpunit/phpunit/tests/Runner/BaseTestRunnerTest.php b/vendor/phpunit/phpunit/tests/Runner/BaseTestRunnerTest.php
deleted file mode 100644
index a0bbb00..0000000
--- a/vendor/phpunit/phpunit/tests/Runner/BaseTestRunnerTest.php
+++ /dev/null
@@ -1,22 +0,0 @@
-<?php
-/*
- * This file is part of PHPUnit.
- *
- * (c) Sebastian Bergmann <sebastian@phpunit.de>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-/**
- * @since      Class available since Release 2.0.0
- * @covers     PHPUnit_Runner_BaseTestRunner
- */
-class Runner_BaseTestRunnerTest extends PHPUnit_Framework_TestCase
-{
-    public function testInvokeNonStaticSuite()
-    {
-        $runner = new MockRunner;
-        $runner->getTest('NonStatic');
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/TextUI/abstract-test-class.phpt b/vendor/phpunit/phpunit/tests/TextUI/abstract-test-class.phpt
deleted file mode 100644
index 8d6c07a..0000000
--- a/vendor/phpunit/phpunit/tests/TextUI/abstract-test-class.phpt
+++ /dev/null
@@ -1,25 +0,0 @@
---TEST--
-phpunit AbstractTest ../_files/AbstractTest.php
---FILE--
-<?php
-$_SERVER['argv'][1] = '--no-configuration';
-$_SERVER['argv'][2] = 'AbstractTest';
-$_SERVER['argv'][3] = dirname(dirname(__FILE__)) . '/_files/AbstractTest.php';
-
-require __DIR__ . '/../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-F
-
-Time: %s, Memory: %sMb
-
-There was 1 failure:
-
-1) Warning
-Cannot instantiate class "AbstractTest".
-
-FAILURES!
-Tests: 1, Assertions: 0, Failures: 1.
diff --git a/vendor/phpunit/phpunit/tests/TextUI/colors-always.phpt b/vendor/phpunit/phpunit/tests/TextUI/colors-always.phpt
deleted file mode 100644
index 28b527d..0000000
--- a/vendor/phpunit/phpunit/tests/TextUI/colors-always.phpt
+++ /dev/null
@@ -1,19 +0,0 @@
---TEST--
-phpunit --colors=always BankAccountTest ../_files/BankAccountTest.php
---FILE--
-<?php
-$_SERVER['argv'][1] = '--no-configuration';
-$_SERVER['argv'][2] = '--colors=always';
-$_SERVER['argv'][3] = __DIR__ . '/../_files/BankAccountTest.php';
-
-require __DIR__ . '/../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-...
-
-Time: %s, Memory: %sMb
-
-%s[30;42mOK (3 tests, 3 assertions)%s[0m
diff --git a/vendor/phpunit/phpunit/tests/TextUI/concrete-test-class.phpt b/vendor/phpunit/phpunit/tests/TextUI/concrete-test-class.phpt
deleted file mode 100644
index f01bd79..0000000
--- a/vendor/phpunit/phpunit/tests/TextUI/concrete-test-class.phpt
+++ /dev/null
@@ -1,19 +0,0 @@
---TEST--
-phpunit ConcreteTest ../_files/ConcreteTest.php
---FILE--
-<?php
-$_SERVER['argv'][1] = '--no-configuration';
-$_SERVER['argv'][2] = 'ConcreteTest';
-$_SERVER['argv'][3] = dirname(dirname(__FILE__)) . '/_files/ConcreteTest.php';
-
-require __DIR__ . '/../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-..
-
-Time: %s, Memory: %sMb
-
-OK (2 tests, 0 assertions)
diff --git a/vendor/phpunit/phpunit/tests/TextUI/custom-printer-debug.phpt b/vendor/phpunit/phpunit/tests/TextUI/custom-printer-debug.phpt
deleted file mode 100644
index 19b9e05..0000000
--- a/vendor/phpunit/phpunit/tests/TextUI/custom-printer-debug.phpt
+++ /dev/null
@@ -1,27 +0,0 @@
---TEST--
-phpunit -c ../_files/configuration.custom-printer.xml --debug BankAccountTest ../_files/BankAccountTest.php
---FILE--
-<?php
-$_SERVER['argv'][1] = '-c';
-$_SERVER['argv'][2] = dirname(__FILE__) . '/../_files/configuration.custom-printer.xml';
-$_SERVER['argv'][3] = '--debug';
-$_SERVER['argv'][4] = 'BankAccountTest';
-$_SERVER['argv'][5] = dirname(__FILE__) . '/../_files/BankAccountTest.php';
-
-require __DIR__ . '/../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-
-Starting test 'BankAccountTest::testBalanceIsInitiallyZero'.
-.
-Starting test 'BankAccountTest::testBalanceCannotBecomeNegative'.
-.
-Starting test 'BankAccountTest::testBalanceCannotBecomeNegative2'.
-.
-
-Time: %s, Memory: %sMb
-
-OK (3 tests, 3 assertions)
diff --git a/vendor/phpunit/phpunit/tests/TextUI/custom-printer-verbose.phpt b/vendor/phpunit/phpunit/tests/TextUI/custom-printer-verbose.phpt
deleted file mode 100644
index 2e2a990..0000000
--- a/vendor/phpunit/phpunit/tests/TextUI/custom-printer-verbose.phpt
+++ /dev/null
@@ -1,32 +0,0 @@
---TEST--
-phpunit -c ../_files/configuration.custom-printer.xml --verbose IncompleteTest ../_files/IncompleteTest.php
---FILE--
-<?php
-$_SERVER['argv'][1] = '-c';
-$_SERVER['argv'][2] = dirname(__FILE__) . '/../_files/configuration.custom-printer.xml';
-$_SERVER['argv'][3] = '--verbose';
-$_SERVER['argv'][4] = 'IncompleteTest';
-$_SERVER['argv'][5] = dirname(__FILE__) . '/../_files/IncompleteTest.php';
-
-require __DIR__ . '/../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-Runtime:	%s
-Configuration:	%sconfiguration.custom-printer.xml
-
-I
-
-Time: %s, Memory: %sMb
-
-There was 1 incomplete test:
-
-1) IncompleteTest::testIncomplete
-Test incomplete
-
-%s
-
-OK, but incomplete, skipped, or risky tests!
-Tests: 1, Assertions: 0, Incomplete: 1.
diff --git a/vendor/phpunit/phpunit/tests/TextUI/dataprovider-debug.phpt b/vendor/phpunit/phpunit/tests/TextUI/dataprovider-debug.phpt
deleted file mode 100644
index e7e49b4..0000000
--- a/vendor/phpunit/phpunit/tests/TextUI/dataprovider-debug.phpt
+++ /dev/null
@@ -1,34 +0,0 @@
---TEST--
-phpunit --debug DataProviderDebugTest ../_files/DataProviderDebugTest.php
---FILE--
-<?php
-$_SERVER['argv'][1] = '--no-configuration';
-$_SERVER['argv'][2] = '--debug';
-$_SERVER['argv'][3] = 'DataProviderDebugTest';
-$_SERVER['argv'][4] = dirname(__FILE__) . '/../_files/DataProviderDebugTest.php';
-
-require __DIR__ . '/../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-
-Starting test 'DataProviderDebugTest::testProvider with data set #0 (null, true, 1, 1.0)'.
-.
-Starting test 'DataProviderDebugTest::testProvider with data set #1 (1.2, resource(%d) of type (stream), '1')'.
-.
-Starting test 'DataProviderDebugTest::testProvider with data set #2 (array(array(1, 2, 3), array(3, 4, 5)))'.
-.
-Starting test 'DataProviderDebugTest::testProvider with data set #3 ('this\nis\na\nvery\nvery\nvery\nvery...g\ntext')'.
-.
-Starting test 'DataProviderDebugTest::testProvider with data set #4 (stdClass Object (), stdClass Object (...), array(), SplObjectStorage Object (...), stdClass Object (...))'.
-.
-Starting test 'DataProviderDebugTest::testProvider with data set #5 (Binary String: 0x000102030405, Binary String: 0x0e0f101112131...c1d1e1f)'.
-.
-Starting test 'DataProviderDebugTest::testProvider with data set #6 (Binary String: 0x0009)'.
-.
-
-Time: %s, Memory: %sMb
-
-OK (7 tests, 7 assertions)
diff --git a/vendor/phpunit/phpunit/tests/TextUI/dataprovider-log-xml-isolation.phpt b/vendor/phpunit/phpunit/tests/TextUI/dataprovider-log-xml-isolation.phpt
deleted file mode 100644
index e1c4571..0000000
--- a/vendor/phpunit/phpunit/tests/TextUI/dataprovider-log-xml-isolation.phpt
+++ /dev/null
@@ -1,47 +0,0 @@
---TEST--
-phpunit --process-isolation --log-junit php://stdout DataProviderTest ../_files/DataProviderTest.php
---FILE--
-<?php
-$_SERVER['argv'][1] = '--no-configuration';
-$_SERVER['argv'][2] = '--process-isolation';
-$_SERVER['argv'][3] = '--log-junit';
-$_SERVER['argv'][4] = 'php://stdout';
-$_SERVER['argv'][5] = 'DataProviderTest';
-$_SERVER['argv'][6] = dirname(dirname(__FILE__)) . '/_files/DataProviderTest.php';
-
-require __DIR__ . '/../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-..F.<?xml version="1.0" encoding="UTF-8"?>
-<testsuites>
-  <testsuite name="DataProviderTest" file="%sDataProviderTest.php" tests="4" assertions="4" failures="1" errors="0" time="%f">
-    <testsuite name="DataProviderTest::testAdd" tests="4" assertions="4" failures="1" errors="0" time="%f">
-      <testcase name="testAdd with data set #0" assertions="1" time="%f"/>
-      <testcase name="testAdd with data set #1" assertions="1" time="%f"/>
-      <testcase name="testAdd with data set #2" assertions="1" time="%f">
-        <failure type="PHPUnit_Framework_ExpectationFailedException">DataProviderTest::testAdd with data set #2 (1, 1, 3)
-Failed asserting that 2 matches expected 3.
-
-%s:%i
-</failure>
-      </testcase>
-      <testcase name="testAdd with data set #3" assertions="1" time="%f"/>
-    </testsuite>
-  </testsuite>
-</testsuites>
-
-
-Time: %s, Memory: %sMb
-
-There was 1 failure:
-
-1) DataProviderTest::testAdd with data set #2 (1, 1, 3)
-Failed asserting that 2 matches expected 3.
-
-%s:%i
-
-FAILURES!
-Tests: 4, Assertions: 4, Failures: 1.
diff --git a/vendor/phpunit/phpunit/tests/TextUI/dataprovider-log-xml.phpt b/vendor/phpunit/phpunit/tests/TextUI/dataprovider-log-xml.phpt
deleted file mode 100644
index a14b466..0000000
--- a/vendor/phpunit/phpunit/tests/TextUI/dataprovider-log-xml.phpt
+++ /dev/null
@@ -1,46 +0,0 @@
---TEST--
-phpunit --log-junit php://stdout DataProviderTest ../_files/DataProviderTest.php
---FILE--
-<?php
-$_SERVER['argv'][1] = '--no-configuration';
-$_SERVER['argv'][2] = '--log-junit';
-$_SERVER['argv'][3] = 'php://stdout';
-$_SERVER['argv'][4] = 'DataProviderTest';
-$_SERVER['argv'][5] = dirname(dirname(__FILE__)) . '/_files/DataProviderTest.php';
-
-require __DIR__ . '/../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-..F.<?xml version="1.0" encoding="UTF-8"?>
-<testsuites>
-  <testsuite name="DataProviderTest" file="%sDataProviderTest.php" tests="4" assertions="4" failures="1" errors="0" time="%f">
-    <testsuite name="DataProviderTest::testAdd" tests="4" assertions="4" failures="1" errors="0" time="%f">
-      <testcase name="testAdd with data set #0" assertions="1" time="%f"/>
-      <testcase name="testAdd with data set #1" assertions="1" time="%f"/>
-      <testcase name="testAdd with data set #2" assertions="1" time="%f">
-        <failure type="PHPUnit_Framework_ExpectationFailedException">DataProviderTest::testAdd with data set #2 (1, 1, 3)
-Failed asserting that 2 matches expected 3.
-
-%s:%i
-</failure>
-      </testcase>
-      <testcase name="testAdd with data set #3" assertions="1" time="%f"/>
-    </testsuite>
-  </testsuite>
-</testsuites>
-
-
-Time: %s, Memory: %sMb
-
-There was 1 failure:
-
-1) DataProviderTest::testAdd with data set #2 (1, 1, 3)
-Failed asserting that 2 matches expected 3.
-
-%s:%i
-
-FAILURES!
-Tests: 4, Assertions: 4, Failures: 1.
diff --git a/vendor/phpunit/phpunit/tests/TextUI/dataprovider-testdox.phpt b/vendor/phpunit/phpunit/tests/TextUI/dataprovider-testdox.phpt
deleted file mode 100644
index 75973fe..0000000
--- a/vendor/phpunit/phpunit/tests/TextUI/dataprovider-testdox.phpt
+++ /dev/null
@@ -1,17 +0,0 @@
---TEST--
-phpunit --testdox DataProviderTest ../_files/DataProviderTest.php
---FILE--
-<?php
-$_SERVER['argv'][1] = '--no-configuration';
-$_SERVER['argv'][2] = '--testdox';
-$_SERVER['argv'][3] = 'DataProviderTest';
-$_SERVER['argv'][4] = dirname(dirname(__FILE__)) . '/_files/DataProviderTest.php';
-
-require __DIR__ . '/../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-DataProvider
- [ ] Add
diff --git a/vendor/phpunit/phpunit/tests/TextUI/debug.phpt b/vendor/phpunit/phpunit/tests/TextUI/debug.phpt
deleted file mode 100644
index 1639484..0000000
--- a/vendor/phpunit/phpunit/tests/TextUI/debug.phpt
+++ /dev/null
@@ -1,26 +0,0 @@
---TEST--
-phpunit --debug BankAccountTest ../_files/BankAccountTest.php
---FILE--
-<?php
-$_SERVER['argv'][1] = '--no-configuration';
-$_SERVER['argv'][2] = '--debug';
-$_SERVER['argv'][3] = 'BankAccountTest';
-$_SERVER['argv'][4] = dirname(__FILE__) . '/../_files/BankAccountTest.php';
-
-require __DIR__ . '/../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-
-Starting test 'BankAccountTest::testBalanceIsInitiallyZero'.
-.
-Starting test 'BankAccountTest::testBalanceCannotBecomeNegative'.
-.
-Starting test 'BankAccountTest::testBalanceCannotBecomeNegative2'.
-.
-
-Time: %s, Memory: %sMb
-
-OK (3 tests, 3 assertions)
diff --git a/vendor/phpunit/phpunit/tests/TextUI/default-isolation.phpt b/vendor/phpunit/phpunit/tests/TextUI/default-isolation.phpt
deleted file mode 100644
index 864484c..0000000
--- a/vendor/phpunit/phpunit/tests/TextUI/default-isolation.phpt
+++ /dev/null
@@ -1,20 +0,0 @@
---TEST--
-phpunit --process-isolation BankAccountTest ../_files/BankAccountTest.php
---FILE--
-<?php
-$_SERVER['argv'][1] = '--no-configuration';
-$_SERVER['argv'][2] = '--process-isolation';
-$_SERVER['argv'][3] = 'BankAccountTest';
-$_SERVER['argv'][4] = dirname(__FILE__) . '/../_files/BankAccountTest.php';
-
-require __DIR__ . '/../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-...
-
-Time: %s, Memory: %sMb
-
-OK (3 tests, 3 assertions)
diff --git a/vendor/phpunit/phpunit/tests/TextUI/default.phpt b/vendor/phpunit/phpunit/tests/TextUI/default.phpt
deleted file mode 100644
index 9fefe1a..0000000
--- a/vendor/phpunit/phpunit/tests/TextUI/default.phpt
+++ /dev/null
@@ -1,19 +0,0 @@
---TEST--
-phpunit BankAccountTest ../_files/BankAccountTest.php
---FILE--
-<?php
-$_SERVER['argv'][1] = '--no-configuration';
-$_SERVER['argv'][2] = 'BankAccountTest';
-$_SERVER['argv'][3] = dirname(__FILE__) . '/../_files/BankAccountTest.php';
-
-require __DIR__ . '/../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-...
-
-Time: %s, Memory: %sMb
-
-OK (3 tests, 3 assertions)
diff --git a/vendor/phpunit/phpunit/tests/TextUI/dependencies-isolation.phpt b/vendor/phpunit/phpunit/tests/TextUI/dependencies-isolation.phpt
deleted file mode 100644
index 226d3d8..0000000
--- a/vendor/phpunit/phpunit/tests/TextUI/dependencies-isolation.phpt
+++ /dev/null
@@ -1,40 +0,0 @@
---TEST--
-phpunit --process-isolation --verbose DependencyTestSuite ../_files/DependencyTestSuite.php
---FILE--
-<?php
-$_SERVER['argv'][1] = '--no-configuration';
-$_SERVER['argv'][2] = '--process-isolation';
-$_SERVER['argv'][3] = '--verbose';
-$_SERVER['argv'][4] = 'DependencyTestSuite';
-$_SERVER['argv'][5] = dirname(dirname(__FILE__)) . '/_files/DependencyTestSuite.php';
-
-require __DIR__ . '/../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-Runtime:	%s
-
-...FSS
-
-Time: %s, Memory: %sMb
-
-There was 1 failure:
-
-1) DependencyFailureTest::testOne
-
-%s:%i
-
---
-
-There were 2 skipped tests:
-
-1) DependencyFailureTest::testTwo
-This test depends on "DependencyFailureTest::testOne" to pass.
-
-2) DependencyFailureTest::testThree
-This test depends on "DependencyFailureTest::testTwo" to pass.
-
-FAILURES!
-Tests: 4, Assertions: 0, Failures: 1, Skipped: 2.
diff --git a/vendor/phpunit/phpunit/tests/TextUI/dependencies.phpt b/vendor/phpunit/phpunit/tests/TextUI/dependencies.phpt
deleted file mode 100644
index 593088f..0000000
--- a/vendor/phpunit/phpunit/tests/TextUI/dependencies.phpt
+++ /dev/null
@@ -1,39 +0,0 @@
---TEST--
-phpunit --verbose DependencyTestSuite ../_files/DependencyTestSuite.php
---FILE--
-<?php
-$_SERVER['argv'][1] = '--no-configuration';
-$_SERVER['argv'][2] = '--verbose';
-$_SERVER['argv'][3] = 'DependencyTestSuite';
-$_SERVER['argv'][4] = dirname(dirname(__FILE__)) . '/_files/DependencyTestSuite.php';
-
-require __DIR__ . '/../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-Runtime:	%s
-
-...FSS
-
-Time: %s, Memory: %sMb
-
-There was 1 failure:
-
-1) DependencyFailureTest::testOne
-
-%s:%i
-
---
-
-There were 2 skipped tests:
-
-1) DependencyFailureTest::testTwo
-This test depends on "DependencyFailureTest::testOne" to pass.
-
-2) DependencyFailureTest::testThree
-This test depends on "DependencyFailureTest::testTwo" to pass.
-
-FAILURES!
-Tests: 4, Assertions: 0, Failures: 1, Skipped: 2.
diff --git a/vendor/phpunit/phpunit/tests/TextUI/dependencies2-isolation.phpt b/vendor/phpunit/phpunit/tests/TextUI/dependencies2-isolation.phpt
deleted file mode 100644
index bd88351..0000000
--- a/vendor/phpunit/phpunit/tests/TextUI/dependencies2-isolation.phpt
+++ /dev/null
@@ -1,20 +0,0 @@
---TEST--
-phpunit --process-isolation StackTest ../_files/StackTest.php
---FILE--
-<?php
-$_SERVER['argv'][1] = '--no-configuration';
-$_SERVER['argv'][2] = '--process-isolation';
-$_SERVER['argv'][3] = 'StackTest';
-$_SERVER['argv'][4] = dirname(dirname(__FILE__)) . '/_files/StackTest.php';
-
-require __DIR__ . '/../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-..
-
-Time: %s, Memory: %sMb
-
-OK (2 tests, 5 assertions)
diff --git a/vendor/phpunit/phpunit/tests/TextUI/dependencies2.phpt b/vendor/phpunit/phpunit/tests/TextUI/dependencies2.phpt
deleted file mode 100644
index d05b79d..0000000
--- a/vendor/phpunit/phpunit/tests/TextUI/dependencies2.phpt
+++ /dev/null
@@ -1,19 +0,0 @@
---TEST--
-phpunit StackTest ../_files/StackTest.php
---FILE--
-<?php
-$_SERVER['argv'][1] = '--no-configuration';
-$_SERVER['argv'][2] = 'StackTest';
-$_SERVER['argv'][3] = dirname(dirname(__FILE__)) . '/_files/StackTest.php';
-
-require __DIR__ . '/../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-..
-
-Time: %s, Memory: %sMb
-
-OK (2 tests, 5 assertions)
diff --git a/vendor/phpunit/phpunit/tests/TextUI/dependencies3-isolation.phpt b/vendor/phpunit/phpunit/tests/TextUI/dependencies3-isolation.phpt
deleted file mode 100644
index 37d2e63..0000000
--- a/vendor/phpunit/phpunit/tests/TextUI/dependencies3-isolation.phpt
+++ /dev/null
@@ -1,20 +0,0 @@
---TEST--
-phpunit --process-isolation MultiDependencyTest ../_files/MultiDependencyTest.php
---FILE--
-<?php
-$_SERVER['argv'][1] = '--no-configuration';
-$_SERVER['argv'][2] = '--process-isolation';
-$_SERVER['argv'][3] = 'MultiDependencyTest';
-$_SERVER['argv'][4] = dirname(dirname(__FILE__)) . '/_files/MultiDependencyTest.php';
-
-require __DIR__ . '/../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-...
-
-Time: %s, Memory: %sMb
-
-OK (3 tests, 2 assertions)
diff --git a/vendor/phpunit/phpunit/tests/TextUI/dependencies3.phpt b/vendor/phpunit/phpunit/tests/TextUI/dependencies3.phpt
deleted file mode 100644
index 6c5d3b1..0000000
--- a/vendor/phpunit/phpunit/tests/TextUI/dependencies3.phpt
+++ /dev/null
@@ -1,19 +0,0 @@
---TEST--
-phpunit MultiDependencyTest ../_files/MultiDependencyTest.php
---FILE--
-<?php
-$_SERVER['argv'][1] = '--no-configuration';
-$_SERVER['argv'][2] = 'MultiDependencyTest';
-$_SERVER['argv'][3] = dirname(dirname(__FILE__)) . '/_files/MultiDependencyTest.php';
-
-require __DIR__ . '/../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-...
-
-Time: %s, Memory: %sMb
-
-OK (3 tests, 2 assertions)
diff --git a/vendor/phpunit/phpunit/tests/TextUI/empty-testcase.phpt b/vendor/phpunit/phpunit/tests/TextUI/empty-testcase.phpt
deleted file mode 100644
index 3de7055..0000000
--- a/vendor/phpunit/phpunit/tests/TextUI/empty-testcase.phpt
+++ /dev/null
@@ -1,25 +0,0 @@
---TEST--
-phpunit EmptyTestCaseTest ../_files/EmptyTestCaseTest.php
---FILE--
-<?php
-$_SERVER['argv'][1] = '--no-configuration';
-$_SERVER['argv'][2] = 'EmptyTestCaseTest';
-$_SERVER['argv'][3] = dirname(dirname(__FILE__)) . '/_files/EmptyTestCaseTest.php';
-
-require __DIR__ . '/../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-F
-
-Time: %s, Memory: %sMb
-
-There was 1 failure:
-
-1) Warning
-No tests found in class "EmptyTestCaseTest".
-
-FAILURES!
-Tests: 1, Assertions: 0, Failures: 1.
diff --git a/vendor/phpunit/phpunit/tests/TextUI/exception-stack.phpt b/vendor/phpunit/phpunit/tests/TextUI/exception-stack.phpt
deleted file mode 100644
index db585bf..0000000
--- a/vendor/phpunit/phpunit/tests/TextUI/exception-stack.phpt
+++ /dev/null
@@ -1,65 +0,0 @@
---TEST--
-phpunit ExceptionStackTest ../_files/ExceptionStackTest.php
---FILE--
-<?php
-$_SERVER['argv'][1] = '--no-configuration';
-$_SERVER['argv'][2] = 'ExceptionStackTest';
-$_SERVER['argv'][3] = dirname(dirname(__FILE__)) . '/_files/ExceptionStackTest.php';
-
-require __DIR__ . '/../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-EE
-
-Time: %s, Memory: %sMb
-
-There were 2 errors:
-
-1) ExceptionStackTest::testPrintingChildException
-PHPUnit_Framework_Exception: Child exception
-message
-Failed asserting that two arrays are equal.
---- Expected
-+++ Actual
-@@ @@
- Array (
--    0 => 1
-+    0 => 2
- )
-
-
-%s:%i
-
-Caused by
-message
-Failed asserting that two arrays are equal.
---- Expected
-+++ Actual
-@@ @@
- Array (
--    0 => 1
-+    0 => 2
- )
-
-%s:%i
-
-2) ExceptionStackTest::testNestedExceptions
-Exception: One
-
-%s:%i
-
-Caused by
-InvalidArgumentException: Two
-
-%s:%i
-
-Caused by
-Exception: Three
-
-%s:%i
-
-FAILURES!
-Tests: 2, Assertions: 1, Errors: 2.
diff --git a/vendor/phpunit/phpunit/tests/TextUI/exclude-group-isolation.phpt b/vendor/phpunit/phpunit/tests/TextUI/exclude-group-isolation.phpt
deleted file mode 100644
index 736feda..0000000
--- a/vendor/phpunit/phpunit/tests/TextUI/exclude-group-isolation.phpt
+++ /dev/null
@@ -1,22 +0,0 @@
---TEST--
-phpunit --process-isolation --exclude-group balanceIsInitiallyZero BankAccountTest ../_files/BankAccountTest.php
---FILE--
-<?php
-$_SERVER['argv'][1] = '--no-configuration';
-$_SERVER['argv'][2] = '--process-isolation';
-$_SERVER['argv'][3] = '--exclude-group';
-$_SERVER['argv'][4] = 'balanceIsInitiallyZero';
-$_SERVER['argv'][5] = 'BankAccountTest';
-$_SERVER['argv'][6] = dirname(__FILE__) . '/../_files/BankAccountTest.php';
-
-require __DIR__ . '/../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-..
-
-Time: %s, Memory: %sMb
-
-OK (2 tests, 2 assertions)
diff --git a/vendor/phpunit/phpunit/tests/TextUI/exclude-group.phpt b/vendor/phpunit/phpunit/tests/TextUI/exclude-group.phpt
deleted file mode 100644
index f75d611..0000000
--- a/vendor/phpunit/phpunit/tests/TextUI/exclude-group.phpt
+++ /dev/null
@@ -1,21 +0,0 @@
---TEST--
-phpunit --exclude-group balanceIsInitiallyZero BankAccountTest ../_files/BankAccountTest.php
---FILE--
-<?php
-$_SERVER['argv'][1] = '--no-configuration';
-$_SERVER['argv'][2] = '--exclude-group';
-$_SERVER['argv'][3] = 'balanceIsInitiallyZero';
-$_SERVER['argv'][4] = 'BankAccountTest';
-$_SERVER['argv'][5] = dirname(__FILE__) . '/../_files/BankAccountTest.php';
-
-require __DIR__ . '/../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-..
-
-Time: %s, Memory: %sMb
-
-OK (2 tests, 2 assertions)
diff --git a/vendor/phpunit/phpunit/tests/TextUI/failure-isolation.phpt b/vendor/phpunit/phpunit/tests/TextUI/failure-isolation.phpt
deleted file mode 100644
index 7df4f10..0000000
--- a/vendor/phpunit/phpunit/tests/TextUI/failure-isolation.phpt
+++ /dev/null
@@ -1,142 +0,0 @@
---TEST--
-phpunit --process-isolation FailureTest ../_files/FailureTest.php
---FILE--
-<?php
-$_SERVER['argv'][1] = '--no-configuration';
-$_SERVER['argv'][2] = '--process-isolation';
-$_SERVER['argv'][3] = 'FailureTest';
-$_SERVER['argv'][4] = dirname(dirname(__FILE__)) . '/_files/FailureTest.php';
-
-require __DIR__ . '/../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-FFFFFFFFFFFFF
-
-Time: %s, Memory: %sMb
-
-There were 13 failures:
-
-1) FailureTest::testAssertArrayEqualsArray
-message
-Failed asserting that two arrays are equal.
---- Expected
-+++ Actual
-@@ @@
- Array (
--    0 => 1
-+    0 => 2
- )
-
-%s:%i
-
-2) FailureTest::testAssertIntegerEqualsInteger
-message
-Failed asserting that 2 matches expected 1.
-
-%s:%i
-
-3) FailureTest::testAssertObjectEqualsObject
-message
-Failed asserting that two objects are equal.
---- Expected
-+++ Actual
-@@ @@
- stdClass Object (
--    'foo' => 'bar'
-+    'bar' => 'foo'
- )
-
-%s:%i
-
-4) FailureTest::testAssertNullEqualsString
-message
-Failed asserting that 'bar' matches expected null.
-
-%s:%i
-
-5) FailureTest::testAssertStringEqualsString
-message
-Failed asserting that two strings are equal.
---- Expected
-+++ Actual
-@@ @@
--'foo'
-+'bar'
-
-%s:%i
-
-6) FailureTest::testAssertTextEqualsText
-message
-Failed asserting that two strings are equal.
---- Expected
-+++ Actual
-@@ @@
- 'foo
--bar
-+baz
- '
-
-%s:%i
-
-7) FailureTest::testAssertStringMatchesFormat
-message
-Failed asserting that format description matches text.
---- Expected
-+++ Actual
-@@ @@
--*%s*
-+**
-
-%s:%i
-
-8) FailureTest::testAssertNumericEqualsNumeric
-message
-Failed asserting that 2 matches expected 1.
-
-%s:%i
-
-9) FailureTest::testAssertTextSameText
-message
-Failed asserting that two strings are identical.
---- Expected
-+++ Actual
-@@ @@
--foo
-+bar
-
-%s:%i
-
-10) FailureTest::testAssertObjectSameObject
-message
-Failed asserting that two variables reference the same object.
-
-%s:%i
-
-11) FailureTest::testAssertObjectSameNull
-message
-Failed asserting that null is identical to an object of class "stdClass".
-
-%s:%i
-
-12) FailureTest::testAssertFloatSameFloat
-message
-Failed asserting that 1.5 is identical to 1.0.
-
-%s:%i
-
-13) FailureTest::testAssertStringMatchesFormatFile
-Failed asserting that format description matches text.
---- Expected
-+++ Actual
-@@ @@
--FOO
--
-+...BAR...
-
-%s:%i
-
-FAILURES!
-Tests: 13, Assertions: 14, Failures: 13.
diff --git a/vendor/phpunit/phpunit/tests/TextUI/failure.phpt b/vendor/phpunit/phpunit/tests/TextUI/failure.phpt
deleted file mode 100644
index 23415e9..0000000
--- a/vendor/phpunit/phpunit/tests/TextUI/failure.phpt
+++ /dev/null
@@ -1,141 +0,0 @@
---TEST--
-phpunit FailureTest ../_files/FailureTest.php
---FILE--
-<?php
-$_SERVER['argv'][1] = '--no-configuration';
-$_SERVER['argv'][2] = 'FailureTest';
-$_SERVER['argv'][3] = dirname(dirname(__FILE__)) . '/_files/FailureTest.php';
-
-require __DIR__ . '/../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-FFFFFFFFFFFFF
-
-Time: %s, Memory: %sMb
-
-There were 13 failures:
-
-1) FailureTest::testAssertArrayEqualsArray
-message
-Failed asserting that two arrays are equal.
---- Expected
-+++ Actual
-@@ @@
- Array (
--    0 => 1
-+    0 => 2
- )
-
-%s:%i
-
-2) FailureTest::testAssertIntegerEqualsInteger
-message
-Failed asserting that 2 matches expected 1.
-
-%s:%i
-
-3) FailureTest::testAssertObjectEqualsObject
-message
-Failed asserting that two objects are equal.
---- Expected
-+++ Actual
-@@ @@
- stdClass Object (
--    'foo' => 'bar'
-+    'bar' => 'foo'
- )
-
-%s:%i
-
-4) FailureTest::testAssertNullEqualsString
-message
-Failed asserting that 'bar' matches expected null.
-
-%s:%i
-
-5) FailureTest::testAssertStringEqualsString
-message
-Failed asserting that two strings are equal.
---- Expected
-+++ Actual
-@@ @@
--'foo'
-+'bar'
-
-%s:%i
-
-6) FailureTest::testAssertTextEqualsText
-message
-Failed asserting that two strings are equal.
---- Expected
-+++ Actual
-@@ @@
- 'foo
--bar
-+baz
- '
-
-%s:%i
-
-7) FailureTest::testAssertStringMatchesFormat
-message
-Failed asserting that format description matches text.
---- Expected
-+++ Actual
-@@ @@
--*%s*
-+**
-
-%s:%i
-
-8) FailureTest::testAssertNumericEqualsNumeric
-message
-Failed asserting that 2 matches expected 1.
-
-%s:%i
-
-9) FailureTest::testAssertTextSameText
-message
-Failed asserting that two strings are identical.
---- Expected
-+++ Actual
-@@ @@
--foo
-+bar
-
-%s:%i
-
-10) FailureTest::testAssertObjectSameObject
-message
-Failed asserting that two variables reference the same object.
-
-%s:%i
-
-11) FailureTest::testAssertObjectSameNull
-message
-Failed asserting that null is identical to an object of class "stdClass".
-
-%s:%i
-
-12) FailureTest::testAssertFloatSameFloat
-message
-Failed asserting that 1.5 is identical to 1.0.
-
-%s:%i
-
-13) FailureTest::testAssertStringMatchesFormatFile
-Failed asserting that format description matches text.
---- Expected
-+++ Actual
-@@ @@
--FOO
--
-+...BAR...
-
-%s:%i
-
-FAILURES!
-Tests: 13, Assertions: 14, Failures: 13.
diff --git a/vendor/phpunit/phpunit/tests/TextUI/fatal-isolation.phpt b/vendor/phpunit/phpunit/tests/TextUI/fatal-isolation.phpt
deleted file mode 100644
index ec7f91a..0000000
--- a/vendor/phpunit/phpunit/tests/TextUI/fatal-isolation.phpt
+++ /dev/null
@@ -1,26 +0,0 @@
---TEST--
-phpunit FatalTest --process-isolation ../_files/FatalTest.php
---FILE--
-<?php
-$_SERVER['argv'][1] = '--no-configuration';
-$_SERVER['argv'][2] = '--process-isolation';
-$_SERVER['argv'][3] = 'FatalTest';
-$_SERVER['argv'][4] = dirname(dirname(__FILE__)) . '/_files/FatalTest.php';
-
-require __DIR__ . '/../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-E
-
-Time: %s, Memory: %sMb
-
-There was 1 error:
-
-1) FatalTest::testFatalError
-%s
-
-FAILURES!
-Tests: 1, Assertions: 0, Errors: 1.
diff --git a/vendor/phpunit/phpunit/tests/TextUI/filter-class-isolation.phpt b/vendor/phpunit/phpunit/tests/TextUI/filter-class-isolation.phpt
deleted file mode 100644
index 31cf060..0000000
--- a/vendor/phpunit/phpunit/tests/TextUI/filter-class-isolation.phpt
+++ /dev/null
@@ -1,22 +0,0 @@
---TEST--
-phpunit --process-isolation --filter BankAccountTest BankAccountTest ../_files/BankAccountTest.php
---FILE--
-<?php
-$_SERVER['argv'][1] = '--no-configuration';
-$_SERVER['argv'][2] = '--process-isolation';
-$_SERVER['argv'][3] = '--filter';
-$_SERVER['argv'][4] = 'BankAccountTest';
-$_SERVER['argv'][5] = 'BankAccountTest';
-$_SERVER['argv'][6] = dirname(__FILE__) . '/../_files/BankAccountTest.php';
-
-require __DIR__ . '/../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-...
-
-Time: %s, Memory: %sMb
-
-OK (3 tests, 3 assertions)
diff --git a/vendor/phpunit/phpunit/tests/TextUI/filter-class.phpt b/vendor/phpunit/phpunit/tests/TextUI/filter-class.phpt
deleted file mode 100644
index 7b3c8dd..0000000
--- a/vendor/phpunit/phpunit/tests/TextUI/filter-class.phpt
+++ /dev/null
@@ -1,21 +0,0 @@
---TEST--
-phpunit --filter BankAccountTest BankAccountTest ../_files/BankAccountTest.php
---FILE--
-<?php
-$_SERVER['argv'][1] = '--no-configuration';
-$_SERVER['argv'][2] = '--filter';
-$_SERVER['argv'][3] = 'BankAccountTest';
-$_SERVER['argv'][4] = 'BankAccountTest';
-$_SERVER['argv'][5] = dirname(__FILE__) . '/../_files/BankAccountTest.php';
-
-require __DIR__ . '/../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-...
-
-Time: %s, Memory: %sMb
-
-OK (3 tests, 3 assertions)
diff --git a/vendor/phpunit/phpunit/tests/TextUI/filter-dataprovider-by-classname-and-range-isolation.phpt b/vendor/phpunit/phpunit/tests/TextUI/filter-dataprovider-by-classname-and-range-isolation.phpt
deleted file mode 100644
index f90a691..0000000
--- a/vendor/phpunit/phpunit/tests/TextUI/filter-dataprovider-by-classname-and-range-isolation.phpt
+++ /dev/null
@@ -1,22 +0,0 @@
---TEST--
-phpunit --process-isolation --filter DataProviderFilterTest#1-3 DataProviderFilterTest ../_files/DataProviderFilterTest.php
---FILE--
-<?php
-$_SERVER['argv'][1] = '--no-configuration';
-$_SERVER['argv'][2] = '--process-isolation';
-$_SERVER['argv'][3] = '--filter';
-$_SERVER['argv'][4] = 'DataProviderFilterTest#1-3';
-$_SERVER['argv'][5] = 'DataProviderFilterTest';
-$_SERVER['argv'][6] = dirname(__FILE__) . '/../_files/DataProviderFilterTest.php';
-
-require __DIR__ . '/../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-...
-
-Time: %s, Memory: %sMb
-
-OK (3 tests, 3 assertions)
diff --git a/vendor/phpunit/phpunit/tests/TextUI/filter-dataprovider-by-classname-and-range.phpt b/vendor/phpunit/phpunit/tests/TextUI/filter-dataprovider-by-classname-and-range.phpt
deleted file mode 100644
index 9c1e689..0000000
--- a/vendor/phpunit/phpunit/tests/TextUI/filter-dataprovider-by-classname-and-range.phpt
+++ /dev/null
@@ -1,21 +0,0 @@
---TEST--
-phpunit --filter DataProviderFilterTest#1-3 DataProviderFilterTest ../_files/DataProviderFilterTest.php
---FILE--
-<?php
-$_SERVER['argv'][1] = '--no-configuration';
-$_SERVER['argv'][2] = '--filter';
-$_SERVER['argv'][3] = 'DataProviderFilterTest#1-3';
-$_SERVER['argv'][4] = 'DataProviderFilterTest';
-$_SERVER['argv'][5] = dirname(__FILE__) . '/../_files/DataProviderFilterTest.php';
-
-require __DIR__ . '/../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-...
-
-Time: %s, Memory: %sMb
-
-OK (3 tests, 3 assertions)
diff --git a/vendor/phpunit/phpunit/tests/TextUI/filter-dataprovider-by-number-isolation.phpt b/vendor/phpunit/phpunit/tests/TextUI/filter-dataprovider-by-number-isolation.phpt
deleted file mode 100644
index 0d2ea77..0000000
--- a/vendor/phpunit/phpunit/tests/TextUI/filter-dataprovider-by-number-isolation.phpt
+++ /dev/null
@@ -1,22 +0,0 @@
---TEST--
-phpunit --process-isolation --filter testTrue#3 DataProviderFilterTest ../_files/DataProviderFilterTest.php
---FILE--
-<?php
-$_SERVER['argv'][1] = '--no-configuration';
-$_SERVER['argv'][2] = '--process-isolation';
-$_SERVER['argv'][3] = '--filter';
-$_SERVER['argv'][4] = 'testTrue#3';
-$_SERVER['argv'][5] = 'DataProviderFilterTest';
-$_SERVER['argv'][6] = dirname(__FILE__) . '/../_files/DataProviderFilterTest.php';
-
-require __DIR__ . '/../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-.
-
-Time: %s, Memory: %sMb
-
-OK (1 test, 1 assertion)
diff --git a/vendor/phpunit/phpunit/tests/TextUI/filter-dataprovider-by-number.phpt b/vendor/phpunit/phpunit/tests/TextUI/filter-dataprovider-by-number.phpt
deleted file mode 100644
index 79bf643..0000000
--- a/vendor/phpunit/phpunit/tests/TextUI/filter-dataprovider-by-number.phpt
+++ /dev/null
@@ -1,21 +0,0 @@
---TEST--
-phpunit --filter testTrue#3 DataProviderFilterTest ../_files/DataProviderFilterTest.php
---FILE--
-<?php
-$_SERVER['argv'][1] = '--no-configuration';
-$_SERVER['argv'][2] = '--filter';
-$_SERVER['argv'][3] = 'testTrue#3';
-$_SERVER['argv'][4] = 'DataProviderFilterTest';
-$_SERVER['argv'][5] = dirname(__FILE__) . '/../_files/DataProviderFilterTest.php';
-
-require __DIR__ . '/../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-.
-
-Time: %s, Memory: %sMb
-
-OK (1 test, 1 assertion)
diff --git a/vendor/phpunit/phpunit/tests/TextUI/filter-dataprovider-by-only-range-isolation.phpt b/vendor/phpunit/phpunit/tests/TextUI/filter-dataprovider-by-only-range-isolation.phpt
deleted file mode 100644
index 2dfdd0c..0000000
--- a/vendor/phpunit/phpunit/tests/TextUI/filter-dataprovider-by-only-range-isolation.phpt
+++ /dev/null
@@ -1,22 +0,0 @@
---TEST--
-phpunit --process-isolation --filter \#1-3 DataProviderFilterTest ../_files/DataProviderFilterTest.php
---FILE--
-<?php
-$_SERVER['argv'][1] = '--no-configuration';
-$_SERVER['argv'][2] = '--process-isolation';
-$_SERVER['argv'][3] = '--filter';
-$_SERVER['argv'][4] = '#1-3';
-$_SERVER['argv'][5] = 'DataProviderFilterTest';
-$_SERVER['argv'][6] = dirname(__FILE__) . '/../_files/DataProviderFilterTest.php';
-
-require __DIR__ . '/../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-...
-
-Time: %s, Memory: %sMb
-
-OK (3 tests, 3 assertions)
diff --git a/vendor/phpunit/phpunit/tests/TextUI/filter-dataprovider-by-only-range.phpt b/vendor/phpunit/phpunit/tests/TextUI/filter-dataprovider-by-only-range.phpt
deleted file mode 100644
index c3d344c..0000000
--- a/vendor/phpunit/phpunit/tests/TextUI/filter-dataprovider-by-only-range.phpt
+++ /dev/null
@@ -1,21 +0,0 @@
---TEST--
-phpunit --filter \#1-3 DataProviderFilterTest ../_files/DataProviderFilterTest.php
---FILE--
-<?php
-$_SERVER['argv'][1] = '--no-configuration';
-$_SERVER['argv'][2] = '--filter';
-$_SERVER['argv'][3] = '#1-3';
-$_SERVER['argv'][4] = 'DataProviderFilterTest';
-$_SERVER['argv'][5] = dirname(__FILE__) . '/../_files/DataProviderFilterTest.php';
-
-require __DIR__ . '/../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-...
-
-Time: %s, Memory: %sMb
-
-OK (3 tests, 3 assertions)
diff --git a/vendor/phpunit/phpunit/tests/TextUI/filter-dataprovider-by-only-regexp-isolation.phpt b/vendor/phpunit/phpunit/tests/TextUI/filter-dataprovider-by-only-regexp-isolation.phpt
deleted file mode 100644
index d109cfb..0000000
--- a/vendor/phpunit/phpunit/tests/TextUI/filter-dataprovider-by-only-regexp-isolation.phpt
+++ /dev/null
@@ -1,22 +0,0 @@
---TEST--
-phpunit --process-isolation --filter @false.* DataProviderFilterTest ../_files/DataProviderFilterTest.php
---FILE--
-<?php
-$_SERVER['argv'][1] = '--no-configuration';
-$_SERVER['argv'][2] = '--process-isolation';
-$_SERVER['argv'][3] = '--filter';
-$_SERVER['argv'][4] = '@false.*';
-$_SERVER['argv'][5] = 'DataProviderFilterTest';
-$_SERVER['argv'][6] = dirname(__FILE__) . '/../_files/DataProviderFilterTest.php';
-
-require __DIR__ . '/../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-..
-
-Time: %s, Memory: %sMb
-
-OK (2 tests, 2 assertions)
diff --git a/vendor/phpunit/phpunit/tests/TextUI/filter-dataprovider-by-only-regexp.phpt b/vendor/phpunit/phpunit/tests/TextUI/filter-dataprovider-by-only-regexp.phpt
deleted file mode 100644
index d87b304..0000000
--- a/vendor/phpunit/phpunit/tests/TextUI/filter-dataprovider-by-only-regexp.phpt
+++ /dev/null
@@ -1,21 +0,0 @@
---TEST--
-phpunit --filter @false.* DataProviderFilterTest ../_files/DataProviderFilterTest.php
---FILE--
-<?php
-$_SERVER['argv'][1] = '--no-configuration';
-$_SERVER['argv'][2] = '--filter';
-$_SERVER['argv'][3] = '@false.*';
-$_SERVER['argv'][4] = 'DataProviderFilterTest';
-$_SERVER['argv'][5] = dirname(__FILE__) . '/../_files/DataProviderFilterTest.php';
-
-require __DIR__ . '/../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-..
-
-Time: %s, Memory: %sMb
-
-OK (2 tests, 2 assertions)
diff --git a/vendor/phpunit/phpunit/tests/TextUI/filter-dataprovider-by-only-string-isolation.phpt b/vendor/phpunit/phpunit/tests/TextUI/filter-dataprovider-by-only-string-isolation.phpt
deleted file mode 100644
index 07c4002..0000000
--- a/vendor/phpunit/phpunit/tests/TextUI/filter-dataprovider-by-only-string-isolation.phpt
+++ /dev/null
@@ -1,22 +0,0 @@
---TEST--
-phpunit --process-isolation --filter @false\ test DataProviderFilterTest ../_files/DataProviderFilterTest.php
---FILE--
-<?php
-$_SERVER['argv'][1] = '--no-configuration';
-$_SERVER['argv'][2] = '--process-isolation';
-$_SERVER['argv'][3] = '--filter';
-$_SERVER['argv'][4] = '@false test';
-$_SERVER['argv'][5] = 'DataProviderFilterTest';
-$_SERVER['argv'][6] = dirname(__FILE__) . '/../_files/DataProviderFilterTest.php';
-
-require __DIR__ . '/../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-.
-
-Time: %s, Memory: %sMb
-
-OK (1 test, 1 assertion)
diff --git a/vendor/phpunit/phpunit/tests/TextUI/filter-dataprovider-by-only-string.phpt b/vendor/phpunit/phpunit/tests/TextUI/filter-dataprovider-by-only-string.phpt
deleted file mode 100644
index 0cf91eb..0000000
--- a/vendor/phpunit/phpunit/tests/TextUI/filter-dataprovider-by-only-string.phpt
+++ /dev/null
@@ -1,21 +0,0 @@
---TEST--
-phpunit --filter @false\ test DataProviderFilterTest ../_files/DataProviderFilterTest.php
---FILE--
-<?php
-$_SERVER['argv'][1] = '--no-configuration';
-$_SERVER['argv'][2] = '--filter';
-$_SERVER['argv'][3] = '@false test';
-$_SERVER['argv'][4] = 'DataProviderFilterTest';
-$_SERVER['argv'][5] = dirname(__FILE__) . '/../_files/DataProviderFilterTest.php';
-
-require __DIR__ . '/../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-.
-
-Time: %s, Memory: %sMb
-
-OK (1 test, 1 assertion)
diff --git a/vendor/phpunit/phpunit/tests/TextUI/filter-dataprovider-by-range-isolation.phpt b/vendor/phpunit/phpunit/tests/TextUI/filter-dataprovider-by-range-isolation.phpt
deleted file mode 100644
index 2231b4d..0000000
--- a/vendor/phpunit/phpunit/tests/TextUI/filter-dataprovider-by-range-isolation.phpt
+++ /dev/null
@@ -1,22 +0,0 @@
---TEST--
-phpunit --process-isolation --filter testTrue#1-3 DataProviderFilterTest ../_files/DataProviderFilterTest.php
---FILE--
-<?php
-$_SERVER['argv'][1] = '--no-configuration';
-$_SERVER['argv'][2] = '--process-isolation';
-$_SERVER['argv'][3] = '--filter';
-$_SERVER['argv'][4] = 'testTrue#1-3';
-$_SERVER['argv'][5] = 'DataProviderFilterTest';
-$_SERVER['argv'][6] = dirname(__FILE__) . '/../_files/DataProviderFilterTest.php';
-
-require __DIR__ . '/../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-...
-
-Time: %s, Memory: %sMb
-
-OK (3 tests, 3 assertions)
diff --git a/vendor/phpunit/phpunit/tests/TextUI/filter-dataprovider-by-range.phpt b/vendor/phpunit/phpunit/tests/TextUI/filter-dataprovider-by-range.phpt
deleted file mode 100644
index 2f2aa1d..0000000
--- a/vendor/phpunit/phpunit/tests/TextUI/filter-dataprovider-by-range.phpt
+++ /dev/null
@@ -1,21 +0,0 @@
---TEST--
-phpunit --filter testTrue#1-3 DataProviderFilterTest ../_files/DataProviderFilterTest.php
---FILE--
-<?php
-$_SERVER['argv'][1] = '--no-configuration';
-$_SERVER['argv'][2] = '--filter';
-$_SERVER['argv'][3] = 'testTrue#1-3';
-$_SERVER['argv'][4] = 'DataProviderFilterTest';
-$_SERVER['argv'][5] = dirname(__FILE__) . '/../_files/DataProviderFilterTest.php';
-
-require __DIR__ . '/../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-...
-
-Time: %s, Memory: %sMb
-
-OK (3 tests, 3 assertions)
diff --git a/vendor/phpunit/phpunit/tests/TextUI/filter-dataprovider-by-regexp-isolation.phpt b/vendor/phpunit/phpunit/tests/TextUI/filter-dataprovider-by-regexp-isolation.phpt
deleted file mode 100644
index 3a46c51..0000000
--- a/vendor/phpunit/phpunit/tests/TextUI/filter-dataprovider-by-regexp-isolation.phpt
+++ /dev/null
@@ -1,22 +0,0 @@
---TEST--
-phpunit --process-isolation --filter testFalse@false.* DataProviderFilterTest ../_files/DataProviderFilterTest.php
---FILE--
-<?php
-$_SERVER['argv'][1] = '--no-configuration';
-$_SERVER['argv'][2] = '--process-isolation';
-$_SERVER['argv'][3] = '--filter';
-$_SERVER['argv'][4] = 'testFalse@false.*';
-$_SERVER['argv'][5] = 'DataProviderFilterTest';
-$_SERVER['argv'][6] = dirname(__FILE__) . '/../_files/DataProviderFilterTest.php';
-
-require __DIR__ . '/../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-..
-
-Time: %s, Memory: %sMb
-
-OK (2 tests, 2 assertions)
diff --git a/vendor/phpunit/phpunit/tests/TextUI/filter-dataprovider-by-regexp.phpt b/vendor/phpunit/phpunit/tests/TextUI/filter-dataprovider-by-regexp.phpt
deleted file mode 100644
index fdbd8bd..0000000
--- a/vendor/phpunit/phpunit/tests/TextUI/filter-dataprovider-by-regexp.phpt
+++ /dev/null
@@ -1,21 +0,0 @@
---TEST--
-phpunit --filter testFalse@false.* DataProviderFilterTest ../_files/DataProviderFilterTest.php
---FILE--
-<?php
-$_SERVER['argv'][1] = '--no-configuration';
-$_SERVER['argv'][2] = '--filter';
-$_SERVER['argv'][3] = 'testFalse@false.*';
-$_SERVER['argv'][4] = 'DataProviderFilterTest';
-$_SERVER['argv'][5] = dirname(__FILE__) . '/../_files/DataProviderFilterTest.php';
-
-require __DIR__ . '/../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-..
-
-Time: %s, Memory: %sMb
-
-OK (2 tests, 2 assertions)
diff --git a/vendor/phpunit/phpunit/tests/TextUI/filter-dataprovider-by-string-isolation.phpt b/vendor/phpunit/phpunit/tests/TextUI/filter-dataprovider-by-string-isolation.phpt
deleted file mode 100644
index d91ca73..0000000
--- a/vendor/phpunit/phpunit/tests/TextUI/filter-dataprovider-by-string-isolation.phpt
+++ /dev/null
@@ -1,22 +0,0 @@
---TEST--
-phpunit --process-isolation --filter testFalse@false\ test DataProviderFilterTest ../_files/DataProviderFilterTest.php
---FILE--
-<?php
-$_SERVER['argv'][1] = '--no-configuration';
-$_SERVER['argv'][2] = '--process-isolation';
-$_SERVER['argv'][3] = '--filter';
-$_SERVER['argv'][4] = 'testFalse@false test';
-$_SERVER['argv'][5] = 'DataProviderFilterTest';
-$_SERVER['argv'][6] = dirname(__FILE__) . '/../_files/DataProviderFilterTest.php';
-
-require __DIR__ . '/../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-.
-
-Time: %s, Memory: %sMb
-
-OK (1 test, 1 assertion)
diff --git a/vendor/phpunit/phpunit/tests/TextUI/filter-dataprovider-by-string.phpt b/vendor/phpunit/phpunit/tests/TextUI/filter-dataprovider-by-string.phpt
deleted file mode 100644
index eb3e6af..0000000
--- a/vendor/phpunit/phpunit/tests/TextUI/filter-dataprovider-by-string.phpt
+++ /dev/null
@@ -1,21 +0,0 @@
---TEST--
-phpunit --filter testFalse@false\ test DataProviderFilterTest ../_files/DataProviderFilterTest.php
---FILE--
-<?php
-$_SERVER['argv'][1] = '--no-configuration';
-$_SERVER['argv'][2] = '--filter';
-$_SERVER['argv'][3] = 'testFalse@false test';
-$_SERVER['argv'][4] = 'DataProviderFilterTest';
-$_SERVER['argv'][5] = dirname(__FILE__) . '/../_files/DataProviderFilterTest.php';
-
-require __DIR__ . '/../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-.
-
-Time: %s, Memory: %sMb
-
-OK (1 test, 1 assertion)
diff --git a/vendor/phpunit/phpunit/tests/TextUI/filter-method-case-insensitive.phpt b/vendor/phpunit/phpunit/tests/TextUI/filter-method-case-insensitive.phpt
deleted file mode 100644
index 55519a1..0000000
--- a/vendor/phpunit/phpunit/tests/TextUI/filter-method-case-insensitive.phpt
+++ /dev/null
@@ -1,21 +0,0 @@
---TEST--
-phpunit --filter /balanceIsInitiallyZero/i BankAccountTest ../_files/BankAccountTest.php
---FILE--
-<?php
-$_SERVER['argv'][1] = '--no-configuration';
-$_SERVER['argv'][2] = '--filter';
-$_SERVER['argv'][3] = '/balanceIsInitiallyZero/i';
-$_SERVER['argv'][4] = 'BankAccountTest';
-$_SERVER['argv'][5] = dirname(__FILE__) . '/../_files/BankAccountTest.php';
-
-require __DIR__ . '/../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-.
-
-Time: %s, Memory: %sMb
-
-OK (1 test, 1 assertion)
diff --git a/vendor/phpunit/phpunit/tests/TextUI/filter-method-case-sensitive-no-result.phpt b/vendor/phpunit/phpunit/tests/TextUI/filter-method-case-sensitive-no-result.phpt
deleted file mode 100644
index 0551054..0000000
--- a/vendor/phpunit/phpunit/tests/TextUI/filter-method-case-sensitive-no-result.phpt
+++ /dev/null
@@ -1,21 +0,0 @@
---TEST--
-phpunit --filter balanceIsInitiallyZero BankAccountTest ../_files/BankAccountTest.php
---FILE--
-<?php
-$_SERVER['argv'][1] = '--no-configuration';
-$_SERVER['argv'][2] = '--filter';
-$_SERVER['argv'][3] = '/balanceIsInitiallyZero/';
-$_SERVER['argv'][4] = 'BankAccountTest';
-$_SERVER['argv'][5] = dirname(__FILE__) . '/../_files/BankAccountTest.php';
-
-require __DIR__ . '/../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-
-
-Time: %s, Memory: %sMb
-
-No tests executed!
diff --git a/vendor/phpunit/phpunit/tests/TextUI/filter-method-isolation.phpt b/vendor/phpunit/phpunit/tests/TextUI/filter-method-isolation.phpt
deleted file mode 100644
index 9cd16ef..0000000
--- a/vendor/phpunit/phpunit/tests/TextUI/filter-method-isolation.phpt
+++ /dev/null
@@ -1,22 +0,0 @@
---TEST--
-phpunit --process-isolation --filter testBalanceIsInitiallyZero BankAccountTest ../_files/BankAccountTest.php
---FILE--
-<?php
-$_SERVER['argv'][1] = '--no-configuration';
-$_SERVER['argv'][2] = '--process-isolation';
-$_SERVER['argv'][3] = '--filter';
-$_SERVER['argv'][4] = 'testBalanceIsInitiallyZero';
-$_SERVER['argv'][5] = 'BankAccountTest';
-$_SERVER['argv'][6] = dirname(__FILE__) . '/../_files/BankAccountTest.php';
-
-require __DIR__ . '/../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-.
-
-Time: %s, Memory: %sMb
-
-OK (1 test, 1 assertion)
diff --git a/vendor/phpunit/phpunit/tests/TextUI/filter-method.phpt b/vendor/phpunit/phpunit/tests/TextUI/filter-method.phpt
deleted file mode 100644
index 9f5b01c..0000000
--- a/vendor/phpunit/phpunit/tests/TextUI/filter-method.phpt
+++ /dev/null
@@ -1,21 +0,0 @@
---TEST--
-phpunit --filter testBalanceIsInitiallyZero BankAccountTest ../_files/BankAccountTest.php
---FILE--
-<?php
-$_SERVER['argv'][1] = '--no-configuration';
-$_SERVER['argv'][2] = '--filter';
-$_SERVER['argv'][3] = 'testBalanceIsInitiallyZero';
-$_SERVER['argv'][4] = 'BankAccountTest';
-$_SERVER['argv'][5] = dirname(__FILE__) . '/../_files/BankAccountTest.php';
-
-require __DIR__ . '/../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-.
-
-Time: %s, Memory: %sMb
-
-OK (1 test, 1 assertion)
diff --git a/vendor/phpunit/phpunit/tests/TextUI/filter-no-results.phpt b/vendor/phpunit/phpunit/tests/TextUI/filter-no-results.phpt
deleted file mode 100644
index a2720c8..0000000
--- a/vendor/phpunit/phpunit/tests/TextUI/filter-no-results.phpt
+++ /dev/null
@@ -1,21 +0,0 @@
---TEST--
-phpunit --filter doesNotExist BankAccountTest ../_files/BankAccountTest.php
---FILE--
-<?php
-$_SERVER['argv'][1] = '--no-configuration';
-$_SERVER['argv'][2] = '--filter';
-$_SERVER['argv'][3] = 'doesNotExist';
-$_SERVER['argv'][4] = 'BankAccountTest';
-$_SERVER['argv'][5] = dirname(__FILE__) . '/../_files/BankAccountTest.php';
-
-require __DIR__ . '/../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-
-
-Time: %s, Memory: %sMb
-
-No tests executed!
diff --git a/vendor/phpunit/phpunit/tests/TextUI/group-isolation.phpt b/vendor/phpunit/phpunit/tests/TextUI/group-isolation.phpt
deleted file mode 100644
index 9fc0d02..0000000
--- a/vendor/phpunit/phpunit/tests/TextUI/group-isolation.phpt
+++ /dev/null
@@ -1,22 +0,0 @@
---TEST--
-phpunit --process-isolation --group balanceIsInitiallyZero BankAccountTest ../_files/BankAccountTest.php
---FILE--
-<?php
-$_SERVER['argv'][1] = '--no-configuration';
-$_SERVER['argv'][2] = '--process-isolation';
-$_SERVER['argv'][3] = '--group';
-$_SERVER['argv'][4] = 'balanceIsInitiallyZero';
-$_SERVER['argv'][5] = 'BankAccountTest';
-$_SERVER['argv'][6] = dirname(__FILE__) . '/../_files/BankAccountTest.php';
-
-require __DIR__ . '/../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-.
-
-Time: %s, Memory: %sMb
-
-OK (1 test, 1 assertion)
diff --git a/vendor/phpunit/phpunit/tests/TextUI/group.phpt b/vendor/phpunit/phpunit/tests/TextUI/group.phpt
deleted file mode 100644
index 858456b..0000000
--- a/vendor/phpunit/phpunit/tests/TextUI/group.phpt
+++ /dev/null
@@ -1,21 +0,0 @@
---TEST--
-phpunit --group balanceIsInitiallyZero BankAccountTest ../_files/BankAccountTest.php
---FILE--
-<?php
-$_SERVER['argv'][1] = '--no-configuration';
-$_SERVER['argv'][2] = '--group';
-$_SERVER['argv'][3] = 'balanceIsInitiallyZero';
-$_SERVER['argv'][4] = 'BankAccountTest';
-$_SERVER['argv'][5] = dirname(__FILE__) . '/../_files/BankAccountTest.php';
-
-require __DIR__ . '/../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-.
-
-Time: %s, Memory: %sMb
-
-OK (1 test, 1 assertion)
diff --git a/vendor/phpunit/phpunit/tests/TextUI/help.phpt b/vendor/phpunit/phpunit/tests/TextUI/help.phpt
deleted file mode 100644
index c56cbe3..0000000
--- a/vendor/phpunit/phpunit/tests/TextUI/help.phpt
+++ /dev/null
@@ -1,87 +0,0 @@
---TEST--
-phpunit
---FILE--
-<?php
-$_SERVER['argv'][1] = '--no-configuration';
-
-require __DIR__ . '/../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-Usage: phpunit [options] UnitTest [UnitTest.php]
-       phpunit [options] <directory>
-
-Code Coverage Options:
-
-  --coverage-clover <file>  Generate code coverage report in Clover XML format.
-  --coverage-crap4j <file>  Generate code coverage report in Crap4J XML format.
-  --coverage-html <dir>     Generate code coverage report in HTML format.
-  --coverage-php <file>     Export PHP_CodeCoverage object to file.
-  --coverage-text=<file>    Generate code coverage report in text format.
-                            Default: Standard output.
-  --coverage-xml <dir>      Generate code coverage report in PHPUnit XML format.
-
-Logging Options:
-
-  --log-junit <file>        Log test execution in JUnit XML format to file.
-  --log-tap <file>          Log test execution in TAP format to file.
-  --log-json <file>         Log test execution in JSON format.
-  --testdox-html <file>     Write agile documentation in HTML format to file.
-  --testdox-text <file>     Write agile documentation in Text format to file.
-
-Test Selection Options:
-
-  --filter <pattern>        Filter which tests to run.
-  --testsuite <pattern>     Filter which testsuite to run.
-  --group ...               Only runs tests from the specified group(s).
-  --exclude-group ...       Exclude tests from the specified group(s).
-  --list-groups             List available test groups.
-  --test-suffix ...         Only search for test in files with specified
-                            suffix(es). Default: Test.php,.phpt
-
-Test Execution Options:
-
-  --report-useless-tests    Be strict about tests that do not test anything.
-  --strict-coverage         Be strict about unintentionally covered code.
-  --strict-global-state     Be strict about changes to global state
-  --disallow-test-output    Be strict about output during tests.
-  --enforce-time-limit      Enforce time limit based on test size.
-  --disallow-todo-tests     Disallow @todo-annotated tests.
-
-  --process-isolation       Run each test in a separate PHP process.
-  --no-globals-backup       Do not backup and restore $GLOBALS for each test.
-  --static-backup           Backup and restore static attributes for each test.
-
-  --colors=<flag>           Use colors in output ("never", "auto" or "always").
-  --columns <n>             Number of columns to use for progress output.
-  --columns max             Use maximum number of columns for progress output.
-  --stderr                  Write to STDERR instead of STDOUT.
-  --stop-on-error           Stop execution upon first error.
-  --stop-on-failure         Stop execution upon first error or failure.
-  --stop-on-risky           Stop execution upon first risky test.
-  --stop-on-skipped         Stop execution upon first skipped test.
-  --stop-on-incomplete      Stop execution upon first incomplete test.
-  -v|--verbose              Output more verbose information.
-  --debug                   Display debugging information during test execution.
-
-  --loader <loader>         TestSuiteLoader implementation to use.
-  --repeat <times>          Runs the test(s) repeatedly.
-  --tap                     Report test execution progress in TAP format.
-  --testdox                 Report test execution progress in TestDox format.
-  --printer <printer>       TestListener implementation to use.
-
-Configuration Options:
-
-  --bootstrap <file>        A "bootstrap" PHP file that is run before the tests.
-  -c|--configuration <file> Read configuration from XML file.
-  --no-configuration        Ignore default configuration file (phpunit.xml).
-  --no-coverage             Ignore code coverage configuration.
-  --include-path <path(s)>  Prepend PHP's include_path with given path(s).
-  -d key[=value]            Sets a php.ini value.
-
-Miscellaneous Options:
-
-  -h|--help                 Prints this usage information.
-  --version                 Prints the version and exits.
diff --git a/vendor/phpunit/phpunit/tests/TextUI/help2.phpt b/vendor/phpunit/phpunit/tests/TextUI/help2.phpt
deleted file mode 100644
index 97d69db..0000000
--- a/vendor/phpunit/phpunit/tests/TextUI/help2.phpt
+++ /dev/null
@@ -1,88 +0,0 @@
---TEST--
-phpunit --help
---FILE--
-<?php
-$_SERVER['argv'][1] = '--no-configuration';
-$_SERVER['argv'][2] = '--help';
-
-require __DIR__ . '/../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-Usage: phpunit [options] UnitTest [UnitTest.php]
-       phpunit [options] <directory>
-
-Code Coverage Options:
-
-  --coverage-clover <file>  Generate code coverage report in Clover XML format.
-  --coverage-crap4j <file>  Generate code coverage report in Crap4J XML format.
-  --coverage-html <dir>     Generate code coverage report in HTML format.
-  --coverage-php <file>     Export PHP_CodeCoverage object to file.
-  --coverage-text=<file>    Generate code coverage report in text format.
-                            Default: Standard output.
-  --coverage-xml <dir>      Generate code coverage report in PHPUnit XML format.
-
-Logging Options:
-
-  --log-junit <file>        Log test execution in JUnit XML format to file.
-  --log-tap <file>          Log test execution in TAP format to file.
-  --log-json <file>         Log test execution in JSON format.
-  --testdox-html <file>     Write agile documentation in HTML format to file.
-  --testdox-text <file>     Write agile documentation in Text format to file.
-
-Test Selection Options:
-
-  --filter <pattern>        Filter which tests to run.
-  --testsuite <pattern>     Filter which testsuite to run.
-  --group ...               Only runs tests from the specified group(s).
-  --exclude-group ...       Exclude tests from the specified group(s).
-  --list-groups             List available test groups.
-  --test-suffix ...         Only search for test in files with specified
-                            suffix(es). Default: Test.php,.phpt
-
-Test Execution Options:
-
-  --report-useless-tests    Be strict about tests that do not test anything.
-  --strict-coverage         Be strict about unintentionally covered code.
-  --strict-global-state     Be strict about changes to global state
-  --disallow-test-output    Be strict about output during tests.
-  --enforce-time-limit      Enforce time limit based on test size.
-  --disallow-todo-tests     Disallow @todo-annotated tests.
-
-  --process-isolation       Run each test in a separate PHP process.
-  --no-globals-backup       Do not backup and restore $GLOBALS for each test.
-  --static-backup           Backup and restore static attributes for each test.
-
-  --colors=<flag>           Use colors in output ("never", "auto" or "always").
-  --columns <n>             Number of columns to use for progress output.
-  --columns max             Use maximum number of columns for progress output.
-  --stderr                  Write to STDERR instead of STDOUT.
-  --stop-on-error           Stop execution upon first error.
-  --stop-on-failure         Stop execution upon first error or failure.
-  --stop-on-risky           Stop execution upon first risky test.
-  --stop-on-skipped         Stop execution upon first skipped test.
-  --stop-on-incomplete      Stop execution upon first incomplete test.
-  -v|--verbose              Output more verbose information.
-  --debug                   Display debugging information during test execution.
-
-  --loader <loader>         TestSuiteLoader implementation to use.
-  --repeat <times>          Runs the test(s) repeatedly.
-  --tap                     Report test execution progress in TAP format.
-  --testdox                 Report test execution progress in TestDox format.
-  --printer <printer>       TestListener implementation to use.
-
-Configuration Options:
-
-  --bootstrap <file>        A "bootstrap" PHP file that is run before the tests.
-  -c|--configuration <file> Read configuration from XML file.
-  --no-configuration        Ignore default configuration file (phpunit.xml).
-  --no-coverage             Ignore code coverage configuration.
-  --include-path <path(s)>  Prepend PHP's include_path with given path(s).
-  -d key[=value]            Sets a php.ini value.
-
-Miscellaneous Options:
-
-  -h|--help                 Prints this usage information.
-  --version                 Prints the version and exits.
diff --git a/vendor/phpunit/phpunit/tests/TextUI/ini-isolation.phpt b/vendor/phpunit/phpunit/tests/TextUI/ini-isolation.phpt
deleted file mode 100644
index ee002df..0000000
--- a/vendor/phpunit/phpunit/tests/TextUI/ini-isolation.phpt
+++ /dev/null
@@ -1,22 +0,0 @@
---TEST--
-phpunit --process-isolation -d default_mimetype=application/x-test IniTest ../_files/IniTest.php
---FILE--
-<?php
-$_SERVER['argv'][1] = '--no-configuration';
-$_SERVER['argv'][2] = '--process-isolation';
-$_SERVER['argv'][3] = '-d';
-$_SERVER['argv'][4] = 'default_mimetype=application/x-test';
-$_SERVER['argv'][5] = 'IniTest';
-$_SERVER['argv'][6] = dirname(dirname(__FILE__)) . '/_files/IniTest.php';
-
-require __DIR__ . '/../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-.
-
-Time: %s, Memory: %sMb
-
-OK (1 test, 1 assertion)
diff --git a/vendor/phpunit/phpunit/tests/TextUI/list-groups.phpt b/vendor/phpunit/phpunit/tests/TextUI/list-groups.phpt
deleted file mode 100644
index fba9868..0000000
--- a/vendor/phpunit/phpunit/tests/TextUI/list-groups.phpt
+++ /dev/null
@@ -1,19 +0,0 @@
---TEST--
-phpunit --list-groups BankAccountTest ../_files/BankAccountTest.php
---FILE--
-<?php
-$_SERVER['argv'][1] = '--no-configuration';
-$_SERVER['argv'][2] = '--list-groups';
-$_SERVER['argv'][3] = 'BankAccountTest';
-$_SERVER['argv'][4] = dirname(__FILE__) . '/../_files/BankAccountTest.php';
-
-require __DIR__ . '/../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-Available test group(s):
- - balanceCannotBecomeNegative
- - balanceIsInitiallyZero
- - specification
diff --git a/vendor/phpunit/phpunit/tests/TextUI/log-json-no-pretty-print.phpt b/vendor/phpunit/phpunit/tests/TextUI/log-json-no-pretty-print.phpt
deleted file mode 100644
index b2b4ae8..0000000
--- a/vendor/phpunit/phpunit/tests/TextUI/log-json-no-pretty-print.phpt
+++ /dev/null
@@ -1,27 +0,0 @@
---TEST--
-phpunit --log-json php://stdout BankAccountTest ../_files/BankAccountTest.php
---SKIPIF--
-<?php
-if (defined('JSON_PRETTY_PRINT')) {
-    print 'skip: PHP without JSON_PRETTY_PRINT is required';
-}
-?>
---FILE--
-<?php
-$_SERVER['argv'][1] = '--no-configuration';
-$_SERVER['argv'][2] = '--log-json';
-$_SERVER['argv'][3] = 'php://stdout';
-$_SERVER['argv'][4] = 'BankAccountTest';
-$_SERVER['argv'][5] = dirname(__FILE__) . '/../_files/BankAccountTest.php';
-
-require __DIR__ . '/../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-{"event":"suiteStart","suite":"BankAccountTest","tests":3}{"event":"testStart","suite":"BankAccountTest","test":"BankAccountTest::testBalanceIsInitiallyZero"}.{"event":"test","suite":"BankAccountTest","test":"BankAccountTest::testBalanceIsInitiallyZero","status":"pass","time":%f,"trace":[],"message":"","output":""}{"event":"testStart","suite":"BankAccountTest","test":"BankAccountTest::testBalanceCannotBecomeNegative"}.{"event":"test","suite":"BankAccountTest","test":"BankAccountTest::testBalanceCannotBecomeNegative","status":"pass","time":%f,"trace":[],"message":"","output":""}{"event":"testStart","suite":"BankAccountTest","test":"BankAccountTest::testBalanceCannotBecomeNegative2"}.{"event":"test","suite":"BankAccountTest","test":"BankAccountTest::testBalanceCannotBecomeNegative2","status":"pass","time":%f,"trace":[],"message":"","output":""}
-
-Time: %s, Memory: %sMb
-
-OK (3 tests, 3 assertions)
diff --git a/vendor/phpunit/phpunit/tests/TextUI/log-json-post-66021.phpt b/vendor/phpunit/phpunit/tests/TextUI/log-json-post-66021.phpt
deleted file mode 100644
index 9a85314..0000000
--- a/vendor/phpunit/phpunit/tests/TextUI/log-json-post-66021.phpt
+++ /dev/null
@@ -1,72 +0,0 @@
---TEST--
-phpunit --log-json php://stdout BankAccountTest ../_files/BankAccountTest.php
---SKIPIF--
-<?php
-if (!defined('JSON_PRETTY_PRINT')) {
-    print 'skip: JSON_PRETTY_PRINT is required';
-} else if (json_encode(array(), JSON_PRETTY_PRINT) != '[]') {
-    print 'skip: Does not have PHP #66021 (Blank line inside empty JSON array/object)';
-}
-?>
---FILE--
-<?php
-$_SERVER['argv'][1] = '--no-configuration';
-$_SERVER['argv'][2] = '--log-json';
-$_SERVER['argv'][3] = 'php://stdout';
-$_SERVER['argv'][4] = 'BankAccountTest';
-$_SERVER['argv'][5] = dirname(__FILE__) . '/../_files/BankAccountTest.php';
-
-require __DIR__ . '/../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-{
-    "event": "suiteStart",
-    "suite": "BankAccountTest",
-    "tests": 3
-}{
-    "event": "testStart",
-    "suite": "BankAccountTest",
-    "test": "BankAccountTest::testBalanceIsInitiallyZero"
-}.{
-    "event": "test",
-    "suite": "BankAccountTest",
-    "test": "BankAccountTest::testBalanceIsInitiallyZero",
-    "status": "pass",
-    "time": %f,
-    "trace": [],
-    "message": "",
-    "output": ""
-}{
-    "event": "testStart",
-    "suite": "BankAccountTest",
-    "test": "BankAccountTest::testBalanceCannotBecomeNegative"
-}.{
-    "event": "test",
-    "suite": "BankAccountTest",
-    "test": "BankAccountTest::testBalanceCannotBecomeNegative",
-    "status": "pass",
-    "time": %f,
-    "trace": [],
-    "message": "",
-    "output": ""
-}{
-    "event": "testStart",
-    "suite": "BankAccountTest",
-    "test": "BankAccountTest::testBalanceCannotBecomeNegative2"
-}.{
-    "event": "test",
-    "suite": "BankAccountTest",
-    "test": "BankAccountTest::testBalanceCannotBecomeNegative2",
-    "status": "pass",
-    "time": %f,
-    "trace": [],
-    "message": "",
-    "output": ""
-}
-
-Time: %s, Memory: %sMb
-
-OK (3 tests, 3 assertions)
diff --git a/vendor/phpunit/phpunit/tests/TextUI/log-json-pre-66021.phpt b/vendor/phpunit/phpunit/tests/TextUI/log-json-pre-66021.phpt
deleted file mode 100644
index 866134a..0000000
--- a/vendor/phpunit/phpunit/tests/TextUI/log-json-pre-66021.phpt
+++ /dev/null
@@ -1,78 +0,0 @@
---TEST--
-phpunit --log-json php://stdout BankAccountTest ../_files/BankAccountTest.php
---SKIPIF--
-<?php
-if (!defined('JSON_PRETTY_PRINT')) {
-    print 'skip: JSON_PRETTY_PRINT is required';
-} else if (json_encode(array(), JSON_PRETTY_PRINT) == '[]') {
-    print 'skip: Has PHP #66021 (Blank line inside empty JSON array/object)';
-}
-?>
---FILE--
-<?php
-$_SERVER['argv'][1] = '--no-configuration';
-$_SERVER['argv'][2] = '--log-json';
-$_SERVER['argv'][3] = 'php://stdout';
-$_SERVER['argv'][4] = 'BankAccountTest';
-$_SERVER['argv'][5] = dirname(__FILE__) . '/../_files/BankAccountTest.php';
-
-require __DIR__ . '/../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-{
-    "event": "suiteStart",
-    "suite": "BankAccountTest",
-    "tests": 3
-}{
-    "event": "testStart",
-    "suite": "BankAccountTest",
-    "test": "BankAccountTest::testBalanceIsInitiallyZero"
-}.{
-    "event": "test",
-    "suite": "BankAccountTest",
-    "test": "BankAccountTest::testBalanceIsInitiallyZero",
-    "status": "pass",
-    "time": %f,
-    "trace": [
-
-    ],
-    "message": "",
-    "output": ""
-}{
-    "event": "testStart",
-    "suite": "BankAccountTest",
-    "test": "BankAccountTest::testBalanceCannotBecomeNegative"
-}.{
-    "event": "test",
-    "suite": "BankAccountTest",
-    "test": "BankAccountTest::testBalanceCannotBecomeNegative",
-    "status": "pass",
-    "time": %f,
-    "trace": [
-
-    ],
-    "message": "",
-    "output": ""
-}{
-    "event": "testStart",
-    "suite": "BankAccountTest",
-    "test": "BankAccountTest::testBalanceCannotBecomeNegative2"
-}.{
-    "event": "test",
-    "suite": "BankAccountTest",
-    "test": "BankAccountTest::testBalanceCannotBecomeNegative2",
-    "status": "pass",
-    "time": %f,
-    "trace": [
-
-    ],
-    "message": "",
-    "output": ""
-}
-
-Time: %s, Memory: %sMb
-
-OK (3 tests, 3 assertions)
diff --git a/vendor/phpunit/phpunit/tests/TextUI/log-tap.phpt b/vendor/phpunit/phpunit/tests/TextUI/log-tap.phpt
deleted file mode 100644
index 6e13626..0000000
--- a/vendor/phpunit/phpunit/tests/TextUI/log-tap.phpt
+++ /dev/null
@@ -1,26 +0,0 @@
---TEST--
-phpunit --log-tap php://stdout BankAccountTest ../_files/BankAccountTest.php
---FILE--
-<?php
-$_SERVER['argv'][1] = '--no-configuration';
-$_SERVER['argv'][2] = '--log-tap';
-$_SERVER['argv'][3] = 'php://stdout';
-$_SERVER['argv'][4] = 'BankAccountTest';
-$_SERVER['argv'][5] = dirname(__FILE__) . '/../_files/BankAccountTest.php';
-
-require __DIR__ . '/../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-TAP version 13
-.ok 1 - BankAccountTest::testBalanceIsInitiallyZero
-.ok 2 - BankAccountTest::testBalanceCannotBecomeNegative
-.ok 3 - BankAccountTest::testBalanceCannotBecomeNegative2
-1..3
-
-
-Time: %s, Memory: %sMb
-
-OK (3 tests, 3 assertions)
diff --git a/vendor/phpunit/phpunit/tests/TextUI/log-xml.phpt b/vendor/phpunit/phpunit/tests/TextUI/log-xml.phpt
deleted file mode 100644
index a031c85..0000000
--- a/vendor/phpunit/phpunit/tests/TextUI/log-xml.phpt
+++ /dev/null
@@ -1,29 +0,0 @@
---TEST--
-phpunit --log-junit php://stdout BankAccountTest ../_files/BankAccountTest.php
---FILE--
-<?php
-$_SERVER['argv'][1] = '--no-configuration';
-$_SERVER['argv'][2] = '--log-junit';
-$_SERVER['argv'][3] = 'php://stdout';
-$_SERVER['argv'][4] = 'BankAccountTest';
-$_SERVER['argv'][5] = dirname(__FILE__) . '/../_files/BankAccountTest.php';
-
-require __DIR__ . '/../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-...<?xml version="1.0" encoding="UTF-8"?>
-<testsuites>
-  <testsuite name="BankAccountTest" file="%sBankAccountTest.php" tests="3" assertions="3" failures="0" errors="0" time="%f">
-    <testcase name="testBalanceIsInitiallyZero" class="BankAccountTest" file="%sBankAccountTest.php" line="30" assertions="1" time="%f"/>
-    <testcase name="testBalanceCannotBecomeNegative" class="BankAccountTest" file="%sBankAccountTest.php" line="40" assertions="1" time="%f"/>
-    <testcase name="testBalanceCannotBecomeNegative2" class="BankAccountTest" file="%sBankAccountTest.php" line="58" assertions="1" time="%f"/>
-  </testsuite>
-</testsuites>
-
-
-Time: %s, Memory: %sMb
-
-OK (3 tests, 3 assertions)
diff --git a/vendor/phpunit/phpunit/tests/TextUI/options-after-arguments.phpt b/vendor/phpunit/phpunit/tests/TextUI/options-after-arguments.phpt
deleted file mode 100644
index d4cdc1a..0000000
--- a/vendor/phpunit/phpunit/tests/TextUI/options-after-arguments.phpt
+++ /dev/null
@@ -1,19 +0,0 @@
---TEST--
-phpunit BankAccountTest ../_files/BankAccountTest.php --colors
---FILE--
-<?php
-$_SERVER['argv'][1] = '--no-configuration';
-$_SERVER['argv'][2] = __DIR__ . '/../_files/BankAccountTest.php';
-$_SERVER['argv'][3] = '--colors=always';
-
-require __DIR__ . '/../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-...
-
-Time: %s, Memory: %sMb
-
-%s[30;42mOK (3 tests, 3 assertions)%s[0m
diff --git a/vendor/phpunit/phpunit/tests/TextUI/output-isolation.phpt b/vendor/phpunit/phpunit/tests/TextUI/output-isolation.phpt
deleted file mode 100644
index 128a7e2..0000000
--- a/vendor/phpunit/phpunit/tests/TextUI/output-isolation.phpt
+++ /dev/null
@@ -1,21 +0,0 @@
---TEST--
-phpunit --process-isolation --filter testExpectOutputStringFooActualFoo ../_files/OutputTestCase.php
---FILE--
-<?php
-$_SERVER['argv'][1] = '--no-configuration';
-$_SERVER['argv'][2] = '--process-isolation';
-$_SERVER['argv'][3] = '--filter';
-$_SERVER['argv'][4] = 'testExpectOutputStringFooActualFoo';
-$_SERVER['argv'][5] = dirname(__FILE__) . '/../_files/OutputTestCase.php';
-
-require __DIR__ . '/../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-.
-
-Time: %s, Memory: %sMb
-
-OK (1 test, 1 assertion)
diff --git a/vendor/phpunit/phpunit/tests/TextUI/repeat.phpt b/vendor/phpunit/phpunit/tests/TextUI/repeat.phpt
deleted file mode 100644
index db5eddb..0000000
--- a/vendor/phpunit/phpunit/tests/TextUI/repeat.phpt
+++ /dev/null
@@ -1,21 +0,0 @@
---TEST--
-phpunit --repeat 3 BankAccountTest ../_files/BankAccountTest.php
---FILE--
-<?php
-$_SERVER['argv'][1] = '--no-configuration';
-$_SERVER['argv'][2] = '--repeat';
-$_SERVER['argv'][3] = '3';
-$_SERVER['argv'][4] = 'BankAccountTest';
-$_SERVER['argv'][5] = dirname(__FILE__) . '/../_files/BankAccountTest.php';
-
-require __DIR__ . '/../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-.........
-
-Time: %s, Memory: %sMb
-
-OK (9 tests, 9 assertions)
diff --git a/vendor/phpunit/phpunit/tests/TextUI/report-useless-tests-incomplete.phpt b/vendor/phpunit/phpunit/tests/TextUI/report-useless-tests-incomplete.phpt
deleted file mode 100644
index 9bc4c2d..0000000
--- a/vendor/phpunit/phpunit/tests/TextUI/report-useless-tests-incomplete.phpt
+++ /dev/null
@@ -1,21 +0,0 @@
---TEST--
-phpunit --report-useless-tests IncompleteTest ../_files/IncompleteTest.php
---FILE--
-<?php
-$_SERVER['argv'][1] = '--no-configuration';
-$_SERVER['argv'][2] = '--report-useless-tests';
-$_SERVER['argv'][3] = 'IncompleteTest';
-$_SERVER['argv'][4] = dirname(dirname(__FILE__)) . '/_files/IncompleteTest.php';
-
-require __DIR__ . '/../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-I
-
-Time: %s, Memory: %sMb
-
-OK, but incomplete, skipped, or risky tests!
-Tests: 1, Assertions: 0, Incomplete: 1.
diff --git a/vendor/phpunit/phpunit/tests/TextUI/report-useless-tests-isolation.phpt b/vendor/phpunit/phpunit/tests/TextUI/report-useless-tests-isolation.phpt
deleted file mode 100644
index 9401b26..0000000
--- a/vendor/phpunit/phpunit/tests/TextUI/report-useless-tests-isolation.phpt
+++ /dev/null
@@ -1,22 +0,0 @@
---TEST--
-phpunit --report-useless-tests --process-isolation IncompleteTest ../_files/IncompleteTest.php
---FILE--
-<?php
-$_SERVER['argv'][1] = '--no-configuration';
-$_SERVER['argv'][2] = '--report-useless-tests';
-$_SERVER['argv'][3] = '--process-isolation';
-$_SERVER['argv'][4] = 'NothingTest';
-$_SERVER['argv'][5] = dirname(dirname(__FILE__)) . '/_files/NothingTest.php';
-
-require __DIR__ . '/../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-R
-
-Time: %s, Memory: %sMb
-
-OK, but incomplete, skipped, or risky tests!
-Tests: 1, Assertions: 0, Risky: 1.
diff --git a/vendor/phpunit/phpunit/tests/TextUI/report-useless-tests.phpt b/vendor/phpunit/phpunit/tests/TextUI/report-useless-tests.phpt
deleted file mode 100644
index 9eb22df..0000000
--- a/vendor/phpunit/phpunit/tests/TextUI/report-useless-tests.phpt
+++ /dev/null
@@ -1,21 +0,0 @@
---TEST--
-phpunit --report-useless-tests NothingTest ../_files/NothingTest.php
---FILE--
-<?php
-$_SERVER['argv'][1] = '--no-configuration';
-$_SERVER['argv'][2] = '--report-useless-tests';
-$_SERVER['argv'][3] = 'NothingTest';
-$_SERVER['argv'][4] = dirname(dirname(__FILE__)) . '/_files/NothingTest.php';
-
-require __DIR__ . '/../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-R
-
-Time: %s, Memory: %sMb
-
-OK, but incomplete, skipped, or risky tests!
-Tests: 1, Assertions: 0, Risky: 1.
diff --git a/vendor/phpunit/phpunit/tests/TextUI/tap.phpt b/vendor/phpunit/phpunit/tests/TextUI/tap.phpt
deleted file mode 100644
index ca5676d..0000000
--- a/vendor/phpunit/phpunit/tests/TextUI/tap.phpt
+++ /dev/null
@@ -1,18 +0,0 @@
---TEST--
-phpunit --tap BankAccountTest ../_files/BankAccountTest.php
---FILE--
-<?php
-$_SERVER['argv'][1] = '--no-configuration';
-$_SERVER['argv'][2] = '--tap';
-$_SERVER['argv'][3] = 'BankAccountTest';
-$_SERVER['argv'][4] = dirname(__FILE__) . '/../_files/BankAccountTest.php';
-
-require __DIR__ . '/../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-TAP version 13
-ok 1 - BankAccountTest::testBalanceIsInitiallyZero
-ok 2 - BankAccountTest::testBalanceCannotBecomeNegative
-ok 3 - BankAccountTest::testBalanceCannotBecomeNegative2
-1..3
diff --git a/vendor/phpunit/phpunit/tests/TextUI/test-suffix-multiple.phpt b/vendor/phpunit/phpunit/tests/TextUI/test-suffix-multiple.phpt
deleted file mode 100644
index 417f065..0000000
--- a/vendor/phpunit/phpunit/tests/TextUI/test-suffix-multiple.phpt
+++ /dev/null
@@ -1,20 +0,0 @@
---TEST--
-phpunit --test-suffix .test.php,.my.php ../_files/
---FILE--
-<?php
-$_SERVER['argv'][1] = '--no-configuration';
-$_SERVER['argv'][2] = '--test-suffix';
-$_SERVER['argv'][3] = '.test.php,.my.php';
-$_SERVER['argv'][4] = dirname(__FILE__) . '/../_files/';
-
-require __DIR__ . '/../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-.....
-
-Time: %s, Memory: %sMb
-
-OK (5 tests, 3 assertions)
diff --git a/vendor/phpunit/phpunit/tests/TextUI/test-suffix-single.phpt b/vendor/phpunit/phpunit/tests/TextUI/test-suffix-single.phpt
deleted file mode 100644
index 6c35937..0000000
--- a/vendor/phpunit/phpunit/tests/TextUI/test-suffix-single.phpt
+++ /dev/null
@@ -1,20 +0,0 @@
---TEST--
-phpunit --test-suffix .test.php ../_files/
---FILE--
-<?php
-$_SERVER['argv'][1] = '--no-configuration';
-$_SERVER['argv'][2] = '--test-suffix';
-$_SERVER['argv'][3] = '.test.php';
-$_SERVER['argv'][4] = dirname(__FILE__) . '/../_files/';
-
-require __DIR__ . '/../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-...
-
-Time: %s, Memory: %sMb
-
-OK (3 tests, 3 assertions)
diff --git a/vendor/phpunit/phpunit/tests/TextUI/testdox-html.phpt b/vendor/phpunit/phpunit/tests/TextUI/testdox-html.phpt
deleted file mode 100644
index 95e4405..0000000
--- a/vendor/phpunit/phpunit/tests/TextUI/testdox-html.phpt
+++ /dev/null
@@ -1,21 +0,0 @@
---TEST--
-phpunit --testdox-html php://stdout BankAccountTest ../_files/BankAccountTest.php
---FILE--
-<?php
-$_SERVER['argv'][1] = '--no-configuration';
-$_SERVER['argv'][2] = '--testdox-html';
-$_SERVER['argv'][3] = 'php://stdout';
-$_SERVER['argv'][4] = 'BankAccountTest';
-$_SERVER['argv'][5] = dirname(__FILE__) . '/../_files/BankAccountTest.php';
-
-require __DIR__ . '/../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-<html><body>
-<h2 id="BankAccountTest">BankAccount</h2><ul>...<li>Balance is initially zero</li><li>Balance cannot become negative</li></ul></body></html>
-
-Time: %s, Memory: %sMb
-
-OK (3 tests, 3 assertions)
diff --git a/vendor/phpunit/phpunit/tests/TextUI/testdox-text.phpt b/vendor/phpunit/phpunit/tests/TextUI/testdox-text.phpt
deleted file mode 100644
index 79c6755..0000000
--- a/vendor/phpunit/phpunit/tests/TextUI/testdox-text.phpt
+++ /dev/null
@@ -1,25 +0,0 @@
---TEST--
-phpunit --testdox-text php://stdout BankAccountTest ../_files/BankAccountTest.php
---FILE--
-<?php
-$_SERVER['argv'][1] = '--no-configuration';
-$_SERVER['argv'][2] = '--testdox-text';
-$_SERVER['argv'][3] = 'php://stdout';
-$_SERVER['argv'][4] = 'BankAccountTest';
-$_SERVER['argv'][5] = dirname(__FILE__) . '/../_files/BankAccountTest.php';
-
-require __DIR__ . '/../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-BankAccount
-... [x] Balance is initially zero
- [x] Balance cannot become negative
-
-
-
-Time: %s, Memory: %sMb
-
-OK (3 tests, 3 assertions)
diff --git a/vendor/phpunit/phpunit/tests/TextUI/testdox.phpt b/vendor/phpunit/phpunit/tests/TextUI/testdox.phpt
deleted file mode 100644
index fb24e94..0000000
--- a/vendor/phpunit/phpunit/tests/TextUI/testdox.phpt
+++ /dev/null
@@ -1,19 +0,0 @@
---TEST--
-phpunit --testdox php://stdout BankAccountTest ../_files/BankAccountTest.php
---FILE--
-<?php
-$_SERVER['argv'][1] = '--no-configuration';
-$_SERVER['argv'][2] = '--testdox';
-$_SERVER['argv'][3] = 'BankAccountTest';
-$_SERVER['argv'][4] = dirname(__FILE__) . '/../_files/BankAccountTest.php';
-
-require __DIR__ . '/../bootstrap.php';
-PHPUnit_TextUI_Command::main();
-?>
---EXPECTF--
-PHPUnit %s by Sebastian Bergmann and contributors.
-
-BankAccount
- [x] Balance is initially zero
- [x] Balance cannot become negative
-
diff --git a/vendor/phpunit/phpunit/tests/Util/ConfigurationTest.php b/vendor/phpunit/phpunit/tests/Util/ConfigurationTest.php
deleted file mode 100644
index 8bccf14..0000000
--- a/vendor/phpunit/phpunit/tests/Util/ConfigurationTest.php
+++ /dev/null
@@ -1,500 +0,0 @@
-<?php
-/*
- * This file is part of PHPUnit.
- *
- * (c) Sebastian Bergmann <sebastian@phpunit.de>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-/**
- * @since      Class available since Release 3.3.0
- */
-class Util_ConfigurationTest extends PHPUnit_Framework_TestCase
-{
-    protected $configuration;
-
-    protected function setUp()
-    {
-        $this->configuration = PHPUnit_Util_Configuration::getInstance(
-            dirname(__DIR__) . DIRECTORY_SEPARATOR . '_files' . DIRECTORY_SEPARATOR . 'configuration.xml'
-        );
-    }
-
-    /**
-     * @covers PHPUnit_Util_Configuration::getInstance
-     * @expectedException PHPUnit_Framework_Exception
-     */
-    public function testExceptionIsThrownForNotExistingConfigurationFile()
-    {
-        PHPUnit_Util_Configuration::getInstance('not_existing_file.xml');
-    }
-
-    /**
-     * @covers PHPUnit_Util_Configuration::getPHPUnitConfiguration
-     */
-    public function testShouldReadColorsWhenTrueInConfigurationfile()
-    {
-        $configurationFilename =  dirname(__DIR__) . DIRECTORY_SEPARATOR . '_files' . DIRECTORY_SEPARATOR . 'configuration.colors.true.xml';
-        $configurationInstance = PHPUnit_Util_Configuration::getInstance($configurationFilename);
-        $configurationValues   = $configurationInstance->getPHPUnitConfiguration();
-
-        $this->assertEquals(PHPUnit_TextUI_ResultPrinter::COLOR_AUTO, $configurationValues['colors']);
-    }
-
-    /**
-     * @covers PHPUnit_Util_Configuration::getPHPUnitConfiguration
-     */
-    public function testShouldReadColorsWhenFalseInConfigurationfile()
-    {
-        $configurationFilename =  dirname(__DIR__) . DIRECTORY_SEPARATOR . '_files' . DIRECTORY_SEPARATOR . 'configuration.colors.false.xml';
-        $configurationInstance = PHPUnit_Util_Configuration::getInstance($configurationFilename);
-        $configurationValues   = $configurationInstance->getPHPUnitConfiguration();
-
-        $this->assertEquals(PHPUnit_TextUI_ResultPrinter::COLOR_NEVER, $configurationValues['colors']);
-    }
-
-    /**
-     * @covers PHPUnit_Util_Configuration::getPHPUnitConfiguration
-     */
-    public function testShouldReadColorsWhenEmptyInConfigurationfile()
-    {
-        $configurationFilename =  dirname(__DIR__) . DIRECTORY_SEPARATOR . '_files' . DIRECTORY_SEPARATOR . 'configuration.colors.empty.xml';
-        $configurationInstance = PHPUnit_Util_Configuration::getInstance($configurationFilename);
-        $configurationValues   = $configurationInstance->getPHPUnitConfiguration();
-
-        $this->assertEquals(PHPUnit_TextUI_ResultPrinter::COLOR_NEVER, $configurationValues['colors']);
-    }
-
-    /**
-     * @covers PHPUnit_Util_Configuration::getPHPUnitConfiguration
-     */
-    public function testShouldReadColorsWhenInvalidInConfigurationfile()
-    {
-        $configurationFilename =  dirname(__DIR__) . DIRECTORY_SEPARATOR . '_files' . DIRECTORY_SEPARATOR . 'configuration.colors.invalid.xml';
-        $configurationInstance = PHPUnit_Util_Configuration::getInstance($configurationFilename);
-        $configurationValues   = $configurationInstance->getPHPUnitConfiguration();
-
-        $this->assertEquals(PHPUnit_TextUI_ResultPrinter::COLOR_NEVER, $configurationValues['colors']);
-    }
-
-    /**
-     * @covers PHPUnit_Util_Configuration::getFilterConfiguration
-     */
-    public function testFilterConfigurationIsReadCorrectly()
-    {
-        $this->assertEquals(
-            array(
-            'blacklist' =>
-            array(
-              'include' =>
-              array(
-                'directory' =>
-                array(
-                  0 =>
-                  array(
-                    'path'   => '/path/to/files',
-                    'prefix' => '',
-                    'suffix' => '.php',
-                    'group'  => 'DEFAULT'
-                  ),
-                ),
-                'file' =>
-                array(
-                  0 => '/path/to/file',
-                ),
-              ),
-              'exclude' =>
-              array(
-                'directory' =>
-                array(
-                  0 =>
-                  array(
-                    'path'   => '/path/to/files',
-                    'prefix' => '',
-                    'suffix' => '.php',
-                    'group'  => 'DEFAULT'
-                  ),
-                ),
-                'file' =>
-                array(
-                  0 => '/path/to/file',
-                ),
-              ),
-            ),
-            'whitelist' =>
-            array(
-              'addUncoveredFilesFromWhitelist'     => true,
-              'processUncoveredFilesFromWhitelist' => false,
-              'include'                            =>
-              array(
-                'directory' =>
-                array(
-                  0 =>
-                  array(
-                    'path'   => '/path/to/files',
-                    'prefix' => '',
-                    'suffix' => '.php',
-                    'group'  => 'DEFAULT'
-                  ),
-                ),
-                'file' =>
-                array(
-                  0 => '/path/to/file',
-                ),
-              ),
-              'exclude' =>
-              array(
-                'directory' =>
-                array(
-                  0 =>
-                  array(
-                    'path'   => '/path/to/files',
-                    'prefix' => '',
-                    'suffix' => '.php',
-                    'group'  => 'DEFAULT'
-                  ),
-                ),
-                'file' =>
-                array(
-                  0 => '/path/to/file',
-                ),
-              ),
-            ),
-            ),
-            $this->configuration->getFilterConfiguration()
-        );
-    }
-
-    /**
-     * @covers PHPUnit_Util_Configuration::getGroupConfiguration
-     */
-    public function testGroupConfigurationIsReadCorrectly()
-    {
-        $this->assertEquals(
-            array(
-            'include' =>
-            array(
-              0 => 'name',
-            ),
-            'exclude' =>
-            array(
-              0 => 'name',
-            ),
-            ),
-            $this->configuration->getGroupConfiguration()
-        );
-    }
-
-    /**
-     * @covers PHPUnit_Util_Configuration::getListenerConfiguration
-     */
-    public function testListenerConfigurationIsReadCorrectly()
-    {
-        $dir         = __DIR__;
-        $includePath = ini_get('include_path');
-
-        ini_set('include_path', $dir . PATH_SEPARATOR . $includePath);
-
-        $this->assertEquals(
-            array(
-            0 =>
-            array(
-              'class'     => 'MyListener',
-              'file'      => '/optional/path/to/MyListener.php',
-              'arguments' =>
-              array(
-                0 =>
-                array(
-                  0 => 'Sebastian',
-                ),
-                1 => 22,
-                2 => 'April',
-                3 => 19.78,
-                4 => null,
-                5 => new stdClass,
-                6 => dirname(__DIR__) . DIRECTORY_SEPARATOR . '_files' . DIRECTORY_SEPARATOR . 'MyTestFile.php',
-                7 => dirname(__DIR__) . DIRECTORY_SEPARATOR . '_files' . DIRECTORY_SEPARATOR . 'MyRelativePath',
-              ),
-            ),
-            array(
-              'class'     => 'IncludePathListener',
-              'file'      => __FILE__,
-              'arguments' => array()
-            ),
-            array(
-              'class'     => 'CompactArgumentsListener',
-              'file'      => '/CompactArgumentsListener.php',
-              'arguments' =>
-              array(
-                0 => 42
-              ),
-            ),
-            ),
-            $this->configuration->getListenerConfiguration()
-        );
-
-        ini_set('include_path', $includePath);
-    }
-
-    /**
-     * @covers PHPUnit_Util_Configuration::getLoggingConfiguration
-     */
-    public function testLoggingConfigurationIsReadCorrectly()
-    {
-        $this->assertEquals(
-            array(
-            'lowUpperBound'        => '50',
-            'highLowerBound'       => '90',
-            'coverage-html'        => '/tmp/report',
-            'coverage-clover'      => '/tmp/clover.xml',
-            'json'                 => '/tmp/logfile.json',
-            'plain'                => '/tmp/logfile.txt',
-            'tap'                  => '/tmp/logfile.tap',
-            'logIncompleteSkipped' => false,
-            'junit'                => '/tmp/logfile.xml',
-            'testdox-html'         => '/tmp/testdox.html',
-            'testdox-text'         => '/tmp/testdox.txt',
-            ),
-            $this->configuration->getLoggingConfiguration()
-        );
-    }
-
-    /**
-     * @covers PHPUnit_Util_Configuration::getPHPConfiguration
-     */
-    public function testPHPConfigurationIsReadCorrectly()
-    {
-        $this->assertEquals(
-            array(
-            'include_path' =>
-            array(
-              dirname(__DIR__) . DIRECTORY_SEPARATOR . '_files' . DIRECTORY_SEPARATOR . '.',
-              '/path/to/lib'
-            ),
-            'ini'    => array('foo' => 'bar'),
-            'const'  => array('FOO' => false, 'BAR' => true),
-            'var'    => array('foo' => false),
-            'env'    => array('foo' => true),
-            'post'   => array('foo' => 'bar'),
-            'get'    => array('foo' => 'bar'),
-            'cookie' => array('foo' => 'bar'),
-            'server' => array('foo' => 'bar'),
-            'files'  => array('foo' => 'bar'),
-            'request'=> array('foo' => 'bar'),
-            ),
-            $this->configuration->getPHPConfiguration()
-        );
-    }
-
-    /**
-     * @backupGlobals enabled
-     * @covers PHPUnit_Util_Configuration::handlePHPConfiguration
-     */
-    public function testPHPConfigurationIsHandledCorrectly()
-    {
-        $this->configuration->handlePHPConfiguration();
-
-        $path = dirname(__DIR__) . DIRECTORY_SEPARATOR . '_files' . DIRECTORY_SEPARATOR . '.' . PATH_SEPARATOR . '/path/to/lib';
-        $this->assertStringStartsWith($path, ini_get('include_path'));
-        $this->assertEquals(false, FOO);
-        $this->assertEquals(true, BAR);
-        $this->assertEquals(false, $GLOBALS['foo']);
-        $this->assertEquals(true, $_ENV['foo']);
-        $this->assertEquals(true, getenv('foo'));
-        $this->assertEquals('bar', $_POST['foo']);
-        $this->assertEquals('bar', $_GET['foo']);
-        $this->assertEquals('bar', $_COOKIE['foo']);
-        $this->assertEquals('bar', $_SERVER['foo']);
-        $this->assertEquals('bar', $_FILES['foo']);
-        $this->assertEquals('bar', $_REQUEST['foo']);
-    }
-
-    /**
-     * @backupGlobals enabled
-     * @see https://github.com/sebastianbergmann/phpunit/issues/1181
-     */
-    public function testHandlePHPConfigurationDoesNotOverwrittenExistingEnvArrayVariables()
-    {
-        $_ENV['foo'] = false;
-        $this->configuration->handlePHPConfiguration();
-
-        $this->assertEquals(false, $_ENV['foo']);
-        $this->assertEquals(true, getenv('foo'));
-    }
-
-    /**
-     * @backupGlobals enabled
-     * @see https://github.com/sebastianbergmann/phpunit/issues/1181
-     */
-    public function testHandlePHPConfigurationDoesNotOverriteVariablesFromPutEnv()
-    {
-        putenv('foo=putenv');
-        $this->configuration->handlePHPConfiguration();
-
-        $this->assertEquals(true, $_ENV['foo']);
-        $this->assertEquals('putenv', getenv('foo'));
-    }
-
-    /**
-     * @covers PHPUnit_Util_Configuration::getPHPUnitConfiguration
-     */
-    public function testPHPUnitConfigurationIsReadCorrectly()
-    {
-        $this->assertEquals(
-            array(
-            'backupGlobals'                      => true,
-            'backupStaticAttributes'             => false,
-            'disallowChangesToGlobalState'       => false,
-            'bootstrap'                          => '/path/to/bootstrap.php',
-            'cacheTokens'                        => false,
-            'columns'                            => 80,
-            'colors'                             => 'never',
-            'stderr'                             => false,
-            'convertErrorsToExceptions'          => true,
-            'convertNoticesToExceptions'         => true,
-            'convertWarningsToExceptions'        => true,
-            'forceCoversAnnotation'              => false,
-            'mapTestClassNameToCoveredClassName' => false,
-            'printerClass'                       => 'PHPUnit_TextUI_ResultPrinter',
-            'stopOnFailure'                      => false,
-            'reportUselessTests'                 => false,
-            'strictCoverage'                     => false,
-            'disallowTestOutput'                 => false,
-            'enforceTimeLimit'                   => false,
-            'disallowTodoAnnotatedTests'         => false,
-            'testSuiteLoaderClass'               => 'PHPUnit_Runner_StandardTestSuiteLoader',
-            'verbose'                            => false,
-            'timeoutForSmallTests'               => 1,
-            'timeoutForMediumTests'              => 10,
-            'timeoutForLargeTests'               => 60
-            ),
-            $this->configuration->getPHPUnitConfiguration()
-        );
-    }
-
-    /**
-     * @covers PHPUnit_Util_Configuration::getSeleniumBrowserConfiguration
-     */
-    public function testSeleniumBrowserConfigurationIsReadCorrectly()
-    {
-        $this->assertEquals(
-            array(
-            0 =>
-            array(
-              'name'    => 'Firefox on Linux',
-              'browser' => '*firefox /usr/lib/firefox/firefox-bin',
-              'host'    => 'my.linux.box',
-              'port'    => 4444,
-              'timeout' => 30000,
-            ),
-            ),
-            $this->configuration->getSeleniumBrowserConfiguration()
-        );
-    }
-
-    /**
-     * @covers PHPUnit_Util_Configuration::getInstance
-     */
-    public function testXincludeInConfiguration()
-    {
-        $configurationWithXinclude = PHPUnit_Util_Configuration::getInstance(
-            dirname(__DIR__) . DIRECTORY_SEPARATOR . '_files' . DIRECTORY_SEPARATOR . 'configuration_xinclude.xml'
-        );
-
-        $this->assertConfigurationEquals(
-            $this->configuration,
-            $configurationWithXinclude
-        );
-    }
-
-    /**
-     * @ticket 1311
-     * @covers PHPUnit_Util_Configuration::getLoggingConfiguration
-     * @covers PHPUnit_Util_Configuration::getPHPConfiguration
-     * @covers PHPUnit_Util_Configuration::getPHPUnitConfiguration
-     * @covers PHPUnit_Util_Configuration::getTestSuiteConfiguration
-     * @covers PHPUnit_Util_Configuration::getFilterConfiguration
-     * @uses   PHPUnit_Util_Configuration::getInstance
-     */
-    public function testWithEmptyConfigurations()
-    {
-        $emptyConfiguration = PHPUnit_Util_Configuration::getInstance(
-            dirname(__DIR__) . DIRECTORY_SEPARATOR . '_files' . DIRECTORY_SEPARATOR . 'configuration_empty.xml'
-        );
-
-        $logging = $emptyConfiguration->getLoggingConfiguration();
-        $this->assertEmpty($logging);
-
-        $php = $emptyConfiguration->getPHPConfiguration();
-        $this->assertEmpty($php['include_path']);
-
-        $phpunit = $emptyConfiguration->getPHPUnitConfiguration();
-        $this->assertArrayNotHasKey('bootstrap', $phpunit);
-        $this->assertArrayNotHasKey('testSuiteLoaderFile', $phpunit);
-        $this->assertArrayNotHasKey('printerFile', $phpunit);
-
-        $suite = $emptyConfiguration->getTestSuiteConfiguration();
-        $this->assertEmpty($suite->getGroups());
-
-        $filter = $emptyConfiguration->getFilterConfiguration();
-        $this->assertEmpty($filter['blacklist']['include']['directory']);
-        $this->assertEmpty($filter['blacklist']['include']['file']);
-        $this->assertEmpty($filter['blacklist']['exclude']['directory']);
-        $this->assertEmpty($filter['blacklist']['exclude']['file']);
-        $this->assertEmpty($filter['whitelist']['include']['directory']);
-        $this->assertEmpty($filter['whitelist']['include']['file']);
-        $this->assertEmpty($filter['whitelist']['exclude']['directory']);
-        $this->assertEmpty($filter['whitelist']['exclude']['file']);
-    }
-
-    /**
-     * Asserts that the values in $actualConfiguration equal $expectedConfiguration.
-     *
-     * @param PHPUnit_Util_Configuration $expectedConfiguration
-     * @param PHPUnit_Util_Configuration $actualConfiguration
-     */
-    protected function assertConfigurationEquals(PHPUnit_Util_Configuration $expectedConfiguration, PHPUnit_Util_Configuration $actualConfiguration)
-    {
-        $this->assertEquals(
-            $expectedConfiguration->getFilterConfiguration(),
-            $actualConfiguration->getFilterConfiguration()
-        );
-
-        $this->assertEquals(
-            $expectedConfiguration->getGroupConfiguration(),
-            $actualConfiguration->getGroupConfiguration()
-        );
-
-        $this->assertEquals(
-            $expectedConfiguration->getListenerConfiguration(),
-            $actualConfiguration->getListenerConfiguration()
-        );
-
-        $this->assertEquals(
-            $expectedConfiguration->getLoggingConfiguration(),
-            $actualConfiguration->getLoggingConfiguration()
-        );
-
-        $this->assertEquals(
-            $expectedConfiguration->getPHPConfiguration(),
-            $actualConfiguration->getPHPConfiguration()
-        );
-
-        $this->assertEquals(
-            $expectedConfiguration->getPHPUnitConfiguration(),
-            $actualConfiguration->getPHPUnitConfiguration()
-        );
-
-        $this->assertEquals(
-            $expectedConfiguration->getSeleniumBrowserConfiguration(),
-            $actualConfiguration->getSeleniumBrowserConfiguration()
-        );
-
-        $this->assertEquals(
-            $expectedConfiguration->getTestSuiteConfiguration(),
-            $actualConfiguration->getTestSuiteConfiguration()
-        );
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/Util/GetoptTest.php b/vendor/phpunit/phpunit/tests/Util/GetoptTest.php
deleted file mode 100644
index 8e7ad4d..0000000
--- a/vendor/phpunit/phpunit/tests/Util/GetoptTest.php
+++ /dev/null
@@ -1,62 +0,0 @@
-<?php
-/*
- * This file is part of PHPUnit.
- *
- * (c) Sebastian Bergmann <sebastian@phpunit.de>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-/**
- */
-class Util_GetoptTest extends PHPUnit_Framework_TestCase
-{
-    public function testItIncludeTheLongOptionsAfterTheArgument()
-    {
-        $args = array(
-            'command',
-            'myArgument',
-            '--colors',
-        );
-        $actual = PHPUnit_Util_Getopt::getopt($args, '', array('colors=='));
-
-        $expected = array(
-            array(
-                array(
-                    '--colors',
-                    null,
-                ),
-            ),
-            array(
-                'myArgument',
-            ),
-        );
-
-        $this->assertEquals($expected, $actual);
-    }
-
-    public function testItIncludeTheShortOptionsAfterTheArgument()
-    {
-        $args = array(
-            'command',
-            'myArgument',
-            '-v',
-        );
-        $actual = PHPUnit_Util_Getopt::getopt($args, 'v');
-
-        $expected = array(
-            array(
-                array(
-                    'v',
-                    null,
-                ),
-            ),
-            array(
-                'myArgument',
-            ),
-        );
-
-        $this->assertEquals($expected, $actual);
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/Util/GlobalStateTest.php b/vendor/phpunit/phpunit/tests/Util/GlobalStateTest.php
deleted file mode 100644
index 5810ee3..0000000
--- a/vendor/phpunit/phpunit/tests/Util/GlobalStateTest.php
+++ /dev/null
@@ -1,35 +0,0 @@
-<?php
-/*
- * This file is part of PHPUnit.
- *
- * (c) Sebastian Bergmann <sebastian@phpunit.de>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-/**
- */
-class Util_GlobalStateTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @covers PHPUnit_Util_GlobalState::processIncludedFilesAsString
-     */
-    public function testIncludedFilesAsStringSkipsVfsProtocols()
-    {
-        $dir   = __DIR__;
-        $files = array(
-            'phpunit', // The 0 index is not used
-            $dir . '/ConfigurationTest.php',
-            $dir . '/GlobalStateTest.php',
-            'vfs://' . $dir . '/RegexTest.php',
-            'phpvfs53e46260465c7://' . $dir . '/TestTest.php',
-            'file://' . $dir . '/XMLTest.php'
-        );
-
-        $this->assertEquals(
-            "require_once '" . $dir . "/ConfigurationTest.php';\n" .
-            "require_once '" . $dir . "/GlobalStateTest.php';\n" .
-            "require_once 'file://" . $dir . "/XMLTest.php';\n", PHPUnit_Util_GlobalState::processIncludedFilesAsString($files));
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/Util/RegexTest.php b/vendor/phpunit/phpunit/tests/Util/RegexTest.php
deleted file mode 100644
index 7242654..0000000
--- a/vendor/phpunit/phpunit/tests/Util/RegexTest.php
+++ /dev/null
@@ -1,52 +0,0 @@
-<?php
-/*
- * This file is part of PHPUnit.
- *
- * (c) Sebastian Bergmann <sebastian@phpunit.de>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-/**
- * @since      Class available since Release 4.2.0
- */
-class Util_RegexTest extends PHPUnit_Framework_TestCase
-{
-    public function validRegexpProvider()
-    {
-        return array(
-          array('#valid regexp#', 'valid regexp', 1),
-          array(';val.*xp;', 'valid regexp', 1),
-          array('/val.*xp/i', 'VALID REGEXP', 1),
-          array('/a val.*p/','valid regexp', 0),
-        );
-    }
-
-    public function invalidRegexpProvider()
-    {
-        return array(
-          array('valid regexp', 'valid regexp'),
-          array(';val.*xp', 'valid regexp'),
-          array('val.*xp/i', 'VALID REGEXP'),
-        );
-    }
-
-    /**
-     * @dataProvider validRegexpProvider
-     * @covers       PHPUnit_Util_Regex::pregMatchSafe
-     */
-    public function testValidRegex($pattern, $subject, $return)
-    {
-        $this->assertEquals($return, PHPUnit_Util_Regex::pregMatchSafe($pattern, $subject));
-    }
-
-    /**
-     * @dataProvider invalidRegexpProvider
-     * @covers       PHPUnit_Util_Regex::pregMatchSafe
-     */
-    public function testInvalidRegex($pattern, $subject)
-    {
-        $this->assertFalse(PHPUnit_Util_Regex::pregMatchSafe($pattern, $subject));
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/Util/TestDox/NamePrettifierTest.php b/vendor/phpunit/phpunit/tests/Util/TestDox/NamePrettifierTest.php
deleted file mode 100644
index 30b9be4..0000000
--- a/vendor/phpunit/phpunit/tests/Util/TestDox/NamePrettifierTest.php
+++ /dev/null
@@ -1,81 +0,0 @@
-<?php
-/*
- * This file is part of PHPUnit.
- *
- * (c) Sebastian Bergmann <sebastian@phpunit.de>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-/**
- * @since      Class available since Release 2.1.0
- */
-class Util_TestDox_NamePrettifierTest extends PHPUnit_Framework_TestCase
-{
-    protected $namePrettifier;
-
-    protected function setUp()
-    {
-        $this->namePrettifier = new PHPUnit_Util_TestDox_NamePrettifier;
-    }
-
-    /**
-     * @covers PHPUnit_Util_TestDox_NamePrettifier::prettifyTestClass
-     */
-    public function testTitleHasSensibleDefaults()
-    {
-        $this->assertEquals('Foo', $this->namePrettifier->prettifyTestClass('FooTest'));
-        $this->assertEquals('Foo', $this->namePrettifier->prettifyTestClass('TestFoo'));
-        $this->assertEquals('Foo', $this->namePrettifier->prettifyTestClass('TestFooTest'));
-        $this->assertEquals('Foo', $this->namePrettifier->prettifyTestClass('Test\FooTest'));
-    }
-
-    /**
-     * @covers PHPUnit_Util_TestDox_NamePrettifier::prettifyTestClass
-     */
-    public function testCaterForUserDefinedSuffix()
-    {
-        $this->namePrettifier->setSuffix('TestCase');
-        $this->namePrettifier->setPrefix(null);
-
-        $this->assertEquals('Foo', $this->namePrettifier->prettifyTestClass('FooTestCase'));
-        $this->assertEquals('TestFoo', $this->namePrettifier->prettifyTestClass('TestFoo'));
-        $this->assertEquals('FooTest', $this->namePrettifier->prettifyTestClass('FooTest'));
-    }
-
-    /**
-     * @covers PHPUnit_Util_TestDox_NamePrettifier::prettifyTestClass
-     */
-    public function testCaterForUserDefinedPrefix()
-    {
-        $this->namePrettifier->setSuffix(null);
-        $this->namePrettifier->setPrefix('XXX');
-
-        $this->assertEquals('Foo', $this->namePrettifier->prettifyTestClass('XXXFoo'));
-        $this->assertEquals('TestXXX', $this->namePrettifier->prettifyTestClass('TestXXX'));
-        $this->assertEquals('XXX', $this->namePrettifier->prettifyTestClass('XXXXXX'));
-    }
-
-    /**
-     * @covers PHPUnit_Util_TestDox_NamePrettifier::prettifyTestMethod
-     */
-    public function testTestNameIsConvertedToASentence()
-    {
-        $this->assertEquals('This is a test', $this->namePrettifier->prettifyTestMethod('testThisIsATest'));
-        $this->assertEquals('This is a test', $this->namePrettifier->prettifyTestMethod('testThisIsATest2'));
-        $this->assertEquals('this is a test', $this->namePrettifier->prettifyTestMethod('this_is_a_test'));
-        $this->assertEquals('Foo for bar is 0', $this->namePrettifier->prettifyTestMethod('testFooForBarIs0'));
-        $this->assertEquals('Foo for baz is 1', $this->namePrettifier->prettifyTestMethod('testFooForBazIs1'));
-    }
-
-    /**
-     * @covers PHPUnit_Util_TestDox_NamePrettifier::prettifyTestMethod
-     * @ticket 224
-     */
-    public function testTestNameIsNotGroupedWhenNotInSequence()
-    {
-        $this->assertEquals('Sets redirect header on 301', $this->namePrettifier->prettifyTestMethod('testSetsRedirectHeaderOn301'));
-        $this->assertEquals('Sets redirect header on 302', $this->namePrettifier->prettifyTestMethod('testSetsRedirectHeaderOn302'));
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/Util/TestTest.php b/vendor/phpunit/phpunit/tests/Util/TestTest.php
deleted file mode 100644
index 0eb13fa..0000000
--- a/vendor/phpunit/phpunit/tests/Util/TestTest.php
+++ /dev/null
@@ -1,669 +0,0 @@
-<?php
-/*
- * This file is part of PHPUnit.
- *
- * (c) Sebastian Bergmann <sebastian@phpunit.de>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-if (!defined('TEST_FILES_PATH')) {
-    define(
-        'TEST_FILES_PATH',
-        dirname(__DIR__) . DIRECTORY_SEPARATOR .
-        '_files' . DIRECTORY_SEPARATOR
-    );
-}
-
-require TEST_FILES_PATH . 'CoverageNamespacedFunctionTest.php';
-require TEST_FILES_PATH . 'NamespaceCoveredFunction.php';
-
-/**
- * @since      Class available since Release 3.3.6
- */
-class Util_TestTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @covers PHPUnit_Util_Test::getExpectedException
-     * @todo   Split up in separate tests
-     */
-    public function testGetExpectedException()
-    {
-        $this->assertArraySubset(
-          array('class' => 'FooBarBaz', 'code' => null, 'message' => ''),
-          PHPUnit_Util_Test::getExpectedException('ExceptionTest', 'testOne')
-        );
-
-        $this->assertArraySubset(
-          array('class' => 'Foo_Bar_Baz', 'code' => null, 'message' => ''),
-          PHPUnit_Util_Test::getExpectedException('ExceptionTest', 'testTwo')
-        );
-
-        $this->assertArraySubset(
-          array('class' => 'Foo\Bar\Baz', 'code' => null, 'message' => ''),
-          PHPUnit_Util_Test::getExpectedException('ExceptionTest', 'testThree')
-        );
-
-        $this->assertArraySubset(
-          array('class' => 'ほげ', 'code' => null, 'message' => ''),
-          PHPUnit_Util_Test::getExpectedException('ExceptionTest', 'testFour')
-        );
-
-        $this->assertArraySubset(
-          array('class' => 'Class', 'code' => 1234, 'message' => 'Message'),
-          PHPUnit_Util_Test::getExpectedException('ExceptionTest', 'testFive')
-        );
-
-        $this->assertArraySubset(
-          array('class' => 'Class', 'code' => 1234, 'message' => 'Message'),
-          PHPUnit_Util_Test::getExpectedException('ExceptionTest', 'testSix')
-        );
-
-        $this->assertArraySubset(
-          array('class' => 'Class', 'code' => 'ExceptionCode', 'message' => 'Message'),
-          PHPUnit_Util_Test::getExpectedException('ExceptionTest', 'testSeven')
-        );
-
-        $this->assertArraySubset(
-          array('class' => 'Class', 'code' => 0, 'message' => 'Message'),
-          PHPUnit_Util_Test::getExpectedException('ExceptionTest', 'testEight')
-        );
-
-        $this->assertArraySubset(
-          array('class' => 'Class', 'code' => ExceptionTest::ERROR_CODE, 'message' => ExceptionTest::ERROR_MESSAGE),
-          PHPUnit_Util_Test::getExpectedException('ExceptionTest', 'testNine')
-        );
-
-        $this->assertArraySubset(
-          array('class' => 'Class', 'code' => null, 'message' => ''),
-          PHPUnit_Util_Test::getExpectedException('ExceptionTest', 'testSingleLine')
-        );
-
-        $this->assertArraySubset(
-          array('class' => 'Class', 'code' => My\Space\ExceptionNamespaceTest::ERROR_CODE, 'message' => My\Space\ExceptionNamespaceTest::ERROR_MESSAGE),
-          PHPUnit_Util_Test::getExpectedException('My\Space\ExceptionNamespaceTest', 'testConstants')
-        );
-
-        // Ensure the Class::CONST expression is only evaluated when the constant really exists
-        $this->assertArraySubset(
-          array('class' => 'Class', 'code' => 'ExceptionTest::UNKNOWN_CODE_CONSTANT', 'message' => 'ExceptionTest::UNKNOWN_MESSAGE_CONSTANT'),
-          PHPUnit_Util_Test::getExpectedException('ExceptionTest', 'testUnknownConstants')
-        );
-
-        $this->assertArraySubset(
-          array('class' => 'Class', 'code' => 'My\Space\ExceptionNamespaceTest::UNKNOWN_CODE_CONSTANT', 'message' => 'My\Space\ExceptionNamespaceTest::UNKNOWN_MESSAGE_CONSTANT'),
-          PHPUnit_Util_Test::getExpectedException('My\Space\ExceptionNamespaceTest', 'testUnknownConstants')
-        );
-    }
-
-    /**
-     * @covers PHPUnit_Util_Test::getExpectedException
-     */
-    public function testGetExpectedRegExp()
-    {
-        $this->assertArraySubset(
-          array('message_regex' => '#regex#'),
-          PHPUnit_Util_Test::getExpectedException('ExceptionTest', 'testWithRegexMessage')
-        );
-
-        $this->assertArraySubset(
-          array('message_regex' => '#regex#'),
-          PHPUnit_Util_Test::getExpectedException('ExceptionTest', 'testWithRegexMessageFromClassConstant')
-        );
-
-        $this->assertArraySubset(
-          array('message_regex' => 'ExceptionTest::UNKNOWN_MESSAGE_REGEX_CONSTANT'),
-          PHPUnit_Util_Test::getExpectedException('ExceptionTest', 'testWithUnknowRegexMessageFromClassConstant')
-        );
-    }
-
-    /**
-     * @covers       PHPUnit_Util_Test::getRequirements
-     * @dataProvider requirementsProvider
-     */
-    public function testGetRequirements($test, $result)
-    {
-        $this->assertEquals(
-            $result,
-            PHPUnit_Util_Test::getRequirements('RequirementsTest', $test)
-        );
-    }
-
-    public function requirementsProvider()
-    {
-        return array(
-            array('testOne',    array()),
-            array('testTwo',    array('PHPUnit' => '1.0')),
-            array('testThree',  array('PHP' => '2.0')),
-            array('testFour',   array('PHPUnit'=>'2.0', 'PHP' => '1.0')),
-            array('testFive',   array('PHP' => '5.4.0RC6')),
-            array('testSix',    array('PHP' => '5.4.0-alpha1')),
-            array('testSeven',  array('PHP' => '5.4.0beta2')),
-            array('testEight',  array('PHP' => '5.4-dev')),
-            array('testNine',   array('functions' => array('testFunc'))),
-            array('testTen',    array('extensions' => array('testExt'))),
-            array('testEleven', array('OS' => '/Linux/i')),
-            array(
-              'testSpace',
-              array(
-                'extensions' => array('spl'),
-                'OS'         => '/.*/i'
-              )
-            ),
-            array(
-              'testAllPossibleRequirements',
-              array(
-                'PHP'       => '99-dev',
-                'PHPUnit'   => '9-dev',
-                'OS'        => '/DOESNOTEXIST/i',
-                'functions' => array(
-                  'testFuncOne',
-                  'testFuncTwo',
-                ),
-                'extensions' => array(
-                  'testExtOne',
-                  'testExtTwo',
-                )
-              )
-            )
-        );
-    }
-
-    /**
-     * @covers PHPUnit_Util_Test::getRequirements
-     */
-    public function testGetRequirementsMergesClassAndMethodDocBlocks()
-    {
-        $expectedAnnotations = array(
-            'PHP'       => '5.4',
-            'PHPUnit'   => '3.7',
-            'OS'        => '/WINNT/i',
-            'functions' => array(
-              'testFuncClass',
-              'testFuncMethod',
-            ),
-            'extensions' => array(
-              'testExtClass',
-              'testExtMethod',
-            )
-        );
-
-        $this->assertEquals(
-            $expectedAnnotations,
-            PHPUnit_Util_Test::getRequirements('RequirementsClassDocBlockTest', 'testMethod')
-        );
-    }
-
-    /**
-     * @covers       PHPUnit_Util_Test::getMissingRequirements
-     * @dataProvider missingRequirementsProvider
-     */
-    public function testGetMissingRequirements($test, $result)
-    {
-        $this->assertEquals(
-            $result,
-            PHPUnit_Util_Test::getMissingRequirements('RequirementsTest', $test)
-        );
-    }
-
-    public function missingRequirementsProvider()
-    {
-        return array(
-            array('testOne',            array()),
-            array('testNine',           array('Function testFunc is required.')),
-            array('testTen',            array('Extension testExt is required.')),
-            array('testAlwaysSkip',     array('PHPUnit 1111111 (or later) is required.')),
-            array('testAlwaysSkip2',    array('PHP 9999999 (or later) is required.')),
-            array('testAlwaysSkip3',    array('Operating system matching /DOESNOTEXIST/i is required.')),
-            array('testAllPossibleRequirements', array(
-              'PHP 99-dev (or later) is required.',
-              'PHPUnit 9-dev (or later) is required.',
-              'Operating system matching /DOESNOTEXIST/i is required.',
-              'Function testFuncOne is required.',
-              'Function testFuncTwo is required.',
-              'Extension testExtOne is required.',
-              'Extension testExtTwo is required.',
-            )),
-        );
-    }
-
-    /**
-     * @coversNothing
-     * @todo   This test does not really test functionality of PHPUnit_Util_Test
-     */
-    public function testGetProvidedDataRegEx()
-    {
-        $result = preg_match(PHPUnit_Util_Test::REGEX_DATA_PROVIDER, '@dataProvider method', $matches);
-        $this->assertEquals(1, $result);
-        $this->assertEquals('method', $matches[1]);
-
-        $result = preg_match(PHPUnit_Util_Test::REGEX_DATA_PROVIDER, '@dataProvider class::method', $matches);
-        $this->assertEquals(1, $result);
-        $this->assertEquals('class::method', $matches[1]);
-
-        $result = preg_match(PHPUnit_Util_Test::REGEX_DATA_PROVIDER, '@dataProvider namespace\class::method', $matches);
-        $this->assertEquals(1, $result);
-        $this->assertEquals('namespace\class::method', $matches[1]);
-
-        $result = preg_match(PHPUnit_Util_Test::REGEX_DATA_PROVIDER, '@dataProvider namespace\namespace\class::method', $matches);
-        $this->assertEquals(1, $result);
-        $this->assertEquals('namespace\namespace\class::method', $matches[1]);
-
-        $result = preg_match(PHPUnit_Util_Test::REGEX_DATA_PROVIDER, '@dataProvider メソッド', $matches);
-        $this->assertEquals(1, $result);
-        $this->assertEquals('メソッド', $matches[1]);
-    }
-
-    /**
-     * @covers PHPUnit_Util_Test::getDataFromTestWithAnnotation
-     */
-    public function testTestWithEmptyAnnotation()
-    {
-        $result = PHPUnit_Util_Test::getDataFromTestWithAnnotation("/**\n * @anotherAnnotation\n */");
-        $this->assertNull($result);
-    }
-
-    /**
-     * @covers PHPUnit_Util_Test::getDataFromTestWithAnnotation
-     */
-    public function testTestWithSimpleCase()
-    {
-        $result = PHPUnit_Util_Test::getDataFromTestWithAnnotation('/**
-                                                                     * @testWith [1]
-                                                                     */');
-        $this->assertEquals(array(array(1)), $result);
-    }
-
-    /**
-     * @covers PHPUnit_Util_Test::getDataFromTestWithAnnotation
-     */
-    public function testTestWithMultiLineMultiParameterCase()
-    {
-        $result = PHPUnit_Util_Test::getDataFromTestWithAnnotation('/**
-                                                                     * @testWith [1, 2]
-                                                                     * [3, 4]
-                                                                     */');
-        $this->assertEquals(array(array(1, 2), array(3, 4)), $result);
-    }
-
-    /**
-     * @covers PHPUnit_Util_Test::getDataFromTestWithAnnotation
-     */
-    public function testTestWithVariousTypes()
-    {
-        $result = PHPUnit_Util_Test::getDataFromTestWithAnnotation('/**
-            * @testWith ["ab"]
-            *           [true]
-            *           [null]
-         */');
-        $this->assertEquals(array(array('ab'), array(true), array(null)), $result);
-    }
-
-    /**
-     * @covers PHPUnit_Util_Test::getDataFromTestWithAnnotation
-     */
-    public function testTestWithAnnotationAfter()
-    {
-        $result = PHPUnit_Util_Test::getDataFromTestWithAnnotation('/**
-                                                                     * @testWith [1]
-                                                                     *           [2]
-                                                                     * @annotation
-                                                                     */');
-        $this->assertEquals(array(array(1), array(2)), $result);
-    }
-
-    /**
-     * @covers PHPUnit_Util_Test::getDataFromTestWithAnnotation
-     */
-    public function testTestWithSimpleTextAfter()
-    {
-        $result = PHPUnit_Util_Test::getDataFromTestWithAnnotation('/**
-                                                                     * @testWith [1]
-                                                                     *           [2]
-                                                                     * blah blah
-                                                                     */');
-        $this->assertEquals(array(array(1), array(2)), $result);
-    }
-
-    /**
-     * @covers PHPUnit_Util_Test::getDataFromTestWithAnnotation
-     */
-    public function testTestWithCharacterEscape()
-    {
-        $result = PHPUnit_Util_Test::getDataFromTestWithAnnotation('/**
-                                                                     * @testWith ["\"", "\""]
-                                                                     */');
-        $this->assertEquals(array(array('"', '"')), $result);
-    }
-
-    /**
-     * @covers PHPUnit_Util_Test::getDataFromTestWithAnnotation
-     */
-    public function testTestWithThrowsProperExceptionIfDatasetCannotBeParsed()
-    {
-        $this->setExpectedExceptionRegExp(
-            'PHPUnit_Framework_Exception',
-            '/^The dataset for the @testWith annotation cannot be parsed.$/'
-        );
-        PHPUnit_Util_Test::getDataFromTestWithAnnotation('/**
-                                                           * @testWith [s]
-                                                           */');
-    }
-
-    /**
-     * @covers PHPUnit_Util_Test::getDependencies
-     * @todo   Not sure what this test tests (name is misleading at least)
-     */
-    public function testParseAnnotation()
-    {
-        $this->assertEquals(
-            array('Foo', 'ほげ'),
-            PHPUnit_Util_Test::getDependencies(get_class($this), 'methodForTestParseAnnotation')
-        );
-    }
-
-    /**
-     * @depends Foo
-     * @depends ほげ
-     * @todo    Remove fixture from test class
-     */
-    public function methodForTestParseAnnotation()
-    {
-    }
-
-    /**
-     * @covers PHPUnit_Util_Test::getDependencies
-     */
-    public function testParseAnnotationThatIsOnlyOneLine()
-    {
-        $this->assertEquals(
-            array('Bar'),
-            PHPUnit_Util_Test::getDependencies(get_class($this), 'methodForTestParseAnnotationThatIsOnlyOneLine')
-        );
-    }
-
-    /** @depends Bar */
-    public function methodForTestParseAnnotationThatIsOnlyOneLine()
-    {
-        // TODO Remove fixture from test class
-    }
-
-    /**
-     * @covers       PHPUnit_Util_Test::getLinesToBeCovered
-     * @covers       PHPUnit_Util_Test::getLinesToBeCoveredOrUsed
-     * @covers       PHPUnit_Util_Test::resolveElementToReflectionObjects
-     * @dataProvider getLinesToBeCoveredProvider
-     */
-    public function testGetLinesToBeCovered($test, $lines)
-    {
-        if (strpos($test, 'Namespace') === 0) {
-            $expected = array(
-              TEST_FILES_PATH . 'NamespaceCoveredClass.php' => $lines
-            );
-        } elseif ($test === 'CoverageNoneTest') {
-            $expected = array();
-        } elseif ($test === 'CoverageNothingTest') {
-            $expected = false;
-        } elseif ($test === 'CoverageFunctionTest') {
-            $expected = array(
-              TEST_FILES_PATH . 'CoveredFunction.php' => $lines
-            );
-        } else {
-            $expected = array(TEST_FILES_PATH . 'CoveredClass.php' => $lines);
-        }
-
-        $this->assertEquals(
-            $expected,
-            PHPUnit_Util_Test::getLinesToBeCovered(
-                $test, 'testSomething'
-            )
-        );
-    }
-
-    /**
-     * @covers            PHPUnit_Util_Test::getLinesToBeCovered
-     * @covers            PHPUnit_Util_Test::getLinesToBeCoveredOrUsed
-     * @covers            PHPUnit_Util_Test::resolveElementToReflectionObjects
-     * @expectedException PHPUnit_Framework_CodeCoverageException
-     */
-    public function testGetLinesToBeCovered2()
-    {
-        PHPUnit_Util_Test::getLinesToBeCovered(
-            'NotExistingCoveredElementTest', 'testOne'
-        );
-    }
-
-    /**
-     * @covers            PHPUnit_Util_Test::getLinesToBeCovered
-     * @covers            PHPUnit_Util_Test::getLinesToBeCoveredOrUsed
-     * @covers            PHPUnit_Util_Test::resolveElementToReflectionObjects
-     * @expectedException PHPUnit_Framework_CodeCoverageException
-     */
-    public function testGetLinesToBeCovered3()
-    {
-        PHPUnit_Util_Test::getLinesToBeCovered(
-            'NotExistingCoveredElementTest', 'testTwo'
-        );
-    }
-
-    /**
-     * @covers            PHPUnit_Util_Test::getLinesToBeCovered
-     * @covers            PHPUnit_Util_Test::getLinesToBeCoveredOrUsed
-     * @covers            PHPUnit_Util_Test::resolveElementToReflectionObjects
-     * @expectedException PHPUnit_Framework_CodeCoverageException
-     */
-    public function testGetLinesToBeCovered4()
-    {
-        PHPUnit_Util_Test::getLinesToBeCovered(
-            'NotExistingCoveredElementTest', 'testThree'
-        );
-    }
-
-    /**
-     * @covers PHPUnit_Util_Test::getLinesToBeCovered
-     * @covers PHPUnit_Util_Test::getLinesToBeCoveredOrUsed
-     */
-    public function testGetLinesToBeCoveredSkipsNonExistentMethods()
-    {
-        $this->assertSame(
-            array(),
-            PHPUnit_Util_Test::getLinesToBeCovered(
-                'NotExistingCoveredElementTest',
-                'methodDoesNotExist'
-            )
-        );
-    }
-
-    /**
-     * @covers            PHPUnit_Util_Test::getLinesToBeCovered
-     * @covers            PHPUnit_Util_Test::getLinesToBeCoveredOrUsed
-     * @expectedException PHPUnit_Framework_CodeCoverageException
-     */
-    public function testTwoCoversDefaultClassAnnoationsAreNotAllowed()
-    {
-        PHPUnit_Util_Test::getLinesToBeCovered(
-            'CoverageTwoDefaultClassAnnotations',
-            'testSomething'
-        );
-    }
-
-    /**
-     * @covers PHPUnit_Util_Test::getLinesToBeCovered
-     * @covers PHPUnit_Util_Test::getLinesToBeCoveredOrUsed
-     */
-    public function testFunctionParenthesesAreAllowed()
-    {
-        $this->assertSame(
-            array(TEST_FILES_PATH . 'CoveredFunction.php' => range(2, 4)),
-            PHPUnit_Util_Test::getLinesToBeCovered(
-                'CoverageFunctionParenthesesTest',
-                'testSomething'
-            )
-        );
-    }
-
-    /**
-     * @covers PHPUnit_Util_Test::getLinesToBeCovered
-     * @covers PHPUnit_Util_Test::getLinesToBeCoveredOrUsed
-     */
-    public function testFunctionParenthesesAreAllowedWithWhitespace()
-    {
-        $this->assertSame(
-            array(TEST_FILES_PATH . 'CoveredFunction.php' => range(2, 4)),
-            PHPUnit_Util_Test::getLinesToBeCovered(
-                'CoverageFunctionParenthesesWhitespaceTest',
-                'testSomething'
-            )
-        );
-    }
-
-    /**
-     * @covers PHPUnit_Util_Test::getLinesToBeCovered
-     * @covers PHPUnit_Util_Test::getLinesToBeCoveredOrUsed
-     */
-    public function testMethodParenthesesAreAllowed()
-    {
-        $this->assertSame(
-            array(TEST_FILES_PATH . 'CoveredClass.php' => range(31, 35)),
-            PHPUnit_Util_Test::getLinesToBeCovered(
-                'CoverageMethodParenthesesTest',
-                'testSomething'
-            )
-        );
-    }
-
-    /**
-     * @covers PHPUnit_Util_Test::getLinesToBeCovered
-     * @covers PHPUnit_Util_Test::getLinesToBeCoveredOrUsed
-     */
-    public function testMethodParenthesesAreAllowedWithWhitespace()
-    {
-        $this->assertSame(
-            array(TEST_FILES_PATH . 'CoveredClass.php' => range(31, 35)),
-            PHPUnit_Util_Test::getLinesToBeCovered(
-                'CoverageMethodParenthesesWhitespaceTest',
-                'testSomething'
-            )
-        );
-    }
-
-    /**
-     * @covers PHPUnit_Util_Test::getLinesToBeCovered
-     * @covers PHPUnit_Util_Test::getLinesToBeCoveredOrUsed
-     */
-    public function testNamespacedFunctionCanBeCoveredOrUsed()
-    {
-        $this->assertEquals(
-            array(
-                TEST_FILES_PATH . 'NamespaceCoveredFunction.php' => range(4, 7)
-            ),
-            PHPUnit_Util_Test::getLinesToBeCovered(
-                'CoverageNamespacedFunctionTest',
-                'testFunc'
-            )
-        );
-    }
-
-    public function getLinesToBeCoveredProvider()
-    {
-        return array(
-          array(
-            'CoverageNoneTest',
-            array()
-          ),
-          array(
-            'CoverageClassExtendedTest',
-            array_merge(range(19, 36), range(2, 17))
-          ),
-          array(
-            'CoverageClassTest',
-            range(19, 36)
-          ),
-          array(
-            'CoverageMethodTest',
-            range(31, 35)
-          ),
-          array(
-            'CoverageMethodOneLineAnnotationTest',
-            range(31, 35)
-          ),
-          array(
-            'CoverageNotPrivateTest',
-            array_merge(range(25, 29), range(31, 35))
-          ),
-          array(
-            'CoverageNotProtectedTest',
-            array_merge(range(21, 23), range(31, 35))
-          ),
-          array(
-            'CoverageNotPublicTest',
-            array_merge(range(21, 23), range(25, 29))
-          ),
-          array(
-            'CoveragePrivateTest',
-            range(21, 23)
-          ),
-          array(
-            'CoverageProtectedTest',
-            range(25, 29)
-          ),
-          array(
-            'CoveragePublicTest',
-            range(31, 35)
-          ),
-          array(
-            'CoverageFunctionTest',
-            range(2, 4)
-          ),
-          array(
-            'NamespaceCoverageClassExtendedTest',
-            array_merge(range(21, 38), range(4, 19))
-          ),
-          array(
-            'NamespaceCoverageClassTest',
-            range(21, 38)
-          ),
-          array(
-            'NamespaceCoverageMethodTest',
-            range(33, 37)
-          ),
-          array(
-            'NamespaceCoverageNotPrivateTest',
-            array_merge(range(27, 31), range(33, 37))
-          ),
-          array(
-            'NamespaceCoverageNotProtectedTest',
-            array_merge(range(23, 25), range(33, 37))
-          ),
-          array(
-            'NamespaceCoverageNotPublicTest',
-            array_merge(range(23, 25), range(27, 31))
-          ),
-          array(
-            'NamespaceCoveragePrivateTest',
-            range(23, 25)
-          ),
-          array(
-            'NamespaceCoverageProtectedTest',
-            range(27, 31)
-          ),
-          array(
-            'NamespaceCoveragePublicTest',
-            range(33, 37)
-          ),
-          array(
-            'NamespaceCoverageCoversClassTest',
-            array_merge(range(23, 25), range(27, 31), range(33, 37), range(6, 8), range(10, 13), range(15, 18))
-          ),
-          array(
-            'NamespaceCoverageCoversClassPublicTest',
-            range(33, 37)
-          ),
-          array(
-            'CoverageNothingTest',
-            false
-          )
-        );
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/Util/XMLTest.php b/vendor/phpunit/phpunit/tests/Util/XMLTest.php
deleted file mode 100644
index 086b738..0000000
--- a/vendor/phpunit/phpunit/tests/Util/XMLTest.php
+++ /dev/null
@@ -1,318 +0,0 @@
-<?php
-/*
- * This file is part of PHPUnit.
- *
- * (c) Sebastian Bergmann <sebastian@phpunit.de>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-/**
- * @since      Class available since Release 3.3.0
- * @covers     PHPUnit_Util_XML
- */
-class Util_XMLTest extends PHPUnit_Framework_TestCase
-{
-    public function testAssertValidKeysValidKeys()
-    {
-        $options   = array('testA' => 1, 'testB' => 2, 'testC' => 3);
-        $valid     = array('testA', 'testB', 'testC');
-        $expected  = array('testA' => 1, 'testB' => 2, 'testC' => 3);
-        $validated = PHPUnit_Util_XML::assertValidKeys($options, $valid);
-
-        $this->assertEquals($expected, $validated);
-    }
-
-    public function testAssertValidKeysValidKeysEmpty()
-    {
-        $options   = array('testA' => 1, 'testB' => 2);
-        $valid     = array('testA', 'testB', 'testC');
-        $expected  = array('testA' => 1, 'testB' => 2, 'testC' => null);
-        $validated = PHPUnit_Util_XML::assertValidKeys($options, $valid);
-
-        $this->assertEquals($expected, $validated);
-    }
-
-    public function testAssertValidKeysDefaultValuesA()
-    {
-        $options   = array('testA' => 1, 'testB' => 2);
-        $valid     = array('testA' => 23, 'testB' => 24, 'testC' => 25);
-        $expected  = array('testA' => 1, 'testB' => 2, 'testC' => 25);
-        $validated = PHPUnit_Util_XML::assertValidKeys($options, $valid);
-
-        $this->assertEquals($expected, $validated);
-    }
-
-    public function testAssertValidKeysDefaultValuesB()
-    {
-        $options   = array();
-        $valid     = array('testA' => 23, 'testB' => 24, 'testC' => 25);
-        $expected  = array('testA' => 23, 'testB' => 24, 'testC' => 25);
-        $validated = PHPUnit_Util_XML::assertValidKeys($options, $valid);
-
-        $this->assertEquals($expected, $validated);
-    }
-
-    public function testAssertValidKeysInvalidKey()
-    {
-        $options = array('testA' => 1, 'testB' => 2, 'testD' => 3);
-        $valid   = array('testA', 'testB', 'testC');
-
-        try {
-            $validated = PHPUnit_Util_XML::assertValidKeys($options, $valid);
-            $this->fail();
-        } catch (PHPUnit_Framework_Exception $e) {
-            $this->assertEquals('Unknown key(s): testD', $e->getMessage());
-        }
-    }
-
-    public function testAssertValidKeysInvalidKeys()
-    {
-        $options = array('testA' => 1, 'testD' => 2, 'testE' => 3);
-        $valid   = array('testA', 'testB', 'testC');
-
-        try {
-            $validated = PHPUnit_Util_XML::assertValidKeys($options, $valid);
-            $this->fail();
-        } catch (PHPUnit_Framework_Exception $e) {
-            $this->assertEquals('Unknown key(s): testD, testE', $e->getMessage());
-        }
-    }
-
-    public function testConvertAssertSelect()
-    {
-        $selector  = 'div#folder.open a[href="http://www.xerox.com"][title="xerox"].selected.big > span + h1';
-        $converted = PHPUnit_Util_XML::convertSelectToTag($selector);
-        $tag       = array('tag'        => 'div',
-                           'id'         => 'folder',
-                           'class'      => 'open',
-                           'descendant' => array('tag'        => 'a',
-                                                 'class'      => 'selected big',
-                                                 'attributes' => array('href'             => 'http://www.xerox.com',
-                                                                       'title'            => 'xerox'),
-                                                 'child'      => array('tag'              => 'span',
-                                                                       'adjacent-sibling' => array('tag' => 'h1'))));
-        $this->assertEquals($tag, $converted);
-    }
-
-    public function testConvertAssertSelectElt()
-    {
-        $selector  = 'div';
-        $converted = PHPUnit_Util_XML::convertSelectToTag($selector);
-        $tag       = array('tag' => 'div');
-
-        $this->assertEquals($tag, $converted);
-    }
-
-    public function testConvertAssertClass()
-    {
-        $selector  = '.foo';
-        $converted = PHPUnit_Util_XML::convertSelectToTag($selector);
-        $tag       = array('class' => 'foo');
-
-        $this->assertEquals($tag, $converted);
-    }
-
-    public function testConvertAssertId()
-    {
-        $selector  = '#foo';
-        $converted = PHPUnit_Util_XML::convertSelectToTag($selector);
-        $tag       = array('id' => 'foo');
-
-        $this->assertEquals($tag, $converted);
-    }
-
-    public function testConvertAssertAttribute()
-    {
-        $selector  = '[foo="bar"]';
-        $converted = PHPUnit_Util_XML::convertSelectToTag($selector);
-        $tag       = array('attributes' => array('foo' => 'bar'));
-
-        $this->assertEquals($tag, $converted);
-    }
-
-    public function testConvertAssertAttributeSpaces()
-    {
-        $selector  = '[foo="bar baz"] div[value="foo bar"]';
-        $converted = PHPUnit_Util_XML::convertSelectToTag($selector);
-        $tag       = array('attributes' => array('foo'        => 'bar baz'),
-                           'descendant' => array('tag'        => 'div',
-                                                 'attributes' => array('value' => 'foo bar')));
-        $this->assertEquals($tag, $converted);
-    }
-
-    public function testConvertAssertAttributeMultipleSpaces()
-    {
-        $selector  = '[foo="bar baz"] div[value="foo bar baz"]';
-        $converted = PHPUnit_Util_XML::convertSelectToTag($selector);
-        $tag       = array('attributes' => array('foo'        => 'bar baz'),
-                          'descendant'  => array('tag'        => 'div',
-                                                'attributes'  => array('value' => 'foo bar baz')));
-        $this->assertEquals($tag, $converted);
-    }
-
-    public function testConvertAssertSelectEltClass()
-    {
-        $selector  = 'div.foo';
-        $converted = PHPUnit_Util_XML::convertSelectToTag($selector);
-        $tag       = array('tag' => 'div', 'class' => 'foo');
-
-        $this->assertEquals($tag, $converted);
-    }
-
-    public function testConvertAssertSelectEltId()
-    {
-        $selector  = 'div#foo';
-        $converted = PHPUnit_Util_XML::convertSelectToTag($selector);
-        $tag       = array('tag' => 'div', 'id' => 'foo');
-
-        $this->assertEquals($tag, $converted);
-    }
-
-    public function testConvertAssertSelectEltAttrEqual()
-    {
-        $selector  = 'div[foo="bar"]';
-        $converted = PHPUnit_Util_XML::convertSelectToTag($selector);
-        $tag       = array('tag' => 'div', 'attributes' => array('foo' => 'bar'));
-
-        $this->assertEquals($tag, $converted);
-    }
-
-    public function testConvertAssertSelectEltMultiAttrEqual()
-    {
-        $selector  = 'div[foo="bar"][baz="fob"]';
-        $converted = PHPUnit_Util_XML::convertSelectToTag($selector);
-        $tag       = array('tag' => 'div', 'attributes' => array('foo' => 'bar', 'baz' => 'fob'));
-
-        $this->assertEquals($tag, $converted);
-    }
-
-    public function testConvertAssertSelectEltAttrHasOne()
-    {
-        $selector  = 'div[foo~="bar"]';
-        $converted = PHPUnit_Util_XML::convertSelectToTag($selector);
-        $tag       = array('tag' => 'div', 'attributes' => array('foo' => 'regexp:/.*\bbar\b.*/'));
-
-        $this->assertEquals($tag, $converted);
-    }
-
-    public function testConvertAssertSelectEltAttrContains()
-    {
-        $selector  = 'div[foo*="bar"]';
-        $converted = PHPUnit_Util_XML::convertSelectToTag($selector);
-        $tag       = array('tag' => 'div', 'attributes' => array('foo' => 'regexp:/.*bar.*/'));
-
-        $this->assertEquals($tag, $converted);
-    }
-
-    public function testConvertAssertSelectEltChild()
-    {
-        $selector  = 'div > a';
-        $converted = PHPUnit_Util_XML::convertSelectToTag($selector);
-        $tag       = array('tag' => 'div', 'child' => array('tag' => 'a'));
-
-        $this->assertEquals($tag, $converted);
-    }
-
-    public function testConvertAssertSelectEltAdjacentSibling()
-    {
-        $selector  = 'div + a';
-        $converted = PHPUnit_Util_XML::convertSelectToTag($selector);
-        $tag       = array('tag' => 'div', 'adjacent-sibling' => array('tag' => 'a'));
-
-        $this->assertEquals($tag, $converted);
-    }
-
-    public function testConvertAssertSelectEltDescendant()
-    {
-        $selector  = 'div a';
-        $converted = PHPUnit_Util_XML::convertSelectToTag($selector);
-        $tag       = array('tag' => 'div', 'descendant' => array('tag' => 'a'));
-
-        $this->assertEquals($tag, $converted);
-    }
-
-    public function testConvertAssertSelectContent()
-    {
-        $selector  = '#foo';
-        $content   = 'div contents';
-        $converted = PHPUnit_Util_XML::convertSelectToTag($selector, $content);
-        $tag       = array('id' => 'foo', 'content' => 'div contents');
-
-        $this->assertEquals($tag, $converted);
-    }
-
-    public function testConvertAssertSelectTrue()
-    {
-        $selector  = '#foo';
-        $content   = true;
-        $converted = PHPUnit_Util_XML::convertSelectToTag($selector, $content);
-        $tag       = array('id' => 'foo');
-
-        $this->assertEquals($tag, $converted);
-    }
-
-    public function testConvertAssertSelectFalse()
-    {
-        $selector  = '#foo';
-        $content   = false;
-        $converted = PHPUnit_Util_XML::convertSelectToTag($selector, $content);
-        $tag       = array('id' => 'foo');
-
-        $this->assertEquals($tag, $converted);
-    }
-
-    public function testConvertAssertNumber()
-    {
-        $selector  = '.foo';
-        $content   = 3;
-        $converted = PHPUnit_Util_XML::convertSelectToTag($selector, $content);
-        $tag       = array('class' => 'foo');
-
-        $this->assertEquals($tag, $converted);
-    }
-
-    public function testConvertAssertRange()
-    {
-        $selector  = '#foo';
-        $content   = array('greater_than' => 5, 'less_than' => 10);
-        $converted = PHPUnit_Util_XML::convertSelectToTag($selector, $content);
-        $tag       = array('id' => 'foo');
-
-        $this->assertEquals($tag, $converted);
-    }
-
-    /**
-     * @dataProvider charProvider
-     */
-    public function testPrepareString($char)
-    {
-        $e = null;
-
-        $escapedString = PHPUnit_Util_XML::prepareString($char);
-        $xml           = "<?xml version='1.0' encoding='UTF-8' ?><tag>$escapedString</tag>";
-        $dom           = new DomDocument('1.0', 'UTF-8');
-
-        try {
-            $dom->loadXML($xml);
-        } catch (Exception $e) {
-        }
-
-        $this->assertNull($e, sprintf(
-            'PHPUnit_Util_XML::prepareString("\x%02x") should not crash DomDocument',
-            ord($char)
-        ));
-    }
-
-    public function charProvider()
-    {
-        $data = array();
-
-        for ($i = 0; $i < 256; $i++) {
-            $data[] = array(chr($i));
-        }
-
-        return $data;
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/AbstractTest.php b/vendor/phpunit/phpunit/tests/_files/AbstractTest.php
deleted file mode 100644
index 556e7db..0000000
--- a/vendor/phpunit/phpunit/tests/_files/AbstractTest.php
+++ /dev/null
@@ -1,7 +0,0 @@
-<?php
-abstract class AbstractTest extends PHPUnit_Framework_TestCase
-{
-    public function testOne()
-    {
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/Author.php b/vendor/phpunit/phpunit/tests/_files/Author.php
deleted file mode 100644
index 6a24750..0000000
--- a/vendor/phpunit/phpunit/tests/_files/Author.php
+++ /dev/null
@@ -1,27 +0,0 @@
-<?php
-/*
- * This file is part of PHPUnit.
- *
- * (c) Sebastian Bergmann <sebastian@phpunit.de>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-/**
- * An author.
- *
- * @since      Class available since Release 3.6.0
- */
-class Author
-{
-    // the order of properties is important for testing the cycle!
-    public $books = array();
-
-    private $name = '';
-
-    public function __construct($name)
-    {
-        $this->name = $name;
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/BankAccount.php b/vendor/phpunit/phpunit/tests/_files/BankAccount.php
deleted file mode 100644
index 7b13443..0000000
--- a/vendor/phpunit/phpunit/tests/_files/BankAccount.php
+++ /dev/null
@@ -1,79 +0,0 @@
-<?php
-/*
- * This file is part of PHPUnit.
- *
- * (c) Sebastian Bergmann <sebastian@phpunit.de>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-class BankAccountException extends RuntimeException
-{
-}
-
-/**
- * A bank account.
- *
- * @since      Class available since Release 2.3.0
- */
-class BankAccount
-{
-    /**
-     * The bank account's balance.
-     *
-     * @var float
-     */
-    protected $balance = 0;
-
-    /**
-     * Returns the bank account's balance.
-     *
-     * @return float
-     */
-    public function getBalance()
-    {
-        return $this->balance;
-    }
-
-    /**
-     * Sets the bank account's balance.
-     *
-     * @param  float                $balance
-     * @throws BankAccountException
-     */
-    protected function setBalance($balance)
-    {
-        if ($balance >= 0) {
-            $this->balance = $balance;
-        } else {
-            throw new BankAccountException;
-        }
-    }
-
-    /**
-     * Deposits an amount of money to the bank account.
-     *
-     * @param  float                $balance
-     * @throws BankAccountException
-     */
-    public function depositMoney($balance)
-    {
-        $this->setBalance($this->getBalance() + $balance);
-
-        return $this->getBalance();
-    }
-
-    /**
-     * Withdraws an amount of money from the bank account.
-     *
-     * @param  float                $balance
-     * @throws BankAccountException
-     */
-    public function withdrawMoney($balance)
-    {
-        $this->setBalance($this->getBalance() - $balance);
-
-        return $this->getBalance();
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/BankAccountTest.php b/vendor/phpunit/phpunit/tests/_files/BankAccountTest.php
deleted file mode 100644
index b8e7061..0000000
--- a/vendor/phpunit/phpunit/tests/_files/BankAccountTest.php
+++ /dev/null
@@ -1,87 +0,0 @@
-<?php
-/*
- * This file is part of PHPUnit.
- *
- * (c) Sebastian Bergmann <sebastian@phpunit.de>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-/**
- * Tests for the BankAccount class.
- *
- * @since      Class available since Release 2.3.0
- */
-class BankAccountTest extends PHPUnit_Framework_TestCase
-{
-    protected $ba;
-
-    protected function setUp()
-    {
-        $this->ba = new BankAccount;
-    }
-
-    /**
-     * @covers BankAccount::getBalance
-     * @group balanceIsInitiallyZero
-     * @group specification
-     */
-    public function testBalanceIsInitiallyZero()
-    {
-        $this->assertEquals(0, $this->ba->getBalance());
-    }
-
-    /**
-     * @covers BankAccount::withdrawMoney
-     * @group balanceCannotBecomeNegative
-     * @group specification
-     */
-    public function testBalanceCannotBecomeNegative()
-    {
-        try {
-            $this->ba->withdrawMoney(1);
-        } catch (BankAccountException $e) {
-            $this->assertEquals(0, $this->ba->getBalance());
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers BankAccount::depositMoney
-     * @group balanceCannotBecomeNegative
-     * @group specification
-     */
-    public function testBalanceCannotBecomeNegative2()
-    {
-        try {
-            $this->ba->depositMoney(-1);
-        } catch (BankAccountException $e) {
-            $this->assertEquals(0, $this->ba->getBalance());
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /*
-     * @covers BankAccount::getBalance
-     * @covers BankAccount::depositMoney
-     * @covers BankAccount::withdrawMoney
-     * @group balanceCannotBecomeNegative
-     */
-    /*
-    public function testDepositingAndWithdrawingMoneyWorks()
-    {
-        $this->assertEquals(0, $this->ba->getBalance());
-        $this->ba->depositMoney(1);
-        $this->assertEquals(1, $this->ba->getBalance());
-        $this->ba->withdrawMoney(1);
-        $this->assertEquals(0, $this->ba->getBalance());
-    }
-    */
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/BankAccountTest.test.php b/vendor/phpunit/phpunit/tests/_files/BankAccountTest.test.php
deleted file mode 100644
index 371cc77..0000000
--- a/vendor/phpunit/phpunit/tests/_files/BankAccountTest.test.php
+++ /dev/null
@@ -1,87 +0,0 @@
-<?php
-/*
- * This file is part of PHPUnit.
- *
- * (c) Sebastian Bergmann <sebastian@phpunit.de>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-/**
- * Tests for the BankAccount class.
- *
- * @since      Class available since Release 2.3.0
- */
-class BankAccountWithCustomExtensionTest extends PHPUnit_Framework_TestCase
-{
-    protected $ba;
-
-    protected function setUp()
-    {
-        $this->ba = new BankAccount;
-    }
-
-    /**
-     * @covers BankAccount::getBalance
-     * @group balanceIsInitiallyZero
-     * @group specification
-     */
-    public function testBalanceIsInitiallyZero()
-    {
-        $this->assertEquals(0, $this->ba->getBalance());
-    }
-
-    /**
-     * @covers BankAccount::withdrawMoney
-     * @group balanceCannotBecomeNegative
-     * @group specification
-     */
-    public function testBalanceCannotBecomeNegative()
-    {
-        try {
-            $this->ba->withdrawMoney(1);
-        } catch (BankAccountException $e) {
-            $this->assertEquals(0, $this->ba->getBalance());
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /**
-     * @covers BankAccount::depositMoney
-     * @group balanceCannotBecomeNegative
-     * @group specification
-     */
-    public function testBalanceCannotBecomeNegative2()
-    {
-        try {
-            $this->ba->depositMoney(-1);
-        } catch (BankAccountException $e) {
-            $this->assertEquals(0, $this->ba->getBalance());
-
-            return;
-        }
-
-        $this->fail();
-    }
-
-    /*
-     * @covers BankAccount::getBalance
-     * @covers BankAccount::depositMoney
-     * @covers BankAccount::withdrawMoney
-     * @group balanceCannotBecomeNegative
-     */
-    /*
-    public function testDepositingAndWithdrawingMoneyWorks()
-    {
-        $this->assertEquals(0, $this->ba->getBalance());
-        $this->ba->depositMoney(1);
-        $this->assertEquals(1, $this->ba->getBalance());
-        $this->ba->withdrawMoney(1);
-        $this->assertEquals(0, $this->ba->getBalance());
-    }
-    */
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/BaseTestListenerSample.php b/vendor/phpunit/phpunit/tests/_files/BaseTestListenerSample.php
deleted file mode 100644
index 7753b28..0000000
--- a/vendor/phpunit/phpunit/tests/_files/BaseTestListenerSample.php
+++ /dev/null
@@ -1,11 +0,0 @@
-<?php
-
-class BaseTestListenerSample extends PHPUnit_Framework_BaseTestListener
-{
-    public $endCount = 0;
-
-    public function endTest(PHPUnit_Framework_Test $test, $time)
-    {
-        $this->endCount++;
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/BeforeAndAfterTest.php b/vendor/phpunit/phpunit/tests/_files/BeforeAndAfterTest.php
deleted file mode 100644
index 0b52526..0000000
--- a/vendor/phpunit/phpunit/tests/_files/BeforeAndAfterTest.php
+++ /dev/null
@@ -1,35 +0,0 @@
-<?php
-class BeforeAndAfterTest extends PHPUnit_Framework_TestCase
-{
-    public static $beforeWasRun;
-    public static $afterWasRun;
-
-    public static function resetProperties()
-    {
-        self::$beforeWasRun = 0;
-        self::$afterWasRun  = 0;
-    }
-
-    /**
-     * @before
-     */
-    public function initialSetup()
-    {
-        self::$beforeWasRun++;
-    }
-
-    /**
-     * @after
-     */
-    public function finalTeardown()
-    {
-        self::$afterWasRun++;
-    }
-
-    public function test1()
-    {
-    }
-    public function test2()
-    {
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/BeforeClassAndAfterClassTest.php b/vendor/phpunit/phpunit/tests/_files/BeforeClassAndAfterClassTest.php
deleted file mode 100644
index 9afb4f1..0000000
--- a/vendor/phpunit/phpunit/tests/_files/BeforeClassAndAfterClassTest.php
+++ /dev/null
@@ -1,35 +0,0 @@
-<?php
-class BeforeClassAndAfterClassTest extends PHPUnit_Framework_TestCase
-{
-    public static $beforeClassWasRun = 0;
-    public static $afterClassWasRun  = 0;
-
-    public static function resetProperties()
-    {
-        self::$beforeClassWasRun = 0;
-        self::$afterClassWasRun  = 0;
-    }
-
-    /**
-     * @beforeClass
-     */
-    public static function initialClassSetup()
-    {
-        self::$beforeClassWasRun++;
-    }
-
-    /**
-     * @afterClass
-     */
-    public static function finalClassTeardown()
-    {
-        self::$afterClassWasRun++;
-    }
-
-    public function test1()
-    {
-    }
-    public function test2()
-    {
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/Book.php b/vendor/phpunit/phpunit/tests/_files/Book.php
deleted file mode 100644
index f62face..0000000
--- a/vendor/phpunit/phpunit/tests/_files/Book.php
+++ /dev/null
@@ -1,20 +0,0 @@
-<?php
-/*
- * This file is part of PHPUnit.
- *
- * (c) Sebastian Bergmann <sebastian@phpunit.de>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-/**
- * A book.
- *
- * @since      Class available since Release 3.6.0
- */
-class Book
-{
-    // the order of properties is important for testing the cycle!
-    public $author = null;
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/Calculator.php b/vendor/phpunit/phpunit/tests/_files/Calculator.php
deleted file mode 100644
index e269bd6..0000000
--- a/vendor/phpunit/phpunit/tests/_files/Calculator.php
+++ /dev/null
@@ -1,14 +0,0 @@
-<?php
-class Calculator
-{
-    /**
-     * @assert (0, 0) == 0
-     * @assert (0, 1) == 1
-     * @assert (1, 0) == 1
-     * @assert (1, 1) == 2
-     */
-    public function add($a, $b)
-    {
-        return $a + $b;
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/ChangeCurrentWorkingDirectoryTest.php b/vendor/phpunit/phpunit/tests/_files/ChangeCurrentWorkingDirectoryTest.php
deleted file mode 100644
index 70fab0b..0000000
--- a/vendor/phpunit/phpunit/tests/_files/ChangeCurrentWorkingDirectoryTest.php
+++ /dev/null
@@ -1,9 +0,0 @@
-<?php
-class ChangeCurrentWorkingDirectoryTest extends PHPUnit_Framework_TestCase
-{
-    public function testSomethingThatChangesTheCwd()
-    {
-        chdir('../');
-        $this->assertTrue(true);
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/ClassWithNonPublicAttributes.php b/vendor/phpunit/phpunit/tests/_files/ClassWithNonPublicAttributes.php
deleted file mode 100644
index abc8ff6..0000000
--- a/vendor/phpunit/phpunit/tests/_files/ClassWithNonPublicAttributes.php
+++ /dev/null
@@ -1,29 +0,0 @@
-<?php
-class ParentClassWithPrivateAttributes
-{
-    private static $privateStaticParentAttribute = 'foo';
-    private $privateParentAttribute              = 'bar';
-}
-
-class ParentClassWithProtectedAttributes extends ParentClassWithPrivateAttributes
-{
-    protected static $protectedStaticParentAttribute = 'foo';
-    protected $protectedParentAttribute              = 'bar';
-}
-
-class ClassWithNonPublicAttributes extends ParentClassWithProtectedAttributes
-{
-    public static $publicStaticAttribute       = 'foo';
-    protected static $protectedStaticAttribute = 'bar';
-    protected static $privateStaticAttribute   = 'baz';
-
-    public $publicAttribute       = 'foo';
-    public $foo                   = 1;
-    public $bar                   = 2;
-    protected $protectedAttribute = 'bar';
-    protected $privateAttribute   = 'baz';
-
-    public $publicArray       = array('foo');
-    protected $protectedArray = array('bar');
-    protected $privateArray   = array('baz');
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/ClassWithScalarTypeDeclarations.php b/vendor/phpunit/phpunit/tests/_files/ClassWithScalarTypeDeclarations.php
deleted file mode 100644
index b1d6d3a..0000000
--- a/vendor/phpunit/phpunit/tests/_files/ClassWithScalarTypeDeclarations.php
+++ /dev/null
@@ -1,8 +0,0 @@
-<?php
-class ClassWithScalarTypeDeclarations
-{
-    public function foo(string $string, int $int)
-    {
-    }
-}
-
diff --git a/vendor/phpunit/phpunit/tests/_files/ClassWithToString.php b/vendor/phpunit/phpunit/tests/_files/ClassWithToString.php
deleted file mode 100644
index 5002213..0000000
--- a/vendor/phpunit/phpunit/tests/_files/ClassWithToString.php
+++ /dev/null
@@ -1,22 +0,0 @@
-<?php
-/*
- * This file is part of PHPUnit.
- *
- * (c) Sebastian Bergmann <sebastian@phpunit.de>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-/**
- * A class with a __toString() method.
- *
- * @since      Class available since Release 3.6.0
- */
-class ClassWithToString
-{
-    public function __toString()
-    {
-        return 'string representation';
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/ConcreteTest.my.php b/vendor/phpunit/phpunit/tests/_files/ConcreteTest.my.php
deleted file mode 100644
index fe01cee..0000000
--- a/vendor/phpunit/phpunit/tests/_files/ConcreteTest.my.php
+++ /dev/null
@@ -1,7 +0,0 @@
-<?php
-class ConcreteWithMyCustomExtensionTest extends AbstractTest
-{
-    public function testTwo()
-    {
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/ConcreteTest.php b/vendor/phpunit/phpunit/tests/_files/ConcreteTest.php
deleted file mode 100644
index 4f51a18..0000000
--- a/vendor/phpunit/phpunit/tests/_files/ConcreteTest.php
+++ /dev/null
@@ -1,7 +0,0 @@
-<?php
-class ConcreteTest extends AbstractTest
-{
-    public function testTwo()
-    {
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/CoverageClassExtendedTest.php b/vendor/phpunit/phpunit/tests/_files/CoverageClassExtendedTest.php
deleted file mode 100644
index df12d34..0000000
--- a/vendor/phpunit/phpunit/tests/_files/CoverageClassExtendedTest.php
+++ /dev/null
@@ -1,12 +0,0 @@
-<?php
-class CoverageClassExtendedTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @covers CoveredClass<extended>
-     */
-    public function testSomething()
-    {
-        $o = new CoveredClass;
-        $o->publicMethod();
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/CoverageClassTest.php b/vendor/phpunit/phpunit/tests/_files/CoverageClassTest.php
deleted file mode 100644
index 7f569ae..0000000
--- a/vendor/phpunit/phpunit/tests/_files/CoverageClassTest.php
+++ /dev/null
@@ -1,12 +0,0 @@
-<?php
-class CoverageClassTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @covers CoveredClass
-     */
-    public function testSomething()
-    {
-        $o = new CoveredClass;
-        $o->publicMethod();
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/CoverageFunctionParenthesesTest.php b/vendor/phpunit/phpunit/tests/_files/CoverageFunctionParenthesesTest.php
deleted file mode 100644
index 33b5fe3..0000000
--- a/vendor/phpunit/phpunit/tests/_files/CoverageFunctionParenthesesTest.php
+++ /dev/null
@@ -1,11 +0,0 @@
-<?php
-class CoverageFunctionParenthesesTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @covers ::globalFunction()
-     */
-    public function testSomething()
-    {
-        globalFunction();
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/CoverageFunctionParenthesesWhitespaceTest.php b/vendor/phpunit/phpunit/tests/_files/CoverageFunctionParenthesesWhitespaceTest.php
deleted file mode 100644
index becc6c8..0000000
--- a/vendor/phpunit/phpunit/tests/_files/CoverageFunctionParenthesesWhitespaceTest.php
+++ /dev/null
@@ -1,11 +0,0 @@
-<?php
-class CoverageFunctionParenthesesWhitespaceTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @covers ::globalFunction ( )
-     */
-    public function testSomething()
-    {
-        globalFunction();
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/CoverageFunctionTest.php b/vendor/phpunit/phpunit/tests/_files/CoverageFunctionTest.php
deleted file mode 100644
index c621fd2..0000000
--- a/vendor/phpunit/phpunit/tests/_files/CoverageFunctionTest.php
+++ /dev/null
@@ -1,11 +0,0 @@
-<?php
-class CoverageFunctionTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @covers ::globalFunction
-     */
-    public function testSomething()
-    {
-        globalFunction();
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/CoverageMethodOneLineAnnotationTest.php b/vendor/phpunit/phpunit/tests/_files/CoverageMethodOneLineAnnotationTest.php
deleted file mode 100644
index 55d7f57..0000000
--- a/vendor/phpunit/phpunit/tests/_files/CoverageMethodOneLineAnnotationTest.php
+++ /dev/null
@@ -1,11 +0,0 @@
-<?php
-
-class CoverageMethodOneLineAnnotationTest extends PHPUnit_Framework_TestCase
-{
-    /** @covers CoveredClass::publicMethod */
-    public function testSomething()
-    {
-        $o = new CoveredClass;
-        $o->publicMethod();
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/CoverageMethodParenthesesTest.php b/vendor/phpunit/phpunit/tests/_files/CoverageMethodParenthesesTest.php
deleted file mode 100644
index 4223004..0000000
--- a/vendor/phpunit/phpunit/tests/_files/CoverageMethodParenthesesTest.php
+++ /dev/null
@@ -1,12 +0,0 @@
-<?php
-class CoverageMethodParenthesesTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @covers CoveredClass::publicMethod()
-     */
-    public function testSomething()
-    {
-        $o = new CoveredClass;
-        $o->publicMethod();
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/CoverageMethodParenthesesWhitespaceTest.php b/vendor/phpunit/phpunit/tests/_files/CoverageMethodParenthesesWhitespaceTest.php
deleted file mode 100644
index d1be1c6..0000000
--- a/vendor/phpunit/phpunit/tests/_files/CoverageMethodParenthesesWhitespaceTest.php
+++ /dev/null
@@ -1,12 +0,0 @@
-<?php
-class CoverageMethodParenthesesWhitespaceTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @covers CoveredClass::publicMethod ( )
-     */
-    public function testSomething()
-    {
-        $o = new CoveredClass;
-        $o->publicMethod();
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/CoverageMethodTest.php b/vendor/phpunit/phpunit/tests/_files/CoverageMethodTest.php
deleted file mode 100644
index 167b3db..0000000
--- a/vendor/phpunit/phpunit/tests/_files/CoverageMethodTest.php
+++ /dev/null
@@ -1,12 +0,0 @@
-<?php
-class CoverageMethodTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @covers CoveredClass::publicMethod
-     */
-    public function testSomething()
-    {
-        $o = new CoveredClass;
-        $o->publicMethod();
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/CoverageNamespacedFunctionTest.php b/vendor/phpunit/phpunit/tests/_files/CoverageNamespacedFunctionTest.php
deleted file mode 100644
index 9fc056f..0000000
--- a/vendor/phpunit/phpunit/tests/_files/CoverageNamespacedFunctionTest.php
+++ /dev/null
@@ -1,11 +0,0 @@
-<?php
-class CoverageNamespacedFunctionTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @covers foo\func()
-     */
-    public function testFunc()
-    {
-        foo\func();
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/CoverageNoneTest.php b/vendor/phpunit/phpunit/tests/_files/CoverageNoneTest.php
deleted file mode 100644
index 0b414c2..0000000
--- a/vendor/phpunit/phpunit/tests/_files/CoverageNoneTest.php
+++ /dev/null
@@ -1,9 +0,0 @@
-<?php
-class CoverageNoneTest extends PHPUnit_Framework_TestCase
-{
-    public function testSomething()
-    {
-        $o = new CoveredClass;
-        $o->publicMethod();
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/CoverageNotPrivateTest.php b/vendor/phpunit/phpunit/tests/_files/CoverageNotPrivateTest.php
deleted file mode 100644
index 12b56e8..0000000
--- a/vendor/phpunit/phpunit/tests/_files/CoverageNotPrivateTest.php
+++ /dev/null
@@ -1,12 +0,0 @@
-<?php
-class CoverageNotPrivateTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @covers CoveredClass::<!private>
-     */
-    public function testSomething()
-    {
-        $o = new CoveredClass;
-        $o->publicMethod();
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/CoverageNotProtectedTest.php b/vendor/phpunit/phpunit/tests/_files/CoverageNotProtectedTest.php
deleted file mode 100644
index c69d261..0000000
--- a/vendor/phpunit/phpunit/tests/_files/CoverageNotProtectedTest.php
+++ /dev/null
@@ -1,12 +0,0 @@
-<?php
-class CoverageNotProtectedTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @covers CoveredClass::<!protected>
-     */
-    public function testSomething()
-    {
-        $o = new CoveredClass;
-        $o->publicMethod();
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/CoverageNotPublicTest.php b/vendor/phpunit/phpunit/tests/_files/CoverageNotPublicTest.php
deleted file mode 100644
index aebfe4b..0000000
--- a/vendor/phpunit/phpunit/tests/_files/CoverageNotPublicTest.php
+++ /dev/null
@@ -1,12 +0,0 @@
-<?php
-class CoverageNotPublicTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @covers CoveredClass::<!public>
-     */
-    public function testSomething()
-    {
-        $o = new CoveredClass;
-        $o->publicMethod();
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/CoverageNothingTest.php b/vendor/phpunit/phpunit/tests/_files/CoverageNothingTest.php
deleted file mode 100644
index 5d5680d..0000000
--- a/vendor/phpunit/phpunit/tests/_files/CoverageNothingTest.php
+++ /dev/null
@@ -1,13 +0,0 @@
-<?php
-class CoverageNothingTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @covers CoveredClass::publicMethod
-     * @coversNothing
-     */
-    public function testSomething()
-    {
-        $o = new CoveredClass;
-        $o->publicMethod();
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/CoveragePrivateTest.php b/vendor/phpunit/phpunit/tests/_files/CoveragePrivateTest.php
deleted file mode 100644
index f09560d..0000000
--- a/vendor/phpunit/phpunit/tests/_files/CoveragePrivateTest.php
+++ /dev/null
@@ -1,12 +0,0 @@
-<?php
-class CoveragePrivateTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @covers CoveredClass::<private>
-     */
-    public function testSomething()
-    {
-        $o = new CoveredClass;
-        $o->publicMethod();
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/CoverageProtectedTest.php b/vendor/phpunit/phpunit/tests/_files/CoverageProtectedTest.php
deleted file mode 100644
index 9b3acbf..0000000
--- a/vendor/phpunit/phpunit/tests/_files/CoverageProtectedTest.php
+++ /dev/null
@@ -1,12 +0,0 @@
-<?php
-class CoverageProtectedTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @covers CoveredClass::<protected>
-     */
-    public function testSomething()
-    {
-        $o = new CoveredClass;
-        $o->publicMethod();
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/CoveragePublicTest.php b/vendor/phpunit/phpunit/tests/_files/CoveragePublicTest.php
deleted file mode 100644
index 480a522..0000000
--- a/vendor/phpunit/phpunit/tests/_files/CoveragePublicTest.php
+++ /dev/null
@@ -1,12 +0,0 @@
-<?php
-class CoveragePublicTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @covers CoveredClass::<public>
-     */
-    public function testSomething()
-    {
-        $o = new CoveredClass;
-        $o->publicMethod();
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/CoverageTwoDefaultClassAnnotations.php b/vendor/phpunit/phpunit/tests/_files/CoverageTwoDefaultClassAnnotations.php
deleted file mode 100644
index 1011769..0000000
--- a/vendor/phpunit/phpunit/tests/_files/CoverageTwoDefaultClassAnnotations.php
+++ /dev/null
@@ -1,17 +0,0 @@
-<?php
-
-/**
- * @coversDefaultClass \NamespaceOne
- * @coversDefaultClass \AnotherDefault\Name\Space\Does\Not\Work
- */
-class CoverageTwoDefaultClassAnnotations
-{
-    /**
-     * @covers Foo\CoveredClass::<public>
-     */
-    public function testSomething()
-    {
-        $o = new Foo\CoveredClass;
-        $o->publicMethod();
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/CoveredClass.php b/vendor/phpunit/phpunit/tests/_files/CoveredClass.php
deleted file mode 100644
index f382ce9..0000000
--- a/vendor/phpunit/phpunit/tests/_files/CoveredClass.php
+++ /dev/null
@@ -1,36 +0,0 @@
-<?php
-class CoveredParentClass
-{
-    private function privateMethod()
-    {
-    }
-
-    protected function protectedMethod()
-    {
-        $this->privateMethod();
-    }
-
-    public function publicMethod()
-    {
-        $this->protectedMethod();
-    }
-}
-
-class CoveredClass extends CoveredParentClass
-{
-    private function privateMethod()
-    {
-    }
-
-    protected function protectedMethod()
-    {
-        parent::protectedMethod();
-        $this->privateMethod();
-    }
-
-    public function publicMethod()
-    {
-        parent::publicMethod();
-        $this->protectedMethod();
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/CoveredFunction.php b/vendor/phpunit/phpunit/tests/_files/CoveredFunction.php
deleted file mode 100644
index 9989eb0..0000000
--- a/vendor/phpunit/phpunit/tests/_files/CoveredFunction.php
+++ /dev/null
@@ -1,4 +0,0 @@
-<?php
-function globalFunction()
-{
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/CustomPrinter.php b/vendor/phpunit/phpunit/tests/_files/CustomPrinter.php
deleted file mode 100644
index 0e5ddc3..0000000
--- a/vendor/phpunit/phpunit/tests/_files/CustomPrinter.php
+++ /dev/null
@@ -1,4 +0,0 @@
-<?php
-class CustomPrinter extends PHPUnit_TextUI_ResultPrinter
-{
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/DataProviderDebugTest.php b/vendor/phpunit/phpunit/tests/_files/DataProviderDebugTest.php
deleted file mode 100644
index 22317cf..0000000
--- a/vendor/phpunit/phpunit/tests/_files/DataProviderDebugTest.php
+++ /dev/null
@@ -1,48 +0,0 @@
-<?php
-class DataProviderDebugTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @dataProvider provider
-     */
-    public function testProvider()
-    {
-        $this->assertTrue(true);
-    }
-
-    public static function provider()
-    {
-        $obj2      = new \stdClass();
-        $obj2->foo = 'bar';
-
-        $obj3 = (object) array(1,2,"Test\r\n",4,5,6,7,8);
-
-        $obj = new \stdClass();
-        //@codingStandardsIgnoreStart
-        $obj->null = null;
-        //@codingStandardsIgnoreEnd
-        $obj->boolean     = true;
-        $obj->integer     = 1;
-        $obj->double      = 1.2;
-        $obj->string      = '1';
-        $obj->text        = "this\nis\na\nvery\nvery\nvery\nvery\nvery\nvery\rlong\n\rtext";
-        $obj->object      = $obj2;
-        $obj->objectagain = $obj2;
-        $obj->array       = array('foo' => 'bar');
-        $obj->self        = $obj;
-
-        $storage = new \SplObjectStorage();
-        $storage->attach($obj2);
-        $storage->foo = $obj2;
-
-        return array(
-            array(null, true, 1, 1.0),
-            array(1.2, fopen('php://memory', 'r'), '1'),
-            array(array(array(1,2,3), array(3,4,5))),
-            // \n\r and \r is converted to \n
-            array("this\nis\na\nvery\nvery\nvery\nvery\nvery\nvery\rlong\n\rtext"),
-            array(new \stdClass(), $obj, array(), $storage, $obj3),
-            array(chr(0) . chr(1) . chr(2) . chr(3) . chr(4) . chr(5), implode('', array_map('chr', range(0x0e, 0x1f)))),
-            array(chr(0x00) . chr(0x09))
-        );
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/DataProviderFilterTest.php b/vendor/phpunit/phpunit/tests/_files/DataProviderFilterTest.php
deleted file mode 100644
index a872bc9..0000000
--- a/vendor/phpunit/phpunit/tests/_files/DataProviderFilterTest.php
+++ /dev/null
@@ -1,39 +0,0 @@
-<?php
-class DataProviderFilterTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @dataProvider truthProvider
-     */
-    public function testTrue($truth)
-    {
-        $this->assertTrue($truth);
-    }
-
-    public static function truthProvider()
-    {
-        return array(
-           array(true),
-           array(true),
-           array(true),
-           array(true)
-        );
-    }
-
-    /**
-     * @dataProvider falseProvider
-     */
-    public function testFalse($false)
-    {
-        $this->assertFalse($false);
-    }
-
-    public static function falseProvider()
-    {
-        return array(
-          'false test'       => array(false),
-          'false test 2'     => array(false),
-          'other false test' => array(false),
-          'other false test2'=> array(false)
-        );
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/DataProviderIncompleteTest.php b/vendor/phpunit/phpunit/tests/_files/DataProviderIncompleteTest.php
deleted file mode 100644
index e0efb5b..0000000
--- a/vendor/phpunit/phpunit/tests/_files/DataProviderIncompleteTest.php
+++ /dev/null
@@ -1,37 +0,0 @@
-<?php
-class DataProviderIncompleteTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @dataProvider incompleteTestProviderMethod
-     */
-    public function testIncomplete($a, $b, $c)
-    {
-        $this->assertTrue(true);
-    }
-
-    /**
-     * @dataProvider providerMethod
-     */
-    public function testAdd($a, $b, $c)
-    {
-        $this->assertEquals($c, $a + $b);
-    }
-
-    public function incompleteTestProviderMethod()
-    {
-        $this->markTestIncomplete('incomplete');
-
-        return array(
-          array(0, 0, 0),
-          array(0, 1, 1),
-        );
-    }
-
-    public static function providerMethod()
-    {
-        return array(
-          array(0, 0, 0),
-          array(0, 1, 1),
-        );
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/DataProviderSkippedTest.php b/vendor/phpunit/phpunit/tests/_files/DataProviderSkippedTest.php
deleted file mode 100644
index ec67ce5..0000000
--- a/vendor/phpunit/phpunit/tests/_files/DataProviderSkippedTest.php
+++ /dev/null
@@ -1,37 +0,0 @@
-<?php
-class DataProviderSkippedTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @dataProvider skippedTestProviderMethod
-     */
-    public function testSkipped($a, $b, $c)
-    {
-        $this->assertTrue(true);
-    }
-
-    /**
-     * @dataProvider providerMethod
-     */
-    public function testAdd($a, $b, $c)
-    {
-        $this->assertEquals($c, $a + $b);
-    }
-
-    public function skippedTestProviderMethod()
-    {
-        $this->markTestSkipped('skipped');
-
-        return array(
-          array(0, 0, 0),
-          array(0, 1, 1),
-        );
-    }
-
-    public static function providerMethod()
-    {
-        return array(
-          array(0, 0, 0),
-          array(0, 1, 1),
-        );
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/DataProviderTest.php b/vendor/phpunit/phpunit/tests/_files/DataProviderTest.php
deleted file mode 100644
index d940a05..0000000
--- a/vendor/phpunit/phpunit/tests/_files/DataProviderTest.php
+++ /dev/null
@@ -1,21 +0,0 @@
-<?php
-class DataProviderTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @dataProvider providerMethod
-     */
-    public function testAdd($a, $b, $c)
-    {
-        $this->assertEquals($c, $a + $b);
-    }
-
-    public static function providerMethod()
-    {
-        return array(
-          array(0, 0, 0),
-          array(0, 1, 1),
-          array(1, 1, 3),
-          array(1, 0, 1)
-        );
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/DependencyFailureTest.php b/vendor/phpunit/phpunit/tests/_files/DependencyFailureTest.php
deleted file mode 100644
index d83aecd..0000000
--- a/vendor/phpunit/phpunit/tests/_files/DependencyFailureTest.php
+++ /dev/null
@@ -1,22 +0,0 @@
-<?php
-class DependencyFailureTest extends PHPUnit_Framework_TestCase
-{
-    public function testOne()
-    {
-        $this->fail();
-    }
-
-    /**
-     * @depends testOne
-     */
-    public function testTwo()
-    {
-    }
-
-    /**
-     * @depends testTwo
-     */
-    public function testThree()
-    {
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/DependencySuccessTest.php b/vendor/phpunit/phpunit/tests/_files/DependencySuccessTest.php
deleted file mode 100644
index 0e4b5dd..0000000
--- a/vendor/phpunit/phpunit/tests/_files/DependencySuccessTest.php
+++ /dev/null
@@ -1,21 +0,0 @@
-<?php
-class DependencySuccessTest extends PHPUnit_Framework_TestCase
-{
-    public function testOne()
-    {
-    }
-
-    /**
-     * @depends testOne
-     */
-    public function testTwo()
-    {
-    }
-
-    /**
-     * @depends DependencySuccessTest::testTwo
-     */
-    public function testThree()
-    {
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/DependencyTestSuite.php b/vendor/phpunit/phpunit/tests/_files/DependencyTestSuite.php
deleted file mode 100644
index b5babc7..0000000
--- a/vendor/phpunit/phpunit/tests/_files/DependencyTestSuite.php
+++ /dev/null
@@ -1,13 +0,0 @@
-<?php
-class DependencyTestSuite
-{
-    public static function suite()
-    {
-        $suite = new PHPUnit_Framework_TestSuite('Test Dependencies');
-
-        $suite->addTestSuite('DependencySuccessTest');
-        $suite->addTestSuite('DependencyFailureTest');
-
-        return $suite;
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/DoubleTestCase.php b/vendor/phpunit/phpunit/tests/_files/DoubleTestCase.php
deleted file mode 100644
index b1f00a8..0000000
--- a/vendor/phpunit/phpunit/tests/_files/DoubleTestCase.php
+++ /dev/null
@@ -1,25 +0,0 @@
-<?php
-class DoubleTestCase implements PHPUnit_Framework_Test
-{
-    protected $testCase;
-
-    public function __construct(PHPUnit_Framework_TestCase $testCase)
-    {
-        $this->testCase = $testCase;
-    }
-
-    public function count()
-    {
-        return 2;
-    }
-
-    public function run(PHPUnit_Framework_TestResult $result = null)
-    {
-        $result->startTest($this);
-
-        $this->testCase->runBare();
-        $this->testCase->runBare();
-
-        $result->endTest($this, 0);
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/DummyException.php b/vendor/phpunit/phpunit/tests/_files/DummyException.php
deleted file mode 100644
index 29a69b9..0000000
--- a/vendor/phpunit/phpunit/tests/_files/DummyException.php
+++ /dev/null
@@ -1,5 +0,0 @@
-<?php
-
-class DummyException extends Exception
-{
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/EmptyTestCaseTest.php b/vendor/phpunit/phpunit/tests/_files/EmptyTestCaseTest.php
deleted file mode 100644
index 2a77bb2..0000000
--- a/vendor/phpunit/phpunit/tests/_files/EmptyTestCaseTest.php
+++ /dev/null
@@ -1,4 +0,0 @@
-<?php
-class EmptyTestCaseTest extends PHPUnit_Framework_TestCase
-{
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/ExceptionInAssertPostConditionsTest.php b/vendor/phpunit/phpunit/tests/_files/ExceptionInAssertPostConditionsTest.php
deleted file mode 100644
index b86927e..0000000
--- a/vendor/phpunit/phpunit/tests/_files/ExceptionInAssertPostConditionsTest.php
+++ /dev/null
@@ -1,35 +0,0 @@
-<?php
-class ExceptionInAssertPostConditionsTest extends PHPUnit_Framework_TestCase
-{
-    public $setUp                = false;
-    public $assertPreConditions  = false;
-    public $assertPostConditions = false;
-    public $tearDown             = false;
-    public $testSomething        = false;
-
-    protected function setUp()
-    {
-        $this->setUp = true;
-    }
-
-    protected function assertPreConditions()
-    {
-        $this->assertPreConditions = true;
-    }
-
-    public function testSomething()
-    {
-        $this->testSomething = true;
-    }
-
-    protected function assertPostConditions()
-    {
-        $this->assertPostConditions = true;
-        throw new Exception;
-    }
-
-    protected function tearDown()
-    {
-        $this->tearDown = true;
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/ExceptionInAssertPreConditionsTest.php b/vendor/phpunit/phpunit/tests/_files/ExceptionInAssertPreConditionsTest.php
deleted file mode 100644
index a375d05..0000000
--- a/vendor/phpunit/phpunit/tests/_files/ExceptionInAssertPreConditionsTest.php
+++ /dev/null
@@ -1,35 +0,0 @@
-<?php
-class ExceptionInAssertPreConditionsTest extends PHPUnit_Framework_TestCase
-{
-    public $setUp                = false;
-    public $assertPreConditions  = false;
-    public $assertPostConditions = false;
-    public $tearDown             = false;
-    public $testSomething        = false;
-
-    protected function setUp()
-    {
-        $this->setUp = true;
-    }
-
-    protected function assertPreConditions()
-    {
-        $this->assertPreConditions = true;
-        throw new Exception;
-    }
-
-    public function testSomething()
-    {
-        $this->testSomething = true;
-    }
-
-    protected function assertPostConditions()
-    {
-        $this->assertPostConditions = true;
-    }
-
-    protected function tearDown()
-    {
-        $this->tearDown = true;
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/ExceptionInSetUpTest.php b/vendor/phpunit/phpunit/tests/_files/ExceptionInSetUpTest.php
deleted file mode 100644
index 193b9a8..0000000
--- a/vendor/phpunit/phpunit/tests/_files/ExceptionInSetUpTest.php
+++ /dev/null
@@ -1,35 +0,0 @@
-<?php
-class ExceptionInSetUpTest extends PHPUnit_Framework_TestCase
-{
-    public $setUp                = false;
-    public $assertPreConditions  = false;
-    public $assertPostConditions = false;
-    public $tearDown             = false;
-    public $testSomething        = false;
-
-    protected function setUp()
-    {
-        $this->setUp = true;
-        throw new Exception;
-    }
-
-    protected function assertPreConditions()
-    {
-        $this->assertPreConditions = true;
-    }
-
-    public function testSomething()
-    {
-        $this->testSomething = true;
-    }
-
-    protected function assertPostConditions()
-    {
-        $this->assertPostConditions = true;
-    }
-
-    protected function tearDown()
-    {
-        $this->tearDown = true;
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/ExceptionInTearDownTest.php b/vendor/phpunit/phpunit/tests/_files/ExceptionInTearDownTest.php
deleted file mode 100644
index 5ee4a9d..0000000
--- a/vendor/phpunit/phpunit/tests/_files/ExceptionInTearDownTest.php
+++ /dev/null
@@ -1,35 +0,0 @@
-<?php
-class ExceptionInTearDownTest extends PHPUnit_Framework_TestCase
-{
-    public $setUp                = false;
-    public $assertPreConditions  = false;
-    public $assertPostConditions = false;
-    public $tearDown             = false;
-    public $testSomething        = false;
-
-    protected function setUp()
-    {
-        $this->setUp = true;
-    }
-
-    protected function assertPreConditions()
-    {
-        $this->assertPreConditions = true;
-    }
-
-    public function testSomething()
-    {
-        $this->testSomething = true;
-    }
-
-    protected function assertPostConditions()
-    {
-        $this->assertPostConditions = true;
-    }
-
-    protected function tearDown()
-    {
-        $this->tearDown = true;
-        throw new Exception;
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/ExceptionInTest.php b/vendor/phpunit/phpunit/tests/_files/ExceptionInTest.php
deleted file mode 100644
index 32c7e24..0000000
--- a/vendor/phpunit/phpunit/tests/_files/ExceptionInTest.php
+++ /dev/null
@@ -1,35 +0,0 @@
-<?php
-class ExceptionInTest extends PHPUnit_Framework_TestCase
-{
-    public $setUp                = false;
-    public $assertPreConditions  = false;
-    public $assertPostConditions = false;
-    public $tearDown             = false;
-    public $testSomething        = false;
-
-    protected function setUp()
-    {
-        $this->setUp = true;
-    }
-
-    protected function assertPreConditions()
-    {
-        $this->assertPreConditions = true;
-    }
-
-    public function testSomething()
-    {
-        $this->testSomething = true;
-        throw new Exception;
-    }
-
-    protected function assertPostConditions()
-    {
-        $this->assertPostConditions = true;
-    }
-
-    protected function tearDown()
-    {
-        $this->tearDown = true;
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/ExceptionNamespaceTest.php b/vendor/phpunit/phpunit/tests/_files/ExceptionNamespaceTest.php
deleted file mode 100644
index 22f3760..0000000
--- a/vendor/phpunit/phpunit/tests/_files/ExceptionNamespaceTest.php
+++ /dev/null
@@ -1,38 +0,0 @@
-<?php
-
-namespace My\Space;
-
-class ExceptionNamespaceTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * Exception message
-     *
-     * @var string
-     */
-    const ERROR_MESSAGE = 'Exception namespace message';
-
-    /**
-     * Exception code
-     *
-     * @var int
-     */
-    const ERROR_CODE = 200;
-
-    /**
-     * @expectedException Class
-     * @expectedExceptionMessage My\Space\ExceptionNamespaceTest::ERROR_MESSAGE
-     * @expectedExceptionCode My\Space\ExceptionNamespaceTest::ERROR_CODE
-     */
-    public function testConstants()
-    {
-    }
-
-    /**
-     * @expectedException Class
-     * @expectedExceptionCode My\Space\ExceptionNamespaceTest::UNKNOWN_CODE_CONSTANT
-     * @expectedExceptionMessage My\Space\ExceptionNamespaceTest::UNKNOWN_MESSAGE_CONSTANT
-     */
-    public function testUnknownConstants()
-    {
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/ExceptionStackTest.php b/vendor/phpunit/phpunit/tests/_files/ExceptionStackTest.php
deleted file mode 100644
index 05fa878..0000000
--- a/vendor/phpunit/phpunit/tests/_files/ExceptionStackTest.php
+++ /dev/null
@@ -1,21 +0,0 @@
-<?php
-class ExceptionStackTest extends PHPUnit_Framework_TestCase
-{
-    public function testPrintingChildException()
-    {
-        try {
-            $this->assertEquals(array(1), array(2), 'message');
-        } catch (PHPUnit_Framework_ExpectationFailedException $e) {
-            $message = $e->getMessage() . $e->getComparisonFailure()->getDiff();
-            throw new PHPUnit_Framework_Exception("Child exception\n$message", 101, $e);
-        }
-    }
-
-    public function testNestedExceptions()
-    {
-        $exceptionThree = new Exception('Three');
-        $exceptionTwo   = new InvalidArgumentException('Two', 0, $exceptionThree);
-        $exceptionOne   = new Exception('One', 0, $exceptionTwo);
-        throw $exceptionOne;
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/ExceptionTest.php b/vendor/phpunit/phpunit/tests/_files/ExceptionTest.php
deleted file mode 100644
index 0213805..0000000
--- a/vendor/phpunit/phpunit/tests/_files/ExceptionTest.php
+++ /dev/null
@@ -1,139 +0,0 @@
-<?php
-class ExceptionTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * Exception message
-     *
-     * @var string
-     */
-    const ERROR_MESSAGE = 'Exception message';
-
-    /**
-     * Exception message
-     *
-     * @var string
-     */
-    const ERROR_MESSAGE_REGEX = '#regex#';
-
-    /**
-     * Exception code
-     *
-     * @var int
-     */
-    const ERROR_CODE = 500;
-
-    /**
-     * @expectedException FooBarBaz
-     */
-    public function testOne()
-    {
-    }
-
-    /**
-     * @expectedException Foo_Bar_Baz
-     */
-    public function testTwo()
-    {
-    }
-
-    /**
-     * @expectedException Foo\Bar\Baz
-     */
-    public function testThree()
-    {
-    }
-
-    /**
-     * @expectedException ほげ
-     */
-    public function testFour()
-    {
-    }
-
-    /**
-     * @expectedException Class Message 1234
-     */
-    public function testFive()
-    {
-    }
-
-    /**
-     * @expectedException Class
-     * @expectedExceptionMessage Message
-     * @expectedExceptionCode 1234
-     */
-    public function testSix()
-    {
-    }
-
-    /**
-     * @expectedException Class
-     * @expectedExceptionMessage Message
-     * @expectedExceptionCode ExceptionCode
-     */
-    public function testSeven()
-    {
-    }
-
-    /**
-     * @expectedException Class
-     * @expectedExceptionMessage Message
-     * @expectedExceptionCode 0
-     */
-    public function testEight()
-    {
-    }
-
-    /**
-     * @expectedException Class
-     * @expectedExceptionMessage ExceptionTest::ERROR_MESSAGE
-     * @expectedExceptionCode ExceptionTest::ERROR_CODE
-     */
-    public function testNine()
-    {
-    }
-
-    /** @expectedException Class */
-    public function testSingleLine()
-    {
-    }
-
-    /**
-     * @expectedException Class
-     * @expectedExceptionCode ExceptionTest::UNKNOWN_CODE_CONSTANT
-     * @expectedExceptionMessage ExceptionTest::UNKNOWN_MESSAGE_CONSTANT
-     */
-    public function testUnknownConstants()
-    {
-    }
-
-    /**
-     * @expectedException Class
-     * @expectedExceptionCode 1234
-     * @expectedExceptionMessage Message
-     * @expectedExceptionMessageRegExp #regex#
-     */
-    public function testWithRegexMessage()
-    {
-    }
-
-    /**
-     * @expectedException Class
-     * @expectedExceptionCode 1234
-     * @expectedExceptionMessage Message
-     * @expectedExceptionMessageRegExp ExceptionTest::ERROR_MESSAGE_REGEX
-     */
-    public function testWithRegexMessageFromClassConstant()
-    {
-    }
-
-    /**
-     * @expectedException Class
-     * @expectedExceptionCode 1234
-     * @expectedExceptionMessage Message
-     * @expectedExceptionMessageRegExp ExceptionTest::UNKNOWN_MESSAGE_REGEX_CONSTANT
-     */
-    public function testWithUnknowRegexMessageFromClassConstant()
-    {
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/Failure.php b/vendor/phpunit/phpunit/tests/_files/Failure.php
deleted file mode 100644
index 586aa54..0000000
--- a/vendor/phpunit/phpunit/tests/_files/Failure.php
+++ /dev/null
@@ -1,8 +0,0 @@
-<?php
-class Failure extends PHPUnit_Framework_TestCase
-{
-    protected function runTest()
-    {
-        $this->fail();
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/FailureTest.php b/vendor/phpunit/phpunit/tests/_files/FailureTest.php
deleted file mode 100644
index e9df755..0000000
--- a/vendor/phpunit/phpunit/tests/_files/FailureTest.php
+++ /dev/null
@@ -1,75 +0,0 @@
-<?php
-class FailureTest extends PHPUnit_Framework_TestCase
-{
-    public function testAssertArrayEqualsArray()
-    {
-        $this->assertEquals(array(1), array(2), 'message');
-    }
-
-    public function testAssertIntegerEqualsInteger()
-    {
-        $this->assertEquals(1, 2, 'message');
-    }
-
-    public function testAssertObjectEqualsObject()
-    {
-        $a      = new StdClass;
-        $a->foo = 'bar';
-
-        $b      = new StdClass;
-        $b->bar = 'foo';
-
-        $this->assertEquals($a, $b, 'message');
-    }
-
-    public function testAssertNullEqualsString()
-    {
-        $this->assertEquals(null, 'bar', 'message');
-    }
-
-    public function testAssertStringEqualsString()
-    {
-        $this->assertEquals('foo', 'bar', 'message');
-    }
-
-    public function testAssertTextEqualsText()
-    {
-        $this->assertEquals("foo\nbar\n", "foo\nbaz\n", 'message');
-    }
-
-    public function testAssertStringMatchesFormat()
-    {
-        $this->assertStringMatchesFormat('*%s*', '**', 'message');
-    }
-
-    public function testAssertNumericEqualsNumeric()
-    {
-        $this->assertEquals(1, 2, 'message');
-    }
-
-    public function testAssertTextSameText()
-    {
-        $this->assertSame('foo', 'bar', 'message');
-    }
-
-    public function testAssertObjectSameObject()
-    {
-        $this->assertSame(new StdClass, new StdClass, 'message');
-    }
-
-    public function testAssertObjectSameNull()
-    {
-        $this->assertSame(new StdClass, null, 'message');
-    }
-
-    public function testAssertFloatSameFloat()
-    {
-        $this->assertSame(1.0, 1.5, 'message');
-    }
-
-    // Note that due to the implementation of this assertion it counts as 2 asserts
-    public function testAssertStringMatchesFormatFile()
-    {
-        $this->assertStringMatchesFormatFile(__DIR__ . '/expectedFileFormat.txt', '...BAR...');
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/FatalTest.php b/vendor/phpunit/phpunit/tests/_files/FatalTest.php
deleted file mode 100644
index bf005f9..0000000
--- a/vendor/phpunit/phpunit/tests/_files/FatalTest.php
+++ /dev/null
@@ -1,13 +0,0 @@
-<?php
-
-class FatalTest extends PHPUnit_Framework_TestCase
-{
-    public function testFatalError()
-    {
-        if (extension_loaded('xdebug')) {
-            xdebug_disable();
-        }
-
-        eval('class FatalTest {}');
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/IncompleteTest.php b/vendor/phpunit/phpunit/tests/_files/IncompleteTest.php
deleted file mode 100644
index 36ca8a0..0000000
--- a/vendor/phpunit/phpunit/tests/_files/IncompleteTest.php
+++ /dev/null
@@ -1,8 +0,0 @@
-<?php
-class IncompleteTest extends PHPUnit_Framework_TestCase
-{
-    public function testIncomplete()
-    {
-        $this->markTestIncomplete('Test incomplete');
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/Inheritance/InheritanceA.php b/vendor/phpunit/phpunit/tests/_files/Inheritance/InheritanceA.php
deleted file mode 100644
index e189b7d..0000000
--- a/vendor/phpunit/phpunit/tests/_files/Inheritance/InheritanceA.php
+++ /dev/null
@@ -1,7 +0,0 @@
-<?php
-
-require_once(__DIR__ . '/InheritanceB.php');
-
-class InheritanceA extends InheritanceB
-{
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/Inheritance/InheritanceB.php b/vendor/phpunit/phpunit/tests/_files/Inheritance/InheritanceB.php
deleted file mode 100644
index 24447e2..0000000
--- a/vendor/phpunit/phpunit/tests/_files/Inheritance/InheritanceB.php
+++ /dev/null
@@ -1,8 +0,0 @@
-<?php
-
-class InheritanceB extends PHPUnit_Framework_TestCase
-{
-    public function testSomething()
-    {
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/InheritedTestCase.php b/vendor/phpunit/phpunit/tests/_files/InheritedTestCase.php
deleted file mode 100644
index 3df7215..0000000
--- a/vendor/phpunit/phpunit/tests/_files/InheritedTestCase.php
+++ /dev/null
@@ -1,7 +0,0 @@
-<?php
-class InheritedTestCase extends OneTestCase
-{
-    public function test2()
-    {
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/IniTest.php b/vendor/phpunit/phpunit/tests/_files/IniTest.php
deleted file mode 100644
index 5846abf..0000000
--- a/vendor/phpunit/phpunit/tests/_files/IniTest.php
+++ /dev/null
@@ -1,8 +0,0 @@
-<?php
-class IniTest extends PHPUnit_Framework_TestCase
-{
-    public function testIni()
-    {
-        $this->assertEquals('application/x-test', ini_get('default_mimetype'));
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/IsolationTest.php b/vendor/phpunit/phpunit/tests/_files/IsolationTest.php
deleted file mode 100644
index df95c91..0000000
--- a/vendor/phpunit/phpunit/tests/_files/IsolationTest.php
+++ /dev/null
@@ -1,13 +0,0 @@
-<?php
-class IsolationTest extends PHPUnit_Framework_TestCase
-{
-    public function testIsInIsolationReturnsFalse()
-    {
-        $this->assertFalse($this->isInIsolation());
-    }
-
-    public function testIsInIsolationReturnsTrue()
-    {
-        $this->assertTrue($this->isInIsolation());
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/JsonData/arrayObject.json b/vendor/phpunit/phpunit/tests/_files/JsonData/arrayObject.json
deleted file mode 100644
index 8a74fc5..0000000
--- a/vendor/phpunit/phpunit/tests/_files/JsonData/arrayObject.json
+++ /dev/null
@@ -1 +0,0 @@
-["Mascott", "Tux", "OS", "Linux"]
diff --git a/vendor/phpunit/phpunit/tests/_files/JsonData/simpleObject.json b/vendor/phpunit/phpunit/tests/_files/JsonData/simpleObject.json
deleted file mode 100644
index 27085be..0000000
--- a/vendor/phpunit/phpunit/tests/_files/JsonData/simpleObject.json
+++ /dev/null
@@ -1 +0,0 @@
-{"Mascott":"Tux"}
\ No newline at end of file
diff --git a/vendor/phpunit/phpunit/tests/_files/MockRunner.php b/vendor/phpunit/phpunit/tests/_files/MockRunner.php
deleted file mode 100644
index b3bc0cc..0000000
--- a/vendor/phpunit/phpunit/tests/_files/MockRunner.php
+++ /dev/null
@@ -1,7 +0,0 @@
-<?php
-class MockRunner extends PHPUnit_Runner_BaseTestRunner
-{
-    protected function runFailed($message)
-    {
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/MultiDependencyTest.php b/vendor/phpunit/phpunit/tests/_files/MultiDependencyTest.php
deleted file mode 100644
index 886a809..0000000
--- a/vendor/phpunit/phpunit/tests/_files/MultiDependencyTest.php
+++ /dev/null
@@ -1,23 +0,0 @@
-<?php
-class MultiDependencyTest extends PHPUnit_Framework_TestCase
-{
-    public function testOne()
-    {
-        return 'foo';
-    }
-
-    public function testTwo()
-    {
-        return 'bar';
-    }
-
-    /**
-     * @depends testOne
-     * @depends testTwo
-     */
-    public function testThree($a, $b)
-    {
-        $this->assertEquals('foo', $a);
-        $this->assertEquals('bar', $b);
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/NamespaceCoverageClassExtendedTest.php b/vendor/phpunit/phpunit/tests/_files/NamespaceCoverageClassExtendedTest.php
deleted file mode 100644
index d0954cb..0000000
--- a/vendor/phpunit/phpunit/tests/_files/NamespaceCoverageClassExtendedTest.php
+++ /dev/null
@@ -1,12 +0,0 @@
-<?php
-class NamespaceCoverageClassExtendedTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @covers Foo\CoveredClass<extended>
-     */
-    public function testSomething()
-    {
-        $o = new Foo\CoveredClass;
-        $o->publicMethod();
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/NamespaceCoverageClassTest.php b/vendor/phpunit/phpunit/tests/_files/NamespaceCoverageClassTest.php
deleted file mode 100644
index 63912c0..0000000
--- a/vendor/phpunit/phpunit/tests/_files/NamespaceCoverageClassTest.php
+++ /dev/null
@@ -1,12 +0,0 @@
-<?php
-class NamespaceCoverageClassTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @covers Foo\CoveredClass
-     */
-    public function testSomething()
-    {
-        $o = new Foo\CoveredClass;
-        $o->publicMethod();
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/NamespaceCoverageCoversClassPublicTest.php b/vendor/phpunit/phpunit/tests/_files/NamespaceCoverageCoversClassPublicTest.php
deleted file mode 100644
index 45f583b..0000000
--- a/vendor/phpunit/phpunit/tests/_files/NamespaceCoverageCoversClassPublicTest.php
+++ /dev/null
@@ -1,15 +0,0 @@
-<?php
-/**
- * @coversDefaultClass \Foo\CoveredClass
- */
-class NamespaceCoverageCoversClassPublicTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @covers ::publicMethod
-     */
-    public function testSomething()
-    {
-        $o = new Foo\CoveredClass;
-        $o->publicMethod();
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/NamespaceCoverageCoversClassTest.php b/vendor/phpunit/phpunit/tests/_files/NamespaceCoverageCoversClassTest.php
deleted file mode 100644
index b336745..0000000
--- a/vendor/phpunit/phpunit/tests/_files/NamespaceCoverageCoversClassTest.php
+++ /dev/null
@@ -1,20 +0,0 @@
-<?php
-/**
- * @coversDefaultClass \Foo\CoveredClass
- */
-class NamespaceCoverageCoversClassTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @covers ::privateMethod
-     * @covers ::protectedMethod
-     * @covers ::publicMethod
-     * @covers \Foo\CoveredParentClass::privateMethod
-     * @covers \Foo\CoveredParentClass::protectedMethod
-     * @covers \Foo\CoveredParentClass::publicMethod
-     */
-    public function testSomething()
-    {
-        $o = new Foo\CoveredClass;
-        $o->publicMethod();
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/NamespaceCoverageMethodTest.php b/vendor/phpunit/phpunit/tests/_files/NamespaceCoverageMethodTest.php
deleted file mode 100644
index 35dfb8b..0000000
--- a/vendor/phpunit/phpunit/tests/_files/NamespaceCoverageMethodTest.php
+++ /dev/null
@@ -1,12 +0,0 @@
-<?php
-class NamespaceCoverageMethodTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @covers Foo\CoveredClass::publicMethod
-     */
-    public function testSomething()
-    {
-        $o = new Foo\CoveredClass;
-        $o->publicMethod();
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/NamespaceCoverageNotPrivateTest.php b/vendor/phpunit/phpunit/tests/_files/NamespaceCoverageNotPrivateTest.php
deleted file mode 100644
index 552c9ec..0000000
--- a/vendor/phpunit/phpunit/tests/_files/NamespaceCoverageNotPrivateTest.php
+++ /dev/null
@@ -1,12 +0,0 @@
-<?php
-class NamespaceCoverageNotPrivateTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @covers Foo\CoveredClass::<!private>
-     */
-    public function testSomething()
-    {
-        $o = new Foo\CoveredClass;
-        $o->publicMethod();
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/NamespaceCoverageNotProtectedTest.php b/vendor/phpunit/phpunit/tests/_files/NamespaceCoverageNotProtectedTest.php
deleted file mode 100644
index 33fc8c7..0000000
--- a/vendor/phpunit/phpunit/tests/_files/NamespaceCoverageNotProtectedTest.php
+++ /dev/null
@@ -1,12 +0,0 @@
-<?php
-class NamespaceCoverageNotProtectedTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @covers Foo\CoveredClass::<!protected>
-     */
-    public function testSomething()
-    {
-        $o = new Foo\CoveredClass;
-        $o->publicMethod();
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/NamespaceCoverageNotPublicTest.php b/vendor/phpunit/phpunit/tests/_files/NamespaceCoverageNotPublicTest.php
deleted file mode 100644
index ccbc500..0000000
--- a/vendor/phpunit/phpunit/tests/_files/NamespaceCoverageNotPublicTest.php
+++ /dev/null
@@ -1,12 +0,0 @@
-<?php
-class NamespaceCoverageNotPublicTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @covers Foo\CoveredClass::<!public>
-     */
-    public function testSomething()
-    {
-        $o = new Foo\CoveredClass;
-        $o->publicMethod();
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/NamespaceCoveragePrivateTest.php b/vendor/phpunit/phpunit/tests/_files/NamespaceCoveragePrivateTest.php
deleted file mode 100644
index cce7ba9..0000000
--- a/vendor/phpunit/phpunit/tests/_files/NamespaceCoveragePrivateTest.php
+++ /dev/null
@@ -1,12 +0,0 @@
-<?php
-class NamespaceCoveragePrivateTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @covers Foo\CoveredClass::<private>
-     */
-    public function testSomething()
-    {
-        $o = new Foo\CoveredClass;
-        $o->publicMethod();
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/NamespaceCoverageProtectedTest.php b/vendor/phpunit/phpunit/tests/_files/NamespaceCoverageProtectedTest.php
deleted file mode 100644
index dbbcc1c..0000000
--- a/vendor/phpunit/phpunit/tests/_files/NamespaceCoverageProtectedTest.php
+++ /dev/null
@@ -1,12 +0,0 @@
-<?php
-class NamespaceCoverageProtectedTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @covers Foo\CoveredClass::<protected>
-     */
-    public function testSomething()
-    {
-        $o = new Foo\CoveredClass;
-        $o->publicMethod();
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/NamespaceCoveragePublicTest.php b/vendor/phpunit/phpunit/tests/_files/NamespaceCoveragePublicTest.php
deleted file mode 100644
index bf1bff8..0000000
--- a/vendor/phpunit/phpunit/tests/_files/NamespaceCoveragePublicTest.php
+++ /dev/null
@@ -1,12 +0,0 @@
-<?php
-class NamespaceCoveragePublicTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @covers Foo\CoveredClass::<public>
-     */
-    public function testSomething()
-    {
-        $o = new Foo\CoveredClass;
-        $o->publicMethod();
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/NamespaceCoveredClass.php b/vendor/phpunit/phpunit/tests/_files/NamespaceCoveredClass.php
deleted file mode 100644
index 5bd0ddf..0000000
--- a/vendor/phpunit/phpunit/tests/_files/NamespaceCoveredClass.php
+++ /dev/null
@@ -1,38 +0,0 @@
-<?php
-namespace Foo;
-
-class CoveredParentClass
-{
-    private function privateMethod()
-    {
-    }
-
-    protected function protectedMethod()
-    {
-        $this->privateMethod();
-    }
-
-    public function publicMethod()
-    {
-        $this->protectedMethod();
-    }
-}
-
-class CoveredClass extends CoveredParentClass
-{
-    private function privateMethod()
-    {
-    }
-
-    protected function protectedMethod()
-    {
-        parent::protectedMethod();
-        $this->privateMethod();
-    }
-
-    public function publicMethod()
-    {
-        parent::publicMethod();
-        $this->protectedMethod();
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/NamespaceCoveredFunction.php b/vendor/phpunit/phpunit/tests/_files/NamespaceCoveredFunction.php
deleted file mode 100644
index afc00d7..0000000
--- a/vendor/phpunit/phpunit/tests/_files/NamespaceCoveredFunction.php
+++ /dev/null
@@ -1,7 +0,0 @@
-<?php
-namespace foo;
-
-function func()
-{
-    return true;
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/NoArgTestCaseTest.php b/vendor/phpunit/phpunit/tests/_files/NoArgTestCaseTest.php
deleted file mode 100644
index 5867ba3..0000000
--- a/vendor/phpunit/phpunit/tests/_files/NoArgTestCaseTest.php
+++ /dev/null
@@ -1,7 +0,0 @@
-<?php
-class NoArgTestCaseTest extends PHPUnit_Framework_TestCase
-{
-    public function testNothing()
-    {
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/NoTestCaseClass.php b/vendor/phpunit/phpunit/tests/_files/NoTestCaseClass.php
deleted file mode 100644
index d64e4e1..0000000
--- a/vendor/phpunit/phpunit/tests/_files/NoTestCaseClass.php
+++ /dev/null
@@ -1,4 +0,0 @@
-<?php
-class NoTestCaseClass
-{
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/NoTestCases.php b/vendor/phpunit/phpunit/tests/_files/NoTestCases.php
deleted file mode 100644
index ae93233..0000000
--- a/vendor/phpunit/phpunit/tests/_files/NoTestCases.php
+++ /dev/null
@@ -1,7 +0,0 @@
-<?php
-class NoTestCases extends PHPUnit_Framework_TestCase
-{
-    public function noTestCase()
-    {
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/NonStatic.php b/vendor/phpunit/phpunit/tests/_files/NonStatic.php
deleted file mode 100644
index 48bad9a..0000000
--- a/vendor/phpunit/phpunit/tests/_files/NonStatic.php
+++ /dev/null
@@ -1,8 +0,0 @@
-<?php
-class NonStatic
-{
-    public function suite()
-    {
-        return;
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/NotExistingCoveredElementTest.php b/vendor/phpunit/phpunit/tests/_files/NotExistingCoveredElementTest.php
deleted file mode 100644
index be07ef4..0000000
--- a/vendor/phpunit/phpunit/tests/_files/NotExistingCoveredElementTest.php
+++ /dev/null
@@ -1,24 +0,0 @@
-<?php
-class NotExistingCoveredElementTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @covers NotExistingClass
-     */
-    public function testOne()
-    {
-    }
-
-    /**
-     * @covers NotExistingClass::notExistingMethod
-     */
-    public function testTwo()
-    {
-    }
-
-    /**
-     * @covers NotExistingClass::<public>
-     */
-    public function testThree()
-    {
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/NotPublicTestCase.php b/vendor/phpunit/phpunit/tests/_files/NotPublicTestCase.php
deleted file mode 100644
index a391010..0000000
--- a/vendor/phpunit/phpunit/tests/_files/NotPublicTestCase.php
+++ /dev/null
@@ -1,11 +0,0 @@
-<?php
-class NotPublicTestCase extends PHPUnit_Framework_TestCase
-{
-    public function testPublic()
-    {
-    }
-
-    protected function testNotPublic()
-    {
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/NotVoidTestCase.php b/vendor/phpunit/phpunit/tests/_files/NotVoidTestCase.php
deleted file mode 100644
index 19a9567..0000000
--- a/vendor/phpunit/phpunit/tests/_files/NotVoidTestCase.php
+++ /dev/null
@@ -1,4 +0,0 @@
-<?php
-class NotVoidTestCase extends PHPUnit_Framework_TestCase
-{
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/NothingTest.php b/vendor/phpunit/phpunit/tests/_files/NothingTest.php
deleted file mode 100644
index b56d7d7..0000000
--- a/vendor/phpunit/phpunit/tests/_files/NothingTest.php
+++ /dev/null
@@ -1,7 +0,0 @@
-<?php
-class NothingTest extends PHPUnit_Framework_TestCase
-{
-    public function testNothing()
-    {
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/OneTestCase.php b/vendor/phpunit/phpunit/tests/_files/OneTestCase.php
deleted file mode 100644
index 15eeed9..0000000
--- a/vendor/phpunit/phpunit/tests/_files/OneTestCase.php
+++ /dev/null
@@ -1,11 +0,0 @@
-<?php
-class OneTestCase extends PHPUnit_Framework_TestCase
-{
-    public function noTestCase()
-    {
-    }
-
-    public function testCase($arg = '')
-    {
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/OutputTestCase.php b/vendor/phpunit/phpunit/tests/_files/OutputTestCase.php
deleted file mode 100644
index ae972b5..0000000
--- a/vendor/phpunit/phpunit/tests/_files/OutputTestCase.php
+++ /dev/null
@@ -1,27 +0,0 @@
-<?php
-class OutputTestCase extends PHPUnit_Framework_TestCase
-{
-    public function testExpectOutputStringFooActualFoo()
-    {
-        $this->expectOutputString('foo');
-        print 'foo';
-    }
-
-    public function testExpectOutputStringFooActualBar()
-    {
-        $this->expectOutputString('foo');
-        print 'bar';
-    }
-
-    public function testExpectOutputRegexFooActualFoo()
-    {
-        $this->expectOutputRegex('/foo/');
-        print 'foo';
-    }
-
-    public function testExpectOutputRegexFooActualBar()
-    {
-        $this->expectOutputRegex('/foo/');
-        print 'bar';
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/OverrideTestCase.php b/vendor/phpunit/phpunit/tests/_files/OverrideTestCase.php
deleted file mode 100644
index fcc276c..0000000
--- a/vendor/phpunit/phpunit/tests/_files/OverrideTestCase.php
+++ /dev/null
@@ -1,7 +0,0 @@
-<?php
-class OverrideTestCase extends OneTestCase
-{
-    public function testCase($arg = '')
-    {
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/RequirementsClassBeforeClassHookTest.php b/vendor/phpunit/phpunit/tests/_files/RequirementsClassBeforeClassHookTest.php
deleted file mode 100644
index 002781f..0000000
--- a/vendor/phpunit/phpunit/tests/_files/RequirementsClassBeforeClassHookTest.php
+++ /dev/null
@@ -1,12 +0,0 @@
-<?php
-
-/**
- * @requires extension nonExistingExtension
- */
-class RequirementsClassBeforeClassHookTest extends PHPUnit_Framework_TestCase
-{
-    public static function setUpBeforeClass()
-    {
-        throw new Exception(__METHOD__ . ' should not be called because of class requirements.');
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/RequirementsClassDocBlockTest.php b/vendor/phpunit/phpunit/tests/_files/RequirementsClassDocBlockTest.php
deleted file mode 100644
index c420afb..0000000
--- a/vendor/phpunit/phpunit/tests/_files/RequirementsClassDocBlockTest.php
+++ /dev/null
@@ -1,22 +0,0 @@
-<?php
-
-/**
- * @requires PHP 5.3
- * @requires PHPUnit 4.0
- * @requires OS Linux
- * @requires function testFuncClass
- * @requires extension testExtClass
- */
-class RequirementsClassDocBlockTest
-{
-    /**
-     * @requires PHP 5.4
-     * @requires PHPUnit 3.7
-     * @requires OS WINNT
-     * @requires function testFuncMethod
-     * @requires extension testExtMethod
-     */
-    public function testMethod()
-    {
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/RequirementsTest.php b/vendor/phpunit/phpunit/tests/_files/RequirementsTest.php
deleted file mode 100644
index 5b20695..0000000
--- a/vendor/phpunit/phpunit/tests/_files/RequirementsTest.php
+++ /dev/null
@@ -1,148 +0,0 @@
-<?php
-class RequirementsTest extends PHPUnit_Framework_TestCase
-{
-    public function testOne()
-    {
-    }
-
-    /**
-     * @requires PHPUnit 1.0
-     */
-    public function testTwo()
-    {
-    }
-
-    /**
-     * @requires PHP 2.0
-     */
-    public function testThree()
-    {
-    }
-
-    /**
-     * @requires PHPUnit 2.0
-     * @requires PHP 1.0
-     */
-    public function testFour()
-    {
-    }
-
-    /**
-     * @requires PHP 5.4.0RC6
-     */
-    public function testFive()
-    {
-    }
-
-    /**
-     * @requires PHP 5.4.0-alpha1
-     */
-    public function testSix()
-    {
-    }
-
-    /**
-     * @requires PHP 5.4.0beta2
-     */
-    public function testSeven()
-    {
-    }
-
-    /**
-     * @requires PHP 5.4-dev
-     */
-    public function testEight()
-    {
-    }
-
-    /**
-     * @requires function testFunc
-     */
-    public function testNine()
-    {
-    }
-
-    /**
-     * @requires extension testExt
-     */
-    public function testTen()
-    {
-    }
-
-    /**
-     * @requires OS Linux
-     */
-    public function testEleven()
-    {
-    }
-
-    /**
-     * @requires PHP 99-dev
-     * @requires PHPUnit 9-dev
-     * @requires OS DOESNOTEXIST
-     * @requires function testFuncOne
-     * @requires function testFuncTwo
-     * @requires extension testExtOne
-     * @requires extension testExtTwo
-     */
-    public function testAllPossibleRequirements()
-    {
-    }
-
-    /**
-     * @requires function array_merge
-     */
-    public function testExistingFunction()
-    {
-    }
-
-    /**
-     * @requires function ReflectionMethod::setAccessible
-     */
-    public function testExistingMethod()
-    {
-    }
-
-    /**
-     * @requires extension spl
-     */
-    public function testExistingExtension()
-    {
-    }
-
-    /**
-     * @requires OS .*
-     */
-    public function testExistingOs()
-    {
-    }
-
-    /**
-     * @requires PHPUnit 1111111
-     */
-    public function testAlwaysSkip()
-    {
-    }
-
-    /**
-     * @requires PHP 9999999
-     */
-    public function testAlwaysSkip2()
-    {
-    }
-
-    /**
-     * @requires OS DOESNOTEXIST
-     */
-    public function testAlwaysSkip3()
-    {
-    }
-
-    /**
-     * @requires	  extension	  spl
-     * @requires	  OS	  .*
-     */
-    public function testSpace()
-    {
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/SampleArrayAccess.php b/vendor/phpunit/phpunit/tests/_files/SampleArrayAccess.php
deleted file mode 100644
index d002165..0000000
--- a/vendor/phpunit/phpunit/tests/_files/SampleArrayAccess.php
+++ /dev/null
@@ -1,36 +0,0 @@
-<?php
-/**
- * Sample class that implements ArrayAccess copied from
- * http://www.php.net/manual/en/class.arrayaccess.php
- * with some minor changes
- * This class required for PHPUnit_Framework_Constraint_ArrayHasKey testing
- */
-class SampleArrayAccess implements ArrayAccess
-{
-    private $container;
-
-    public function __construct()
-    {
-        $this->container = array();
-    }
-    public function offsetSet($offset, $value)
-    {
-        if (is_null($offset)) {
-            $this->container[] = $value;
-        } else {
-            $this->container[$offset] = $value;
-        }
-    }
-    public function offsetExists($offset)
-    {
-        return isset($this->container[$offset]);
-    }
-    public function offsetUnset($offset)
-    {
-        unset($this->container[$offset]);
-    }
-    public function offsetGet($offset)
-    {
-        return isset($this->container[$offset]) ? $this->container[$offset] : null;
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/SampleClass.php b/vendor/phpunit/phpunit/tests/_files/SampleClass.php
deleted file mode 100644
index 06c51c5..0000000
--- a/vendor/phpunit/phpunit/tests/_files/SampleClass.php
+++ /dev/null
@@ -1,14 +0,0 @@
-<?php
-class SampleClass
-{
-    public $a;
-    protected $b;
-    protected $c;
-
-    public function __construct($a, $b, $c)
-    {
-        $this->a = $a;
-        $this->b = $b;
-        $this->c = $c;
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/Singleton.php b/vendor/phpunit/phpunit/tests/_files/Singleton.php
deleted file mode 100644
index bfdf3bb..0000000
--- a/vendor/phpunit/phpunit/tests/_files/Singleton.php
+++ /dev/null
@@ -1,22 +0,0 @@
-<?php
-class Singleton
-{
-    private static $uniqueInstance = null;
-
-    protected function __construct()
-    {
-    }
-
-    final private function __clone()
-    {
-    }
-
-    public static function getInstance()
-    {
-        if (self::$uniqueInstance === null) {
-            self::$uniqueInstance = new self;
-        }
-
-        return self::$uniqueInstance;
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/StackTest.php b/vendor/phpunit/phpunit/tests/_files/StackTest.php
deleted file mode 100644
index 2e29e87..0000000
--- a/vendor/phpunit/phpunit/tests/_files/StackTest.php
+++ /dev/null
@@ -1,24 +0,0 @@
-<?php
-class StackTest extends PHPUnit_Framework_TestCase
-{
-    public function testPush()
-    {
-        $stack = array();
-        $this->assertEquals(0, count($stack));
-
-        array_push($stack, 'foo');
-        $this->assertEquals('foo', $stack[count($stack)-1]);
-        $this->assertEquals(1, count($stack));
-
-        return $stack;
-    }
-
-    /**
-     * @depends testPush
-     */
-    public function testPop(array $stack)
-    {
-        $this->assertEquals('foo', array_pop($stack));
-        $this->assertEquals(0, count($stack));
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/Struct.php b/vendor/phpunit/phpunit/tests/_files/Struct.php
deleted file mode 100644
index 12977a9..0000000
--- a/vendor/phpunit/phpunit/tests/_files/Struct.php
+++ /dev/null
@@ -1,10 +0,0 @@
-<?php
-class Struct
-{
-    public $var;
-
-    public function __construct($var)
-    {
-        $this->var = $var;
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/Success.php b/vendor/phpunit/phpunit/tests/_files/Success.php
deleted file mode 100644
index 6d3dd61..0000000
--- a/vendor/phpunit/phpunit/tests/_files/Success.php
+++ /dev/null
@@ -1,7 +0,0 @@
-<?php
-class Success extends PHPUnit_Framework_TestCase
-{
-    protected function runTest()
-    {
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/TemplateMethodsTest.php b/vendor/phpunit/phpunit/tests/_files/TemplateMethodsTest.php
deleted file mode 100644
index d6b1364..0000000
--- a/vendor/phpunit/phpunit/tests/_files/TemplateMethodsTest.php
+++ /dev/null
@@ -1,51 +0,0 @@
-<?php
-class TemplateMethodsTest extends PHPUnit_Framework_TestCase
-{
-    public static function setUpBeforeClass()
-    {
-        print __METHOD__ . "\n";
-    }
-
-    protected function setUp()
-    {
-        print __METHOD__ . "\n";
-    }
-
-    protected function assertPreConditions()
-    {
-        print __METHOD__ . "\n";
-    }
-
-    public function testOne()
-    {
-        print __METHOD__ . "\n";
-        $this->assertTrue(true);
-    }
-
-    public function testTwo()
-    {
-        print __METHOD__ . "\n";
-        $this->assertTrue(false);
-    }
-
-    protected function assertPostConditions()
-    {
-        print __METHOD__ . "\n";
-    }
-
-    protected function tearDown()
-    {
-        print __METHOD__ . "\n";
-    }
-
-    public static function tearDownAfterClass()
-    {
-        print __METHOD__ . "\n";
-    }
-
-    protected function onNotSuccessfulTest(Exception $e)
-    {
-        print __METHOD__ . "\n";
-        throw $e;
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/TestIncomplete.php b/vendor/phpunit/phpunit/tests/_files/TestIncomplete.php
deleted file mode 100644
index 743a761..0000000
--- a/vendor/phpunit/phpunit/tests/_files/TestIncomplete.php
+++ /dev/null
@@ -1,8 +0,0 @@
-<?php
-class TestIncomplete extends PHPUnit_Framework_TestCase
-{
-    protected function runTest()
-    {
-        $this->markTestIncomplete('Incomplete test');
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/TestIterator.php b/vendor/phpunit/phpunit/tests/_files/TestIterator.php
deleted file mode 100644
index 01135e3..0000000
--- a/vendor/phpunit/phpunit/tests/_files/TestIterator.php
+++ /dev/null
@@ -1,36 +0,0 @@
-<?php
-class TestIterator implements Iterator
-{
-    protected $array;
-    protected $position = 0;
-
-    public function __construct($array = array())
-    {
-        $this->array = $array;
-    }
-
-    public function rewind()
-    {
-        $this->position = 0;
-    }
-
-    public function valid()
-    {
-        return $this->position < count($this->array);
-    }
-
-    public function key()
-    {
-        return $this->position;
-    }
-
-    public function current()
-    {
-        return $this->array[$this->position];
-    }
-
-    public function next()
-    {
-        $this->position++;
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/TestIterator2.php b/vendor/phpunit/phpunit/tests/_files/TestIterator2.php
deleted file mode 100644
index 3b47fa3..0000000
--- a/vendor/phpunit/phpunit/tests/_files/TestIterator2.php
+++ /dev/null
@@ -1,35 +0,0 @@
-<?php
-class TestIterator2 implements Iterator
-{
-    protected $data;
-
-    public function __construct(array $array)
-    {
-        $this->data = $array;
-    }
-
-    public function current()
-    {
-        return current($this->data);
-    }
-
-    public function next()
-    {
-        next($this->data);
-    }
-
-    public function key()
-    {
-        return key($this->data);
-    }
-
-    public function valid()
-    {
-        return key($this->data) !== null;
-    }
-
-    public function rewind()
-    {
-        reset($this->data);
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/TestSkipped.php b/vendor/phpunit/phpunit/tests/_files/TestSkipped.php
deleted file mode 100644
index c2d68b2..0000000
--- a/vendor/phpunit/phpunit/tests/_files/TestSkipped.php
+++ /dev/null
@@ -1,8 +0,0 @@
-<?php
-class TestSkipped extends PHPUnit_Framework_TestCase
-{
-    protected function runTest()
-    {
-        $this->markTestSkipped('Skipped test');
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/TestTestError.php b/vendor/phpunit/phpunit/tests/_files/TestTestError.php
deleted file mode 100644
index 6f61b8e..0000000
--- a/vendor/phpunit/phpunit/tests/_files/TestTestError.php
+++ /dev/null
@@ -1,8 +0,0 @@
-<?php
-class TestError extends PHPUnit_Framework_TestCase
-{
-    protected function runTest()
-    {
-        throw new Exception;
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/TestWithTest.php b/vendor/phpunit/phpunit/tests/_files/TestWithTest.php
deleted file mode 100644
index 3fa6dfd..0000000
--- a/vendor/phpunit/phpunit/tests/_files/TestWithTest.php
+++ /dev/null
@@ -1,24 +0,0 @@
-<?php
-class TestWithTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @testWith [0, 0, 0]
-     *           [0, 1, 1]
-     *           [1, 2, 3]
-     *           [20, 22, 42]
-     */
-    public function testAdd($a, $b, $c)
-    {
-        $this->assertEquals($c, $a + $b);
-    }
-
-    public static function providerMethod()
-    {
-        return array(
-          array(0, 0, 0),
-          array(0, 1, 1),
-          array(1, 1, 3),
-          array(1, 0, 1)
-        );
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/ThrowExceptionTestCase.php b/vendor/phpunit/phpunit/tests/_files/ThrowExceptionTestCase.php
deleted file mode 100644
index 1d2a769..0000000
--- a/vendor/phpunit/phpunit/tests/_files/ThrowExceptionTestCase.php
+++ /dev/null
@@ -1,8 +0,0 @@
-<?php
-class ThrowExceptionTestCase extends PHPUnit_Framework_TestCase
-{
-    public function test()
-    {
-        throw new RuntimeException('A runtime error occurred');
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/ThrowNoExceptionTestCase.php b/vendor/phpunit/phpunit/tests/_files/ThrowNoExceptionTestCase.php
deleted file mode 100644
index 76958cb..0000000
--- a/vendor/phpunit/phpunit/tests/_files/ThrowNoExceptionTestCase.php
+++ /dev/null
@@ -1,7 +0,0 @@
-<?php
-class ThrowNoExceptionTestCase extends PHPUnit_Framework_TestCase
-{
-    public function test()
-    {
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/WasRun.php b/vendor/phpunit/phpunit/tests/_files/WasRun.php
deleted file mode 100644
index 4221b6d..0000000
--- a/vendor/phpunit/phpunit/tests/_files/WasRun.php
+++ /dev/null
@@ -1,10 +0,0 @@
-<?php
-class WasRun extends PHPUnit_Framework_TestCase
-{
-    public $wasRun = false;
-
-    protected function runTest()
-    {
-        $this->wasRun = true;
-    }
-}
diff --git a/vendor/phpunit/phpunit/tests/_files/bar.xml b/vendor/phpunit/phpunit/tests/_files/bar.xml
deleted file mode 100644
index 5d3fa28..0000000
--- a/vendor/phpunit/phpunit/tests/_files/bar.xml
+++ /dev/null
@@ -1 +0,0 @@
-<bar/>
diff --git a/vendor/phpunit/phpunit/tests/_files/configuration.colors.empty.xml b/vendor/phpunit/phpunit/tests/_files/configuration.colors.empty.xml
deleted file mode 100644
index 5f9e055..0000000
--- a/vendor/phpunit/phpunit/tests/_files/configuration.colors.empty.xml
+++ /dev/null
@@ -1 +0,0 @@
-<phpunit colors=""></phpunit>
diff --git a/vendor/phpunit/phpunit/tests/_files/configuration.colors.false.xml b/vendor/phpunit/phpunit/tests/_files/configuration.colors.false.xml
deleted file mode 100644
index dcd4aa4..0000000
--- a/vendor/phpunit/phpunit/tests/_files/configuration.colors.false.xml
+++ /dev/null
@@ -1 +0,0 @@
-<phpunit colors="false"></phpunit>
diff --git a/vendor/phpunit/phpunit/tests/_files/configuration.colors.invalid.xml b/vendor/phpunit/phpunit/tests/_files/configuration.colors.invalid.xml
deleted file mode 100644
index c5bd699..0000000
--- a/vendor/phpunit/phpunit/tests/_files/configuration.colors.invalid.xml
+++ /dev/null
@@ -1 +0,0 @@
-<phpunit colors="Something else"></phpunit>
diff --git a/vendor/phpunit/phpunit/tests/_files/configuration.colors.true.xml b/vendor/phpunit/phpunit/tests/_files/configuration.colors.true.xml
deleted file mode 100644
index 1efe413..0000000
--- a/vendor/phpunit/phpunit/tests/_files/configuration.colors.true.xml
+++ /dev/null
@@ -1 +0,0 @@
-<phpunit colors="true"></phpunit>
diff --git a/vendor/phpunit/phpunit/tests/_files/configuration.custom-printer.xml b/vendor/phpunit/phpunit/tests/_files/configuration.custom-printer.xml
deleted file mode 100644
index 7a5a1f1..0000000
--- a/vendor/phpunit/phpunit/tests/_files/configuration.custom-printer.xml
+++ /dev/null
@@ -1,2 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<phpunit printerFile="CustomPrinter.php" printerClass="CustomPrinter" />
\ No newline at end of file
diff --git a/vendor/phpunit/phpunit/tests/_files/configuration.xml b/vendor/phpunit/phpunit/tests/_files/configuration.xml
deleted file mode 100644
index e83bfd3..0000000
--- a/vendor/phpunit/phpunit/tests/_files/configuration.xml
+++ /dev/null
@@ -1,120 +0,0 @@
-<?xml version="1.0" encoding="utf-8" ?>
-
-<phpunit backupGlobals="true"
-         backupStaticAttributes="false"
-         bootstrap="/path/to/bootstrap.php"
-         cacheTokens="false"
-         columns="80"
-         colors="false"
-         stderr="false"
-         convertErrorsToExceptions="true"
-         convertNoticesToExceptions="true"
-         convertWarningsToExceptions="true"
-         forceCoversAnnotation="false"
-         mapTestClassNameToCoveredClassName="false"
-         printerClass="PHPUnit_TextUI_ResultPrinter"
-         stopOnFailure="false"
-         testSuiteLoaderClass="PHPUnit_Runner_StandardTestSuiteLoader"
-         timeoutForSmallTests="1"
-         timeoutForMediumTests="10"
-         timeoutForLargeTests="60"
-         beStrictAboutTestsThatDoNotTestAnything="false"
-         beStrictAboutOutputDuringTests="false"
-         beStrictAboutTestSize="false"
-         beStrictAboutTodoAnnotatedTests="false"
-         checkForUnintentionallyCoveredCode="false"
-         beStrictAboutChangesToGlobalState="false"
-         verbose="false">
-  <testsuites>
-    <testsuite name="My Test Suite">
-      <directory suffix="Test.php" phpVersion="5.3.0" phpVersionOperator=">=">/path/to/files</directory>
-      <file phpVersion="5.3.0" phpVersionOperator=">=">/path/to/MyTest.php</file>
-    </testsuite>
-  </testsuites>
-
-  <groups>
-    <include>
-      <group>name</group>
-    </include>
-    <exclude>
-      <group>name</group>
-    </exclude>
-  </groups>
-
-  <filter>
-    <blacklist>
-      <directory suffix=".php">/path/to/files</directory>
-      <file>/path/to/file</file>
-      <exclude>
-        <directory suffix=".php">/path/to/files</directory>
-        <file>/path/to/file</file>
-      </exclude>
-    </blacklist>
-    <whitelist addUncoveredFilesFromWhitelist="true"
-               processUncoveredFilesFromWhitelist="false">
-      <directory suffix=".php">/path/to/files</directory>
-      <file>/path/to/file</file>
-      <exclude>
-        <directory suffix=".php">/path/to/files</directory>
-        <file>/path/to/file</file>
-      </exclude>
-    </whitelist>
-  </filter>
-
-  <listeners>
-    <listener class="MyListener" file="/optional/path/to/MyListener.php">
-      <arguments>
-        <array>
-          <element key="0">
-            <string>Sebastian</string>
-          </element>
-        </array>
-        <integer>22</integer>
-        <string>April</string>
-        <double>19.78</double>
-        <null/>
-        <object class="stdClass"/>
-        <file>MyTestFile.php</file>
-        <directory>MyRelativePath</directory>
-      </arguments>
-    </listener>
-    <listener class="IncludePathListener" file="ConfigurationTest.php" />
-    <listener class="CompactArgumentsListener" file="/CompactArgumentsListener.php"><arguments><integer>42</integer></arguments></listener>
-  </listeners>
-
-  <logging>
-    <log type="coverage-html" target="/tmp/report" lowUpperBound="50" highLowerBound="90"/>
-    <log type="coverage-clover" target="/tmp/clover.xml"/>
-    <log type="json" target="/tmp/logfile.json"/>
-    <log type="plain" target="/tmp/logfile.txt"/>
-    <log type="tap" target="/tmp/logfile.tap"/>
-    <log type="junit" target="/tmp/logfile.xml" logIncompleteSkipped="false"/>
-    <log type="testdox-html" target="/tmp/testdox.html"/>
-    <log type="testdox-text" target="/tmp/testdox.txt"/>
-  </logging>
-
-  <php>
-    <includePath>.</includePath>
-    <includePath>/path/to/lib</includePath>
-    <ini name="foo" value="bar"/>
-    <const name="FOO" value="false"/>
-    <const name="BAR" value="true"/>
-    <var name="foo" value="false"/>
-    <env name="foo" value="true"/>
-    <post name="foo" value="bar"/>
-    <get name="foo" value="bar"/>
-    <cookie name="foo" value="bar"/>
-    <server name="foo" value="bar"/>
-    <files name="foo" value="bar"/>
-    <request name="foo" value="bar"/>
-  </php>
-
-  <selenium>
-    <browser name="Firefox on Linux"
-             browser="*firefox /usr/lib/firefox/firefox-bin"
-             host="my.linux.box"
-             port="4444"
-             timeout="30000"/>
-  </selenium>
-</phpunit>
-
diff --git a/vendor/phpunit/phpunit/tests/_files/configuration_empty.xml b/vendor/phpunit/phpunit/tests/_files/configuration_empty.xml
deleted file mode 100644
index 13c8b71..0000000
--- a/vendor/phpunit/phpunit/tests/_files/configuration_empty.xml
+++ /dev/null
@@ -1,57 +0,0 @@
-<?xml version="1.0" encoding="utf-8" ?>
-
-<phpunit bootstrap=""
-         testSuiteLoaderFile=""
-         printerFile="">
-  <testsuites>
-    <testsuite name="My Test Suite">
-      <directory></directory>
-      <file></file>
-    </testsuite>
-  </testsuites>
-
-  <groups>
-    <include>
-      <group></group>
-    </include>
-    <exclude>
-      <group></group>
-    </exclude>
-  </groups>
-
-  <filter>
-    <blacklist>
-      <directory></directory>
-      <file></file>
-      <exclude>
-        <directory></directory>
-        <file></file>
-      </exclude>
-    </blacklist>
-    <whitelist>
-      <directory></directory>
-      <file></file>
-      <exclude>
-        <directory></directory>
-        <file></file>
-      </exclude>
-    </whitelist>
-  </filter>
-
-  <logging>
-    <log type="coverage-html" target=""/>
-    <log type="coverage-clover" target=""/>
-    <log type="json" target=""/>
-    <log type="plain" target=""/>
-    <log type="tap" target=""/>
-    <log type="junit" target="" logIncompleteSkipped="false"/>
-    <log type="testdox-html" target=""/>
-    <log type="testdox-text" target=""/>
-  </logging>
-
-  <php>
-    <includePath/>
-    <includePath></includePath>
-  </php>
-</phpunit>
-
diff --git a/vendor/phpunit/phpunit/tests/_files/configuration_xinclude.xml b/vendor/phpunit/phpunit/tests/_files/configuration_xinclude.xml
deleted file mode 100644
index 4307629..0000000
--- a/vendor/phpunit/phpunit/tests/_files/configuration_xinclude.xml
+++ /dev/null
@@ -1,75 +0,0 @@
-<?xml version="1.0" encoding="utf-8" ?>
-
-<phpunit backupGlobals="true"
-         backupStaticAttributes="false"
-         bootstrap="/path/to/bootstrap.php"
-         cacheTokens="false"
-         columns="80"
-         colors="false"
-         stderr="false"
-         convertErrorsToExceptions="true"
-         convertNoticesToExceptions="true"
-         convertWarningsToExceptions="true"
-         forceCoversAnnotation="false"
-         mapTestClassNameToCoveredClassName="false"
-         printerClass="PHPUnit_TextUI_ResultPrinter"
-         stopOnFailure="false"
-         testSuiteLoaderClass="PHPUnit_Runner_StandardTestSuiteLoader"
-         timeoutForSmallTests="1"
-         timeoutForMediumTests="10"
-         timeoutForLargeTests="60"
-         beStrictAboutTestsThatDoNotTestAnything="false"
-         beStrictAboutOutputDuringTests="false"
-         beStrictAboutTestSize="false"
-         beStrictAboutTodoAnnotatedTests="false"
-         checkForUnintentionallyCoveredCode="false"
-         beStrictAboutChangesToGlobalState="false"
-         verbose="false">
-         <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
-             href="configuration.xml"
-             parse="xml"
-             xpointer="xpointer(/phpunit/testsuites)" />
-
-  <groups>
-    <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
-          href="configuration.xml"
-        parse="xml"
-        xpointer="xpointer(/phpunit/groups/*)" />
-  </groups>
-
-
-  <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
-      href="configuration.xml"
-      parse="xml"
-      xpointer="xpointer(/phpunit/filter)" />
-  <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
-      href="configuration.xml"
-      parse="xml"
-      xpointer="xpointer(/phpunit/listeners)" />
-  <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
-      href="configuration.xml"
-      parse="xml"
-      xpointer="xpointer(/phpunit/logging)" />
-
-  <php>
-    <includePath>.</includePath>
-    <includePath>/path/to/lib</includePath>
-    <ini name="foo" value="bar"/>
-    <const name="FOO" value="false"/>
-    <const name="BAR" value="true"/>
-    <var name="foo" value="false"/>
-    <env name="foo" value="true"/>
-    <post name="foo" value="bar"/>
-    <get name="foo" value="bar"/>
-    <cookie name="foo" value="bar"/>
-    <server name="foo" value="bar"/>
-    <files name="foo" value="bar"/>
-    <request name="foo" value="bar"/>
-  </php>
-
-  <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
-      href="configuration.xml"
-      parse="xml"
-      xpointer="xpointer(/phpunit/selenium)" />
-</phpunit>
-
diff --git a/vendor/phpunit/phpunit/tests/_files/expectedFileFormat.txt b/vendor/phpunit/phpunit/tests/_files/expectedFileFormat.txt
deleted file mode 100644
index b7d6715..0000000
--- a/vendor/phpunit/phpunit/tests/_files/expectedFileFormat.txt
+++ /dev/null
@@ -1 +0,0 @@
-FOO
diff --git a/vendor/phpunit/phpunit/tests/_files/foo.xml b/vendor/phpunit/phpunit/tests/_files/foo.xml
deleted file mode 100644
index f1999f8..0000000
--- a/vendor/phpunit/phpunit/tests/_files/foo.xml
+++ /dev/null
@@ -1 +0,0 @@
-<foo/>
diff --git a/vendor/phpunit/phpunit/tests/_files/structureAttributesAreSameButValuesAreNot.xml b/vendor/phpunit/phpunit/tests/_files/structureAttributesAreSameButValuesAreNot.xml
deleted file mode 100644
index a5d9ab3..0000000
--- a/vendor/phpunit/phpunit/tests/_files/structureAttributesAreSameButValuesAreNot.xml
+++ /dev/null
@@ -1,10 +0,0 @@
-<text:p xmlns:text="urn:oasis:names:tc:opendocument:xmlns:text:1.0">
-  <draw:frame xmlns:draw="urn:oasis:names:tc:opendocument:xmlns:drawing:1.0" xmlns:svg="urn:oasis:names:tc:opendocument:xmlns:svg-compatible:1.0" svg:width="12.567708175cm" svg:height="16.848541467cm" draw:style-name="Frame">
-    <draw:text-box>
-      <draw:frame svg:width="12.567708175cm" svg:height="15.848541467cm" draw:style-name="Image">
-        <draw:image xmlns:xlink="notthesame" xlink:href="Pictures/kristian.jpg"/>
-      </draw:frame>
-      <text:p text:style-name="Text">Image <text:sequence xmlns:style="notthesame" text:ref-name="refImage1" style:num-format="1" text:formula="ooow:Image+1" text:name="Image">1</text:sequence>: Dette er en test caption</text:p>
-    </draw:text-box>
-  </draw:frame>
-</text:p>
diff --git a/vendor/phpunit/phpunit/tests/_files/structureExpected.xml b/vendor/phpunit/phpunit/tests/_files/structureExpected.xml
deleted file mode 100644
index d900105..0000000
--- a/vendor/phpunit/phpunit/tests/_files/structureExpected.xml
+++ /dev/null
@@ -1,10 +0,0 @@
-<text:p xmlns:text="urn:oasis:names:tc:opendocument:xmlns:text:1.0">
-  <draw:frame xmlns:draw="urn:oasis:names:tc:opendocument:xmlns:drawing:1.0" xmlns:svg="urn:oasis:names:tc:opendocument:xmlns:svg-compatible:1.0" svg:width="12.567708175cm" svg:height="16.848541467cm" draw:style-name="Frame">
-    <draw:text-box>
-      <draw:frame svg:width="12.567708175cm" svg:height="15.848541467cm" draw:style-name="Image">
-        <draw:image xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="Pictures/kristian.jpg"/>
-      </draw:frame>
-      <text:p text:style-name="Text">Image <text:sequence xmlns:style="urn:oasis:names:tc:opendocument:xmlns:style:1.0" text:ref-name="refImage1" style:num-format="1" text:formula="ooow:Image+1" text:name="Image">1</text:sequence>: Dette er en test caption</text:p>
-    </draw:text-box>
-  </draw:frame>
-</text:p>
diff --git a/vendor/phpunit/phpunit/tests/_files/structureIgnoreTextNodes.xml b/vendor/phpunit/phpunit/tests/_files/structureIgnoreTextNodes.xml
deleted file mode 100644
index 0771b60..0000000
--- a/vendor/phpunit/phpunit/tests/_files/structureIgnoreTextNodes.xml
+++ /dev/null
@@ -1,13 +0,0 @@
-<text:p xmlns:text="urn:oasis:names:tc:opendocument:xmlns:text:1.0">
-  <draw:frame xmlns:draw="urn:oasis:names:tc:opendocument:xmlns:drawing:1.0" xmlns:svg="urn:oasis:names:tc:opendocument:xmlns:svg-compatible:1.0" svg:width="12.567708175cm" svg:height="16.848541467cm" draw:style-name="Frame">
-    <draw:text-box>
-    textnode
-      <draw:frame svg:width="12.567708175cm" svg:height="15.848541467cm" draw:style-name="Image">
-        <draw:image xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="Pictures/kristian.jpg"/> textnode
-      </draw:frame>
-      textnode
-      <text:p text:style-name="Text">Image <text:sequence xmlns:style="urn:oasis:names:tc:opendocument:xmlns:style:1.0" text:ref-name="refImage1" style:num-format="1" text:formula="ooow:Image+1" text:name="Image">1</text:sequence>: Dette er en test caption</text:p>
-      textnode
-    </draw:text-box>
-  </draw:frame>
-</text:p>
diff --git a/vendor/phpunit/phpunit/tests/_files/structureIsSameButDataIsNot.xml b/vendor/phpunit/phpunit/tests/_files/structureIsSameButDataIsNot.xml
deleted file mode 100644
index 2ba21b9..0000000
--- a/vendor/phpunit/phpunit/tests/_files/structureIsSameButDataIsNot.xml
+++ /dev/null
@@ -1,10 +0,0 @@
-<text:p xmlns:text="urn:oasis:names:tc:opendocument:xmlns:text:1.0">
-  <draw:frame xmlns:draw="urn:oasis:names:tc:opendocument:xmlns:drawing:1.0" xmlns:svg="urn:oasis:names:tc:opendocument:xmlns:svg-compatible:1.0" svg:width="12.567708175cm" svg:height="16.848541467cm" draw:style-name="Frame">
-    <draw:text-box>
-      <draw:frame svg:width="12.567708175cm" svg:height="15.848541467cm" draw:style-name="Image">
-        <draw:image xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="Pictures/kristian.jpg"/>
-      </draw:frame>
-      <text:p text:style-name="Text">Image is not the same <text:sequence xmlns:style="urn:oasis:names:tc:opendocument:xmlns:style:1.0" text:ref-name="refImage1" style:num-format="1" text:formula="ooow:Image+1" text:name="Image">1</text:sequence>: Dette er en test caption</text:p>
-    </draw:text-box>
-  </draw:frame>
-</text:p>
diff --git a/vendor/phpunit/phpunit/tests/_files/structureWrongNumberOfAttributes.xml b/vendor/phpunit/phpunit/tests/_files/structureWrongNumberOfAttributes.xml
deleted file mode 100644
index af9b974..0000000
--- a/vendor/phpunit/phpunit/tests/_files/structureWrongNumberOfAttributes.xml
+++ /dev/null
@@ -1,10 +0,0 @@
-<text:p xmlns:text="urn:oasis:names:tc:opendocument:xmlns:text:1.0">
-  <draw:frame xmlns:draw="urn:oasis:names:tc:opendocument:xmlns:drawing:1.0" xmlns:svg="urn:oasis:names:tc:opendocument:xmlns:svg-compatible:1.0" svg:width="12.567708175cm" svg:height="16.848541467cm" draw:style-name="Frame">
-    <draw:text-box>
-      <draw:frame svg:width="12.567708175cm" svg:height="15.848541467cm" draw:style-name="Image">
-        <draw:image/>
-      </draw:frame>
-      <text:p text:style-name="Text">Image <text:sequence xmlns:style="urn:oasis:names:tc:opendocument:xmlns:style:1.0" text:ref-name="refImage1" style:num-format="1" text:formula="ooow:Image+1" text:name="Image">1</text:sequence>: Dette er en test caption</text:p>
-    </draw:text-box>
-  </draw:frame>
-</text:p>
diff --git a/vendor/phpunit/phpunit/tests/_files/structureWrongNumberOfNodes.xml b/vendor/phpunit/phpunit/tests/_files/structureWrongNumberOfNodes.xml
deleted file mode 100644
index 9a394e2..0000000
--- a/vendor/phpunit/phpunit/tests/_files/structureWrongNumberOfNodes.xml
+++ /dev/null
@@ -1,9 +0,0 @@
-<text:p xmlns:text="urn:oasis:names:tc:opendocument:xmlns:text:1.0">
-  <draw:frame xmlns:draw="urn:oasis:names:tc:opendocument:xmlns:drawing:1.0" xmlns:svg="urn:oasis:names:tc:opendocument:xmlns:svg-compatible:1.0" svg:width="12.567708175cm" svg:height="16.848541467cm" draw:style-name="Frame">
-    <draw:text-box>
-      <draw:frame svg:width="12.567708175cm" svg:height="15.848541467cm" draw:style-name="Image">
-        <draw:image xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="Pictures/kristian.jpg"/>
-      </draw:frame>
-    </draw:text-box>
-  </draw:frame>
-</text:p>
diff --git a/vendor/phpunit/phpunit/tests/bootstrap.php b/vendor/phpunit/phpunit/tests/bootstrap.php
deleted file mode 100644
index cc79889..0000000
--- a/vendor/phpunit/phpunit/tests/bootstrap.php
+++ /dev/null
@@ -1,6 +0,0 @@
-<?php
-// Needed for isolated tests
-require __DIR__ . '/../vendor/autoload.php';
-
-ini_set('precision', 14);
-ini_set('serialize_precision', 14);
diff --git a/vendor/sebastian/comparator/tests/ArrayComparatorTest.php b/vendor/sebastian/comparator/tests/ArrayComparatorTest.php
deleted file mode 100644
index ee44615..0000000
--- a/vendor/sebastian/comparator/tests/ArrayComparatorTest.php
+++ /dev/null
@@ -1,163 +0,0 @@
-<?php
-/*
- * This file is part of the Comparator package.
- *
- * (c) Sebastian Bergmann <sebastian@phpunit.de>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace SebastianBergmann\Comparator;
-
-/**
- * @coversDefaultClass SebastianBergmann\Comparator\ArrayComparator
- *
- */
-class ArrayComparatorTest extends \PHPUnit_Framework_TestCase
-{
-    private $comparator;
-
-    protected function setUp()
-    {
-        $this->comparator = new ArrayComparator;
-        $this->comparator->setFactory(new Factory);
-    }
-
-    public function acceptsFailsProvider()
-    {
-        return array(
-          array(array(), null),
-          array(null, array()),
-          array(null, null)
-        );
-    }
-
-    public function assertEqualsSucceedsProvider()
-    {
-        return array(
-          array(
-            array('a' => 1, 'b' => 2),
-            array('b' => 2, 'a' => 1)
-          ),
-          array(
-            array(1),
-            array('1')
-          ),
-          array(
-            array(3, 2, 1),
-            array(2, 3, 1),
-            0,
-            true
-          ),
-          array(
-            array(2.3),
-            array(2.5),
-            0.5
-          ),
-          array(
-            array(array(2.3)),
-            array(array(2.5)),
-            0.5
-          ),
-          array(
-            array(new Struct(2.3)),
-            array(new Struct(2.5)),
-            0.5
-          ),
-        );
-    }
-
-    public function assertEqualsFailsProvider()
-    {
-        return array(
-          array(
-            array(),
-            array(0 => 1)
-          ),
-          array(
-            array(0 => 1),
-            array()
-          ),
-          array(
-            array(0 => null),
-            array()
-          ),
-          array(
-            array(0 => 1, 1 => 2),
-            array(0 => 1, 1 => 3)
-          ),
-          array(
-            array('a', 'b' => array(1, 2)),
-            array('a', 'b' => array(2, 1))
-          ),
-          array(
-            array(2.3),
-            array(4.2),
-            0.5
-          ),
-          array(
-            array(array(2.3)),
-            array(array(4.2)),
-            0.5
-          ),
-          array(
-            array(new Struct(2.3)),
-            array(new Struct(4.2)),
-            0.5
-          )
-        );
-    }
-
-    /**
-     * @covers  ::accepts
-     */
-    public function testAcceptsSucceeds()
-    {
-        $this->assertTrue(
-          $this->comparator->accepts(array(), array())
-        );
-    }
-
-    /**
-     * @covers       ::accepts
-     * @dataProvider acceptsFailsProvider
-     */
-    public function testAcceptsFails($expected, $actual)
-    {
-        $this->assertFalse(
-          $this->comparator->accepts($expected, $actual)
-        );
-    }
-
-    /**
-     * @covers       ::assertEquals
-     * @dataProvider assertEqualsSucceedsProvider
-     */
-    public function testAssertEqualsSucceeds($expected, $actual, $delta = 0.0, $canonicalize = false)
-    {
-        $exception = null;
-
-        try {
-            $this->comparator->assertEquals($expected, $actual, $delta, $canonicalize);
-        }
-
-        catch (ComparisonFailure $exception) {
-        }
-
-        $this->assertNull($exception, 'Unexpected ComparisonFailure');
-    }
-
-    /**
-     * @covers       ::assertEquals
-     * @dataProvider assertEqualsFailsProvider
-     */
-    public function testAssertEqualsFails($expected, $actual,$delta = 0.0, $canonicalize = false)
-    {
-        $this->setExpectedException(
-          'SebastianBergmann\\Comparator\\ComparisonFailure',
-          'Failed asserting that two arrays are equal'
-        );
-        $this->comparator->assertEquals($expected, $actual, $delta, $canonicalize);
-    }
-}
diff --git a/vendor/sebastian/comparator/tests/DOMNodeComparatorTest.php b/vendor/sebastian/comparator/tests/DOMNodeComparatorTest.php
deleted file mode 100644
index a769b84..0000000
--- a/vendor/sebastian/comparator/tests/DOMNodeComparatorTest.php
+++ /dev/null
@@ -1,162 +0,0 @@
-<?php
-/*
- * This file is part of the Comparator package.
- *
- * (c) Sebastian Bergmann <sebastian@phpunit.de>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace SebastianBergmann\Comparator;
-
-use DOMNode;
-use DOMDocument;
-
-/**
- * @coversDefaultClass SebastianBergmann\Comparator\DOMNodeComparator
- *
- */
-class DOMNodeComparatorTest extends \PHPUnit_Framework_TestCase
-{
-    private $comparator;
-
-    protected function setUp()
-    {
-        $this->comparator = new DOMNodeComparator;
-    }
-
-    public function acceptsSucceedsProvider()
-    {
-        $document = new DOMDocument;
-        $node = new DOMNode;
-
-        return array(
-          array($document, $document),
-          array($node, $node),
-          array($document, $node),
-          array($node, $document)
-        );
-    }
-
-    public function acceptsFailsProvider()
-    {
-        $document = new DOMDocument;
-
-        return array(
-          array($document, null),
-          array(null, $document),
-          array(null, null)
-        );
-    }
-
-    public function assertEqualsSucceedsProvider()
-    {
-        return array(
-          array(
-            $this->createDOMDocument('<root></root>'),
-            $this->createDOMDocument('<root/>')
-          ),
-          array(
-            $this->createDOMDocument('<root attr="bar"></root>'),
-            $this->createDOMDocument('<root attr="bar"/>')
-          ),
-          array(
-            $this->createDOMDocument('<root><foo attr="bar"></foo></root>'),
-            $this->createDOMDocument('<root><foo attr="bar"/></root>')
-          ),
-          array(
-            $this->createDOMDocument("<root>\n  <child/>\n</root>"),
-            $this->createDOMDocument('<root><child/></root>')
-          ),
-        );
-    }
-
-    public function assertEqualsFailsProvider()
-    {
-        return array(
-          array(
-            $this->createDOMDocument('<root></root>'),
-            $this->createDOMDocument('<bar/>')
-          ),
-          array(
-            $this->createDOMDocument('<foo attr1="bar"/>'),
-            $this->createDOMDocument('<foo attr1="foobar"/>')
-          ),
-          array(
-            $this->createDOMDocument('<foo> bar </foo>'),
-            $this->createDOMDocument('<foo />')
-          ),
-          array(
-            $this->createDOMDocument('<foo xmlns="urn:myns:bar"/>'),
-            $this->createDOMDocument('<foo xmlns="urn:notmyns:bar"/>')
-          ),
-          array(
-            $this->createDOMDocument('<foo> bar </foo>'),
-            $this->createDOMDocument('<foo> bir </foo>')
-          )
-        );
-    }
-
-    private function createDOMDocument($content)
-    {
-        $document = new DOMDocument;
-        $document->preserveWhiteSpace = false;
-        $document->loadXML($content);
-
-        return $document;
-    }
-
-    /**
-     * @covers       ::accepts
-     * @dataProvider acceptsSucceedsProvider
-     */
-    public function testAcceptsSucceeds($expected, $actual)
-    {
-        $this->assertTrue(
-          $this->comparator->accepts($expected, $actual)
-        );
-    }
-
-    /**
-     * @covers       ::accepts
-     * @dataProvider acceptsFailsProvider
-     */
-    public function testAcceptsFails($expected, $actual)
-    {
-        $this->assertFalse(
-          $this->comparator->accepts($expected, $actual)
-        );
-    }
-
-    /**
-     * @covers       ::assertEquals
-     * @dataProvider assertEqualsSucceedsProvider
-     */
-    public function testAssertEqualsSucceeds($expected, $actual)
-    {
-        $exception = null;
-
-        try {
-            $this->comparator->assertEquals($expected, $actual);
-        }
-
-        catch (ComparisonFailure $exception) {
-        }
-
-        $this->assertNull($exception, 'Unexpected ComparisonFailure');
-    }
-
-    /**
-     * @covers       ::assertEquals
-     * @dataProvider assertEqualsFailsProvider
-     */
-    public function testAssertEqualsFails($expected, $actual)
-    {
-        $this->setExpectedException(
-          'SebastianBergmann\\Comparator\\ComparisonFailure',
-          'Failed asserting that two DOM'
-        );
-        $this->comparator->assertEquals($expected, $actual);
-    }
-}
diff --git a/vendor/sebastian/comparator/tests/DateTimeComparatorTest.php b/vendor/sebastian/comparator/tests/DateTimeComparatorTest.php
deleted file mode 100644
index 9abcff7..0000000
--- a/vendor/sebastian/comparator/tests/DateTimeComparatorTest.php
+++ /dev/null
@@ -1,216 +0,0 @@
-<?php
-/*
- * This file is part of the Comparator package.
- *
- * (c) Sebastian Bergmann <sebastian@phpunit.de>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace SebastianBergmann\Comparator;
-
-use DateTime;
-use DateTimeImmutable;
-use DateTimeZone;
-
-/**
- * @coversDefaultClass SebastianBergmann\Comparator\DateTimeComparator
- *
- */
-class DateTimeComparatorTest extends \PHPUnit_Framework_TestCase
-{
-    private $comparator;
-
-    protected function setUp()
-    {
-        $this->comparator = new DateTimeComparator;
-    }
-
-    public function acceptsFailsProvider()
-    {
-        $datetime = new DateTime;
-
-        return array(
-          array($datetime, null),
-          array(null, $datetime),
-          array(null, null)
-        );
-    }
-
-    public function assertEqualsSucceedsProvider()
-    {
-        return array(
-          array(
-            new DateTime('2013-03-29 04:13:35', new DateTimeZone('America/New_York')),
-            new DateTime('2013-03-29 04:13:35', new DateTimeZone('America/New_York'))
-          ),
-          array(
-            new DateTime('2013-03-29 04:13:35', new DateTimeZone('America/New_York')),
-            new DateTime('2013-03-29 04:13:25', new DateTimeZone('America/New_York')),
-            10
-          ),
-          array(
-            new DateTime('2013-03-29 04:13:35', new DateTimeZone('America/New_York')),
-            new DateTime('2013-03-29 04:14:40', new DateTimeZone('America/New_York')),
-            65
-          ),
-          array(
-            new DateTime('2013-03-29', new DateTimeZone('America/New_York')),
-            new DateTime('2013-03-29', new DateTimeZone('America/New_York'))
-          ),
-          array(
-            new DateTime('2013-03-29 04:13:35', new DateTimeZone('America/New_York')),
-            new DateTime('2013-03-29 03:13:35', new DateTimeZone('America/Chicago'))
-          ),
-          array(
-            new DateTime('2013-03-29 04:13:35', new DateTimeZone('America/New_York')),
-            new DateTime('2013-03-29 03:13:49', new DateTimeZone('America/Chicago')),
-            15
-          ),
-          array(
-            new DateTime('2013-03-30', new DateTimeZone('America/New_York')),
-            new DateTime('2013-03-29 23:00:00', new DateTimeZone('America/Chicago'))
-          ),
-          array(
-            new DateTime('2013-03-30', new DateTimeZone('America/New_York')),
-            new DateTime('2013-03-29 23:01:30', new DateTimeZone('America/Chicago')),
-            100
-          ),
-          array(
-            new DateTime('@1364616000'),
-            new DateTime('2013-03-29 23:00:00', new DateTimeZone('America/Chicago'))
-          ),
-          array(
-            new DateTime('2013-03-29T05:13:35-0500'),
-            new DateTime('2013-03-29T04:13:35-0600')
-          )
-        );
-    }
-
-    public function assertEqualsFailsProvider()
-    {
-        return array(
-          array(
-            new DateTime('2013-03-29 04:13:35', new DateTimeZone('America/New_York')),
-            new DateTime('2013-03-29 03:13:35', new DateTimeZone('America/New_York'))
-          ),
-          array(
-            new DateTime('2013-03-29 04:13:35', new DateTimeZone('America/New_York')),
-            new DateTime('2013-03-29 03:13:35', new DateTimeZone('America/New_York')),
-            3500
-          ),
-          array(
-            new DateTime('2013-03-29 04:13:35', new DateTimeZone('America/New_York')),
-            new DateTime('2013-03-29 05:13:35', new DateTimeZone('America/New_York')),
-            3500
-          ),
-          array(
-            new DateTime('2013-03-29', new DateTimeZone('America/New_York')),
-            new DateTime('2013-03-30', new DateTimeZone('America/New_York'))
-          ),
-          array(
-            new DateTime('2013-03-29', new DateTimeZone('America/New_York')),
-            new DateTime('2013-03-30', new DateTimeZone('America/New_York')),
-            43200
-          ),
-          array(
-            new DateTime('2013-03-29 04:13:35', new DateTimeZone('America/New_York')),
-            new DateTime('2013-03-29 04:13:35', new DateTimeZone('America/Chicago')),
-          ),
-          array(
-            new DateTime('2013-03-29 04:13:35', new DateTimeZone('America/New_York')),
-            new DateTime('2013-03-29 04:13:35', new DateTimeZone('America/Chicago')),
-            3500
-          ),
-          array(
-            new DateTime('2013-03-30', new DateTimeZone('America/New_York')),
-            new DateTime('2013-03-30', new DateTimeZone('America/Chicago'))
-          ),
-          array(
-            new DateTime('2013-03-29T05:13:35-0600'),
-            new DateTime('2013-03-29T04:13:35-0600')
-          ),
-          array(
-            new DateTime('2013-03-29T05:13:35-0600'),
-            new DateTime('2013-03-29T05:13:35-0500')
-          ),
-        );
-    }
-
-    /**
-     * @covers  ::accepts
-     */
-    public function testAcceptsSucceeds()
-    {
-        $this->assertTrue(
-          $this->comparator->accepts(
-            new DateTime,
-            new DateTime
-          )
-        );
-    }
-
-    /**
-     * @covers       ::accepts
-     * @dataProvider acceptsFailsProvider
-     */
-    public function testAcceptsFails($expected, $actual)
-    {
-        $this->assertFalse(
-          $this->comparator->accepts($expected, $actual)
-        );
-    }
-
-    /**
-     * @covers       ::assertEquals
-     * @dataProvider assertEqualsSucceedsProvider
-     */
-    public function testAssertEqualsSucceeds($expected, $actual, $delta = 0.0)
-    {
-        $exception = null;
-
-        try {
-            $this->comparator->assertEquals($expected, $actual, $delta);
-        }
-
-        catch (ComparisonFailure $exception) {
-        }
-
-        $this->assertNull($exception, 'Unexpected ComparisonFailure');
-    }
-
-    /**
-     * @covers       ::assertEquals
-     * @dataProvider assertEqualsFailsProvider
-     */
-    public function testAssertEqualsFails($expected, $actual, $delta = 0.0)
-    {
-        $this->setExpectedException(
-          'SebastianBergmann\\Comparator\\ComparisonFailure',
-          'Failed asserting that two DateTime objects are equal.'
-        );
-        $this->comparator->assertEquals($expected, $actual, $delta);
-    }
-
-    /**
-     * @requires PHP 5.5
-     * @covers   ::accepts
-     */
-    public function testAcceptsDateTimeInterface()
-    {
-        $this->assertTrue($this->comparator->accepts(new DateTime, new DateTimeImmutable));
-    }
-
-    /**
-     * @requires PHP 5.5
-     * @covers   ::assertEquals
-     */
-    public function testSupportsDateTimeInterface()
-    {
-        $this->comparator->assertEquals(
-          new DateTime('2013-03-29 04:13:35', new DateTimeZone('America/New_York')),
-          new DateTimeImmutable('2013-03-29 04:13:35', new DateTimeZone('America/New_York'))
-        );
-    }
-}
diff --git a/vendor/sebastian/comparator/tests/DoubleComparatorTest.php b/vendor/sebastian/comparator/tests/DoubleComparatorTest.php
deleted file mode 100644
index 6b898ba..0000000
--- a/vendor/sebastian/comparator/tests/DoubleComparatorTest.php
+++ /dev/null
@@ -1,134 +0,0 @@
-<?php
-/*
- * This file is part of the Comparator package.
- *
- * (c) Sebastian Bergmann <sebastian@phpunit.de>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace SebastianBergmann\Comparator;
-
-/**
- * @coversDefaultClass SebastianBergmann\Comparator\DoubleComparator
- *
- */
-class DoubleComparatorTest extends \PHPUnit_Framework_TestCase
-{
-    private $comparator;
-
-    protected function setUp()
-    {
-        $this->comparator = new DoubleComparator;
-    }
-
-    public function acceptsSucceedsProvider()
-    {
-        return array(
-          array(0, 5.0),
-          array(5.0, 0),
-          array('5', 4.5),
-          array(1.2e3, 7E-10),
-          array(3, acos(8)),
-          array(acos(8), 3),
-          array(acos(8), acos(8))
-        );
-    }
-
-    public function acceptsFailsProvider()
-    {
-        return array(
-          array(5, 5),
-          array('4.5', 5),
-          array(0x539, 02471),
-          array(5.0, false),
-          array(null, 5.0)
-        );
-    }
-
-    public function assertEqualsSucceedsProvider()
-    {
-        return array(
-          array(2.3, 2.3),
-          array('2.3', 2.3),
-          array(5.0, 5),
-          array(5, 5.0),
-          array(5.0, '5'),
-          array(1.2e3, 1200),
-          array(2.3, 2.5, 0.5),
-          array(3, 3.05, 0.05),
-          array(1.2e3, 1201, 1),
-          array((string)(1/3), 1 - 2/3),
-          array(1/3, (string)(1 - 2/3))
-        );
-    }
-
-    public function assertEqualsFailsProvider()
-    {
-        return array(
-          array(2.3, 4.2),
-          array('2.3', 4.2),
-          array(5.0, '4'),
-          array(5.0, 6),
-          array(1.2e3, 1201),
-          array(2.3, 2.5, 0.2),
-          array(3, 3.05, 0.04),
-          array(3, acos(8)),
-          array(acos(8), 3),
-          array(acos(8), acos(8))
-        );
-    }
-
-    /**
-     * @covers       ::accepts
-     * @dataProvider acceptsSucceedsProvider
-     */
-    public function testAcceptsSucceeds($expected, $actual)
-    {
-        $this->assertTrue(
-          $this->comparator->accepts($expected, $actual)
-        );
-    }
-
-    /**
-     * @covers       ::accepts
-     * @dataProvider acceptsFailsProvider
-     */
-    public function testAcceptsFails($expected, $actual)
-    {
-        $this->assertFalse(
-          $this->comparator->accepts($expected, $actual)
-        );
-    }
-
-    /**
-     * @covers       ::assertEquals
-     * @dataProvider assertEqualsSucceedsProvider
-     */
-    public function testAssertEqualsSucceeds($expected, $actual, $delta = 0.0)
-    {
-        $exception = null;
-
-        try {
-            $this->comparator->assertEquals($expected, $actual, $delta);
-        }
-
-        catch (ComparisonFailure $exception) {
-        }
-
-        $this->assertNull($exception, 'Unexpected ComparisonFailure');
-    }
-
-    /**
-     * @covers       ::assertEquals
-     * @dataProvider assertEqualsFailsProvider
-     */
-    public function testAssertEqualsFails($expected, $actual, $delta = 0.0)
-    {
-        $this->setExpectedException(
-          'SebastianBergmann\\Comparator\\ComparisonFailure', 'matches expected'
-        );
-        $this->comparator->assertEquals($expected, $actual, $delta);
-    }
-}
diff --git a/vendor/sebastian/comparator/tests/ExceptionComparatorTest.php b/vendor/sebastian/comparator/tests/ExceptionComparatorTest.php
deleted file mode 100644
index fa8cc0a..0000000
--- a/vendor/sebastian/comparator/tests/ExceptionComparatorTest.php
+++ /dev/null
@@ -1,136 +0,0 @@
-<?php
-/*
- * This file is part of the Comparator package.
- *
- * (c) Sebastian Bergmann <sebastian@phpunit.de>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace SebastianBergmann\Comparator;
-
-use \Exception;
-use \RuntimeException;
-
-/**
- * @coversDefaultClass SebastianBergmann\Comparator\ExceptionComparator
- *
- */
-class ExceptionComparatorTest extends \PHPUnit_Framework_TestCase
-{
-    private $comparator;
-
-    protected function setUp()
-    {
-        $this->comparator = new ExceptionComparator;
-        $this->comparator->setFactory(new Factory);
-    }
-
-    public function acceptsSucceedsProvider()
-    {
-        return array(
-          array(new Exception, new Exception),
-          array(new RuntimeException, new RuntimeException),
-          array(new Exception, new RuntimeException)
-        );
-    }
-
-    public function acceptsFailsProvider()
-    {
-        return array(
-          array(new Exception, null),
-          array(null, new Exception),
-          array(null, null)
-        );
-    }
-
-    public function assertEqualsSucceedsProvider()
-    {
-        $exception1 = new Exception;
-        $exception2 = new Exception;
-
-        $exception3 = new RunTimeException('Error', 100);
-        $exception4 = new RunTimeException('Error', 100);
-
-        return array(
-          array($exception1, $exception1),
-          array($exception1, $exception2),
-          array($exception3, $exception3),
-          array($exception3, $exception4)
-        );
-    }
-
-    public function assertEqualsFailsProvider()
-    {
-        $typeMessage = 'not instance of expected class';
-        $equalMessage = 'Failed asserting that two objects are equal.';
-
-        $exception1 = new Exception('Error', 100);
-        $exception2 = new Exception('Error', 101);
-        $exception3 = new Exception('Errors', 101);
-
-        $exception4 = new RunTimeException('Error', 100);
-        $exception5 = new RunTimeException('Error', 101);
-
-        return array(
-          array($exception1, $exception2, $equalMessage),
-          array($exception1, $exception3, $equalMessage),
-          array($exception1, $exception4, $typeMessage),
-          array($exception2, $exception3, $equalMessage),
-          array($exception4, $exception5, $equalMessage)
-        );
-    }
-
-    /**
-     * @covers       ::accepts
-     * @dataProvider acceptsSucceedsProvider
-     */
-    public function testAcceptsSucceeds($expected, $actual)
-    {
-        $this->assertTrue(
-          $this->comparator->accepts($expected, $actual)
-        );
-    }
-
-    /**
-     * @covers       ::accepts
-     * @dataProvider acceptsFailsProvider
-     */
-    public function testAcceptsFails($expected, $actual)
-    {
-        $this->assertFalse(
-          $this->comparator->accepts($expected, $actual)
-        );
-    }
-
-    /**
-     * @covers       ::assertEquals
-     * @dataProvider assertEqualsSucceedsProvider
-     */
-    public function testAssertEqualsSucceeds($expected, $actual)
-    {
-        $exception = null;
-
-        try {
-            $this->comparator->assertEquals($expected, $actual);
-        }
-
-        catch (ComparisonFailure $exception) {
-        }
-
-        $this->assertNull($exception, 'Unexpected ComparisonFailure');
-    }
-
-    /**
-     * @covers       ::assertEquals
-     * @dataProvider assertEqualsFailsProvider
-     */
-    public function testAssertEqualsFails($expected, $actual, $message)
-    {
-        $this->setExpectedException(
-          'SebastianBergmann\\Comparator\\ComparisonFailure', $message
-        );
-        $this->comparator->assertEquals($expected, $actual);
-    }
-}
diff --git a/vendor/sebastian/comparator/tests/FactoryTest.php b/vendor/sebastian/comparator/tests/FactoryTest.php
deleted file mode 100644
index cb58c20..0000000
--- a/vendor/sebastian/comparator/tests/FactoryTest.php
+++ /dev/null
@@ -1,115 +0,0 @@
-<?php
-/*
- * This file is part of the Comparator package.
- *
- * (c) Sebastian Bergmann <sebastian@phpunit.de>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace SebastianBergmann\Comparator;
-
-/**
- * @coversDefaultClass SebastianBergmann\Comparator\Factory
- *
- */
-class FactoryTest extends \PHPUnit_Framework_TestCase
-{
-    public function instanceProvider()
-    {
-        $tmpfile = tmpfile();
-
-        return array(
-            array(NULL, NULL, 'SebastianBergmann\\Comparator\\ScalarComparator'),
-            array(NULL, TRUE, 'SebastianBergmann\\Comparator\\ScalarComparator'),
-            array(TRUE, NULL, 'SebastianBergmann\\Comparator\\ScalarComparator'),
-            array(TRUE, TRUE, 'SebastianBergmann\\Comparator\\ScalarComparator'),
-            array(FALSE, FALSE, 'SebastianBergmann\\Comparator\\ScalarComparator'),
-            array(TRUE, FALSE, 'SebastianBergmann\\Comparator\\ScalarComparator'),
-            array(FALSE, TRUE, 'SebastianBergmann\\Comparator\\ScalarComparator'),
-            array('', '', 'SebastianBergmann\\Comparator\\ScalarComparator'),
-            array('0', '0', 'SebastianBergmann\\Comparator\\ScalarComparator'),
-            array('0', 0, 'SebastianBergmann\\Comparator\\NumericComparator'),
-            array(0, '0', 'SebastianBergmann\\Comparator\\NumericComparator'),
-            array(0, 0, 'SebastianBergmann\\Comparator\\NumericComparator'),
-            array(1.0, 0, 'SebastianBergmann\\Comparator\\DoubleComparator'),
-            array(0, 1.0, 'SebastianBergmann\\Comparator\\DoubleComparator'),
-            array(1.0, 1.0, 'SebastianBergmann\\Comparator\\DoubleComparator'),
-            array(array(1), array(1), 'SebastianBergmann\\Comparator\\ArrayComparator'),
-            array($tmpfile, $tmpfile, 'SebastianBergmann\\Comparator\\ResourceComparator'),
-            array(new \stdClass, new \stdClass, 'SebastianBergmann\\Comparator\\ObjectComparator'),
-            array(new \DateTime, new \DateTime, 'SebastianBergmann\\Comparator\\DateTimeComparator'),
-            array(new \SplObjectStorage, new \SplObjectStorage, 'SebastianBergmann\\Comparator\\SplObjectStorageComparator'),
-            array(new \Exception, new \Exception, 'SebastianBergmann\\Comparator\\ExceptionComparator'),
-            array(new \DOMDocument, new \DOMDocument, 'SebastianBergmann\\Comparator\\DOMNodeComparator'),
-            // mixed types
-            array($tmpfile, array(1), 'SebastianBergmann\\Comparator\\TypeComparator'),
-            array(array(1), $tmpfile, 'SebastianBergmann\\Comparator\\TypeComparator'),
-            array($tmpfile, '1', 'SebastianBergmann\\Comparator\\TypeComparator'),
-            array('1', $tmpfile, 'SebastianBergmann\\Comparator\\TypeComparator'),
-            array($tmpfile, new \stdClass, 'SebastianBergmann\\Comparator\\TypeComparator'),
-            array(new \stdClass, $tmpfile, 'SebastianBergmann\\Comparator\\TypeComparator'),
-            array(new \stdClass, array(1), 'SebastianBergmann\\Comparator\\TypeComparator'),
-            array(array(1), new \stdClass, 'SebastianBergmann\\Comparator\\TypeComparator'),
-            array(new \stdClass, '1', 'SebastianBergmann\\Comparator\\TypeComparator'),
-            array('1', new \stdClass, 'SebastianBergmann\\Comparator\\TypeComparator'),
-            array(new ClassWithToString, '1', 'SebastianBergmann\\Comparator\\ScalarComparator'),
-            array('1', new ClassWithToString, 'SebastianBergmann\\Comparator\\ScalarComparator'),
-            array(1.0, new \stdClass, 'SebastianBergmann\\Comparator\\TypeComparator'),
-            array(new \stdClass, 1.0, 'SebastianBergmann\\Comparator\\TypeComparator'),
-            array(1.0, array(1), 'SebastianBergmann\\Comparator\\TypeComparator'),
-            array(array(1), 1.0, 'SebastianBergmann\\Comparator\\TypeComparator'),
-        );
-    }
-
-    /**
-     * @dataProvider instanceProvider
-     * @covers       ::getComparatorFor
-     * @covers       ::__construct
-     */
-    public function testGetComparatorFor($a, $b, $expected)
-    {
-        $factory = new Factory;
-        $actual = $factory->getComparatorFor($a, $b);
-        $this->assertInstanceOf($expected, $actual);
-    }
-
-    /**
-     * @covers ::register
-     */
-    public function testRegister()
-    {
-        $comparator = new TestClassComparator;
-
-        $factory = new Factory;
-        $factory->register($comparator);
-
-        $a = new TestClass;
-        $b = new TestClass;
-        $expected = 'SebastianBergmann\\Comparator\\TestClassComparator';
-        $actual = $factory->getComparatorFor($a, $b);
-
-        $factory->unregister($comparator);
-        $this->assertInstanceOf($expected, $actual);
-    }
-
-    /**
-     * @covers ::unregister
-     */
-    public function testUnregister()
-    {
-        $comparator = new TestClassComparator;
-
-        $factory = new Factory;
-        $factory->register($comparator);
-        $factory->unregister($comparator);
-
-        $a = new TestClass;
-        $b = new TestClass;
-        $expected = 'SebastianBergmann\\Comparator\\ObjectComparator';
-        $actual = $factory->getComparatorFor($a, $b);
-
-        $this->assertInstanceOf($expected, $actual);
-    }
-}
diff --git a/vendor/sebastian/comparator/tests/MockObjectComparatorTest.php b/vendor/sebastian/comparator/tests/MockObjectComparatorTest.php
deleted file mode 100644
index 7910ad7..0000000
--- a/vendor/sebastian/comparator/tests/MockObjectComparatorTest.php
+++ /dev/null
@@ -1,166 +0,0 @@
-<?php
-/*
- * This file is part of the Comparator package.
- *
- * (c) Sebastian Bergmann <sebastian@phpunit.de>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace SebastianBergmann\Comparator;
-
-/**
- * @coversDefaultClass SebastianBergmann\Comparator\MockObjectComparator
- *
- */
-class MockObjectComparatorTest extends \PHPUnit_Framework_TestCase
-{
-    private $comparator;
-
-    protected function setUp()
-    {
-        $this->comparator = new MockObjectComparator;
-        $this->comparator->setFactory(new Factory);
-    }
-
-    public function acceptsSucceedsProvider()
-    {
-        $testmock = $this->getMock('SebastianBergmann\\Comparator\\TestClass');
-        $stdmock = $this->getMock('stdClass');
-
-        return array(
-          array($testmock, $testmock),
-          array($stdmock, $stdmock),
-          array($stdmock, $testmock)
-        );
-    }
-
-    public function acceptsFailsProvider()
-    {
-        $stdmock = $this->getMock('stdClass');
-
-        return array(
-          array($stdmock, null),
-          array(null, $stdmock),
-          array(null, null)
-        );
-    }
-
-    public function assertEqualsSucceedsProvider()
-    {
-        // cyclic dependencies
-        $book1 = $this->getMock('SebastianBergmann\\Comparator\\Book', null);
-        $book1->author = $this->getMock('SebastianBergmann\\Comparator\\Author', null, array('Terry Pratchett'));
-        $book1->author->books[] = $book1;
-        $book2 = $this->getMock('SebastianBergmann\\Comparator\\Book', null);
-        $book2->author = $this->getMock('SebastianBergmann\\Comparator\\Author', null, array('Terry Pratchett'));
-        $book2->author->books[] = $book2;
-
-        $object1 = $this->getMock('SebastianBergmann\\Comparator\\SampleClass', null, array(4, 8, 15));
-        $object2 = $this->getMock('SebastianBergmann\\Comparator\\SampleClass', null, array(4, 8, 15));
-
-        return array(
-          array($object1, $object1),
-          array($object1, $object2),
-          array($book1, $book1),
-          array($book1, $book2),
-          array(
-            $this->getMock('SebastianBergmann\\Comparator\\Struct', null, array(2.3)),
-            $this->getMock('SebastianBergmann\\Comparator\\Struct', null, array(2.5)),
-            0.5
-          )
-        );
-    }
-
-    public function assertEqualsFailsProvider()
-    {
-        $typeMessage = 'is not instance of expected class';
-        $equalMessage = 'Failed asserting that two objects are equal.';
-
-        // cyclic dependencies
-        $book1 = $this->getMock('SebastianBergmann\\Comparator\\Book', null);
-        $book1->author = $this->getMock('SebastianBergmann\\Comparator\\Author', null, array('Terry Pratchett'));
-        $book1->author->books[] = $book1;
-        $book2 = $this->getMock('SebastianBergmann\\Comparator\\Book', null);
-        $book2->author = $this->getMock('SebastianBergmann\\Comparator\\Author', null, array('Terry Pratch'));
-        $book2->author->books[] = $book2;
-
-        $book3 = $this->getMock('SebastianBergmann\\Comparator\\Book', null);
-        $book3->author = 'Terry Pratchett';
-        $book4 = $this->getMock('stdClass');
-        $book4->author = 'Terry Pratchett';
-
-        $object1 = $this->getMock('SebastianBergmann\\Comparator\\SampleClass', null, array(4, 8, 15));
-        $object2 = $this->getMock('SebastianBergmann\\Comparator\\SampleClass', null, array(16, 23, 42));
-
-        return array(
-          array(
-            $this->getMock('SebastianBergmann\\Comparator\\SampleClass', null, array(4, 8, 15)),
-            $this->getMock('SebastianBergmann\\Comparator\\SampleClass', null, array(16, 23, 42)),
-            $equalMessage
-          ),
-          array($object1, $object2, $equalMessage),
-          array($book1, $book2, $equalMessage),
-          array($book3, $book4, $typeMessage),
-          array(
-            $this->getMock('SebastianBergmann\\Comparator\\Struct', null, array(2.3)),
-            $this->getMock('SebastianBergmann\\Comparator\\Struct', null, array(4.2)),
-            $equalMessage,
-            0.5
-          )
-        );
-    }
-
-    /**
-     * @covers       ::accepts
-     * @dataProvider acceptsSucceedsProvider
-     */
-    public function testAcceptsSucceeds($expected, $actual)
-    {
-        $this->assertTrue(
-          $this->comparator->accepts($expected, $actual)
-        );
-    }
-
-    /**
-     * @covers       ::accepts
-     * @dataProvider acceptsFailsProvider
-     */
-    public function testAcceptsFails($expected, $actual)
-    {
-        $this->assertFalse(
-          $this->comparator->accepts($expected, $actual)
-        );
-    }
-
-    /**
-     * @covers       ::assertEquals
-     * @dataProvider assertEqualsSucceedsProvider
-     */
-    public function testAssertEqualsSucceeds($expected, $actual, $delta = 0.0)
-    {
-        $exception = null;
-
-        try {
-            $this->comparator->assertEquals($expected, $actual, $delta);
-        }
-
-        catch (ComparisonFailure $exception) {
-        }
-
-        $this->assertNull($exception, 'Unexpected ComparisonFailure');
-    }
-
-    /**
-     * @covers       ::assertEquals
-     * @dataProvider assertEqualsFailsProvider
-     */
-    public function testAssertEqualsFails($expected, $actual, $message, $delta = 0.0)
-    {
-        $this->setExpectedException(
-          'SebastianBergmann\\Comparator\\ComparisonFailure', $message
-        );
-        $this->comparator->assertEquals($expected, $actual, $delta);
-    }
-}
diff --git a/vendor/sebastian/comparator/tests/NumericComparatorTest.php b/vendor/sebastian/comparator/tests/NumericComparatorTest.php
deleted file mode 100644
index fec7d00..0000000
--- a/vendor/sebastian/comparator/tests/NumericComparatorTest.php
+++ /dev/null
@@ -1,122 +0,0 @@
-<?php
-/*
- * This file is part of the Comparator package.
- *
- * (c) Sebastian Bergmann <sebastian@phpunit.de>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace SebastianBergmann\Comparator;
-
-/**
- * @coversDefaultClass SebastianBergmann\Comparator\NumericComparator
- *
- */
-class NumericComparatorTest extends \PHPUnit_Framework_TestCase
-{
-    private $comparator;
-
-    protected function setUp()
-    {
-        $this->comparator = new NumericComparator;
-    }
-
-    public function acceptsSucceedsProvider()
-    {
-        return array(
-          array(5, 10),
-          array(8, '0'),
-          array('10', 0),
-          array(0x74c3b00c, 42),
-          array(0755, 0777)
-        );
-    }
-
-    public function acceptsFailsProvider()
-    {
-        return array(
-          array('5', '10'),
-          array(8, 5.0),
-          array(5.0, 8),
-          array(10, null),
-          array(false, 12)
-        );
-    }
-
-    public function assertEqualsSucceedsProvider()
-    {
-        return array(
-          array(1337, 1337),
-          array('1337', 1337),
-          array(0x539, 1337),
-          array(02471, 1337),
-          array(1337, 1338, 1),
-          array('1337', 1340, 5),
-        );
-    }
-
-    public function assertEqualsFailsProvider()
-    {
-        return array(
-          array(1337, 1338),
-          array('1338', 1337),
-          array(0x539, 1338),
-          array(1337, 1339, 1),
-          array('1337', 1340, 2),
-        );
-    }
-
-    /**
-     * @covers       ::accepts
-     * @dataProvider acceptsSucceedsProvider
-     */
-    public function testAcceptsSucceeds($expected, $actual)
-    {
-        $this->assertTrue(
-          $this->comparator->accepts($expected, $actual)
-        );
-    }
-
-    /**
-     * @covers       ::accepts
-     * @dataProvider acceptsFailsProvider
-     */
-    public function testAcceptsFails($expected, $actual)
-    {
-        $this->assertFalse(
-          $this->comparator->accepts($expected, $actual)
-        );
-    }
-
-    /**
-     * @covers       ::assertEquals
-     * @dataProvider assertEqualsSucceedsProvider
-     */
-    public function testAssertEqualsSucceeds($expected, $actual, $delta = 0.0)
-    {
-        $exception = null;
-
-        try {
-            $this->comparator->assertEquals($expected, $actual, $delta);
-        }
-
-        catch (ComparisonFailure $exception) {
-        }
-
-        $this->assertNull($exception, 'Unexpected ComparisonFailure');
-    }
-
-    /**
-     * @covers       ::assertEquals
-     * @dataProvider assertEqualsFailsProvider
-     */
-    public function testAssertEqualsFails($expected, $actual, $delta = 0.0)
-    {
-        $this->setExpectedException(
-          'SebastianBergmann\\Comparator\\ComparisonFailure', 'matches expected'
-        );
-        $this->comparator->assertEquals($expected, $actual, $delta);
-    }
-}
diff --git a/vendor/sebastian/comparator/tests/ObjectComparatorTest.php b/vendor/sebastian/comparator/tests/ObjectComparatorTest.php
deleted file mode 100644
index a958232..0000000
--- a/vendor/sebastian/comparator/tests/ObjectComparatorTest.php
+++ /dev/null
@@ -1,150 +0,0 @@
-<?php
-/*
- * This file is part of the Comparator package.
- *
- * (c) Sebastian Bergmann <sebastian@phpunit.de>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace SebastianBergmann\Comparator;
-
-use stdClass;
-
-/**
- * @coversDefaultClass SebastianBergmann\Comparator\ObjectComparator
- *
- */
-class ObjectComparatorTest extends \PHPUnit_Framework_TestCase
-{
-    private $comparator;
-
-    protected function setUp()
-    {
-        $this->comparator = new ObjectComparator;
-        $this->comparator->setFactory(new Factory);
-    }
-
-    public function acceptsSucceedsProvider()
-    {
-        return array(
-          array(new TestClass, new TestClass),
-          array(new stdClass, new stdClass),
-          array(new stdClass, new TestClass)
-        );
-    }
-
-    public function acceptsFailsProvider()
-    {
-        return array(
-          array(new stdClass, null),
-          array(null, new stdClass),
-          array(null, null)
-        );
-    }
-
-    public function assertEqualsSucceedsProvider()
-    {
-        // cyclic dependencies
-        $book1 = new Book;
-        $book1->author = new Author('Terry Pratchett');
-        $book1->author->books[] = $book1;
-        $book2 = new Book;
-        $book2->author = new Author('Terry Pratchett');
-        $book2->author->books[] = $book2;
-
-        $object1 = new SampleClass(4, 8, 15);
-        $object2 = new SampleClass(4, 8, 15);
-
-        return array(
-          array($object1, $object1),
-          array($object1, $object2),
-          array($book1, $book1),
-          array($book1, $book2),
-          array(new Struct(2.3), new Struct(2.5), 0.5)
-        );
-    }
-
-    public function assertEqualsFailsProvider()
-    {
-        $typeMessage = 'is not instance of expected class';
-        $equalMessage = 'Failed asserting that two objects are equal.';
-
-        // cyclic dependencies
-        $book1 = new Book;
-        $book1->author = new Author('Terry Pratchett');
-        $book1->author->books[] = $book1;
-        $book2 = new Book;
-        $book2->author = new Author('Terry Pratch');
-        $book2->author->books[] = $book2;
-
-        $book3 = new Book;
-        $book3->author = 'Terry Pratchett';
-        $book4 = new stdClass;
-        $book4->author = 'Terry Pratchett';
-
-        $object1 = new SampleClass( 4,  8, 15);
-        $object2 = new SampleClass(16, 23, 42);
-
-        return array(
-          array(new SampleClass(4, 8, 15), new SampleClass(16, 23, 42), $equalMessage),
-          array($object1, $object2, $equalMessage),
-          array($book1, $book2, $equalMessage),
-          array($book3, $book4, $typeMessage),
-          array(new Struct(2.3), new Struct(4.2), $equalMessage, 0.5)
-        );
-    }
-
-    /**
-     * @covers       ::accepts
-     * @dataProvider acceptsSucceedsProvider
-     */
-    public function testAcceptsSucceeds($expected, $actual)
-    {
-        $this->assertTrue(
-          $this->comparator->accepts($expected, $actual)
-        );
-    }
-
-    /**
-     * @covers       ::accepts
-     * @dataProvider acceptsFailsProvider
-     */
-    public function testAcceptsFails($expected, $actual)
-    {
-        $this->assertFalse(
-          $this->comparator->accepts($expected, $actual)
-        );
-    }
-
-    /**
-     * @covers       ::assertEquals
-     * @dataProvider assertEqualsSucceedsProvider
-     */
-    public function testAssertEqualsSucceeds($expected, $actual, $delta = 0.0)
-    {
-        $exception = null;
-
-        try {
-            $this->comparator->assertEquals($expected, $actual, $delta);
-        }
-
-        catch (ComparisonFailure $exception) {
-        }
-
-        $this->assertNull($exception, 'Unexpected ComparisonFailure');
-    }
-
-    /**
-     * @covers       ::assertEquals
-     * @dataProvider assertEqualsFailsProvider
-     */
-    public function testAssertEqualsFails($expected, $actual, $message, $delta = 0.0)
-    {
-        $this->setExpectedException(
-          'SebastianBergmann\\Comparator\\ComparisonFailure', $message
-        );
-        $this->comparator->assertEquals($expected, $actual, $delta);
-    }
-}
diff --git a/vendor/sebastian/comparator/tests/ResourceComparatorTest.php b/vendor/sebastian/comparator/tests/ResourceComparatorTest.php
deleted file mode 100644
index a9e9e95..0000000
--- a/vendor/sebastian/comparator/tests/ResourceComparatorTest.php
+++ /dev/null
@@ -1,120 +0,0 @@
-<?php
-/*
- * This file is part of the Comparator package.
- *
- * (c) Sebastian Bergmann <sebastian@phpunit.de>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace SebastianBergmann\Comparator;
-
-/**
- * @coversDefaultClass SebastianBergmann\Comparator\ResourceComparator
- *
- */
-class ResourceComparatorTest extends \PHPUnit_Framework_TestCase
-{
-    private $comparator;
-
-    protected function setUp()
-    {
-        $this->comparator = new ResourceComparator;
-    }
-
-    public function acceptsSucceedsProvider()
-    {
-        $tmpfile1 = tmpfile();
-        $tmpfile2 = tmpfile();
-
-        return array(
-          array($tmpfile1, $tmpfile1),
-          array($tmpfile2, $tmpfile2),
-          array($tmpfile1, $tmpfile2)
-        );
-    }
-
-    public function acceptsFailsProvider()
-    {
-        $tmpfile1 = tmpfile();
-
-        return array(
-          array($tmpfile1, null),
-          array(null, $tmpfile1),
-          array(null, null)
-        );
-    }
-
-    public function assertEqualsSucceedsProvider()
-    {
-        $tmpfile1 = tmpfile();
-        $tmpfile2 = tmpfile();
-
-        return array(
-          array($tmpfile1, $tmpfile1),
-          array($tmpfile2, $tmpfile2)
-        );
-    }
-
-    public function assertEqualsFailsProvider()
-    {
-        $tmpfile1 = tmpfile();
-        $tmpfile2 = tmpfile();
-
-        return array(
-          array($tmpfile1, $tmpfile2),
-          array($tmpfile2, $tmpfile1)
-        );
-    }
-
-    /**
-     * @covers       ::accepts
-     * @dataProvider acceptsSucceedsProvider
-     */
-    public function testAcceptsSucceeds($expected, $actual)
-    {
-        $this->assertTrue(
-          $this->comparator->accepts($expected, $actual)
-        );
-    }
-
-    /**
-     * @covers       ::accepts
-     * @dataProvider acceptsFailsProvider
-     */
-    public function testAcceptsFails($expected, $actual)
-    {
-        $this->assertFalse(
-          $this->comparator->accepts($expected, $actual)
-        );
-    }
-
-    /**
-     * @covers       ::assertEquals
-     * @dataProvider assertEqualsSucceedsProvider
-     */
-    public function testAssertEqualsSucceeds($expected, $actual)
-    {
-        $exception = null;
-
-        try {
-            $this->comparator->assertEquals($expected, $actual);
-        }
-
-        catch (ComparisonFailure $exception) {
-        }
-
-        $this->assertNull($exception, 'Unexpected ComparisonFailure');
-    }
-
-    /**
-     * @covers       ::assertEquals
-     * @dataProvider assertEqualsFailsProvider
-     */
-    public function testAssertEqualsFails($expected, $actual)
-    {
-        $this->setExpectedException('SebastianBergmann\\Comparator\\ComparisonFailure');
-        $this->comparator->assertEquals($expected, $actual);
-    }
-}
diff --git a/vendor/sebastian/comparator/tests/ScalarComparatorTest.php b/vendor/sebastian/comparator/tests/ScalarComparatorTest.php
deleted file mode 100644
index e5156aa..0000000
--- a/vendor/sebastian/comparator/tests/ScalarComparatorTest.php
+++ /dev/null
@@ -1,158 +0,0 @@
-<?php
-/*
- * This file is part of the Comparator package.
- *
- * (c) Sebastian Bergmann <sebastian@phpunit.de>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace SebastianBergmann\Comparator;
-
-/**
- * @coversDefaultClass SebastianBergmann\Comparator\ScalarComparator
- *
- */
-class ScalarComparatorTest extends \PHPUnit_Framework_TestCase
-{
-    private $comparator;
-
-    protected function setUp()
-    {
-        $this->comparator = new ScalarComparator;
-    }
-
-    public function acceptsSucceedsProvider()
-    {
-        return array(
-          array("string", "string"),
-          array(new ClassWithToString, "string"),
-          array("string", new ClassWithToString),
-          array("string", null),
-          array(false, "string"),
-          array(false, true),
-          array(null, false),
-          array(null, null),
-          array("10", 10),
-          array("", false),
-          array("1", true),
-          array(1, true),
-          array(0, false),
-          array(0.1, "0.1")
-        );
-    }
-
-    public function acceptsFailsProvider()
-    {
-        return array(
-          array(array(), array()),
-          array("string", array()),
-          array(new ClassWithToString, new ClassWithToString),
-          array(false, new ClassWithToString),
-          array(tmpfile(), tmpfile())
-        );
-    }
-
-    public function assertEqualsSucceedsProvider()
-    {
-        return array(
-          array("string", "string"),
-          array(new ClassWithToString, new ClassWithToString),
-          array("string representation", new ClassWithToString),
-          array(new ClassWithToString, "string representation"),
-          array("string", "STRING", true),
-          array("STRING", "string", true),
-          array("String Representation", new ClassWithToString, true),
-          array(new ClassWithToString, "String Representation", true),
-          array("10", 10),
-          array("", false),
-          array("1", true),
-          array(1, true),
-          array(0, false),
-          array(0.1, "0.1"),
-          array(false, null),
-          array(false, false),
-          array(true, true),
-          array(null, null)
-        );
-    }
-
-    public function assertEqualsFailsProvider()
-    {
-        $stringException = 'Failed asserting that two strings are equal.';
-        $otherException = 'matches expected';
-
-        return array(
-          array("string", "other string", $stringException),
-          array("string", "STRING", $stringException),
-          array("STRING", "string", $stringException),
-          array("string", "other string", $stringException),
-          // https://github.com/sebastianbergmann/phpunit/issues/1023
-          array('9E6666666','9E7777777', $stringException),
-          array(new ClassWithToString, "does not match", $otherException),
-          array("does not match", new ClassWithToString, $otherException),
-          array(0, 'Foobar', $otherException),
-          array('Foobar', 0, $otherException),
-          array("10", 25, $otherException),
-          array("1", false, $otherException),
-          array("", true, $otherException),
-          array(false, true, $otherException),
-          array(true, false, $otherException),
-          array(null, true, $otherException),
-          array(0, true, $otherException)
-        );
-    }
-
-    /**
-     * @covers       ::accepts
-     * @dataProvider acceptsSucceedsProvider
-     */
-    public function testAcceptsSucceeds($expected, $actual)
-    {
-        $this->assertTrue(
-          $this->comparator->accepts($expected, $actual)
-        );
-    }
-
-    /**
-     * @covers       ::accepts
-     * @dataProvider acceptsFailsProvider
-     */
-    public function testAcceptsFails($expected, $actual)
-    {
-        $this->assertFalse(
-          $this->comparator->accepts($expected, $actual)
-        );
-    }
-
-    /**
-     * @covers       ::assertEquals
-     * @dataProvider assertEqualsSucceedsProvider
-     */
-    public function testAssertEqualsSucceeds($expected, $actual, $ignoreCase = false)
-    {
-        $exception = null;
-
-        try {
-            $this->comparator->assertEquals($expected, $actual, 0.0, false, $ignoreCase);
-        }
-
-        catch (ComparisonFailure $exception) {
-        }
-
-        $this->assertNull($exception, 'Unexpected ComparisonFailure');
-    }
-
-    /**
-     * @covers       ::assertEquals
-     * @dataProvider assertEqualsFailsProvider
-     */
-    public function testAssertEqualsFails($expected, $actual, $message)
-    {
-        $this->setExpectedException(
-          'SebastianBergmann\\Comparator\\ComparisonFailure', $message
-        );
-        $this->comparator->assertEquals($expected, $actual);
-    }
-}
diff --git a/vendor/sebastian/comparator/tests/SplObjectStorageComparatorTest.php b/vendor/sebastian/comparator/tests/SplObjectStorageComparatorTest.php
deleted file mode 100644
index 766dd2d..0000000
--- a/vendor/sebastian/comparator/tests/SplObjectStorageComparatorTest.php
+++ /dev/null
@@ -1,137 +0,0 @@
-<?php
-/*
- * This file is part of the Comparator package.
- *
- * (c) Sebastian Bergmann <sebastian@phpunit.de>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace SebastianBergmann\Comparator;
-
-use SplObjectStorage;
-use stdClass;
-
-/**
- * @coversDefaultClass SebastianBergmann\Comparator\SplObjectStorageComparator
- *
- */
-class SplObjectStorageComparatorTest extends \PHPUnit_Framework_TestCase
-{
-    private $comparator;
-
-    protected function setUp()
-    {
-        $this->comparator = new SplObjectStorageComparator;
-    }
-
-    public function acceptsFailsProvider()
-    {
-        return array(
-          array(new SplObjectStorage, new stdClass),
-          array(new stdClass, new SplObjectStorage),
-          array(new stdClass, new stdClass)
-        );
-    }
-
-    public function assertEqualsSucceedsProvider()
-    {
-        $object1 = new stdClass();
-        $object2 = new stdClass();
-
-        $storage1 = new SplObjectStorage();
-        $storage2 = new SplObjectStorage();
-
-        $storage3 = new SplObjectStorage();
-        $storage3->attach($object1);
-        $storage3->attach($object2);
-
-        $storage4 = new SplObjectStorage();
-        $storage4->attach($object2);
-        $storage4->attach($object1);
-
-        return array(
-          array($storage1, $storage1),
-          array($storage1, $storage2),
-          array($storage3, $storage3),
-          array($storage3, $storage4)
-        );
-    }
-
-    public function assertEqualsFailsProvider()
-    {
-        $object1 = new stdClass;
-        $object2 = new stdClass;
-
-        $storage1 = new SplObjectStorage;
-
-        $storage2 = new SplObjectStorage;
-        $storage2->attach($object1);
-
-        $storage3 = new SplObjectStorage;
-        $storage3->attach($object2);
-        $storage3->attach($object1);
-
-        return array(
-          array($storage1, $storage2),
-          array($storage1, $storage3),
-          array($storage2, $storage3),
-        );
-    }
-
-    /**
-     * @covers  ::accepts
-     */
-    public function testAcceptsSucceeds()
-    {
-        $this->assertTrue(
-          $this->comparator->accepts(
-            new SplObjectStorage,
-            new SplObjectStorage
-          )
-        );
-    }
-
-    /**
-     * @covers       ::accepts
-     * @dataProvider acceptsFailsProvider
-     */
-    public function testAcceptsFails($expected, $actual)
-    {
-        $this->assertFalse(
-          $this->comparator->accepts($expected, $actual)
-        );
-    }
-
-    /**
-     * @covers       ::assertEquals
-     * @dataProvider assertEqualsSucceedsProvider
-     */
-    public function testAssertEqualsSucceeds($expected, $actual)
-    {
-        $exception = null;
-
-        try {
-            $this->comparator->assertEquals($expected, $actual);
-        }
-
-        catch (ComparisonFailure $exception) {
-        }
-
-        $this->assertNull($exception, 'Unexpected ComparisonFailure');
-    }
-
-    /**
-     * @covers       ::assertEquals
-     * @dataProvider assertEqualsFailsProvider
-     */
-    public function testAssertEqualsFails($expected, $actual)
-    {
-        $this->setExpectedException(
-          'SebastianBergmann\\Comparator\\ComparisonFailure',
-          'Failed asserting that two objects are equal.'
-        );
-        $this->comparator->assertEquals($expected, $actual);
-    }
-}
diff --git a/vendor/sebastian/comparator/tests/TypeComparatorTest.php b/vendor/sebastian/comparator/tests/TypeComparatorTest.php
deleted file mode 100644
index bb51f8a..0000000
--- a/vendor/sebastian/comparator/tests/TypeComparatorTest.php
+++ /dev/null
@@ -1,104 +0,0 @@
-<?php
-/*
- * This file is part of the Comparator package.
- *
- * (c) Sebastian Bergmann <sebastian@phpunit.de>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace SebastianBergmann\Comparator;
-
-use stdClass;
-
-/**
- * @coversDefaultClass SebastianBergmann\Comparator\TypeComparator
- *
- */
-class TypeComparatorTest extends \PHPUnit_Framework_TestCase
-{
-    private $comparator;
-
-    protected function setUp()
-    {
-        $this->comparator = new TypeComparator;
-    }
-
-    public function acceptsSucceedsProvider()
-    {
-        return array(
-          array(true, 1),
-          array(false, array(1)),
-          array(null, new stdClass),
-          array(1.0, 5),
-          array("", "")
-        );
-    }
-
-    public function assertEqualsSucceedsProvider()
-    {
-        return array(
-          array(true, true),
-          array(true, false),
-          array(false, false),
-          array(null, null),
-          array(new stdClass, new stdClass),
-          array(0, 0),
-          array(1.0, 2.0),
-          array("hello", "world"),
-          array("", ""),
-          array(array(), array(1,2,3))
-        );
-    }
-
-    public function assertEqualsFailsProvider()
-    {
-        return array(
-          array(true, null),
-          array(null, false),
-          array(1.0, 0),
-          array(new stdClass, array()),
-          array("1", 1)
-        );
-    }
-
-    /**
-     * @covers       ::accepts
-     * @dataProvider acceptsSucceedsProvider
-     */
-    public function testAcceptsSucceeds($expected, $actual)
-    {
-        $this->assertTrue(
-          $this->comparator->accepts($expected, $actual)
-        );
-    }
-
-    /**
-     * @covers       ::assertEquals
-     * @dataProvider assertEqualsSucceedsProvider
-     */
-    public function testAssertEqualsSucceeds($expected, $actual)
-    {
-        $exception = null;
-
-        try {
-            $this->comparator->assertEquals($expected, $actual);
-        }
-
-        catch (ComparisonFailure $exception) {
-        }
-
-        $this->assertNull($exception, 'Unexpected ComparisonFailure');
-    }
-
-    /**
-     * @covers       ::assertEquals
-     * @dataProvider assertEqualsFailsProvider
-     */
-    public function testAssertEqualsFails($expected, $actual)
-    {
-        $this->setExpectedException('SebastianBergmann\\Comparator\\ComparisonFailure', 'does not match expected type');
-        $this->comparator->assertEquals($expected, $actual);
-    }
-}
diff --git a/vendor/sebastian/comparator/tests/_files/Author.php b/vendor/sebastian/comparator/tests/_files/Author.php
deleted file mode 100644
index ae698c3..0000000
--- a/vendor/sebastian/comparator/tests/_files/Author.php
+++ /dev/null
@@ -1,28 +0,0 @@
-<?php
-/*
- * This file is part of the Comparator package.
- *
- * (c) Sebastian Bergmann <sebastian@phpunit.de>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace SebastianBergmann\Comparator;
-
-/**
- * An author.
- *
- */
-class Author
-{
-    // the order of properties is important for testing the cycle!
-    public $books = array();
-
-    private $name = '';
-
-    public function __construct($name)
-    {
-        $this->name = $name;
-    }
-}
diff --git a/vendor/sebastian/comparator/tests/_files/Book.php b/vendor/sebastian/comparator/tests/_files/Book.php
deleted file mode 100644
index 6171bc3..0000000
--- a/vendor/sebastian/comparator/tests/_files/Book.php
+++ /dev/null
@@ -1,21 +0,0 @@
-<?php
-/*
- * This file is part of the Comparator package.
- *
- * (c) Sebastian Bergmann <sebastian@phpunit.de>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace SebastianBergmann\Comparator;
-
-/**
- * A book.
- *
- */
-class Book
-{
-    // the order of properties is important for testing the cycle!
-    public $author = null;
-}
diff --git a/vendor/sebastian/comparator/tests/_files/ClassWithToString.php b/vendor/sebastian/comparator/tests/_files/ClassWithToString.php
deleted file mode 100644
index e8e03bc..0000000
--- a/vendor/sebastian/comparator/tests/_files/ClassWithToString.php
+++ /dev/null
@@ -1,19 +0,0 @@
-<?php
-/*
- * This file is part of the Comparator package.
- *
- * (c) Sebastian Bergmann <sebastian@phpunit.de>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace SebastianBergmann\Comparator;
-
-class ClassWithToString
-{
-    public function __toString()
-    {
-        return 'string representation';
-    }
-}
diff --git a/vendor/sebastian/comparator/tests/_files/SampleClass.php b/vendor/sebastian/comparator/tests/_files/SampleClass.php
deleted file mode 100644
index 6079dd3..0000000
--- a/vendor/sebastian/comparator/tests/_files/SampleClass.php
+++ /dev/null
@@ -1,29 +0,0 @@
-<?php
-/*
- * This file is part of the Comparator package.
- *
- * (c) Sebastian Bergmann <sebastian@phpunit.de>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace SebastianBergmann\Comparator;
-
-/**
- * A sample class.
- *
- */
-class SampleClass
-{
-    public $a;
-    protected $b;
-    protected $c;
-
-    public function __construct($a, $b, $c)
-    {
-        $this->a = $a;
-        $this->b = $b;
-        $this->c = $c;
-    }
-}
diff --git a/vendor/sebastian/comparator/tests/_files/Struct.php b/vendor/sebastian/comparator/tests/_files/Struct.php
deleted file mode 100644
index 79ec559..0000000
--- a/vendor/sebastian/comparator/tests/_files/Struct.php
+++ /dev/null
@@ -1,25 +0,0 @@
-<?php
-/*
- * This file is part of the Comparator package.
- *
- * (c) Sebastian Bergmann <sebastian@phpunit.de>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace SebastianBergmann\Comparator;
-
-/**
- * A struct.
- *
- */
-class Struct
-{
-    public $var;
-
-    public function __construct($var)
-    {
-        $this->var = $var;
-    }
-}
diff --git a/vendor/sebastian/comparator/tests/_files/TestClass.php b/vendor/sebastian/comparator/tests/_files/TestClass.php
deleted file mode 100644
index e4c9b78..0000000
--- a/vendor/sebastian/comparator/tests/_files/TestClass.php
+++ /dev/null
@@ -1,14 +0,0 @@
-<?php
-/*
- * This file is part of the Comparator package.
- *
- * (c) Sebastian Bergmann <sebastian@phpunit.de>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace SebastianBergmann\Comparator;
-
-class TestClass {
-}
diff --git a/vendor/sebastian/comparator/tests/_files/TestClassComparator.php b/vendor/sebastian/comparator/tests/_files/TestClassComparator.php
deleted file mode 100644
index 52aac3f..0000000
--- a/vendor/sebastian/comparator/tests/_files/TestClassComparator.php
+++ /dev/null
@@ -1,14 +0,0 @@
-<?php
-/*
- * This file is part of the Comparator package.
- *
- * (c) Sebastian Bergmann <sebastian@phpunit.de>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace SebastianBergmann\Comparator;
-
-class TestClassComparator extends ObjectComparator {
-}
diff --git a/vendor/sebastian/comparator/tests/autoload.php b/vendor/sebastian/comparator/tests/autoload.php
deleted file mode 100644
index f4d9bbc..0000000
--- a/vendor/sebastian/comparator/tests/autoload.php
+++ /dev/null
@@ -1,38 +0,0 @@
-<?php
-// @codingStandardsIgnoreFile
-// @codeCoverageIgnoreStart
-// this is an autogenerated file - do not edit
-spl_autoload_register(
-    function($class) {
-        static $classes = null;
-        if ($classes === null) {
-            $classes = array(
-                'sebastianbergmann\\comparator\\arraycomparatortest' => '/ArrayComparatorTest.php',
-                'sebastianbergmann\\comparator\\author' => '/_files/Author.php',
-                'sebastianbergmann\\comparator\\book' => '/_files/Book.php',
-                'sebastianbergmann\\comparator\\classwithtostring' => '/_files/ClassWithToString.php',
-                'sebastianbergmann\\comparator\\datetimecomparatortest' => '/DateTimeComparatorTest.php',
-                'sebastianbergmann\\comparator\\domnodecomparatortest' => '/DOMNodeComparatorTest.php',
-                'sebastianbergmann\\comparator\\doublecomparatortest' => '/DoubleComparatorTest.php',
-                'sebastianbergmann\\comparator\\exceptioncomparatortest' => '/ExceptionComparatorTest.php',
-                'sebastianbergmann\\comparator\\factorytest' => '/FactoryTest.php',
-                'sebastianbergmann\\comparator\\mockobjectcomparatortest' => '/MockObjectComparatorTest.php',
-                'sebastianbergmann\\comparator\\numericcomparatortest' => '/NumericComparatorTest.php',
-                'sebastianbergmann\\comparator\\objectcomparatortest' => '/ObjectComparatorTest.php',
-                'sebastianbergmann\\comparator\\resourcecomparatortest' => '/ResourceComparatorTest.php',
-                'sebastianbergmann\\comparator\\sampleclass' => '/_files/SampleClass.php',
-                'sebastianbergmann\\comparator\\scalarcomparatortest' => '/ScalarComparatorTest.php',
-                'sebastianbergmann\\comparator\\splobjectstoragecomparatortest' => '/SplObjectStorageComparatorTest.php',
-                'sebastianbergmann\\comparator\\struct' => '/_files/Struct.php',
-                'sebastianbergmann\\comparator\\testclass' => '/_files/TestClass.php',
-                'sebastianbergmann\\comparator\\testclasscomparator' => '/_files/TestClassComparator.php',
-                'sebastianbergmann\\comparator\\typecomparatortest' => '/TypeComparatorTest.php'
-            );
-        }
-        $cn = strtolower($class);
-        if (isset($classes[$cn])) {
-            require __DIR__ . $classes[$cn];
-        }
-    }
-);
-// @codeCoverageIgnoreEnd
diff --git a/vendor/sebastian/comparator/tests/bootstrap.php b/vendor/sebastian/comparator/tests/bootstrap.php
deleted file mode 100644
index 8f1c57c..0000000
--- a/vendor/sebastian/comparator/tests/bootstrap.php
+++ /dev/null
@@ -1,7 +0,0 @@
-<?php
-require __DIR__ . '/../vendor/autoload.php';
-require __DIR__ . '/autoload.php';
-
-ini_set('precision', 14);
-ini_set('serialize_precision', 14);
-
diff --git a/vendor/sebastian/diff/tests/DifferTest.php b/vendor/sebastian/diff/tests/DifferTest.php
deleted file mode 100644
index a786325..0000000
Binary files a/vendor/sebastian/diff/tests/DifferTest.php and /dev/null differ
diff --git a/vendor/sebastian/diff/tests/LCS/TimeEfficientImplementationTest.php b/vendor/sebastian/diff/tests/LCS/TimeEfficientImplementationTest.php
deleted file mode 100644
index babc407..0000000
--- a/vendor/sebastian/diff/tests/LCS/TimeEfficientImplementationTest.php
+++ /dev/null
@@ -1,175 +0,0 @@
-<?php
-/*
- * This file is part of the Diff package.
- *
- * (c) Sebastian Bergmann <sebastian@phpunit.de>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace SebastianBergmann\Diff\LCS;
-
-use PHPUnit_Framework_TestCase;
-
-/**
- * Some of these tests are volontary stressfull, in order to give some approximative benchmark hints.
- */
-class TimeEfficientImplementationTest extends PHPUnit_Framework_TestCase
-{
-    private $implementation;
-    private $memory_limit;
-    private $stress_sizes = array(1, 2, 3, 100, 500, 1000, 2000);
-
-    protected function setUp()
-    {
-        $this->memory_limit = ini_get('memory_limit');
-        ini_set('memory_limit', '256M');
-
-        $this->implementation = new TimeEfficientImplementation;
-    }
-
-    protected function tearDown()
-    {
-        ini_set('memory_limit', $this->memory_limit);
-    }
-
-    public function testBothEmpty()
-    {
-        $from   = array();
-        $to     = array();
-        $common = $this->implementation->calculate($from, $to);
-
-        $this->assertEquals(array(), $common);
-    }
-
-    public function testIsStrictComparison()
-    {
-        $from = array(
-            false, 0, 0.0, '', null, array(),
-            true, 1, 1.0, 'foo', array('foo', 'bar'), array('foo' => 'bar')
-        );
-        $to = $from;
-        $common = $this->implementation->calculate($from, $to);
-
-        $this->assertEquals($from, $common);
-
-        $to = array(
-            false, false, false, false, false, false,
-            true, true, true, true, true, true
-        );
-        $expected = array(
-            false,
-            true,
-        );
-        $common = $this->implementation->calculate($from, $to);
-
-        $this->assertEquals($expected, $common);
-    }
-
-    public function testEqualSequences()
-    {
-        foreach ($this->stress_sizes as $size) {
-            $range  = range(1, $size);
-            $from   = $range;
-            $to     = $range;
-            $common = $this->implementation->calculate($from, $to);
-
-            $this->assertEquals($range, $common);
-        }
-    }
-
-    public function testDistinctSequences()
-    {
-        $from  = array('A');
-        $to    = array('B');
-        $common = $this->implementation->calculate($from, $to);
-        $this->assertEquals(array(), $common);
-
-        $from  = array('A', 'B', 'C');
-        $to    = array('D', 'E', 'F');
-        $common = $this->implementation->calculate($from, $to);
-        $this->assertEquals(array(), $common);
-
-        foreach ($this->stress_sizes as $size) {
-            $from  = range(1, $size);
-            $to    = range($size + 1, $size * 2);
-            $common = $this->implementation->calculate($from, $to);
-            $this->assertEquals(array(), $common);
-        }
-    }
-
-    public function testCommonSubsequence()
-    {
-        $from     = array('A',      'C',      'E', 'F', 'G'     );
-        $to       = array('A', 'B',      'D', 'E',           'H');
-        $expected = array('A',                'E'               );
-        $common   = $this->implementation->calculate($from, $to);
-        $this->assertEquals($expected, $common);
-
-        $from     = array('A',      'C',      'E', 'F', 'G'     );
-        $to       = array(     'B', 'C', 'D', 'E', 'F',      'H');
-        $expected = array('C',                'E', 'F'          );
-        $common   = $this->implementation->calculate($from, $to);
-        $this->assertEquals($expected, $common);
-
-        foreach ($this->stress_sizes as $size) {
-            $from     = $size < 2 ? array(1) : range(1, $size + 1, 2);
-            $to       = $size < 3 ? array(1) : range(1, $size + 1, 3);
-            $expected = $size < 6 ? array(1) : range(1, $size + 1, 6);
-            $common   = $this->implementation->calculate($from, $to);
-
-            $this->assertEquals($expected, $common);
-        }
-    }
-
-    public function testSingleElementSubsequenceAtStart()
-    {
-        foreach ($this->stress_sizes as $size) {
-            $from   = range(1, $size);
-            $to     = array_slice($from, 0, 1);
-            $common = $this->implementation->calculate($from, $to);
-
-            $this->assertEquals($to, $common);
-        }
-    }
-
-    public function testSingleElementSubsequenceAtMiddle()
-    {
-        foreach ($this->stress_sizes as $size) {
-            $from   = range(1, $size);
-            $to     = array_slice($from, (int) $size / 2, 1);
-            $common = $this->implementation->calculate($from, $to);
-
-            $this->assertEquals($to, $common);
-        }
-    }
-
-    public function testSingleElementSubsequenceAtEnd()
-    {
-        foreach ($this->stress_sizes as $size) {
-            $from   = range(1, $size);
-            $to     = array_slice($from, $size - 1, 1);
-            $common = $this->implementation->calculate($from, $to);
-
-            $this->assertEquals($to, $common);
-        }
-    }
-
-    public function testReversedSequences()
-    {
-        $from     = array('A', 'B');
-        $to       = array('B', 'A');
-        $expected = array('A');
-        $common   = $this->implementation->calculate($from, $to);
-        $this->assertEquals($expected, $common);
-
-        foreach ($this->stress_sizes as $size) {
-            $from   = range(1, $size);
-            $to     = array_reverse($from);
-            $common = $this->implementation->calculate($from, $to);
-
-            $this->assertEquals(array(1), $common);
-        }
-    }
-}
diff --git a/vendor/sebastian/diff/tests/ParserTest.php b/vendor/sebastian/diff/tests/ParserTest.php
deleted file mode 100644
index 3a7b972..0000000
--- a/vendor/sebastian/diff/tests/ParserTest.php
+++ /dev/null
@@ -1,62 +0,0 @@
-<?php
-/*
- * This file is part of the Diff package.
- *
- * (c) Sebastian Bergmann <sebastian@phpunit.de>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace SebastianBergmann\Diff;
-
-use PHPUnit_Framework_TestCase;
-
-class ParserTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @var Parser
-     */
-    private $parser;
-
-    protected function setUp()
-    {
-        $this->parser = new Parser;
-    }
-
-    public function testParse()
-    {
-        $content = file_get_contents(__DIR__ . '/fixtures/patch.txt');
-
-        $diffs = $this->parser->parse($content);
-
-        $this->assertCount(1, $diffs);
-
-        $chunks = $diffs[0]->getChunks();
-        $this->assertCount(1, $chunks);
-
-        $this->assertEquals(20, $chunks[0]->getStart());
-
-        $this->assertCount(5, $chunks[0]->getLines());
-    }
-
-    public function testParseWithMultipleChunks()
-    {
-        $content = file_get_contents(__DIR__ . '/fixtures/patch2.txt');
-
-        $diffs = $this->parser->parse($content);
-
-        $this->assertCount(1, $diffs);
-
-        $chunks = $diffs[0]->getChunks();
-        $this->assertCount(3, $chunks);
-
-        $this->assertEquals(20, $chunks[0]->getStart());
-        $this->assertEquals(320, $chunks[1]->getStart());
-        $this->assertEquals(600, $chunks[2]->getStart());
-
-        $this->assertCount(5, $chunks[0]->getLines());
-        $this->assertCount(5, $chunks[1]->getLines());
-        $this->assertCount(5, $chunks[2]->getLines());
-    }
-}
diff --git a/vendor/sebastian/diff/tests/fixtures/patch.txt b/vendor/sebastian/diff/tests/fixtures/patch.txt
deleted file mode 100644
index 144b61d..0000000
--- a/vendor/sebastian/diff/tests/fixtures/patch.txt
+++ /dev/null
@@ -1,9 +0,0 @@
-diff --git a/Foo.php b/Foo.php
-index abcdefg..abcdefh 100644
---- a/Foo.php
-+++ b/Foo.php
-@@ -20,4 +20,5 @@ class Foo
-     const ONE = 1;
-     const TWO = 2;
-+    const THREE = 3;
-     const FOUR = 4;
diff --git a/vendor/sebastian/diff/tests/fixtures/patch2.txt b/vendor/sebastian/diff/tests/fixtures/patch2.txt
deleted file mode 100644
index 41fbc95..0000000
--- a/vendor/sebastian/diff/tests/fixtures/patch2.txt
+++ /dev/null
@@ -1,21 +0,0 @@
-diff --git a/Foo.php b/Foo.php
-index abcdefg..abcdefh 100644
---- a/Foo.php
-+++ b/Foo.php
-@@ -20,4 +20,5 @@ class Foo
-     const ONE = 1;
-     const TWO = 2;
-+    const THREE = 3;
-     const FOUR = 4;
-
-@@ -320,4 +320,5 @@ class Foo
-     const A = 'A';
-     const B = 'B';
-+    const C = 'C';
-     const D = 'D';
-
-@@ -600,4 +600,5 @@ class Foo
-     public function doSomething() {
-
-+        return 'foo';
-     }
diff --git a/vendor/sebastian/environment/tests/ConsoleTest.php b/vendor/sebastian/environment/tests/ConsoleTest.php
deleted file mode 100644
index 6b40172..0000000
--- a/vendor/sebastian/environment/tests/ConsoleTest.php
+++ /dev/null
@@ -1,60 +0,0 @@
-<?php
-/*
- * This file is part of the Environment package.
- *
- * (c) Sebastian Bergmann <sebastian@phpunit.de>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace SebastianBergmann\Environment;
-
-use PHPUnit_Framework_TestCase;
-
-class ConsoleTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @var \SebastianBergmann\Environment\Console
-     */
-    private $console;
-
-    protected function setUp()
-    {
-        $this->console = new Console;
-    }
-
-    /**
-     * @covers \SebastianBergmann\Environment\Console::isInteractive
-     */
-    public function testCanDetectIfStdoutIsInteractiveByDefault()
-    {
-        $this->assertInternalType('boolean', $this->console->isInteractive());
-    }
-
-    /**
-     * @covers \SebastianBergmann\Environment\Console::isInteractive
-     */
-    public function testCanDetectIfFileDescriptorIsInteractive()
-    {
-        $this->assertInternalType('boolean', $this->console->isInteractive(STDOUT));
-    }
-
-    /**
-     * @covers \SebastianBergmann\Environment\Console::hasColorSupport
-     * @uses   \SebastianBergmann\Environment\Console::isInteractive
-     */
-    public function testCanDetectColorSupport()
-    {
-        $this->assertInternalType('boolean', $this->console->hasColorSupport());
-    }
-
-    /**
-     * @covers \SebastianBergmann\Environment\Console::getNumberOfColumns
-     * @uses   \SebastianBergmann\Environment\Console::isInteractive
-     */
-    public function testCanDetectNumberOfColumns()
-    {
-        $this->assertInternalType('integer', $this->console->getNumberOfColumns());
-    }
-}
diff --git a/vendor/sebastian/environment/tests/RuntimeTest.php b/vendor/sebastian/environment/tests/RuntimeTest.php
deleted file mode 100644
index 8ea8373..0000000
--- a/vendor/sebastian/environment/tests/RuntimeTest.php
+++ /dev/null
@@ -1,112 +0,0 @@
-<?php
-/*
- * This file is part of the Environment package.
- *
- * (c) Sebastian Bergmann <sebastian@phpunit.de>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace SebastianBergmann\Environment;
-
-use PHPUnit_Framework_TestCase;
-
-class RuntimeTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @var \SebastianBergmann\Environment\Runtime
-     */
-    private $env;
-
-    protected function setUp()
-    {
-        $this->env = new Runtime;
-    }
-
-    /**
-     * @covers \SebastianBergmann\Environment\Runtime::canCollectCodeCoverage
-     * @uses   \SebastianBergmann\Environment\Runtime::hasXdebug
-     * @uses   \SebastianBergmann\Environment\Runtime::isHHVM
-     * @uses   \SebastianBergmann\Environment\Runtime::isPHP
-     */
-    public function testAbilityToCollectCodeCoverageCanBeAssessed()
-    {
-        $this->assertInternalType('boolean', $this->env->canCollectCodeCoverage());
-    }
-
-    /**
-     * @covers \SebastianBergmann\Environment\Runtime::getBinary
-     * @uses   \SebastianBergmann\Environment\Runtime::isHHVM
-     */
-    public function testBinaryCanBeRetrieved()
-    {
-        $this->assertInternalType('string', $this->env->getBinary());
-    }
-
-    /**
-     * @covers \SebastianBergmann\Environment\Runtime::isHHVM
-     */
-    public function testCanBeDetected()
-    {
-        $this->assertInternalType('boolean', $this->env->isHHVM());
-    }
-
-    /**
-     * @covers \SebastianBergmann\Environment\Runtime::isPHP
-     * @uses   \SebastianBergmann\Environment\Runtime::isHHVM
-     */
-    public function testCanBeDetected2()
-    {
-        $this->assertInternalType('boolean', $this->env->isPHP());
-    }
-
-    /**
-     * @covers \SebastianBergmann\Environment\Runtime::hasXdebug
-     * @uses   \SebastianBergmann\Environment\Runtime::isHHVM
-     * @uses   \SebastianBergmann\Environment\Runtime::isPHP
-     */
-    public function testXdebugCanBeDetected()
-    {
-        $this->assertInternalType('boolean', $this->env->hasXdebug());
-    }
-
-    /**
-     * @covers \SebastianBergmann\Environment\Runtime::getNameWithVersion
-     * @uses   \SebastianBergmann\Environment\Runtime::getName
-     * @uses   \SebastianBergmann\Environment\Runtime::getVersion
-     * @uses   \SebastianBergmann\Environment\Runtime::isHHVM
-     * @uses   \SebastianBergmann\Environment\Runtime::isPHP
-     */
-    public function testNameAndVersionCanBeRetrieved()
-    {
-        $this->assertInternalType('string', $this->env->getNameWithVersion());
-    }
-
-    /**
-     * @covers \SebastianBergmann\Environment\Runtime::getName
-     * @uses   \SebastianBergmann\Environment\Runtime::isHHVM
-     */
-    public function testNameCanBeRetrieved()
-    {
-        $this->assertInternalType('string', $this->env->getName());
-    }
-
-    /**
-     * @covers \SebastianBergmann\Environment\Runtime::getVersion
-     * @uses   \SebastianBergmann\Environment\Runtime::isHHVM
-     */
-    public function testVersionCanBeRetrieved()
-    {
-        $this->assertInternalType('string', $this->env->getVersion());
-    }
-
-    /**
-     * @covers \SebastianBergmann\Environment\Runtime::getVendorUrl
-     * @uses   \SebastianBergmann\Environment\Runtime::isHHVM
-     */
-    public function testVendorUrlCanBeRetrieved()
-    {
-        $this->assertInternalType('string', $this->env->getVendorUrl());
-    }
-}
diff --git a/vendor/sebastian/exporter/tests/ExporterTest.php b/vendor/sebastian/exporter/tests/ExporterTest.php
deleted file mode 100644
index 6b590bf..0000000
--- a/vendor/sebastian/exporter/tests/ExporterTest.php
+++ /dev/null
@@ -1,333 +0,0 @@
-<?php
-/*
- * This file is part of the Exporter package.
- *
- * (c) Sebastian Bergmann <sebastian@phpunit.de>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace SebastianBergmann\Exporter;
-
-/**
- * @covers SebastianBergmann\Exporter\Exporter
- */
-class ExporterTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @var Exporter
-     */
-    private $exporter;
-
-    protected function setUp()
-    {
-        $this->exporter = new Exporter;
-    }
-
-    public function exportProvider()
-    {
-        $obj2 = new \stdClass;
-        $obj2->foo = 'bar';
-
-        $obj3 = (object)array(1,2,"Test\r\n",4,5,6,7,8);
-
-        $obj = new \stdClass;
-        //@codingStandardsIgnoreStart
-        $obj->null = null;
-        //@codingStandardsIgnoreEnd
-        $obj->boolean = true;
-        $obj->integer = 1;
-        $obj->double = 1.2;
-        $obj->string = '1';
-        $obj->text = "this\nis\na\nvery\nvery\nvery\nvery\nvery\nvery\rlong\n\rtext";
-        $obj->object = $obj2;
-        $obj->objectagain = $obj2;
-        $obj->array = array('foo' => 'bar');
-        $obj->self = $obj;
-
-        $storage = new \SplObjectStorage;
-        $storage->attach($obj2);
-        $storage->foo = $obj2;
-
-        return array(
-            array(null, 'null'),
-            array(true, 'true'),
-            array(false, 'false'),
-            array(1, '1'),
-            array(1.0, '1.0'),
-            array(1.2, '1.2'),
-            array(fopen('php://memory', 'r'), 'resource(%d) of type (stream)'),
-            array('1', "'1'"),
-            array(array(array(1,2,3), array(3,4,5)),
-        <<<EOF
-Array &0 (
-    0 => Array &1 (
-        0 => 1
-        1 => 2
-        2 => 3
-    )
-    1 => Array &2 (
-        0 => 3
-        1 => 4
-        2 => 5
-    )
-)
-EOF
-            ),
-            // \n\r and \r is converted to \n
-            array("this\nis\na\nvery\nvery\nvery\nvery\nvery\nvery\rlong\n\rtext",
-            <<<EOF
-'this
-is
-a
-very
-very
-very
-very
-very
-very
-long
-text'
-EOF
-            ),
-            array(new \stdClass, 'stdClass Object &%x ()'),
-            array($obj,
-            <<<EOF
-stdClass Object &%x (
-    'null' => null
-    'boolean' => true
-    'integer' => 1
-    'double' => 1.2
-    'string' => '1'
-    'text' => 'this
-is
-a
-very
-very
-very
-very
-very
-very
-long
-text'
-    'object' => stdClass Object &%x (
-        'foo' => 'bar'
-    )
-    'objectagain' => stdClass Object &%x
-    'array' => Array &%d (
-        'foo' => 'bar'
-    )
-    'self' => stdClass Object &%x
-)
-EOF
-            ),
-            array(array(), 'Array &%d ()'),
-            array($storage,
-            <<<EOF
-SplObjectStorage Object &%x (
-    'foo' => stdClass Object &%x (
-        'foo' => 'bar'
-    )
-    '%x' => Array &0 (
-        'obj' => stdClass Object &%x
-        'inf' => null
-    )
-)
-EOF
-            ),
-            array($obj3,
-            <<<EOF
-stdClass Object &%x (
-    0 => 1
-    1 => 2
-    2 => 'Test\n'
-    3 => 4
-    4 => 5
-    5 => 6
-    6 => 7
-    7 => 8
-)
-EOF
-            ),
-            array(
-                chr(0) . chr(1) . chr(2) . chr(3) . chr(4) . chr(5),
-                'Binary String: 0x000102030405'
-            ),
-            array(
-                implode('', array_map('chr', range(0x0e, 0x1f))),
-                'Binary String: 0x0e0f101112131415161718191a1b1c1d1e1f'
-            ),
-            array(
-                chr(0x00) . chr(0x09),
-                'Binary String: 0x0009'
-            ),
-            array(
-                '',
-                "''"
-            ),
-        );
-    }
-
-    /**
-     * @dataProvider exportProvider
-     */
-    public function testExport($value, $expected)
-    {
-        $this->assertStringMatchesFormat(
-            $expected,
-            $this->trimNewline($this->exporter->export($value))
-        );
-    }
-
-    public function testExport2()
-    {
-        if (PHP_VERSION === '5.3.3') {
-            $this->markTestSkipped('Skipped due to "Nesting level too deep - recursive dependency?" fatal error');
-        }
-
-        $obj = new \stdClass;
-        $obj->foo = 'bar';
-
-        $array = array(
-            0 => 0,
-            'null' => null,
-            'boolean' => true,
-            'integer' => 1,
-            'double' => 1.2,
-            'string' => '1',
-            'text' => "this\nis\na\nvery\nvery\nvery\nvery\nvery\nvery\rlong\n\rtext",
-            'object' => $obj,
-            'objectagain' => $obj,
-            'array' => array('foo' => 'bar'),
-        );
-
-        $array['self'] = &$array;
-
-        $expected = <<<EOF
-Array &%d (
-    0 => 0
-    'null' => null
-    'boolean' => true
-    'integer' => 1
-    'double' => 1.2
-    'string' => '1'
-    'text' => 'this
-is
-a
-very
-very
-very
-very
-very
-very
-long
-text'
-    'object' => stdClass Object &%x (
-        'foo' => 'bar'
-    )
-    'objectagain' => stdClass Object &%x
-    'array' => Array &%d (
-        'foo' => 'bar'
-    )
-    'self' => Array &%d (
-        0 => 0
-        'null' => null
-        'boolean' => true
-        'integer' => 1
-        'double' => 1.2
-        'string' => '1'
-        'text' => 'this
-is
-a
-very
-very
-very
-very
-very
-very
-long
-text'
-        'object' => stdClass Object &%x
-        'objectagain' => stdClass Object &%x
-        'array' => Array &%d (
-            'foo' => 'bar'
-        )
-        'self' => Array &%d
-    )
-)
-EOF;
-
-        $this->assertStringMatchesFormat(
-            $expected,
-            $this->trimNewline($this->exporter->export($array))
-        );
-    }
-
-    public function shortenedExportProvider()
-    {
-        $obj = new \stdClass;
-        $obj->foo = 'bar';
-
-        $array = array(
-            'foo' => 'bar',
-        );
-
-        return array(
-            array(null, 'null'),
-            array(true, 'true'),
-            array(1, '1'),
-            array(1.0, '1.0'),
-            array(1.2, '1.2'),
-            array('1', "'1'"),
-            // \n\r and \r is converted to \n
-            array("this\nis\na\nvery\nvery\nvery\nvery\nvery\nvery\rlong\n\rtext", "'this\\nis\\na\\nvery\\nvery\\nvery\\nvery...g\\ntext'"),
-            array(new \stdClass, 'stdClass Object ()'),
-            array($obj, 'stdClass Object (...)'),
-            array(array(), 'Array ()'),
-            array($array, 'Array (...)'),
-        );
-    }
-
-    /**
-     * @dataProvider shortenedExportProvider
-     */
-    public function testShortenedExport($value, $expected)
-    {
-        $this->assertSame(
-            $expected,
-            $this->trimNewline($this->exporter->shortenedExport($value))
-        );
-    }
-
-    public function provideNonBinaryMultibyteStrings()
-    {
-        return array(
-            array(implode('', array_map('chr', range(0x09, 0x0d))), 5),
-            array(implode('', array_map('chr', range(0x20, 0x7f))), 96),
-            array(implode('', array_map('chr', range(0x80, 0xff))), 128),
-        );
-    }
-
-
-    /**
-     * @dataProvider provideNonBinaryMultibyteStrings
-     */
-    public function testNonBinaryStringExport($value, $expectedLength)
-    {
-        $this->assertRegExp(
-            "~'.{{$expectedLength}}'\$~s",
-            $this->exporter->export($value)
-        );
-    }
-
-    public function testNonObjectCanBeReturnedAsArray()
-    {
-        $this->assertEquals(array(true), $this->exporter->toArray(true));
-    }
-
-    private function trimNewline($string)
-    {
-        return preg_replace('/[ ]*\n/', "\n", $string);
-    }
-}
diff --git a/vendor/sebastian/global-state/tests/BlacklistTest.php b/vendor/sebastian/global-state/tests/BlacklistTest.php
deleted file mode 100644
index d5a2a75..0000000
--- a/vendor/sebastian/global-state/tests/BlacklistTest.php
+++ /dev/null
@@ -1,149 +0,0 @@
-<?php
-/**
- * GlobalState
- *
- * Copyright (c) 2001-2014, Sebastian Bergmann <sebastian@phpunit.de>.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- *   * Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer.
- *
- *   * Redistributions in binary form must reproduce the above copyright
- *     notice, this list of conditions and the following disclaimer in
- *     the documentation and/or other materials provided with the
- *     distribution.
- *
- *   * Neither the name of Sebastian Bergmann nor the names of his
- *     contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
- * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
- * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
- * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
- * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @author     Sebastian Bergmann <sebastian@phpunit.de>
- * @copyright  2001-2014 Sebastian Bergmann <sebastian@phpunit.de>
- * @license    http://www.opensource.org/licenses/BSD-3-Clause  The BSD 3-Clause License
- * @link       http://www.github.com/sebastianbergmann/global-state
- */
-
-namespace SebastianBergmann\GlobalState;
-
-use PHPUnit_Framework_TestCase;
-
-/**
- * @author     Sebastian Bergmann <sebastian@phpunit.de>
- * @copyright  2001-2014 Sebastian Bergmann <sebastian@phpunit.de>
- * @license    http://www.opensource.org/licenses/BSD-3-Clause  The BSD 3-Clause License
- * @link       http://www.github.com/sebastianbergmann/global-state
- */
-class BlacklistTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @var \SebastianBergmann\GlobalState\Blacklist
-     */
-    private $blacklist;
-
-    protected function setUp()
-    {
-        $this->blacklist = new Blacklist;
-    }
-
-    public function testGlobalVariableThatIsNotBlacklistedIsNotTreatedAsBlacklisted()
-    {
-        $this->assertFalse($this->blacklist->isGlobalVariableBlacklisted('variable'));
-    }
-
-    public function testGlobalVariableCanBeBlacklisted()
-    {
-        $this->blacklist->addGlobalVariable('variable');
-
-        $this->assertTrue($this->blacklist->isGlobalVariableBlacklisted('variable'));
-    }
-
-    public function testStaticAttributeThatIsNotBlacklistedIsNotTreatedAsBlacklisted()
-    {
-        $this->assertFalse(
-            $this->blacklist->isStaticAttributeBlacklisted(
-                'SebastianBergmann\GlobalState\TestFixture\BlacklistedClass',
-                'attribute'
-            )
-        );
-    }
-
-    public function testClassCanBeBlacklisted()
-    {
-        $this->blacklist->addClass('SebastianBergmann\GlobalState\TestFixture\BlacklistedClass');
-
-        $this->assertTrue(
-            $this->blacklist->isStaticAttributeBlacklisted(
-                'SebastianBergmann\GlobalState\TestFixture\BlacklistedClass',
-                'attribute'
-            )
-        );
-    }
-
-    public function testSubclassesCanBeBlacklisted()
-    {
-        $this->blacklist->addSubclassesOf('SebastianBergmann\GlobalState\TestFixture\BlacklistedClass');
-
-        $this->assertTrue(
-            $this->blacklist->isStaticAttributeBlacklisted(
-                'SebastianBergmann\GlobalState\TestFixture\BlacklistedChildClass',
-                'attribute'
-            )
-        );
-    }
-
-    public function testImplementorsCanBeBlacklisted()
-    {
-        $this->blacklist->addImplementorsOf('SebastianBergmann\GlobalState\TestFixture\BlacklistedInterface');
-
-        $this->assertTrue(
-            $this->blacklist->isStaticAttributeBlacklisted(
-                'SebastianBergmann\GlobalState\TestFixture\BlacklistedImplementor',
-                'attribute'
-            )
-        );
-    }
-
-    public function testClassNamePrefixesCanBeBlacklisted()
-    {
-        $this->blacklist->addClassNamePrefix('SebastianBergmann\GlobalState');
-
-        $this->assertTrue(
-            $this->blacklist->isStaticAttributeBlacklisted(
-                'SebastianBergmann\GlobalState\TestFixture\BlacklistedClass',
-                'attribute'
-            )
-        );
-    }
-
-    public function testStaticAttributeCanBeBlacklisted()
-    {
-        $this->blacklist->addStaticAttribute(
-            'SebastianBergmann\GlobalState\TestFixture\BlacklistedClass',
-            'attribute'
-        );
-
-        $this->assertTrue(
-            $this->blacklist->isStaticAttributeBlacklisted(
-                'SebastianBergmann\GlobalState\TestFixture\BlacklistedClass',
-                'attribute'
-            )
-        );
-    }
-}
diff --git a/vendor/sebastian/global-state/tests/_fixture/BlacklistedChildClass.php b/vendor/sebastian/global-state/tests/_fixture/BlacklistedChildClass.php
deleted file mode 100644
index 99f7fdb..0000000
--- a/vendor/sebastian/global-state/tests/_fixture/BlacklistedChildClass.php
+++ /dev/null
@@ -1,53 +0,0 @@
-<?php
-/**
- * GlobalState
- *
- * Copyright (c) 2001-2014, Sebastian Bergmann <sebastian@phpunit.de>.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- *   * Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer.
- *
- *   * Redistributions in binary form must reproduce the above copyright
- *     notice, this list of conditions and the following disclaimer in
- *     the documentation and/or other materials provided with the
- *     distribution.
- *
- *   * Neither the name of Sebastian Bergmann nor the names of his
- *     contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
- * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
- * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
- * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
- * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @author     Sebastian Bergmann <sebastian@phpunit.de>
- * @copyright  2001-2014 Sebastian Bergmann <sebastian@phpunit.de>
- * @license    http://www.opensource.org/licenses/BSD-3-Clause  The BSD 3-Clause License
- * @link       http://www.github.com/sebastianbergmann/global-state
- */
-
-namespace SebastianBergmann\GlobalState\TestFixture;
-
-/**
- * @author     Sebastian Bergmann <sebastian@phpunit.de>
- * @copyright  2001-2014 Sebastian Bergmann <sebastian@phpunit.de>
- * @license    http://www.opensource.org/licenses/BSD-3-Clause  The BSD 3-Clause License
- * @link       http://www.github.com/sebastianbergmann/global-state
- */
-class BlacklistedChildClass extends BlacklistedClass
-{
-}
diff --git a/vendor/sebastian/global-state/tests/_fixture/BlacklistedClass.php b/vendor/sebastian/global-state/tests/_fixture/BlacklistedClass.php
deleted file mode 100644
index f1582c7..0000000
--- a/vendor/sebastian/global-state/tests/_fixture/BlacklistedClass.php
+++ /dev/null
@@ -1,54 +0,0 @@
-<?php
-/**
- * GlobalState
- *
- * Copyright (c) 2001-2014, Sebastian Bergmann <sebastian@phpunit.de>.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- *   * Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer.
- *
- *   * Redistributions in binary form must reproduce the above copyright
- *     notice, this list of conditions and the following disclaimer in
- *     the documentation and/or other materials provided with the
- *     distribution.
- *
- *   * Neither the name of Sebastian Bergmann nor the names of his
- *     contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
- * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
- * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
- * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
- * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @author     Sebastian Bergmann <sebastian@phpunit.de>
- * @copyright  2001-2014 Sebastian Bergmann <sebastian@phpunit.de>
- * @license    http://www.opensource.org/licenses/BSD-3-Clause  The BSD 3-Clause License
- * @link       http://www.github.com/sebastianbergmann/global-state
- */
-
-namespace SebastianBergmann\GlobalState\TestFixture;
-
-/**
- * @author     Sebastian Bergmann <sebastian@phpunit.de>
- * @copyright  2001-2014 Sebastian Bergmann <sebastian@phpunit.de>
- * @license    http://www.opensource.org/licenses/BSD-3-Clause  The BSD 3-Clause License
- * @link       http://www.github.com/sebastianbergmann/global-state
- */
-class BlacklistedClass
-{
-    private static $attribute;
-}
diff --git a/vendor/sebastian/global-state/tests/_fixture/BlacklistedImplementor.php b/vendor/sebastian/global-state/tests/_fixture/BlacklistedImplementor.php
deleted file mode 100644
index c80d987..0000000
--- a/vendor/sebastian/global-state/tests/_fixture/BlacklistedImplementor.php
+++ /dev/null
@@ -1,54 +0,0 @@
-<?php
-/**
- * GlobalState
- *
- * Copyright (c) 2001-2014, Sebastian Bergmann <sebastian@phpunit.de>.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- *   * Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer.
- *
- *   * Redistributions in binary form must reproduce the above copyright
- *     notice, this list of conditions and the following disclaimer in
- *     the documentation and/or other materials provided with the
- *     distribution.
- *
- *   * Neither the name of Sebastian Bergmann nor the names of his
- *     contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
- * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
- * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
- * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
- * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @author     Sebastian Bergmann <sebastian@phpunit.de>
- * @copyright  2001-2014 Sebastian Bergmann <sebastian@phpunit.de>
- * @license    http://www.opensource.org/licenses/BSD-3-Clause  The BSD 3-Clause License
- * @link       http://www.github.com/sebastianbergmann/global-state
- */
-
-namespace SebastianBergmann\GlobalState\TestFixture;
-
-/**
- * @author     Sebastian Bergmann <sebastian@phpunit.de>
- * @copyright  2001-2014 Sebastian Bergmann <sebastian@phpunit.de>
- * @license    http://www.opensource.org/licenses/BSD-3-Clause  The BSD 3-Clause License
- * @link       http://www.github.com/sebastianbergmann/global-state
- */
-class BlacklistedImplementor implements BlacklistedInterface
-{
-    private static $attribute;
-}
diff --git a/vendor/sebastian/global-state/tests/_fixture/BlacklistedInterface.php b/vendor/sebastian/global-state/tests/_fixture/BlacklistedInterface.php
deleted file mode 100644
index f3941fd..0000000
--- a/vendor/sebastian/global-state/tests/_fixture/BlacklistedInterface.php
+++ /dev/null
@@ -1,53 +0,0 @@
-<?php
-/**
- * GlobalState
- *
- * Copyright (c) 2001-2014, Sebastian Bergmann <sebastian@phpunit.de>.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- *   * Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer.
- *
- *   * Redistributions in binary form must reproduce the above copyright
- *     notice, this list of conditions and the following disclaimer in
- *     the documentation and/or other materials provided with the
- *     distribution.
- *
- *   * Neither the name of Sebastian Bergmann nor the names of his
- *     contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
- * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
- * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
- * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
- * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @author     Sebastian Bergmann <sebastian@phpunit.de>
- * @copyright  2001-2014 Sebastian Bergmann <sebastian@phpunit.de>
- * @license    http://www.opensource.org/licenses/BSD-3-Clause  The BSD 3-Clause License
- * @link       http://www.github.com/sebastianbergmann/global-state
- */
-
-namespace SebastianBergmann\GlobalState\TestFixture;
-
-/**
- * @author     Sebastian Bergmann <sebastian@phpunit.de>
- * @copyright  2001-2014 Sebastian Bergmann <sebastian@phpunit.de>
- * @license    http://www.opensource.org/licenses/BSD-3-Clause  The BSD 3-Clause License
- * @link       http://www.github.com/sebastianbergmann/global-state
- */
-interface BlacklistedInterface
-{
-}
diff --git a/vendor/sebastian/recursion-context/tests/ContextTest.php b/vendor/sebastian/recursion-context/tests/ContextTest.php
deleted file mode 100644
index 8e8cc56..0000000
--- a/vendor/sebastian/recursion-context/tests/ContextTest.php
+++ /dev/null
@@ -1,144 +0,0 @@
-<?php
-/*
- * This file is part of the Recursion Context package.
- *
- * (c) Sebastian Bergmann <sebastian@phpunit.de>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace SebastianBergmann\RecursionContext;
-
-use PHPUnit_Framework_TestCase;
-
-/**
- * @covers SebastianBergmann\RecursionContext\Context
- */
-class ContextTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @var \SebastianBergmann\RecursionContext\Context
-     */
-    private $context;
-
-    protected function setUp()
-    {
-        $this->context = new Context();
-    }
-
-    public function failsProvider()
-    {
-        return array(
-            array(true),
-            array(false),
-            array(null),
-            array('string'),
-            array(1),
-            array(1.5),
-            array(fopen('php://memory', 'r'))
-        );
-    }
-
-    public function valuesProvider()
-    {
-        $obj2 = new \stdClass();
-        $obj2->foo = 'bar';
-
-        $obj3 = (object) array(1,2,"Test\r\n",4,5,6,7,8);
-
-        $obj = new \stdClass();
-        //@codingStandardsIgnoreStart
-        $obj->null = null;
-        //@codingStandardsIgnoreEnd
-        $obj->boolean = true;
-        $obj->integer = 1;
-        $obj->double = 1.2;
-        $obj->string = '1';
-        $obj->text = "this\nis\na\nvery\nvery\nvery\nvery\nvery\nvery\rlong\n\rtext";
-        $obj->object = $obj2;
-        $obj->objectagain = $obj2;
-        $obj->array = array('foo' => 'bar');
-        $obj->array2 = array(1,2,3,4,5,6);
-        $obj->array3 = array($obj, $obj2, $obj3);
-        $obj->self = $obj;
-
-        $storage = new \SplObjectStorage();
-        $storage->attach($obj2);
-        $storage->foo = $obj2;
-
-        return array(
-            array($obj, spl_object_hash($obj)),
-            array($obj2, spl_object_hash($obj2)),
-            array($obj3, spl_object_hash($obj3)),
-            array($storage, spl_object_hash($storage)),
-            array($obj->array, 0),
-            array($obj->array2, 0),
-            array($obj->array3, 0)
-        );
-    }
-
-    /**
-     * @covers       SebastianBergmann\RecursionContext\Context::add
-     * @uses         SebastianBergmann\RecursionContext\InvalidArgumentException
-     * @dataProvider failsProvider
-     */
-    public function testAddFails($value)
-    {
-        $this->setExpectedException(
-          'SebastianBergmann\\RecursionContext\\Exception',
-          'Only arrays and objects are supported'
-        );
-        $this->context->add($value);
-    }
-
-    /**
-     * @covers       SebastianBergmann\RecursionContext\Context::contains
-     * @uses         SebastianBergmann\RecursionContext\InvalidArgumentException
-     * @dataProvider failsProvider
-     */
-    public function testContainsFails($value)
-    {
-        $this->setExpectedException(
-          'SebastianBergmann\\RecursionContext\\Exception',
-          'Only arrays and objects are supported'
-        );
-        $this->context->contains($value);
-    }
-
-    /**
-     * @covers       SebastianBergmann\RecursionContext\Context::add
-     * @dataProvider valuesProvider
-     */
-    public function testAdd($value, $key)
-    {
-        $this->assertEquals($key, $this->context->add($value));
-
-        // Test we get the same key on subsequent adds
-        $this->assertEquals($key, $this->context->add($value));
-    }
-
-    /**
-     * @covers       SebastianBergmann\RecursionContext\Context::contains
-     * @uses         SebastianBergmann\RecursionContext\Context::add
-     * @depends      testAdd
-     * @dataProvider valuesProvider
-     */
-    public function testContainsFound($value, $key)
-    {
-        $this->context->add($value);
-        $this->assertEquals($key, $this->context->contains($value));
-
-        // Test we get the same key on subsequent calls
-        $this->assertEquals($key, $this->context->contains($value));
-    }
-
-    /**
-     * @covers       SebastianBergmann\RecursionContext\Context::contains
-     * @dataProvider valuesProvider
-     */
-    public function testContainsNotFound($value)
-    {
-        $this->assertFalse($this->context->contains($value));
-    }
-}
diff --git a/vendor/stack/builder/tests/functional/SilexApplicationTest.php b/vendor/stack/builder/tests/functional/SilexApplicationTest.php
deleted file mode 100644
index 5636336..0000000
--- a/vendor/stack/builder/tests/functional/SilexApplicationTest.php
+++ /dev/null
@@ -1,60 +0,0 @@
-<?php
-
-namespace functional;
-
-use Silex\Application;
-use Stack\Builder;
-use Symfony\Component\HttpFoundation\Request;
-use Symfony\Component\HttpKernel\HttpKernelInterface;
-
-class SilexApplicationTest extends \PHPUnit_Framework_TestCase
-{
-    public function testWithAppendMiddlewares()
-    {
-        $app = new Application();
-
-        $app->get('/foo', function () {
-            return 'bar';
-        });
-
-        $finished = false;
-
-        $app->finish(function () use (&$finished) {
-            $finished = true;
-        });
-
-        $stack = new Builder();
-        $stack
-            ->push('functional\Append', '.A')
-            ->push('functional\Append', '.B');
-
-        $app = $stack->resolve($app);
-
-        $request = Request::create('/foo');
-        $response = $app->handle($request);
-        $app->terminate($request, $response);
-
-        $this->assertSame('bar.B.A', $response->getContent());
-        $this->assertTrue($finished);
-    }
-}
-
-class Append implements HttpKernelInterface
-{
-    private $app;
-    private $appendix;
-
-    public function __construct(HttpKernelInterface $app, $appendix)
-    {
-        $this->app = $app;
-        $this->appendix = $appendix;
-    }
-
-    public function handle(Request $request, $type = HttpKernelInterface::MASTER_REQUEST, $catch = true)
-    {
-        $response = clone $this->app->handle($request, $type, $catch);
-        $response->setContent($response->getContent().$this->appendix);
-
-        return $response;
-    }
-}
diff --git a/vendor/stack/builder/tests/unit/Stack/BuilderTest.php b/vendor/stack/builder/tests/unit/Stack/BuilderTest.php
deleted file mode 100644
index 4092d01..0000000
--- a/vendor/stack/builder/tests/unit/Stack/BuilderTest.php
+++ /dev/null
@@ -1,215 +0,0 @@
-<?php
-
-namespace Stack;
-
-use Symfony\Component\HttpFoundation\Request;
-use Symfony\Component\HttpFoundation\Response;
-use Symfony\Component\HttpKernel\HttpKernelInterface;
-use Symfony\Component\HttpKernel\TerminableInterface;
-
-/** @covers Stack\Builder */
-class BuilderTest extends \PHPUnit_Framework_TestCase
-{
-    /** @test */
-    public function withoutMiddlewaresItShouldReturnOriginalResponse()
-    {
-        $app = $this->getHttpKernelMock(new Response('ok'));
-
-        $stack = new Builder();
-        $resolved = $stack->resolve($app);
-
-        $request = Request::create('/');
-        $response = $resolved->handle($request);
-
-        $this->assertInstanceOf('Stack\StackedHttpKernel', $resolved);
-        $this->assertSame('ok', $response->getContent());
-    }
-
-    /** @test */
-    public function resolvedKernelShouldDelegateTerminateCalls()
-    {
-        $app = $this->getTerminableMock();
-
-        $stack = new Builder();
-        $resolved = $stack->resolve($app);
-
-        $request = Request::create('/');
-        $response = new Response('ok');
-
-        $resolved->handle($request);
-        $resolved->terminate($request, $response);
-    }
-
-    /** @test */
-    public function pushShouldReturnSelf()
-    {
-        $stack = new Builder();
-        $this->assertSame($stack, $stack->push('Stack\AppendA'));
-    }
-
-    /** @test */
-    public function pushShouldThrowOnInvalidInput()
-    {
-        $this->setExpectedException('InvalidArgumentException', 'Missing argument(s) when calling push');
-        $stack = new Builder();
-        $stack->push();
-    }
-
-    /** @test */
-    public function unshiftShouldReturnSelf()
-    {
-        $stack = new Builder();
-        $this->assertSame($stack, $stack->unshift('Stack\AppendA'));
-    }
-
-    /** @test */
-    public function unshiftShouldThrowOnInvalidInput()
-    {
-        $this->setExpectedException('InvalidArgumentException', 'Missing argument(s) when calling unshift');
-        $stack = new Builder();
-        $stack->unshift();
-    }
-
-    /** @test */
-    public function appendMiddlewareShouldAppendToBody()
-    {
-        $app = $this->getHttpKernelMock(new Response('ok'));
-
-        $stack = new Builder();
-        $stack->push('Stack\AppendA');
-        $resolved = $stack->resolve($app);
-
-        $request = Request::create('/');
-        $response = $resolved->handle($request);
-
-        $this->assertSame('ok.A', $response->getContent());
-    }
-
-    /** @test */
-    public function unshiftMiddlewareShouldPutMiddlewareBeforePushed()
-    {
-        $app = $this->getHttpKernelMock(new Response('ok'));
-
-        $stack = new Builder();
-        $stack->push('Stack\Append', '2.');
-        $stack->unshift('Stack\Append', '1.');
-        $resolved = $stack->resolve($app);
-
-        $request = Request::create('/');
-        $response = $resolved->handle($request);
-
-        $this->assertSame('ok2.1.', $response->getContent());
-    }
-
-    /** @test */
-    public function stackedMiddlewaresShouldWrapInReverseOrder()
-    {
-        $app = $this->getHttpKernelMock(new Response('ok'));
-
-        $stack = new Builder();
-        $stack->push('Stack\AppendA');
-        $stack->push('Stack\AppendB');
-        $resolved = $stack->resolve($app);
-
-        $request = Request::create('/');
-        $response = $resolved->handle($request);
-
-        $this->assertSame('ok.B.A', $response->getContent());
-    }
-
-    /** @test */
-    public function resolveShouldPassPushArgumentsToMiddlewareConstructor()
-    {
-        $app = $this->getHttpKernelMock(new Response('ok'));
-
-        $stack = new Builder();
-        $stack->push('Stack\Append', '.foo');
-        $stack->push('Stack\Append', '.bar');
-        $resolved = $stack->resolve($app);
-
-        $request = Request::create('/');
-        $response = $resolved->handle($request);
-
-        $this->assertSame('ok.bar.foo', $response->getContent());
-    }
-
-    /** @test */
-    public function resolveShouldCallSpecFactories()
-    {
-        $app = $this->getHttpKernelMock(new Response('ok'));
-
-        $stack = new Builder();
-        $stack->push(function ($app) { return new Append($app, '.foo'); });
-        $stack->push(function ($app) { return new Append($app, '.bar'); });
-        $resolved = $stack->resolve($app);
-
-        $request = Request::create('/');
-        $response = $resolved->handle($request);
-
-        $this->assertSame('ok.bar.foo', $response->getContent());
-    }
-
-    private function getHttpKernelMock(Response $response)
-    {
-        $app = $this->getMock('Symfony\Component\HttpKernel\HttpKernelInterface');
-        $app->expects($this->any())
-            ->method('handle')
-            ->with($this->isInstanceOf('Symfony\Component\HttpFoundation\Request'))
-            ->will($this->returnValue($response));
-
-        return $app;
-    }
-
-    private function getTerminableMock()
-    {
-        $app = $this->getMock('Stack\TerminableHttpKernel');
-        $app->expects($this->once())
-            ->method('terminate')
-            ->with(
-                $this->isInstanceOf('Symfony\Component\HttpFoundation\Request'),
-                $this->isInstanceOf('Symfony\Component\HttpFoundation\Response')
-            );
-
-        return $app;
-    }
-}
-
-abstract class TerminableHttpKernel implements HttpKernelInterface, TerminableInterface
-{
-}
-
-class Append implements HttpKernelInterface
-{
-    private $app;
-    private $appendix;
-
-    public function __construct(HttpKernelInterface $app, $appendix)
-    {
-        $this->app = $app;
-        $this->appendix = $appendix;
-    }
-
-    public function handle(Request $request, $type = HttpKernelInterface::MASTER_REQUEST, $catch = true)
-    {
-        $response = clone $this->app->handle($request, $type, $catch);
-        $response->setContent($response->getContent().$this->appendix);
-
-        return $response;
-    }
-}
-
-class AppendA extends Append
-{
-    public function __construct(HttpKernelInterface $app)
-    {
-        parent::__construct($app, '.A');
-    }
-}
-
-class AppendB extends Append
-{
-    public function __construct(HttpKernelInterface $app)
-    {
-        parent::__construct($app, '.B');
-    }
-}
diff --git a/vendor/stack/builder/tests/unit/Stack/StackedHttpKernelTest.php b/vendor/stack/builder/tests/unit/Stack/StackedHttpKernelTest.php
deleted file mode 100644
index 545e1f8..0000000
--- a/vendor/stack/builder/tests/unit/Stack/StackedHttpKernelTest.php
+++ /dev/null
@@ -1,155 +0,0 @@
-<?php
-
-namespace Stack;
-
-use Symfony\Component\HttpFoundation\Request;
-use Symfony\Component\HttpFoundation\Response;
-use Symfony\Component\HttpKernel\HttpKernelInterface;
-use Symfony\Component\HttpKernel\TerminableInterface;
-
-class StackedHttpKernelTest extends \PHPUnit_Framework_TestCase
-{
-    /** @test */
-    public function handleShouldDelegateToApp()
-    {
-        $app = $this->getHttpKernelMock(new Response('ok'));
-        $kernel = new StackedHttpKernel($app, array($app));
-
-        $request = Request::create('/');
-        $response = $kernel->handle($request);
-
-        $this->assertSame('ok', $response->getContent());
-    }
-
-    /** @test */
-    public function handleShouldStillDelegateToAppWithMiddlewares()
-    {
-        $app = $this->getHttpKernelMock(new Response('ok'));
-        $bar = $this->getHttpKernelMock(new Response('bar'));
-        $foo = $this->getHttpKernelMock(new Response('foo'));
-        $kernel = new StackedHttpKernel($app, array($foo, $bar, $app));
-
-        $request = Request::create('/');
-        $response = $kernel->handle($request);
-
-        $this->assertSame('ok', $response->getContent());
-    }
-
-    /** @test */
-    public function terminateShouldDelegateToMiddlewares()
-    {
-        $first  = new TerminableKernelSpy();
-        $second = new TerminableKernelSpy($first);
-        $third  = new KernelSpy($second);
-        $fourth = new TerminableKernelSpy($third);
-        $fifth  = new TerminableKernelSpy($fourth);
-
-        $kernel = new StackedHttpKernel($fifth, $middlewares = array($fifth, $fourth, $third, $second, $first));
-
-        $request = Request::create('/');
-        $response = $kernel->handle($request);
-        $kernel->terminate($request, $response);
-
-        $this->assertTerminablesCalledOnce($middlewares);
-    }
-
-    private function assertTerminablesCalledOnce(array $middlewares)
-    {
-        foreach ($middlewares as $kernel) {
-            if ($kernel instanceof TerminableInterface) {
-                $this->assertEquals(1, $kernel->terminateCallCount(), "Terminate was called {$kernel->terminateCallCount()} times");
-            }
-        }
-    }
-
-    private function getHttpKernelMock(Response $response)
-    {
-        $app = $this->getMock('Symfony\Component\HttpKernel\HttpKernelInterface');
-        $app->expects($this->any())
-            ->method('handle')
-            ->with($this->isInstanceOf('Symfony\Component\HttpFoundation\Request'))
-            ->will($this->returnValue($response));
-
-        return $app;
-    }
-
-    private function getTerminableMock(Response $response = null)
-    {
-        $app = $this->getMock('Stack\TerminableHttpKernel');
-        if ($response) {
-            $app->expects($this->any())
-                ->method('handle')
-                ->with($this->isInstanceOf('Symfony\Component\HttpFoundation\Request'))
-                ->will($this->returnValue($response));
-        }
-        $app->expects($this->once())
-            ->method('terminate')
-            ->with(
-                $this->isInstanceOf('Symfony\Component\HttpFoundation\Request'),
-                $this->isInstanceOf('Symfony\Component\HttpFoundation\Response')
-            );
-
-        return $app;
-    }
-
-    private function getDelegatingTerminableMock(TerminableInterface $next)
-    {
-        $app = $this->getMock('Stack\TerminableHttpKernel');
-        $app->expects($this->once())
-            ->method('terminate')
-            ->with(
-                $this->isInstanceOf('Symfony\Component\HttpFoundation\Request'),
-                $this->isInstanceOf('Symfony\Component\HttpFoundation\Response')
-            )
-            ->will($this->returnCallback(function ($request, $response) use ($next) {
-                $next->terminate($request, $response);
-            }));
-
-        return $app;
-    }
-}
-
-class KernelSpy implements HttpKernelInterface
-{
-    private $handleCallCount = 0;
-
-    public function __construct(HttpKernelInterface $kernel = null)
-    {
-        $this->kernel = $kernel;
-    }
-
-    public function handle(Request $request, $type = HttpKernelInterface::MASTER_REQUEST, $catch = true)
-    {
-        $this->handleCallCount++;
-
-        if ($this->kernel) {
-            return $this->kernel->handle($request, $type, $catch);
-        }
-
-        return new Response('OK');
-    }
-
-    public function handleCallCount()
-    {
-        return $this->handleCallCount;
-    }
-}
-
-class TerminableKernelSpy extends KernelSpy implements TerminableInterface
-{
-    private $terminateCallCount = 0;
-
-    public function terminate(Request $request, Response $response)
-    {
-        $this->terminateCallCount++;
-
-        if ($this->kernel && $this->kernel instanceof TerminableInterface) {
-            return $this->kernel->terminate($request, $response);
-        }
-    }
-
-    public function terminateCallCount()
-    {
-        return $this->terminateCallCount;
-    }
-}
diff --git a/vendor/symfony-cmf/routing/Test/CmfUnitTestCase.php b/vendor/symfony-cmf/routing/Test/CmfUnitTestCase.php
deleted file mode 100644
index f0e9ea1..0000000
--- a/vendor/symfony-cmf/routing/Test/CmfUnitTestCase.php
+++ /dev/null
@@ -1,23 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony CMF package.
- *
- * (c) 2011-2014 Symfony CMF
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Cmf\Component\Routing\Test;
-
-class CmfUnitTestCase extends \PHPUnit_Framework_TestCase
-{
-    protected function buildMock($class, array $methods = array())
-    {
-        return $this->getMockBuilder($class)
-                ->disableOriginalConstructor()
-                ->setMethods($methods)
-                ->getMock();
-    }
-}
diff --git a/vendor/symfony-cmf/routing/Tests/Candidates/CandidatesTest.php b/vendor/symfony-cmf/routing/Tests/Candidates/CandidatesTest.php
deleted file mode 100644
index 322c052..0000000
--- a/vendor/symfony-cmf/routing/Tests/Candidates/CandidatesTest.php
+++ /dev/null
@@ -1,105 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony CMF package.
- *
- * (c) 2011-2013 Symfony CMF
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Cmf\Component\Routing\Tests\Candidates;
-
-use Symfony\Cmf\Component\Routing\Candidates\Candidates;
-use Symfony\Component\HttpFoundation\Request;
-
-class CandidatesTest extends \PHPUnit_Framework_Testcase
-{
-    /**
-     * Everything is a candidate
-     */
-    public function testIsCandidate()
-    {
-        $candidates = new Candidates();
-        $this->assertTrue($candidates->isCandidate('/routes'));
-        $this->assertTrue($candidates->isCandidate('/routes/my/path'));
-    }
-
-    /**
-     * Nothing should be called on the query builder
-     */
-    public function testRestrictQuery()
-    {
-        $candidates = new Candidates();
-        $candidates->restrictQuery(null);
-    }
-
-    public function testGetCandidates()
-    {
-        $request = Request::create('/my/path.html');
-
-        $candidates = new Candidates();
-        $paths = $candidates->getCandidates($request);
-
-        $this->assertEquals(
-            array(
-                '/my/path.html',
-                '/my/path',
-                '/my',
-                '/',
-            ),
-            $paths
-        );
-    }
-
-    public function testGetCandidatesLocales()
-    {
-        $candidates = new Candidates(array('de', 'fr'));
-
-        $request = Request::create('/fr/path.html');
-        $paths = $candidates->getCandidates($request);
-
-        $this->assertEquals(
-            array(
-                '/fr/path.html',
-                '/fr/path',
-                '/fr',
-                '/',
-                '/path.html',
-                '/path'
-            ),
-            $paths
-        );
-
-        $request = Request::create('/it/path.html');
-        $paths = $candidates->getCandidates($request);
-
-        $this->assertEquals(
-            array(
-                '/it/path.html',
-                '/it/path',
-                '/it',
-                '/',
-            ),
-            $paths
-        );
-    }
-
-    public function testGetCandidatesLimit()
-    {
-        $candidates = new Candidates(array(), 1);
-
-        $request = Request::create('/my/path/is/deep.html');
-
-        $paths = $candidates->getCandidates($request);
-
-        $this->assertEquals(
-            array(
-                '/my/path/is/deep.html',
-                '/my/path/is/deep',
-            ),
-            $paths
-        );
-    }
-}
diff --git a/vendor/symfony-cmf/routing/Tests/DependencyInjection/Compiler/RegisterRouteEnhancersPassTest.php b/vendor/symfony-cmf/routing/Tests/DependencyInjection/Compiler/RegisterRouteEnhancersPassTest.php
deleted file mode 100644
index 0213885..0000000
--- a/vendor/symfony-cmf/routing/Tests/DependencyInjection/Compiler/RegisterRouteEnhancersPassTest.php
+++ /dev/null
@@ -1,71 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony CMF package.
- *
- * (c) 2011-2014 Symfony CMF
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Cmf\Component\Routing\Tests\DependencyInjection\Compiler;
-
-use Symfony\Cmf\Component\Routing\DependencyInjection\Compiler\RegisterRouteEnhancersPass;
-use Symfony\Component\DependencyInjection\ContainerBuilder;
-use Symfony\Component\DependencyInjection\Definition;
-
-class RegisterRouteEnhancersPassTest extends \PHPUnit_Framework_TestCase
-{
-    public function testRouteEnhancerPass()
-    {
-        $serviceIds = array(
-            'test_enhancer' => array(
-                0 => array(
-                    'id' => 'foo_enhancer'
-                )
-            ),
-        );
-
-        $definition = new Definition('router');
-        $builder = $this->getMock('Symfony\Component\DependencyInjection\ContainerBuilder');
-        $builder->expects($this->at(0))
-            ->method('hasDefinition')
-            ->with('cmf_routing.dynamic_router')
-            ->will($this->returnValue(true))
-        ;
-        $builder->expects($this->once())
-            ->method('findTaggedServiceIds')
-            ->will($this->returnValue($serviceIds))
-        ;
-        $builder->expects($this->once())
-            ->method('getDefinition')
-            ->with('cmf_routing.dynamic_router')
-            ->will($this->returnValue($definition))
-        ;
-
-        $pass = new RegisterRouteEnhancersPass();
-        $pass->process($builder);
-
-        $calls = $definition->getMethodCalls();
-        $this->assertEquals(1, count($calls));
-        $this->assertEquals('addRouteEnhancer', $calls[0][0]);
-    }
-
-    /**
-     * If there is no dynamic router defined in the container builder, nothing
-     * should be processed.
-     */
-    public function testNoDynamicRouter()
-    {
-        $builder = $this->getMock('Symfony\Component\DependencyInjection\ContainerBuilder');
-        $builder->expects($this->once())
-            ->method('hasDefinition')
-            ->with('cmf_routing.dynamic_router')
-            ->will($this->returnValue(false))
-        ;
-
-        $pass = new RegisterRouteEnhancersPass();
-        $pass->process($builder);
-    }
-}
diff --git a/vendor/symfony-cmf/routing/Tests/DependencyInjection/Compiler/RegisterRoutersPassTest.php b/vendor/symfony-cmf/routing/Tests/DependencyInjection/Compiler/RegisterRoutersPassTest.php
deleted file mode 100644
index f66c2d8..0000000
--- a/vendor/symfony-cmf/routing/Tests/DependencyInjection/Compiler/RegisterRoutersPassTest.php
+++ /dev/null
@@ -1,98 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony CMF package.
- *
- * (c) 2011-2014 Symfony CMF
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Cmf\Routing\Tests\DependencyInjection\Compiler;
-
-use Symfony\Cmf\Component\Routing\DependencyInjection\Compiler\RegisterRoutersPass;
-
-use Symfony\Component\DependencyInjection\Reference;
-
-class RegisterRoutersPassTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @dataProvider getValidRoutersData
-     */
-    public function testValidRouters($name, $priority = null)
-    {
-        if (!method_exists($this, 'callback')) {
-            $this->markTestSkipped('PHPUnit version too old for this test');
-        }
-        $services = array();
-        $services[$name] = array(0 => array('priority' => $priority));
-
-        $priority = $priority ?: 0;
-
-        $definition = $this->getMock('Symfony\Component\DependencyInjection\Definition');
-        $definition->expects($this->atLeastOnce())
-            ->method('addMethodCall')
-            ->with($this->equalTo('add'), $this->callback(function ($arg) use ($name, $priority) {
-                if (!$arg[0] instanceof Reference || $name !== $arg[0]->__toString()) {
-                    return false;
-                }
-
-                if ($priority !== $arg[1]) {
-                    return false;
-                }
-
-                return true;
-            }));
-
-        $builder = $this->getMock('Symfony\Component\DependencyInjection\ContainerBuilder', array('hasDefinition', 'findTaggedServiceIds', 'getDefinition'));
-        $builder->expects($this->any())
-            ->method('hasDefinition')
-            ->with('cmf_routing.router')
-            ->will($this->returnValue(true));
-
-        $builder->expects($this->atLeastOnce())
-            ->method('findTaggedServiceIds')
-            ->will($this->returnValue($services));
-
-        $builder->expects($this->atLeastOnce())
-            ->method('getDefinition')
-            ->will($this->returnValue($definition));
-
-        $registerRoutersPass = new RegisterRoutersPass();
-        $registerRoutersPass->process($builder);
-    }
-
-    public function getValidRoutersData()
-    {
-        return array(
-            array('my_router'),
-            array('my_primary_router', 99),
-            array('my_router', 0),
-        );
-    }
-
-    /**
-     * If there is no chain router defined in the container builder, nothing
-     * should be processed.
-     */
-    public function testNoChainRouter()
-    {
-        $builder = $this->getMock('Symfony\Component\DependencyInjection\ContainerBuilder', array('hasDefinition', 'findTaggedServiceIds', 'getDefinition'));
-        $builder->expects($this->once())
-            ->method('hasDefinition')
-            ->with('cmf_routing.router')
-            ->will($this->returnValue(false))
-        ;
-
-        $builder->expects($this->never())
-            ->method('findTaggedServiceIds')
-        ;
-        $builder->expects($this->never())
-            ->method('getDefinition')
-        ;
-
-        $registerRoutersPass = new RegisterRoutersPass();
-        $registerRoutersPass->process($builder);
-    }
-}
diff --git a/vendor/symfony-cmf/routing/Tests/Enhancer/FieldByClassEnhancerTest.php b/vendor/symfony-cmf/routing/Tests/Enhancer/FieldByClassEnhancerTest.php
deleted file mode 100644
index 9dc80b0..0000000
--- a/vendor/symfony-cmf/routing/Tests/Enhancer/FieldByClassEnhancerTest.php
+++ /dev/null
@@ -1,71 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony CMF package.
- *
- * (c) 2011-2014 Symfony CMF
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Cmf\Component\Routing\Tests\Enhancer;
-
-use Symfony\Component\HttpFoundation\Request;
-
-use Symfony\Cmf\Component\Routing\Test\CmfUnitTestCase;
-use Symfony\Cmf\Component\Routing\Enhancer\FieldByClassEnhancer;
-
-class FieldByClassEnhancerTest extends CmfUnitTestCase
-{
-    private $request;
-    /**
-     * @var FieldByClassEnhancer
-     */
-    private $mapper;
-    private $document;
-
-    public function setUp()
-    {
-        $this->document = $this->buildMock('Symfony\Cmf\Component\Routing\Tests\Enhancer\RouteObject');
-
-        $mapping = array('Symfony\Cmf\Component\Routing\Tests\Enhancer\RouteObject'
-                            => 'cmf_content.controller:indexAction');
-
-        $this->mapper = new FieldByClassEnhancer('_content', '_controller', $mapping);
-
-        $this->request = Request::create('/test');
-    }
-
-    public function testClassFoundInMapping()
-    {
-        // this is the mock, thus a child class to make sure we properly check with instanceof
-        $defaults = array('_content' => $this->document);
-        $expected = array(
-            '_content' => $this->document,
-            '_controller' => 'cmf_content.controller:indexAction',
-        );
-        $this->assertEquals($expected, $this->mapper->enhance($defaults, $this->request));
-    }
-
-    public function testFieldAlreadyThere()
-    {
-        $defaults = array(
-            '_content' => $this->document,
-            '_controller' => 'custom.controller:indexAction',
-        );
-        $this->assertEquals($defaults, $this->mapper->enhance($defaults, $this->request));
-    }
-
-    public function testClassNotFoundInMapping()
-    {
-        $defaults = array('_content' => $this);
-        $this->assertEquals($defaults, $this->mapper->enhance($defaults, $this->request));
-    }
-
-    public function testNoClass()
-    {
-        $defaults = array('foo' => 'bar');
-        $this->assertEquals($defaults, $this->mapper->enhance($defaults, $this->request));
-    }
-}
diff --git a/vendor/symfony-cmf/routing/Tests/Enhancer/FieldMapEnhancerTest.php b/vendor/symfony-cmf/routing/Tests/Enhancer/FieldMapEnhancerTest.php
deleted file mode 100644
index c7a902d..0000000
--- a/vendor/symfony-cmf/routing/Tests/Enhancer/FieldMapEnhancerTest.php
+++ /dev/null
@@ -1,69 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony CMF package.
- *
- * (c) 2011-2014 Symfony CMF
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Cmf\Component\Routing\Tests\Mapper;
-
-use Symfony\Component\HttpFoundation\Request;
-
-use Symfony\Cmf\Component\Routing\Test\CmfUnitTestCase;
-use Symfony\Cmf\Component\Routing\Enhancer\FieldMapEnhancer;
-
-class FieldMapEnhancerTest extends CmfUnitTestCase
-{
-    /**
-     * @var Request
-     */
-    private $request;
-
-    /**
-     * @var FieldMapEnhancer
-     */
-    private $enhancer;
-
-    public function setUp()
-    {
-        $this->request = Request::create('/test');
-        $mapping = array('static_pages' => 'cmf_content.controller:indexAction');
-
-        $this->enhancer = new FieldMapEnhancer('type', '_controller', $mapping);
-    }
-
-    public function testFieldFoundInMapping()
-    {
-        $defaults = array('type' => 'static_pages');
-        $expected = array(
-            'type' => 'static_pages',
-            '_controller' => 'cmf_content.controller:indexAction',
-        );
-        $this->assertEquals($expected, $this->enhancer->enhance($defaults, $this->request));
-    }
-
-    public function testFieldAlreadyThere()
-    {
-        $defaults = array(
-            'type' => 'static_pages',
-            '_controller' => 'custom.controller:indexAction',
-        );
-        $this->assertEquals($defaults, $this->enhancer->enhance($defaults, $this->request));
-    }
-
-    public function testNoType()
-    {
-        $defaults = array();
-        $this->assertEquals(array(), $this->enhancer->enhance($defaults, $this->request));
-    }
-
-    public function testNotFoundInMapping()
-    {
-        $defaults = array('type' => 'unknown_route');
-        $this->assertEquals($defaults, $this->enhancer->enhance($defaults, $this->request));
-    }
-}
diff --git a/vendor/symfony-cmf/routing/Tests/Enhancer/FieldPresenceEnhancerTest.php b/vendor/symfony-cmf/routing/Tests/Enhancer/FieldPresenceEnhancerTest.php
deleted file mode 100644
index 8a2b754..0000000
--- a/vendor/symfony-cmf/routing/Tests/Enhancer/FieldPresenceEnhancerTest.php
+++ /dev/null
@@ -1,71 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony CMF package.
- *
- * (c) 2011-2014 Symfony CMF
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Cmf\Component\Routing\Tests\Enhancer;
-
-use Symfony\Component\HttpFoundation\Request;
-
-use Symfony\Cmf\Component\Routing\Enhancer\FieldPresenceEnhancer;
-
-use Symfony\Cmf\Component\Routing\Test\CmfUnitTestCase;
-
-class FieldPresenceEnhancerTest extends CmfUnitTestCase
-{
-    /**
-     * @var FieldPresenceEnhancer
-     */
-    private $mapper;
-    private $request;
-
-    public function setUp()
-    {
-        $this->mapper = new FieldPresenceEnhancer('_template', '_controller', 'cmf_content.controller:indexAction');
-
-        $this->request = Request::create('/test');
-    }
-
-    public function testHasTemplate()
-    {
-        $defaults = array('_template' => 'Bundle:Topic:template.html.twig');
-        $expected = array(
-            '_template' => 'Bundle:Topic:template.html.twig',
-            '_controller' => 'cmf_content.controller:indexAction',
-        );
-        $this->assertEquals($expected, $this->mapper->enhance($defaults, $this->request));
-    }
-
-    public function testFieldAlreadyThere()
-    {
-        $defaults = array(
-            '_template' => 'Bundle:Topic:template.html.twig',
-            '_controller' => 'custom.controller:indexAction',
-        );
-        $this->assertEquals($defaults, $this->mapper->enhance($defaults, $this->request));
-    }
-
-    public function testHasNoSourceValue()
-    {
-        $defaults = array('foo' => 'bar');
-        $this->assertEquals($defaults, $this->mapper->enhance($defaults, $this->request));
-    }
-
-    public function testHasNoSource()
-    {
-        $this->mapper = new FieldPresenceEnhancer(null, '_controller', 'cmf_content.controller:indexAction');
-
-        $defaults = array('foo' => 'bar');
-        $expected = array(
-            'foo' => 'bar',
-            '_controller' => 'cmf_content.controller:indexAction',
-        );
-        $this->assertEquals($expected, $this->mapper->enhance($defaults, $this->request));
-    }
-}
diff --git a/vendor/symfony-cmf/routing/Tests/Enhancer/RouteContentEnhancerTest.php b/vendor/symfony-cmf/routing/Tests/Enhancer/RouteContentEnhancerTest.php
deleted file mode 100644
index 06b0911..0000000
--- a/vendor/symfony-cmf/routing/Tests/Enhancer/RouteContentEnhancerTest.php
+++ /dev/null
@@ -1,87 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony CMF package.
- *
- * (c) 2011-2014 Symfony CMF
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Cmf\Component\Routing\Tests\Enhancer;
-
-use Symfony\Component\HttpFoundation\Request;
-
-use Symfony\Cmf\Component\Routing\Enhancer\RouteContentEnhancer;
-use Symfony\Cmf\Component\Routing\RouteObjectInterface;
-
-use Symfony\Cmf\Component\Routing\Test\CmfUnitTestCase;
-
-class RouteContentEnhancerTest extends CmfUnitTestCase
-{
-    /**
-     * @var RouteContentEnhancer
-     */
-    private $mapper;
-    private $document;
-    private $request;
-
-    public function setUp()
-    {
-        $this->document = $this->buildMock('Symfony\Cmf\Component\Routing\Tests\Enhancer\RouteObject',
-                                            array('getContent', 'getRouteDefaults', 'getUrl'));
-
-        $this->mapper = new RouteContentEnhancer(RouteObjectInterface::ROUTE_OBJECT, '_content');
-
-        $this->request = Request::create('/test');
-    }
-
-    public function testContent()
-    {
-        $targetDocument = new TargetDocument();
-        $this->document->expects($this->once())
-            ->method('getContent')
-            ->will($this->returnValue($targetDocument));
-
-        $defaults = array(RouteObjectInterface::ROUTE_OBJECT => $this->document);
-        $expected = array(RouteObjectInterface::ROUTE_OBJECT => $this->document, '_content' => $targetDocument);
-
-        $this->assertEquals($expected, $this->mapper->enhance($defaults, $this->request));
-    }
-
-    public function testFieldAlreadyThere()
-    {
-        $this->document->expects($this->never())
-            ->method('getContent')
-        ;
-
-        $defaults = array(RouteObjectInterface::ROUTE_OBJECT => $this->document, '_content' => 'foo');
-
-        $this->assertEquals($defaults, $this->mapper->enhance($defaults, $this->request));
-    }
-
-    public function testNoContent()
-    {
-        $this->document->expects($this->once())
-            ->method('getContent')
-            ->will($this->returnValue(null));
-
-        $defaults = array(RouteObjectInterface::ROUTE_OBJECT => $this->document);
-        $this->assertEquals($defaults, $this->mapper->enhance($defaults, $this->request));
-    }
-
-    public function testNoCmfRoute()
-    {
-        $defaults = array(RouteObjectInterface::ROUTE_OBJECT => $this->buildMock('Symfony\Component\Routing\Route'));
-        $this->assertEquals($defaults, $this->mapper->enhance($defaults, $this->request));
-    }
-}
-
-class TargetDocument
-{
-}
-
-class UnknownDocument
-{
-}
diff --git a/vendor/symfony-cmf/routing/Tests/Enhancer/RouteObject.php b/vendor/symfony-cmf/routing/Tests/Enhancer/RouteObject.php
deleted file mode 100644
index 752b8e0..0000000
--- a/vendor/symfony-cmf/routing/Tests/Enhancer/RouteObject.php
+++ /dev/null
@@ -1,27 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony CMF package.
- *
- * (c) 2011-2014 Symfony CMF
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Cmf\Component\Routing\Tests\Enhancer;
-
-use Symfony\Component\Routing\Route;
-use Symfony\Cmf\Component\Routing\RouteObjectInterface;
-
-/**
- * Empty abstract class to be able to mock an object that both extends Route
- * and implements RouteObjectInterface
- */
-abstract class RouteObject extends Route implements RouteObjectInterface
-{
-    public function getRouteKey()
-    {
-        return null;
-    }
-}
diff --git a/vendor/symfony-cmf/routing/Tests/NestedMatcher/NestedMatcherTest.php b/vendor/symfony-cmf/routing/Tests/NestedMatcher/NestedMatcherTest.php
deleted file mode 100644
index 1f9f06c..0000000
--- a/vendor/symfony-cmf/routing/Tests/NestedMatcher/NestedMatcherTest.php
+++ /dev/null
@@ -1,139 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony CMF package.
- *
- * (c) 2011-2014 Symfony CMF
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Cmf\Component\Routing\Tests\NestedMatcher;
-
-use Symfony\Component\HttpFoundation\Request;
-
-use Symfony\Component\Routing\RouteCollection;
-use Symfony\Component\Routing\Route;
-use Symfony\Component\Routing\Exception\ResourceNotFoundException;
-
-use Symfony\Cmf\Component\Routing\NestedMatcher\NestedMatcher;
-
-use Symfony\Cmf\Component\Routing\Test\CmfUnitTestCase;
-
-class NestedMatcherTest extends CmfUnitTestCase
-{
-    private $provider;
-    private $routeFilter1;
-    private $routeFilter2;
-    private $finalMatcher;
-
-    public function setUp()
-    {
-        $this->provider = $this->buildMock('Symfony\Cmf\Component\Routing\RouteProviderInterface');
-        $this->routeFilter1 = $this->buildMock('Symfony\Cmf\Component\Routing\NestedMatcher\RouteFilterInterface');
-        $this->routeFilter2 = $this->buildMock('Symfony\Cmf\Component\Routing\NestedMatcher\RouteFilterInterface');
-        $this->finalMatcher = $this->buildMock('Symfony\Cmf\Component\Routing\NestedMatcher\FinalMatcherInterface');
-    }
-
-    public function testNestedMatcher()
-    {
-        $request = Request::create('/path/one');
-        $routeCollection = new RouteCollection();
-        $route = $this->getMockBuilder('Symfony\Component\Routing\Route')->disableOriginalConstructor()->getMock();
-        $routeCollection->add('route', $route);
-
-        $this->provider->expects($this->once())
-            ->method('getRouteCollectionForRequest')
-            ->with($request)
-            ->will($this->returnValue($routeCollection))
-        ;
-        $this->routeFilter1->expects($this->once())
-            ->method('filter')
-            ->with($routeCollection, $request)
-            ->will($this->returnValue($routeCollection))
-        ;
-        $this->routeFilter2->expects($this->once())
-            ->method('filter')
-            ->with($routeCollection, $request)
-            ->will($this->returnValue($routeCollection))
-        ;
-        $this->finalMatcher->expects($this->once())
-            ->method('finalMatch')
-            ->with($routeCollection, $request)
-            ->will($this->returnValue(array('foo' => 'bar')))
-        ;
-
-        $matcher = new NestedMatcher($this->provider, $this->finalMatcher);
-        $matcher->addRouteFilter($this->routeFilter1);
-        $matcher->addRouteFilter($this->routeFilter2);
-
-        $attributes = $matcher->matchRequest($request);
-
-        $this->assertEquals(array('foo' => 'bar'), $attributes);
-    }
-
-    /**
-     * Test priorities and exception handling
-     */
-    public function testNestedMatcherPriority()
-    {
-        $request = Request::create('/path/one');
-        $routeCollection = new RouteCollection();
-        $route = $this->getMockBuilder('Symfony\Component\Routing\Route')->disableOriginalConstructor()->getMock();
-        $routeCollection->add('route', $route);
-
-        $wrongProvider = $this->buildMock('Symfony\Cmf\Component\Routing\RouteProviderInterface');
-        $wrongProvider->expects($this->never())
-            ->method('getRouteCollectionForRequest')
-        ;
-        $this->provider->expects($this->once())
-            ->method('getRouteCollectionForRequest')
-            ->with($request)
-            ->will($this->returnValue($routeCollection))
-        ;
-        $this->routeFilter1->expects($this->once())
-            ->method('filter')
-            ->with($routeCollection, $request)
-            ->will($this->throwException(new ResourceNotFoundException()))
-        ;
-        $this->routeFilter2->expects($this->never())
-            ->method('filter')
-        ;
-        $this->finalMatcher->expects($this->never())
-            ->method('finalMatch')
-        ;
-
-        $matcher = new NestedMatcher($wrongProvider, $this->finalMatcher);
-        $matcher->setRouteProvider($this->provider);
-        $matcher->addRouteFilter($this->routeFilter2, 10);
-        $matcher->addRouteFilter($this->routeFilter1, 20);
-
-        try {
-            $matcher->matchRequest($request);
-            fail('nested matcher is eating exception');
-        } catch (ResourceNotFoundException $e) {
-            // expected
-        }
-    }
-
-    public function testProviderNoMatch()
-    {
-        $request = Request::create('/path/one');
-        $routeCollection = new RouteCollection();
-        $this->provider->expects($this->once())
-            ->method('getRouteCollectionForRequest')
-            ->with($request)
-            ->will($this->returnValue($routeCollection))
-        ;
-        $this->finalMatcher->expects($this->never())
-            ->method('finalMatch')
-        ;
-
-        $matcher = new NestedMatcher($this->provider, $this->finalMatcher);
-
-        $this->setExpectedException('Symfony\Component\Routing\Exception\ResourceNotFoundException');
-        $matcher->matchRequest($request);
-    }
-
-}
diff --git a/vendor/symfony-cmf/routing/Tests/NestedMatcher/UrlMatcherTest.php b/vendor/symfony-cmf/routing/Tests/NestedMatcher/UrlMatcherTest.php
deleted file mode 100644
index d5b5635..0000000
--- a/vendor/symfony-cmf/routing/Tests/NestedMatcher/UrlMatcherTest.php
+++ /dev/null
@@ -1,152 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony CMF package.
- *
- * (c) 2011-2014 Symfony CMF
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Cmf\Component\Routing\Tests\NestedMatcher;
-
-use Symfony\Component\HttpFoundation\Request;
-
-use Symfony\Component\Routing\RouteCollection;
-use Symfony\Component\Routing\Route;
-use Symfony\Cmf\Component\Routing\NestedMatcher\UrlMatcher;
-
-use Symfony\Cmf\Component\Routing\RouteObjectInterface;
-
-use Symfony\Cmf\Component\Routing\Test\CmfUnitTestCase;
-
-class UrlMatcherTest extends CmfUnitTestCase
-{
-    protected $routeDocument;
-    protected $routeCompiled;
-    protected $matcher;
-    protected $context;
-    protected $request;
-
-    protected $url = '/foo/bar';
-
-    public function setUp()
-    {
-        $this->routeDocument = $this->buildMock('Symfony\Cmf\Component\Routing\Tests\Routing\RouteMock', array('getDefaults', 'getRouteKey', 'compile'));
-        $this->routeCompiled = $this->buildMock('Symfony\Component\Routing\CompiledRoute');
-
-        $this->context = $this->buildMock('Symfony\Component\Routing\RequestContext');
-        $this->request = Request::create($this->url);
-
-        $this->matcher = new UrlMatcher(new RouteCollection(), $this->context);
-    }
-
-    public function testMatchRouteKey()
-    {
-        $this->doTestMatchRouteKey($this->url);
-    }
-
-    public function testMatchNoKey()
-    {
-        $this->doTestMatchRouteKey(null);
-    }
-
-    public function doTestMatchRouteKey($routeKey)
-    {
-        $this->routeCompiled->expects($this->atLeastOnce())
-            ->method('getStaticPrefix')
-            ->will($this->returnValue($this->url))
-        ;
-        $this->routeCompiled->expects($this->atLeastOnce())
-            ->method('getRegex')
-            ->will($this->returnValue('#'.str_replace('/', '\/', $this->url).'#'))
-        ;
-        $this->routeDocument->expects($this->atLeastOnce())
-            ->method('compile')
-            ->will($this->returnValue($this->routeCompiled))
-        ;
-        $this->routeDocument->expects($this->atLeastOnce())
-            ->method('getRouteKey')
-            ->will($this->returnValue($routeKey))
-        ;
-        $this->routeDocument->expects($this->atLeastOnce())
-            ->method('getDefaults')
-            ->will($this->returnValue(array('foo' => 'bar')))
-        ;
-
-        $mockCompiled = $this->buildMock('Symfony\Component\Routing\CompiledRoute');
-        $mockCompiled->expects($this->any())
-            ->method('getStaticPrefix')
-            ->will($this->returnValue('/no/match'))
-        ;
-        $mockRoute = $this->getMockBuilder('Symfony\Component\Routing\Route')->disableOriginalConstructor()->getMock();
-        $mockRoute->expects($this->any())
-            ->method('compile')
-            ->will($this->returnValue($mockCompiled))
-        ;
-        $routeCollection = new RouteCollection();
-        $routeCollection->add('some', $mockRoute);
-        $routeCollection->add('_company_more', $this->routeDocument);
-        $routeCollection->add('other', $mockRoute);
-
-        $results = $this->matcher->finalMatch($routeCollection, $this->request);
-
-        $expected = array(
-            RouteObjectInterface::ROUTE_NAME => ($routeKey) ? $routeKey : '_company_more',
-            RouteObjectInterface::ROUTE_OBJECT => $this->routeDocument,
-            'foo' => 'bar',
-        );
-
-        $this->assertEquals($expected, $results);
-    }
-
-    public function testMatchNoRouteObject()
-    {
-        $this->routeCompiled->expects($this->atLeastOnce())
-            ->method('getStaticPrefix')
-            ->will($this->returnValue($this->url))
-        ;
-        $this->routeCompiled->expects($this->atLeastOnce())
-            ->method('getRegex')
-            ->will($this->returnValue('#'.str_replace('/', '\/', $this->url).'#'))
-        ;
-        $this->routeDocument = $this->getMockBuilder('Symfony\Component\Routing\Route')->disableOriginalConstructor()->getMock();
-        $this->routeDocument->expects($this->atLeastOnce())
-            ->method('compile')
-            ->will($this->returnValue($this->routeCompiled))
-        ;
-        $this->routeDocument->expects($this->never())
-            ->method('getRouteKey')
-        ;
-        $this->routeDocument->expects($this->atLeastOnce())
-            ->method('getDefaults')
-            ->will($this->returnValue(array('foo' => 'bar')))
-        ;
-
-        $mockCompiled = $this->buildMock('Symfony\Component\Routing\CompiledRoute');
-        $mockCompiled->expects($this->any())
-            ->method('getStaticPrefix')
-            ->will($this->returnValue('/no/match'))
-        ;
-        $mockRoute = $this->getMockBuilder('Symfony\Component\Routing\Route')->disableOriginalConstructor()->getMock();
-        $mockRoute->expects($this->any())
-            ->method('compile')
-            ->will($this->returnValue($mockCompiled))
-        ;
-        $routeCollection = new RouteCollection();
-        $routeCollection->add('some', $mockRoute);
-        $routeCollection->add('_company_more', $this->routeDocument);
-        $routeCollection->add('other', $mockRoute);
-
-        $results = $this->matcher->finalMatch($routeCollection, $this->request);
-
-        $expected = array(
-            RouteObjectInterface::ROUTE_NAME => '_company_more',
-            RouteObjectInterface::ROUTE_OBJECT => $this->routeDocument,
-            'foo' => 'bar',
-        );
-
-        $this->assertEquals($expected, $results);
-    }
-}
diff --git a/vendor/symfony-cmf/routing/Tests/Routing/ChainRouterTest.php b/vendor/symfony-cmf/routing/Tests/Routing/ChainRouterTest.php
deleted file mode 100644
index e8b8e3c..0000000
--- a/vendor/symfony-cmf/routing/Tests/Routing/ChainRouterTest.php
+++ /dev/null
@@ -1,730 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony CMF package.
- *
- * (c) 2011-2014 Symfony CMF
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Cmf\Component\Routing\Tests\Routing;
-
-use Symfony\Cmf\Component\Routing\VersatileGeneratorInterface;
-use Symfony\Component\HttpKernel\CacheWarmer\WarmableInterface;
-use Symfony\Component\Routing\Exception\MethodNotAllowedException;
-use Symfony\Component\Routing\Exception\ResourceNotFoundException;
-use Symfony\Component\Routing\Exception\RouteNotFoundException;
-use Symfony\Component\Routing\Matcher\RequestMatcherInterface;
-use Symfony\Component\Routing\RequestContext;
-use Symfony\Component\Routing\RouteCollection;
-use Symfony\Component\HttpFoundation\Request;
-
-use Symfony\Cmf\Component\Routing\ChainRouter;
-use Symfony\Cmf\Component\Routing\Test\CmfUnitTestCase;
-use Symfony\Component\Routing\RouterInterface;
-
-class ChainRouterTest extends CmfUnitTestCase
-{
-    /**
-     * @var ChainRouter
-     */
-    private $router;
-    /**
-     * @var RequestContext|\PHPUnit_Framework_MockObject_MockObject
-     */
-    private $context;
-
-    public function setUp()
-    {
-        $this->router = new ChainRouter($this->getMock('Psr\Log\LoggerInterface'));
-        $this->context = $this->getMock('Symfony\Component\Routing\RequestContext');
-    }
-
-    public function testPriority()
-    {
-        $this->assertEquals(array(), $this->router->all());
-
-        list($low, $high) = $this->createRouterMocks();
-
-        $this->router->add($low, 10);
-        $this->router->add($high, 100);
-
-        $this->assertEquals(array(
-            $high,
-            $low,
-        ), $this->router->all());
-    }
-
-    /**
-     * Routers are supposed to be sorted only once.
-     * This test will check that by trying to get all routers several times.
-     *
-     * @covers \Symfony\Cmf\Component\Routing\ChainRouter::sortRouters
-     * @covers \Symfony\Cmf\Component\Routing\ChainRouter::all
-     */
-    public function testSortRouters()
-    {
-        list($low, $medium, $high) = $this->createRouterMocks();
-        // We're using a mock here and not $this->router because we need to ensure that the sorting operation is done only once.
-        /** @var $router ChainRouter|\PHPUnit_Framework_MockObject_MockObject */
-        $router = $this->buildMock('Symfony\Cmf\Component\Routing\ChainRouter', array('sortRouters'));
-        $router
-            ->expects($this->once())
-            ->method('sortRouters')
-            ->will(
-                $this->returnValue(
-                    array($high, $medium, $low)
-                )
-            )
-        ;
-
-        $router->add($low, 10);
-        $router->add($medium, 50);
-        $router->add($high, 100);
-        $expectedSortedRouters = array($high, $medium, $low);
-        // Let's get all routers 5 times, we should only sort once.
-        for ($i = 0; $i < 5; ++$i) {
-            $this->assertSame($expectedSortedRouters, $router->all());
-        }
-    }
-
-    /**
-     * This test ensures that if a router is being added on the fly, the sorting is reset.
-     *
-     * @covers \Symfony\Cmf\Component\Routing\ChainRouter::sortRouters
-     * @covers \Symfony\Cmf\Component\Routing\ChainRouter::all
-     * @covers \Symfony\Cmf\Component\Routing\ChainRouter::add
-     */
-    public function testReSortRouters()
-    {
-        list($low, $medium, $high) = $this->createRouterMocks();
-        $highest = clone $high;
-        // We're using a mock here and not $this->router because we need to ensure that the sorting operation is done only once.
-        /** @var $router ChainRouter|\PHPUnit_Framework_MockObject_MockObject */
-        $router = $this->buildMock('Symfony\Cmf\Component\Routing\ChainRouter', array('sortRouters'));
-        $router
-            ->expects($this->at(0))
-            ->method('sortRouters')
-            ->will(
-                $this->returnValue(
-                    array($high, $medium, $low)
-                )
-            )
-        ;
-        // The second time sortRouters() is called, we're supposed to get the newly added router ($highest)
-        $router
-            ->expects($this->at(1))
-            ->method('sortRouters')
-            ->will(
-                $this->returnValue(
-                    array($highest, $high, $medium, $low)
-                )
-            )
-        ;
-
-        $router->add($low, 10);
-        $router->add($medium, 50);
-        $router->add($high, 100);
-        $this->assertSame(array($high, $medium, $low), $router->all());
-
-        // Now adding another router on the fly, sorting must have been reset
-        $router->add($highest, 101);
-        $this->assertSame(array($highest, $high, $medium, $low), $router->all());
-    }
-
-    /**
-     * context must be propagated to chained routers and be stored locally
-     */
-    public function testContext()
-    {
-        list($low, $high) = $this->createRouterMocks();
-
-        $low
-            ->expects($this->once())
-            ->method('setContext')
-            ->with($this->context)
-        ;
-
-        $high
-            ->expects($this->once())
-            ->method('setContext')
-            ->with($this->context)
-        ;
-
-        $this->router->add($low, 10);
-        $this->router->add($high, 100);
-
-        $this->router->setContext($this->context);
-        $this->assertSame($this->context, $this->router->getContext());
-    }
-
-    /**
-     * context must be propagated also when routers are added after context is set
-     */
-    public function testContextOrder()
-    {
-        list($low, $high) = $this->createRouterMocks();
-
-        $low
-            ->expects($this->once())
-            ->method('setContext')
-            ->with($this->context)
-        ;
-
-        $high
-            ->expects($this->once())
-            ->method('setContext')
-            ->with($this->context)
-        ;
-
-        $this->router->setContext($this->context);
-
-        $this->router->add($low, 10);
-        $this->router->add($high, 100);
-
-        $this->router->all();
-
-        $this->assertSame($this->context, $this->router->getContext());
-    }
-
-    /**
-     * The first usable match is used, no further routers are queried once a match is found
-     */
-    public function testMatch()
-    {
-        $url = '/test';
-        list($lower, $low, $high) = $this->createRouterMocks();
-
-        $high
-            ->expects($this->once())
-            ->method('match')
-            ->with($url)
-            ->will($this->throwException(new \Symfony\Component\Routing\Exception\ResourceNotFoundException))
-        ;
-        $low
-            ->expects($this->once())
-            ->method('match')
-            ->with($url)
-            ->will($this->returnValue(array('test')))
-        ;
-        $lower
-            ->expects($this->never())
-            ->method('match');
-        $this->router->add($lower, 5);
-        $this->router->add($low, 10);
-        $this->router->add($high, 100);
-
-        $result = $this->router->match('/test');
-        $this->assertEquals(array('test'), $result);
-    }
-
-    /**
-     * The first usable match is used, no further routers are queried once a match is found
-     */
-    public function testMatchRequest()
-    {
-        $url = '/test';
-        list($lower, $low, $high) = $this->createRouterMocks();
-
-        $highest = $this->getMock('Symfony\Cmf\Component\Routing\Tests\Routing\RequestMatcher');
-
-        $request = Request::create('/test');
-
-        $highest
-            ->expects($this->once())
-            ->method('matchRequest')
-            ->will($this->throwException(new \Symfony\Component\Routing\Exception\ResourceNotFoundException))
-        ;
-        $high
-            ->expects($this->once())
-            ->method('match')
-            ->with($url)
-            ->will($this->throwException(new \Symfony\Component\Routing\Exception\ResourceNotFoundException))
-        ;
-        $low
-            ->expects($this->once())
-            ->method('match')
-            ->with($url)
-            ->will($this->returnValue(array('test')))
-        ;
-        $lower
-            ->expects($this->never())
-            ->method('match')
-        ;
-
-        $this->router->add($lower, 5);
-        $this->router->add($low, 10);
-        $this->router->add($high, 100);
-        $this->router->add($highest, 200);
-
-        $result = $this->router->matchRequest($request);
-        $this->assertEquals(array('test'), $result);
-    }
-
-    /**
-     * Call match on ChainRouter that has RequestMatcher in the chain.
-     */
-    public function testMatchWithRequestMatchers()
-    {
-        $url = '/test';
-
-        list($low) = $this->createRouterMocks();
-
-        $high = $this->getMock('Symfony\Cmf\Component\Routing\Tests\Routing\RequestMatcher');
-
-        $high
-            ->expects($this->once())
-            ->method('matchRequest')
-            ->with($this->callback(function (Request $r) use ($url) {
-                return $r->getPathInfo() === $url;
-            }))
-            ->will($this->throwException(new \Symfony\Component\Routing\Exception\ResourceNotFoundException))
-        ;
-        $low
-            ->expects($this->once())
-            ->method('match')
-            ->with($url)
-            ->will($this->returnValue(array('test')))
-        ;
-
-        $this->router->add($low, 10);
-        $this->router->add($high, 20);
-
-        $result = $this->router->match($url);
-        $this->assertEquals(array('test'), $result);
-    }
-
-    /**
-     * If there is a method not allowed but another router matches, that one is used
-     */
-    public function testMatchAndNotAllowed()
-    {
-        $url = '/test';
-        list($low, $high) = $this->createRouterMocks();
-
-        $high
-            ->expects($this->once())
-            ->method('match')
-            ->with($url)
-            ->will($this->throwException(new \Symfony\Component\Routing\Exception\MethodNotAllowedException(array())))
-        ;
-        $low
-            ->expects($this->once())
-            ->method('match')
-            ->with($url)
-            ->will($this->returnValue(array('test')))
-        ;
-        $this->router->add($low, 10);
-        $this->router->add($high, 100);
-
-        $result = $this->router->match('/test');
-        $this->assertEquals(array('test'), $result);
-    }
-
-    /**
-     * If there is a method not allowed but another router matches, that one is used
-     */
-    public function testMatchRequestAndNotAllowed()
-    {
-        $url = '/test';
-        list($low, $high) = $this->createRouterMocks();
-
-        $high
-            ->expects($this->once())
-            ->method('match')
-            ->with($url)
-            ->will($this->throwException(new \Symfony\Component\Routing\Exception\MethodNotAllowedException(array())))
-        ;
-        $low
-            ->expects($this->once())
-            ->method('match')
-            ->with($url)
-            ->will($this->returnValue(array('test')))
-        ;
-        $this->router->add($low, 10);
-        $this->router->add($high, 100);
-
-        $result = $this->router->matchRequest(Request::create('/test'));
-        $this->assertEquals(array('test'), $result);
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Routing\Exception\ResourceNotFoundException
-     */
-    public function testMatchNotFound()
-    {
-        $url = '/test';
-        list($low, $high) = $this->createRouterMocks();
-
-        $high
-            ->expects($this->once())
-            ->method('match')
-            ->with($url)
-            ->will($this->throwException(new ResourceNotFoundException()))
-        ;
-        $low
-            ->expects($this->once())
-            ->method('match')
-            ->with($url)
-            ->will($this->throwException(new ResourceNotFoundException()))
-        ;
-        $this->router->add($low, 10);
-        $this->router->add($high, 100);
-
-        $this->router->match('/test');
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Routing\Exception\ResourceNotFoundException
-     */
-    public function testMatchRequestNotFound()
-    {
-        $url = '/test';
-        list($low, $high) = $this->createRouterMocks();
-
-        $high
-            ->expects($this->once())
-            ->method('match')
-            ->with($url)
-            ->will($this->throwException(new ResourceNotFoundException()))
-        ;
-        $low
-            ->expects($this->once())
-            ->method('match')
-            ->with($url)
-            ->will($this->throwException(new ResourceNotFoundException()))
-        ;
-        $this->router->add($low, 10);
-        $this->router->add($high, 100);
-
-        $this->router->matchRequest(Request::create('/test'));
-    }
-
-    /**
-     * Call match on ChainRouter that has RequestMatcher in the chain.
-     *
-     * @expectedException \Symfony\Component\Routing\Exception\ResourceNotFoundException
-     * @expectedExceptionMessage None of the routers in the chain matched url '/test'
-     */
-    public function testMatchWithRequestMatchersNotFound()
-    {
-        $url = '/test';
-        $request = Request::create('/test');
-
-        $high = $this->getMock('Symfony\Cmf\Component\Routing\Tests\Routing\RequestMatcher');
-
-        $high
-            ->expects($this->once())
-            ->method('matchRequest')
-            ->with($request)
-            ->will($this->throwException(new \Symfony\Component\Routing\Exception\ResourceNotFoundException))
-        ;
-
-        $this->router->add($high, 20);
-
-        $this->router->match($url);
-    }
-
-    /**
-     * If any of the routers throws a not allowed exception and no other matches, we need to see this
-     *
-     * @expectedException \Symfony\Component\Routing\Exception\MethodNotAllowedException
-     */
-    public function testMatchMethodNotAllowed()
-    {
-        $url = '/test';
-        list($low, $high) = $this->createRouterMocks();
-
-        $high
-            ->expects($this->once())
-            ->method('match')
-            ->with($url)
-            ->will($this->throwException(new MethodNotAllowedException(array())))
-        ;
-        $low
-            ->expects($this->once())
-            ->method('match')
-            ->with($url)
-            ->will($this->throwException(new ResourceNotFoundException()))
-        ;
-        $this->router->add($low, 10);
-        $this->router->add($high, 100);
-
-        $this->router->match('/test');
-    }
-
-    /**
-     * If any of the routers throws a not allowed exception and no other matches, we need to see this
-     *
-     * @expectedException \Symfony\Component\Routing\Exception\MethodNotAllowedException
-     */
-    public function testMatchRequestMethodNotAllowed()
-    {
-        $url = '/test';
-        list($low, $high) = $this->createRouterMocks();
-
-        $high
-            ->expects($this->once())
-            ->method('match')
-            ->with($url)
-            ->will($this->throwException(new MethodNotAllowedException(array())))
-        ;
-        $low
-            ->expects($this->once())
-            ->method('match')
-            ->with($url)
-            ->will($this->throwException(new ResourceNotFoundException()))
-        ;
-        $this->router->add($low, 10);
-        $this->router->add($high, 100);
-
-        $this->router->matchRequest(Request::create('/test'));
-    }
-
-    public function testGenerate()
-    {
-        $url = '/test';
-        $name = 'test';
-        $parameters = array('test' => 'value');
-        list($lower, $low, $high) = $this->createRouterMocks();
-
-        $high
-            ->expects($this->once())
-            ->method('generate')
-            ->with($name, $parameters, false)
-            ->will($this->throwException(new RouteNotFoundException()))
-        ;
-        $low
-            ->expects($this->once())
-            ->method('generate')
-            ->with($name, $parameters, false)
-            ->will($this->returnValue($url))
-        ;
-        $lower
-            ->expects($this->never())
-            ->method('generate')
-        ;
-
-        $this->router->add($low, 10);
-        $this->router->add($high, 100);
-
-        $result = $this->router->generate($name, $parameters);
-        $this->assertEquals($url, $result);
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Routing\Exception\RouteNotFoundException
-     */
-    public function testGenerateNotFound()
-    {
-        $name = 'test';
-        $parameters = array('test' => 'value');
-        list($low, $high) = $this->createRouterMocks();
-
-        $high
-            ->expects($this->once())
-            ->method('generate')
-            ->with($name, $parameters, false)
-            ->will($this->throwException(new RouteNotFoundException()))
-        ;
-        $low->expects($this->once())
-            ->method('generate')
-            ->with($name, $parameters, false)
-            ->will($this->throwException(new RouteNotFoundException()))
-        ;
-        $this->router->add($low, 10);
-        $this->router->add($high, 100);
-
-        $this->router->generate($name, $parameters);
-    }
-
-    /**
-     * Route is an object but no versatile generator around to do the debug message.
-     *
-     * @expectedException \Symfony\Component\Routing\Exception\RouteNotFoundException
-     */
-    public function testGenerateObjectNotFound()
-    {
-        $name = new \stdClass();
-        $parameters = array('test' => 'value');
-
-        $defaultRouter = $this->getMock('Symfony\Component\Routing\RouterInterface');
-
-        $defaultRouter
-            ->expects($this->never())
-            ->method('generate')
-        ;
-
-        $this->router->add($defaultRouter, 200);
-
-        $this->router->generate($name, $parameters);
-    }
-
-    /**
-     * A versatile router will generate the debug message.
-     *
-     * @expectedException \Symfony\Component\Routing\Exception\RouteNotFoundException
-     */
-    public function testGenerateObjectNotFoundVersatile()
-    {
-        $name = new \stdClass();
-        $parameters = array('test' => 'value');
-
-        $chainedRouter = $this->getMock('Symfony\Cmf\Component\Routing\Tests\Routing\VersatileRouter');
-        $chainedRouter
-            ->expects($this->once())
-            ->method('supports')
-            ->will($this->returnValue(true))
-        ;
-        $chainedRouter->expects($this->once())
-            ->method('generate')
-            ->with($name, $parameters, false)
-            ->will($this->throwException(new RouteNotFoundException()))
-        ;
-        $chainedRouter->expects($this->once())
-            ->method('getRouteDebugMessage')
-            ->with($name, $parameters)
-            ->will($this->returnValue('message'))
-        ;
-
-        $this->router->add($chainedRouter, 10);
-
-        $this->router->generate($name, $parameters);
-    }
-
-    public function testGenerateObjectName()
-    {
-        $name = new \stdClass();
-        $parameters = array('test' => 'value');
-
-        $defaultRouter = $this->getMock('Symfony\Component\Routing\RouterInterface');
-        $chainedRouter = $this->getMock('Symfony\Cmf\Component\Routing\Tests\Routing\VersatileRouter');
-
-        $defaultRouter
-            ->expects($this->never())
-            ->method('generate')
-        ;
-        $chainedRouter
-            ->expects($this->once())
-            ->method('supports')
-            ->will($this->returnValue(true))
-        ;
-        $chainedRouter
-            ->expects($this->once())
-            ->method('generate')
-            ->with($name, $parameters, false)
-            ->will($this->returnValue($name))
-        ;
-
-        $this->router->add($defaultRouter, 200);
-        $this->router->add($chainedRouter, 100);
-
-        $result = $this->router->generate($name, $parameters);
-        $this->assertEquals($name, $result);
-    }
-
-    public function testWarmup()
-    {
-        $dir = 'test_dir';
-        list($low) = $this->createRouterMocks();
-
-        $low
-            ->expects($this->never())
-            ->method('warmUp')
-        ;
-        $high = $this->getMock('Symfony\Cmf\Component\Routing\Tests\Routing\WarmableRouterMock');
-        $high
-            ->expects($this->once())
-            ->method('warmUp')
-            ->with($dir)
-        ;
-
-        $this->router->add($low, 10);
-        $this->router->add($high, 100);
-
-        $this->router->warmUp($dir);
-    }
-
-    public function testRouteCollection()
-    {
-        list($low, $high) = $this->createRouterMocks();
-        $lowcol = new RouteCollection();
-        $lowcol->add('low', $this->buildMock('Symfony\Component\Routing\Route'));
-        $highcol = new RouteCollection();
-        $highcol->add('high', $this->buildMock('Symfony\Component\Routing\Route'));
-
-        $low
-            ->expects($this->once())
-            ->method('getRouteCollection')
-            ->will($this->returnValue($lowcol))
-        ;
-        $high
-            ->expects($this->once())
-            ->method('getRouteCollection')
-            ->will($this->returnValue($highcol))
-        ;
-
-        $this->router->add($low, 10);
-        $this->router->add($high, 100);
-
-        $collection = $this->router->getRouteCollection();
-        $this->assertInstanceOf('Symfony\Component\Routing\RouteCollection', $collection);
-
-        $names = array();
-        foreach ($collection->all() as $name => $route) {
-            $this->assertInstanceOf('Symfony\Component\Routing\Route', $route);
-            $names[] = $name;
-        }
-        $this->assertEquals(array('high', 'low'), $names);
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Routing\Exception\RouteNotFoundException
-     */
-    public function testSupport()
-    {
-
-        $router = $this->getMock('Symfony\Cmf\Component\Routing\Tests\Routing\VersatileRouter');
-        $router
-            ->expects($this->once())
-            ->method('supports')
-            ->will($this->returnValue(false))
-        ;
-
-        $router
-            ->expects($this->never())
-            ->method('generate')
-            ->will($this->returnValue(false))
-        ;
-
-        $this->router->add($router);
-
-        $this->router->generate('foobar');
-    }
-
-    /**
-     * @return RouterInterface[]|\PHPUnit_Framework_MockObject_MockObject[]
-     */
-    protected function createRouterMocks()
-    {
-        return array(
-            $this->getMock('Symfony\Component\Routing\RouterInterface'),
-            $this->getMock('Symfony\Component\Routing\RouterInterface'),
-            $this->getMock('Symfony\Component\Routing\RouterInterface'),
-        );
-    }
-}
-
-abstract class WarmableRouterMock implements RouterInterface, WarmableInterface
-{
-}
-
-abstract class RequestMatcher implements RouterInterface, RequestMatcherInterface
-{
-}
-
-abstract class VersatileRouter implements VersatileGeneratorInterface, RequestMatcherInterface
-{
-}
diff --git a/vendor/symfony-cmf/routing/Tests/Routing/ContentAwareGeneratorTest.php b/vendor/symfony-cmf/routing/Tests/Routing/ContentAwareGeneratorTest.php
deleted file mode 100644
index 3d08974..0000000
--- a/vendor/symfony-cmf/routing/Tests/Routing/ContentAwareGeneratorTest.php
+++ /dev/null
@@ -1,457 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony CMF package.
- *
- * (c) 2011-2014 Symfony CMF
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Cmf\Component\Routing\Tests\Routing;
-
-use Symfony\Cmf\Component\Routing\RouteReferrersReadInterface;
-
-use Symfony\Cmf\Component\Routing\ContentAwareGenerator;
-use Symfony\Cmf\Component\Routing\Test\CmfUnitTestCase;
-
-class ContentAwareGeneratorTest extends CmfUnitTestCase
-{
-    protected $contentDocument;
-    protected $routeDocument;
-    protected $routeCompiled;
-    protected $provider;
-
-    /**
-     * @var ContentAwareGenerator
-     */
-    protected $generator;
-    protected $context;
-
-    public function setUp()
-    {
-        $this->contentDocument = $this->buildMock('Symfony\Cmf\Component\Routing\RouteReferrersReadInterface');
-        $this->routeDocument = $this->buildMock('Symfony\Cmf\Component\Routing\Tests\Routing\RouteMock', array('getDefaults', 'compile'));
-        $this->routeCompiled = $this->buildMock('Symfony\Component\Routing\CompiledRoute');
-        $this->provider = $this->buildMock('Symfony\Cmf\Component\Routing\RouteProviderInterface');
-        $this->context = $this->buildMock('Symfony\Component\Routing\RequestContext');
-
-        $this->generator = new TestableContentAwareGenerator($this->provider);
-    }
-
-    public function testGenerateFromContent()
-    {
-        $this->provider->expects($this->never())
-            ->method('getRouteByName')
-        ;
-        $this->contentDocument->expects($this->once())
-            ->method('getRoutes')
-            ->will($this->returnValue(array($this->routeDocument)))
-        ;
-        $this->routeDocument->expects($this->once())
-            ->method('compile')
-            ->will($this->returnValue($this->routeCompiled))
-        ;
-
-        $this->assertEquals('result_url', $this->generator->generate($this->contentDocument));
-    }
-
-    public function testGenerateFromContentId()
-    {
-        $this->provider->expects($this->never())
-            ->method('getRouteByName')
-        ;
-
-        $contentRepository = $this->buildMock('Symfony\Cmf\Component\Routing\ContentRepositoryInterface', array('findById', 'getContentId'));
-        $contentRepository->expects($this->once())
-            ->method('findById')
-            ->with('/content/id')
-            ->will($this->returnValue($this->contentDocument))
-        ;
-        $this->generator->setContentRepository($contentRepository);
-
-        $this->contentDocument->expects($this->once())
-            ->method('getRoutes')
-            ->will($this->returnValue(array($this->routeDocument)))
-        ;
-
-        $this->routeDocument->expects($this->once())
-            ->method('compile')
-            ->will($this->returnValue($this->routeCompiled))
-        ;
-
-        $this->assertEquals('result_url', $this->generator->generate('', array('content_id' => '/content/id')));
-    }
-
-    public function testGenerateEmptyRouteString()
-    {
-        $this->provider->expects($this->never())
-            ->method('getRouteByName')
-        ;
-
-        $this->contentDocument->expects($this->once())
-            ->method('getRoutes')
-            ->will($this->returnValue(array($this->routeDocument)))
-        ;
-
-        $this->routeDocument->expects($this->once())
-            ->method('compile')
-            ->will($this->returnValue($this->routeCompiled))
-        ;
-
-        $this->assertEquals('result_url', $this->generator->generate($this->contentDocument));
-    }
-
-    public function testGenerateRouteMultilang()
-    {
-        $route_en = $this->buildMock('Symfony\Cmf\Component\Routing\Tests\Routing\RouteMock', array('getDefaults', 'compile', 'getContent'));
-        $route_en->setLocale('en');
-        $route_de = $this->routeDocument;
-        $route_de->setLocale('de');
-
-        $this->contentDocument->expects($this->once())
-            ->method('getRoutes')
-            ->will($this->returnValue(array($route_en, $route_de)))
-        ;
-        $route_en->expects($this->once())
-            ->method('getContent')
-            ->will($this->returnValue($this->contentDocument))
-        ;
-        $route_en->expects($this->never())
-            ->method('compile')
-        ;
-        $route_de->expects($this->once())
-            ->method('compile')
-            ->will($this->returnValue($this->routeCompiled))
-        ;
-
-        $this->assertEquals('result_url', $this->generator->generate($route_en, array('_locale' => 'de')));
-    }
-
-    public function testGenerateRouteMultilangDefaultLocale()
-    {
-        $route = $this->buildMock('Symfony\Cmf\Component\Routing\Tests\Routing\RouteMock');
-        $route->expects($this->any())
-            ->method('compile')
-            ->will($this->returnValue($this->routeCompiled))
-        ;
-        $route->expects($this->any())
-            ->method('getRequirement')
-            ->with('_locale')
-            ->will($this->returnValue('de|en'))
-        ;
-        $route->expects($this->any())
-            ->method('getDefault')
-            ->with('_locale')
-            ->will($this->returnValue('en'))
-        ;
-        $this->routeCompiled->expects($this->any())
-            ->method('getVariables')
-            ->will($this->returnValue(array()))
-        ;
-
-        $this->assertEquals('result_url', $this->generator->generate($route, array('_locale' => 'en')));
-    }
-
-    public function testGenerateRouteMultilangLocaleNomatch()
-    {
-        $route_en = $this->buildMock('Symfony\Cmf\Component\Routing\Tests\Routing\RouteMock', array('getDefaults', 'compile', 'getContent'));
-        $route_en->setLocale('en');
-        $route_de = $this->routeDocument;
-        $route_de->setLocale('de');
-
-        $this->contentDocument->expects($this->once())
-            ->method('getRoutes')
-            ->will($this->returnValue(array($route_en, $route_de)))
-        ;
-        $route_en->expects($this->once())
-            ->method('getContent')
-            ->will($this->returnValue($this->contentDocument))
-        ;
-        $route_en->expects($this->once())
-            ->method('compile')
-            ->will($this->returnValue($this->routeCompiled))
-        ;
-        $route_de->expects($this->never())
-            ->method('compile')
-        ;
-
-        $this->assertEquals('result_url', $this->generator->generate($route_en, array('_locale' => 'fr')));
-    }
-
-    public function testGenerateNoncmfRouteMultilang()
-    {
-        $route_en = $this->buildMock('Symfony\Component\Routing\Route', array('getDefaults', 'compile', 'getContent'));
-
-        $route_en->expects($this->once())
-            ->method('compile')
-            ->will($this->returnValue($this->routeCompiled))
-        ;
-
-        $this->assertEquals('result_url', $this->generator->generate($route_en, array('_locale' => 'de')));
-    }
-
-    public function testGenerateRoutenameMultilang()
-    {
-        $name = 'foo/bar';
-        $route_en = $this->buildMock('Symfony\Cmf\Component\Routing\Tests\Routing\RouteMock', array('getDefaults', 'compile', 'getContent'));
-        $route_en->setLocale('en');
-        $route_de = $this->routeDocument;
-        $route_de->setLocale('de');
-
-        $this->provider->expects($this->once())
-            ->method('getRouteByName')
-            ->with($name)
-            ->will($this->returnValue($route_en))
-        ;
-        $this->contentDocument->expects($this->once())
-            ->method('getRoutes')
-            ->will($this->returnValue(array($route_en, $route_de)))
-        ;
-        $route_en->expects($this->once())
-            ->method('getContent')
-            ->will($this->returnValue($this->contentDocument))
-        ;
-        $route_en->expects($this->never())
-            ->method('compile')
-        ;
-        $route_de->expects($this->once())
-            ->method('compile')
-            ->will($this->returnValue($this->routeCompiled))
-        ;
-
-        $this->assertEquals('result_url', $this->generator->generate($name, array('_locale' => 'de')));
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Routing\Exception\RouteNotFoundException
-     */
-    public function testGenerateRoutenameMultilangNotFound()
-    {
-        $name = 'foo/bar';
-
-        $this->provider->expects($this->once())
-            ->method('getRouteByName')
-            ->with($name)
-            ->will($this->returnValue(null))
-        ;
-
-        $this->generator->generate($name, array('_locale' => 'de'));
-    }
-
-    public function testGenerateDocumentMultilang()
-    {
-        $route_en = $this->buildMock('Symfony\Cmf\Component\Routing\Tests\Routing\RouteMock', array('getDefaults', 'compile'));
-        $route_en->setLocale('en');
-        $route_de = $this->routeDocument;
-        $route_de->setLocale('de');
-
-        $this->contentDocument->expects($this->once())
-            ->method('getRoutes')
-            ->will($this->returnValue(array($route_en, $route_de)))
-        ;
-        $route_en->expects($this->never())
-            ->method('compile')
-        ;
-        $route_de->expects($this->once())
-            ->method('compile')
-            ->will($this->returnValue($this->routeCompiled))
-        ;
-
-        $this->assertEquals('result_url', $this->generator->generate($this->contentDocument, array('_locale' => 'de')));
-    }
-
-    public function testGenerateDocumentMultilangLocaleNomatch()
-    {
-        $route_en = $this->buildMock('Symfony\Cmf\Component\Routing\Tests\Routing\RouteMock', array('getDefaults', 'compile'));
-        $route_en->setLocale('en');
-        $route_de = $this->routeDocument;
-        $route_de->setLocale('de');
-
-        $this->contentDocument->expects($this->once())
-            ->method('getRoutes')
-            ->will($this->returnValue(array($route_en, $route_de)))
-        ;
-        $route_en->expects($this->once())
-            ->method('compile')
-            ->will($this->returnValue($this->routeCompiled))
-        ;
-        $route_de->expects($this->never())
-            ->method('compile')
-        ;
-
-        $this->assertEquals('result_url', $this->generator->generate($this->contentDocument, array('_locale' => 'fr')));
-    }
-
-    /**
-     * Generate without any information.
-     *
-     * @expectedException \Symfony\Component\Routing\Exception\RouteNotFoundException
-     */
-    public function testGenerateNoContent()
-    {
-        $this->generator->generate('', array());
-    }
-
-    /**
-     * Generate with an object that is neither a route nor route aware.
-     *
-     * @expectedException \Symfony\Component\Routing\Exception\RouteNotFoundException
-     */
-    public function testGenerateInvalidContent()
-    {
-        $this->generator->generate($this);
-    }
-
-    /**
-     * Generate with a content_id but there is no content repository.
-     *
-     * @expectedException \Symfony\Component\Routing\Exception\RouteNotFoundException
-     */
-    public function testGenerateNoContentRepository()
-    {
-        $this->provider->expects($this->never())
-            ->method('getRouteByName')
-        ;
-
-        $this->generator->generate('', array('content_id' => '/content/id'));
-    }
-
-    /**
-     * Generate with content_id but the content is not found.
-     *
-     * @expectedException \Symfony\Component\Routing\Exception\RouteNotFoundException
-     */
-    public function testGenerateNoContentFoundInRepository()
-    {
-        $this->provider->expects($this->never())
-            ->method('getRouteByName')
-        ;
-
-        $contentRepository = $this->buildMock('Symfony\Cmf\Component\Routing\ContentRepositoryInterface', array('findById', 'getContentId'));
-        $contentRepository->expects($this->once())
-            ->method('findById')
-            ->with('/content/id')
-            ->will($this->returnValue(null))
-        ;
-        $this->generator->setContentRepository($contentRepository);
-
-        $this->generator->generate('', array('content_id' => '/content/id'));
-    }
-
-    /**
-     * Generate with content_id but the object at id is not route aware.
-     *
-     * @expectedException \Symfony\Component\Routing\Exception\RouteNotFoundException
-     */
-    public function testGenerateWrongContentClassInRepository()
-    {
-        $this->provider->expects($this->never())
-            ->method('getRouteByName')
-        ;
-
-        $contentRepository = $this->buildMock('Symfony\Cmf\Component\Routing\ContentRepositoryInterface', array('findById', 'getContentId'));
-        $contentRepository->expects($this->once())
-            ->method('findById')
-            ->with('/content/id')
-            ->will($this->returnValue($this))
-        ;
-        $this->generator->setContentRepository($contentRepository);
-
-        $this->generator->generate('', array('content_id' => '/content/id'));
-    }
-
-    /**
-     * Generate from a content that has no routes associated.
-     *
-     * @expectedException \Symfony\Component\Routing\Exception\RouteNotFoundException
-     */
-    public function testGenerateNoRoutes()
-    {
-        $this->contentDocument->expects($this->once())
-            ->method('getRoutes')
-            ->will($this->returnValue(array()));
-
-        $this->generator->generate($this->contentDocument);
-    }
-    /**
-     * Generate from a content that returns something that is not a route as route.
-     *
-     * @expectedException \Symfony\Component\Routing\Exception\RouteNotFoundException
-     */
-    public function testGenerateInvalidRoute()
-    {
-        $this->contentDocument->expects($this->once())
-            ->method('getRoutes')
-            ->will($this->returnValue(array($this)));
-
-        $this->generator->generate($this->contentDocument);
-    }
-
-    public function testGetLocaleAttribute()
-    {
-        $this->generator->setDefaultLocale('en');
-
-        $attributes = array('_locale' => 'fr');
-        $this->assertEquals('fr', $this->generator->getLocale($attributes));
-    }
-
-    public function testGetLocaleDefault()
-    {
-        $this->generator->setDefaultLocale('en');
-
-        $attributes = array();
-        $this->assertEquals('en', $this->generator->getLocale($attributes));
-    }
-
-    public function testGetLocaleContext()
-    {
-        $this->generator->setDefaultLocale('en');
-
-        $this->generator->getContext()->setParameter('_locale', 'de');
-
-        $attributes = array();
-        $this->assertEquals('de', $this->generator->getLocale($attributes));
-    }
-
-    public function testSupports()
-    {
-        $this->assertTrue($this->generator->supports(''));
-        $this->assertTrue($this->generator->supports(null));
-        $this->assertTrue($this->generator->supports($this->contentDocument));
-        $this->assertFalse($this->generator->supports($this));
-    }
-
-    public function testGetRouteDebugMessage()
-    {
-        $this->assertContains('/some/content', $this->generator->getRouteDebugMessage(null, array('content_id' => '/some/content')));
-        $this->assertContains('Route aware content Symfony\Cmf\Component\Routing\Tests\Routing\RouteAware', $this->generator->getRouteDebugMessage(new RouteAware()));
-        $this->assertContains('/some/content', $this->generator->getRouteDebugMessage('/some/content'));
-    }
-}
-
-/**
- * Overwrite doGenerate to reduce amount of mocking needed
- */
-class TestableContentAwareGenerator extends ContentAwareGenerator
-{
-    protected function doGenerate($variables, $defaults, $requirements, $tokens, $parameters, $name, $referenceType, $hostTokens, array $requiredSchemes = array())
-    {
-        return 'result_url';
-    }
-
-    // expose as public
-    public function getLocale($parameters)
-    {
-        return parent::getLocale($parameters);
-    }
-}
-
-class RouteAware implements RouteReferrersReadInterface
-{
-    public function getRoutes()
-    {
-        return array();
-    }
-}
diff --git a/vendor/symfony-cmf/routing/Tests/Routing/DynamicRouterTest.php b/vendor/symfony-cmf/routing/Tests/Routing/DynamicRouterTest.php
deleted file mode 100644
index f3e24e9..0000000
--- a/vendor/symfony-cmf/routing/Tests/Routing/DynamicRouterTest.php
+++ /dev/null
@@ -1,330 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony CMF package.
- *
- * (c) 2011-2014 Symfony CMF
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Cmf\Component\Routing\Tests\Routing;
-
-use Symfony\Cmf\Component\Routing\Event\Events;
-use Symfony\Cmf\Component\Routing\Event\RouterMatchEvent;
-use Symfony\Component\HttpFoundation\Request;
-use Symfony\Component\Routing\RouteCollection;
-
-use Symfony\Cmf\Component\Routing\DynamicRouter;
-
-use Symfony\Cmf\Component\Routing\Test\CmfUnitTestCase;
-
-class DynamicRouterTest extends CmfUnitTestCase
-{
-    protected $routeDocument;
-    protected $matcher;
-    protected $generator;
-    protected $enhancer;
-    /** @var DynamicRouter */
-    protected $router;
-    protected $context;
-    public $request;
-
-    protected $url = '/foo/bar';
-
-    public function setUp()
-    {
-        $this->routeDocument = $this->buildMock('Symfony\Cmf\Component\Routing\Tests\Routing\RouteMock', array('getDefaults'));
-
-        $this->matcher = $this->buildMock('Symfony\Component\Routing\Matcher\UrlMatcherInterface');
-        $this->generator = $this->buildMock('Symfony\Cmf\Component\Routing\VersatileGeneratorInterface', array('supports', 'generate', 'setContext', 'getContext', 'getRouteDebugMessage'));
-        $this->enhancer = $this->buildMock('Symfony\Cmf\Component\Routing\Enhancer\RouteEnhancerInterface', array('enhance'));
-
-        $this->context = $this->buildMock('Symfony\Component\Routing\RequestContext');
-        $this->request = Request::create($this->url);
-
-        $this->router = new DynamicRouter($this->context, $this->matcher, $this->generator);
-        $this->router->addRouteEnhancer($this->enhancer);
-    }
-
-    /**
-     * rather trivial, but we want 100% coverage
-     */
-    public function testContext()
-    {
-        $this->router->setContext($this->context);
-        $this->assertSame($this->context, $this->router->getContext());
-    }
-
-    public function testRouteCollectionEmpty()
-    {
-        $collection = $this->router->getRouteCollection();
-        $this->assertInstanceOf('Symfony\Component\Routing\RouteCollection', $collection);
-    }
-
-    public function testRouteCollectionLazy()
-    {
-        $provider = $this->getMock('Symfony\Cmf\Component\Routing\RouteProviderInterface');
-        $router = new DynamicRouter($this->context, $this->matcher, $this->generator, '', null, $provider);
-
-        $collection = $router->getRouteCollection();
-        $this->assertInstanceOf('Symfony\Cmf\Component\Routing\LazyRouteCollection', $collection);
-    }
-
-    /// generator tests ///
-
-    public function testGetGenerator()
-    {
-        $this->generator->expects($this->once())
-            ->method('setContext')
-            ->with($this->equalTo($this->context));
-
-        $generator = $this->router->getGenerator();
-        $this->assertInstanceOf('Symfony\Component\Routing\Generator\UrlGeneratorInterface', $generator);
-        $this->assertSame($this->generator, $generator);
-    }
-
-    public function testGenerate()
-    {
-        $name = 'my_route_name';
-        $parameters = array('foo' => 'bar');
-        $absolute = true;
-
-        $this->generator->expects($this->once())
-            ->method('generate')
-            ->with($name, $parameters, $absolute)
-            ->will($this->returnValue('http://test'))
-        ;
-
-        $url = $this->router->generate($name, $parameters, $absolute);
-        $this->assertEquals('http://test', $url);
-    }
-
-    public function testSupports()
-    {
-        $name = 'foo/bar';
-        $this->generator->expects($this->once())
-            ->method('supports')
-            ->with($this->equalTo($name))
-            ->will($this->returnValue(true))
-        ;
-
-        $this->assertTrue($this->router->supports($name));
-    }
-
-    public function testSupportsNonversatile()
-    {
-        $generator = $this->buildMock('Symfony\Component\Routing\Generator\UrlGeneratorInterface', array('generate', 'setContext', 'getContext'));
-        $router = new DynamicRouter($this->context, $this->matcher, $generator);
-        $this->assertInternalType('string', $router->getRouteDebugMessage('test'));
-
-        $this->assertTrue($router->supports('some string'));
-        $this->assertFalse($router->supports($this));
-    }
-
-    /// match tests ///
-
-    public function testGetMatcher()
-    {
-        $this->matcher->expects($this->once())
-            ->method('setContext')
-            ->with($this->equalTo($this->context));
-
-        $matcher = $this->router->getMatcher();
-        $this->assertInstanceOf('Symfony\Component\Routing\Matcher\UrlMatcherInterface', $matcher);
-        $this->assertSame($this->matcher, $matcher);
-    }
-
-    public function testMatchUrl()
-    {
-        $routeDefaults = array('foo' => 'bar');
-        $this->matcher->expects($this->once())
-            ->method('match')
-            ->with($this->url)
-            ->will($this->returnValue($routeDefaults))
-        ;
-
-        $expected = array('this' => 'that');
-        $this->enhancer->expects($this->once())
-            ->method('enhance')
-            ->with($this->equalTo($routeDefaults), $this->equalTo($this->request))
-            ->will($this->returnValue($expected))
-        ;
-
-        $results = $this->router->match($this->url);
-
-        $this->assertEquals($expected, $results);
-    }
-
-    public function testMatchRequestWithUrlMatcher()
-    {
-        $routeDefaults = array('foo' => 'bar');
-
-        $this->matcher->expects($this->once())
-            ->method('match')
-            ->with($this->url)
-            ->will($this->returnValue($routeDefaults))
-        ;
-
-        $expected = array('this' => 'that');
-        $this->enhancer->expects($this->once())
-            ->method('enhance')
-            // somehow request object gets confused, check on instance only
-            ->with($this->equalTo($routeDefaults), $this->isInstanceOf('Symfony\Component\HttpFoundation\Request'))
-            ->will($this->returnValue($expected))
-        ;
-
-        $results = $this->router->matchRequest($this->request);
-
-        $this->assertEquals($expected, $results);
-    }
-
-    public function testMatchRequest()
-    {
-        $routeDefaults = array('foo' => 'bar');
-
-        $matcher = $this->buildMock('Symfony\Component\Routing\Matcher\RequestMatcherInterface', array('matchRequest', 'setContext', 'getContext'));
-        $router = new DynamicRouter($this->context, $matcher, $this->generator);
-
-        $matcher->expects($this->once())
-            ->method('matchRequest')
-            ->with($this->request)
-            ->will($this->returnValue($routeDefaults))
-        ;
-
-        $expected = array('this' => 'that');
-        $this->enhancer->expects($this->once())
-            ->method('enhance')
-            ->with($this->equalTo($routeDefaults), $this->equalTo($this->request))
-            ->will($this->returnValue($expected))
-        ;
-
-        $router->addRouteEnhancer($this->enhancer);
-
-        $this->assertEquals($expected, $router->matchRequest($this->request));
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Routing\Exception\ResourceNotFoundException
-     */
-    public function testMatchFilter()
-    {
-        $router = new DynamicRouter($this->context, $this->matcher, $this->generator, '#/different/prefix.*#');
-        $router->addRouteEnhancer($this->enhancer);
-
-        $this->matcher->expects($this->never())
-            ->method('match')
-        ;
-
-        $this->enhancer->expects($this->never())
-            ->method('enhance')
-        ;
-
-        $router->match($this->url);
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Routing\Exception\ResourceNotFoundException
-     */
-    public function testMatchRequestFilter()
-    {
-        $matcher = $this->buildMock('Symfony\Component\Routing\Matcher\RequestMatcherInterface', array('matchRequest', 'setContext', 'getContext'));
-
-        $router = new DynamicRouter($this->context, $matcher, $this->generator, '#/different/prefix.*#');
-        $router->addRouteEnhancer($this->enhancer);
-
-        $matcher->expects($this->never())
-            ->method('matchRequest')
-        ;
-
-        $this->enhancer->expects($this->never())
-            ->method('enhance')
-        ;
-
-        $router->matchRequest($this->request);
-    }
-
-    /**
-     * @expectedException \InvalidArgumentException
-     */
-    public function testMatchUrlWithRequestMatcher()
-    {
-        $matcher = $this->buildMock('Symfony\Component\Routing\Matcher\RequestMatcherInterface', array('matchRequest', 'setContext', 'getContext'));
-        $router = new DynamicRouter($this->context, $matcher, $this->generator);
-
-        $router->match($this->url);
-    }
-
-    /**
-     * @expectedException \InvalidArgumentException
-     */
-    public function testInvalidMatcher()
-    {
-        new DynamicRouter($this->context, $this, $this->generator);
-    }
-
-    public function testRouteDebugMessage()
-    {
-        $this->generator->expects($this->once())
-            ->method('getRouteDebugMessage')
-            ->with($this->equalTo('test'), $this->equalTo(array()))
-            ->will($this->returnValue('debug message'))
-        ;
-
-        $this->assertEquals('debug message', $this->router->getRouteDebugMessage('test'));
-    }
-
-    public function testRouteDebugMessageNonversatile()
-    {
-        $generator = $this->buildMock('Symfony\Component\Routing\Generator\UrlGeneratorInterface', array('generate', 'setContext', 'getContext'));
-        $router = new DynamicRouter($this->context, $this->matcher, $generator);
-        $this->assertInternalType('string', $router->getRouteDebugMessage('test'));
-    }
-
-    public function testEventHandler()
-    {
-        $eventDispatcher = $this->buildMock('Symfony\Component\EventDispatcher\EventDispatcherInterface');
-        $router = new DynamicRouter($this->context, $this->matcher, $this->generator, '', $eventDispatcher);
-
-        $eventDispatcher->expects($this->once())
-            ->method('dispatch')
-            ->with(Events::PRE_DYNAMIC_MATCH, $this->equalTo(new RouterMatchEvent()))
-        ;
-
-        $routeDefaults = array('foo' => 'bar');
-        $this->matcher->expects($this->once())
-            ->method('match')
-            ->with($this->url)
-            ->will($this->returnValue($routeDefaults))
-        ;
-
-        $this->assertEquals($routeDefaults, $router->match($this->url));
-    }
-
-    public function testEventHandlerRequest()
-    {
-        $eventDispatcher = $this->buildMock('Symfony\Component\EventDispatcher\EventDispatcherInterface');
-        $router = new DynamicRouter($this->context, $this->matcher, $this->generator, '', $eventDispatcher);
-
-        $that = $this;
-        $eventDispatcher->expects($this->once())
-            ->method('dispatch')
-            ->with(Events::PRE_DYNAMIC_MATCH_REQUEST, $this->callback(function ($event) use ($that) {
-                $that->assertInstanceOf('Symfony\Cmf\Component\Routing\Event\RouterMatchEvent', $event);
-                $that->assertEquals($that->request, $event->getRequest());
-
-                return true;
-            }))
-        ;
-
-        $routeDefaults = array('foo' => 'bar');
-        $this->matcher->expects($this->once())
-            ->method('match')
-            ->with($this->url)
-            ->will($this->returnValue($routeDefaults))
-        ;
-
-        $this->assertEquals($routeDefaults, $router->matchRequest($this->request));
-    }
-}
diff --git a/vendor/symfony-cmf/routing/Tests/Routing/LazyRouteCollectionTest.php b/vendor/symfony-cmf/routing/Tests/Routing/LazyRouteCollectionTest.php
deleted file mode 100644
index 95d3ad2..0000000
--- a/vendor/symfony-cmf/routing/Tests/Routing/LazyRouteCollectionTest.php
+++ /dev/null
@@ -1,42 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony CMF package.
- *
- * (c) 2011-2014 Symfony CMF
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Cmf\Component\Routing;
-
-use Symfony\Cmf\Component\Routing\Test\CmfUnitTestCase;
-use Symfony\Component\Routing\Route;
-
-/**
- * Tests the lazy route collection.
- *
- * @group cmf/routing
- */
-class LazyRouteCollectionTest extends CmfUnitTestCase
-{
-    /**
-     * Tests the iterator without a paged route provider.
-     */
-    public function testGetIterator()
-    {
-        $routeProvider = $this->getMock('Symfony\Cmf\Component\Routing\RouteProviderInterface');
-        $testRoutes = array(
-          'route_1' => new Route('/route-1'),
-          'route_2"' => new Route('/route-2'),
-        );
-        $routeProvider->expects($this->exactly(2))
-            ->method('getRoutesByNames')
-            ->with(null)
-            ->will($this->returnValue($testRoutes));
-        $lazyRouteCollection = new LazyRouteCollection($routeProvider);
-        $this->assertEquals($testRoutes, iterator_to_array($lazyRouteCollection->getIterator()));
-        $this->assertEquals($testRoutes, $lazyRouteCollection->all());
-    }
-}
diff --git a/vendor/symfony-cmf/routing/Tests/Routing/PagedRouteCollectionTest.php b/vendor/symfony-cmf/routing/Tests/Routing/PagedRouteCollectionTest.php
deleted file mode 100644
index 741beaa..0000000
--- a/vendor/symfony-cmf/routing/Tests/Routing/PagedRouteCollectionTest.php
+++ /dev/null
@@ -1,132 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony CMF package.
- *
- * (c) 2011-2014 Symfony CMF
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Cmf\Component\Routing;
-
-use Symfony\Cmf\Component\Routing\Test\CmfUnitTestCase;
-use Symfony\Component\Routing\Route;
-
-/**
- * Tests the page route collection.
- *
- * @group cmf/routing
- */
-class PagedRouteCollectionTest extends CmfUnitTestCase
-{
-    /**
-     * Contains a mocked route provider.
-     *
-     * @var \Symfony\Cmf\Component\Routing\PagedRouteProviderInterface|\PHPUnit_Framework_MockObject_MockObject
-     */
-    protected $routeProvider;
-
-    protected function setUp()
-    {
-        $this->routeProvider = $this->getMock('Symfony\Cmf\Component\Routing\PagedRouteProviderInterface');
-    }
-
-    /**
-     * Tests iterating a small amount of routes.
-     *
-     * @dataProvider providerIterator
-     */
-    public function testIterator($amountRoutes, $routesLoadedInParallel, $expectedCalls = array())
-    {
-        $routes = array();
-        for ($i = 0; $i < $amountRoutes; $i++) {
-            $routes['test_' . $i] = new Route("/example-$i");
-        }
-        $names = array_keys($routes);
-
-        foreach ($expectedCalls as $i => $range)
-        {
-            $this->routeProvider->expects($this->at($i))
-              ->method('getRoutesPaged')
-              ->with($range[0], $range[1])
-              ->will($this->returnValue(array_slice($routes, $range[0], $range[1])));
-        }
-
-        $route_collection = new PagedRouteCollection($this->routeProvider, $routesLoadedInParallel);
-
-        $counter = 0;
-        foreach ($route_collection as $route_name => $route) {
-            // Ensure the route did not changed.
-            $this->assertEquals($routes[$route_name], $route);
-            // Ensure that the order did not changed.
-            $this->assertEquals($route_name, $names[$counter]);
-            $counter++;
-        }
-    }
-
-    /**
-     * Provides test data for testIterator().
-     */
-    public function providerIterator()
-    {
-        $data = array();
-        // Non total routes.
-        $data[] = array(0, 20, array(array(0, 20)));
-        // Less total routes than loaded in parallel.
-        $data[] = array(10, 20, array(array(0, 20)));
-        // Exact the same amount of routes then loaded in parallel.
-        $data[] = array(20, 20, array(array(0, 20), array(20, 20)));
-        // Less than twice the amount.
-        $data[] = array(39, 20, array(array(0, 20), array(20, 20)));
-        // More total routes than loaded in parallel.
-        $data[] = array(40, 20, array(array(0, 20), array(20, 20), array(40, 20)));
-        $data[] = array(41, 20, array(array(0, 20), array(20, 20), array(40, 20)));
-        // why not.
-        $data[] = array(42, 23, array(array(0, 23), array(23, 23)));
-        return $data;
-    }
-
-    /**
-     * Tests the count() method.
-     */
-    public function testCount()
-    {
-        $this->routeProvider->expects($this->once())
-            ->method('getRoutesCount')
-            ->will($this->returnValue(12));
-        $routeCollection = new PagedRouteCollection($this->routeProvider);
-        $this->assertEquals(12, $routeCollection->count());
-    }
-
-    /**
-     * Tests the rewind method once the iterator is at the end.
-     */
-    public function testIteratingAndRewind()
-    {
-        $routes = array();
-        for ($i = 0; $i < 30; $i++) {
-            $routes['test_' . $i] = new Route("/example-$i");
-        }
-        $this->routeProvider->expects($this->any())
-            ->method('getRoutesPaged')
-            ->will($this->returnValueMap(array(
-                array(0, 10, array_slice($routes, 0, 10)),
-                array(10, 10, array_slice($routes, 9, 10)),
-                array(20, 10, array()),
-            )));
-
-        $routeCollection = new PagedRouteCollection($this->routeProvider, 10);
-
-        // Force the iterating process.
-        $routeCollection->rewind();
-        for ($i = 0; $i < 29; $i++) {
-            $routeCollection->next();
-        }
-        $routeCollection->rewind();
-
-        $this->assertEquals('test_0', $routeCollection->key());
-        $this->assertEquals($routes['test_0'], $routeCollection->current());
-    }
-}
diff --git a/vendor/symfony-cmf/routing/Tests/Routing/ProviderBasedGeneratorTest.php b/vendor/symfony-cmf/routing/Tests/Routing/ProviderBasedGeneratorTest.php
deleted file mode 100644
index 955f9fc..0000000
--- a/vendor/symfony-cmf/routing/Tests/Routing/ProviderBasedGeneratorTest.php
+++ /dev/null
@@ -1,149 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony CMF package.
- *
- * (c) 2011-2014 Symfony CMF
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Cmf\Component\Routing\Tests\Routing;
-
-use Symfony\Cmf\Component\Routing\RouteObjectInterface;
-use Symfony\Component\Routing\RequestContext;
-use Symfony\Component\Routing\Route;
-
-use Symfony\Cmf\Component\Routing\ProviderBasedGenerator;
-use Symfony\Cmf\Component\Routing\Test\CmfUnitTestCase;
-
-class ProviderBasedGeneratorTest extends CmfUnitTestCase
-{
-    protected $routeDocument;
-    protected $routeCompiled;
-    protected $provider;
-
-    /** @var ProviderBasedGenerator */
-    protected $generator;
-    protected $context;
-
-    public function setUp()
-    {
-        $this->routeDocument = $this->buildMock('Symfony\Component\Routing\Route', array('getDefaults', 'compile'));
-        $this->routeCompiled = $this->buildMock('Symfony\Component\Routing\CompiledRoute');
-        $this->provider = $this->buildMock('Symfony\Cmf\Component\Routing\RouteProviderInterface');
-        $this->context = $this->buildMock('Symfony\Component\Routing\RequestContext');
-
-        $this->generator= new TestableProviderBasedGenerator($this->provider);
-    }
-
-    public function testGenerateFromName()
-    {
-        $name = 'foo/bar';
-
-        $this->provider->expects($this->once())
-            ->method('getRouteByName')
-            ->with($name)
-            ->will($this->returnValue($this->routeDocument))
-        ;
-        $this->routeDocument->expects($this->once())
-            ->method('compile')
-            ->will($this->returnValue($this->routeCompiled))
-        ;
-
-        $this->assertEquals('result_url', $this->generator->generate($name));
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Routing\Exception\RouteNotFoundException
-     */
-    public function testGenerateNotFound()
-    {
-        $name = 'foo/bar';
-
-        $this->provider->expects($this->once())
-            ->method('getRouteByName')
-            ->with($name)
-            ->will($this->returnValue(null))
-        ;
-
-        $this->generator->generate($name);
-    }
-
-    public function testGenerateFromRoute()
-    {
-        $this->provider->expects($this->never())
-            ->method('getRouteByName')
-        ;
-        $this->routeDocument->expects($this->once())
-            ->method('compile')
-            ->will($this->returnValue($this->routeCompiled))
-        ;
-
-        $this->assertEquals('result_url', $this->generator->generate($this->routeDocument));
-    }
-
-    public function testSupports()
-    {
-        $this->assertTrue($this->generator->supports('foo/bar'));
-        $this->assertTrue($this->generator->supports($this->routeDocument));
-        $this->assertFalse($this->generator->supports($this));
-    }
-
-    public function testGetRouteDebugMessage()
-    {
-        $this->assertContains('/some/key', $this->generator->getRouteDebugMessage(new RouteObject()));
-        $this->assertContains('/de/test', $this->generator->getRouteDebugMessage(new Route('/de/test')));
-        $this->assertContains('/some/route', $this->generator->getRouteDebugMessage('/some/route'));
-        $this->assertContains('a:1:{s:10:"route_name";s:7:"example";}', $this->generator->getRouteDebugMessage(array('route_name' => 'example')));
-    }
-
-  /**
-   * Tests the generate method with passing in a route object into generate().
-   *
-   * @expectedException \Symfony\Component\Routing\Exception\InvalidParameterException
-   */
-    public function testGenerateByRoute()
-    {
-        $this->generator = new ProviderBasedGenerator($this->provider);
-
-        // Setup a route with a numeric parameter, but pass in a string, so it
-        // fails and getRouteDebugMessage should be triggered.
-        $route = new Route('/test');
-        $route->setPath('/test/{number}');
-        $route->setRequirement('number', '\+d');
-
-        $this->generator->setStrictRequirements(true);
-
-        $context = new RequestContext();
-        $this->generator->setContext($context);
-
-        $this->assertSame(null, $this->generator->generate($route, array('number' => 'string')));
-
-    }
-}
-
-/**
- * Overwrite doGenerate to reduce amount of mocking needed
- */
-class TestableProviderBasedGenerator extends ProviderBasedGenerator
-{
-    protected function doGenerate($variables, $defaults, $requirements, $tokens, $parameters, $name, $referenceType, $hostTokens, array $requiredSchemes = array())
-    {
-        return 'result_url';
-    }
-}
-
-class RouteObject implements RouteObjectInterface
-{
-    public function getRouteKey()
-    {
-        return '/some/key';
-    }
-
-    public function getContent()
-    {
-        return null;
-    }
-}
diff --git a/vendor/symfony-cmf/routing/Tests/Routing/RouteMock.php b/vendor/symfony-cmf/routing/Tests/Routing/RouteMock.php
deleted file mode 100644
index 7b1440a..0000000
--- a/vendor/symfony-cmf/routing/Tests/Routing/RouteMock.php
+++ /dev/null
@@ -1,55 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony CMF package.
- *
- * (c) 2011-2014 Symfony CMF
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Cmf\Component\Routing\Tests\Routing;
-
-use Symfony\Component\Routing\Route as SymfonyRoute;
-
-use Symfony\Cmf\Component\Routing\RouteObjectInterface;
-
-class RouteMock extends SymfonyRoute implements RouteObjectInterface
-{
-    private $locale;
-
-    public function setLocale($locale)
-    {
-        $this->locale = $locale;
-    }
-
-    public function getContent()
-    {
-        return null;
-    }
-
-    public function getDefaults()
-    {
-        $defaults = array();
-        if (! is_null($this->locale)) {
-            $defaults['_locale'] = $this->locale;
-        }
-
-        return $defaults;
-    }
-
-    public function getRequirement($key)
-    {
-        if (! $key == '_locale') {
-            throw new \Exception;
-        }
-
-        return $this->locale;
-    }
-
-    public function getRouteKey()
-    {
-        return null;
-    }
-}
diff --git a/vendor/symfony-cmf/routing/Tests/bootstrap.php b/vendor/symfony-cmf/routing/Tests/bootstrap.php
deleted file mode 100644
index 157e59f..0000000
--- a/vendor/symfony-cmf/routing/Tests/bootstrap.php
+++ /dev/null
@@ -1,20 +0,0 @@
-<?php
-
-$file = __DIR__.'/../vendor/autoload.php';
-if (!file_exists($file)) {
-    throw new RuntimeException('Install dependencies to run test suite.');
-}
-
-require_once $file;
-
-spl_autoload_register(function ($class) {
-    if (0 === strpos($class, 'Symfony\Cmf\Component\Routing\\')) {
-        $path = __DIR__.'/../'.implode('/', array_slice(explode('\\', $class), 4)).'.php';
-        if (!stream_resolve_include_path($path)) {
-            return false;
-        }
-        require_once $path;
-
-        return true;
-    }
-});
diff --git a/vendor/symfony/browser-kit/Tests/ClientTest.php b/vendor/symfony/browser-kit/Tests/ClientTest.php
deleted file mode 100644
index cc7db71..0000000
--- a/vendor/symfony/browser-kit/Tests/ClientTest.php
+++ /dev/null
@@ -1,639 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\BrowserKit\Tests;
-
-use Symfony\Component\BrowserKit\Client;
-use Symfony\Component\BrowserKit\History;
-use Symfony\Component\BrowserKit\CookieJar;
-use Symfony\Component\BrowserKit\Response;
-
-class SpecialResponse extends Response
-{
-}
-
-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;
-    }
-
-    protected function filterResponse($response)
-    {
-        if ($response instanceof SpecialResponse) {
-            return new Response($response->getContent(), $response->getStatus(), $response->getHeaders());
-        }
-
-        return $response;
-    }
-
-    protected function getScript($request)
-    {
-        $r = new \ReflectionClass('Symfony\Component\BrowserKit\Response');
-        $path = $r->getFileName();
-
-        return <<<EOF
-<?php
-
-require_once('$path');
-
-echo serialize($this->nextScript);
-EOF;
-    }
-}
-
-class ClientTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @covers Symfony\Component\BrowserKit\Client::getHistory
-     */
-    public function testGetHistory()
-    {
-        $client = new TestClient(array(), $history = new History());
-        $this->assertSame($history, $client->getHistory(), '->getHistory() returns the History');
-    }
-
-    /**
-     * @covers Symfony\Component\BrowserKit\Client::getCookieJar
-     */
-    public function testGetCookieJar()
-    {
-        $client = new TestClient(array(), null, $cookieJar = new CookieJar());
-        $this->assertSame($cookieJar, $client->getCookieJar(), '->getCookieJar() returns the CookieJar');
-    }
-
-    /**
-     * @covers Symfony\Component\BrowserKit\Client::getRequest
-     */
-    public function testGetRequest()
-    {
-        $client = new TestClient();
-        $client->request('GET', 'http://example.com/');
-
-        $this->assertEquals('http://example.com/', $client->getRequest()->getUri(), '->getCrawler() returns the Request of the last request');
-    }
-
-    public function testGetRequestWithIpAsHost()
-    {
-        $client = new TestClient();
-        $client->request('GET', 'https://example.com/foo', array(), array(), array('HTTP_HOST' => '127.0.0.1'));
-
-        $this->assertEquals('https://127.0.0.1/foo', $client->getRequest()->getUri());
-    }
-
-    public function testGetResponse()
-    {
-        $client = new TestClient();
-        $client->setNextResponse(new Response('foo'));
-        $client->request('GET', 'http://example.com/');
-
-        $this->assertEquals('foo', $client->getResponse()->getContent(), '->getCrawler() returns the Response of the last request');
-        $this->assertInstanceOf('Symfony\Component\BrowserKit\Response', $client->getResponse(), '->getCrawler() returns the Response of the last request');
-    }
-
-    public function testGetInternalResponse()
-    {
-        $client = new TestClient();
-        $client->setNextResponse(new SpecialResponse('foo'));
-        $client->request('GET', 'http://example.com/');
-
-        $this->assertInstanceOf('Symfony\Component\BrowserKit\Response', $client->getInternalResponse());
-        $this->assertNotInstanceOf('Symfony\Component\BrowserKit\Tests\SpecialResponse', $client->getInternalResponse());
-        $this->assertInstanceOf('Symfony\Component\BrowserKit\Tests\SpecialResponse', $client->getResponse());
-    }
-
-    public function testGetContent()
-    {
-        $json = '{"jsonrpc":"2.0","method":"echo","id":7,"params":["Hello World"]}';
-
-        $client = new TestClient();
-        $client->request('POST', 'http://example.com/jsonrpc', array(), array(), array(), $json);
-        $this->assertEquals($json, $client->getRequest()->getContent());
-    }
-
-    /**
-     * @covers Symfony\Component\BrowserKit\Client::getCrawler
-     */
-    public function testGetCrawler()
-    {
-        $client = new TestClient();
-        $client->setNextResponse(new Response('foo'));
-        $crawler = $client->request('GET', 'http://example.com/');
-
-        $this->assertSame($crawler, $client->getCrawler(), '->getCrawler() returns the Crawler of the last request');
-    }
-
-    public function testRequestHttpHeaders()
-    {
-        $client = new TestClient();
-        $client->request('GET', '/');
-        $headers = $client->getRequest()->getServer();
-        $this->assertEquals('localhost', $headers['HTTP_HOST'], '->request() sets the HTTP_HOST header');
-
-        $client = new TestClient();
-        $client->request('GET', 'http://www.example.com');
-        $headers = $client->getRequest()->getServer();
-        $this->assertEquals('www.example.com', $headers['HTTP_HOST'], '->request() sets the HTTP_HOST header');
-
-        $client->request('GET', 'https://www.example.com');
-        $headers = $client->getRequest()->getServer();
-        $this->assertTrue($headers['HTTPS'], '->request() sets the HTTPS header');
-
-        $client = new TestClient();
-        $client->request('GET', 'http://www.example.com:8080');
-        $headers = $client->getRequest()->getServer();
-        $this->assertEquals('www.example.com:8080', $headers['HTTP_HOST'], '->request() sets the HTTP_HOST header with port');
-    }
-
-    public function testRequestURIConversion()
-    {
-        $client = new TestClient();
-        $client->request('GET', '/foo');
-        $this->assertEquals('http://localhost/foo', $client->getRequest()->getUri(), '->request() converts the URI to an absolute one');
-
-        $client = new TestClient();
-        $client->request('GET', 'http://www.example.com');
-        $this->assertEquals('http://www.example.com', $client->getRequest()->getUri(), '->request() does not change absolute URIs');
-
-        $client = new TestClient();
-        $client->request('GET', 'http://www.example.com/');
-        $client->request('GET', '/foo');
-        $this->assertEquals('http://www.example.com/foo', $client->getRequest()->getUri(), '->request() uses the previous request for relative URLs');
-
-        $client = new TestClient();
-        $client->request('GET', 'http://www.example.com/foo');
-        $client->request('GET', '#');
-        $this->assertEquals('http://www.example.com/foo#', $client->getRequest()->getUri(), '->request() uses the previous request for #');
-        $client->request('GET', '#');
-        $this->assertEquals('http://www.example.com/foo#', $client->getRequest()->getUri(), '->request() uses the previous request for #');
-        $client->request('GET', '#foo');
-        $this->assertEquals('http://www.example.com/foo#foo', $client->getRequest()->getUri(), '->request() uses the previous request for #');
-
-        $client = new TestClient();
-        $client->request('GET', 'http://www.example.com/foo/');
-        $client->request('GET', 'bar');
-        $this->assertEquals('http://www.example.com/foo/bar', $client->getRequest()->getUri(), '->request() uses the previous request for relative URLs');
-
-        $client = new TestClient();
-        $client->request('GET', 'http://www.example.com/foo/foobar');
-        $client->request('GET', 'bar');
-        $this->assertEquals('http://www.example.com/foo/bar', $client->getRequest()->getUri(), '->request() uses the previous request for relative URLs');
-
-        $client = new TestClient();
-        $client->request('GET', 'http://www.example.com/foo/');
-        $client->request('GET', 'http');
-        $this->assertEquals('http://www.example.com/foo/http', $client->getRequest()->getUri(), '->request() uses the previous request for relative URLs');
-
-        $client = new TestClient();
-        $client->request('GET', 'http://www.example.com/foo');
-        $client->request('GET', 'http/bar');
-        $this->assertEquals('http://www.example.com/http/bar', $client->getRequest()->getUri(), '->request() uses the previous request for relative URLs');
-
-        $client = new TestClient();
-        $client->request('GET', 'http://www.example.com/');
-        $client->request('GET', 'http');
-        $this->assertEquals('http://www.example.com/http', $client->getRequest()->getUri(), '->request() uses the previous request for relative URLs');
-    }
-
-    public function testRequestURIConversionByServerHost()
-    {
-        $client = new TestClient();
-
-        $server = array('HTTP_HOST' => 'www.exampl+e.com:8000');
-        $parameters = array();
-        $files = array();
-
-        $client->request('GET', 'http://exampl+e.com', $parameters, $files, $server);
-        $this->assertEquals('http://www.exampl+e.com:8000', $client->getRequest()->getUri(), '->request() uses HTTP_HOST to add port');
-
-        $client->request('GET', 'http://exampl+e.com:8888', $parameters, $files, $server);
-        $this->assertEquals('http://www.exampl+e.com:8000', $client->getRequest()->getUri(), '->request() uses HTTP_HOST to modify existing port');
-
-        $client->request('GET', 'http://exampl+e.com:8000', $parameters, $files, $server);
-        $this->assertEquals('http://www.exampl+e.com:8000', $client->getRequest()->getUri(), '->request() uses HTTP_HOST respects correct set port');
-    }
-
-    public function testRequestReferer()
-    {
-        $client = new TestClient();
-        $client->request('GET', 'http://www.example.com/foo/foobar');
-        $client->request('GET', 'bar');
-        $server = $client->getRequest()->getServer();
-        $this->assertEquals('http://www.example.com/foo/foobar', $server['HTTP_REFERER'], '->request() sets the referer');
-    }
-
-    public function testRequestHistory()
-    {
-        $client = new TestClient();
-        $client->request('GET', 'http://www.example.com/foo/foobar');
-        $client->request('GET', 'bar');
-
-        $this->assertEquals('http://www.example.com/foo/bar', $client->getHistory()->current()->getUri(), '->request() updates the History');
-        $this->assertEquals('http://www.example.com/foo/foobar', $client->getHistory()->back()->getUri(), '->request() updates the History');
-    }
-
-    public function testRequestCookies()
-    {
-        $client = new TestClient();
-        $client->setNextResponse(new Response('<html><a href="/foo">foo</a></html>', 200, array('Set-Cookie' => 'foo=bar')));
-        $client->request('GET', 'http://www.example.com/foo/foobar');
-        $this->assertEquals(array('foo' => 'bar'), $client->getCookieJar()->allValues('http://www.example.com/foo/foobar'), '->request() updates the CookieJar');
-
-        $client->request('GET', 'bar');
-        $this->assertEquals(array('foo' => 'bar'), $client->getCookieJar()->allValues('http://www.example.com/foo/foobar'), '->request() updates the CookieJar');
-    }
-
-    public function testRequestSecureCookies()
-    {
-        $client = new TestClient();
-        $client->setNextResponse(new Response('<html><a href="/foo">foo</a></html>', 200, array('Set-Cookie' => 'foo=bar; path=/; secure')));
-        $client->request('GET', 'https://www.example.com/foo/foobar');
-
-        $this->assertTrue($client->getCookieJar()->get('foo', '/', 'www.example.com')->isSecure());
-    }
-
-    public function testClick()
-    {
-        $client = new TestClient();
-        $client->setNextResponse(new Response('<html><a href="/foo">foo</a></html>'));
-        $crawler = $client->request('GET', 'http://www.example.com/foo/foobar');
-
-        $client->click($crawler->filter('a')->link());
-
-        $this->assertEquals('http://www.example.com/foo', $client->getRequest()->getUri(), '->click() clicks on links');
-    }
-
-    public function testClickForm()
-    {
-        $client = new TestClient();
-        $client->setNextResponse(new Response('<html><form action="/foo"><input type="submit" /></form></html>'));
-        $crawler = $client->request('GET', 'http://www.example.com/foo/foobar');
-
-        $client->click($crawler->filter('input')->form());
-
-        $this->assertEquals('http://www.example.com/foo', $client->getRequest()->getUri(), '->click() Form submit forms');
-    }
-
-    public function testSubmit()
-    {
-        $client = new TestClient();
-        $client->setNextResponse(new Response('<html><form action="/foo"><input type="submit" /></form></html>'));
-        $crawler = $client->request('GET', 'http://www.example.com/foo/foobar');
-
-        $client->submit($crawler->filter('input')->form());
-
-        $this->assertEquals('http://www.example.com/foo', $client->getRequest()->getUri(), '->submit() submit forms');
-    }
-
-    public function testSubmitPreserveAuth()
-    {
-        $client = new TestClient(array('PHP_AUTH_USER' => 'foo', 'PHP_AUTH_PW' => 'bar'));
-        $client->setNextResponse(new Response('<html><form action="/foo"><input type="submit" /></form></html>'));
-        $crawler = $client->request('GET', 'http://www.example.com/foo/foobar');
-
-        $server = $client->getRequest()->getServer();
-        $this->assertArrayHasKey('PHP_AUTH_USER', $server);
-        $this->assertEquals('foo', $server['PHP_AUTH_USER']);
-        $this->assertArrayHasKey('PHP_AUTH_PW', $server);
-        $this->assertEquals('bar', $server['PHP_AUTH_PW']);
-
-        $client->submit($crawler->filter('input')->form());
-
-        $this->assertEquals('http://www.example.com/foo', $client->getRequest()->getUri(), '->submit() submit forms');
-
-        $server = $client->getRequest()->getServer();
-        $this->assertArrayHasKey('PHP_AUTH_USER', $server);
-        $this->assertEquals('foo', $server['PHP_AUTH_USER']);
-        $this->assertArrayHasKey('PHP_AUTH_PW', $server);
-        $this->assertEquals('bar', $server['PHP_AUTH_PW']);
-    }
-
-    public function testFollowRedirect()
-    {
-        $client = new TestClient();
-        $client->followRedirects(false);
-        $client->request('GET', 'http://www.example.com/foo/foobar');
-
-        try {
-            $client->followRedirect();
-            $this->fail('->followRedirect() throws a \LogicException if the request was not redirected');
-        } catch (\Exception $e) {
-            $this->assertInstanceOf('LogicException', $e, '->followRedirect() throws a \LogicException if the request was not redirected');
-        }
-
-        $client->setNextResponse(new Response('', 302, array('Location' => 'http://www.example.com/redirected')));
-        $client->request('GET', 'http://www.example.com/foo/foobar');
-        $client->followRedirect();
-
-        $this->assertEquals('http://www.example.com/redirected', $client->getRequest()->getUri(), '->followRedirect() follows a redirect if any');
-
-        $client = new TestClient();
-        $client->setNextResponse(new Response('', 302, array('Location' => 'http://www.example.com/redirected')));
-        $client->request('GET', 'http://www.example.com/foo/foobar');
-
-        $this->assertEquals('http://www.example.com/redirected', $client->getRequest()->getUri(), '->followRedirect() automatically follows redirects if followRedirects is true');
-
-        $client = new TestClient();
-        $client->setNextResponse(new Response('', 201, array('Location' => 'http://www.example.com/redirected')));
-        $client->request('GET', 'http://www.example.com/foo/foobar');
-
-        $this->assertEquals('http://www.example.com/foo/foobar', $client->getRequest()->getUri(), '->followRedirect() does not follow redirect if HTTP Code is not 30x');
-
-        $client = new TestClient();
-        $client->setNextResponse(new Response('', 201, array('Location' => 'http://www.example.com/redirected')));
-        $client->followRedirects(false);
-        $client->request('GET', 'http://www.example.com/foo/foobar');
-
-        try {
-            $client->followRedirect();
-            $this->fail('->followRedirect() throws a \LogicException if the request did not respond with 30x HTTP Code');
-        } catch (\Exception $e) {
-            $this->assertInstanceOf('LogicException', $e, '->followRedirect() throws a \LogicException if the request did not respond with 30x HTTP Code');
-        }
-    }
-
-    public function testFollowRelativeRedirect()
-    {
-        $client = new TestClient();
-        $client->setNextResponse(new Response('', 302, array('Location' => '/redirected')));
-        $client->request('GET', 'http://www.example.com/foo/foobar');
-        $this->assertEquals('http://www.example.com/redirected', $client->getRequest()->getUri(), '->followRedirect() follows a redirect if any');
-
-        $client = new TestClient();
-        $client->setNextResponse(new Response('', 302, array('Location' => '/redirected:1234')));
-        $client->request('GET', 'http://www.example.com/foo/foobar');
-        $this->assertEquals('http://www.example.com/redirected:1234', $client->getRequest()->getUri(), '->followRedirect() follows relative urls');
-    }
-
-    public function testFollowRedirectWithMaxRedirects()
-    {
-        $client = new TestClient();
-        $client->setMaxRedirects(1);
-        $client->setNextResponse(new Response('', 302, array('Location' => 'http://www.example.com/redirected')));
-        $client->request('GET', 'http://www.example.com/foo/foobar');
-        $this->assertEquals('http://www.example.com/redirected', $client->getRequest()->getUri(), '->followRedirect() follows a redirect if any');
-
-        $client->setNextResponse(new Response('', 302, array('Location' => 'http://www.example.com/redirected2')));
-        try {
-            $client->followRedirect();
-            $this->fail('->followRedirect() throws a \LogicException if the request was redirected and limit of redirections was reached');
-        } catch (\Exception $e) {
-            $this->assertInstanceOf('LogicException', $e, '->followRedirect() throws a \LogicException if the request was redirected and limit of redirections was reached');
-        }
-
-        $client->setNextResponse(new Response('', 302, array('Location' => 'http://www.example.com/redirected')));
-        $client->request('GET', 'http://www.example.com/foo/foobar');
-        $this->assertEquals('http://www.example.com/redirected', $client->getRequest()->getUri(), '->followRedirect() follows a redirect if any');
-
-        $client->setNextResponse(new Response('', 302, array('Location' => '/redirected')));
-        $client->request('GET', 'http://www.example.com/foo/foobar');
-
-        $this->assertEquals('http://www.example.com/redirected', $client->getRequest()->getUri(), '->followRedirect() follows relative URLs');
-
-        $client = new TestClient();
-        $client->setNextResponse(new Response('', 302, array('Location' => '//www.example.org/')));
-        $client->request('GET', 'https://www.example.com/');
-
-        $this->assertEquals('https://www.example.org/', $client->getRequest()->getUri(), '->followRedirect() follows protocol-relative URLs');
-
-        $client = new TestClient();
-        $client->setNextResponse(new Response('', 302, array('Location' => 'http://www.example.com/redirected')));
-        $client->request('POST', 'http://www.example.com/foo/foobar', array('name' => 'bar'));
-
-        $this->assertEquals('get', $client->getRequest()->getMethod(), '->followRedirect() uses a get for 302');
-        $this->assertEquals(array(), $client->getRequest()->getParameters(), '->followRedirect() does not submit parameters when changing the method');
-    }
-
-    public function testFollowRedirectWithCookies()
-    {
-        $client = new TestClient();
-        $client->followRedirects(false);
-        $client->setNextResponse(new Response('', 302, array(
-            'Location' => 'http://www.example.com/redirected',
-            'Set-Cookie' => 'foo=bar',
-        )));
-        $client->request('GET', 'http://www.example.com/');
-        $this->assertEquals(array(), $client->getRequest()->getCookies());
-        $client->followRedirect();
-        $this->assertEquals(array('foo' => 'bar'), $client->getRequest()->getCookies());
-    }
-
-    public function testFollowRedirectWithHeaders()
-    {
-        $headers = array(
-            'HTTP_HOST' => 'www.example.com',
-            'HTTP_USER_AGENT' => 'Symfony2 BrowserKit',
-            'CONTENT_TYPE' => 'application/vnd.custom+xml',
-            'HTTPS' => false,
-        );
-
-        $client = new TestClient();
-        $client->followRedirects(false);
-        $client->setNextResponse(new Response('', 302, array(
-            'Location' => 'http://www.example.com/redirected',
-        )));
-        $client->request('GET', 'http://www.example.com/', array(), array(), array(
-            'CONTENT_TYPE' => 'application/vnd.custom+xml',
-        ));
-
-        $this->assertEquals($headers, $client->getRequest()->getServer());
-
-        $client->followRedirect();
-
-        $headers['HTTP_REFERER'] = 'http://www.example.com/';
-
-        $this->assertEquals($headers, $client->getRequest()->getServer());
-    }
-
-    public function testFollowRedirectWithPort()
-    {
-        $headers = array(
-            'HTTP_HOST' => 'www.example.com:8080',
-            'HTTP_USER_AGENT' => 'Symfony2 BrowserKit',
-            'HTTPS' => false,
-            'HTTP_REFERER' => 'http://www.example.com:8080/',
-        );
-
-        $client = new TestClient();
-        $client->setNextResponse(new Response('', 302, array(
-            'Location' => 'http://www.example.com:8080/redirected',
-        )));
-        $client->request('GET', 'http://www.example.com:8080/');
-
-        $this->assertEquals($headers, $client->getRequest()->getServer());
-    }
-
-    public function testBack()
-    {
-        $client = new TestClient();
-
-        $parameters = array('foo' => 'bar');
-        $files = array('myfile.foo' => 'baz');
-        $server = array('X_TEST_FOO' => 'bazbar');
-        $content = 'foobarbaz';
-
-        $client->request('GET', 'http://www.example.com/foo/foobar', $parameters, $files, $server, $content);
-        $client->request('GET', 'http://www.example.com/foo');
-        $client->back();
-
-        $this->assertEquals('http://www.example.com/foo/foobar', $client->getRequest()->getUri(), '->back() goes back in the history');
-        $this->assertArrayHasKey('foo', $client->getRequest()->getParameters(), '->back() keeps parameters');
-        $this->assertArrayHasKey('myfile.foo', $client->getRequest()->getFiles(), '->back() keeps files');
-        $this->assertArrayHasKey('X_TEST_FOO', $client->getRequest()->getServer(), '->back() keeps $_SERVER');
-        $this->assertEquals($content, $client->getRequest()->getContent(), '->back() keeps content');
-    }
-
-    public function testForward()
-    {
-        $client = new TestClient();
-
-        $parameters = array('foo' => 'bar');
-        $files = array('myfile.foo' => 'baz');
-        $server = array('X_TEST_FOO' => 'bazbar');
-        $content = 'foobarbaz';
-
-        $client->request('GET', 'http://www.example.com/foo/foobar');
-        $client->request('GET', 'http://www.example.com/foo', $parameters, $files, $server, $content);
-        $client->back();
-        $client->forward();
-
-        $this->assertEquals('http://www.example.com/foo', $client->getRequest()->getUri(), '->forward() goes forward in the history');
-        $this->assertArrayHasKey('foo', $client->getRequest()->getParameters(), '->forward() keeps parameters');
-        $this->assertArrayHasKey('myfile.foo', $client->getRequest()->getFiles(), '->forward() keeps files');
-        $this->assertArrayHasKey('X_TEST_FOO', $client->getRequest()->getServer(), '->forward() keeps $_SERVER');
-        $this->assertEquals($content, $client->getRequest()->getContent(), '->forward() keeps content');
-    }
-
-    public function testReload()
-    {
-        $client = new TestClient();
-
-        $parameters = array('foo' => 'bar');
-        $files = array('myfile.foo' => 'baz');
-        $server = array('X_TEST_FOO' => 'bazbar');
-        $content = 'foobarbaz';
-
-        $client->request('GET', 'http://www.example.com/foo/foobar', $parameters, $files, $server, $content);
-        $client->reload();
-
-        $this->assertEquals('http://www.example.com/foo/foobar', $client->getRequest()->getUri(), '->reload() reloads the current page');
-        $this->assertArrayHasKey('foo', $client->getRequest()->getParameters(), '->reload() keeps parameters');
-        $this->assertArrayHasKey('myfile.foo', $client->getRequest()->getFiles(), '->reload() keeps files');
-        $this->assertArrayHasKey('X_TEST_FOO', $client->getRequest()->getServer(), '->reload() keeps $_SERVER');
-        $this->assertEquals($content, $client->getRequest()->getContent(), '->reload() keeps content');
-    }
-
-    public function testRestart()
-    {
-        $client = new TestClient();
-        $client->request('GET', 'http://www.example.com/foo/foobar');
-        $client->restart();
-
-        $this->assertTrue($client->getHistory()->isEmpty(), '->restart() clears the history');
-        $this->assertEquals(array(), $client->getCookieJar()->all(), '->restart() clears the cookies');
-    }
-
-    public function testInsulatedRequests()
-    {
-        $client = new TestClient();
-        $client->insulate();
-        $client->setNextScript("new Symfony\Component\BrowserKit\Response('foobar')");
-        $client->request('GET', 'http://www.example.com/foo/foobar');
-
-        $this->assertEquals('foobar', $client->getResponse()->getContent(), '->insulate() process the request in a forked process');
-
-        $client->setNextScript("new Symfony\Component\BrowserKit\Response('foobar)");
-
-        try {
-            $client->request('GET', 'http://www.example.com/foo/foobar');
-            $this->fail('->request() throws a \RuntimeException if the script has an error');
-        } catch (\Exception $e) {
-            $this->assertInstanceOf('RuntimeException', $e, '->request() throws a \RuntimeException if the script has an error');
-        }
-    }
-
-    public function testGetServerParameter()
-    {
-        $client = new TestClient();
-        $this->assertEquals('localhost', $client->getServerParameter('HTTP_HOST'));
-        $this->assertEquals('Symfony2 BrowserKit', $client->getServerParameter('HTTP_USER_AGENT'));
-        $this->assertEquals('testvalue', $client->getServerParameter('testkey', 'testvalue'));
-    }
-
-    public function testSetServerParameter()
-    {
-        $client = new TestClient();
-
-        $this->assertEquals('localhost', $client->getServerParameter('HTTP_HOST'));
-        $this->assertEquals('Symfony2 BrowserKit', $client->getServerParameter('HTTP_USER_AGENT'));
-
-        $client->setServerParameter('HTTP_HOST', 'testhost');
-        $this->assertEquals('testhost', $client->getServerParameter('HTTP_HOST'));
-
-        $client->setServerParameter('HTTP_USER_AGENT', 'testua');
-        $this->assertEquals('testua', $client->getServerParameter('HTTP_USER_AGENT'));
-    }
-
-    public function testSetServerParameterInRequest()
-    {
-        $client = new TestClient();
-
-        $this->assertEquals('localhost', $client->getServerParameter('HTTP_HOST'));
-        $this->assertEquals('Symfony2 BrowserKit', $client->getServerParameter('HTTP_USER_AGENT'));
-
-        $client->request('GET', 'https://www.example.com/https/www.example.com', array(), array(), array(
-            'HTTP_HOST' => 'testhost',
-            'HTTP_USER_AGENT' => 'testua',
-            'HTTPS' => false,
-            'NEW_SERVER_KEY' => 'new-server-key-value',
-        ));
-
-        $this->assertEquals('localhost', $client->getServerParameter('HTTP_HOST'));
-        $this->assertEquals('Symfony2 BrowserKit', $client->getServerParameter('HTTP_USER_AGENT'));
-
-        $this->assertEquals('http://testhost/https/www.example.com', $client->getRequest()->getUri());
-
-        $server = $client->getRequest()->getServer();
-
-        $this->assertArrayHasKey('HTTP_USER_AGENT', $server);
-        $this->assertEquals('testua', $server['HTTP_USER_AGENT']);
-
-        $this->assertArrayHasKey('HTTP_HOST', $server);
-        $this->assertEquals('testhost', $server['HTTP_HOST']);
-
-        $this->assertArrayHasKey('NEW_SERVER_KEY', $server);
-        $this->assertEquals('new-server-key-value', $server['NEW_SERVER_KEY']);
-
-        $this->assertArrayHasKey('HTTPS', $server);
-        $this->assertFalse($server['HTTPS']);
-    }
-}
diff --git a/vendor/symfony/browser-kit/Tests/CookieJarTest.php b/vendor/symfony/browser-kit/Tests/CookieJarTest.php
deleted file mode 100644
index 4da4404..0000000
--- a/vendor/symfony/browser-kit/Tests/CookieJarTest.php
+++ /dev/null
@@ -1,231 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\BrowserKit\Tests;
-
-use Symfony\Component\BrowserKit\CookieJar;
-use Symfony\Component\BrowserKit\Cookie;
-use Symfony\Component\BrowserKit\Response;
-
-class CookieJarTest extends \PHPUnit_Framework_TestCase
-{
-    public function testSetGet()
-    {
-        $cookieJar = new CookieJar();
-        $cookieJar->set($cookie = new Cookie('foo', 'bar'));
-
-        $this->assertEquals($cookie, $cookieJar->get('foo'), '->set() sets a cookie');
-
-        $this->assertNull($cookieJar->get('foobar'), '->get() returns null if the cookie does not exist');
-
-        $cookieJar->set($cookie = new Cookie('foo', 'bar', time() - 86400));
-        $this->assertNull($cookieJar->get('foo'), '->get() returns null if the cookie is expired');
-    }
-
-    public function testExpire()
-    {
-        $cookieJar = new CookieJar();
-        $cookieJar->set($cookie = new Cookie('foo', 'bar'));
-        $cookieJar->expire('foo');
-        $this->assertNull($cookieJar->get('foo'), '->get() returns null if the cookie is expired');
-    }
-
-    public function testAll()
-    {
-        $cookieJar = new CookieJar();
-        $cookieJar->set($cookie1 = new Cookie('foo', 'bar'));
-        $cookieJar->set($cookie2 = new Cookie('bar', 'foo'));
-
-        $this->assertEquals(array($cookie1, $cookie2), $cookieJar->all(), '->all() returns all cookies in the jar');
-    }
-
-    public function testClear()
-    {
-        $cookieJar = new CookieJar();
-        $cookieJar->set($cookie1 = new Cookie('foo', 'bar'));
-        $cookieJar->set($cookie2 = new Cookie('bar', 'foo'));
-
-        $cookieJar->clear();
-
-        $this->assertEquals(array(), $cookieJar->all(), '->clear() expires all cookies');
-    }
-
-    public function testUpdateFromResponse()
-    {
-        $response = new Response('', 200, array('Set-Cookie' => 'foo=foo'));
-
-        $cookieJar = new CookieJar();
-        $cookieJar->updateFromResponse($response);
-
-        $this->assertEquals('foo', $cookieJar->get('foo')->getValue(), '->updateFromResponse() updates cookies from a Response objects');
-    }
-
-    public function testUpdateFromSetCookie()
-    {
-        $setCookies = array('foo=foo');
-
-        $cookieJar = new CookieJar();
-        $cookieJar->set(new Cookie('bar', 'bar'));
-        $cookieJar->updateFromSetCookie($setCookies);
-
-        $this->assertInstanceOf('Symfony\Component\BrowserKit\Cookie', $cookieJar->get('foo'));
-        $this->assertInstanceOf('Symfony\Component\BrowserKit\Cookie', $cookieJar->get('bar'));
-        $this->assertEquals('foo', $cookieJar->get('foo')->getValue(), '->updateFromSetCookie() updates cookies from a Set-Cookie header');
-        $this->assertEquals('bar', $cookieJar->get('bar')->getValue(), '->updateFromSetCookie() keeps existing cookies');
-    }
-
-    public function testUpdateFromEmptySetCookie()
-    {
-        $cookieJar = new CookieJar();
-        $cookieJar->updateFromSetCookie(array(''));
-        $this->assertEquals(array(), $cookieJar->all());
-    }
-
-    public function testUpdateFromSetCookieWithMultipleCookies()
-    {
-        $timestamp = time() + 3600;
-        $date = gmdate('D, d M Y H:i:s \G\M\T', $timestamp);
-        $setCookies = array(sprintf('foo=foo; expires=%s; domain=.symfony.com; path=/, bar=bar; domain=.blog.symfony.com, PHPSESSID=id; expires=%s', $date, $date));
-
-        $cookieJar = new CookieJar();
-        $cookieJar->updateFromSetCookie($setCookies);
-
-        $fooCookie = $cookieJar->get('foo', '/', '.symfony.com');
-        $barCookie = $cookieJar->get('bar', '/', '.blog.symfony.com');
-        $phpCookie = $cookieJar->get('PHPSESSID');
-
-        $this->assertInstanceOf('Symfony\Component\BrowserKit\Cookie', $fooCookie);
-        $this->assertInstanceOf('Symfony\Component\BrowserKit\Cookie', $barCookie);
-        $this->assertInstanceOf('Symfony\Component\BrowserKit\Cookie', $phpCookie);
-        $this->assertEquals('foo', $fooCookie->getValue());
-        $this->assertEquals('bar', $barCookie->getValue());
-        $this->assertEquals('id', $phpCookie->getValue());
-        $this->assertEquals($timestamp, $fooCookie->getExpiresTime());
-        $this->assertNull($barCookie->getExpiresTime());
-        $this->assertEquals($timestamp, $phpCookie->getExpiresTime());
-    }
-
-    /**
-     * @dataProvider provideAllValuesValues
-     */
-    public function testAllValues($uri, $values)
-    {
-        $cookieJar = new CookieJar();
-        $cookieJar->set($cookie1 = new Cookie('foo_nothing', 'foo'));
-        $cookieJar->set($cookie2 = new Cookie('foo_expired', 'foo', time() - 86400));
-        $cookieJar->set($cookie3 = new Cookie('foo_path', 'foo', null, '/foo'));
-        $cookieJar->set($cookie4 = new Cookie('foo_domain', 'foo', null, '/', '.example.com'));
-        $cookieJar->set($cookie4 = new Cookie('foo_strict_domain', 'foo', null, '/', '.www4.example.com'));
-        $cookieJar->set($cookie5 = new Cookie('foo_secure', 'foo', null, '/', '', true));
-
-        $this->assertEquals($values, array_keys($cookieJar->allValues($uri)), '->allValues() returns the cookie for a given URI');
-    }
-
-    public function provideAllValuesValues()
-    {
-        return array(
-            array('http://www.example.com', array('foo_nothing', 'foo_domain')),
-            array('http://www.example.com/', array('foo_nothing', 'foo_domain')),
-            array('http://foo.example.com/', array('foo_nothing', 'foo_domain')),
-            array('http://foo.example1.com/', array('foo_nothing')),
-            array('https://foo.example.com/', array('foo_nothing', 'foo_secure', 'foo_domain')),
-            array('http://www.example.com/foo/bar', array('foo_nothing', 'foo_path', 'foo_domain')),
-            array('http://www4.example.com/', array('foo_nothing', 'foo_domain', 'foo_strict_domain')),
-        );
-    }
-
-    public function testEncodedValues()
-    {
-        $cookieJar = new CookieJar();
-        $cookieJar->set($cookie = new Cookie('foo', 'bar%3Dbaz', null, '/', '', false, true, true));
-
-        $this->assertEquals(array('foo' => 'bar=baz'), $cookieJar->allValues('/'));
-        $this->assertEquals(array('foo' => 'bar%3Dbaz'), $cookieJar->allRawValues('/'));
-    }
-
-    public function testCookieExpireWithSameNameButDifferentPaths()
-    {
-        $cookieJar = new CookieJar();
-        $cookieJar->set($cookie1 = new Cookie('foo', 'bar1', null, '/foo'));
-        $cookieJar->set($cookie2 = new Cookie('foo', 'bar2', null, '/bar'));
-        $cookieJar->expire('foo', '/foo');
-
-        $this->assertNull($cookieJar->get('foo'), '->get() returns null if the cookie is expired');
-        $this->assertEquals(array(), array_keys($cookieJar->allValues('http://example.com/')));
-        $this->assertEquals(array(), $cookieJar->allValues('http://example.com/foo'));
-        $this->assertEquals(array('foo' => 'bar2'), $cookieJar->allValues('http://example.com/bar'));
-    }
-
-    public function testCookieExpireWithNullPaths()
-    {
-        $cookieJar = new CookieJar();
-        $cookieJar->set($cookie1 = new Cookie('foo', 'bar1', null, '/'));
-        $cookieJar->expire('foo', null);
-
-        $this->assertNull($cookieJar->get('foo'), '->get() returns null if the cookie is expired');
-        $this->assertEquals(array(), array_keys($cookieJar->allValues('http://example.com/')));
-    }
-
-    public function testCookieWithSameNameButDifferentPaths()
-    {
-        $cookieJar = new CookieJar();
-        $cookieJar->set($cookie1 = new Cookie('foo', 'bar1', null, '/foo'));
-        $cookieJar->set($cookie2 = new Cookie('foo', 'bar2', null, '/bar'));
-
-        $this->assertEquals(array(), array_keys($cookieJar->allValues('http://example.com/')));
-        $this->assertEquals(array('foo' => 'bar1'), $cookieJar->allValues('http://example.com/foo'));
-        $this->assertEquals(array('foo' => 'bar2'), $cookieJar->allValues('http://example.com/bar'));
-    }
-
-    public function testCookieWithSameNameButDifferentDomains()
-    {
-        $cookieJar = new CookieJar();
-        $cookieJar->set($cookie1 = new Cookie('foo', 'bar1', null, '/', 'foo.example.com'));
-        $cookieJar->set($cookie2 = new Cookie('foo', 'bar2', null, '/', 'bar.example.com'));
-
-        $this->assertEquals(array(), array_keys($cookieJar->allValues('http://example.com/')));
-        $this->assertEquals(array('foo' => 'bar1'), $cookieJar->allValues('http://foo.example.com/'));
-        $this->assertEquals(array('foo' => 'bar2'), $cookieJar->allValues('http://bar.example.com/'));
-    }
-
-    public function testCookieGetWithSubdomain()
-    {
-        $cookieJar = new CookieJar();
-        $cookieJar->set($cookie1 = new Cookie('foo', 'bar', null, '/', '.example.com'));
-        $cookieJar->set($cookie2 = new Cookie('foo1', 'bar', null, '/', 'test.example.com'));
-
-        $this->assertEquals($cookie1, $cookieJar->get('foo', '/', 'foo.example.com'));
-        $this->assertEquals($cookie1, $cookieJar->get('foo', '/', 'example.com'));
-        $this->assertEquals($cookie2, $cookieJar->get('foo1', '/', 'test.example.com'));
-    }
-
-    public function testCookieGetWithSubdirectory()
-    {
-        $cookieJar = new CookieJar();
-        $cookieJar->set($cookie1 = new Cookie('foo', 'bar', null, '/test', '.example.com'));
-        $cookieJar->set($cookie2 = new Cookie('foo1', 'bar1', null, '/', '.example.com'));
-
-        $this->assertNull($cookieJar->get('foo', '/', '.example.com'));
-        $this->assertNull($cookieJar->get('foo', '/bar', '.example.com'));
-        $this->assertEquals($cookie1, $cookieJar->get('foo', '/test', 'example.com'));
-        $this->assertEquals($cookie2, $cookieJar->get('foo1', '/', 'example.com'));
-        $this->assertEquals($cookie2, $cookieJar->get('foo1', '/bar', 'example.com'));
-    }
-
-    public function testCookieWithWildcardDomain()
-    {
-        $cookieJar = new CookieJar();
-        $cookieJar->set(new Cookie('foo', 'bar', null, '/', '.example.com'));
-
-        $this->assertEquals(array('foo' => 'bar'), $cookieJar->allValues('http://www.example.com'));
-        $this->assertEmpty($cookieJar->allValues('http://wwwexample.com'));
-    }
-}
diff --git a/vendor/symfony/browser-kit/Tests/CookieTest.php b/vendor/symfony/browser-kit/Tests/CookieTest.php
deleted file mode 100644
index e1dd0df..0000000
--- a/vendor/symfony/browser-kit/Tests/CookieTest.php
+++ /dev/null
@@ -1,179 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\BrowserKit\Tests;
-
-use Symfony\Component\BrowserKit\Cookie;
-
-class CookieTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @dataProvider getTestsForToFromString
-     */
-    public function testToFromString($cookie, $url = null)
-    {
-        $this->assertEquals($cookie, (string) Cookie::fromString($cookie, $url));
-    }
-
-    public function getTestsForToFromString()
-    {
-        return array(
-            array('foo=bar; path=/'),
-            array('foo=bar; path=/foo'),
-            array('foo=bar; domain=google.com; path=/'),
-            array('foo=bar; domain=example.com; path=/; secure', 'https://example.com/'),
-            array('foo=bar; path=/; httponly'),
-            array('foo=bar; domain=google.com; path=/foo; secure; httponly', 'https://google.com/'),
-            array('foo=bar=baz; path=/'),
-            array('foo=bar%3Dbaz; path=/'),
-        );
-    }
-
-    public function testFromStringIgnoreSecureFlag()
-    {
-        $this->assertFalse(Cookie::fromString('foo=bar; secure')->isSecure());
-        $this->assertFalse(Cookie::fromString('foo=bar; secure', 'http://example.com/')->isSecure());
-    }
-
-    /**
-     * @dataProvider getExpireCookieStrings
-     */
-    public function testFromStringAcceptsSeveralExpiresDateFormats($cookie)
-    {
-        $this->assertEquals(1596185377, Cookie::fromString($cookie)->getExpiresTime());
-    }
-
-    public function getExpireCookieStrings()
-    {
-        return array(
-            array('foo=bar; expires=Fri, 31-Jul-2020 08:49:37 GMT'),
-            array('foo=bar; expires=Fri, 31 Jul 2020 08:49:37 GMT'),
-            array('foo=bar; expires=Fri, 31-07-2020 08:49:37 GMT'),
-            array('foo=bar; expires=Fri, 31-07-20 08:49:37 GMT'),
-            array('foo=bar; expires=Friday, 31-Jul-20 08:49:37 GMT'),
-            array('foo=bar; expires=Fri Jul 31 08:49:37 2020'),
-            array('foo=bar; expires=\'Fri Jul 31 08:49:37 2020\''),
-            array('foo=bar; expires=Friday July 31st 2020, 08:49:37 GMT'),
-        );
-    }
-
-    public function testFromStringWithCapitalization()
-    {
-        $this->assertEquals('Foo=Bar; path=/', (string) Cookie::fromString('Foo=Bar'));
-        $this->assertEquals('foo=bar; expires=Fri, 31 Dec 2010 23:59:59 GMT; path=/', (string) Cookie::fromString('foo=bar; Expires=Fri, 31 Dec 2010 23:59:59 GMT'));
-        $this->assertEquals('foo=bar; domain=www.example.org; path=/; httponly', (string) Cookie::fromString('foo=bar; DOMAIN=www.example.org; HttpOnly'));
-    }
-
-    public function testFromStringWithUrl()
-    {
-        $this->assertEquals('foo=bar; domain=www.example.com; path=/', (string) Cookie::fromString('foo=bar', 'http://www.example.com/'));
-        $this->assertEquals('foo=bar; domain=www.example.com; path=/', (string) Cookie::fromString('foo=bar', 'http://www.example.com'));
-        $this->assertEquals('foo=bar; domain=www.example.com; path=/', (string) Cookie::fromString('foo=bar', 'http://www.example.com?foo'));
-        $this->assertEquals('foo=bar; domain=www.example.com; path=/foo', (string) Cookie::fromString('foo=bar', 'http://www.example.com/foo/bar'));
-        $this->assertEquals('foo=bar; domain=www.example.com; path=/', (string) Cookie::fromString('foo=bar; path=/', 'http://www.example.com/foo/bar'));
-        $this->assertEquals('foo=bar; domain=www.myotherexample.com; path=/', (string) Cookie::fromString('foo=bar; domain=www.myotherexample.com', 'http://www.example.com/'));
-    }
-
-    public function testFromStringThrowsAnExceptionIfCookieIsNotValid()
-    {
-        $this->setExpectedException('InvalidArgumentException');
-        Cookie::fromString('foo');
-    }
-
-    public function testFromStringThrowsAnExceptionIfCookieDateIsNotValid()
-    {
-        $this->setExpectedException('InvalidArgumentException');
-        Cookie::fromString('foo=bar; expires=Flursday July 31st 2020, 08:49:37 GMT');
-    }
-
-    public function testFromStringThrowsAnExceptionIfUrlIsNotValid()
-    {
-        $this->setExpectedException('InvalidArgumentException');
-        Cookie::fromString('foo=bar', 'foobar');
-    }
-
-    public function testGetName()
-    {
-        $cookie = new Cookie('foo', 'bar');
-        $this->assertEquals('foo', $cookie->getName(), '->getName() returns the cookie name');
-    }
-
-    public function testGetValue()
-    {
-        $cookie = new Cookie('foo', 'bar');
-        $this->assertEquals('bar', $cookie->getValue(), '->getValue() returns the cookie value');
-
-        $cookie = new Cookie('foo', 'bar%3Dbaz', null, '/', '', false, true, true); // raw value
-        $this->assertEquals('bar=baz', $cookie->getValue(), '->getValue() returns the urldecoded cookie value');
-    }
-
-    public function testGetRawValue()
-    {
-        $cookie = new Cookie('foo', 'bar=baz'); // decoded value
-        $this->assertEquals('bar%3Dbaz', $cookie->getRawValue(), '->getRawValue() returns the urlencoded cookie value');
-        $cookie = new Cookie('foo', 'bar%3Dbaz', null, '/', '', false, true, true); // raw value
-        $this->assertEquals('bar%3Dbaz', $cookie->getRawValue(), '->getRawValue() returns the non-urldecoded cookie value');
-    }
-
-    public function testGetPath()
-    {
-        $cookie = new Cookie('foo', 'bar', 0);
-        $this->assertEquals('/', $cookie->getPath(), '->getPath() returns / is no path is defined');
-
-        $cookie = new Cookie('foo', 'bar', 0, '/foo');
-        $this->assertEquals('/foo', $cookie->getPath(), '->getPath() returns the cookie path');
-    }
-
-    public function testGetDomain()
-    {
-        $cookie = new Cookie('foo', 'bar', 0, '/', 'foo.com');
-        $this->assertEquals('foo.com', $cookie->getDomain(), '->getDomain() returns the cookie domain');
-    }
-
-    public function testIsSecure()
-    {
-        $cookie = new Cookie('foo', 'bar');
-        $this->assertFalse($cookie->isSecure(), '->isSecure() returns false if not defined');
-
-        $cookie = new Cookie('foo', 'bar', 0, '/', 'foo.com', true);
-        $this->assertTrue($cookie->isSecure(), '->isSecure() returns the cookie secure flag');
-    }
-
-    public function testIsHttponly()
-    {
-        $cookie = new Cookie('foo', 'bar');
-        $this->assertTrue($cookie->isHttpOnly(), '->isHttpOnly() returns false if not defined');
-
-        $cookie = new Cookie('foo', 'bar', 0, '/', 'foo.com', false, true);
-        $this->assertTrue($cookie->isHttpOnly(), '->isHttpOnly() returns the cookie httponly flag');
-    }
-
-    public function testGetExpiresTime()
-    {
-        $cookie = new Cookie('foo', 'bar');
-        $this->assertNull($cookie->getExpiresTime(), '->getExpiresTime() returns the expires time');
-
-        $cookie = new Cookie('foo', 'bar', $time = time() - 86400);
-        $this->assertEquals($time, $cookie->getExpiresTime(), '->getExpiresTime() returns the expires time');
-    }
-
-    public function testIsExpired()
-    {
-        $cookie = new Cookie('foo', 'bar');
-        $this->assertFalse($cookie->isExpired(), '->isExpired() returns false when the cookie never expires (null as expires time)');
-
-        $cookie = new Cookie('foo', 'bar', time() - 86400);
-        $this->assertTrue($cookie->isExpired(), '->isExpired() returns true when the cookie is expired');
-
-        $cookie = new Cookie('foo', 'bar', 0);
-        $this->assertFalse($cookie->isExpired());
-    }
-}
diff --git a/vendor/symfony/browser-kit/Tests/HistoryTest.php b/vendor/symfony/browser-kit/Tests/HistoryTest.php
deleted file mode 100644
index d6d830e..0000000
--- a/vendor/symfony/browser-kit/Tests/HistoryTest.php
+++ /dev/null
@@ -1,101 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\BrowserKit\Tests;
-
-use Symfony\Component\BrowserKit\History;
-use Symfony\Component\BrowserKit\Request;
-
-class HistoryTest extends \PHPUnit_Framework_TestCase
-{
-    public function testAdd()
-    {
-        $history = new History();
-        $history->add(new Request('http://www.example1.com/', 'get'));
-        $this->assertSame('http://www.example1.com/', $history->current()->getUri(), '->add() adds a request to the history');
-
-        $history->add(new Request('http://www.example2.com/', 'get'));
-        $this->assertSame('http://www.example2.com/', $history->current()->getUri(), '->add() adds a request to the history');
-
-        $history->add(new Request('http://www.example3.com/', 'get'));
-        $history->back();
-        $history->add(new Request('http://www.example4.com/', 'get'));
-        $this->assertSame('http://www.example4.com/', $history->current()->getUri(), '->add() adds a request to the history');
-
-        $history->back();
-        $this->assertSame('http://www.example2.com/', $history->current()->getUri(), '->add() adds a request to the history');
-    }
-
-    public function testClearIsEmpty()
-    {
-        $history = new History();
-        $history->add(new Request('http://www.example.com/', 'get'));
-
-        $this->assertFalse($history->isEmpty(), '->isEmpty() returns false if the history is not empty');
-
-        $history->clear();
-
-        $this->assertTrue($history->isEmpty(), '->isEmpty() true if the history is empty');
-    }
-
-    public function testCurrent()
-    {
-        $history = new History();
-
-        try {
-            $history->current();
-            $this->fail('->current() throws a \LogicException if the history is empty');
-        } catch (\Exception $e) {
-            $this->assertInstanceOf('LogicException', $e, '->current() throws a \LogicException if the history is empty');
-        }
-
-        $history->add(new Request('http://www.example.com/', 'get'));
-
-        $this->assertSame('http://www.example.com/', $history->current()->getUri(), '->current() returns the current request in the history');
-    }
-
-    public function testBack()
-    {
-        $history = new History();
-        $history->add(new Request('http://www.example.com/', 'get'));
-
-        try {
-            $history->back();
-            $this->fail('->back() throws a \LogicException if the history is already on the first page');
-        } catch (\Exception $e) {
-            $this->assertInstanceOf('LogicException', $e, '->current() throws a \LogicException if the history is already on the first page');
-        }
-
-        $history->add(new Request('http://www.example1.com/', 'get'));
-        $history->back();
-
-        $this->assertSame('http://www.example.com/', $history->current()->getUri(), '->back() returns the previous request in the history');
-    }
-
-    public function testForward()
-    {
-        $history = new History();
-        $history->add(new Request('http://www.example.com/', 'get'));
-        $history->add(new Request('http://www.example1.com/', 'get'));
-
-        try {
-            $history->forward();
-            $this->fail('->forward() throws a \LogicException if the history is already on the last page');
-        } catch (\Exception $e) {
-            $this->assertInstanceOf('LogicException', $e, '->forward() throws a \LogicException if the history is already on the last page');
-        }
-
-        $history->back();
-        $history->forward();
-
-        $this->assertSame('http://www.example1.com/', $history->current()->getUri(), '->forward() returns the next request in the history');
-    }
-}
diff --git a/vendor/symfony/browser-kit/Tests/RequestTest.php b/vendor/symfony/browser-kit/Tests/RequestTest.php
deleted file mode 100644
index b75b5fb..0000000
--- a/vendor/symfony/browser-kit/Tests/RequestTest.php
+++ /dev/null
@@ -1,53 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\BrowserKit\Tests;
-
-use Symfony\Component\BrowserKit\Request;
-
-class RequestTest extends \PHPUnit_Framework_TestCase
-{
-    public function testGetUri()
-    {
-        $request = new Request('http://www.example.com/', 'get');
-        $this->assertEquals('http://www.example.com/', $request->getUri(), '->getUri() returns the URI of the request');
-    }
-
-    public function testGetMethod()
-    {
-        $request = new Request('http://www.example.com/', 'get');
-        $this->assertEquals('get', $request->getMethod(), '->getMethod() returns the method of the request');
-    }
-
-    public function testGetParameters()
-    {
-        $request = new Request('http://www.example.com/', 'get', array('foo' => 'bar'));
-        $this->assertEquals(array('foo' => 'bar'), $request->getParameters(), '->getParameters() returns the parameters of the request');
-    }
-
-    public function testGetFiles()
-    {
-        $request = new Request('http://www.example.com/', 'get', array(), array('foo' => 'bar'));
-        $this->assertEquals(array('foo' => 'bar'), $request->getFiles(), '->getFiles() returns the uploaded files of the request');
-    }
-
-    public function testGetCookies()
-    {
-        $request = new Request('http://www.example.com/', 'get', array(), array(), array('foo' => 'bar'));
-        $this->assertEquals(array('foo' => 'bar'), $request->getCookies(), '->getCookies() returns the cookies of the request');
-    }
-
-    public function testGetServer()
-    {
-        $request = new Request('http://www.example.com/', 'get', array(), array(), array(), array('foo' => 'bar'));
-        $this->assertEquals(array('foo' => 'bar'), $request->getServer(), '->getServer() returns the server parameters of the request');
-    }
-}
diff --git a/vendor/symfony/browser-kit/Tests/ResponseTest.php b/vendor/symfony/browser-kit/Tests/ResponseTest.php
deleted file mode 100644
index bfe3cd5..0000000
--- a/vendor/symfony/browser-kit/Tests/ResponseTest.php
+++ /dev/null
@@ -1,76 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\BrowserKit\Tests;
-
-use Symfony\Component\BrowserKit\Response;
-
-class ResponseTest extends \PHPUnit_Framework_TestCase
-{
-    public function testGetUri()
-    {
-        $response = new Response('foo');
-        $this->assertEquals('foo', $response->getContent(), '->getContent() returns the content of the response');
-    }
-
-    public function testGetStatus()
-    {
-        $response = new Response('foo', 304);
-        $this->assertEquals('304', $response->getStatus(), '->getStatus() returns the status of the response');
-    }
-
-    public function testGetHeaders()
-    {
-        $response = new Response('foo', 200, array('foo' => 'bar'));
-        $this->assertEquals(array('foo' => 'bar'), $response->getHeaders(), '->getHeaders() returns the headers of the response');
-    }
-
-    public function testGetHeader()
-    {
-        $response = new Response('foo', 200, array(
-            'Content-Type' => 'text/html',
-            'Set-Cookie' => array('foo=bar', 'bar=foo'),
-        ));
-
-        $this->assertEquals('text/html', $response->getHeader('Content-Type'), '->getHeader() returns a header of the response');
-        $this->assertEquals('text/html', $response->getHeader('content-type'), '->getHeader() returns a header of the response');
-        $this->assertEquals('text/html', $response->getHeader('content_type'), '->getHeader() returns a header of the response');
-        $this->assertEquals('foo=bar', $response->getHeader('Set-Cookie'), '->getHeader() returns the first header value');
-        $this->assertEquals(array('foo=bar', 'bar=foo'), $response->getHeader('Set-Cookie', false), '->getHeader() returns all header values if first is false');
-
-        $this->assertNull($response->getHeader('foo'), '->getHeader() returns null if the header is not defined');
-        $this->assertEquals(array(), $response->getHeader('foo', false), '->getHeader() returns an empty array if the header is not defined and first is set to false');
-    }
-
-    public function testMagicToString()
-    {
-        $response = new Response('foo', 304, array('foo' => 'bar'));
-
-        $this->assertEquals("foo: bar\n\nfoo", $response->__toString(), '->__toString() returns the headers and the content as a string');
-    }
-
-    public function testMagicToStringWithMultipleSetCookieHeader()
-    {
-        $headers = array(
-            'content-type' => 'text/html; charset=utf-8',
-            'set-cookie' => array('foo=bar', 'bar=foo'),
-        );
-
-        $expected = 'content-type: text/html; charset=utf-8'."\n";
-        $expected .= 'set-cookie: foo=bar'."\n";
-        $expected .= 'set-cookie: bar=foo'."\n\n";
-        $expected .= 'foo';
-
-        $response = new Response('foo', 304, $headers);
-
-        $this->assertEquals($expected, $response->__toString(), '->__toString() returns the headers and the content as a string');
-    }
-}
diff --git a/vendor/symfony/class-loader/Tests/ClassCollectionLoaderTest.php b/vendor/symfony/class-loader/Tests/ClassCollectionLoaderTest.php
deleted file mode 100644
index e821e45..0000000
--- a/vendor/symfony/class-loader/Tests/ClassCollectionLoaderTest.php
+++ /dev/null
@@ -1,292 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\ClassLoader\Tests;
-
-use Symfony\Component\ClassLoader\ClassCollectionLoader;
-
-require_once __DIR__.'/Fixtures/ClassesWithParents/GInterface.php';
-require_once __DIR__.'/Fixtures/ClassesWithParents/CInterface.php';
-require_once __DIR__.'/Fixtures/ClassesWithParents/B.php';
-require_once __DIR__.'/Fixtures/ClassesWithParents/A.php';
-
-class ClassCollectionLoaderTest extends \PHPUnit_Framework_TestCase
-{
-    public function testTraitDependencies()
-    {
-        if (PHP_VERSION_ID < 50400) {
-            $this->markTestSkipped('Requires PHP > 5.4');
-
-            return;
-        }
-
-        require_once __DIR__.'/Fixtures/deps/traits.php';
-
-        $r = new \ReflectionClass('Symfony\Component\ClassLoader\ClassCollectionLoader');
-        $m = $r->getMethod('getOrderedClasses');
-        $m->setAccessible(true);
-
-        $ordered = $m->invoke('Symfony\Component\ClassLoader\ClassCollectionLoader', array('CTFoo'));
-
-        $this->assertEquals(
-            array('TD', 'TC', 'TB', 'TA', 'TZ', 'CTFoo'),
-            array_map(function ($class) { return $class->getName(); }, $ordered)
-        );
-
-        $ordered = $m->invoke('Symfony\Component\ClassLoader\ClassCollectionLoader', array('CTBar'));
-
-        $this->assertEquals(
-            array('TD', 'TZ', 'TC', 'TB', 'TA', 'CTBar'),
-            array_map(function ($class) { return $class->getName(); }, $ordered)
-        );
-    }
-
-    /**
-     * @dataProvider getDifferentOrders
-     */
-    public function testClassReordering(array $classes)
-    {
-        $expected = array(
-            'ClassesWithParents\\GInterface',
-            'ClassesWithParents\\CInterface',
-            'ClassesWithParents\\B',
-            'ClassesWithParents\\A',
-        );
-
-        $r = new \ReflectionClass('Symfony\Component\ClassLoader\ClassCollectionLoader');
-        $m = $r->getMethod('getOrderedClasses');
-        $m->setAccessible(true);
-
-        $ordered = $m->invoke('Symfony\Component\ClassLoader\ClassCollectionLoader', $classes);
-
-        $this->assertEquals($expected, array_map(function ($class) { return $class->getName(); }, $ordered));
-    }
-
-    public function getDifferentOrders()
-    {
-        return array(
-            array(array(
-                'ClassesWithParents\\A',
-                'ClassesWithParents\\CInterface',
-                'ClassesWithParents\\GInterface',
-                'ClassesWithParents\\B',
-            )),
-            array(array(
-                'ClassesWithParents\\B',
-                'ClassesWithParents\\A',
-                'ClassesWithParents\\CInterface',
-            )),
-            array(array(
-                'ClassesWithParents\\CInterface',
-                'ClassesWithParents\\B',
-                'ClassesWithParents\\A',
-            )),
-            array(array(
-                'ClassesWithParents\\A',
-            )),
-        );
-    }
-
-    /**
-     * @dataProvider getDifferentOrdersForTraits
-     */
-    public function testClassWithTraitsReordering(array $classes)
-    {
-        if (PHP_VERSION_ID < 50400) {
-            $this->markTestSkipped('Requires PHP > 5.4');
-
-            return;
-        }
-
-        require_once __DIR__.'/Fixtures/ClassesWithParents/ATrait.php';
-        require_once __DIR__.'/Fixtures/ClassesWithParents/BTrait.php';
-        require_once __DIR__.'/Fixtures/ClassesWithParents/CTrait.php';
-        require_once __DIR__.'/Fixtures/ClassesWithParents/D.php';
-        require_once __DIR__.'/Fixtures/ClassesWithParents/E.php';
-
-        $expected = array(
-            'ClassesWithParents\\GInterface',
-            'ClassesWithParents\\CInterface',
-            'ClassesWithParents\\ATrait',
-            'ClassesWithParents\\BTrait',
-            'ClassesWithParents\\CTrait',
-            'ClassesWithParents\\B',
-            'ClassesWithParents\\A',
-            'ClassesWithParents\\D',
-            'ClassesWithParents\\E',
-        );
-
-        $r = new \ReflectionClass('Symfony\Component\ClassLoader\ClassCollectionLoader');
-        $m = $r->getMethod('getOrderedClasses');
-        $m->setAccessible(true);
-
-        $ordered = $m->invoke('Symfony\Component\ClassLoader\ClassCollectionLoader', $classes);
-
-        $this->assertEquals($expected, array_map(function ($class) { return $class->getName(); }, $ordered));
-    }
-
-    public function getDifferentOrdersForTraits()
-    {
-        return array(
-            array(array(
-                'ClassesWithParents\\E',
-                'ClassesWithParents\\ATrait',
-            )),
-            array(array(
-                'ClassesWithParents\\E',
-            )),
-        );
-    }
-
-    public function testFixClassWithTraitsOrdering()
-    {
-        if (PHP_VERSION_ID < 50400) {
-            $this->markTestSkipped('Requires PHP > 5.4');
-
-            return;
-        }
-
-        require_once __DIR__.'/Fixtures/ClassesWithParents/CTrait.php';
-        require_once __DIR__.'/Fixtures/ClassesWithParents/F.php';
-        require_once __DIR__.'/Fixtures/ClassesWithParents/G.php';
-
-        $classes = array(
-            'ClassesWithParents\\F',
-            'ClassesWithParents\\G',
-        );
-
-        $expected = array(
-            'ClassesWithParents\\CTrait',
-            'ClassesWithParents\\F',
-            'ClassesWithParents\\G',
-        );
-
-        $r = new \ReflectionClass('Symfony\Component\ClassLoader\ClassCollectionLoader');
-        $m = $r->getMethod('getOrderedClasses');
-        $m->setAccessible(true);
-
-        $ordered = $m->invoke('Symfony\Component\ClassLoader\ClassCollectionLoader', $classes);
-
-        $this->assertEquals($expected, array_map(function ($class) { return $class->getName(); }, $ordered));
-    }
-
-    /**
-     * @dataProvider getFixNamespaceDeclarationsData
-     */
-    public function testFixNamespaceDeclarations($source, $expected)
-    {
-        $this->assertEquals('<?php '.$expected, ClassCollectionLoader::fixNamespaceDeclarations('<?php '.$source));
-    }
-
-    public function getFixNamespaceDeclarationsData()
-    {
-        return array(
-            array("namespace;\nclass Foo {}\n", "namespace\n{\nclass Foo {}\n}"),
-            array("namespace Foo;\nclass Foo {}\n", "namespace Foo\n{\nclass Foo {}\n}"),
-            array("namespace   Bar ;\nclass Foo {}\n", "namespace Bar\n{\nclass Foo {}\n}"),
-            array("namespace Foo\Bar;\nclass Foo {}\n", "namespace Foo\Bar\n{\nclass Foo {}\n}"),
-            array("namespace Foo\Bar\Bar\n{\nclass Foo {}\n}\n", "namespace Foo\Bar\Bar\n{\nclass Foo {}\n}"),
-            array("namespace\n{\nclass Foo {}\n}\n", "namespace\n{\nclass Foo {}\n}"),
-        );
-    }
-
-    /**
-     * @dataProvider getFixNamespaceDeclarationsDataWithoutTokenizer
-     */
-    public function testFixNamespaceDeclarationsWithoutTokenizer($source, $expected)
-    {
-        ClassCollectionLoader::enableTokenizer(false);
-        $this->assertEquals('<?php '.$expected, ClassCollectionLoader::fixNamespaceDeclarations('<?php '.$source));
-        ClassCollectionLoader::enableTokenizer(true);
-    }
-
-    public function getFixNamespaceDeclarationsDataWithoutTokenizer()
-    {
-        return array(
-            array("namespace;\nclass Foo {}\n", "namespace\n{\nclass Foo {}\n}\n"),
-            array("namespace Foo;\nclass Foo {}\n", "namespace Foo\n{\nclass Foo {}\n}\n"),
-            array("namespace   Bar ;\nclass Foo {}\n", "namespace   Bar\n{\nclass Foo {}\n}\n"),
-            array("namespace Foo\Bar;\nclass Foo {}\n", "namespace Foo\Bar\n{\nclass Foo {}\n}\n"),
-            array("namespace Foo\Bar\Bar\n{\nclass Foo {}\n}\n", "namespace Foo\Bar\Bar\n{\nclass Foo {}\n}\n"),
-            array("namespace\n{\nclass Foo {}\n}\n", "namespace\n{\nclass Foo {}\n}\n"),
-        );
-    }
-
-    /**
-     * @expectedException \InvalidArgumentException
-     */
-    public function testUnableToLoadClassException()
-    {
-        if (is_file($file = sys_get_temp_dir().'/foo.php')) {
-            unlink($file);
-        }
-
-        ClassCollectionLoader::load(array('SomeNotExistingClass'), sys_get_temp_dir(), 'foo', false);
-    }
-
-    public function testCommentStripping()
-    {
-        if (is_file($file = sys_get_temp_dir().'/bar.php')) {
-            unlink($file);
-        }
-        spl_autoload_register($r = function ($class) {
-            if (0 === strpos($class, 'Namespaced') || 0 === strpos($class, 'Pearlike_')) {
-                require_once __DIR__.'/Fixtures/'.str_replace(array('\\', '_'), '/', $class).'.php';
-            }
-        });
-
-        ClassCollectionLoader::load(
-            array('Namespaced\\WithComments', 'Pearlike_WithComments'),
-            sys_get_temp_dir(),
-            'bar',
-            false
-        );
-
-        spl_autoload_unregister($r);
-
-        $this->assertEquals(<<<EOF
-namespace Namespaced
-{
-class WithComments
-{
-public static \$loaded = true;
-}
-\$string ='string should not be   modified {\$string}';
-\$heredoc = (<<<HD
-
-
-Heredoc should not be   modified {\$string}
-
-
-HD
-);
-\$nowdoc =<<<'ND'
-
-
-Nowdoc should not be   modified {\$string}
-
-
-ND
-;
-}
-namespace
-{
-class Pearlike_WithComments
-{
-public static \$loaded = true;
-}
-}
-EOF
-        , str_replace("<?php \n", '', file_get_contents($file)));
-
-        unlink($file);
-    }
-}
diff --git a/vendor/symfony/class-loader/Tests/ClassLoaderTest.php b/vendor/symfony/class-loader/Tests/ClassLoaderTest.php
deleted file mode 100644
index a870935..0000000
--- a/vendor/symfony/class-loader/Tests/ClassLoaderTest.php
+++ /dev/null
@@ -1,212 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\ClassLoader\Tests;
-
-use Symfony\Component\ClassLoader\ClassLoader;
-
-class ClassLoaderTest extends \PHPUnit_Framework_TestCase
-{
-    public function testGetPrefixes()
-    {
-        $loader = new ClassLoader();
-        $loader->addPrefix('Foo', __DIR__.DIRECTORY_SEPARATOR.'Fixtures');
-        $loader->addPrefix('Bar', __DIR__.DIRECTORY_SEPARATOR.'Fixtures');
-        $loader->addPrefix('Bas', __DIR__.DIRECTORY_SEPARATOR.'Fixtures');
-        $prefixes = $loader->getPrefixes();
-        $this->assertArrayHasKey('Foo', $prefixes);
-        $this->assertArrayNotHasKey('Foo1', $prefixes);
-        $this->assertArrayHasKey('Bar', $prefixes);
-        $this->assertArrayHasKey('Bas', $prefixes);
-    }
-
-    public function testGetFallbackDirs()
-    {
-        $loader = new ClassLoader();
-        $loader->addPrefix(null, __DIR__.DIRECTORY_SEPARATOR.'Fixtures');
-        $loader->addPrefix(null, __DIR__.DIRECTORY_SEPARATOR.'Fixtures');
-        $fallback_dirs = $loader->getFallbackDirs();
-        $this->assertCount(2, $fallback_dirs);
-    }
-
-    /**
-     * @dataProvider getLoadClassTests
-     */
-    public function testLoadClass($className, $testClassName, $message)
-    {
-        $loader = new ClassLoader();
-        $loader->addPrefix('Namespaced2\\', __DIR__.DIRECTORY_SEPARATOR.'Fixtures');
-        $loader->addPrefix('Pearlike2_', __DIR__.DIRECTORY_SEPARATOR.'Fixtures');
-        $loader->loadClass($testClassName);
-        $this->assertTrue(class_exists($className), $message);
-    }
-
-    public function getLoadClassTests()
-    {
-        return array(
-            array('\\Namespaced2\\Foo', 'Namespaced2\\Foo',   '->loadClass() loads Namespaced2\Foo class'),
-            array('\\Pearlike2_Foo',    'Pearlike2_Foo',      '->loadClass() loads Pearlike2_Foo class'),
-        );
-    }
-
-    /**
-     * @dataProvider getLoadNonexistentClassTests
-     */
-    public function testLoadNonexistentClass($className, $testClassName, $message)
-    {
-        $loader = new ClassLoader();
-        $loader->addPrefix('Namespaced2\\', __DIR__.DIRECTORY_SEPARATOR.'Fixtures');
-        $loader->addPrefix('Pearlike2_', __DIR__.DIRECTORY_SEPARATOR.'Fixtures');
-        $loader->loadClass($testClassName);
-        $this->assertFalse(class_exists($className), $message);
-    }
-
-    public function getLoadNonexistentClassTests()
-    {
-        return array(
-            array('\\Pearlike3_Bar', '\\Pearlike3_Bar', '->loadClass() loads non existing Pearlike3_Bar class with a leading slash'),
-        );
-    }
-
-    public function testAddPrefix()
-    {
-        $loader = new ClassLoader();
-        $loader->addPrefix('Foo', __DIR__.DIRECTORY_SEPARATOR.'Fixtures');
-        $loader->addPrefix('Foo', __DIR__.DIRECTORY_SEPARATOR.'Fixtures');
-        $prefixes = $loader->getPrefixes();
-        $this->assertArrayHasKey('Foo', $prefixes);
-        $this->assertCount(2, $prefixes['Foo']);
-    }
-
-    public function testUseIncludePath()
-    {
-        $loader = new ClassLoader();
-        $this->assertFalse($loader->getUseIncludePath());
-
-        $this->assertNull($loader->findFile('Foo'));
-
-        $includePath = get_include_path();
-
-        $loader->setUseIncludePath(true);
-        $this->assertTrue($loader->getUseIncludePath());
-
-        set_include_path(__DIR__.'/Fixtures/includepath'.PATH_SEPARATOR.$includePath);
-
-        $this->assertEquals(__DIR__.DIRECTORY_SEPARATOR.'Fixtures'.DIRECTORY_SEPARATOR.'includepath'.DIRECTORY_SEPARATOR.'Foo.php', $loader->findFile('Foo'));
-
-        set_include_path($includePath);
-    }
-
-    /**
-     * @dataProvider getLoadClassFromFallbackTests
-     */
-    public function testLoadClassFromFallback($className, $testClassName, $message)
-    {
-        $loader = new ClassLoader();
-        $loader->addPrefix('Namespaced2\\', __DIR__.DIRECTORY_SEPARATOR.'Fixtures');
-        $loader->addPrefix('Pearlike2_', __DIR__.DIRECTORY_SEPARATOR.'Fixtures');
-        $loader->addPrefix('', array(__DIR__.DIRECTORY_SEPARATOR.'Fixtures/fallback'));
-        $loader->loadClass($testClassName);
-        $this->assertTrue(class_exists($className), $message);
-    }
-
-    public function getLoadClassFromFallbackTests()
-    {
-        return array(
-            array('\\Namespaced2\\Baz',    'Namespaced2\\Baz',    '->loadClass() loads Namespaced2\Baz class'),
-            array('\\Pearlike2_Baz',       'Pearlike2_Baz',       '->loadClass() loads Pearlike2_Baz class'),
-            array('\\Namespaced2\\FooBar', 'Namespaced2\\FooBar', '->loadClass() loads Namespaced2\Baz class from fallback dir'),
-            array('\\Pearlike2_FooBar',    'Pearlike2_FooBar',    '->loadClass() loads Pearlike2_Baz class from fallback dir'),
-        );
-    }
-
-    /**
-     * @dataProvider getLoadClassNamespaceCollisionTests
-     */
-    public function testLoadClassNamespaceCollision($namespaces, $className, $message)
-    {
-        $loader = new ClassLoader();
-        $loader->addPrefixes($namespaces);
-
-        $loader->loadClass($className);
-        $this->assertTrue(class_exists($className), $message);
-    }
-
-    public function getLoadClassNamespaceCollisionTests()
-    {
-        return array(
-            array(
-                array(
-                    'NamespaceCollision\\C' => __DIR__.DIRECTORY_SEPARATOR.'Fixtures/alpha',
-                    'NamespaceCollision\\C\\B' => __DIR__.DIRECTORY_SEPARATOR.'Fixtures/beta',
-                ),
-                'NamespaceCollision\C\Foo',
-                '->loadClass() loads NamespaceCollision\C\Foo from alpha.',
-            ),
-            array(
-                array(
-                    'NamespaceCollision\\C\\B' => __DIR__.DIRECTORY_SEPARATOR.'Fixtures/beta',
-                    'NamespaceCollision\\C' => __DIR__.DIRECTORY_SEPARATOR.'Fixtures/alpha',
-                ),
-                'NamespaceCollision\C\Bar',
-                '->loadClass() loads NamespaceCollision\C\Bar from alpha.',
-            ),
-            array(
-                array(
-                    'NamespaceCollision\\C' => __DIR__.DIRECTORY_SEPARATOR.'Fixtures/alpha',
-                    'NamespaceCollision\\C\\B' => __DIR__.DIRECTORY_SEPARATOR.'Fixtures/beta',
-                ),
-                'NamespaceCollision\C\B\Foo',
-                '->loadClass() loads NamespaceCollision\C\B\Foo from beta.',
-            ),
-            array(
-                array(
-                    'NamespaceCollision\\C\\B' => __DIR__.DIRECTORY_SEPARATOR.'Fixtures/beta',
-                    'NamespaceCollision\\C' => __DIR__.DIRECTORY_SEPARATOR.'Fixtures/alpha',
-                ),
-                'NamespaceCollision\C\B\Bar',
-                '->loadClass() loads NamespaceCollision\C\B\Bar from beta.',
-            ),
-            array(
-                array(
-                    'PrefixCollision_C_' => __DIR__.DIRECTORY_SEPARATOR.'Fixtures/alpha',
-                    'PrefixCollision_C_B_' => __DIR__.DIRECTORY_SEPARATOR.'Fixtures/beta',
-                ),
-                'PrefixCollision_C_Foo',
-                '->loadClass() loads PrefixCollision_C_Foo from alpha.',
-            ),
-            array(
-                array(
-                    'PrefixCollision_C_B_' => __DIR__.DIRECTORY_SEPARATOR.'Fixtures/beta',
-                    'PrefixCollision_C_' => __DIR__.DIRECTORY_SEPARATOR.'Fixtures/alpha',
-                ),
-                'PrefixCollision_C_Bar',
-                '->loadClass() loads PrefixCollision_C_Bar from alpha.',
-            ),
-            array(
-                array(
-                    'PrefixCollision_C_' => __DIR__.DIRECTORY_SEPARATOR.'Fixtures/alpha',
-                    'PrefixCollision_C_B_' => __DIR__.DIRECTORY_SEPARATOR.'Fixtures/beta',
-                ),
-                'PrefixCollision_C_B_Foo',
-                '->loadClass() loads PrefixCollision_C_B_Foo from beta.',
-            ),
-            array(
-                array(
-                    'PrefixCollision_C_B_' => __DIR__.DIRECTORY_SEPARATOR.'Fixtures/beta',
-                    'PrefixCollision_C_' => __DIR__.DIRECTORY_SEPARATOR.'Fixtures/alpha',
-                ),
-                'PrefixCollision_C_B_Bar',
-                '->loadClass() loads PrefixCollision_C_B_Bar from beta.',
-            ),
-        );
-    }
-}
diff --git a/vendor/symfony/class-loader/Tests/ClassMapGeneratorTest.php b/vendor/symfony/class-loader/Tests/ClassMapGeneratorTest.php
deleted file mode 100644
index 7bdf5aa..0000000
--- a/vendor/symfony/class-loader/Tests/ClassMapGeneratorTest.php
+++ /dev/null
@@ -1,150 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\ClassLoader\Tests;
-
-use Symfony\Component\ClassLoader\ClassMapGenerator;
-
-class ClassMapGeneratorTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @var string|null
-     */
-    private $workspace = null;
-
-    public function prepare_workspace()
-    {
-        $this->workspace = rtrim(sys_get_temp_dir(), DIRECTORY_SEPARATOR).DIRECTORY_SEPARATOR.time().mt_rand(0, 1000);
-        mkdir($this->workspace, 0777, true);
-        $this->workspace = realpath($this->workspace);
-    }
-
-    /**
-     * @param string $file
-     */
-    private function clean($file)
-    {
-        if (is_dir($file) && !is_link($file)) {
-            $dir = new \FilesystemIterator($file);
-            foreach ($dir as $childFile) {
-                $this->clean($childFile);
-            }
-
-            rmdir($file);
-        } else {
-            unlink($file);
-        }
-    }
-
-    /**
-     * @dataProvider getTestCreateMapTests
-     */
-    public function testDump($directory)
-    {
-        $this->prepare_workspace();
-
-        $file = $this->workspace.'/file';
-
-        $generator = new ClassMapGenerator();
-        $generator->dump($directory, $file);
-        $this->assertFileExists($file);
-
-        $this->clean($this->workspace);
-    }
-
-    /**
-     * @dataProvider getTestCreateMapTests
-     */
-    public function testCreateMap($directory, $expected)
-    {
-        $this->assertEqualsNormalized($expected, ClassMapGenerator::createMap($directory));
-    }
-
-    public function getTestCreateMapTests()
-    {
-        $data = array(
-            array(__DIR__.'/Fixtures/Namespaced', array(
-                'Namespaced\\Bar' => realpath(__DIR__).'/Fixtures/Namespaced/Bar.php',
-                'Namespaced\\Foo' => realpath(__DIR__).'/Fixtures/Namespaced/Foo.php',
-                'Namespaced\\Baz' => realpath(__DIR__).'/Fixtures/Namespaced/Baz.php',
-                'Namespaced\\WithComments' => realpath(__DIR__).'/Fixtures/Namespaced/WithComments.php',
-                ),
-            ),
-            array(__DIR__.'/Fixtures/beta/NamespaceCollision', array(
-                'NamespaceCollision\\A\\B\\Bar' => realpath(__DIR__).'/Fixtures/beta/NamespaceCollision/A/B/Bar.php',
-                'NamespaceCollision\\A\\B\\Foo' => realpath(__DIR__).'/Fixtures/beta/NamespaceCollision/A/B/Foo.php',
-                'NamespaceCollision\\C\\B\\Bar' => realpath(__DIR__).'/Fixtures/beta/NamespaceCollision/C/B/Bar.php',
-                'NamespaceCollision\\C\\B\\Foo' => realpath(__DIR__).'/Fixtures/beta/NamespaceCollision/C/B/Foo.php',
-            )),
-            array(__DIR__.'/Fixtures/Pearlike', array(
-                'Pearlike_Foo' => realpath(__DIR__).'/Fixtures/Pearlike/Foo.php',
-                'Pearlike_Bar' => realpath(__DIR__).'/Fixtures/Pearlike/Bar.php',
-                'Pearlike_Baz' => realpath(__DIR__).'/Fixtures/Pearlike/Baz.php',
-                'Pearlike_WithComments' => realpath(__DIR__).'/Fixtures/Pearlike/WithComments.php',
-            )),
-            array(__DIR__.'/Fixtures/classmap', array(
-                'Foo\\Bar\\A' => realpath(__DIR__).'/Fixtures/classmap/sameNsMultipleClasses.php',
-                'Foo\\Bar\\B' => realpath(__DIR__).'/Fixtures/classmap/sameNsMultipleClasses.php',
-                'A' => realpath(__DIR__).'/Fixtures/classmap/multipleNs.php',
-                'Alpha\\A' => realpath(__DIR__).'/Fixtures/classmap/multipleNs.php',
-                'Alpha\\B' => realpath(__DIR__).'/Fixtures/classmap/multipleNs.php',
-                'Beta\\A' => realpath(__DIR__).'/Fixtures/classmap/multipleNs.php',
-                'Beta\\B' => realpath(__DIR__).'/Fixtures/classmap/multipleNs.php',
-                'ClassMap\\SomeInterface' => realpath(__DIR__).'/Fixtures/classmap/SomeInterface.php',
-                'ClassMap\\SomeParent' => realpath(__DIR__).'/Fixtures/classmap/SomeParent.php',
-                'ClassMap\\SomeClass' => realpath(__DIR__).'/Fixtures/classmap/SomeClass.php',
-            )),
-        );
-
-        if (PHP_VERSION_ID >= 50400) {
-            $data[] = array(__DIR__.'/Fixtures/php5.4', array(
-                'TFoo' => __DIR__.'/Fixtures/php5.4/traits.php',
-                'CFoo' => __DIR__.'/Fixtures/php5.4/traits.php',
-                'Foo\\TBar' => __DIR__.'/Fixtures/php5.4/traits.php',
-                'Foo\\IBar' => __DIR__.'/Fixtures/php5.4/traits.php',
-                'Foo\\TFooBar' => __DIR__.'/Fixtures/php5.4/traits.php',
-                'Foo\\CBar' => __DIR__.'/Fixtures/php5.4/traits.php',
-            ));
-        }
-
-        if (PHP_VERSION_ID >= 50500) {
-            $data[] = array(__DIR__.'/Fixtures/php5.5', array(
-                'ClassCons\\Foo' => __DIR__.'/Fixtures/php5.5/class_cons.php',
-            ));
-        }
-
-        return $data;
-    }
-
-    public function testCreateMapFinderSupport()
-    {
-        $finder = new \Symfony\Component\Finder\Finder();
-        $finder->files()->in(__DIR__.'/Fixtures/beta/NamespaceCollision');
-
-        $this->assertEqualsNormalized(array(
-            'NamespaceCollision\\A\\B\\Bar' => realpath(__DIR__).'/Fixtures/beta/NamespaceCollision/A/B/Bar.php',
-            'NamespaceCollision\\A\\B\\Foo' => realpath(__DIR__).'/Fixtures/beta/NamespaceCollision/A/B/Foo.php',
-            'NamespaceCollision\\C\\B\\Bar' => realpath(__DIR__).'/Fixtures/beta/NamespaceCollision/C/B/Bar.php',
-            'NamespaceCollision\\C\\B\\Foo' => realpath(__DIR__).'/Fixtures/beta/NamespaceCollision/C/B/Foo.php',
-        ), ClassMapGenerator::createMap($finder));
-    }
-
-    protected function assertEqualsNormalized($expected, $actual, $message = null)
-    {
-        foreach ($expected as $ns => $path) {
-            $expected[$ns] = str_replace('\\', '/', $path);
-        }
-        foreach ($actual as $ns => $path) {
-            $actual[$ns] = str_replace('\\', '/', $path);
-        }
-        $this->assertEquals($expected, $actual, $message);
-    }
-}
diff --git a/vendor/symfony/class-loader/Tests/Fixtures/Apc/Namespaced/Bar.php b/vendor/symfony/class-loader/Tests/Fixtures/Apc/Namespaced/Bar.php
deleted file mode 100644
index 4259f14..0000000
--- a/vendor/symfony/class-loader/Tests/Fixtures/Apc/Namespaced/Bar.php
+++ /dev/null
@@ -1,17 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Apc\Namespaced;
-
-class Bar
-{
-    public static $loaded = true;
-}
diff --git a/vendor/symfony/class-loader/Tests/Fixtures/Apc/Namespaced/Baz.php b/vendor/symfony/class-loader/Tests/Fixtures/Apc/Namespaced/Baz.php
deleted file mode 100644
index 3ddb595..0000000
--- a/vendor/symfony/class-loader/Tests/Fixtures/Apc/Namespaced/Baz.php
+++ /dev/null
@@ -1,17 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Apc\Namespaced;
-
-class Baz
-{
-    public static $loaded = true;
-}
diff --git a/vendor/symfony/class-loader/Tests/Fixtures/Apc/Namespaced/Foo.php b/vendor/symfony/class-loader/Tests/Fixtures/Apc/Namespaced/Foo.php
deleted file mode 100644
index cf0a4b7..0000000
--- a/vendor/symfony/class-loader/Tests/Fixtures/Apc/Namespaced/Foo.php
+++ /dev/null
@@ -1,17 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Apc\Namespaced;
-
-class Foo
-{
-    public static $loaded = true;
-}
diff --git a/vendor/symfony/class-loader/Tests/Fixtures/Apc/Namespaced/FooBar.php b/vendor/symfony/class-loader/Tests/Fixtures/Apc/Namespaced/FooBar.php
deleted file mode 100644
index bbbc815..0000000
--- a/vendor/symfony/class-loader/Tests/Fixtures/Apc/Namespaced/FooBar.php
+++ /dev/null
@@ -1,17 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Apc\Namespaced;
-
-class FooBar
-{
-    public static $loaded = true;
-}
diff --git a/vendor/symfony/class-loader/Tests/Fixtures/Apc/Pearlike/Bar.php b/vendor/symfony/class-loader/Tests/Fixtures/Apc/Pearlike/Bar.php
deleted file mode 100644
index e774cb9..0000000
--- a/vendor/symfony/class-loader/Tests/Fixtures/Apc/Pearlike/Bar.php
+++ /dev/null
@@ -1,6 +0,0 @@
-<?php
-
-class Apc_Pearlike_Bar
-{
-    public static $loaded = true;
-}
diff --git a/vendor/symfony/class-loader/Tests/Fixtures/Apc/Pearlike/Baz.php b/vendor/symfony/class-loader/Tests/Fixtures/Apc/Pearlike/Baz.php
deleted file mode 100644
index b284744..0000000
--- a/vendor/symfony/class-loader/Tests/Fixtures/Apc/Pearlike/Baz.php
+++ /dev/null
@@ -1,6 +0,0 @@
-<?php
-
-class Apc_Pearlike_Baz
-{
-    public static $loaded = true;
-}
diff --git a/vendor/symfony/class-loader/Tests/Fixtures/Apc/Pearlike/Foo.php b/vendor/symfony/class-loader/Tests/Fixtures/Apc/Pearlike/Foo.php
deleted file mode 100644
index 3cf8aa8..0000000
--- a/vendor/symfony/class-loader/Tests/Fixtures/Apc/Pearlike/Foo.php
+++ /dev/null
@@ -1,6 +0,0 @@
-<?php
-
-class Apc_Pearlike_Foo
-{
-    public static $loaded = true;
-}
diff --git a/vendor/symfony/class-loader/Tests/Fixtures/Apc/alpha/Apc/ApcPrefixCollision/A/Bar.php b/vendor/symfony/class-loader/Tests/Fixtures/Apc/alpha/Apc/ApcPrefixCollision/A/Bar.php
deleted file mode 100644
index 3df50fa..0000000
--- a/vendor/symfony/class-loader/Tests/Fixtures/Apc/alpha/Apc/ApcPrefixCollision/A/Bar.php
+++ /dev/null
@@ -1,6 +0,0 @@
-<?php
-
-class ApcPrefixCollision_A_Bar
-{
-    public static $loaded = true;
-}
diff --git a/vendor/symfony/class-loader/Tests/Fixtures/Apc/alpha/Apc/ApcPrefixCollision/A/Foo.php b/vendor/symfony/class-loader/Tests/Fixtures/Apc/alpha/Apc/ApcPrefixCollision/A/Foo.php
deleted file mode 100644
index 206c9f8..0000000
--- a/vendor/symfony/class-loader/Tests/Fixtures/Apc/alpha/Apc/ApcPrefixCollision/A/Foo.php
+++ /dev/null
@@ -1,6 +0,0 @@
-<?php
-
-class ApcPrefixCollision_A_Foo
-{
-    public static $loaded = true;
-}
diff --git a/vendor/symfony/class-loader/Tests/Fixtures/Apc/alpha/Apc/NamespaceCollision/A/Bar.php b/vendor/symfony/class-loader/Tests/Fixtures/Apc/alpha/Apc/NamespaceCollision/A/Bar.php
deleted file mode 100644
index 4a4f73e..0000000
--- a/vendor/symfony/class-loader/Tests/Fixtures/Apc/alpha/Apc/NamespaceCollision/A/Bar.php
+++ /dev/null
@@ -1,17 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Apc\NamespaceCollision\A;
-
-class Bar
-{
-    public static $loaded = true;
-}
diff --git a/vendor/symfony/class-loader/Tests/Fixtures/Apc/alpha/Apc/NamespaceCollision/A/Foo.php b/vendor/symfony/class-loader/Tests/Fixtures/Apc/alpha/Apc/NamespaceCollision/A/Foo.php
deleted file mode 100644
index 184a1b1..0000000
--- a/vendor/symfony/class-loader/Tests/Fixtures/Apc/alpha/Apc/NamespaceCollision/A/Foo.php
+++ /dev/null
@@ -1,17 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Apc\NamespaceCollision\A;
-
-class Foo
-{
-    public static $loaded = true;
-}
diff --git a/vendor/symfony/class-loader/Tests/Fixtures/Apc/beta/Apc/ApcPrefixCollision/A/B/Bar.php b/vendor/symfony/class-loader/Tests/Fixtures/Apc/beta/Apc/ApcPrefixCollision/A/B/Bar.php
deleted file mode 100644
index 3892f70..0000000
--- a/vendor/symfony/class-loader/Tests/Fixtures/Apc/beta/Apc/ApcPrefixCollision/A/B/Bar.php
+++ /dev/null
@@ -1,6 +0,0 @@
-<?php
-
-class ApcPrefixCollision_A_B_Bar
-{
-    public static $loaded = true;
-}
diff --git a/vendor/symfony/class-loader/Tests/Fixtures/Apc/beta/Apc/ApcPrefixCollision/A/B/Foo.php b/vendor/symfony/class-loader/Tests/Fixtures/Apc/beta/Apc/ApcPrefixCollision/A/B/Foo.php
deleted file mode 100644
index 62e749f..0000000
--- a/vendor/symfony/class-loader/Tests/Fixtures/Apc/beta/Apc/ApcPrefixCollision/A/B/Foo.php
+++ /dev/null
@@ -1,6 +0,0 @@
-<?php
-
-class ApcPrefixCollision_A_B_Foo
-{
-    public static $loaded = true;
-}
diff --git a/vendor/symfony/class-loader/Tests/Fixtures/Apc/beta/Apc/NamespaceCollision/A/B/Bar.php b/vendor/symfony/class-loader/Tests/Fixtures/Apc/beta/Apc/NamespaceCollision/A/B/Bar.php
deleted file mode 100644
index e406a69..0000000
--- a/vendor/symfony/class-loader/Tests/Fixtures/Apc/beta/Apc/NamespaceCollision/A/B/Bar.php
+++ /dev/null
@@ -1,17 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Apc\NamespaceCollision\A\B;
-
-class Bar
-{
-    public static $loaded = true;
-}
diff --git a/vendor/symfony/class-loader/Tests/Fixtures/Apc/beta/Apc/NamespaceCollision/A/B/Foo.php b/vendor/symfony/class-loader/Tests/Fixtures/Apc/beta/Apc/NamespaceCollision/A/B/Foo.php
deleted file mode 100644
index 450eeb5..0000000
--- a/vendor/symfony/class-loader/Tests/Fixtures/Apc/beta/Apc/NamespaceCollision/A/B/Foo.php
+++ /dev/null
@@ -1,17 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Apc\NamespaceCollision\A\B;
-
-class Foo
-{
-    public static $loaded = true;
-}
diff --git a/vendor/symfony/class-loader/Tests/Fixtures/Apc/fallback/Apc/Pearlike/FooBar.php b/vendor/symfony/class-loader/Tests/Fixtures/Apc/fallback/Apc/Pearlike/FooBar.php
deleted file mode 100644
index 96f2f76..0000000
--- a/vendor/symfony/class-loader/Tests/Fixtures/Apc/fallback/Apc/Pearlike/FooBar.php
+++ /dev/null
@@ -1,6 +0,0 @@
-<?php
-
-class Apc_Pearlike_FooBar
-{
-    public static $loaded = true;
-}
diff --git a/vendor/symfony/class-loader/Tests/Fixtures/Apc/fallback/Namespaced/FooBar.php b/vendor/symfony/class-loader/Tests/Fixtures/Apc/fallback/Namespaced/FooBar.php
deleted file mode 100644
index bbbc815..0000000
--- a/vendor/symfony/class-loader/Tests/Fixtures/Apc/fallback/Namespaced/FooBar.php
+++ /dev/null
@@ -1,17 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Apc\Namespaced;
-
-class FooBar
-{
-    public static $loaded = true;
-}
diff --git a/vendor/symfony/class-loader/Tests/Fixtures/ClassesWithParents/A.php b/vendor/symfony/class-loader/Tests/Fixtures/ClassesWithParents/A.php
deleted file mode 100644
index b0f9425..0000000
--- a/vendor/symfony/class-loader/Tests/Fixtures/ClassesWithParents/A.php
+++ /dev/null
@@ -1,7 +0,0 @@
-<?php
-
-namespace ClassesWithParents;
-
-class A extends B
-{
-}
diff --git a/vendor/symfony/class-loader/Tests/Fixtures/ClassesWithParents/ATrait.php b/vendor/symfony/class-loader/Tests/Fixtures/ClassesWithParents/ATrait.php
deleted file mode 100644
index b02d185..0000000
--- a/vendor/symfony/class-loader/Tests/Fixtures/ClassesWithParents/ATrait.php
+++ /dev/null
@@ -1,7 +0,0 @@
-<?php
-
-namespace ClassesWithParents;
-
-trait ATrait
-{
-}
diff --git a/vendor/symfony/class-loader/Tests/Fixtures/ClassesWithParents/B.php b/vendor/symfony/class-loader/Tests/Fixtures/ClassesWithParents/B.php
deleted file mode 100644
index 22c751a..0000000
--- a/vendor/symfony/class-loader/Tests/Fixtures/ClassesWithParents/B.php
+++ /dev/null
@@ -1,7 +0,0 @@
-<?php
-
-namespace ClassesWithParents;
-
-class B implements CInterface
-{
-}
diff --git a/vendor/symfony/class-loader/Tests/Fixtures/ClassesWithParents/BTrait.php b/vendor/symfony/class-loader/Tests/Fixtures/ClassesWithParents/BTrait.php
deleted file mode 100644
index 7242a9f..0000000
--- a/vendor/symfony/class-loader/Tests/Fixtures/ClassesWithParents/BTrait.php
+++ /dev/null
@@ -1,8 +0,0 @@
-<?php
-
-namespace ClassesWithParents;
-
-trait BTrait
-{
-    use ATrait;
-}
diff --git a/vendor/symfony/class-loader/Tests/Fixtures/ClassesWithParents/CInterface.php b/vendor/symfony/class-loader/Tests/Fixtures/ClassesWithParents/CInterface.php
deleted file mode 100644
index 8eec389..0000000
--- a/vendor/symfony/class-loader/Tests/Fixtures/ClassesWithParents/CInterface.php
+++ /dev/null
@@ -1,7 +0,0 @@
-<?php
-
-namespace ClassesWithParents;
-
-interface CInterface extends GInterface
-{
-}
diff --git a/vendor/symfony/class-loader/Tests/Fixtures/ClassesWithParents/CTrait.php b/vendor/symfony/class-loader/Tests/Fixtures/ClassesWithParents/CTrait.php
deleted file mode 100644
index 110c624..0000000
--- a/vendor/symfony/class-loader/Tests/Fixtures/ClassesWithParents/CTrait.php
+++ /dev/null
@@ -1,7 +0,0 @@
-<?php
-
-namespace ClassesWithParents;
-
-trait CTrait
-{
-}
diff --git a/vendor/symfony/class-loader/Tests/Fixtures/ClassesWithParents/D.php b/vendor/symfony/class-loader/Tests/Fixtures/ClassesWithParents/D.php
deleted file mode 100644
index 28514d7..0000000
--- a/vendor/symfony/class-loader/Tests/Fixtures/ClassesWithParents/D.php
+++ /dev/null
@@ -1,8 +0,0 @@
-<?php
-
-namespace ClassesWithParents;
-
-class D extends A
-{
-    use BTrait;
-}
diff --git a/vendor/symfony/class-loader/Tests/Fixtures/ClassesWithParents/E.php b/vendor/symfony/class-loader/Tests/Fixtures/ClassesWithParents/E.php
deleted file mode 100644
index 6dc6035..0000000
--- a/vendor/symfony/class-loader/Tests/Fixtures/ClassesWithParents/E.php
+++ /dev/null
@@ -1,8 +0,0 @@
-<?php
-
-namespace ClassesWithParents;
-
-class E extends D
-{
-    use CTrait;
-}
diff --git a/vendor/symfony/class-loader/Tests/Fixtures/ClassesWithParents/F.php b/vendor/symfony/class-loader/Tests/Fixtures/ClassesWithParents/F.php
deleted file mode 100644
index a0a5172..0000000
--- a/vendor/symfony/class-loader/Tests/Fixtures/ClassesWithParents/F.php
+++ /dev/null
@@ -1,8 +0,0 @@
-<?php
-
-namespace ClassesWithParents;
-
-class F
-{
-    use CTrait;
-}
diff --git a/vendor/symfony/class-loader/Tests/Fixtures/ClassesWithParents/G.php b/vendor/symfony/class-loader/Tests/Fixtures/ClassesWithParents/G.php
deleted file mode 100644
index bab6031..0000000
--- a/vendor/symfony/class-loader/Tests/Fixtures/ClassesWithParents/G.php
+++ /dev/null
@@ -1,8 +0,0 @@
-<?php
-
-namespace ClassesWithParents;
-
-class G
-{
-    use CTrait;
-}
diff --git a/vendor/symfony/class-loader/Tests/Fixtures/ClassesWithParents/GInterface.php b/vendor/symfony/class-loader/Tests/Fixtures/ClassesWithParents/GInterface.php
deleted file mode 100644
index 208a19d..0000000
--- a/vendor/symfony/class-loader/Tests/Fixtures/ClassesWithParents/GInterface.php
+++ /dev/null
@@ -1,7 +0,0 @@
-<?php
-
-namespace ClassesWithParents;
-
-interface GInterface
-{
-}
diff --git a/vendor/symfony/class-loader/Tests/Fixtures/Namespaced/Bar.php b/vendor/symfony/class-loader/Tests/Fixtures/Namespaced/Bar.php
deleted file mode 100644
index 02b589d..0000000
--- a/vendor/symfony/class-loader/Tests/Fixtures/Namespaced/Bar.php
+++ /dev/null
@@ -1,17 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Namespaced;
-
-class Bar
-{
-    public static $loaded = true;
-}
diff --git a/vendor/symfony/class-loader/Tests/Fixtures/Namespaced/Baz.php b/vendor/symfony/class-loader/Tests/Fixtures/Namespaced/Baz.php
deleted file mode 100644
index 0b0bbd0..0000000
--- a/vendor/symfony/class-loader/Tests/Fixtures/Namespaced/Baz.php
+++ /dev/null
@@ -1,17 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Namespaced;
-
-class Baz
-{
-    public static $loaded = true;
-}
diff --git a/vendor/symfony/class-loader/Tests/Fixtures/Namespaced/Foo.php b/vendor/symfony/class-loader/Tests/Fixtures/Namespaced/Foo.php
deleted file mode 100644
index df5e1f4..0000000
--- a/vendor/symfony/class-loader/Tests/Fixtures/Namespaced/Foo.php
+++ /dev/null
@@ -1,17 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Namespaced;
-
-class Foo
-{
-    public static $loaded = true;
-}
diff --git a/vendor/symfony/class-loader/Tests/Fixtures/Namespaced/WithComments.php b/vendor/symfony/class-loader/Tests/Fixtures/Namespaced/WithComments.php
deleted file mode 100644
index 361e53d..0000000
--- a/vendor/symfony/class-loader/Tests/Fixtures/Namespaced/WithComments.php
+++ /dev/null
@@ -1,37 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Namespaced;
-
-class WithComments
-{
-    /** @Boolean */
-    public static $loaded = true;
-}
-
-$string = 'string should not be   modified {$string}';
-
-$heredoc = (<<<HD
-
-
-Heredoc should not be   modified {$string}
-
-
-HD
-);
-
-$nowdoc = <<<'ND'
-
-
-Nowdoc should not be   modified {$string}
-
-
-ND;
diff --git a/vendor/symfony/class-loader/Tests/Fixtures/Namespaced2/Bar.php b/vendor/symfony/class-loader/Tests/Fixtures/Namespaced2/Bar.php
deleted file mode 100644
index 7bf42ab..0000000
--- a/vendor/symfony/class-loader/Tests/Fixtures/Namespaced2/Bar.php
+++ /dev/null
@@ -1,8 +0,0 @@
-<?php
-
-namespace Namespaced2;
-
-class Bar
-{
-    public static $loaded = true;
-}
diff --git a/vendor/symfony/class-loader/Tests/Fixtures/Namespaced2/Baz.php b/vendor/symfony/class-loader/Tests/Fixtures/Namespaced2/Baz.php
deleted file mode 100644
index fed3e01..0000000
--- a/vendor/symfony/class-loader/Tests/Fixtures/Namespaced2/Baz.php
+++ /dev/null
@@ -1,8 +0,0 @@
-<?php
-
-namespace Namespaced2;
-
-class Baz
-{
-    public static $loaded = true;
-}
diff --git a/vendor/symfony/class-loader/Tests/Fixtures/Namespaced2/Foo.php b/vendor/symfony/class-loader/Tests/Fixtures/Namespaced2/Foo.php
deleted file mode 100644
index 5d7452a..0000000
--- a/vendor/symfony/class-loader/Tests/Fixtures/Namespaced2/Foo.php
+++ /dev/null
@@ -1,8 +0,0 @@
-<?php
-
-namespace Namespaced2;
-
-class Foo
-{
-    public static $loaded = true;
-}
diff --git a/vendor/symfony/class-loader/Tests/Fixtures/Pearlike/Bar.php b/vendor/symfony/class-loader/Tests/Fixtures/Pearlike/Bar.php
deleted file mode 100644
index 6366169..0000000
--- a/vendor/symfony/class-loader/Tests/Fixtures/Pearlike/Bar.php
+++ /dev/null
@@ -1,6 +0,0 @@
-<?php
-
-class Pearlike_Bar
-{
-    public static $loaded = true;
-}
diff --git a/vendor/symfony/class-loader/Tests/Fixtures/Pearlike/Baz.php b/vendor/symfony/class-loader/Tests/Fixtures/Pearlike/Baz.php
deleted file mode 100644
index 3aa8367..0000000
--- a/vendor/symfony/class-loader/Tests/Fixtures/Pearlike/Baz.php
+++ /dev/null
@@ -1,6 +0,0 @@
-<?php
-
-class Pearlike_Baz
-{
-    public static $loaded = true;
-}
diff --git a/vendor/symfony/class-loader/Tests/Fixtures/Pearlike/Foo.php b/vendor/symfony/class-loader/Tests/Fixtures/Pearlike/Foo.php
deleted file mode 100644
index c51b156..0000000
--- a/vendor/symfony/class-loader/Tests/Fixtures/Pearlike/Foo.php
+++ /dev/null
@@ -1,6 +0,0 @@
-<?php
-
-class Pearlike_Foo
-{
-    public static $loaded = true;
-}
diff --git a/vendor/symfony/class-loader/Tests/Fixtures/Pearlike/WithComments.php b/vendor/symfony/class-loader/Tests/Fixtures/Pearlike/WithComments.php
deleted file mode 100644
index d0fd206..0000000
--- a/vendor/symfony/class-loader/Tests/Fixtures/Pearlike/WithComments.php
+++ /dev/null
@@ -1,16 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-class Pearlike_WithComments
-{
-    /** @Boolean */
-    public static $loaded = true;
-}
diff --git a/vendor/symfony/class-loader/Tests/Fixtures/Pearlike2/Bar.php b/vendor/symfony/class-loader/Tests/Fixtures/Pearlike2/Bar.php
deleted file mode 100644
index 7f5f797..0000000
--- a/vendor/symfony/class-loader/Tests/Fixtures/Pearlike2/Bar.php
+++ /dev/null
@@ -1,6 +0,0 @@
-<?php
-
-class Pearlike2_Bar
-{
-    public static $loaded = true;
-}
diff --git a/vendor/symfony/class-loader/Tests/Fixtures/Pearlike2/Baz.php b/vendor/symfony/class-loader/Tests/Fixtures/Pearlike2/Baz.php
deleted file mode 100644
index 8317a0e..0000000
--- a/vendor/symfony/class-loader/Tests/Fixtures/Pearlike2/Baz.php
+++ /dev/null
@@ -1,6 +0,0 @@
-<?php
-
-class Pearlike2_Baz
-{
-    public static $loaded = true;
-}
diff --git a/vendor/symfony/class-loader/Tests/Fixtures/Pearlike2/Foo.php b/vendor/symfony/class-loader/Tests/Fixtures/Pearlike2/Foo.php
deleted file mode 100644
index 0f62ca4..0000000
--- a/vendor/symfony/class-loader/Tests/Fixtures/Pearlike2/Foo.php
+++ /dev/null
@@ -1,6 +0,0 @@
-<?php
-
-class Pearlike2_Foo
-{
-    public static $loaded = true;
-}
diff --git a/vendor/symfony/class-loader/Tests/Fixtures/alpha/NamespaceCollision/A/Bar.php b/vendor/symfony/class-loader/Tests/Fixtures/alpha/NamespaceCollision/A/Bar.php
deleted file mode 100644
index b8d1a13..0000000
--- a/vendor/symfony/class-loader/Tests/Fixtures/alpha/NamespaceCollision/A/Bar.php
+++ /dev/null
@@ -1,17 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace NamespaceCollision\A;
-
-class Bar
-{
-    public static $loaded = true;
-}
diff --git a/vendor/symfony/class-loader/Tests/Fixtures/alpha/NamespaceCollision/A/Foo.php b/vendor/symfony/class-loader/Tests/Fixtures/alpha/NamespaceCollision/A/Foo.php
deleted file mode 100644
index aee6a08..0000000
--- a/vendor/symfony/class-loader/Tests/Fixtures/alpha/NamespaceCollision/A/Foo.php
+++ /dev/null
@@ -1,17 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace NamespaceCollision\A;
-
-class Foo
-{
-    public static $loaded = true;
-}
diff --git a/vendor/symfony/class-loader/Tests/Fixtures/alpha/NamespaceCollision/C/Bar.php b/vendor/symfony/class-loader/Tests/Fixtures/alpha/NamespaceCollision/C/Bar.php
deleted file mode 100644
index c1b8dd6..0000000
--- a/vendor/symfony/class-loader/Tests/Fixtures/alpha/NamespaceCollision/C/Bar.php
+++ /dev/null
@@ -1,8 +0,0 @@
-<?php
-
-namespace NamespaceCollision\C;
-
-class Bar
-{
-    public static $loaded = true;
-}
diff --git a/vendor/symfony/class-loader/Tests/Fixtures/alpha/NamespaceCollision/C/Foo.php b/vendor/symfony/class-loader/Tests/Fixtures/alpha/NamespaceCollision/C/Foo.php
deleted file mode 100644
index 1fffbba..0000000
--- a/vendor/symfony/class-loader/Tests/Fixtures/alpha/NamespaceCollision/C/Foo.php
+++ /dev/null
@@ -1,8 +0,0 @@
-<?php
-
-namespace NamespaceCollision\C;
-
-class Foo
-{
-    public static $loaded = true;
-}
diff --git a/vendor/symfony/class-loader/Tests/Fixtures/alpha/PrefixCollision/A/Bar.php b/vendor/symfony/class-loader/Tests/Fixtures/alpha/PrefixCollision/A/Bar.php
deleted file mode 100644
index 676daad..0000000
--- a/vendor/symfony/class-loader/Tests/Fixtures/alpha/PrefixCollision/A/Bar.php
+++ /dev/null
@@ -1,6 +0,0 @@
-<?php
-
-class PrefixCollision_A_Bar
-{
-    public static $loaded = true;
-}
diff --git a/vendor/symfony/class-loader/Tests/Fixtures/alpha/PrefixCollision/A/Foo.php b/vendor/symfony/class-loader/Tests/Fixtures/alpha/PrefixCollision/A/Foo.php
deleted file mode 100644
index 44388be..0000000
--- a/vendor/symfony/class-loader/Tests/Fixtures/alpha/PrefixCollision/A/Foo.php
+++ /dev/null
@@ -1,6 +0,0 @@
-<?php
-
-class PrefixCollision_A_Foo
-{
-    public static $loaded = true;
-}
diff --git a/vendor/symfony/class-loader/Tests/Fixtures/alpha/PrefixCollision/C/Bar.php b/vendor/symfony/class-loader/Tests/Fixtures/alpha/PrefixCollision/C/Bar.php
deleted file mode 100644
index 0bbc368..0000000
--- a/vendor/symfony/class-loader/Tests/Fixtures/alpha/PrefixCollision/C/Bar.php
+++ /dev/null
@@ -1,6 +0,0 @@
-<?php
-
-class PrefixCollision_C_Bar
-{
-    public static $loaded = true;
-}
diff --git a/vendor/symfony/class-loader/Tests/Fixtures/alpha/PrefixCollision/C/Foo.php b/vendor/symfony/class-loader/Tests/Fixtures/alpha/PrefixCollision/C/Foo.php
deleted file mode 100644
index 73f4ac4..0000000
--- a/vendor/symfony/class-loader/Tests/Fixtures/alpha/PrefixCollision/C/Foo.php
+++ /dev/null
@@ -1,6 +0,0 @@
-<?php
-
-class PrefixCollision_C_Foo
-{
-    public static $loaded = true;
-}
diff --git a/vendor/symfony/class-loader/Tests/Fixtures/beta/NamespaceCollision/A/B/Bar.php b/vendor/symfony/class-loader/Tests/Fixtures/beta/NamespaceCollision/A/B/Bar.php
deleted file mode 100644
index 9f09155..0000000
--- a/vendor/symfony/class-loader/Tests/Fixtures/beta/NamespaceCollision/A/B/Bar.php
+++ /dev/null
@@ -1,17 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace NamespaceCollision\A\B;
-
-class Bar
-{
-    public static $loaded = true;
-}
diff --git a/vendor/symfony/class-loader/Tests/Fixtures/beta/NamespaceCollision/A/B/Foo.php b/vendor/symfony/class-loader/Tests/Fixtures/beta/NamespaceCollision/A/B/Foo.php
deleted file mode 100644
index f5f2d72..0000000
--- a/vendor/symfony/class-loader/Tests/Fixtures/beta/NamespaceCollision/A/B/Foo.php
+++ /dev/null
@@ -1,17 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace NamespaceCollision\A\B;
-
-class Foo
-{
-    public static $loaded = true;
-}
diff --git a/vendor/symfony/class-loader/Tests/Fixtures/beta/NamespaceCollision/C/B/Bar.php b/vendor/symfony/class-loader/Tests/Fixtures/beta/NamespaceCollision/C/B/Bar.php
deleted file mode 100644
index 4bb03dc..0000000
--- a/vendor/symfony/class-loader/Tests/Fixtures/beta/NamespaceCollision/C/B/Bar.php
+++ /dev/null
@@ -1,8 +0,0 @@
-<?php
-
-namespace NamespaceCollision\C\B;
-
-class Bar
-{
-    public static $loaded = true;
-}
diff --git a/vendor/symfony/class-loader/Tests/Fixtures/beta/NamespaceCollision/C/B/Foo.php b/vendor/symfony/class-loader/Tests/Fixtures/beta/NamespaceCollision/C/B/Foo.php
deleted file mode 100644
index 195d888..0000000
--- a/vendor/symfony/class-loader/Tests/Fixtures/beta/NamespaceCollision/C/B/Foo.php
+++ /dev/null
@@ -1,8 +0,0 @@
-<?php
-
-namespace NamespaceCollision\C\B;
-
-class Foo
-{
-    public static $loaded = true;
-}
diff --git a/vendor/symfony/class-loader/Tests/Fixtures/beta/PrefixCollision/A/B/Bar.php b/vendor/symfony/class-loader/Tests/Fixtures/beta/PrefixCollision/A/B/Bar.php
deleted file mode 100644
index f2682e4..0000000
--- a/vendor/symfony/class-loader/Tests/Fixtures/beta/PrefixCollision/A/B/Bar.php
+++ /dev/null
@@ -1,6 +0,0 @@
-<?php
-
-class PrefixCollision_A_B_Bar
-{
-    public static $loaded = true;
-}
diff --git a/vendor/symfony/class-loader/Tests/Fixtures/beta/PrefixCollision/A/B/Foo.php b/vendor/symfony/class-loader/Tests/Fixtures/beta/PrefixCollision/A/B/Foo.php
deleted file mode 100644
index af7ca70..0000000
--- a/vendor/symfony/class-loader/Tests/Fixtures/beta/PrefixCollision/A/B/Foo.php
+++ /dev/null
@@ -1,6 +0,0 @@
-<?php
-
-class PrefixCollision_A_B_Foo
-{
-    public static $loaded = true;
-}
diff --git a/vendor/symfony/class-loader/Tests/Fixtures/beta/PrefixCollision/C/B/Bar.php b/vendor/symfony/class-loader/Tests/Fixtures/beta/PrefixCollision/C/B/Bar.php
deleted file mode 100644
index f313438..0000000
--- a/vendor/symfony/class-loader/Tests/Fixtures/beta/PrefixCollision/C/B/Bar.php
+++ /dev/null
@@ -1,6 +0,0 @@
-<?php
-
-class PrefixCollision_C_B_Bar
-{
-    public static $loaded = true;
-}
diff --git a/vendor/symfony/class-loader/Tests/Fixtures/beta/PrefixCollision/C/B/Foo.php b/vendor/symfony/class-loader/Tests/Fixtures/beta/PrefixCollision/C/B/Foo.php
deleted file mode 100644
index a9bf820..0000000
--- a/vendor/symfony/class-loader/Tests/Fixtures/beta/PrefixCollision/C/B/Foo.php
+++ /dev/null
@@ -1,6 +0,0 @@
-<?php
-
-class PrefixCollision_C_B_Foo
-{
-    public static $loaded = true;
-}
diff --git a/vendor/symfony/class-loader/Tests/Fixtures/classmap/SomeClass.php b/vendor/symfony/class-loader/Tests/Fixtures/classmap/SomeClass.php
deleted file mode 100644
index c63cef9..0000000
--- a/vendor/symfony/class-loader/Tests/Fixtures/classmap/SomeClass.php
+++ /dev/null
@@ -1,16 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace ClassMap;
-
-class SomeClass extends SomeParent implements SomeInterface
-{
-}
diff --git a/vendor/symfony/class-loader/Tests/Fixtures/classmap/SomeInterface.php b/vendor/symfony/class-loader/Tests/Fixtures/classmap/SomeInterface.php
deleted file mode 100644
index 1fe5e09..0000000
--- a/vendor/symfony/class-loader/Tests/Fixtures/classmap/SomeInterface.php
+++ /dev/null
@@ -1,16 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace ClassMap;
-
-interface SomeInterface
-{
-}
diff --git a/vendor/symfony/class-loader/Tests/Fixtures/classmap/SomeParent.php b/vendor/symfony/class-loader/Tests/Fixtures/classmap/SomeParent.php
deleted file mode 100644
index ce2f9fc..0000000
--- a/vendor/symfony/class-loader/Tests/Fixtures/classmap/SomeParent.php
+++ /dev/null
@@ -1,16 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace ClassMap;
-
-abstract class SomeParent
-{
-}
diff --git a/vendor/symfony/class-loader/Tests/Fixtures/classmap/multipleNs.php b/vendor/symfony/class-loader/Tests/Fixtures/classmap/multipleNs.php
deleted file mode 100644
index c7cec64..0000000
--- a/vendor/symfony/class-loader/Tests/Fixtures/classmap/multipleNs.php
+++ /dev/null
@@ -1,25 +0,0 @@
-<?php
-
-namespace {
-    class A
-    {
-    }
-}
-
-namespace Alpha {
-    class A
-    {
-    }
-    class B
-    {
-    }
-}
-
-namespace Beta {
-    class A
-    {
-    }
-    class B
-    {
-    }
-}
diff --git a/vendor/symfony/class-loader/Tests/Fixtures/classmap/notAClass.php b/vendor/symfony/class-loader/Tests/Fixtures/classmap/notAClass.php
deleted file mode 100644
index 49eb3ff..0000000
--- a/vendor/symfony/class-loader/Tests/Fixtures/classmap/notAClass.php
+++ /dev/null
@@ -1,3 +0,0 @@
-<?php
-
-$a = new stdClass();
diff --git a/vendor/symfony/class-loader/Tests/Fixtures/classmap/notPhpFile.md b/vendor/symfony/class-loader/Tests/Fixtures/classmap/notPhpFile.md
deleted file mode 100644
index 6e48e5a..0000000
--- a/vendor/symfony/class-loader/Tests/Fixtures/classmap/notPhpFile.md
+++ /dev/null
@@ -1 +0,0 @@
-This file should be skipped.
diff --git a/vendor/symfony/class-loader/Tests/Fixtures/classmap/sameNsMultipleClasses.php b/vendor/symfony/class-loader/Tests/Fixtures/classmap/sameNsMultipleClasses.php
deleted file mode 100644
index b34b9dd..0000000
--- a/vendor/symfony/class-loader/Tests/Fixtures/classmap/sameNsMultipleClasses.php
+++ /dev/null
@@ -1,19 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Foo\Bar;
-
-class A
-{
-}
-class B
-{
-}
diff --git a/vendor/symfony/class-loader/Tests/Fixtures/deps/traits.php b/vendor/symfony/class-loader/Tests/Fixtures/deps/traits.php
deleted file mode 100644
index 82b30a6..0000000
--- a/vendor/symfony/class-loader/Tests/Fixtures/deps/traits.php
+++ /dev/null
@@ -1,37 +0,0 @@
-<?php
-
-trait TD
-{
-}
-
-trait TZ
-{
-    use TD;
-}
-
-trait TC
-{
-    use TD;
-}
-
-trait TB
-{
-    use TC;
-}
-
-trait TA
-{
-    use TB;
-}
-
-class CTFoo
-{
-    use TA;
-    use TZ;
-}
-
-class CTBar
-{
-    use TZ;
-    use TA;
-}
diff --git a/vendor/symfony/class-loader/Tests/Fixtures/fallback/Namespaced/FooBar.php b/vendor/symfony/class-loader/Tests/Fixtures/fallback/Namespaced/FooBar.php
deleted file mode 100644
index 0fd29ef..0000000
--- a/vendor/symfony/class-loader/Tests/Fixtures/fallback/Namespaced/FooBar.php
+++ /dev/null
@@ -1,17 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Namespaced;
-
-class FooBar
-{
-    public static $loaded = true;
-}
diff --git a/vendor/symfony/class-loader/Tests/Fixtures/fallback/Namespaced2/FooBar.php b/vendor/symfony/class-loader/Tests/Fixtures/fallback/Namespaced2/FooBar.php
deleted file mode 100644
index 1036d43..0000000
--- a/vendor/symfony/class-loader/Tests/Fixtures/fallback/Namespaced2/FooBar.php
+++ /dev/null
@@ -1,8 +0,0 @@
-<?php
-
-namespace Namespaced2;
-
-class FooBar
-{
-    public static $loaded = true;
-}
diff --git a/vendor/symfony/class-loader/Tests/Fixtures/fallback/Pearlike/FooBar.php b/vendor/symfony/class-loader/Tests/Fixtures/fallback/Pearlike/FooBar.php
deleted file mode 100644
index 3ebe526..0000000
--- a/vendor/symfony/class-loader/Tests/Fixtures/fallback/Pearlike/FooBar.php
+++ /dev/null
@@ -1,6 +0,0 @@
-<?php
-
-class Pearlike_FooBar
-{
-    public static $loaded = true;
-}
diff --git a/vendor/symfony/class-loader/Tests/Fixtures/fallback/Pearlike2/FooBar.php b/vendor/symfony/class-loader/Tests/Fixtures/fallback/Pearlike2/FooBar.php
deleted file mode 100644
index 9bf0007..0000000
--- a/vendor/symfony/class-loader/Tests/Fixtures/fallback/Pearlike2/FooBar.php
+++ /dev/null
@@ -1,6 +0,0 @@
-<?php
-
-class Pearlike2_FooBar
-{
-    public static $loaded = true;
-}
diff --git a/vendor/symfony/class-loader/Tests/Fixtures/includepath/Foo.php b/vendor/symfony/class-loader/Tests/Fixtures/includepath/Foo.php
deleted file mode 100644
index a8f0bc7..0000000
--- a/vendor/symfony/class-loader/Tests/Fixtures/includepath/Foo.php
+++ /dev/null
@@ -1,5 +0,0 @@
-<?php
-
-class Foo
-{
-}
diff --git a/vendor/symfony/class-loader/Tests/Fixtures/php5.4/traits.php b/vendor/symfony/class-loader/Tests/Fixtures/php5.4/traits.php
deleted file mode 100644
index ccdadaf..0000000
--- a/vendor/symfony/class-loader/Tests/Fixtures/php5.4/traits.php
+++ /dev/null
@@ -1,32 +0,0 @@
-<?php
-
-namespace {
-    trait TFoo
-    {
-    }
-
-    class CFoo
-    {
-        use TFoo;
-    }
-}
-
-namespace Foo {
-    trait TBar
-    {
-    }
-
-    interface IBar
-    {
-    }
-
-    trait TFooBar
-    {
-    }
-
-    class CBar implements IBar
-    {
-        use TBar;
-        use TFooBar;
-    }
-}
diff --git a/vendor/symfony/class-loader/Tests/Fixtures/php5.5/class_cons.php b/vendor/symfony/class-loader/Tests/Fixtures/php5.5/class_cons.php
deleted file mode 100644
index 0ed8d77..0000000
--- a/vendor/symfony/class-loader/Tests/Fixtures/php5.5/class_cons.php
+++ /dev/null
@@ -1,11 +0,0 @@
-<?php
-
-namespace ClassCons;
-
-class Foo
-{
-    public function __construct()
-    {
-        \Foo\TBar/* foo */::class;
-    }
-}
diff --git a/vendor/symfony/class-loader/Tests/Fixtures/psr-4/Class_With_Underscores.php b/vendor/symfony/class-loader/Tests/Fixtures/psr-4/Class_With_Underscores.php
deleted file mode 100644
index ce9b8ea..0000000
--- a/vendor/symfony/class-loader/Tests/Fixtures/psr-4/Class_With_Underscores.php
+++ /dev/null
@@ -1,7 +0,0 @@
-<?php
-
-namespace Acme\DemoLib;
-
-class Class_With_Underscores
-{
-}
diff --git a/vendor/symfony/class-loader/Tests/Fixtures/psr-4/Foo.php b/vendor/symfony/class-loader/Tests/Fixtures/psr-4/Foo.php
deleted file mode 100644
index 8ba6f83..0000000
--- a/vendor/symfony/class-loader/Tests/Fixtures/psr-4/Foo.php
+++ /dev/null
@@ -1,7 +0,0 @@
-<?php
-
-namespace Acme\DemoLib;
-
-class Foo
-{
-}
diff --git a/vendor/symfony/class-loader/Tests/Fixtures/psr-4/Lets/Go/Deeper/Class_With_Underscores.php b/vendor/symfony/class-loader/Tests/Fixtures/psr-4/Lets/Go/Deeper/Class_With_Underscores.php
deleted file mode 100644
index e18bb0f..0000000
--- a/vendor/symfony/class-loader/Tests/Fixtures/psr-4/Lets/Go/Deeper/Class_With_Underscores.php
+++ /dev/null
@@ -1,7 +0,0 @@
-<?php
-
-namespace Acme\DemoLib\Lets\Go\Deeper;
-
-class Class_With_Underscores
-{
-}
diff --git a/vendor/symfony/class-loader/Tests/Fixtures/psr-4/Lets/Go/Deeper/Foo.php b/vendor/symfony/class-loader/Tests/Fixtures/psr-4/Lets/Go/Deeper/Foo.php
deleted file mode 100644
index 53ead9f..0000000
--- a/vendor/symfony/class-loader/Tests/Fixtures/psr-4/Lets/Go/Deeper/Foo.php
+++ /dev/null
@@ -1,7 +0,0 @@
-<?php
-
-namespace Acme\DemoLib\Lets\Go\Deeper;
-
-class Foo
-{
-}
diff --git a/vendor/symfony/class-loader/Tests/LegacyApcUniversalClassLoaderTest.php b/vendor/symfony/class-loader/Tests/LegacyApcUniversalClassLoaderTest.php
deleted file mode 100644
index 0268a1c..0000000
--- a/vendor/symfony/class-loader/Tests/LegacyApcUniversalClassLoaderTest.php
+++ /dev/null
@@ -1,193 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\ClassLoader\Tests;
-
-use Symfony\Component\ClassLoader\ApcUniversalClassLoader;
-
-/**
- * @group legacy
- */
-class LegacyApcUniversalClassLoaderTest extends \PHPUnit_Framework_TestCase
-{
-    protected function setUp()
-    {
-        if (!extension_loaded('apc')) {
-            $this->markTestSkipped('The apc extension is not available.');
-        }
-
-        if (!(ini_get('apc.enabled') && ini_get('apc.enable_cli'))) {
-            $this->markTestSkipped('The apc extension is available, but not enabled.');
-        } else {
-            apc_clear_cache('user');
-        }
-    }
-
-    protected function tearDown()
-    {
-        if (ini_get('apc.enabled') && ini_get('apc.enable_cli')) {
-            apc_clear_cache('user');
-        }
-    }
-
-    public function testConstructor()
-    {
-        $loader = new ApcUniversalClassLoader('test.prefix.');
-        $loader->registerNamespace('Apc\Namespaced', __DIR__.DIRECTORY_SEPARATOR.'Fixtures');
-
-        $this->assertEquals($loader->findFile('\Apc\Namespaced\FooBar'), apc_fetch('test.prefix.\Apc\Namespaced\FooBar'), '__construct() takes a prefix as its first argument');
-    }
-
-   /**
-    * @dataProvider getLoadClassTests
-    */
-   public function testLoadClass($className, $testClassName, $message)
-   {
-       $loader = new ApcUniversalClassLoader('test.prefix.');
-       $loader->registerNamespace('Apc\Namespaced', __DIR__.DIRECTORY_SEPARATOR.'Fixtures');
-       $loader->registerPrefix('Apc_Pearlike_', __DIR__.DIRECTORY_SEPARATOR.'Fixtures');
-       $loader->loadClass($testClassName);
-       $this->assertTrue(class_exists($className), $message);
-   }
-
-    public function getLoadClassTests()
-    {
-        return array(
-           array('\\Apc\\Namespaced\\Foo', 'Apc\\Namespaced\\Foo',   '->loadClass() loads Apc\Namespaced\Foo class'),
-           array('Apc_Pearlike_Foo',    'Apc_Pearlike_Foo',      '->loadClass() loads Apc_Pearlike_Foo class'),
-       );
-    }
-
-   /**
-    * @dataProvider getLoadClassFromFallbackTests
-    */
-   public function testLoadClassFromFallback($className, $testClassName, $message)
-   {
-       $loader = new ApcUniversalClassLoader('test.prefix.fallback');
-       $loader->registerNamespace('Apc\Namespaced', __DIR__.DIRECTORY_SEPARATOR.'Fixtures');
-       $loader->registerPrefix('Apc_Pearlike_', __DIR__.DIRECTORY_SEPARATOR.'Fixtures');
-       $loader->registerNamespaceFallbacks(array(__DIR__.DIRECTORY_SEPARATOR.'Fixtures/Apc/fallback'));
-       $loader->registerPrefixFallbacks(array(__DIR__.DIRECTORY_SEPARATOR.'Fixtures/Apc/fallback'));
-       $loader->loadClass($testClassName);
-       $this->assertTrue(class_exists($className), $message);
-   }
-
-    public function getLoadClassFromFallbackTests()
-    {
-        return array(
-           array('\\Apc\\Namespaced\\Baz',    'Apc\\Namespaced\\Baz',    '->loadClass() loads Apc\Namespaced\Baz class'),
-           array('Apc_Pearlike_Baz',       'Apc_Pearlike_Baz',       '->loadClass() loads Apc_Pearlike_Baz class'),
-           array('\\Apc\\Namespaced\\FooBar', 'Apc\\Namespaced\\FooBar', '->loadClass() loads Apc\Namespaced\Baz class from fallback dir'),
-           array('Apc_Pearlike_FooBar',    'Apc_Pearlike_FooBar',    '->loadClass() loads Apc_Pearlike_Baz class from fallback dir'),
-       );
-    }
-
-   /**
-    * @dataProvider getLoadClassNamespaceCollisionTests
-    */
-   public function testLoadClassNamespaceCollision($namespaces, $className, $message)
-   {
-       $loader = new ApcUniversalClassLoader('test.prefix.collision.');
-       $loader->registerNamespaces($namespaces);
-
-       $loader->loadClass($className);
-
-       $this->assertTrue(class_exists($className), $message);
-   }
-
-    public function getLoadClassNamespaceCollisionTests()
-    {
-        return array(
-           array(
-               array(
-                   'Apc\\NamespaceCollision\\A' => __DIR__.DIRECTORY_SEPARATOR.'Fixtures/Apc/alpha',
-                   'Apc\\NamespaceCollision\\A\\B' => __DIR__.DIRECTORY_SEPARATOR.'Fixtures/Apc/beta',
-               ),
-               'Apc\NamespaceCollision\A\Foo',
-               '->loadClass() loads NamespaceCollision\A\Foo from alpha.',
-           ),
-           array(
-               array(
-                   'Apc\\NamespaceCollision\\A\\B' => __DIR__.DIRECTORY_SEPARATOR.'Fixtures/Apc/beta',
-                   'Apc\\NamespaceCollision\\A' => __DIR__.DIRECTORY_SEPARATOR.'Fixtures/Apc/alpha',
-               ),
-               'Apc\NamespaceCollision\A\Bar',
-               '->loadClass() loads NamespaceCollision\A\Bar from alpha.',
-           ),
-           array(
-               array(
-                   'Apc\\NamespaceCollision\\A' => __DIR__.DIRECTORY_SEPARATOR.'Fixtures/Apc/alpha',
-                   'Apc\\NamespaceCollision\\A\\B' => __DIR__.DIRECTORY_SEPARATOR.'Fixtures/Apc/beta',
-               ),
-               'Apc\NamespaceCollision\A\B\Foo',
-               '->loadClass() loads NamespaceCollision\A\B\Foo from beta.',
-           ),
-           array(
-               array(
-                   'Apc\\NamespaceCollision\\A\\B' => __DIR__.DIRECTORY_SEPARATOR.'Fixtures/Apc/beta',
-                   'Apc\\NamespaceCollision\\A' => __DIR__.DIRECTORY_SEPARATOR.'Fixtures/Apc/alpha',
-               ),
-               'Apc\NamespaceCollision\A\B\Bar',
-               '->loadClass() loads NamespaceCollision\A\B\Bar from beta.',
-           ),
-       );
-    }
-
-   /**
-    * @dataProvider getLoadClassPrefixCollisionTests
-    */
-   public function testLoadClassPrefixCollision($prefixes, $className, $message)
-   {
-       $loader = new ApcUniversalClassLoader('test.prefix.collision.');
-       $loader->registerPrefixes($prefixes);
-
-       $loader->loadClass($className);
-       $this->assertTrue(class_exists($className), $message);
-   }
-
-    public function getLoadClassPrefixCollisionTests()
-    {
-        return array(
-           array(
-               array(
-                   'ApcPrefixCollision_A_' => __DIR__.DIRECTORY_SEPARATOR.'Fixtures/Apc/alpha/Apc',
-                   'ApcPrefixCollision_A_B_' => __DIR__.DIRECTORY_SEPARATOR.'Fixtures/Apc/beta/Apc',
-               ),
-               'ApcPrefixCollision_A_Foo',
-               '->loadClass() loads ApcPrefixCollision_A_Foo from alpha.',
-           ),
-           array(
-               array(
-                   'ApcPrefixCollision_A_B_' => __DIR__.DIRECTORY_SEPARATOR.'Fixtures/Apc/beta/Apc',
-                   'ApcPrefixCollision_A_' => __DIR__.DIRECTORY_SEPARATOR.'Fixtures/Apc/alpha/Apc',
-               ),
-               'ApcPrefixCollision_A_Bar',
-               '->loadClass() loads ApcPrefixCollision_A_Bar from alpha.',
-           ),
-           array(
-               array(
-                   'ApcPrefixCollision_A_' => __DIR__.DIRECTORY_SEPARATOR.'Fixtures/Apc/alpha/Apc',
-                   'ApcPrefixCollision_A_B_' => __DIR__.DIRECTORY_SEPARATOR.'Fixtures/Apc/beta/Apc',
-               ),
-               'ApcPrefixCollision_A_B_Foo',
-               '->loadClass() loads ApcPrefixCollision_A_B_Foo from beta.',
-           ),
-           array(
-               array(
-                   'ApcPrefixCollision_A_B_' => __DIR__.DIRECTORY_SEPARATOR.'Fixtures/Apc/beta/Apc',
-                   'ApcPrefixCollision_A_' => __DIR__.DIRECTORY_SEPARATOR.'Fixtures/Apc/alpha/Apc',
-               ),
-               'ApcPrefixCollision_A_B_Bar',
-               '->loadClass() loads ApcPrefixCollision_A_B_Bar from beta.',
-           ),
-       );
-    }
-}
diff --git a/vendor/symfony/class-loader/Tests/LegacyUniversalClassLoaderTest.php b/vendor/symfony/class-loader/Tests/LegacyUniversalClassLoaderTest.php
deleted file mode 100644
index 2588e96..0000000
--- a/vendor/symfony/class-loader/Tests/LegacyUniversalClassLoaderTest.php
+++ /dev/null
@@ -1,223 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\ClassLoader\Tests;
-
-use Symfony\Component\ClassLoader\UniversalClassLoader;
-
-/**
- * @group legacy
- */
-class LegacyUniversalClassLoaderTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @dataProvider getLoadClassTests
-     */
-    public function testLoadClass($className, $testClassName, $message)
-    {
-        $loader = new UniversalClassLoader();
-        $loader->registerNamespace('Namespaced', __DIR__.DIRECTORY_SEPARATOR.'Fixtures');
-        $loader->registerPrefix('Pearlike_', __DIR__.DIRECTORY_SEPARATOR.'Fixtures');
-        $this->assertTrue($loader->loadClass($testClassName));
-        $this->assertTrue(class_exists($className), $message);
-    }
-
-    public function getLoadClassTests()
-    {
-        return array(
-            array('\\Namespaced\\Foo', 'Namespaced\\Foo',   '->loadClass() loads Namespaced\Foo class'),
-            array('\\Pearlike_Foo',    'Pearlike_Foo',      '->loadClass() loads Pearlike_Foo class'),
-        );
-    }
-
-    public function testUseIncludePath()
-    {
-        $loader = new UniversalClassLoader();
-        $this->assertFalse($loader->getUseIncludePath());
-
-        $this->assertNull($loader->findFile('Foo'));
-
-        $includePath = get_include_path();
-
-        $loader->useIncludePath(true);
-        $this->assertTrue($loader->getUseIncludePath());
-
-        set_include_path(__DIR__.'/Fixtures/includepath'.PATH_SEPARATOR.$includePath);
-
-        $this->assertEquals(__DIR__.DIRECTORY_SEPARATOR.'Fixtures'.DIRECTORY_SEPARATOR.'includepath'.DIRECTORY_SEPARATOR.'Foo.php', $loader->findFile('Foo'));
-
-        set_include_path($includePath);
-    }
-
-    public function testGetNamespaces()
-    {
-        $loader = new UniversalClassLoader();
-        $loader->registerNamespace('Foo', __DIR__.DIRECTORY_SEPARATOR.'Fixtures');
-        $loader->registerNamespace('Bar', __DIR__.DIRECTORY_SEPARATOR.'Fixtures');
-        $loader->registerNamespace('Bas', __DIR__.DIRECTORY_SEPARATOR.'Fixtures');
-        $namespaces = $loader->getNamespaces();
-        $this->assertArrayHasKey('Foo', $namespaces);
-        $this->assertArrayNotHasKey('Foo1', $namespaces);
-        $this->assertArrayHasKey('Bar', $namespaces);
-        $this->assertArrayHasKey('Bas', $namespaces);
-    }
-
-    public function testGetPrefixes()
-    {
-        $loader = new UniversalClassLoader();
-        $loader->registerPrefix('Foo', __DIR__.DIRECTORY_SEPARATOR.'Fixtures');
-        $loader->registerPrefix('Bar', __DIR__.DIRECTORY_SEPARATOR.'Fixtures');
-        $loader->registerPrefix('Bas', __DIR__.DIRECTORY_SEPARATOR.'Fixtures');
-        $prefixes = $loader->getPrefixes();
-        $this->assertArrayHasKey('Foo', $prefixes);
-        $this->assertArrayNotHasKey('Foo1', $prefixes);
-        $this->assertArrayHasKey('Bar', $prefixes);
-        $this->assertArrayHasKey('Bas', $prefixes);
-    }
-
-    /**
-     * @dataProvider getLoadClassFromFallbackTests
-     */
-    public function testLoadClassFromFallback($className, $testClassName, $message)
-    {
-        $loader = new UniversalClassLoader();
-        $loader->registerNamespace('Namespaced', __DIR__.DIRECTORY_SEPARATOR.'Fixtures');
-        $loader->registerPrefix('Pearlike_', __DIR__.DIRECTORY_SEPARATOR.'Fixtures');
-        $loader->registerNamespaceFallbacks(array(__DIR__.DIRECTORY_SEPARATOR.'Fixtures/fallback'));
-        $loader->registerPrefixFallbacks(array(__DIR__.DIRECTORY_SEPARATOR.'Fixtures/fallback'));
-        $this->assertTrue($loader->loadClass($testClassName));
-        $this->assertTrue(class_exists($className), $message);
-    }
-
-    public function getLoadClassFromFallbackTests()
-    {
-        return array(
-            array('\\Namespaced\\Baz',    'Namespaced\\Baz',    '->loadClass() loads Namespaced\Baz class'),
-            array('\\Pearlike_Baz',       'Pearlike_Baz',       '->loadClass() loads Pearlike_Baz class'),
-            array('\\Namespaced\\FooBar', 'Namespaced\\FooBar', '->loadClass() loads Namespaced\Baz class from fallback dir'),
-            array('\\Pearlike_FooBar',    'Pearlike_FooBar',    '->loadClass() loads Pearlike_Baz class from fallback dir'),
-        );
-    }
-
-    public function testRegisterPrefixFallback()
-    {
-        $loader = new UniversalClassLoader();
-        $loader->registerPrefixFallback(__DIR__.DIRECTORY_SEPARATOR.'Fixtures/fallback');
-        $this->assertEquals(array(__DIR__.DIRECTORY_SEPARATOR.'Fixtures/fallback'), $loader->getPrefixFallbacks());
-    }
-
-    public function testRegisterNamespaceFallback()
-    {
-        $loader = new UniversalClassLoader();
-        $loader->registerNamespaceFallback(__DIR__.DIRECTORY_SEPARATOR.'Fixtures/Namespaced/fallback');
-        $this->assertEquals(array(__DIR__.DIRECTORY_SEPARATOR.'Fixtures/Namespaced/fallback'), $loader->getNamespaceFallbacks());
-    }
-
-    /**
-     * @dataProvider getLoadClassNamespaceCollisionTests
-     */
-    public function testLoadClassNamespaceCollision($namespaces, $className, $message)
-    {
-        $loader = new UniversalClassLoader();
-        $loader->registerNamespaces($namespaces);
-
-        $this->assertTrue($loader->loadClass($className));
-        $this->assertTrue(class_exists($className), $message);
-    }
-
-    public function getLoadClassNamespaceCollisionTests()
-    {
-        return array(
-            array(
-                array(
-                    'NamespaceCollision\\A' => __DIR__.DIRECTORY_SEPARATOR.'Fixtures/alpha',
-                    'NamespaceCollision\\A\\B' => __DIR__.DIRECTORY_SEPARATOR.'Fixtures/beta',
-                ),
-                'NamespaceCollision\A\Foo',
-                '->loadClass() loads NamespaceCollision\A\Foo from alpha.',
-            ),
-            array(
-                array(
-                    'NamespaceCollision\\A\\B' => __DIR__.DIRECTORY_SEPARATOR.'Fixtures/beta',
-                    'NamespaceCollision\\A' => __DIR__.DIRECTORY_SEPARATOR.'Fixtures/alpha',
-                ),
-                'NamespaceCollision\A\Bar',
-                '->loadClass() loads NamespaceCollision\A\Bar from alpha.',
-            ),
-            array(
-                array(
-                    'NamespaceCollision\\A' => __DIR__.DIRECTORY_SEPARATOR.'Fixtures/alpha',
-                    'NamespaceCollision\\A\\B' => __DIR__.DIRECTORY_SEPARATOR.'Fixtures/beta',
-                ),
-                'NamespaceCollision\A\B\Foo',
-                '->loadClass() loads NamespaceCollision\A\B\Foo from beta.',
-            ),
-            array(
-                array(
-                    'NamespaceCollision\\A\\B' => __DIR__.DIRECTORY_SEPARATOR.'Fixtures/beta',
-                    'NamespaceCollision\\A' => __DIR__.DIRECTORY_SEPARATOR.'Fixtures/alpha',
-                ),
-                'NamespaceCollision\A\B\Bar',
-                '->loadClass() loads NamespaceCollision\A\B\Bar from beta.',
-            ),
-        );
-    }
-
-    /**
-     * @dataProvider getLoadClassPrefixCollisionTests
-     */
-    public function testLoadClassPrefixCollision($prefixes, $className, $message)
-    {
-        $loader = new UniversalClassLoader();
-        $loader->registerPrefixes($prefixes);
-
-        $this->assertTrue($loader->loadClass($className));
-        $this->assertTrue(class_exists($className), $message);
-    }
-
-    public function getLoadClassPrefixCollisionTests()
-    {
-        return array(
-            array(
-                array(
-                    'PrefixCollision_A_' => __DIR__.DIRECTORY_SEPARATOR.'Fixtures/alpha',
-                    'PrefixCollision_A_B_' => __DIR__.DIRECTORY_SEPARATOR.'Fixtures/beta',
-                ),
-                'PrefixCollision_A_Foo',
-                '->loadClass() loads PrefixCollision_A_Foo from alpha.',
-            ),
-            array(
-                array(
-                    'PrefixCollision_A_B_' => __DIR__.DIRECTORY_SEPARATOR.'Fixtures/beta',
-                    'PrefixCollision_A_' => __DIR__.DIRECTORY_SEPARATOR.'Fixtures/alpha',
-                ),
-                'PrefixCollision_A_Bar',
-                '->loadClass() loads PrefixCollision_A_Bar from alpha.',
-            ),
-            array(
-                array(
-                    'PrefixCollision_A_' => __DIR__.DIRECTORY_SEPARATOR.'Fixtures/alpha',
-                    'PrefixCollision_A_B_' => __DIR__.DIRECTORY_SEPARATOR.'Fixtures/beta',
-                ),
-                'PrefixCollision_A_B_Foo',
-                '->loadClass() loads PrefixCollision_A_B_Foo from beta.',
-            ),
-            array(
-                array(
-                    'PrefixCollision_A_B_' => __DIR__.DIRECTORY_SEPARATOR.'Fixtures/beta',
-                    'PrefixCollision_A_' => __DIR__.DIRECTORY_SEPARATOR.'Fixtures/alpha',
-                ),
-                'PrefixCollision_A_B_Bar',
-                '->loadClass() loads PrefixCollision_A_B_Bar from beta.',
-            ),
-        );
-    }
-}
diff --git a/vendor/symfony/class-loader/Tests/Psr4ClassLoaderTest.php b/vendor/symfony/class-loader/Tests/Psr4ClassLoaderTest.php
deleted file mode 100644
index 21a7afb..0000000
--- a/vendor/symfony/class-loader/Tests/Psr4ClassLoaderTest.php
+++ /dev/null
@@ -1,71 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\ClassLoader\Tests;
-
-use Symfony\Component\ClassLoader\Psr4ClassLoader;
-
-class Psr4ClassLoaderTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @param string $className
-     * @dataProvider getLoadClassTests
-     */
-    public function testLoadClass($className)
-    {
-        $loader = new Psr4ClassLoader();
-        $loader->addPrefix(
-            'Acme\\DemoLib',
-            __DIR__.DIRECTORY_SEPARATOR.'Fixtures'.DIRECTORY_SEPARATOR.'psr-4'
-        );
-        $loader->loadClass($className);
-        $this->assertTrue(class_exists($className), sprintf('loadClass() should load %s', $className));
-    }
-
-    /**
-     * @return array
-     */
-    public function getLoadClassTests()
-    {
-        return array(
-            array('Acme\\DemoLib\\Foo'),
-            array('Acme\\DemoLib\\Class_With_Underscores'),
-            array('Acme\\DemoLib\\Lets\\Go\\Deeper\\Foo'),
-            array('Acme\\DemoLib\\Lets\\Go\\Deeper\\Class_With_Underscores'),
-        );
-    }
-
-    /**
-     * @param string $className
-     * @dataProvider getLoadNonexistentClassTests
-     */
-    public function testLoadNonexistentClass($className)
-    {
-        $loader = new Psr4ClassLoader();
-        $loader->addPrefix(
-            'Acme\\DemoLib',
-            __DIR__.DIRECTORY_SEPARATOR.'Fixtures'.DIRECTORY_SEPARATOR.'psr-4'
-        );
-        $loader->loadClass($className);
-        $this->assertFalse(class_exists($className), sprintf('loadClass() should not load %s', $className));
-    }
-
-    /**
-     * @return array
-     */
-    public function getLoadNonexistentClassTests()
-    {
-        return array(
-            array('Acme\\DemoLib\\I_Do_Not_Exist'),
-            array('UnknownVendor\\SomeLib\\I_Do_Not_Exist'),
-        );
-    }
-}
diff --git a/vendor/symfony/console/Resources/bin/hiddeninput.exe b/vendor/symfony/console/Resources/bin/hiddeninput.exe
index 9f4a2aa..c8cf65e 100644
--- a/vendor/symfony/console/Resources/bin/hiddeninput.exe
+++ b/vendor/symfony/console/Resources/bin/hiddeninput.exe
@@ -1,21 +1,21 @@
-MZ                @                                       	!L!This program cannot be run in DOS mode.
+MZ                @                                       	!L!This program cannot be run in DOS mode.
 $       ,;B;B;B2מ:B2-B2ƞ9B2ў?Ba98B;CB2Ȟ:B2֞:B2Ӟ:BRich;B        PE  L MoO         	  
          8           @                      `     ?   @                           "  P    @                      P  p   !                             8!  @                                          .text   	      
                     `.rdata  	       
                  @  @.data      0                    @  .rsrc       @                    @  @.reloc     P      "              @  B                                                                                                                                                                                                                                                                                                                                                        j$@ x  j @ e EPV  @ EЃPV @ MX @ e EP5H @ L @ YY5\ @ EP5` @ D @ YYP @ MMT @ 3H  ; 0@ u  h@   l3@ $40@ 5h3@ 40@ h$0@ h(0@ h 0@  @ 00@ }j  Yjh"@   3ۉ]d   p]俀3@ SVW0 @ ;t;u3Fuh  4 @ 3F|3@ ;u
 j\  Y;|3@ u,5|3@ h @ h @   YYtE      5<0@ |3@ ;uh @ h @ l  YY|3@    9]uSW8 @ 93@ th3@   Yt
 SjS3@ $0@  @ 5$0@ 5(0@ 5 0@ 80@ 9,0@ u7P @ E	MPQ  YYËeE80@ 39,0@ uPh @ 9<0@ u @ E80@   øMZ  f9  @ t3M< @   @ 8PE  uH  t  uՃ   v39   xtv39   j,0@ p @ jl @ YY3@ 3@  @ t3@  @ p3@  @  x3@ V    =0@  uh@  @ Yg  =0@ u	j @ Y3{  U(  H1@ D1@ @1@ <1@ 581@ =41@ f`1@ fT1@ f01@ f,1@ f%(1@ f-$1@ X1@ E L1@ EP1@ E\1@ 0@   P1@ L0@ @0@ 	 D0@     0@ 0@  @ 0@ j?  Yj   @ h!@ $ @ =0@  uj  Yh	 ( @ P, @ ËUE 8csmu*xu$@= t=!t="t= @u  3] hH@   @ 3% @ jh("@ b  53@ 5 @ YEuu @ Ygj  Ye 53@ ։E53@ YYEEPEPu5l @ YPU  Eu֣3@ uփ3@ E	   E  j  YËUuNYH]ËV!@ !@ W;stЃ;r_^ËV"@ "@ W;stЃ;r_^% @ ̋UMMZ  f9t3]ËA<8PE  u3ҹ  f9H]̋UEH<ASVq3WDv}H;r	X;r
-B(;r3_^[]̋UjhH"@ he@ d    PSVW 0@ 1E3PEd    eE    h  @ *tUE-  @ Ph  @ Pt;@$ЃEMd    Y_^[]ËE3=  ËeE3Md    Y_^[]% @ % @ he@ d5    D$l$l$+SVW 0@ 1E3PeuEEEEd    ËMd    Y__^[]QËUuuuuh@ h 0@    ]ËVh   h   3V   tVVVVV   ^3ËU 0@ e e SWN@  ;tt	У0@ `VEP< @ u3u @ 3 @ 3 @ 3EP @ E3E3;uO@u5 0@ ։50@ ^_[%t @ %x @ %| @ % @ % @ % @ % @ % @ % @ Pd5    D$+d$SVW( 0@ 3PEuEEd    ËMd    Y__^[]QËM3M%T @ T$BJ3J3l"@ s                                                                                                                                                                                                                                                     #  #  #  )  r)  b)  H)  4)  )  (  (  (  (  (  (  )      #  $  %  %  &  d&  &  $      ('  '  '  '  '  (  ((  6(  '  H(  Z(  t(  (  '  '   '  '  '  l'  ^'  R'  F'  >'  >(  0'  '  )          @         W@ @                     MoO       l   !    @0@ 0@ bad allocation      H                                                            0@ !@    RSDSьJ!LZ    c:\users\seld\documents\visual studio 2010\Projects\hiddeninp\Release\hiddeninp.pdb     e                            @ @                 :@             @ @ @ "   d"@                        "          #      $#          &  D   H#          (  h                       #  #  #  )  r)  b)  H)  4)  )  (  (  (  (  (  (  )      #  $  %  %  &  d&  &  $      ('  '  '  '  '  (  ((  6(  '  H(  Z(  t(  (  '  '   '  '  '  l'  ^'  R'  F'  >'  >(  0'  '  )      GetConsoleMode  SetConsoleMode  ;GetStdHandle  KERNEL32.dll   ??$?6DU?$char_traits@D@std@@V?$allocator@D@1@@std@@YAAAV?$basic_ostream@DU?$char_traits@D@std@@@0@AAV10@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@0@@Z ?cout@std@@3V?$basic_ostream@DU?$char_traits@D@std@@@1@A  J?cin@std@@3V?$basic_istream@DU?$char_traits@D@std@@@1@A  ??$getline@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@YAAAV?$basic_istream@DU?$char_traits@D@std@@@0@AAV10@AAV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@0@@Z ??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEAAV01@P6AAAV01@AAV01@@Z@Z  _??1?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@XZ  {??0?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@XZ  ?endl@std@@YAAAV?$basic_ostream@DU?$char_traits@D@std@@@1@AAV21@@Z  MSVCP90.dll _amsg_exit   __getmainargs ,_cexit  |_exit f _XcptFilter exit   __initenv _initterm _initterm_e <_configthreadlocale  __setusermatherr  _adjust_fdiv   __p__commode   __p__fmode  j_encode_pointer  __set_app_type  K_crt_debugger_hook  C ?terminate@@YAXXZ MSVCR90.dll _unlock  __dllonexit v_lock _onexit `_decode_pointer s_except_handler4_common _invoke_watson  ?_controlfp_s  InterlockedExchange !Sleep InterlockedCompareExchange  -TerminateProcess  GetCurrentProcess >UnhandledExceptionFilter  SetUnhandledExceptionFilter IsDebuggerPresent TQueryPerformanceCounter fGetTickCount  GetCurrentThreadId  GetCurrentProcessId OGetSystemTimeAsFileTime s __CxxFrameHandler3                                                    N@D   $!@                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            8                   P                   h                	                   	     @  (        C  V        (4   V S _ V E R S I O N _ I N F O                                                  S t r i n g F i l e I n f o   b   0 4 0 9 0 4 b 0    Q  F i l e D e s c r i p t i o n     R e a d s   f r o m   s t d i n   w i t h o u t   l e a k i n g   i n f o   t o   t h e   t e r m i n a l   a n d   o u t p u t s   b a c k   t o   s t d o u t     6   F i l e V e r s i o n     1 ,   0 ,   0 ,   0     8   I n t e r n a l N a m e   h i d d e n i n p u t   P   L e g a l C o p y r i g h t   J o r d i   B o g g i a n o   -   2 0 1 2   H   O r i g i n a l F i l e n a m e   h i d d e n i n p u t . e x e   :   P r o d u c t N a m e     H i d d e n   I n p u t     :   P r o d u c t V e r s i o n   1 ,   0 ,   0 ,   0     D    V a r F i l e I n f o     $    T r a n s l a t i o n     	<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
-  <trustInfo xmlns="urn:schemas-microsoft-com:asm.v3">
-    <security>
-      <requestedPrivileges>
-        <requestedExecutionLevel level="asInvoker" uiAccess="false"></requestedExecutionLevel>
-      </requestedPrivileges>
-    </security>
-  </trustInfo>
-  <dependency>
-    <dependentAssembly>
-      <assemblyIdentity type="win32" name="Microsoft.VC90.CRT" version="9.0.21022.8" processorArchitecture="x86" publicKeyToken="1fc8b3b9a1e18e3b"></assemblyIdentity>
-    </dependentAssembly>
-  </dependency>
+B(;r3_^[]̋UjhH"@ he@ d    PSVW 0@ 1E3PEd    eE    h  @ *tUE-  @ Ph  @ Pt;@$ЃEMd    Y_^[]ËE3=  ËeE3Md    Y_^[]% @ % @ he@ d5    D$l$l$+SVW 0@ 1E3PeuEEEEd    ËMd    Y__^[]QËUuuuuh@ h 0@    ]ËVh   h   3V   tVVVVV   ^3ËU 0@ e e SWN@  ;tt	У0@ `VEP< @ u3u @ 3 @ 3 @ 3EP @ E3E3;uO@u5 0@ ։50@ ^_[%t @ %x @ %| @ % @ % @ % @ % @ % @ % @ Pd5    D$+d$SVW( 0@ 3PEuEEd    ËMd    Y__^[]QËM3M%T @ T$BJ3J3l"@ s                                                                                                                                                                                                                                                     #  #  #  )  r)  b)  H)  4)  )  (  (  (  (  (  (  )      #  $  %  %  &  d&  &  $      ('  '  '  '  '  (  ((  6(  '  H(  Z(  t(  (  '  '   '  '  '  l'  ^'  R'  F'  >'  >(  0'  '  )          @         W@ @                     MoO       l   !    @0@ 0@ bad allocation      H                                                            0@ !@    RSDSьJ!LZ    c:\users\seld\documents\visual studio 2010\Projects\hiddeninp\Release\hiddeninp.pdb     e                            @ @                 :@             @ @ @ "   d"@                        "          #      $#          &  D   H#          (  h                       #  #  #  )  r)  b)  H)  4)  )  (  (  (  (  (  (  )      #  $  %  %  &  d&  &  $      ('  '  '  '  '  (  ((  6(  '  H(  Z(  t(  (  '  '   '  '  '  l'  ^'  R'  F'  >'  >(  0'  '  )      GetConsoleMode  SetConsoleMode  ;GetStdHandle  KERNEL32.dll   ??$?6DU?$char_traits@D@std@@V?$allocator@D@1@@std@@YAAAV?$basic_ostream@DU?$char_traits@D@std@@@0@AAV10@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@0@@Z ?cout@std@@3V?$basic_ostream@DU?$char_traits@D@std@@@1@A  J?cin@std@@3V?$basic_istream@DU?$char_traits@D@std@@@1@A  ??$getline@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@YAAAV?$basic_istream@DU?$char_traits@D@std@@@0@AAV10@AAV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@0@@Z ??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEAAV01@P6AAAV01@AAV01@@Z@Z  _??1?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@XZ  {??0?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@XZ  ?endl@std@@YAAAV?$basic_ostream@DU?$char_traits@D@std@@@1@AAV21@@Z  MSVCP90.dll _amsg_exit   __getmainargs ,_cexit  |_exit f _XcptFilter exit   __initenv _initterm _initterm_e <_configthreadlocale  __setusermatherr  _adjust_fdiv   __p__commode   __p__fmode  j_encode_pointer  __set_app_type  K_crt_debugger_hook  C ?terminate@@YAXXZ MSVCR90.dll _unlock  __dllonexit v_lock _onexit `_decode_pointer s_except_handler4_common _invoke_watson  ?_controlfp_s  InterlockedExchange !Sleep InterlockedCompareExchange  -TerminateProcess  GetCurrentProcess >UnhandledExceptionFilter  SetUnhandledExceptionFilter IsDebuggerPresent TQueryPerformanceCounter fGetTickCount  GetCurrentThreadId  GetCurrentProcessId OGetSystemTimeAsFileTime s __CxxFrameHandler3                                                    N@D   $!@                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            8                   P                   h                	                   	     @  (        C  V        (4   V S _ V E R S I O N _ I N F O                                                  S t r i n g F i l e I n f o   b   0 4 0 9 0 4 b 0    Q  F i l e D e s c r i p t i o n     R e a d s   f r o m   s t d i n   w i t h o u t   l e a k i n g   i n f o   t o   t h e   t e r m i n a l   a n d   o u t p u t s   b a c k   t o   s t d o u t     6   F i l e V e r s i o n     1 ,   0 ,   0 ,   0     8   I n t e r n a l N a m e   h i d d e n i n p u t   P   L e g a l C o p y r i g h t   J o r d i   B o g g i a n o   -   2 0 1 2   H   O r i g i n a l F i l e n a m e   h i d d e n i n p u t . e x e   :   P r o d u c t N a m e     H i d d e n   I n p u t     :   P r o d u c t V e r s i o n   1 ,   0 ,   0 ,   0     D    V a r F i l e I n f o     $    T r a n s l a t i o n     	<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
+  <trustInfo xmlns="urn:schemas-microsoft-com:asm.v3">
+    <security>
+      <requestedPrivileges>
+        <requestedExecutionLevel level="asInvoker" uiAccess="false"></requestedExecutionLevel>
+      </requestedPrivileges>
+    </security>
+  </trustInfo>
+  <dependency>
+    <dependentAssembly>
+      <assemblyIdentity type="win32" name="Microsoft.VC90.CRT" version="9.0.21022.8" processorArchitecture="x86" publicKeyToken="1fc8b3b9a1e18e3b"></assemblyIdentity>
+    </dependentAssembly>
+  </dependency>
 </assembly>PAPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDING   @  00!0/080F0L0T0^0d0n0{000000000000001#1-1@1J1O1T1v1{1111111111111112"2*23292A2M2_2j2p222222222222333%303N3T3Z3`3f3l3s3z333333333333333334444%4;4B444444444445!5^5c5555H6M6_6}666 777*7w7|77777888=8E8P8V8\8b8h8n8t8z88889      $   0001 1t1x12 2@2\2`2h2t2 0     0                                                                                                                                                  
\ No newline at end of file
diff --git a/vendor/symfony/console/Tests/ApplicationTest.php b/vendor/symfony/console/Tests/ApplicationTest.php
deleted file mode 100644
index d33e584..0000000
--- a/vendor/symfony/console/Tests/ApplicationTest.php
+++ /dev/null
@@ -1,1060 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Console\Tests;
-
-use Symfony\Component\Console\Application;
-use Symfony\Component\Console\Helper\HelperSet;
-use Symfony\Component\Console\Helper\FormatterHelper;
-use Symfony\Component\Console\Input\ArgvInput;
-use Symfony\Component\Console\Input\ArrayInput;
-use Symfony\Component\Console\Input\InputInterface;
-use Symfony\Component\Console\Input\InputArgument;
-use Symfony\Component\Console\Input\InputDefinition;
-use Symfony\Component\Console\Input\InputOption;
-use Symfony\Component\Console\Output\NullOutput;
-use Symfony\Component\Console\Output\Output;
-use Symfony\Component\Console\Output\OutputInterface;
-use Symfony\Component\Console\Output\StreamOutput;
-use Symfony\Component\Console\Tester\ApplicationTester;
-use Symfony\Component\Console\Event\ConsoleCommandEvent;
-use Symfony\Component\Console\Event\ConsoleExceptionEvent;
-use Symfony\Component\Console\Event\ConsoleTerminateEvent;
-use Symfony\Component\EventDispatcher\EventDispatcher;
-
-class ApplicationTest extends \PHPUnit_Framework_TestCase
-{
-    protected static $fixturesPath;
-
-    public static function setUpBeforeClass()
-    {
-        self::$fixturesPath = realpath(__DIR__.'/Fixtures/');
-        require_once self::$fixturesPath.'/FooCommand.php';
-        require_once self::$fixturesPath.'/Foo1Command.php';
-        require_once self::$fixturesPath.'/Foo2Command.php';
-        require_once self::$fixturesPath.'/Foo3Command.php';
-        require_once self::$fixturesPath.'/Foo4Command.php';
-        require_once self::$fixturesPath.'/Foo5Command.php';
-        require_once self::$fixturesPath.'/FoobarCommand.php';
-        require_once self::$fixturesPath.'/BarBucCommand.php';
-        require_once self::$fixturesPath.'/FooSubnamespaced1Command.php';
-        require_once self::$fixturesPath.'/FooSubnamespaced2Command.php';
-    }
-
-    protected function normalizeLineBreaks($text)
-    {
-        return str_replace(PHP_EOL, "\n", $text);
-    }
-
-    /**
-     * Replaces the dynamic placeholders of the command help text with a static version.
-     * The placeholder %command.full_name% includes the script path that is not predictable
-     * and can not be tested against.
-     */
-    protected function ensureStaticCommandHelp(Application $application)
-    {
-        foreach ($application->all() as $command) {
-            $command->setHelp(str_replace('%command.full_name%', 'app/console %command.name%', $command->getHelp()));
-        }
-    }
-
-    public function testConstructor()
-    {
-        $application = new Application('foo', 'bar');
-        $this->assertEquals('foo', $application->getName(), '__construct() takes the application name as its first argument');
-        $this->assertEquals('bar', $application->getVersion(), '__construct() takes the application version as its second argument');
-        $this->assertEquals(array('help', 'list'), array_keys($application->all()), '__construct() registered the help and list commands by default');
-    }
-
-    public function testSetGetName()
-    {
-        $application = new Application();
-        $application->setName('foo');
-        $this->assertEquals('foo', $application->getName(), '->setName() sets the name of the application');
-    }
-
-    public function testSetGetVersion()
-    {
-        $application = new Application();
-        $application->setVersion('bar');
-        $this->assertEquals('bar', $application->getVersion(), '->setVersion() sets the version of the application');
-    }
-
-    public function testGetLongVersion()
-    {
-        $application = new Application('foo', 'bar');
-        $this->assertEquals('<info>foo</info> version <comment>bar</comment>', $application->getLongVersion(), '->getLongVersion() returns the long version of the application');
-    }
-
-    public function testHelp()
-    {
-        $application = new Application();
-        $this->assertStringEqualsFile(self::$fixturesPath.'/application_gethelp.txt', $this->normalizeLineBreaks($application->getHelp()), '->getHelp() returns a help message');
-    }
-
-    public function testAll()
-    {
-        $application = new Application();
-        $commands = $application->all();
-        $this->assertInstanceOf('Symfony\\Component\\Console\\Command\\HelpCommand', $commands['help'], '->all() returns the registered commands');
-
-        $application->add(new \FooCommand());
-        $commands = $application->all('foo');
-        $this->assertCount(1, $commands, '->all() takes a namespace as its first argument');
-    }
-
-    public function testRegister()
-    {
-        $application = new Application();
-        $command = $application->register('foo');
-        $this->assertEquals('foo', $command->getName(), '->register() registers a new command');
-    }
-
-    public function testAdd()
-    {
-        $application = new Application();
-        $application->add($foo = new \FooCommand());
-        $commands = $application->all();
-        $this->assertEquals($foo, $commands['foo:bar'], '->add() registers a command');
-
-        $application = new Application();
-        $application->addCommands(array($foo = new \FooCommand(), $foo1 = new \Foo1Command()));
-        $commands = $application->all();
-        $this->assertEquals(array($foo, $foo1), array($commands['foo:bar'], $commands['foo:bar1']), '->addCommands() registers an array of commands');
-    }
-
-    /**
-     * @expectedException \LogicException
-     * @expectedExceptionMessage Command class "Foo5Command" is not correctly initialized. You probably forgot to call the parent constructor.
-     */
-    public function testAddCommandWithEmptyConstructor()
-    {
-        $application = new Application();
-        $application->add(new \Foo5Command());
-    }
-
-    public function testHasGet()
-    {
-        $application = new Application();
-        $this->assertTrue($application->has('list'), '->has() returns true if a named command is registered');
-        $this->assertFalse($application->has('afoobar'), '->has() returns false if a named command is not registered');
-
-        $application->add($foo = new \FooCommand());
-        $this->assertTrue($application->has('afoobar'), '->has() returns true if an alias is registered');
-        $this->assertEquals($foo, $application->get('foo:bar'), '->get() returns a command by name');
-        $this->assertEquals($foo, $application->get('afoobar'), '->get() returns a command by alias');
-
-        $application = new Application();
-        $application->add($foo = new \FooCommand());
-        // simulate --help
-        $r = new \ReflectionObject($application);
-        $p = $r->getProperty('wantHelps');
-        $p->setAccessible(true);
-        $p->setValue($application, true);
-        $command = $application->get('foo:bar');
-        $this->assertInstanceOf('Symfony\Component\Console\Command\HelpCommand', $command, '->get() returns the help command if --help is provided as the input');
-    }
-
-    public function testSilentHelp()
-    {
-        $application = new Application();
-        $application->setAutoExit(false);
-        $application->setCatchExceptions(false);
-
-        $tester = new ApplicationTester($application);
-        $tester->run(array('-h' => true, '-q' => true), array('decorated' => false));
-
-        $this->assertEmpty($tester->getDisplay(true));
-    }
-
-    /**
-     * @expectedException        \InvalidArgumentException
-     * @expectedExceptionMessage The command "foofoo" does not exist.
-     */
-    public function testGetInvalidCommand()
-    {
-        $application = new Application();
-        $application->get('foofoo');
-    }
-
-    public function testGetNamespaces()
-    {
-        $application = new Application();
-        $application->add(new \FooCommand());
-        $application->add(new \Foo1Command());
-        $this->assertEquals(array('foo'), $application->getNamespaces(), '->getNamespaces() returns an array of unique used namespaces');
-    }
-
-    public function testFindNamespace()
-    {
-        $application = new Application();
-        $application->add(new \FooCommand());
-        $this->assertEquals('foo', $application->findNamespace('foo'), '->findNamespace() returns the given namespace if it exists');
-        $this->assertEquals('foo', $application->findNamespace('f'), '->findNamespace() finds a namespace given an abbreviation');
-        $application->add(new \Foo2Command());
-        $this->assertEquals('foo', $application->findNamespace('foo'), '->findNamespace() returns the given namespace if it exists');
-    }
-
-    public function testFindNamespaceWithSubnamespaces()
-    {
-        $application = new Application();
-        $application->add(new \FooSubnamespaced1Command());
-        $application->add(new \FooSubnamespaced2Command());
-        $this->assertEquals('foo', $application->findNamespace('foo'), '->findNamespace() returns commands even if the commands are only contained in subnamespaces');
-    }
-
-    /**
-     * @expectedException        \InvalidArgumentException
-     * @expectedExceptionMessage The namespace "f" is ambiguous (foo, foo1).
-     */
-    public function testFindAmbiguousNamespace()
-    {
-        $application = new Application();
-        $application->add(new \BarBucCommand());
-        $application->add(new \FooCommand());
-        $application->add(new \Foo2Command());
-        $application->findNamespace('f');
-    }
-
-    /**
-     * @expectedException        \InvalidArgumentException
-     * @expectedExceptionMessage There are no commands defined in the "bar" namespace.
-     */
-    public function testFindInvalidNamespace()
-    {
-        $application = new Application();
-        $application->findNamespace('bar');
-    }
-
-    /**
-     * @expectedException        \InvalidArgumentException
-     * @expectedExceptionMessage Command "foo1" is not defined
-     */
-    public function testFindUniqueNameButNamespaceName()
-    {
-        $application = new Application();
-        $application->add(new \FooCommand());
-        $application->add(new \Foo1Command());
-        $application->add(new \Foo2Command());
-
-        $application->find($commandName = 'foo1');
-    }
-
-    public function testFind()
-    {
-        $application = new Application();
-        $application->add(new \FooCommand());
-
-        $this->assertInstanceOf('FooCommand', $application->find('foo:bar'), '->find() returns a command if its name exists');
-        $this->assertInstanceOf('Symfony\Component\Console\Command\HelpCommand', $application->find('h'), '->find() returns a command if its name exists');
-        $this->assertInstanceOf('FooCommand', $application->find('f:bar'), '->find() returns a command if the abbreviation for the namespace exists');
-        $this->assertInstanceOf('FooCommand', $application->find('f:b'), '->find() returns a command if the abbreviation for the namespace and the command name exist');
-        $this->assertInstanceOf('FooCommand', $application->find('a'), '->find() returns a command if the abbreviation exists for an alias');
-    }
-
-    /**
-     * @dataProvider provideAmbiguousAbbreviations
-     */
-    public function testFindWithAmbiguousAbbreviations($abbreviation, $expectedExceptionMessage)
-    {
-        $this->setExpectedException('InvalidArgumentException', $expectedExceptionMessage);
-
-        $application = new Application();
-        $application->add(new \FooCommand());
-        $application->add(new \Foo1Command());
-        $application->add(new \Foo2Command());
-
-        $application->find($abbreviation);
-    }
-
-    public function provideAmbiguousAbbreviations()
-    {
-        return array(
-            array('f', 'Command "f" is not defined.'),
-            array('a', 'Command "a" is ambiguous (afoobar, afoobar1 and 1 more).'),
-            array('foo:b', 'Command "foo:b" is ambiguous (foo:bar, foo:bar1 and 1 more).'),
-        );
-    }
-
-    public function testFindCommandEqualNamespace()
-    {
-        $application = new Application();
-        $application->add(new \Foo3Command());
-        $application->add(new \Foo4Command());
-
-        $this->assertInstanceOf('Foo3Command', $application->find('foo3:bar'), '->find() returns the good command even if a namespace has same name');
-        $this->assertInstanceOf('Foo4Command', $application->find('foo3:bar:toh'), '->find() returns a command even if its namespace equals another command name');
-    }
-
-    public function testFindCommandWithAmbiguousNamespacesButUniqueName()
-    {
-        $application = new Application();
-        $application->add(new \FooCommand());
-        $application->add(new \FoobarCommand());
-
-        $this->assertInstanceOf('FoobarCommand', $application->find('f:f'));
-    }
-
-    public function testFindCommandWithMissingNamespace()
-    {
-        $application = new Application();
-        $application->add(new \Foo4Command());
-
-        $this->assertInstanceOf('Foo4Command', $application->find('f::t'));
-    }
-
-    /**
-     * @dataProvider             provideInvalidCommandNamesSingle
-     * @expectedException        \InvalidArgumentException
-     * @expectedExceptionMessage Did you mean this
-     */
-    public function testFindAlternativeExceptionMessageSingle($name)
-    {
-        $application = new Application();
-        $application->add(new \Foo3Command());
-        $application->find($name);
-    }
-
-    public function provideInvalidCommandNamesSingle()
-    {
-        return array(
-            array('foo3:baR'),
-            array('foO3:bar'),
-        );
-    }
-
-    public function testFindAlternativeExceptionMessageMultiple()
-    {
-        $application = new Application();
-        $application->add(new \FooCommand());
-        $application->add(new \Foo1Command());
-        $application->add(new \Foo2Command());
-
-        // Command + plural
-        try {
-            $application->find('foo:baR');
-            $this->fail('->find() throws an \InvalidArgumentException if command does not exist, with alternatives');
-        } catch (\Exception $e) {
-            $this->assertInstanceOf('\InvalidArgumentException', $e, '->find() throws an \InvalidArgumentException if command does not exist, with alternatives');
-            $this->assertRegExp('/Did you mean one of these/', $e->getMessage(), '->find() throws an \InvalidArgumentException if command does not exist, with alternatives');
-            $this->assertRegExp('/foo1:bar/', $e->getMessage());
-            $this->assertRegExp('/foo:bar/', $e->getMessage());
-        }
-
-        // Namespace + plural
-        try {
-            $application->find('foo2:bar');
-            $this->fail('->find() throws an \InvalidArgumentException if command does not exist, with alternatives');
-        } catch (\Exception $e) {
-            $this->assertInstanceOf('\InvalidArgumentException', $e, '->find() throws an \InvalidArgumentException if command does not exist, with alternatives');
-            $this->assertRegExp('/Did you mean one of these/', $e->getMessage(), '->find() throws an \InvalidArgumentException if command does not exist, with alternatives');
-            $this->assertRegExp('/foo1/', $e->getMessage());
-        }
-
-        $application->add(new \Foo3Command());
-        $application->add(new \Foo4Command());
-
-        // Subnamespace + plural
-        try {
-            $a = $application->find('foo3:');
-            $this->fail('->find() should throw an \InvalidArgumentException if a command is ambiguous because of a subnamespace, with alternatives');
-        } catch (\Exception $e) {
-            $this->assertInstanceOf('\InvalidArgumentException', $e);
-            $this->assertRegExp('/foo3:bar/', $e->getMessage());
-            $this->assertRegExp('/foo3:bar:toh/', $e->getMessage());
-        }
-    }
-
-    public function testFindAlternativeCommands()
-    {
-        $application = new Application();
-
-        $application->add(new \FooCommand());
-        $application->add(new \Foo1Command());
-        $application->add(new \Foo2Command());
-
-        try {
-            $application->find($commandName = 'Unknown command');
-            $this->fail('->find() throws an \InvalidArgumentException if command does not exist');
-        } catch (\Exception $e) {
-            $this->assertInstanceOf('\InvalidArgumentException', $e, '->find() throws an \InvalidArgumentException if command does not exist');
-            $this->assertEquals(sprintf('Command "%s" is not defined.', $commandName), $e->getMessage(), '->find() throws an \InvalidArgumentException if command does not exist, without alternatives');
-        }
-
-        // Test if "bar1" command throw an "\InvalidArgumentException" and does not contain
-        // "foo:bar" as alternative because "bar1" is too far from "foo:bar"
-        try {
-            $application->find($commandName = 'bar1');
-            $this->fail('->find() throws an \InvalidArgumentException if command does not exist');
-        } catch (\Exception $e) {
-            $this->assertInstanceOf('\InvalidArgumentException', $e, '->find() throws an \InvalidArgumentException if command does not exist');
-            $this->assertRegExp(sprintf('/Command "%s" is not defined./', $commandName), $e->getMessage(), '->find() throws an \InvalidArgumentException if command does not exist, with alternatives');
-            $this->assertRegExp('/afoobar1/', $e->getMessage(), '->find() throws an \InvalidArgumentException if command does not exist, with alternative : "afoobar1"');
-            $this->assertRegExp('/foo:bar1/', $e->getMessage(), '->find() throws an \InvalidArgumentException if command does not exist, with alternative : "foo:bar1"');
-            $this->assertNotRegExp('/foo:bar(?>!1)/', $e->getMessage(), '->find() throws an \InvalidArgumentException if command does not exist, without "foo:bar" alternative');
-        }
-    }
-
-    public function testFindAlternativeCommandsWithAnAlias()
-    {
-        $fooCommand = new \FooCommand();
-        $fooCommand->setAliases(array('foo2'));
-
-        $application = new Application();
-        $application->add($fooCommand);
-
-        $result = $application->find('foo');
-
-        $this->assertSame($fooCommand, $result);
-    }
-
-    public function testFindAlternativeNamespace()
-    {
-        $application = new Application();
-
-        $application->add(new \FooCommand());
-        $application->add(new \Foo1Command());
-        $application->add(new \Foo2Command());
-        $application->add(new \foo3Command());
-
-        try {
-            $application->find('Unknown-namespace:Unknown-command');
-            $this->fail('->find() throws an \InvalidArgumentException if namespace does not exist');
-        } catch (\Exception $e) {
-            $this->assertInstanceOf('\InvalidArgumentException', $e, '->find() throws an \InvalidArgumentException if namespace does not exist');
-            $this->assertEquals('There are no commands defined in the "Unknown-namespace" namespace.', $e->getMessage(), '->find() throws an \InvalidArgumentException if namespace does not exist, without alternatives');
-        }
-
-        try {
-            $application->find('foo2:command');
-            $this->fail('->find() throws an \InvalidArgumentException if namespace does not exist');
-        } catch (\Exception $e) {
-            $this->assertInstanceOf('\InvalidArgumentException', $e, '->find() throws an \InvalidArgumentException if namespace does not exist');
-            $this->assertRegExp('/There are no commands defined in the "foo2" namespace./', $e->getMessage(), '->find() throws an \InvalidArgumentException if namespace does not exist, with alternative');
-            $this->assertRegExp('/foo/', $e->getMessage(), '->find() throws an \InvalidArgumentException if namespace does not exist, with alternative : "foo"');
-            $this->assertRegExp('/foo1/', $e->getMessage(), '->find() throws an \InvalidArgumentException if namespace does not exist, with alternative : "foo1"');
-            $this->assertRegExp('/foo3/', $e->getMessage(), '->find() throws an \InvalidArgumentException if namespace does not exist, with alternative : "foo3"');
-        }
-    }
-
-    public function testFindNamespaceDoesNotFailOnDeepSimilarNamespaces()
-    {
-        $application = $this->getMock('Symfony\Component\Console\Application', array('getNamespaces'));
-        $application->expects($this->once())
-            ->method('getNamespaces')
-            ->will($this->returnValue(array('foo:sublong', 'bar:sub')));
-
-        $this->assertEquals('foo:sublong', $application->findNamespace('f:sub'));
-    }
-
-    /**
-     * @expectedException \InvalidArgumentException
-     * @expectedExceptionMessage Command "foo::bar" is not defined.
-     */
-    public function testFindWithDoubleColonInNameThrowsException()
-    {
-        $application = new Application();
-        $application->add(new \FooCommand());
-        $application->add(new \Foo4Command());
-        $application->find('foo::bar');
-    }
-
-    public function testSetCatchExceptions()
-    {
-        $application = $this->getMock('Symfony\Component\Console\Application', array('getTerminalWidth'));
-        $application->setAutoExit(false);
-        $application->expects($this->any())
-            ->method('getTerminalWidth')
-            ->will($this->returnValue(120));
-        $tester = new ApplicationTester($application);
-
-        $application->setCatchExceptions(true);
-        $tester->run(array('command' => 'foo'), array('decorated' => false));
-        $this->assertStringEqualsFile(self::$fixturesPath.'/application_renderexception1.txt', $tester->getDisplay(true), '->setCatchExceptions() sets the catch exception flag');
-
-        $application->setCatchExceptions(false);
-        try {
-            $tester->run(array('command' => 'foo'), array('decorated' => false));
-            $this->fail('->setCatchExceptions() sets the catch exception flag');
-        } catch (\Exception $e) {
-            $this->assertInstanceOf('\Exception', $e, '->setCatchExceptions() sets the catch exception flag');
-            $this->assertEquals('Command "foo" is not defined.', $e->getMessage(), '->setCatchExceptions() sets the catch exception flag');
-        }
-    }
-
-    /**
-     * @group legacy
-     */
-    public function testLegacyAsText()
-    {
-        $application = new Application();
-        $application->add(new \FooCommand());
-        $this->ensureStaticCommandHelp($application);
-        $this->assertStringEqualsFile(self::$fixturesPath.'/application_astext1.txt', $this->normalizeLineBreaks($application->asText()), '->asText() returns a text representation of the application');
-        $this->assertStringEqualsFile(self::$fixturesPath.'/application_astext2.txt', $this->normalizeLineBreaks($application->asText('foo')), '->asText() returns a text representation of the application');
-    }
-
-    /**
-     * @group legacy
-     */
-    public function testLegacyAsXml()
-    {
-        $application = new Application();
-        $application->add(new \FooCommand());
-        $this->ensureStaticCommandHelp($application);
-        $this->assertXmlStringEqualsXmlFile(self::$fixturesPath.'/application_asxml1.txt', $application->asXml(), '->asXml() returns an XML representation of the application');
-        $this->assertXmlStringEqualsXmlFile(self::$fixturesPath.'/application_asxml2.txt', $application->asXml('foo'), '->asXml() returns an XML representation of the application');
-    }
-
-    public function testRenderException()
-    {
-        $application = $this->getMock('Symfony\Component\Console\Application', array('getTerminalWidth'));
-        $application->setAutoExit(false);
-        $application->expects($this->any())
-            ->method('getTerminalWidth')
-            ->will($this->returnValue(120));
-        $tester = new ApplicationTester($application);
-
-        $tester->run(array('command' => 'foo'), array('decorated' => false));
-        $this->assertStringEqualsFile(self::$fixturesPath.'/application_renderexception1.txt', $tester->getDisplay(true), '->renderException() renders a pretty exception');
-
-        $tester->run(array('command' => 'foo'), array('decorated' => false, 'verbosity' => Output::VERBOSITY_VERBOSE));
-        $this->assertContains('Exception trace', $tester->getDisplay(), '->renderException() renders a pretty exception with a stack trace when verbosity is verbose');
-
-        $tester->run(array('command' => 'list', '--foo' => true), array('decorated' => false));
-        $this->assertStringEqualsFile(self::$fixturesPath.'/application_renderexception2.txt', $tester->getDisplay(true), '->renderException() renders the command synopsis when an exception occurs in the context of a command');
-
-        $application->add(new \Foo3Command());
-        $tester = new ApplicationTester($application);
-        $tester->run(array('command' => 'foo3:bar'), array('decorated' => false));
-        $this->assertStringEqualsFile(self::$fixturesPath.'/application_renderexception3.txt', $tester->getDisplay(true), '->renderException() renders a pretty exceptions with previous exceptions');
-
-        $tester->run(array('command' => 'foo3:bar'), array('decorated' => true));
-        $this->assertStringEqualsFile(self::$fixturesPath.'/application_renderexception3decorated.txt', $tester->getDisplay(true), '->renderException() renders a pretty exceptions with previous exceptions');
-
-        $application = $this->getMock('Symfony\Component\Console\Application', array('getTerminalWidth'));
-        $application->setAutoExit(false);
-        $application->expects($this->any())
-            ->method('getTerminalWidth')
-            ->will($this->returnValue(32));
-        $tester = new ApplicationTester($application);
-
-        $tester->run(array('command' => 'foo'), array('decorated' => false));
-        $this->assertStringEqualsFile(self::$fixturesPath.'/application_renderexception4.txt', $tester->getDisplay(true), '->renderException() wraps messages when they are bigger than the terminal');
-    }
-
-    public function testRenderExceptionWithDoubleWidthCharacters()
-    {
-        if (!function_exists('mb_strwidth')) {
-            $this->markTestSkipped('The "mb_strwidth" function is not available');
-        }
-
-        $application = $this->getMock('Symfony\Component\Console\Application', array('getTerminalWidth'));
-        $application->setAutoExit(false);
-        $application->expects($this->any())
-            ->method('getTerminalWidth')
-            ->will($this->returnValue(120));
-        $application->register('foo')->setCode(function () {
-            throw new \Exception('エラーメッセージ');
-        });
-        $tester = new ApplicationTester($application);
-
-        $tester->run(array('command' => 'foo'), array('decorated' => false));
-        $this->assertStringEqualsFile(self::$fixturesPath.'/application_renderexception_doublewidth1.txt', $tester->getDisplay(true), '->renderException() renders a pretty exceptions with previous exceptions');
-
-        $tester->run(array('command' => 'foo'), array('decorated' => true));
-        $this->assertStringEqualsFile(self::$fixturesPath.'/application_renderexception_doublewidth1decorated.txt', $tester->getDisplay(true), '->renderException() renders a pretty exceptions with previous exceptions');
-
-        $application = $this->getMock('Symfony\Component\Console\Application', array('getTerminalWidth'));
-        $application->setAutoExit(false);
-        $application->expects($this->any())
-            ->method('getTerminalWidth')
-            ->will($this->returnValue(32));
-        $application->register('foo')->setCode(function () {
-            throw new \Exception('コマンドの実行中にエラーが発生しました。');
-        });
-        $tester = new ApplicationTester($application);
-        $tester->run(array('command' => 'foo'), array('decorated' => false));
-        $this->assertStringEqualsFile(self::$fixturesPath.'/application_renderexception_doublewidth2.txt', $tester->getDisplay(true), '->renderException() wraps messages when they are bigger than the terminal');
-    }
-
-    public function testRun()
-    {
-        $application = new Application();
-        $application->setAutoExit(false);
-        $application->setCatchExceptions(false);
-        $application->add($command = new \Foo1Command());
-        $_SERVER['argv'] = array('cli.php', 'foo:bar1');
-
-        ob_start();
-        $application->run();
-        ob_end_clean();
-
-        $this->assertInstanceOf('Symfony\Component\Console\Input\ArgvInput', $command->input, '->run() creates an ArgvInput by default if none is given');
-        $this->assertInstanceOf('Symfony\Component\Console\Output\ConsoleOutput', $command->output, '->run() creates a ConsoleOutput by default if none is given');
-
-        $application = new Application();
-        $application->setAutoExit(false);
-        $application->setCatchExceptions(false);
-
-        $this->ensureStaticCommandHelp($application);
-        $tester = new ApplicationTester($application);
-
-        $tester->run(array(), array('decorated' => false));
-        $this->assertStringEqualsFile(self::$fixturesPath.'/application_run1.txt', $tester->getDisplay(true), '->run() runs the list command if no argument is passed');
-
-        $tester->run(array('--help' => true), array('decorated' => false));
-        $this->assertStringEqualsFile(self::$fixturesPath.'/application_run2.txt', $tester->getDisplay(true), '->run() runs the help command if --help is passed');
-
-        $tester->run(array('-h' => true), array('decorated' => false));
-        $this->assertStringEqualsFile(self::$fixturesPath.'/application_run2.txt', $tester->getDisplay(true), '->run() runs the help command if -h is passed');
-
-        $tester->run(array('command' => 'list', '--help' => true), array('decorated' => false));
-        $this->assertStringEqualsFile(self::$fixturesPath.'/application_run3.txt', $tester->getDisplay(true), '->run() displays the help if --help is passed');
-
-        $tester->run(array('command' => 'list', '-h' => true), array('decorated' => false));
-        $this->assertStringEqualsFile(self::$fixturesPath.'/application_run3.txt', $tester->getDisplay(true), '->run() displays the help if -h is passed');
-
-        $tester->run(array('--ansi' => true));
-        $this->assertTrue($tester->getOutput()->isDecorated(), '->run() forces color output if --ansi is passed');
-
-        $tester->run(array('--no-ansi' => true));
-        $this->assertFalse($tester->getOutput()->isDecorated(), '->run() forces color output to be disabled if --no-ansi is passed');
-
-        $tester->run(array('--version' => true), array('decorated' => false));
-        $this->assertStringEqualsFile(self::$fixturesPath.'/application_run4.txt', $tester->getDisplay(true), '->run() displays the program version if --version is passed');
-
-        $tester->run(array('-V' => true), array('decorated' => false));
-        $this->assertStringEqualsFile(self::$fixturesPath.'/application_run4.txt', $tester->getDisplay(true), '->run() displays the program version if -v is passed');
-
-        $tester->run(array('command' => 'list', '--quiet' => true));
-        $this->assertSame('', $tester->getDisplay(), '->run() removes all output if --quiet is passed');
-
-        $tester->run(array('command' => 'list', '-q' => true));
-        $this->assertSame('', $tester->getDisplay(), '->run() removes all output if -q is passed');
-
-        $tester->run(array('command' => 'list', '--verbose' => true));
-        $this->assertSame(Output::VERBOSITY_VERBOSE, $tester->getOutput()->getVerbosity(), '->run() sets the output to verbose if --verbose is passed');
-
-        $tester->run(array('command' => 'list', '--verbose' => 1));
-        $this->assertSame(Output::VERBOSITY_VERBOSE, $tester->getOutput()->getVerbosity(), '->run() sets the output to verbose if --verbose=1 is passed');
-
-        $tester->run(array('command' => 'list', '--verbose' => 2));
-        $this->assertSame(Output::VERBOSITY_VERY_VERBOSE, $tester->getOutput()->getVerbosity(), '->run() sets the output to very verbose if --verbose=2 is passed');
-
-        $tester->run(array('command' => 'list', '--verbose' => 3));
-        $this->assertSame(Output::VERBOSITY_DEBUG, $tester->getOutput()->getVerbosity(), '->run() sets the output to debug if --verbose=3 is passed');
-
-        $tester->run(array('command' => 'list', '--verbose' => 4));
-        $this->assertSame(Output::VERBOSITY_VERBOSE, $tester->getOutput()->getVerbosity(), '->run() sets the output to verbose if unknown --verbose level is passed');
-
-        $tester->run(array('command' => 'list', '-v' => true));
-        $this->assertSame(Output::VERBOSITY_VERBOSE, $tester->getOutput()->getVerbosity(), '->run() sets the output to verbose if -v is passed');
-
-        $tester->run(array('command' => 'list', '-vv' => true));
-        $this->assertSame(Output::VERBOSITY_VERY_VERBOSE, $tester->getOutput()->getVerbosity(), '->run() sets the output to verbose if -v is passed');
-
-        $tester->run(array('command' => 'list', '-vvv' => true));
-        $this->assertSame(Output::VERBOSITY_DEBUG, $tester->getOutput()->getVerbosity(), '->run() sets the output to verbose if -v is passed');
-
-        $application = new Application();
-        $application->setAutoExit(false);
-        $application->setCatchExceptions(false);
-        $application->add(new \FooCommand());
-        $tester = new ApplicationTester($application);
-
-        $tester->run(array('command' => 'foo:bar', '--no-interaction' => true), array('decorated' => false));
-        $this->assertSame('called'.PHP_EOL, $tester->getDisplay(), '->run() does not call interact() if --no-interaction is passed');
-
-        $tester->run(array('command' => 'foo:bar', '-n' => true), array('decorated' => false));
-        $this->assertSame('called'.PHP_EOL, $tester->getDisplay(), '->run() does not call interact() if -n is passed');
-    }
-
-    /**
-     * Issue #9285.
-     *
-     * If the "verbose" option is just before an argument in ArgvInput,
-     * an argument value should not be treated as verbosity value.
-     * This test will fail with "Not enough arguments." if broken
-     */
-    public function testVerboseValueNotBreakArguments()
-    {
-        $application = new Application();
-        $application->setAutoExit(false);
-        $application->setCatchExceptions(false);
-        $application->add(new \FooCommand());
-
-        $output = new StreamOutput(fopen('php://memory', 'w', false));
-
-        $input = new ArgvInput(array('cli.php', '-v', 'foo:bar'));
-        $application->run($input, $output);
-
-        $input = new ArgvInput(array('cli.php', '--verbose', 'foo:bar'));
-        $application->run($input, $output);
-    }
-
-    public function testRunReturnsIntegerExitCode()
-    {
-        $exception = new \Exception('', 4);
-
-        $application = $this->getMock('Symfony\Component\Console\Application', array('doRun'));
-        $application->setAutoExit(false);
-        $application->expects($this->once())
-             ->method('doRun')
-             ->will($this->throwException($exception));
-
-        $exitCode = $application->run(new ArrayInput(array()), new NullOutput());
-
-        $this->assertSame(4, $exitCode, '->run() returns integer exit code extracted from raised exception');
-    }
-
-    public function testRunReturnsExitCodeOneForExceptionCodeZero()
-    {
-        $exception = new \Exception('', 0);
-
-        $application = $this->getMock('Symfony\Component\Console\Application', array('doRun'));
-        $application->setAutoExit(false);
-        $application->expects($this->once())
-             ->method('doRun')
-             ->will($this->throwException($exception));
-
-        $exitCode = $application->run(new ArrayInput(array()), new NullOutput());
-
-        $this->assertSame(1, $exitCode, '->run() returns exit code 1 when exception code is 0');
-    }
-
-    /**
-     * @expectedException \LogicException
-     * @dataProvider getAddingAlreadySetDefinitionElementData
-     */
-    public function testAddingAlreadySetDefinitionElementData($def)
-    {
-        $application = new Application();
-        $application->setAutoExit(false);
-        $application->setCatchExceptions(false);
-        $application
-            ->register('foo')
-            ->setDefinition(array($def))
-            ->setCode(function (InputInterface $input, OutputInterface $output) {})
-        ;
-
-        $input = new ArrayInput(array('command' => 'foo'));
-        $output = new NullOutput();
-        $application->run($input, $output);
-    }
-
-    public function getAddingAlreadySetDefinitionElementData()
-    {
-        return array(
-            array(new InputArgument('command', InputArgument::REQUIRED)),
-            array(new InputOption('quiet', '', InputOption::VALUE_NONE)),
-            array(new InputOption('query', 'q', InputOption::VALUE_NONE)),
-        );
-    }
-
-    public function testGetDefaultHelperSetReturnsDefaultValues()
-    {
-        $application = new Application();
-        $application->setAutoExit(false);
-        $application->setCatchExceptions(false);
-
-        $helperSet = $application->getHelperSet();
-
-        $this->assertTrue($helperSet->has('formatter'));
-        $this->assertTrue($helperSet->has('dialog'));
-        $this->assertTrue($helperSet->has('progress'));
-    }
-
-    public function testAddingSingleHelperSetOverwritesDefaultValues()
-    {
-        $application = new Application();
-        $application->setAutoExit(false);
-        $application->setCatchExceptions(false);
-
-        $application->setHelperSet(new HelperSet(array(new FormatterHelper())));
-
-        $helperSet = $application->getHelperSet();
-
-        $this->assertTrue($helperSet->has('formatter'));
-
-        // no other default helper set should be returned
-        $this->assertFalse($helperSet->has('dialog'));
-        $this->assertFalse($helperSet->has('progress'));
-    }
-
-    public function testOverwritingDefaultHelperSetOverwritesDefaultValues()
-    {
-        $application = new CustomApplication();
-        $application->setAutoExit(false);
-        $application->setCatchExceptions(false);
-
-        $application->setHelperSet(new HelperSet(array(new FormatterHelper())));
-
-        $helperSet = $application->getHelperSet();
-
-        $this->assertTrue($helperSet->has('formatter'));
-
-        // no other default helper set should be returned
-        $this->assertFalse($helperSet->has('dialog'));
-        $this->assertFalse($helperSet->has('progress'));
-    }
-
-    public function testGetDefaultInputDefinitionReturnsDefaultValues()
-    {
-        $application = new Application();
-        $application->setAutoExit(false);
-        $application->setCatchExceptions(false);
-
-        $inputDefinition = $application->getDefinition();
-
-        $this->assertTrue($inputDefinition->hasArgument('command'));
-
-        $this->assertTrue($inputDefinition->hasOption('help'));
-        $this->assertTrue($inputDefinition->hasOption('quiet'));
-        $this->assertTrue($inputDefinition->hasOption('verbose'));
-        $this->assertTrue($inputDefinition->hasOption('version'));
-        $this->assertTrue($inputDefinition->hasOption('ansi'));
-        $this->assertTrue($inputDefinition->hasOption('no-ansi'));
-        $this->assertTrue($inputDefinition->hasOption('no-interaction'));
-    }
-
-    public function testOverwritingDefaultInputDefinitionOverwritesDefaultValues()
-    {
-        $application = new CustomApplication();
-        $application->setAutoExit(false);
-        $application->setCatchExceptions(false);
-
-        $inputDefinition = $application->getDefinition();
-
-        // check whether the default arguments and options are not returned any more
-        $this->assertFalse($inputDefinition->hasArgument('command'));
-
-        $this->assertFalse($inputDefinition->hasOption('help'));
-        $this->assertFalse($inputDefinition->hasOption('quiet'));
-        $this->assertFalse($inputDefinition->hasOption('verbose'));
-        $this->assertFalse($inputDefinition->hasOption('version'));
-        $this->assertFalse($inputDefinition->hasOption('ansi'));
-        $this->assertFalse($inputDefinition->hasOption('no-ansi'));
-        $this->assertFalse($inputDefinition->hasOption('no-interaction'));
-
-        $this->assertTrue($inputDefinition->hasOption('custom'));
-    }
-
-    public function testSettingCustomInputDefinitionOverwritesDefaultValues()
-    {
-        $application = new Application();
-        $application->setAutoExit(false);
-        $application->setCatchExceptions(false);
-
-        $application->setDefinition(new InputDefinition(array(new InputOption('--custom', '-c', InputOption::VALUE_NONE, 'Set the custom input definition.'))));
-
-        $inputDefinition = $application->getDefinition();
-
-        // check whether the default arguments and options are not returned any more
-        $this->assertFalse($inputDefinition->hasArgument('command'));
-
-        $this->assertFalse($inputDefinition->hasOption('help'));
-        $this->assertFalse($inputDefinition->hasOption('quiet'));
-        $this->assertFalse($inputDefinition->hasOption('verbose'));
-        $this->assertFalse($inputDefinition->hasOption('version'));
-        $this->assertFalse($inputDefinition->hasOption('ansi'));
-        $this->assertFalse($inputDefinition->hasOption('no-ansi'));
-        $this->assertFalse($inputDefinition->hasOption('no-interaction'));
-
-        $this->assertTrue($inputDefinition->hasOption('custom'));
-    }
-
-    public function testRunWithDispatcher()
-    {
-        $application = new Application();
-        $application->setAutoExit(false);
-        $application->setDispatcher($this->getDispatcher());
-
-        $application->register('foo')->setCode(function (InputInterface $input, OutputInterface $output) {
-            $output->write('foo.');
-        });
-
-        $tester = new ApplicationTester($application);
-        $tester->run(array('command' => 'foo'));
-        $this->assertEquals('before.foo.after.'.PHP_EOL, $tester->getDisplay());
-    }
-
-    /**
-     * @expectedException        \LogicException
-     * @expectedExceptionMessage caught
-     */
-    public function testRunWithExceptionAndDispatcher()
-    {
-        $application = new Application();
-        $application->setDispatcher($this->getDispatcher());
-        $application->setAutoExit(false);
-        $application->setCatchExceptions(false);
-
-        $application->register('foo')->setCode(function (InputInterface $input, OutputInterface $output) {
-            throw new \RuntimeException('foo');
-        });
-
-        $tester = new ApplicationTester($application);
-        $tester->run(array('command' => 'foo'));
-    }
-
-    public function testRunDispatchesAllEventsWithException()
-    {
-        $application = new Application();
-        $application->setDispatcher($this->getDispatcher());
-        $application->setAutoExit(false);
-
-        $application->register('foo')->setCode(function (InputInterface $input, OutputInterface $output) {
-            $output->write('foo.');
-
-            throw new \RuntimeException('foo');
-        });
-
-        $tester = new ApplicationTester($application);
-        $tester->run(array('command' => 'foo'));
-        $this->assertContains('before.foo.caught.after.', $tester->getDisplay());
-    }
-
-    public function testRunWithDispatcherSkippingCommand()
-    {
-        $application = new Application();
-        $application->setDispatcher($this->getDispatcher(true));
-        $application->setAutoExit(false);
-
-        $application->register('foo')->setCode(function (InputInterface $input, OutputInterface $output) {
-            $output->write('foo.');
-        });
-
-        $tester = new ApplicationTester($application);
-        $exitCode = $tester->run(array('command' => 'foo'));
-        $this->assertContains('before.after.', $tester->getDisplay());
-        $this->assertEquals(ConsoleCommandEvent::RETURN_CODE_DISABLED, $exitCode);
-    }
-
-    public function testTerminalDimensions()
-    {
-        $application = new Application();
-        $originalDimensions = $application->getTerminalDimensions();
-        $this->assertCount(2, $originalDimensions);
-
-        $width = 80;
-        if ($originalDimensions[0] == $width) {
-            $width = 100;
-        }
-
-        $application->setTerminalDimensions($width, 80);
-        $this->assertSame(array($width, 80), $application->getTerminalDimensions());
-    }
-
-    protected function getDispatcher($skipCommand = false)
-    {
-        $dispatcher = new EventDispatcher();
-        $dispatcher->addListener('console.command', function (ConsoleCommandEvent $event) use ($skipCommand) {
-            $event->getOutput()->write('before.');
-
-            if ($skipCommand) {
-                $event->disableCommand();
-            }
-        });
-        $dispatcher->addListener('console.terminate', function (ConsoleTerminateEvent $event) use ($skipCommand) {
-            $event->getOutput()->writeln('after.');
-
-            if (!$skipCommand) {
-                $event->setExitCode(113);
-            }
-        });
-        $dispatcher->addListener('console.exception', function (ConsoleExceptionEvent $event) {
-            $event->getOutput()->write('caught.');
-
-            $event->setException(new \LogicException('caught.', $event->getExitCode(), $event->getException()));
-        });
-
-        return $dispatcher;
-    }
-
-    public function testSetRunCustomDefaultCommand()
-    {
-        $command = new \FooCommand();
-
-        $application = new Application();
-        $application->setAutoExit(false);
-        $application->add($command);
-        $application->setDefaultCommand($command->getName());
-
-        $tester = new ApplicationTester($application);
-        $tester->run(array());
-        $this->assertEquals('interact called'.PHP_EOL.'called'.PHP_EOL, $tester->getDisplay(), 'Application runs the default set command if different from \'list\' command');
-
-        $application = new CustomDefaultCommandApplication();
-        $application->setAutoExit(false);
-
-        $tester = new ApplicationTester($application);
-        $tester->run(array());
-
-        $this->assertEquals('interact called'.PHP_EOL.'called'.PHP_EOL, $tester->getDisplay(), 'Application runs the default set command if different from \'list\' command');
-    }
-
-    public function testCanCheckIfTerminalIsInteractive()
-    {
-        if (!function_exists('posix_isatty')) {
-            $this->markTestSkipped('posix_isatty function is required');
-        }
-
-        $application = new CustomDefaultCommandApplication();
-        $application->setAutoExit(false);
-
-        $tester = new ApplicationTester($application);
-        $tester->run(array('command' => 'help'));
-
-        $this->assertFalse($tester->getInput()->hasParameterOption(array('--no-interaction', '-n')));
-
-        $inputStream = $application->getHelperSet()->get('question')->getInputStream();
-        $this->assertEquals($tester->getInput()->isInteractive(), @posix_isatty($inputStream));
-    }
-}
-
-class CustomApplication extends Application
-{
-    /**
-     * Overwrites the default input definition.
-     *
-     * @return InputDefinition An InputDefinition instance
-     */
-    protected function getDefaultInputDefinition()
-    {
-        return new InputDefinition(array(new InputOption('--custom', '-c', InputOption::VALUE_NONE, 'Set the custom input definition.')));
-    }
-
-    /**
-     * Gets the default helper set with the helpers that should always be available.
-     *
-     * @return HelperSet A HelperSet instance
-     */
-    protected function getDefaultHelperSet()
-    {
-        return new HelperSet(array(new FormatterHelper()));
-    }
-}
-
-class CustomDefaultCommandApplication extends Application
-{
-    /**
-     * Overwrites the constructor in order to set a different default command.
-     */
-    public function __construct()
-    {
-        parent::__construct();
-
-        $command = new \FooCommand();
-        $this->add($command);
-        $this->setDefaultCommand($command->getName());
-    }
-}
diff --git a/vendor/symfony/console/Tests/ClockMock.php b/vendor/symfony/console/Tests/ClockMock.php
deleted file mode 100644
index 0e92316..0000000
--- a/vendor/symfony/console/Tests/ClockMock.php
+++ /dev/null
@@ -1,41 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Console\Helper;
-
-use Symfony\Component\Console\Tests;
-
-function time()
-{
-    return Tests\time();
-}
-
-namespace Symfony\Component\Console\Tests;
-
-function with_clock_mock($enable = null)
-{
-    static $enabled;
-
-    if (null === $enable) {
-        return $enabled;
-    }
-
-    $enabled = $enable;
-}
-
-function time()
-{
-    if (!with_clock_mock()) {
-        return \time();
-    }
-
-    return $_SERVER['REQUEST_TIME'];
-}
diff --git a/vendor/symfony/console/Tests/Command/CommandTest.php b/vendor/symfony/console/Tests/Command/CommandTest.php
deleted file mode 100644
index 7ab993b..0000000
--- a/vendor/symfony/console/Tests/Command/CommandTest.php
+++ /dev/null
@@ -1,337 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Console\Tests\Command;
-
-use Symfony\Component\Console\Command\Command;
-use Symfony\Component\Console\Helper\FormatterHelper;
-use Symfony\Component\Console\Application;
-use Symfony\Component\Console\Input\InputDefinition;
-use Symfony\Component\Console\Input\InputArgument;
-use Symfony\Component\Console\Input\InputOption;
-use Symfony\Component\Console\Input\InputInterface;
-use Symfony\Component\Console\Input\StringInput;
-use Symfony\Component\Console\Output\OutputInterface;
-use Symfony\Component\Console\Output\NullOutput;
-use Symfony\Component\Console\Tester\CommandTester;
-
-class CommandTest extends \PHPUnit_Framework_TestCase
-{
-    protected static $fixturesPath;
-
-    public static function setUpBeforeClass()
-    {
-        self::$fixturesPath = __DIR__.'/../Fixtures/';
-        require_once self::$fixturesPath.'/TestCommand.php';
-    }
-
-    public function testConstructor()
-    {
-        $command = new Command('foo:bar');
-        $this->assertEquals('foo:bar', $command->getName(), '__construct() takes the command name as its first argument');
-    }
-
-    /**
-     * @expectedException        \LogicException
-     * @expectedExceptionMessage The command defined in "Symfony\Component\Console\Command\Command" cannot have an empty name.
-     */
-    public function testCommandNameCannotBeEmpty()
-    {
-        new Command();
-    }
-
-    public function testSetApplication()
-    {
-        $application = new Application();
-        $command = new \TestCommand();
-        $command->setApplication($application);
-        $this->assertEquals($application, $command->getApplication(), '->setApplication() sets the current application');
-    }
-
-    public function testSetGetDefinition()
-    {
-        $command = new \TestCommand();
-        $ret = $command->setDefinition($definition = new InputDefinition());
-        $this->assertEquals($command, $ret, '->setDefinition() implements a fluent interface');
-        $this->assertEquals($definition, $command->getDefinition(), '->setDefinition() sets the current InputDefinition instance');
-        $command->setDefinition(array(new InputArgument('foo'), new InputOption('bar')));
-        $this->assertTrue($command->getDefinition()->hasArgument('foo'), '->setDefinition() also takes an array of InputArguments and InputOptions as an argument');
-        $this->assertTrue($command->getDefinition()->hasOption('bar'), '->setDefinition() also takes an array of InputArguments and InputOptions as an argument');
-        $command->setDefinition(new InputDefinition());
-    }
-
-    public function testAddArgument()
-    {
-        $command = new \TestCommand();
-        $ret = $command->addArgument('foo');
-        $this->assertEquals($command, $ret, '->addArgument() implements a fluent interface');
-        $this->assertTrue($command->getDefinition()->hasArgument('foo'), '->addArgument() adds an argument to the command');
-    }
-
-    public function testAddOption()
-    {
-        $command = new \TestCommand();
-        $ret = $command->addOption('foo');
-        $this->assertEquals($command, $ret, '->addOption() implements a fluent interface');
-        $this->assertTrue($command->getDefinition()->hasOption('foo'), '->addOption() adds an option to the command');
-    }
-
-    public function testGetNamespaceGetNameSetName()
-    {
-        $command = new \TestCommand();
-        $this->assertEquals('namespace:name', $command->getName(), '->getName() returns the command name');
-        $command->setName('foo');
-        $this->assertEquals('foo', $command->getName(), '->setName() sets the command name');
-
-        $ret = $command->setName('foobar:bar');
-        $this->assertEquals($command, $ret, '->setName() implements a fluent interface');
-        $this->assertEquals('foobar:bar', $command->getName(), '->setName() sets the command name');
-    }
-
-    /**
-     * @dataProvider provideInvalidCommandNames
-     */
-    public function testInvalidCommandNames($name)
-    {
-        $this->setExpectedException('InvalidArgumentException', sprintf('Command name "%s" is invalid.', $name));
-
-        $command = new \TestCommand();
-        $command->setName($name);
-    }
-
-    public function provideInvalidCommandNames()
-    {
-        return array(
-            array(''),
-            array('foo:'),
-        );
-    }
-
-    public function testGetSetDescription()
-    {
-        $command = new \TestCommand();
-        $this->assertEquals('description', $command->getDescription(), '->getDescription() returns the description');
-        $ret = $command->setDescription('description1');
-        $this->assertEquals($command, $ret, '->setDescription() implements a fluent interface');
-        $this->assertEquals('description1', $command->getDescription(), '->setDescription() sets the description');
-    }
-
-    public function testGetSetHelp()
-    {
-        $command = new \TestCommand();
-        $this->assertEquals('help', $command->getHelp(), '->getHelp() returns the help');
-        $ret = $command->setHelp('help1');
-        $this->assertEquals($command, $ret, '->setHelp() implements a fluent interface');
-        $this->assertEquals('help1', $command->getHelp(), '->setHelp() sets the help');
-        $command->setHelp('');
-        $this->assertEquals('description', $command->getHelp(), '->getHelp() fallback to the description');
-    }
-
-    public function testGetProcessedHelp()
-    {
-        $command = new \TestCommand();
-        $command->setHelp('The %command.name% command does... Example: php %command.full_name%.');
-        $this->assertContains('The namespace:name command does...', $command->getProcessedHelp(), '->getProcessedHelp() replaces %command.name% correctly');
-        $this->assertNotContains('%command.full_name%', $command->getProcessedHelp(), '->getProcessedHelp() replaces %command.full_name%');
-    }
-
-    public function testGetSetAliases()
-    {
-        $command = new \TestCommand();
-        $this->assertEquals(array('name'), $command->getAliases(), '->getAliases() returns the aliases');
-        $ret = $command->setAliases(array('name1'));
-        $this->assertEquals($command, $ret, '->setAliases() implements a fluent interface');
-        $this->assertEquals(array('name1'), $command->getAliases(), '->setAliases() sets the aliases');
-    }
-
-    public function testGetSynopsis()
-    {
-        $command = new \TestCommand();
-        $command->addOption('foo');
-        $command->addArgument('bar');
-        $this->assertEquals('namespace:name [--foo] [--] [<bar>]', $command->getSynopsis(), '->getSynopsis() returns the synopsis');
-    }
-
-    public function testGetHelper()
-    {
-        $application = new Application();
-        $command = new \TestCommand();
-        $command->setApplication($application);
-        $formatterHelper = new FormatterHelper();
-        $this->assertEquals($formatterHelper->getName(), $command->getHelper('formatter')->getName(), '->getHelper() returns the correct helper');
-    }
-
-    public function testMergeApplicationDefinition()
-    {
-        $application1 = new Application();
-        $application1->getDefinition()->addArguments(array(new InputArgument('foo')));
-        $application1->getDefinition()->addOptions(array(new InputOption('bar')));
-        $command = new \TestCommand();
-        $command->setApplication($application1);
-        $command->setDefinition($definition = new InputDefinition(array(new InputArgument('bar'), new InputOption('foo'))));
-
-        $r = new \ReflectionObject($command);
-        $m = $r->getMethod('mergeApplicationDefinition');
-        $m->setAccessible(true);
-        $m->invoke($command);
-        $this->assertTrue($command->getDefinition()->hasArgument('foo'), '->mergeApplicationDefinition() merges the application arguments and the command arguments');
-        $this->assertTrue($command->getDefinition()->hasArgument('bar'), '->mergeApplicationDefinition() merges the application arguments and the command arguments');
-        $this->assertTrue($command->getDefinition()->hasOption('foo'), '->mergeApplicationDefinition() merges the application options and the command options');
-        $this->assertTrue($command->getDefinition()->hasOption('bar'), '->mergeApplicationDefinition() merges the application options and the command options');
-
-        $m->invoke($command);
-        $this->assertEquals(3, $command->getDefinition()->getArgumentCount(), '->mergeApplicationDefinition() does not try to merge twice the application arguments and options');
-    }
-
-    public function testMergeApplicationDefinitionWithoutArgsThenWithArgsAddsArgs()
-    {
-        $application1 = new Application();
-        $application1->getDefinition()->addArguments(array(new InputArgument('foo')));
-        $application1->getDefinition()->addOptions(array(new InputOption('bar')));
-        $command = new \TestCommand();
-        $command->setApplication($application1);
-        $command->setDefinition($definition = new InputDefinition(array()));
-
-        $r = new \ReflectionObject($command);
-        $m = $r->getMethod('mergeApplicationDefinition');
-        $m->setAccessible(true);
-        $m->invoke($command, false);
-        $this->assertTrue($command->getDefinition()->hasOption('bar'), '->mergeApplicationDefinition(false) merges the application and the command options');
-        $this->assertFalse($command->getDefinition()->hasArgument('foo'), '->mergeApplicationDefinition(false) does not merge the application arguments');
-
-        $m->invoke($command, true);
-        $this->assertTrue($command->getDefinition()->hasArgument('foo'), '->mergeApplicationDefinition(true) merges the application arguments and the command arguments');
-
-        $m->invoke($command);
-        $this->assertEquals(2, $command->getDefinition()->getArgumentCount(), '->mergeApplicationDefinition() does not try to merge twice the application arguments');
-    }
-
-    public function testRunInteractive()
-    {
-        $tester = new CommandTester(new \TestCommand());
-
-        $tester->execute(array(), array('interactive' => true));
-
-        $this->assertEquals('interact called'.PHP_EOL.'execute called'.PHP_EOL, $tester->getDisplay(), '->run() calls the interact() method if the input is interactive');
-    }
-
-    public function testRunNonInteractive()
-    {
-        $tester = new CommandTester(new \TestCommand());
-
-        $tester->execute(array(), array('interactive' => false));
-
-        $this->assertEquals('execute called'.PHP_EOL, $tester->getDisplay(), '->run() does not call the interact() method if the input is not interactive');
-    }
-
-    /**
-     * @expectedException        \LogicException
-     * @expectedExceptionMessage You must override the execute() method in the concrete command class.
-     */
-    public function testExecuteMethodNeedsToBeOverridden()
-    {
-        $command = new Command('foo');
-        $command->run(new StringInput(''), new NullOutput());
-    }
-
-    /**
-     * @expectedException        \InvalidArgumentException
-     * @expectedExceptionMessage The "--bar" option does not exist.
-     */
-    public function testRunWithInvalidOption()
-    {
-        $command = new \TestCommand();
-        $tester = new CommandTester($command);
-        $tester->execute(array('--bar' => true));
-    }
-
-    public function testRunReturnsIntegerExitCode()
-    {
-        $command = new \TestCommand();
-        $exitCode = $command->run(new StringInput(''), new NullOutput());
-        $this->assertSame(0, $exitCode, '->run() returns integer exit code (treats null as 0)');
-
-        $command = $this->getMock('TestCommand', array('execute'));
-        $command->expects($this->once())
-             ->method('execute')
-             ->will($this->returnValue('2.3'));
-        $exitCode = $command->run(new StringInput(''), new NullOutput());
-        $this->assertSame(2, $exitCode, '->run() returns integer exit code (casts numeric to int)');
-    }
-
-    public function testRunReturnsAlwaysInteger()
-    {
-        $command = new \TestCommand();
-
-        $this->assertSame(0, $command->run(new StringInput(''), new NullOutput()));
-    }
-
-    public function testSetCode()
-    {
-        $command = new \TestCommand();
-        $ret = $command->setCode(function (InputInterface $input, OutputInterface $output) {
-            $output->writeln('from the code...');
-        });
-        $this->assertEquals($command, $ret, '->setCode() implements a fluent interface');
-        $tester = new CommandTester($command);
-        $tester->execute(array());
-        $this->assertEquals('interact called'.PHP_EOL.'from the code...'.PHP_EOL, $tester->getDisplay());
-    }
-
-    public function testSetCodeWithNonClosureCallable()
-    {
-        $command = new \TestCommand();
-        $ret = $command->setCode(array($this, 'callableMethodCommand'));
-        $this->assertEquals($command, $ret, '->setCode() implements a fluent interface');
-        $tester = new CommandTester($command);
-        $tester->execute(array());
-        $this->assertEquals('interact called'.PHP_EOL.'from the code...'.PHP_EOL, $tester->getDisplay());
-    }
-
-    /**
-     * @expectedException        \InvalidArgumentException
-     * @expectedExceptionMessage Invalid callable provided to Command::setCode.
-     */
-    public function testSetCodeWithNonCallable()
-    {
-        $command = new \TestCommand();
-        $command->setCode(array($this, 'nonExistentMethod'));
-    }
-
-    public function callableMethodCommand(InputInterface $input, OutputInterface $output)
-    {
-        $output->writeln('from the code...');
-    }
-
-    /**
-     * @group legacy
-     */
-    public function testLegacyAsText()
-    {
-        $command = new \TestCommand();
-        $command->setApplication(new Application());
-        $tester = new CommandTester($command);
-        $tester->execute(array('command' => $command->getName()));
-        $this->assertStringEqualsFile(self::$fixturesPath.'/command_astext.txt', $command->asText(), '->asText() returns a text representation of the command');
-    }
-
-    /**
-     * @group legacy
-     */
-    public function testLegacyAsXml()
-    {
-        $command = new \TestCommand();
-        $command->setApplication(new Application());
-        $tester = new CommandTester($command);
-        $tester->execute(array('command' => $command->getName()));
-        $this->assertXmlStringEqualsXmlFile(self::$fixturesPath.'/command_asxml.txt', $command->asXml(), '->asXml() returns an XML representation of the command');
-    }
-}
diff --git a/vendor/symfony/console/Tests/Command/HelpCommandTest.php b/vendor/symfony/console/Tests/Command/HelpCommandTest.php
deleted file mode 100644
index 9e06858..0000000
--- a/vendor/symfony/console/Tests/Command/HelpCommandTest.php
+++ /dev/null
@@ -1,70 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Console\Tests\Command;
-
-use Symfony\Component\Console\Tester\CommandTester;
-use Symfony\Component\Console\Command\HelpCommand;
-use Symfony\Component\Console\Command\ListCommand;
-use Symfony\Component\Console\Application;
-
-class HelpCommandTest extends \PHPUnit_Framework_TestCase
-{
-    public function testExecuteForCommandAlias()
-    {
-        $command = new HelpCommand();
-        $command->setApplication(new Application());
-        $commandTester = new CommandTester($command);
-        $commandTester->execute(array('command_name' => 'li'), array('decorated' => false));
-        $this->assertContains('list [options] [--] [<namespace>]', $commandTester->getDisplay(), '->execute() returns a text help for the given command alias');
-        $this->assertContains('format=FORMAT', $commandTester->getDisplay(), '->execute() returns a text help for the given command alias');
-        $this->assertContains('raw', $commandTester->getDisplay(), '->execute() returns a text help for the given command alias');
-    }
-
-    public function testExecuteForCommand()
-    {
-        $command = new HelpCommand();
-        $commandTester = new CommandTester($command);
-        $command->setCommand(new ListCommand());
-        $commandTester->execute(array(), array('decorated' => false));
-        $this->assertContains('list [options] [--] [<namespace>]', $commandTester->getDisplay(), '->execute() returns a text help for the given command');
-        $this->assertContains('format=FORMAT', $commandTester->getDisplay(), '->execute() returns a text help for the given command');
-        $this->assertContains('raw', $commandTester->getDisplay(), '->execute() returns a text help for the given command');
-    }
-
-    public function testExecuteForCommandWithXmlOption()
-    {
-        $command = new HelpCommand();
-        $commandTester = new CommandTester($command);
-        $command->setCommand(new ListCommand());
-        $commandTester->execute(array('--format' => 'xml'));
-        $this->assertContains('<command', $commandTester->getDisplay(), '->execute() returns an XML help text if --xml is passed');
-    }
-
-    public function testExecuteForApplicationCommand()
-    {
-        $application = new Application();
-        $commandTester = new CommandTester($application->get('help'));
-        $commandTester->execute(array('command_name' => 'list'));
-        $this->assertContains('list [options] [--] [<namespace>]', $commandTester->getDisplay(), '->execute() returns a text help for the given command');
-        $this->assertContains('format=FORMAT', $commandTester->getDisplay(), '->execute() returns a text help for the given command');
-        $this->assertContains('raw', $commandTester->getDisplay(), '->execute() returns a text help for the given command');
-    }
-
-    public function testExecuteForApplicationCommandWithXmlOption()
-    {
-        $application = new Application();
-        $commandTester = new CommandTester($application->get('help'));
-        $commandTester->execute(array('command_name' => 'list', '--format' => 'xml'));
-        $this->assertContains('list [--xml] [--raw] [--format FORMAT] [--] [&lt;namespace&gt;]', $commandTester->getDisplay(), '->execute() returns a text help for the given command');
-        $this->assertContains('<command', $commandTester->getDisplay(), '->execute() returns an XML help text if --format=xml is passed');
-    }
-}
diff --git a/vendor/symfony/console/Tests/Command/ListCommandTest.php b/vendor/symfony/console/Tests/Command/ListCommandTest.php
deleted file mode 100644
index 3578d48..0000000
--- a/vendor/symfony/console/Tests/Command/ListCommandTest.php
+++ /dev/null
@@ -1,64 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Console\Tests\Command;
-
-use Symfony\Component\Console\Tester\CommandTester;
-use Symfony\Component\Console\Application;
-
-class ListCommandTest extends \PHPUnit_Framework_TestCase
-{
-    public function testExecuteListsCommands()
-    {
-        $application = new Application();
-        $commandTester = new CommandTester($command = $application->get('list'));
-        $commandTester->execute(array('command' => $command->getName()), array('decorated' => false));
-
-        $this->assertRegExp('/help\s{2,}Displays help for a command/', $commandTester->getDisplay(), '->execute() returns a list of available commands');
-    }
-
-    public function testExecuteListsCommandsWithXmlOption()
-    {
-        $application = new Application();
-        $commandTester = new CommandTester($command = $application->get('list'));
-        $commandTester->execute(array('command' => $command->getName(), '--format' => 'xml'));
-        $this->assertRegExp('/<command id="list" name="list">/', $commandTester->getDisplay(), '->execute() returns a list of available commands in XML if --xml is passed');
-    }
-
-    public function testExecuteListsCommandsWithRawOption()
-    {
-        $application = new Application();
-        $commandTester = new CommandTester($command = $application->get('list'));
-        $commandTester->execute(array('command' => $command->getName(), '--raw' => true));
-        $output = <<<EOF
-help   Displays help for a command
-list   Lists commands
-
-EOF;
-
-        $this->assertEquals($output, $commandTester->getDisplay(true));
-    }
-
-    public function testExecuteListsCommandsWithNamespaceArgument()
-    {
-        require_once realpath(__DIR__.'/../Fixtures/FooCommand.php');
-        $application = new Application();
-        $application->add(new \FooCommand());
-        $commandTester = new CommandTester($command = $application->get('list'));
-        $commandTester->execute(array('command' => $command->getName(), 'namespace' => 'foo', '--raw' => true));
-        $output = <<<EOF
-foo:bar   The foo:bar command
-
-EOF;
-
-        $this->assertEquals($output, $commandTester->getDisplay(true));
-    }
-}
diff --git a/vendor/symfony/console/Tests/Descriptor/AbstractDescriptorTest.php b/vendor/symfony/console/Tests/Descriptor/AbstractDescriptorTest.php
deleted file mode 100644
index f582e7f..0000000
--- a/vendor/symfony/console/Tests/Descriptor/AbstractDescriptorTest.php
+++ /dev/null
@@ -1,105 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Console\Tests\Descriptor;
-
-use Symfony\Component\Console\Application;
-use Symfony\Component\Console\Command\Command;
-use Symfony\Component\Console\Input\InputArgument;
-use Symfony\Component\Console\Input\InputDefinition;
-use Symfony\Component\Console\Input\InputOption;
-use Symfony\Component\Console\Output\BufferedOutput;
-
-abstract class AbstractDescriptorTest extends \PHPUnit_Framework_TestCase
-{
-    /** @dataProvider getDescribeInputArgumentTestData */
-    public function testDescribeInputArgument(InputArgument $argument, $expectedDescription)
-    {
-        $this->assertDescription($expectedDescription, $argument);
-    }
-
-    /** @dataProvider getDescribeInputOptionTestData */
-    public function testDescribeInputOption(InputOption $option, $expectedDescription)
-    {
-        $this->assertDescription($expectedDescription, $option);
-    }
-
-    /** @dataProvider getDescribeInputDefinitionTestData */
-    public function testDescribeInputDefinition(InputDefinition $definition, $expectedDescription)
-    {
-        $this->assertDescription($expectedDescription, $definition);
-    }
-
-    /** @dataProvider getDescribeCommandTestData */
-    public function testDescribeCommand(Command $command, $expectedDescription)
-    {
-        $this->assertDescription($expectedDescription, $command);
-    }
-
-    /** @dataProvider getDescribeApplicationTestData */
-    public function testDescribeApplication(Application $application, $expectedDescription)
-    {
-        // Replaces the dynamic placeholders of the command help text with a static version.
-        // The placeholder %command.full_name% includes the script path that is not predictable
-        // and can not be tested against.
-        foreach ($application->all() as $command) {
-            $command->setHelp(str_replace('%command.full_name%', 'app/console %command.name%', $command->getHelp()));
-        }
-
-        $this->assertDescription($expectedDescription, $application);
-    }
-
-    public function getDescribeInputArgumentTestData()
-    {
-        return $this->getDescriptionTestData(ObjectsProvider::getInputArguments());
-    }
-
-    public function getDescribeInputOptionTestData()
-    {
-        return $this->getDescriptionTestData(ObjectsProvider::getInputOptions());
-    }
-
-    public function getDescribeInputDefinitionTestData()
-    {
-        return $this->getDescriptionTestData(ObjectsProvider::getInputDefinitions());
-    }
-
-    public function getDescribeCommandTestData()
-    {
-        return $this->getDescriptionTestData(ObjectsProvider::getCommands());
-    }
-
-    public function getDescribeApplicationTestData()
-    {
-        return $this->getDescriptionTestData(ObjectsProvider::getApplications());
-    }
-
-    abstract protected function getDescriptor();
-    abstract protected function getFormat();
-
-    private function getDescriptionTestData(array $objects)
-    {
-        $data = array();
-        foreach ($objects as $name => $object) {
-            $description = file_get_contents(sprintf('%s/../Fixtures/%s.%s', __DIR__, $name, $this->getFormat()));
-            $data[] = array($object, $description);
-        }
-
-        return $data;
-    }
-
-    protected function assertDescription($expectedDescription, $describedObject)
-    {
-        $output = new BufferedOutput(BufferedOutput::VERBOSITY_NORMAL, true);
-        $this->getDescriptor()->describe($output, $describedObject, array('raw_output' => true));
-        $this->assertEquals(trim($expectedDescription), trim(str_replace(PHP_EOL, "\n", $output->fetch())));
-    }
-}
diff --git a/vendor/symfony/console/Tests/Descriptor/JsonDescriptorTest.php b/vendor/symfony/console/Tests/Descriptor/JsonDescriptorTest.php
deleted file mode 100644
index f9a1561..0000000
--- a/vendor/symfony/console/Tests/Descriptor/JsonDescriptorTest.php
+++ /dev/null
@@ -1,35 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Console\Tests\Descriptor;
-
-use Symfony\Component\Console\Descriptor\JsonDescriptor;
-use Symfony\Component\Console\Output\BufferedOutput;
-
-class JsonDescriptorTest extends AbstractDescriptorTest
-{
-    protected function getDescriptor()
-    {
-        return new JsonDescriptor();
-    }
-
-    protected function getFormat()
-    {
-        return 'json';
-    }
-
-    protected function assertDescription($expectedDescription, $describedObject)
-    {
-        $output = new BufferedOutput(BufferedOutput::VERBOSITY_NORMAL, true);
-        $this->getDescriptor()->describe($output, $describedObject, array('raw_output' => true));
-        $this->assertEquals(json_decode(trim($expectedDescription), true), json_decode(trim(str_replace(PHP_EOL, "\n", $output->fetch())), true));
-    }
-}
diff --git a/vendor/symfony/console/Tests/Descriptor/MarkdownDescriptorTest.php b/vendor/symfony/console/Tests/Descriptor/MarkdownDescriptorTest.php
deleted file mode 100644
index c85e8a5..0000000
--- a/vendor/symfony/console/Tests/Descriptor/MarkdownDescriptorTest.php
+++ /dev/null
@@ -1,27 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Console\Tests\Descriptor;
-
-use Symfony\Component\Console\Descriptor\MarkdownDescriptor;
-
-class MarkdownDescriptorTest extends AbstractDescriptorTest
-{
-    protected function getDescriptor()
-    {
-        return new MarkdownDescriptor();
-    }
-
-    protected function getFormat()
-    {
-        return 'md';
-    }
-}
diff --git a/vendor/symfony/console/Tests/Descriptor/ObjectsProvider.php b/vendor/symfony/console/Tests/Descriptor/ObjectsProvider.php
deleted file mode 100644
index 45b3b2f..0000000
--- a/vendor/symfony/console/Tests/Descriptor/ObjectsProvider.php
+++ /dev/null
@@ -1,77 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Console\Tests\Descriptor;
-
-use Symfony\Component\Console\Input\InputArgument;
-use Symfony\Component\Console\Input\InputDefinition;
-use Symfony\Component\Console\Input\InputOption;
-use Symfony\Component\Console\Tests\Fixtures\DescriptorApplication1;
-use Symfony\Component\Console\Tests\Fixtures\DescriptorApplication2;
-use Symfony\Component\Console\Tests\Fixtures\DescriptorCommand1;
-use Symfony\Component\Console\Tests\Fixtures\DescriptorCommand2;
-
-/**
- * @author Jean-François Simon <contact@jfsimon.fr>
- */
-class ObjectsProvider
-{
-    public static function getInputArguments()
-    {
-        return array(
-            'input_argument_1' => new InputArgument('argument_name', InputArgument::REQUIRED),
-            'input_argument_2' => new InputArgument('argument_name', InputArgument::IS_ARRAY, 'argument description'),
-            'input_argument_3' => new InputArgument('argument_name', InputArgument::OPTIONAL, 'argument description', 'default_value'),
-            'input_argument_4' => new InputArgument('argument_name', InputArgument::REQUIRED, "multiline\nargument description"),
-        );
-    }
-
-    public static function getInputOptions()
-    {
-        return array(
-            'input_option_1' => new InputOption('option_name', 'o', InputOption::VALUE_NONE),
-            'input_option_2' => new InputOption('option_name', 'o', InputOption::VALUE_OPTIONAL, 'option description', 'default_value'),
-            'input_option_3' => new InputOption('option_name', 'o', InputOption::VALUE_REQUIRED, 'option description'),
-            'input_option_4' => new InputOption('option_name', 'o', InputOption::VALUE_IS_ARRAY | InputOption::VALUE_OPTIONAL, 'option description', array()),
-            'input_option_5' => new InputOption('option_name', 'o', InputOption::VALUE_REQUIRED, "multiline\noption description"),
-            'input_option_6' => new InputOption('option_name', array('o', 'O'), InputOption::VALUE_REQUIRED, 'option with multiple shortcuts'),
-        );
-    }
-
-    public static function getInputDefinitions()
-    {
-        return array(
-            'input_definition_1' => new InputDefinition(),
-            'input_definition_2' => new InputDefinition(array(new InputArgument('argument_name', InputArgument::REQUIRED))),
-            'input_definition_3' => new InputDefinition(array(new InputOption('option_name', 'o', InputOption::VALUE_NONE))),
-            'input_definition_4' => new InputDefinition(array(
-                new InputArgument('argument_name', InputArgument::REQUIRED),
-                new InputOption('option_name', 'o', InputOption::VALUE_NONE),
-            )),
-        );
-    }
-
-    public static function getCommands()
-    {
-        return array(
-            'command_1' => new DescriptorCommand1(),
-            'command_2' => new DescriptorCommand2(),
-        );
-    }
-
-    public static function getApplications()
-    {
-        return array(
-            'application_1' => new DescriptorApplication1(),
-            'application_2' => new DescriptorApplication2(),
-        );
-    }
-}
diff --git a/vendor/symfony/console/Tests/Descriptor/TextDescriptorTest.php b/vendor/symfony/console/Tests/Descriptor/TextDescriptorTest.php
deleted file mode 100644
index 350b679..0000000
--- a/vendor/symfony/console/Tests/Descriptor/TextDescriptorTest.php
+++ /dev/null
@@ -1,27 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Console\Tests\Descriptor;
-
-use Symfony\Component\Console\Descriptor\TextDescriptor;
-
-class TextDescriptorTest extends AbstractDescriptorTest
-{
-    protected function getDescriptor()
-    {
-        return new TextDescriptor();
-    }
-
-    protected function getFormat()
-    {
-        return 'txt';
-    }
-}
diff --git a/vendor/symfony/console/Tests/Descriptor/XmlDescriptorTest.php b/vendor/symfony/console/Tests/Descriptor/XmlDescriptorTest.php
deleted file mode 100644
index 59a5d1e..0000000
--- a/vendor/symfony/console/Tests/Descriptor/XmlDescriptorTest.php
+++ /dev/null
@@ -1,27 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Console\Tests\Descriptor;
-
-use Symfony\Component\Console\Descriptor\XmlDescriptor;
-
-class XmlDescriptorTest extends AbstractDescriptorTest
-{
-    protected function getDescriptor()
-    {
-        return new XmlDescriptor();
-    }
-
-    protected function getFormat()
-    {
-        return 'xml';
-    }
-}
diff --git a/vendor/symfony/console/Tests/Fixtures/BarBucCommand.php b/vendor/symfony/console/Tests/Fixtures/BarBucCommand.php
deleted file mode 100644
index 52b619e..0000000
--- a/vendor/symfony/console/Tests/Fixtures/BarBucCommand.php
+++ /dev/null
@@ -1,11 +0,0 @@
-<?php
-
-use Symfony\Component\Console\Command\Command;
-
-class BarBucCommand extends Command
-{
-    protected function configure()
-    {
-        $this->setName('bar:buc');
-    }
-}
diff --git a/vendor/symfony/console/Tests/Fixtures/DescriptorApplication1.php b/vendor/symfony/console/Tests/Fixtures/DescriptorApplication1.php
deleted file mode 100644
index 132b6d5..0000000
--- a/vendor/symfony/console/Tests/Fixtures/DescriptorApplication1.php
+++ /dev/null
@@ -1,18 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Console\Tests\Fixtures;
-
-use Symfony\Component\Console\Application;
-
-class DescriptorApplication1 extends Application
-{
-}
diff --git a/vendor/symfony/console/Tests/Fixtures/DescriptorApplication2.php b/vendor/symfony/console/Tests/Fixtures/DescriptorApplication2.php
deleted file mode 100644
index ff55135..0000000
--- a/vendor/symfony/console/Tests/Fixtures/DescriptorApplication2.php
+++ /dev/null
@@ -1,24 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Console\Tests\Fixtures;
-
-use Symfony\Component\Console\Application;
-
-class DescriptorApplication2 extends Application
-{
-    public function __construct()
-    {
-        parent::__construct('My Symfony application', 'v1.0');
-        $this->add(new DescriptorCommand1());
-        $this->add(new DescriptorCommand2());
-    }
-}
diff --git a/vendor/symfony/console/Tests/Fixtures/DescriptorCommand1.php b/vendor/symfony/console/Tests/Fixtures/DescriptorCommand1.php
deleted file mode 100644
index ede05d7..0000000
--- a/vendor/symfony/console/Tests/Fixtures/DescriptorCommand1.php
+++ /dev/null
@@ -1,27 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Console\Tests\Fixtures;
-
-use Symfony\Component\Console\Command\Command;
-
-class DescriptorCommand1 extends Command
-{
-    protected function configure()
-    {
-        $this
-            ->setName('descriptor:command1')
-            ->setAliases(array('alias1', 'alias2'))
-            ->setDescription('command 1 description')
-            ->setHelp('command 1 help')
-        ;
-    }
-}
diff --git a/vendor/symfony/console/Tests/Fixtures/DescriptorCommand2.php b/vendor/symfony/console/Tests/Fixtures/DescriptorCommand2.php
deleted file mode 100644
index 51106b9..0000000
--- a/vendor/symfony/console/Tests/Fixtures/DescriptorCommand2.php
+++ /dev/null
@@ -1,32 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Console\Tests\Fixtures;
-
-use Symfony\Component\Console\Command\Command;
-use Symfony\Component\Console\Input\InputArgument;
-use Symfony\Component\Console\Input\InputOption;
-
-class DescriptorCommand2 extends Command
-{
-    protected function configure()
-    {
-        $this
-            ->setName('descriptor:command2')
-            ->setDescription('command 2 description')
-            ->setHelp('command 2 help')
-            ->addUsage('-o|--option_name <argument_name>')
-            ->addUsage('<argument_name>')
-            ->addArgument('argument_name', InputArgument::REQUIRED)
-            ->addOption('option_name', 'o', InputOption::VALUE_NONE)
-        ;
-    }
-}
diff --git a/vendor/symfony/console/Tests/Fixtures/DummyOutput.php b/vendor/symfony/console/Tests/Fixtures/DummyOutput.php
deleted file mode 100644
index 0070c0a..0000000
--- a/vendor/symfony/console/Tests/Fixtures/DummyOutput.php
+++ /dev/null
@@ -1,36 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Console\Tests\Fixtures;
-
-use Symfony\Component\Console\Output\BufferedOutput;
-
-/**
- * Dummy output.
- *
- * @author Kévin Dunglas <dunglas@gmail.com>
- */
-class DummyOutput extends BufferedOutput
-{
-    /**
-     * @return array
-     */
-    public function getLogs()
-    {
-        $logs = array();
-        foreach (explode("\n", trim($this->fetch())) as $message) {
-            preg_match('/^\[(.*)\] (.*)/', $message, $matches);
-            $logs[] = sprintf('%s %s', $matches[1], $matches[2]);
-        }
-
-        return $logs;
-    }
-}
diff --git a/vendor/symfony/console/Tests/Fixtures/Foo1Command.php b/vendor/symfony/console/Tests/Fixtures/Foo1Command.php
deleted file mode 100644
index 254162f..0000000
--- a/vendor/symfony/console/Tests/Fixtures/Foo1Command.php
+++ /dev/null
@@ -1,26 +0,0 @@
-<?php
-
-use Symfony\Component\Console\Command\Command;
-use Symfony\Component\Console\Input\InputInterface;
-use Symfony\Component\Console\Output\OutputInterface;
-
-class Foo1Command extends Command
-{
-    public $input;
-    public $output;
-
-    protected function configure()
-    {
-        $this
-            ->setName('foo:bar1')
-            ->setDescription('The foo:bar1 command')
-            ->setAliases(array('afoobar1'))
-        ;
-    }
-
-    protected function execute(InputInterface $input, OutputInterface $output)
-    {
-        $this->input = $input;
-        $this->output = $output;
-    }
-}
diff --git a/vendor/symfony/console/Tests/Fixtures/Foo2Command.php b/vendor/symfony/console/Tests/Fixtures/Foo2Command.php
deleted file mode 100644
index 8071dc8..0000000
--- a/vendor/symfony/console/Tests/Fixtures/Foo2Command.php
+++ /dev/null
@@ -1,21 +0,0 @@
-<?php
-
-use Symfony\Component\Console\Command\Command;
-use Symfony\Component\Console\Input\InputInterface;
-use Symfony\Component\Console\Output\OutputInterface;
-
-class Foo2Command extends Command
-{
-    protected function configure()
-    {
-        $this
-            ->setName('foo1:bar')
-            ->setDescription('The foo1:bar command')
-            ->setAliases(array('afoobar2'))
-        ;
-    }
-
-    protected function execute(InputInterface $input, OutputInterface $output)
-    {
-    }
-}
diff --git a/vendor/symfony/console/Tests/Fixtures/Foo3Command.php b/vendor/symfony/console/Tests/Fixtures/Foo3Command.php
deleted file mode 100644
index 6c890fa..0000000
--- a/vendor/symfony/console/Tests/Fixtures/Foo3Command.php
+++ /dev/null
@@ -1,29 +0,0 @@
-<?php
-
-use Symfony\Component\Console\Command\Command;
-use Symfony\Component\Console\Input\InputInterface;
-use Symfony\Component\Console\Output\OutputInterface;
-
-class Foo3Command extends Command
-{
-    protected function configure()
-    {
-        $this
-            ->setName('foo3:bar')
-            ->setDescription('The foo3:bar command')
-        ;
-    }
-
-    protected function execute(InputInterface $input, OutputInterface $output)
-    {
-        try {
-            try {
-                throw new \Exception('First exception <p>this is html</p>');
-            } catch (\Exception $e) {
-                throw new \Exception('Second exception <comment>comment</comment>', 0, $e);
-            }
-        } catch (\Exception $e) {
-            throw new \Exception('Third exception <fg=blue;bg=red>comment</>', 0, $e);
-        }
-    }
-}
diff --git a/vendor/symfony/console/Tests/Fixtures/Foo4Command.php b/vendor/symfony/console/Tests/Fixtures/Foo4Command.php
deleted file mode 100644
index 1c54639..0000000
--- a/vendor/symfony/console/Tests/Fixtures/Foo4Command.php
+++ /dev/null
@@ -1,11 +0,0 @@
-<?php
-
-use Symfony\Component\Console\Command\Command;
-
-class Foo4Command extends Command
-{
-    protected function configure()
-    {
-        $this->setName('foo3:bar:toh');
-    }
-}
diff --git a/vendor/symfony/console/Tests/Fixtures/Foo5Command.php b/vendor/symfony/console/Tests/Fixtures/Foo5Command.php
deleted file mode 100644
index a1c6082..0000000
--- a/vendor/symfony/console/Tests/Fixtures/Foo5Command.php
+++ /dev/null
@@ -1,10 +0,0 @@
-<?php
-
-use Symfony\Component\Console\Command\Command;
-
-class Foo5Command extends Command
-{
-    public function __construct()
-    {
-    }
-}
diff --git a/vendor/symfony/console/Tests/Fixtures/FooCommand.php b/vendor/symfony/console/Tests/Fixtures/FooCommand.php
deleted file mode 100644
index 355e0ad..0000000
--- a/vendor/symfony/console/Tests/Fixtures/FooCommand.php
+++ /dev/null
@@ -1,33 +0,0 @@
-<?php
-
-use Symfony\Component\Console\Command\Command;
-use Symfony\Component\Console\Input\InputInterface;
-use Symfony\Component\Console\Output\OutputInterface;
-
-class FooCommand extends Command
-{
-    public $input;
-    public $output;
-
-    protected function configure()
-    {
-        $this
-            ->setName('foo:bar')
-            ->setDescription('The foo:bar command')
-            ->setAliases(array('afoobar'))
-        ;
-    }
-
-    protected function interact(InputInterface $input, OutputInterface $output)
-    {
-        $output->writeln('interact called');
-    }
-
-    protected function execute(InputInterface $input, OutputInterface $output)
-    {
-        $this->input = $input;
-        $this->output = $output;
-
-        $output->writeln('called');
-    }
-}
diff --git a/vendor/symfony/console/Tests/Fixtures/FooSubnamespaced1Command.php b/vendor/symfony/console/Tests/Fixtures/FooSubnamespaced1Command.php
deleted file mode 100644
index fc50c72..0000000
--- a/vendor/symfony/console/Tests/Fixtures/FooSubnamespaced1Command.php
+++ /dev/null
@@ -1,26 +0,0 @@
-<?php
-
-use Symfony\Component\Console\Command\Command;
-use Symfony\Component\Console\Input\InputInterface;
-use Symfony\Component\Console\Output\OutputInterface;
-
-class FooSubnamespaced1Command extends Command
-{
-    public $input;
-    public $output;
-
-    protected function configure()
-    {
-        $this
-            ->setName('foo:bar:baz')
-            ->setDescription('The foo:bar:baz command')
-            ->setAliases(array('foobarbaz'))
-        ;
-    }
-
-    protected function execute(InputInterface $input, OutputInterface $output)
-    {
-        $this->input = $input;
-        $this->output = $output;
-    }
-}
diff --git a/vendor/symfony/console/Tests/Fixtures/FooSubnamespaced2Command.php b/vendor/symfony/console/Tests/Fixtures/FooSubnamespaced2Command.php
deleted file mode 100644
index 1cf31ff..0000000
--- a/vendor/symfony/console/Tests/Fixtures/FooSubnamespaced2Command.php
+++ /dev/null
@@ -1,26 +0,0 @@
-<?php
-
-use Symfony\Component\Console\Command\Command;
-use Symfony\Component\Console\Input\InputInterface;
-use Symfony\Component\Console\Output\OutputInterface;
-
-class FooSubnamespaced2Command extends Command
-{
-    public $input;
-    public $output;
-
-    protected function configure()
-    {
-        $this
-            ->setName('foo:go:bret')
-            ->setDescription('The foo:bar:go command')
-            ->setAliases(array('foobargo'))
-        ;
-    }
-
-    protected function execute(InputInterface $input, OutputInterface $output)
-    {
-        $this->input = $input;
-        $this->output = $output;
-    }
-}
diff --git a/vendor/symfony/console/Tests/Fixtures/FoobarCommand.php b/vendor/symfony/console/Tests/Fixtures/FoobarCommand.php
deleted file mode 100644
index 9681628..0000000
--- a/vendor/symfony/console/Tests/Fixtures/FoobarCommand.php
+++ /dev/null
@@ -1,25 +0,0 @@
-<?php
-
-use Symfony\Component\Console\Command\Command;
-use Symfony\Component\Console\Input\InputInterface;
-use Symfony\Component\Console\Output\OutputInterface;
-
-class FoobarCommand extends Command
-{
-    public $input;
-    public $output;
-
-    protected function configure()
-    {
-        $this
-            ->setName('foobar:foo')
-            ->setDescription('The foobar:foo command')
-        ;
-    }
-
-    protected function execute(InputInterface $input, OutputInterface $output)
-    {
-        $this->input = $input;
-        $this->output = $output;
-    }
-}
diff --git a/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/command/command_0.php b/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/command/command_0.php
deleted file mode 100644
index 8fe7c07..0000000
--- a/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/command/command_0.php
+++ /dev/null
@@ -1,11 +0,0 @@
-<?php
-
-use Symfony\Component\Console\Input\InputInterface;
-use Symfony\Component\Console\Output\OutputInterface;
-use Symfony\Component\Console\Style\SymfonyStyle;
-
-//Ensure has single blank line at start when using block element
-return function (InputInterface $input, OutputInterface $output) {
-    $output = new SymfonyStyle($input, $output);
-    $output->caution('Lorem ipsum dolor sit amet');
-};
diff --git a/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/command/command_1.php b/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/command/command_1.php
deleted file mode 100644
index e5c700d..0000000
--- a/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/command/command_1.php
+++ /dev/null
@@ -1,13 +0,0 @@
-<?php
-
-use Symfony\Component\Console\Input\InputInterface;
-use Symfony\Component\Console\Output\OutputInterface;
-use Symfony\Component\Console\Style\SymfonyStyle;
-
-//Ensure has single blank line between titles and blocks
-return function (InputInterface $input, OutputInterface $output) {
-    $output = new SymfonyStyle($input, $output);
-    $output->title('Title');
-    $output->warning('Lorem ipsum dolor sit amet');
-    $output->title('Title');
-};
diff --git a/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/command/command_2.php b/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/command/command_2.php
deleted file mode 100644
index 791b626..0000000
--- a/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/command/command_2.php
+++ /dev/null
@@ -1,16 +0,0 @@
-<?php
-
-use Symfony\Component\Console\Input\InputInterface;
-use Symfony\Component\Console\Output\OutputInterface;
-use Symfony\Component\Console\Style\SymfonyStyle;
-
-//Ensure has single blank line between blocks
-return function (InputInterface $input, OutputInterface $output) {
-    $output = new SymfonyStyle($input, $output);
-    $output->warning('Warning');
-    $output->caution('Caution');
-    $output->error('Error');
-    $output->success('Success');
-    $output->note('Note');
-    $output->block('Custom block', 'CUSTOM', 'fg=white;bg=green', 'X ', true);
-};
diff --git a/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/command/command_3.php b/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/command/command_3.php
deleted file mode 100644
index 99253a6..0000000
--- a/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/command/command_3.php
+++ /dev/null
@@ -1,12 +0,0 @@
-<?php
-
-use Symfony\Component\Console\Input\InputInterface;
-use Symfony\Component\Console\Output\OutputInterface;
-use Symfony\Component\Console\Style\SymfonyStyle;
-
-//Ensure has single blank line between two titles
-return function (InputInterface $input, OutputInterface $output) {
-    $output = new SymfonyStyle($input, $output);
-    $output->title('First title');
-    $output->title('Second title');
-};
diff --git a/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/command/command_4.php b/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/command/command_4.php
deleted file mode 100644
index 0c5d3fb..0000000
--- a/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/command/command_4.php
+++ /dev/null
@@ -1,34 +0,0 @@
-<?php
-
-use Symfony\Component\Console\Input\InputInterface;
-use Symfony\Component\Console\Output\OutputInterface;
-use Symfony\Component\Console\Style\SymfonyStyle;
-
-//Ensure has single blank line after any text and a title
-return function (InputInterface $input, OutputInterface $output) {
-    $output = new SymfonyStyle($input, $output);
-
-    $output->write('Lorem ipsum dolor sit amet');
-    $output->title('First title');
-
-    $output->writeln('Lorem ipsum dolor sit amet');
-    $output->title('Second title');
-
-    $output->write('Lorem ipsum dolor sit amet');
-    $output->write('');
-    $output->title('Third title');
-
-    //Ensure edge case by appending empty strings to history:
-    $output->write('Lorem ipsum dolor sit amet');
-    $output->write(array('', '', ''));
-    $output->title('Fourth title');
-
-    //Ensure have manual control over number of blank lines:
-    $output->writeln('Lorem ipsum dolor sit amet');
-    $output->writeln(array('', '')); //Should append an extra blank line
-    $output->title('Fifth title');
-
-    $output->writeln('Lorem ipsum dolor sit amet');
-    $output->newLine(2); //Should append an extra blank line
-    $output->title('Fifth title');
-};
diff --git a/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/command/command_5.php b/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/command/command_5.php
deleted file mode 100644
index 4543ad8..0000000
--- a/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/command/command_5.php
+++ /dev/null
@@ -1,29 +0,0 @@
-<?php
-
-use Symfony\Component\Console\Input\InputInterface;
-use Symfony\Component\Console\Output\OutputInterface;
-use Symfony\Component\Console\Style\SymfonyStyle;
-
-//Ensure has proper line ending before outputing a text block like with SymfonyStyle::listing() or SymfonyStyle::text()
-return function (InputInterface $input, OutputInterface $output) {
-    $output = new SymfonyStyle($input, $output);
-
-    $output->writeln('Lorem ipsum dolor sit amet');
-    $output->listing(array(
-        'Lorem ipsum dolor sit amet',
-        'consectetur adipiscing elit',
-    ));
-
-    //Even using write:
-    $output->write('Lorem ipsum dolor sit amet');
-    $output->listing(array(
-        'Lorem ipsum dolor sit amet',
-        'consectetur adipiscing elit',
-    ));
-
-    $output->write('Lorem ipsum dolor sit amet');
-    $output->text(array(
-        'Lorem ipsum dolor sit amet',
-        'consectetur adipiscing elit',
-    ));
-};
diff --git a/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/command/command_6.php b/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/command/command_6.php
deleted file mode 100644
index 8031ec9..0000000
--- a/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/command/command_6.php
+++ /dev/null
@@ -1,16 +0,0 @@
-<?php
-
-use Symfony\Component\Console\Input\InputInterface;
-use Symfony\Component\Console\Output\OutputInterface;
-use Symfony\Component\Console\Style\SymfonyStyle;
-
-//Ensure has proper blank line after text block when using a block like with SymfonyStyle::success
-return function (InputInterface $input, OutputInterface $output) {
-    $output = new SymfonyStyle($input, $output);
-
-    $output->listing(array(
-        'Lorem ipsum dolor sit amet',
-        'consectetur adipiscing elit',
-    ));
-    $output->success('Lorem ipsum dolor sit amet');
-};
diff --git a/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/command/command_7.php b/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/command/command_7.php
deleted file mode 100644
index 203eb5b..0000000
--- a/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/command/command_7.php
+++ /dev/null
@@ -1,15 +0,0 @@
-<?php
-
-use Symfony\Component\Console\Input\InputInterface;
-use Symfony\Component\Console\Output\OutputInterface;
-use Symfony\Component\Console\Style\SymfonyStyle;
-
-//Ensure questions do not output anything when input is non-interactive
-return function (InputInterface $input, OutputInterface $output) {
-    $output = new SymfonyStyle($input, $output);
-    $output->title('Title');
-    $output->askHidden('Hidden question');
-    $output->choice('Choice question with default', array('choice1', 'choice2'), 'choice1');
-    $output->confirm('Confirmation with yes default', true);
-    $output->text('Duis aute irure dolor in reprehenderit in voluptate velit esse');
-};
diff --git a/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/output/output_0.txt b/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/output/output_0.txt
deleted file mode 100644
index a42e0f7..0000000
--- a/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/output/output_0.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-
- ! [CAUTION] Lorem ipsum dolor sit amet                                                                                 
-
diff --git a/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/output/output_1.txt b/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/output/output_1.txt
deleted file mode 100644
index 334875f..0000000
--- a/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/output/output_1.txt
+++ /dev/null
@@ -1,9 +0,0 @@
-
-Title
-=====
-
- [WARNING] Lorem ipsum dolor sit amet                                                                                   
-
-Title
-=====
-
diff --git a/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/output/output_2.txt b/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/output/output_2.txt
deleted file mode 100644
index ca60976..0000000
--- a/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/output/output_2.txt
+++ /dev/null
@@ -1,13 +0,0 @@
-
- [WARNING] Warning                                                                                                      
-
- ! [CAUTION] Caution                                                                                                    
-
- [ERROR] Error                                                                                                          
-
- [OK] Success                                                                                                           
-
- ! [NOTE] Note                                                                                                          
-
-X [CUSTOM] Custom block                                                                                                 
-
diff --git a/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/output/output_3.txt b/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/output/output_3.txt
deleted file mode 100644
index f4b6d58..0000000
--- a/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/output/output_3.txt
+++ /dev/null
@@ -1,7 +0,0 @@
-
-First title
-===========
-
-Second title
-============
-
diff --git a/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/output/output_4.txt b/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/output/output_4.txt
deleted file mode 100644
index 2646d85..0000000
--- a/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/output/output_4.txt
+++ /dev/null
@@ -1,32 +0,0 @@
-Lorem ipsum dolor sit amet
-
-First title
-===========
-
-Lorem ipsum dolor sit amet
-
-Second title
-============
-
-Lorem ipsum dolor sit amet
-
-Third title
-===========
-
-Lorem ipsum dolor sit amet
-
-Fourth title
-============
-
-Lorem ipsum dolor sit amet
-
-
-Fifth title
-===========
-
-Lorem ipsum dolor sit amet
-
-
-Fifth title
-===========
-
diff --git a/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/output/output_5.txt b/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/output/output_5.txt
deleted file mode 100644
index 910240f..0000000
--- a/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/output/output_5.txt
+++ /dev/null
@@ -1,11 +0,0 @@
-Lorem ipsum dolor sit amet
- * Lorem ipsum dolor sit amet
- * consectetur adipiscing elit
-
-Lorem ipsum dolor sit amet
- * Lorem ipsum dolor sit amet
- * consectetur adipiscing elit
-
-Lorem ipsum dolor sit amet
- // Lorem ipsum dolor sit amet
- // consectetur adipiscing elit
diff --git a/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/output/output_6.txt b/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/output/output_6.txt
deleted file mode 100644
index 5f2d33c..0000000
--- a/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/output/output_6.txt
+++ /dev/null
@@ -1,6 +0,0 @@
-
- * Lorem ipsum dolor sit amet
- * consectetur adipiscing elit
-
- [OK] Lorem ipsum dolor sit amet                                                                                        
-
diff --git a/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/output/output_7.txt b/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/output/output_7.txt
deleted file mode 100644
index ab18e5d..0000000
--- a/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/output/output_7.txt
+++ /dev/null
@@ -1,5 +0,0 @@
-
-Title
-=====
-
- // Duis aute irure dolor in reprehenderit in voluptate velit esse
diff --git a/vendor/symfony/console/Tests/Fixtures/TestCommand.php b/vendor/symfony/console/Tests/Fixtures/TestCommand.php
deleted file mode 100644
index dcd3273..0000000
--- a/vendor/symfony/console/Tests/Fixtures/TestCommand.php
+++ /dev/null
@@ -1,28 +0,0 @@
-<?php
-
-use Symfony\Component\Console\Command\Command;
-use Symfony\Component\Console\Input\InputInterface;
-use Symfony\Component\Console\Output\OutputInterface;
-
-class TestCommand extends Command
-{
-    protected function configure()
-    {
-        $this
-            ->setName('namespace:name')
-            ->setAliases(array('name'))
-            ->setDescription('description')
-            ->setHelp('help')
-        ;
-    }
-
-    protected function execute(InputInterface $input, OutputInterface $output)
-    {
-        $output->writeln('execute called');
-    }
-
-    protected function interact(InputInterface $input, OutputInterface $output)
-    {
-        $output->writeln('interact called');
-    }
-}
diff --git a/vendor/symfony/console/Tests/Fixtures/application_1.json b/vendor/symfony/console/Tests/Fixtures/application_1.json
deleted file mode 100644
index b17b38d..0000000
--- a/vendor/symfony/console/Tests/Fixtures/application_1.json
+++ /dev/null
@@ -1 +0,0 @@
-{"commands":[{"name":"help","usage":["help [--xml] [--format FORMAT] [--raw] [--] [<command_name>]"],"description":"Displays help for a command","help":"The <info>help<\/info> command displays help for a given command:\n\n  <info>php app\/console help list<\/info>\n\nYou can also output the help in other formats by using the <comment>--format<\/comment> option:\n\n  <info>php app\/console help --format=xml list<\/info>\n\nTo display the list of available commands, please use the <info>list<\/info> command.","definition":{"arguments":{"command_name":{"name":"command_name","is_required":false,"is_array":false,"description":"The command name","default":"help"}},"options":{"xml":{"name":"--xml","shortcut":"","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"To output help as XML","default":false},"format":{"name":"--format","shortcut":"","accept_value":true,"is_value_required":true,"is_multiple":false,"description":"The output format (txt, xml, json, or md)","default":"txt"},"raw":{"name":"--raw","shortcut":"","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"To output raw command help","default":false},"help":{"name":"--help","shortcut":"-h","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"Display this help message","default":false},"quiet":{"name":"--quiet","shortcut":"-q","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"Do not output any message","default":false},"verbose":{"name":"--verbose","shortcut":"-v|-vv|-vvv","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug","default":false},"version":{"name":"--version","shortcut":"-V","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"Display this application version","default":false},"ansi":{"name":"--ansi","shortcut":"","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"Force ANSI output","default":false},"no-ansi":{"name":"--no-ansi","shortcut":"","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"Disable ANSI output","default":false},"no-interaction":{"name":"--no-interaction","shortcut":"-n","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"Do not ask any interactive question","default":false}}}},{"name":"list","usage":["list [--xml] [--raw] [--format FORMAT] [--] [<namespace>]"],"description":"Lists commands","help":"The <info>list<\/info> command lists all commands:\n\n  <info>php app\/console list<\/info>\n\nYou can also display the commands for a specific namespace:\n\n  <info>php app\/console list test<\/info>\n\nYou can also output the information in other formats by using the <comment>--format<\/comment> option:\n\n  <info>php app\/console list --format=xml<\/info>\n\nIt's also possible to get raw list of commands (useful for embedding command runner):\n\n  <info>php app\/console list --raw<\/info>","definition":{"arguments":{"namespace":{"name":"namespace","is_required":false,"is_array":false,"description":"The namespace name","default":null}},"options":{"xml":{"name":"--xml","shortcut":"","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"To output list as XML","default":false},"raw":{"name":"--raw","shortcut":"","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"To output raw command list","default":false},"format":{"name":"--format","shortcut":"","accept_value":true,"is_value_required":true,"is_multiple":false,"description":"The output format (txt, xml, json, or md)","default":"txt"}}}}],"namespaces":[{"id":"_global","commands":["help","list"]}]}
diff --git a/vendor/symfony/console/Tests/Fixtures/application_1.md b/vendor/symfony/console/Tests/Fixtures/application_1.md
deleted file mode 100644
index 82a605d..0000000
--- a/vendor/symfony/console/Tests/Fixtures/application_1.md
+++ /dev/null
@@ -1,201 +0,0 @@
-UNKNOWN
-=======
-
-* help
-* list
-
-help
-----
-
-* Description: Displays help for a command
-* Usage:
-
-  * `help [--xml] [--format FORMAT] [--raw] [--] [<command_name>]`
-
-The <info>help</info> command displays help for a given command:
-
-  <info>php app/console help list</info>
-
-You can also output the help in other formats by using the <comment>--format</comment> option:
-
-  <info>php app/console help --format=xml list</info>
-
-To display the list of available commands, please use the <info>list</info> command.
-
-### Arguments:
-
-**command_name:**
-
-* Name: command_name
-* Is required: no
-* Is array: no
-* Description: The command name
-* Default: `'help'`
-
-### Options:
-
-**xml:**
-
-* Name: `--xml`
-* Shortcut: <none>
-* Accept value: no
-* Is value required: no
-* Is multiple: no
-* Description: To output help as XML
-* Default: `false`
-
-**format:**
-
-* Name: `--format`
-* Shortcut: <none>
-* Accept value: yes
-* Is value required: yes
-* Is multiple: no
-* Description: The output format (txt, xml, json, or md)
-* Default: `'txt'`
-
-**raw:**
-
-* Name: `--raw`
-* Shortcut: <none>
-* Accept value: no
-* Is value required: no
-* Is multiple: no
-* Description: To output raw command help
-* Default: `false`
-
-**help:**
-
-* Name: `--help`
-* Shortcut: `-h`
-* Accept value: no
-* Is value required: no
-* Is multiple: no
-* Description: Display this help message
-* Default: `false`
-
-**quiet:**
-
-* Name: `--quiet`
-* Shortcut: `-q`
-* Accept value: no
-* Is value required: no
-* Is multiple: no
-* Description: Do not output any message
-* Default: `false`
-
-**verbose:**
-
-* Name: `--verbose`
-* Shortcut: `-v|-vv|-vvv`
-* Accept value: no
-* Is value required: no
-* Is multiple: no
-* Description: Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug
-* Default: `false`
-
-**version:**
-
-* Name: `--version`
-* Shortcut: `-V`
-* Accept value: no
-* Is value required: no
-* Is multiple: no
-* Description: Display this application version
-* Default: `false`
-
-**ansi:**
-
-* Name: `--ansi`
-* Shortcut: <none>
-* Accept value: no
-* Is value required: no
-* Is multiple: no
-* Description: Force ANSI output
-* Default: `false`
-
-**no-ansi:**
-
-* Name: `--no-ansi`
-* Shortcut: <none>
-* Accept value: no
-* Is value required: no
-* Is multiple: no
-* Description: Disable ANSI output
-* Default: `false`
-
-**no-interaction:**
-
-* Name: `--no-interaction`
-* Shortcut: `-n`
-* Accept value: no
-* Is value required: no
-* Is multiple: no
-* Description: Do not ask any interactive question
-* Default: `false`
-
-list
-----
-
-* Description: Lists commands
-* Usage:
-
-  * `list [--xml] [--raw] [--format FORMAT] [--] [<namespace>]`
-
-The <info>list</info> command lists all commands:
-
-  <info>php app/console list</info>
-
-You can also display the commands for a specific namespace:
-
-  <info>php app/console list test</info>
-
-You can also output the information in other formats by using the <comment>--format</comment> option:
-
-  <info>php app/console list --format=xml</info>
-
-It's also possible to get raw list of commands (useful for embedding command runner):
-
-  <info>php app/console list --raw</info>
-
-### Arguments:
-
-**namespace:**
-
-* Name: namespace
-* Is required: no
-* Is array: no
-* Description: The namespace name
-* Default: `NULL`
-
-### Options:
-
-**xml:**
-
-* Name: `--xml`
-* Shortcut: <none>
-* Accept value: no
-* Is value required: no
-* Is multiple: no
-* Description: To output list as XML
-* Default: `false`
-
-**raw:**
-
-* Name: `--raw`
-* Shortcut: <none>
-* Accept value: no
-* Is value required: no
-* Is multiple: no
-* Description: To output raw command list
-* Default: `false`
-
-**format:**
-
-* Name: `--format`
-* Shortcut: <none>
-* Accept value: yes
-* Is value required: yes
-* Is multiple: no
-* Description: The output format (txt, xml, json, or md)
-* Default: `'txt'`
diff --git a/vendor/symfony/console/Tests/Fixtures/application_1.txt b/vendor/symfony/console/Tests/Fixtures/application_1.txt
deleted file mode 100644
index c4cf8f2..0000000
--- a/vendor/symfony/console/Tests/Fixtures/application_1.txt
+++ /dev/null
@@ -1,17 +0,0 @@
-<info>Console Tool</info>
-
-<comment>Usage:</comment>
-  command [options] [arguments]
-
-<comment>Options:</comment>
-  <info>-h, --help</info>            Display this help message
-  <info>-q, --quiet</info>           Do not output any message
-  <info>-V, --version</info>         Display this application version
-  <info>    --ansi</info>            Force ANSI output
-  <info>    --no-ansi</info>         Disable ANSI output
-  <info>-n, --no-interaction</info>  Do not ask any interactive question
-  <info>-v|vv|vvv, --verbose</info>  Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug
-
-<comment>Available commands:</comment>
-  <info>help</info>  Displays help for a command
-  <info>list</info>  Lists commands
diff --git a/vendor/symfony/console/Tests/Fixtures/application_1.xml b/vendor/symfony/console/Tests/Fixtures/application_1.xml
deleted file mode 100644
index 35d1db4..0000000
--- a/vendor/symfony/console/Tests/Fixtures/application_1.xml
+++ /dev/null
@@ -1,110 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<symfony>
-  <commands>
-    <command id="help" name="help">
-      <usages>
-        <usage>help [--xml] [--format FORMAT] [--raw] [--] [&lt;command_name&gt;]</usage>
-      </usages>
-      <description>Displays help for a command</description>
-      <help>The &lt;info&gt;help&lt;/info&gt; command displays help for a given command:
- 
-   &lt;info&gt;php app/console help list&lt;/info&gt;
- 
- You can also output the help in other formats by using the &lt;comment&gt;--format&lt;/comment&gt; option:
- 
-   &lt;info&gt;php app/console help --format=xml list&lt;/info&gt;
- 
- To display the list of available commands, please use the &lt;info&gt;list&lt;/info&gt; command.</help>
-      <arguments>
-        <argument name="command_name" is_required="0" is_array="0">
-          <description>The command name</description>
-          <defaults>
-            <default>help</default>
-          </defaults>
-        </argument>
-      </arguments>
-      <options>
-        <option name="--xml" shortcut="" accept_value="0" is_value_required="0" is_multiple="0">
-          <description>To output help as XML</description>
-        </option>
-        <option name="--format" shortcut="" accept_value="1" is_value_required="1" is_multiple="0">
-          <description>The output format (txt, xml, json, or md)</description>
-          <defaults>
-            <default>txt</default>
-          </defaults>
-        </option>
-        <option name="--raw" shortcut="" accept_value="0" is_value_required="0" is_multiple="0">
-          <description>To output raw command help</description>
-        </option>
-        <option name="--help" shortcut="-h" accept_value="0" is_value_required="0" is_multiple="0">
-          <description>Display this help message</description>
-        </option>
-        <option name="--quiet" shortcut="-q" accept_value="0" is_value_required="0" is_multiple="0">
-          <description>Do not output any message</description>
-        </option>
-        <option name="--verbose" shortcut="-v" shortcuts="-v|-vv|-vvv" accept_value="0" is_value_required="0" is_multiple="0">
-          <description>Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug</description>
-        </option>
-        <option name="--version" shortcut="-V" accept_value="0" is_value_required="0" is_multiple="0">
-          <description>Display this application version</description>
-        </option>
-        <option name="--ansi" shortcut="" accept_value="0" is_value_required="0" is_multiple="0">
-          <description>Force ANSI output</description>
-        </option>
-        <option name="--no-ansi" shortcut="" accept_value="0" is_value_required="0" is_multiple="0">
-          <description>Disable ANSI output</description>
-        </option>
-        <option name="--no-interaction" shortcut="-n" accept_value="0" is_value_required="0" is_multiple="0">
-          <description>Do not ask any interactive question</description>
-        </option>
-      </options>
-    </command>
-    <command id="list" name="list">
-      <usages>
-        <usage>list [--xml] [--raw] [--format FORMAT] [--] [&lt;namespace&gt;]</usage>
-      </usages>
-      <description>Lists commands</description>
-      <help>The &lt;info&gt;list&lt;/info&gt; command lists all commands:
- 
-   &lt;info&gt;php app/console list&lt;/info&gt;
- 
- You can also display the commands for a specific namespace:
- 
-   &lt;info&gt;php app/console list test&lt;/info&gt;
- 
- You can also output the information in other formats by using the &lt;comment&gt;--format&lt;/comment&gt; option:
- 
-   &lt;info&gt;php app/console list --format=xml&lt;/info&gt;
- 
- It's also possible to get raw list of commands (useful for embedding command runner):
- 
-   &lt;info&gt;php app/console list --raw&lt;/info&gt;</help>
-      <arguments>
-        <argument name="namespace" is_required="0" is_array="0">
-          <description>The namespace name</description>
-          <defaults/>
-        </argument>
-      </arguments>
-      <options>
-        <option name="--xml" shortcut="" accept_value="0" is_value_required="0" is_multiple="0">
-          <description>To output list as XML</description>
-        </option>
-        <option name="--raw" shortcut="" accept_value="0" is_value_required="0" is_multiple="0">
-          <description>To output raw command list</description>
-        </option>
-        <option name="--format" shortcut="" accept_value="1" is_value_required="1" is_multiple="0">
-          <description>The output format (txt, xml, json, or md)</description>
-          <defaults>
-            <default>txt</default>
-          </defaults>
-        </option>
-      </options>
-    </command>
-  </commands>
-  <namespaces>
-    <namespace id="_global">
-      <command>help</command>
-      <command>list</command>
-    </namespace>
-  </namespaces>
-</symfony>
diff --git a/vendor/symfony/console/Tests/Fixtures/application_2.json b/vendor/symfony/console/Tests/Fixtures/application_2.json
deleted file mode 100644
index e47a7a9..0000000
--- a/vendor/symfony/console/Tests/Fixtures/application_2.json
+++ /dev/null
@@ -1 +0,0 @@
-{"commands":[{"name":"help","usage":["help [--xml] [--format FORMAT] [--raw] [--] [<command_name>]"],"description":"Displays help for a command","help":"The <info>help<\/info> command displays help for a given command:\n\n  <info>php app\/console help list<\/info>\n\nYou can also output the help in other formats by using the <comment>--format<\/comment> option:\n\n  <info>php app\/console help --format=xml list<\/info>\n\nTo display the list of available commands, please use the <info>list<\/info> command.","definition":{"arguments":{"command_name":{"name":"command_name","is_required":false,"is_array":false,"description":"The command name","default":"help"}},"options":{"xml":{"name":"--xml","shortcut":"","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"To output help as XML","default":false},"format":{"name":"--format","shortcut":"","accept_value":true,"is_value_required":true,"is_multiple":false,"description":"The output format (txt, xml, json, or md)","default":"txt"},"raw":{"name":"--raw","shortcut":"","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"To output raw command help","default":false},"help":{"name":"--help","shortcut":"-h","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"Display this help message","default":false},"quiet":{"name":"--quiet","shortcut":"-q","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"Do not output any message","default":false},"verbose":{"name":"--verbose","shortcut":"-v|-vv|-vvv","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug","default":false},"version":{"name":"--version","shortcut":"-V","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"Display this application version","default":false},"ansi":{"name":"--ansi","shortcut":"","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"Force ANSI output","default":false},"no-ansi":{"name":"--no-ansi","shortcut":"","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"Disable ANSI output","default":false},"no-interaction":{"name":"--no-interaction","shortcut":"-n","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"Do not ask any interactive question","default":false}}}},{"name":"list","usage":["list [--xml] [--raw] [--format FORMAT] [--] [<namespace>]"],"description":"Lists commands","help":"The <info>list<\/info> command lists all commands:\n\n  <info>php app\/console list<\/info>\n\nYou can also display the commands for a specific namespace:\n\n  <info>php app\/console list test<\/info>\n\nYou can also output the information in other formats by using the <comment>--format<\/comment> option:\n\n  <info>php app\/console list --format=xml<\/info>\n\nIt's also possible to get raw list of commands (useful for embedding command runner):\n\n  <info>php app\/console list --raw<\/info>","definition":{"arguments":{"namespace":{"name":"namespace","is_required":false,"is_array":false,"description":"The namespace name","default":null}},"options":{"xml":{"name":"--xml","shortcut":"","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"To output list as XML","default":false},"raw":{"name":"--raw","shortcut":"","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"To output raw command list","default":false},"format":{"name":"--format","shortcut":"","accept_value":true,"is_value_required":true,"is_multiple":false,"description":"The output format (txt, xml, json, or md)","default":"txt"}}}},{"name":"descriptor:command1","usage":["descriptor:command1", "alias1", "alias2"],"description":"command 1 description","help":"command 1 help","definition":{"arguments":[],"options":{"help":{"name":"--help","shortcut":"-h","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"Display this help message","default":false},"quiet":{"name":"--quiet","shortcut":"-q","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"Do not output any message","default":false},"verbose":{"name":"--verbose","shortcut":"-v|-vv|-vvv","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug","default":false},"version":{"name":"--version","shortcut":"-V","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"Display this application version","default":false},"ansi":{"name":"--ansi","shortcut":"","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"Force ANSI output","default":false},"no-ansi":{"name":"--no-ansi","shortcut":"","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"Disable ANSI output","default":false},"no-interaction":{"name":"--no-interaction","shortcut":"-n","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"Do not ask any interactive question","default":false}}}},{"name":"descriptor:command2","usage":["descriptor:command2 [-o|--option_name] [--] <argument_name>", "descriptor:command2 -o|--option_name <argument_name>", "descriptor:command2 <argument_name>"],"description":"command 2 description","help":"command 2 help","definition":{"arguments":{"argument_name":{"name":"argument_name","is_required":true,"is_array":false,"description":"","default":null}},"options":{"option_name":{"name":"--option_name","shortcut":"-o","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"","default":false},"help":{"name":"--help","shortcut":"-h","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"Display this help message","default":false},"quiet":{"name":"--quiet","shortcut":"-q","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"Do not output any message","default":false},"verbose":{"name":"--verbose","shortcut":"-v|-vv|-vvv","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug","default":false},"version":{"name":"--version","shortcut":"-V","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"Display this application version","default":false},"ansi":{"name":"--ansi","shortcut":"","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"Force ANSI output","default":false},"no-ansi":{"name":"--no-ansi","shortcut":"","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"Disable ANSI output","default":false},"no-interaction":{"name":"--no-interaction","shortcut":"-n","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"Do not ask any interactive question","default":false}}}}],"namespaces":[{"id":"_global","commands":["alias1","alias2","help","list"]},{"id":"descriptor","commands":["descriptor:command1","descriptor:command2"]}]}
\ No newline at end of file
diff --git a/vendor/symfony/console/Tests/Fixtures/application_2.md b/vendor/symfony/console/Tests/Fixtures/application_2.md
deleted file mode 100644
index f031c9e..0000000
--- a/vendor/symfony/console/Tests/Fixtures/application_2.md
+++ /dev/null
@@ -1,396 +0,0 @@
-My Symfony application
-======================
-
-* alias1
-* alias2
-* help
-* list
-
-**descriptor:**
-
-* descriptor:command1
-* descriptor:command2
-
-help
-----
-
-* Description: Displays help for a command
-* Usage:
-
-  * `help [--xml] [--format FORMAT] [--raw] [--] [<command_name>]`
-
-The <info>help</info> command displays help for a given command:
-
-  <info>php app/console help list</info>
-
-You can also output the help in other formats by using the <comment>--format</comment> option:
-
-  <info>php app/console help --format=xml list</info>
-
-To display the list of available commands, please use the <info>list</info> command.
-
-### Arguments:
-
-**command_name:**
-
-* Name: command_name
-* Is required: no
-* Is array: no
-* Description: The command name
-* Default: `'help'`
-
-### Options:
-
-**xml:**
-
-* Name: `--xml`
-* Shortcut: <none>
-* Accept value: no
-* Is value required: no
-* Is multiple: no
-* Description: To output help as XML
-* Default: `false`
-
-**format:**
-
-* Name: `--format`
-* Shortcut: <none>
-* Accept value: yes
-* Is value required: yes
-* Is multiple: no
-* Description: The output format (txt, xml, json, or md)
-* Default: `'txt'`
-
-**raw:**
-
-* Name: `--raw`
-* Shortcut: <none>
-* Accept value: no
-* Is value required: no
-* Is multiple: no
-* Description: To output raw command help
-* Default: `false`
-
-**help:**
-
-* Name: `--help`
-* Shortcut: `-h`
-* Accept value: no
-* Is value required: no
-* Is multiple: no
-* Description: Display this help message
-* Default: `false`
-
-**quiet:**
-
-* Name: `--quiet`
-* Shortcut: `-q`
-* Accept value: no
-* Is value required: no
-* Is multiple: no
-* Description: Do not output any message
-* Default: `false`
-
-**verbose:**
-
-* Name: `--verbose`
-* Shortcut: `-v|-vv|-vvv`
-* Accept value: no
-* Is value required: no
-* Is multiple: no
-* Description: Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug
-* Default: `false`
-
-**version:**
-
-* Name: `--version`
-* Shortcut: `-V`
-* Accept value: no
-* Is value required: no
-* Is multiple: no
-* Description: Display this application version
-* Default: `false`
-
-**ansi:**
-
-* Name: `--ansi`
-* Shortcut: <none>
-* Accept value: no
-* Is value required: no
-* Is multiple: no
-* Description: Force ANSI output
-* Default: `false`
-
-**no-ansi:**
-
-* Name: `--no-ansi`
-* Shortcut: <none>
-* Accept value: no
-* Is value required: no
-* Is multiple: no
-* Description: Disable ANSI output
-* Default: `false`
-
-**no-interaction:**
-
-* Name: `--no-interaction`
-* Shortcut: `-n`
-* Accept value: no
-* Is value required: no
-* Is multiple: no
-* Description: Do not ask any interactive question
-* Default: `false`
-
-list
-----
-
-* Description: Lists commands
-* Usage:
-
-  * `list [--xml] [--raw] [--format FORMAT] [--] [<namespace>]`
-
-The <info>list</info> command lists all commands:
-
-  <info>php app/console list</info>
-
-You can also display the commands for a specific namespace:
-
-  <info>php app/console list test</info>
-
-You can also output the information in other formats by using the <comment>--format</comment> option:
-
-  <info>php app/console list --format=xml</info>
-
-It's also possible to get raw list of commands (useful for embedding command runner):
-
-  <info>php app/console list --raw</info>
-
-### Arguments:
-
-**namespace:**
-
-* Name: namespace
-* Is required: no
-* Is array: no
-* Description: The namespace name
-* Default: `NULL`
-
-### Options:
-
-**xml:**
-
-* Name: `--xml`
-* Shortcut: <none>
-* Accept value: no
-* Is value required: no
-* Is multiple: no
-* Description: To output list as XML
-* Default: `false`
-
-**raw:**
-
-* Name: `--raw`
-* Shortcut: <none>
-* Accept value: no
-* Is value required: no
-* Is multiple: no
-* Description: To output raw command list
-* Default: `false`
-
-**format:**
-
-* Name: `--format`
-* Shortcut: <none>
-* Accept value: yes
-* Is value required: yes
-* Is multiple: no
-* Description: The output format (txt, xml, json, or md)
-* Default: `'txt'`
-
-descriptor:command1
--------------------
-
-* Description: command 1 description
-* Usage:
-
-  * `descriptor:command1`
-  * `alias1`
-  * `alias2`
-
-command 1 help
-
-### Options:
-
-**help:**
-
-* Name: `--help`
-* Shortcut: `-h`
-* Accept value: no
-* Is value required: no
-* Is multiple: no
-* Description: Display this help message
-* Default: `false`
-
-**quiet:**
-
-* Name: `--quiet`
-* Shortcut: `-q`
-* Accept value: no
-* Is value required: no
-* Is multiple: no
-* Description: Do not output any message
-* Default: `false`
-
-**verbose:**
-
-* Name: `--verbose`
-* Shortcut: `-v|-vv|-vvv`
-* Accept value: no
-* Is value required: no
-* Is multiple: no
-* Description: Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug
-* Default: `false`
-
-**version:**
-
-* Name: `--version`
-* Shortcut: `-V`
-* Accept value: no
-* Is value required: no
-* Is multiple: no
-* Description: Display this application version
-* Default: `false`
-
-**ansi:**
-
-* Name: `--ansi`
-* Shortcut: <none>
-* Accept value: no
-* Is value required: no
-* Is multiple: no
-* Description: Force ANSI output
-* Default: `false`
-
-**no-ansi:**
-
-* Name: `--no-ansi`
-* Shortcut: <none>
-* Accept value: no
-* Is value required: no
-* Is multiple: no
-* Description: Disable ANSI output
-* Default: `false`
-
-**no-interaction:**
-
-* Name: `--no-interaction`
-* Shortcut: `-n`
-* Accept value: no
-* Is value required: no
-* Is multiple: no
-* Description: Do not ask any interactive question
-* Default: `false`
-
-descriptor:command2
--------------------
-
-* Description: command 2 description
-* Usage:
-
-  * `descriptor:command2 [-o|--option_name] [--] <argument_name>`
-  * `descriptor:command2 -o|--option_name <argument_name>`
-  * `descriptor:command2 <argument_name>`
-
-command 2 help
-
-### Arguments:
-
-**argument_name:**
-
-* Name: argument_name
-* Is required: yes
-* Is array: no
-* Description: <none>
-* Default: `NULL`
-
-### Options:
-
-**option_name:**
-
-* Name: `--option_name`
-* Shortcut: `-o`
-* Accept value: no
-* Is value required: no
-* Is multiple: no
-* Description: <none>
-* Default: `false`
-
-**help:**
-
-* Name: `--help`
-* Shortcut: `-h`
-* Accept value: no
-* Is value required: no
-* Is multiple: no
-* Description: Display this help message
-* Default: `false`
-
-**quiet:**
-
-* Name: `--quiet`
-* Shortcut: `-q`
-* Accept value: no
-* Is value required: no
-* Is multiple: no
-* Description: Do not output any message
-* Default: `false`
-
-**verbose:**
-
-* Name: `--verbose`
-* Shortcut: `-v|-vv|-vvv`
-* Accept value: no
-* Is value required: no
-* Is multiple: no
-* Description: Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug
-* Default: `false`
-
-**version:**
-
-* Name: `--version`
-* Shortcut: `-V`
-* Accept value: no
-* Is value required: no
-* Is multiple: no
-* Description: Display this application version
-* Default: `false`
-
-**ansi:**
-
-* Name: `--ansi`
-* Shortcut: <none>
-* Accept value: no
-* Is value required: no
-* Is multiple: no
-* Description: Force ANSI output
-* Default: `false`
-
-**no-ansi:**
-
-* Name: `--no-ansi`
-* Shortcut: <none>
-* Accept value: no
-* Is value required: no
-* Is multiple: no
-* Description: Disable ANSI output
-* Default: `false`
-
-**no-interaction:**
-
-* Name: `--no-interaction`
-* Shortcut: `-n`
-* Accept value: no
-* Is value required: no
-* Is multiple: no
-* Description: Do not ask any interactive question
-* Default: `false`
diff --git a/vendor/symfony/console/Tests/Fixtures/application_2.txt b/vendor/symfony/console/Tests/Fixtures/application_2.txt
deleted file mode 100644
index 292aa82..0000000
--- a/vendor/symfony/console/Tests/Fixtures/application_2.txt
+++ /dev/null
@@ -1,22 +0,0 @@
-<info>My Symfony application</info> version <comment>v1.0</comment>
-
-<comment>Usage:</comment>
-  command [options] [arguments]
-
-<comment>Options:</comment>
-  <info>-h, --help</info>            Display this help message
-  <info>-q, --quiet</info>           Do not output any message
-  <info>-V, --version</info>         Display this application version
-  <info>    --ansi</info>            Force ANSI output
-  <info>    --no-ansi</info>         Disable ANSI output
-  <info>-n, --no-interaction</info>  Do not ask any interactive question
-  <info>-v|vv|vvv, --verbose</info>  Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug
-
-<comment>Available commands:</comment>
-  <info>alias1</info>               command 1 description
-  <info>alias2</info>               command 1 description
-  <info>help</info>                 Displays help for a command
-  <info>list</info>                 Lists commands
- <comment>descriptor</comment>
-  <info>descriptor:command1</info>  command 1 description
-  <info>descriptor:command2</info>  command 2 description
diff --git a/vendor/symfony/console/Tests/Fixtures/application_2.xml b/vendor/symfony/console/Tests/Fixtures/application_2.xml
deleted file mode 100644
index bc8ab21..0000000
--- a/vendor/symfony/console/Tests/Fixtures/application_2.xml
+++ /dev/null
@@ -1,190 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<symfony name="My Symfony application" version="v1.0">
-  <commands>
-    <command id="help" name="help">
-      <usages>
-        <usage>help [--xml] [--format FORMAT] [--raw] [--] [&lt;command_name&gt;]</usage>
-      </usages>
-      <description>Displays help for a command</description>
-      <help>The &lt;info&gt;help&lt;/info&gt; command displays help for a given command:
- 
-   &lt;info&gt;php app/console help list&lt;/info&gt;
- 
- You can also output the help in other formats by using the &lt;comment&gt;--format&lt;/comment&gt; option:
- 
-   &lt;info&gt;php app/console help --format=xml list&lt;/info&gt;
- 
- To display the list of available commands, please use the &lt;info&gt;list&lt;/info&gt; command.</help>
-      <arguments>
-        <argument name="command_name" is_required="0" is_array="0">
-          <description>The command name</description>
-          <defaults>
-            <default>help</default>
-          </defaults>
-        </argument>
-      </arguments>
-      <options>
-        <option name="--xml" shortcut="" accept_value="0" is_value_required="0" is_multiple="0">
-          <description>To output help as XML</description>
-        </option>
-        <option name="--format" shortcut="" accept_value="1" is_value_required="1" is_multiple="0">
-          <description>The output format (txt, xml, json, or md)</description>
-          <defaults>
-            <default>txt</default>
-          </defaults>
-        </option>
-        <option name="--raw" shortcut="" accept_value="0" is_value_required="0" is_multiple="0">
-          <description>To output raw command help</description>
-        </option>
-        <option name="--help" shortcut="-h" accept_value="0" is_value_required="0" is_multiple="0">
-          <description>Display this help message</description>
-        </option>
-        <option name="--quiet" shortcut="-q" accept_value="0" is_value_required="0" is_multiple="0">
-          <description>Do not output any message</description>
-        </option>
-        <option name="--verbose" shortcut="-v" shortcuts="-v|-vv|-vvv" accept_value="0" is_value_required="0" is_multiple="0">
-          <description>Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug</description>
-        </option>
-        <option name="--version" shortcut="-V" accept_value="0" is_value_required="0" is_multiple="0">
-          <description>Display this application version</description>
-        </option>
-        <option name="--ansi" shortcut="" accept_value="0" is_value_required="0" is_multiple="0">
-          <description>Force ANSI output</description>
-        </option>
-        <option name="--no-ansi" shortcut="" accept_value="0" is_value_required="0" is_multiple="0">
-          <description>Disable ANSI output</description>
-        </option>
-        <option name="--no-interaction" shortcut="-n" accept_value="0" is_value_required="0" is_multiple="0">
-          <description>Do not ask any interactive question</description>
-        </option>
-      </options>
-    </command>
-    <command id="list" name="list">
-      <usages>
-        <usage>list [--xml] [--raw] [--format FORMAT] [--] [&lt;namespace&gt;]</usage>
-      </usages>
-      <description>Lists commands</description>
-      <help>The &lt;info&gt;list&lt;/info&gt; command lists all commands:
- 
-   &lt;info&gt;php app/console list&lt;/info&gt;
- 
- You can also display the commands for a specific namespace:
- 
-   &lt;info&gt;php app/console list test&lt;/info&gt;
- 
- You can also output the information in other formats by using the &lt;comment&gt;--format&lt;/comment&gt; option:
- 
-   &lt;info&gt;php app/console list --format=xml&lt;/info&gt;
- 
- It's also possible to get raw list of commands (useful for embedding command runner):
- 
-   &lt;info&gt;php app/console list --raw&lt;/info&gt;</help>
-      <arguments>
-        <argument name="namespace" is_required="0" is_array="0">
-          <description>The namespace name</description>
-          <defaults/>
-        </argument>
-      </arguments>
-      <options>
-        <option name="--xml" shortcut="" accept_value="0" is_value_required="0" is_multiple="0">
-          <description>To output list as XML</description>
-        </option>
-        <option name="--raw" shortcut="" accept_value="0" is_value_required="0" is_multiple="0">
-          <description>To output raw command list</description>
-        </option>
-        <option name="--format" shortcut="" accept_value="1" is_value_required="1" is_multiple="0">
-          <description>The output format (txt, xml, json, or md)</description>
-          <defaults>
-            <default>txt</default>
-          </defaults>
-        </option>
-      </options>
-    </command>
-    <command id="descriptor:command1" name="descriptor:command1">
-      <usages>
-        <usage>descriptor:command1</usage>
-        <usage>alias1</usage>
-        <usage>alias2</usage>
-      </usages>
-      <description>command 1 description</description>
-      <help>command 1 help</help>
-      <arguments/>
-      <options>
-        <option name="--help" shortcut="-h" accept_value="0" is_value_required="0" is_multiple="0">
-          <description>Display this help message</description>
-        </option>
-        <option name="--quiet" shortcut="-q" accept_value="0" is_value_required="0" is_multiple="0">
-          <description>Do not output any message</description>
-        </option>
-        <option name="--verbose" shortcut="-v" shortcuts="-v|-vv|-vvv" accept_value="0" is_value_required="0" is_multiple="0">
-          <description>Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug</description>
-        </option>
-        <option name="--version" shortcut="-V" accept_value="0" is_value_required="0" is_multiple="0">
-          <description>Display this application version</description>
-        </option>
-        <option name="--ansi" shortcut="" accept_value="0" is_value_required="0" is_multiple="0">
-          <description>Force ANSI output</description>
-        </option>
-        <option name="--no-ansi" shortcut="" accept_value="0" is_value_required="0" is_multiple="0">
-          <description>Disable ANSI output</description>
-        </option>
-        <option name="--no-interaction" shortcut="-n" accept_value="0" is_value_required="0" is_multiple="0">
-          <description>Do not ask any interactive question</description>
-        </option>
-      </options>
-    </command>
-    <command id="descriptor:command2" name="descriptor:command2">
-      <usages>
-        <usage>descriptor:command2 [-o|--option_name] [--] &lt;argument_name&gt;</usage>
-        <usage>descriptor:command2 -o|--option_name &lt;argument_name&gt;</usage>
-        <usage>descriptor:command2 &lt;argument_name&gt;</usage>
-      </usages>
-      <description>command 2 description</description>
-      <help>command 2 help</help>
-      <arguments>
-        <argument name="argument_name" is_required="1" is_array="0">
-          <description></description>
-          <defaults/>
-        </argument>
-      </arguments>
-      <options>
-        <option name="--option_name" shortcut="-o" accept_value="0" is_value_required="0" is_multiple="0">
-          <description></description>
-        </option>
-        <option name="--help" shortcut="-h" accept_value="0" is_value_required="0" is_multiple="0">
-          <description>Display this help message</description>
-        </option>
-        <option name="--quiet" shortcut="-q" accept_value="0" is_value_required="0" is_multiple="0">
-          <description>Do not output any message</description>
-        </option>
-        <option name="--verbose" shortcut="-v" shortcuts="-v|-vv|-vvv" accept_value="0" is_value_required="0" is_multiple="0">
-          <description>Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug</description>
-        </option>
-        <option name="--version" shortcut="-V" accept_value="0" is_value_required="0" is_multiple="0">
-          <description>Display this application version</description>
-        </option>
-        <option name="--ansi" shortcut="" accept_value="0" is_value_required="0" is_multiple="0">
-          <description>Force ANSI output</description>
-        </option>
-        <option name="--no-ansi" shortcut="" accept_value="0" is_value_required="0" is_multiple="0">
-          <description>Disable ANSI output</description>
-        </option>
-        <option name="--no-interaction" shortcut="-n" accept_value="0" is_value_required="0" is_multiple="0">
-          <description>Do not ask any interactive question</description>
-        </option>
-      </options>
-    </command>
-  </commands>
-  <namespaces>
-    <namespace id="_global">
-      <command>alias1</command>
-      <command>alias2</command>
-      <command>help</command>
-      <command>list</command>
-    </namespace>
-    <namespace id="descriptor">
-      <command>descriptor:command1</command>
-      <command>descriptor:command2</command>
-    </namespace>
-  </namespaces>
-</symfony>
diff --git a/vendor/symfony/console/Tests/Fixtures/application_astext1.txt b/vendor/symfony/console/Tests/Fixtures/application_astext1.txt
deleted file mode 100644
index 19dacb2..0000000
--- a/vendor/symfony/console/Tests/Fixtures/application_astext1.txt
+++ /dev/null
@@ -1,20 +0,0 @@
-<info>Console Tool</info>
-
-<comment>Usage:</comment>
-  command [options] [arguments]
-
-<comment>Options:</comment>
-  <info>-h, --help</info>            Display this help message
-  <info>-q, --quiet</info>           Do not output any message
-  <info>-V, --version</info>         Display this application version
-  <info>    --ansi</info>            Force ANSI output
-  <info>    --no-ansi</info>         Disable ANSI output
-  <info>-n, --no-interaction</info>  Do not ask any interactive question
-  <info>-v|vv|vvv, --verbose</info>  Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug
-
-<comment>Available commands:</comment>
-  <info>afoobar</info>  The foo:bar command
-  <info>help</info>     Displays help for a command
-  <info>list</info>     Lists commands
- <comment>foo</comment>
-  <info>foo:bar</info>  The foo:bar command
diff --git a/vendor/symfony/console/Tests/Fixtures/application_astext2.txt b/vendor/symfony/console/Tests/Fixtures/application_astext2.txt
deleted file mode 100644
index c99ccdd..0000000
--- a/vendor/symfony/console/Tests/Fixtures/application_astext2.txt
+++ /dev/null
@@ -1,16 +0,0 @@
-<info>Console Tool</info>
-
-<comment>Usage:</comment>
-  command [options] [arguments]
-
-<comment>Options:</comment>
-  <info>-h, --help</info>            Display this help message
-  <info>-q, --quiet</info>           Do not output any message
-  <info>-V, --version</info>         Display this application version
-  <info>    --ansi</info>            Force ANSI output
-  <info>    --no-ansi</info>         Disable ANSI output
-  <info>-n, --no-interaction</info>  Do not ask any interactive question
-  <info>-v|vv|vvv, --verbose</info>  Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug
-
-<comment>Available commands for the "foo" namespace:</comment>
-  <info>foo:bar</info>  The foo:bar command
diff --git a/vendor/symfony/console/Tests/Fixtures/application_asxml1.txt b/vendor/symfony/console/Tests/Fixtures/application_asxml1.txt
deleted file mode 100644
index 8277d9e..0000000
--- a/vendor/symfony/console/Tests/Fixtures/application_asxml1.txt
+++ /dev/null
@@ -1,146 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<symfony>
-  <commands>
-    <command id="help" name="help">
-      <usages>
-        <usage>help [--xml] [--format FORMAT] [--raw] [--] [&lt;command_name&gt;]</usage>
-      </usages>
-      <description>Displays help for a command</description>
-      <help>The &lt;info&gt;help&lt;/info&gt; command displays help for a given command:
- 
-   &lt;info&gt;php app/console help list&lt;/info&gt;
- 
- You can also output the help in other formats by using the &lt;comment&gt;--format&lt;/comment&gt; option:
- 
-   &lt;info&gt;php app/console help --format=xml list&lt;/info&gt;
- 
- To display the list of available commands, please use the &lt;info&gt;list&lt;/info&gt; command.</help>
-      <arguments>
-        <argument name="command_name" is_required="0" is_array="0">
-          <description>The command name</description>
-          <defaults>
-            <default>help</default>
-          </defaults>
-        </argument>
-      </arguments>
-      <options>
-        <option name="--xml" shortcut="" accept_value="0" is_value_required="0" is_multiple="0">
-          <description>To output help as XML</description>
-        </option>
-        <option name="--format" shortcut="" accept_value="1" is_value_required="1" is_multiple="0">
-          <description>The output format (txt, xml, json, or md)</description>
-          <defaults>
-            <default>txt</default>
-          </defaults>
-        </option>
-        <option name="--raw" shortcut="" accept_value="0" is_value_required="0" is_multiple="0">
-          <description>To output raw command help</description>
-        </option>
-        <option name="--help" shortcut="-h" accept_value="0" is_value_required="0" is_multiple="0">
-          <description>Display this help message</description>
-        </option>
-        <option name="--quiet" shortcut="-q" accept_value="0" is_value_required="0" is_multiple="0">
-          <description>Do not output any message</description>
-        </option>
-        <option name="--verbose" shortcut="-v" shortcuts="-v|-vv|-vvv" accept_value="0" is_value_required="0" is_multiple="0">
-          <description>Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug</description>
-        </option>
-        <option name="--version" shortcut="-V" accept_value="0" is_value_required="0" is_multiple="0">
-          <description>Display this application version</description>
-        </option>
-        <option name="--ansi" shortcut="" accept_value="0" is_value_required="0" is_multiple="0">
-          <description>Force ANSI output</description>
-        </option>
-        <option name="--no-ansi" shortcut="" accept_value="0" is_value_required="0" is_multiple="0">
-          <description>Disable ANSI output</description>
-        </option>
-        <option name="--no-interaction" shortcut="-n" accept_value="0" is_value_required="0" is_multiple="0">
-          <description>Do not ask any interactive question</description>
-        </option>
-      </options>
-    </command>
-    <command id="list" name="list">
-      <usages>
-        <usage>list [--xml] [--raw] [--format FORMAT] [--] [&lt;namespace&gt;]</usage>
-      </usages>
-      <description>Lists commands</description>
-      <help>The &lt;info&gt;list&lt;/info&gt; command lists all commands:
- 
-   &lt;info&gt;php app/console list&lt;/info&gt;
- 
- You can also display the commands for a specific namespace:
- 
-   &lt;info&gt;php app/console list test&lt;/info&gt;
- 
- You can also output the information in other formats by using the &lt;comment&gt;--format&lt;/comment&gt; option:
- 
-   &lt;info&gt;php app/console list --format=xml&lt;/info&gt;
- 
- It's also possible to get raw list of commands (useful for embedding command runner):
- 
-   &lt;info&gt;php app/console list --raw&lt;/info&gt;</help>
-      <arguments>
-        <argument name="namespace" is_required="0" is_array="0">
-          <description>The namespace name</description>
-          <defaults/>
-        </argument>
-      </arguments>
-      <options>
-        <option name="--xml" shortcut="" accept_value="0" is_value_required="0" is_multiple="0">
-          <description>To output list as XML</description>
-        </option>
-        <option name="--raw" shortcut="" accept_value="0" is_value_required="0" is_multiple="0">
-          <description>To output raw command list</description>
-        </option>
-        <option name="--format" shortcut="" accept_value="1" is_value_required="1" is_multiple="0">
-          <description>The output format (txt, xml, json, or md)</description>
-          <defaults>
-            <default>txt</default>
-          </defaults>
-        </option>
-      </options>
-    </command>
-    <command id="foo:bar" name="foo:bar">
-      <usages>
-        <usage>foo:bar</usage>
-        <usage>afoobar</usage>
-      </usages>
-      <description>The foo:bar command</description>
-      <help>The foo:bar command</help>
-      <arguments/>
-      <options>
-        <option name="--help" shortcut="-h" accept_value="0" is_value_required="0" is_multiple="0">
-          <description>Display this help message</description>
-        </option>
-        <option name="--quiet" shortcut="-q" accept_value="0" is_value_required="0" is_multiple="0">
-          <description>Do not output any message</description>
-        </option>
-        <option name="--verbose" shortcut="-v" shortcuts="-v|-vv|-vvv" accept_value="0" is_value_required="0" is_multiple="0">
-          <description>Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug</description>
-        </option>
-        <option name="--version" shortcut="-V" accept_value="0" is_value_required="0" is_multiple="0">
-          <description>Display this application version</description>
-        </option>
-        <option name="--ansi" shortcut="" accept_value="0" is_value_required="0" is_multiple="0">
-          <description>Force ANSI output</description>
-        </option>
-        <option name="--no-ansi" shortcut="" accept_value="0" is_value_required="0" is_multiple="0">
-          <description>Disable ANSI output</description>
-        </option>
-        <option name="--no-interaction" shortcut="-n" accept_value="0" is_value_required="0" is_multiple="0">
-          <description>Do not ask any interactive question</description>
-        </option>
-      </options>
-    </command>
-  </commands>
-  <namespaces>
-    <namespace id="_global">
-      <command>afoobar</command>
-      <command>help</command>
-      <command>list</command>
-    </namespace>
-    <namespace id="foo">
-      <command>foo:bar</command>
-    </namespace>
-  </namespaces>
-</symfony>
diff --git a/vendor/symfony/console/Tests/Fixtures/application_asxml2.txt b/vendor/symfony/console/Tests/Fixtures/application_asxml2.txt
deleted file mode 100644
index 93d6d4e..0000000
--- a/vendor/symfony/console/Tests/Fixtures/application_asxml2.txt
+++ /dev/null
@@ -1,37 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<symfony>
-  <commands namespace="foo">
-    <command id="foo:bar" name="foo:bar">
-      <usages>
-        <usage>foo:bar</usage>
-        <usage>afoobar</usage>
-      </usages>
-      <description>The foo:bar command</description>
-      <help>The foo:bar command</help>
-      <arguments/>
-      <options>
-        <option name="--help" shortcut="-h" accept_value="0" is_value_required="0" is_multiple="0">
-          <description>Display this help message</description>
-        </option>
-        <option name="--quiet" shortcut="-q" accept_value="0" is_value_required="0" is_multiple="0">
-          <description>Do not output any message</description>
-        </option>
-        <option name="--verbose" shortcut="-v" shortcuts="-v|-vv|-vvv" accept_value="0" is_value_required="0" is_multiple="0">
-          <description>Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug</description>
-        </option>
-        <option name="--version" shortcut="-V" accept_value="0" is_value_required="0" is_multiple="0">
-          <description>Display this application version</description>
-        </option>
-        <option name="--ansi" shortcut="" accept_value="0" is_value_required="0" is_multiple="0">
-          <description>Force ANSI output</description>
-        </option>
-        <option name="--no-ansi" shortcut="" accept_value="0" is_value_required="0" is_multiple="0">
-          <description>Disable ANSI output</description>
-        </option>
-        <option name="--no-interaction" shortcut="-n" accept_value="0" is_value_required="0" is_multiple="0">
-          <description>Do not ask any interactive question</description>
-        </option>
-      </options>
-    </command>
-  </commands>
-</symfony>
diff --git a/vendor/symfony/console/Tests/Fixtures/application_gethelp.txt b/vendor/symfony/console/Tests/Fixtures/application_gethelp.txt
deleted file mode 100644
index 0c16e3c..0000000
--- a/vendor/symfony/console/Tests/Fixtures/application_gethelp.txt
+++ /dev/null
@@ -1 +0,0 @@
-<info>Console Tool</info>
\ No newline at end of file
diff --git a/vendor/symfony/console/Tests/Fixtures/application_renderexception1.txt b/vendor/symfony/console/Tests/Fixtures/application_renderexception1.txt
deleted file mode 100644
index 4629345..0000000
--- a/vendor/symfony/console/Tests/Fixtures/application_renderexception1.txt
+++ /dev/null
@@ -1,8 +0,0 @@
-
-
-                                 
-  [InvalidArgumentException]     
-  Command "foo" is not defined.  
-                                 
-
-
diff --git a/vendor/symfony/console/Tests/Fixtures/application_renderexception2.txt b/vendor/symfony/console/Tests/Fixtures/application_renderexception2.txt
deleted file mode 100644
index 3d9d363..0000000
--- a/vendor/symfony/console/Tests/Fixtures/application_renderexception2.txt
+++ /dev/null
@@ -1,11 +0,0 @@
-
-
-                                      
-  [InvalidArgumentException]          
-  The "--foo" option does not exist.  
-                                      
-
-
-list [--xml] [--raw] [--format FORMAT] [--] [<namespace>]
-
-
diff --git a/vendor/symfony/console/Tests/Fixtures/application_renderexception3.txt b/vendor/symfony/console/Tests/Fixtures/application_renderexception3.txt
deleted file mode 100644
index 72a7286..0000000
--- a/vendor/symfony/console/Tests/Fixtures/application_renderexception3.txt
+++ /dev/null
@@ -1,27 +0,0 @@
-
-
-                           
-  [Exception]              
-  Third exception comment  
-                           
-
-
-
-
-                            
-  [Exception]               
-  Second exception comment  
-                            
-
-
-
-
-                                       
-  [Exception]                          
-  First exception <p>this is html</p>  
-                                       
-
-
-foo3:bar
-
-
diff --git a/vendor/symfony/console/Tests/Fixtures/application_renderexception3decorated.txt b/vendor/symfony/console/Tests/Fixtures/application_renderexception3decorated.txt
deleted file mode 100644
index b44d50b..0000000
--- a/vendor/symfony/console/Tests/Fixtures/application_renderexception3decorated.txt
+++ /dev/null
@@ -1,27 +0,0 @@
-
-
-[37;41m                           [39;49m
-[37;41m  [Exception]              [39;49m
-[37;41m  Third exception [39;49m[34;41mcomment[39;49m[37;41m  [39;49m
-[37;41m                           [39;49m
-
-
-
-
-[37;41m                            [39;49m
-[37;41m  [Exception]               [39;49m
-[37;41m  Second exception [39;49m[33mcomment[39m[37;41m  [39;49m
-[37;41m                            [39;49m
-
-
-
-
-[37;41m                                       [39;49m
-[37;41m  [Exception]                          [39;49m
-[37;41m  First exception [39;49m[37;41m<p>[39;49m[37;41mthis is html[39;49m[37;41m</p>[39;49m[37;41m  [39;49m
-[37;41m                                       [39;49m
-
-
-[32mfoo3:bar[39m
-
-
diff --git a/vendor/symfony/console/Tests/Fixtures/application_renderexception4.txt b/vendor/symfony/console/Tests/Fixtures/application_renderexception4.txt
deleted file mode 100644
index 19f893b..0000000
--- a/vendor/symfony/console/Tests/Fixtures/application_renderexception4.txt
+++ /dev/null
@@ -1,9 +0,0 @@
-
-
-                               
-  [InvalidArgumentException]   
-  Command "foo" is not define  
-  d.                           
-                               
-
-
diff --git a/vendor/symfony/console/Tests/Fixtures/application_renderexception_doublewidth1.txt b/vendor/symfony/console/Tests/Fixtures/application_renderexception_doublewidth1.txt
deleted file mode 100644
index 6a98660..0000000
--- a/vendor/symfony/console/Tests/Fixtures/application_renderexception_doublewidth1.txt
+++ /dev/null
@@ -1,11 +0,0 @@
-
-
-                    
-  [Exception]       
-  エラーメッセージ  
-                    
-
-
-foo
-
-
diff --git a/vendor/symfony/console/Tests/Fixtures/application_renderexception_doublewidth1decorated.txt b/vendor/symfony/console/Tests/Fixtures/application_renderexception_doublewidth1decorated.txt
deleted file mode 100644
index 8c8801b..0000000
--- a/vendor/symfony/console/Tests/Fixtures/application_renderexception_doublewidth1decorated.txt
+++ /dev/null
@@ -1,11 +0,0 @@
-
-
-[37;41m                    [39;49m
-[37;41m  [Exception]       [39;49m
-[37;41m  エラーメッセージ  [39;49m
-[37;41m                    [39;49m
-
-
-[32mfoo[39m
-
-
diff --git a/vendor/symfony/console/Tests/Fixtures/application_renderexception_doublewidth2.txt b/vendor/symfony/console/Tests/Fixtures/application_renderexception_doublewidth2.txt
deleted file mode 100644
index 545cd7b0..0000000
--- a/vendor/symfony/console/Tests/Fixtures/application_renderexception_doublewidth2.txt
+++ /dev/null
@@ -1,12 +0,0 @@
-
-
-                              
-  [Exception]                 
-  コマンドの実行中にエラーが  
-  発生しました。              
-                              
-
-
-foo
-
-
diff --git a/vendor/symfony/console/Tests/Fixtures/application_run1.txt b/vendor/symfony/console/Tests/Fixtures/application_run1.txt
deleted file mode 100644
index 0dc2730..0000000
--- a/vendor/symfony/console/Tests/Fixtures/application_run1.txt
+++ /dev/null
@@ -1,17 +0,0 @@
-Console Tool
-
-Usage:
-  command [options] [arguments]
-
-Options:
-  -h, --help            Display this help message
-  -q, --quiet           Do not output any message
-  -V, --version         Display this application version
-      --ansi            Force ANSI output
-      --no-ansi         Disable ANSI output
-  -n, --no-interaction  Do not ask any interactive question
-  -v|vv|vvv, --verbose  Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug
-
-Available commands:
-  help  Displays help for a command
-  list  Lists commands
diff --git a/vendor/symfony/console/Tests/Fixtures/application_run2.txt b/vendor/symfony/console/Tests/Fixtures/application_run2.txt
deleted file mode 100644
index d28b928..0000000
--- a/vendor/symfony/console/Tests/Fixtures/application_run2.txt
+++ /dev/null
@@ -1,29 +0,0 @@
-Usage:
-  help [options] [--] [<command_name>]
-
-Arguments:
-  command               The command to execute
-  command_name          The command name [default: "help"]
-
-Options:
-      --xml             To output help as XML
-      --format=FORMAT   The output format (txt, xml, json, or md) [default: "txt"]
-      --raw             To output raw command help
-  -h, --help            Display this help message
-  -q, --quiet           Do not output any message
-  -V, --version         Display this application version
-      --ansi            Force ANSI output
-      --no-ansi         Disable ANSI output
-  -n, --no-interaction  Do not ask any interactive question
-  -v|vv|vvv, --verbose  Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug
-
-Help:
- The help command displays help for a given command:
- 
-   php app/console help list
- 
- You can also output the help in other formats by using the --format option:
- 
-   php app/console help --format=xml list
- 
- To display the list of available commands, please use the list command.
diff --git a/vendor/symfony/console/Tests/Fixtures/application_run3.txt b/vendor/symfony/console/Tests/Fixtures/application_run3.txt
deleted file mode 100644
index bc51995..0000000
--- a/vendor/symfony/console/Tests/Fixtures/application_run3.txt
+++ /dev/null
@@ -1,27 +0,0 @@
-Usage:
-  list [options] [--] [<namespace>]
-
-Arguments:
-  namespace            The namespace name
-
-Options:
-      --xml            To output list as XML
-      --raw            To output raw command list
-      --format=FORMAT  The output format (txt, xml, json, or md) [default: "txt"]
-
-Help:
- The list command lists all commands:
- 
-   php app/console list
- 
- You can also display the commands for a specific namespace:
- 
-   php app/console list test
- 
- You can also output the information in other formats by using the --format option:
- 
-   php app/console list --format=xml
- 
- It's also possible to get raw list of commands (useful for embedding command runner):
- 
-   php app/console list --raw
diff --git a/vendor/symfony/console/Tests/Fixtures/application_run4.txt b/vendor/symfony/console/Tests/Fixtures/application_run4.txt
deleted file mode 100644
index 47187fc..0000000
--- a/vendor/symfony/console/Tests/Fixtures/application_run4.txt
+++ /dev/null
@@ -1 +0,0 @@
-Console Tool
diff --git a/vendor/symfony/console/Tests/Fixtures/command_1.json b/vendor/symfony/console/Tests/Fixtures/command_1.json
deleted file mode 100644
index 20f310b..0000000
--- a/vendor/symfony/console/Tests/Fixtures/command_1.json
+++ /dev/null
@@ -1 +0,0 @@
-{"name":"descriptor:command1","usage":["descriptor:command1", "alias1", "alias2"],"description":"command 1 description","help":"command 1 help","definition":{"arguments":[],"options":[]}}
diff --git a/vendor/symfony/console/Tests/Fixtures/command_1.md b/vendor/symfony/console/Tests/Fixtures/command_1.md
deleted file mode 100644
index 34ed3ea..0000000
--- a/vendor/symfony/console/Tests/Fixtures/command_1.md
+++ /dev/null
@@ -1,11 +0,0 @@
-descriptor:command1
--------------------
-
-* Description: command 1 description
-* Usage:
-
-  * `descriptor:command1`
-  * `alias1`
-  * `alias2`
-
-command 1 help
diff --git a/vendor/symfony/console/Tests/Fixtures/command_1.txt b/vendor/symfony/console/Tests/Fixtures/command_1.txt
deleted file mode 100644
index 28e14a0..0000000
--- a/vendor/symfony/console/Tests/Fixtures/command_1.txt
+++ /dev/null
@@ -1,7 +0,0 @@
-<comment>Usage:</comment>
-  descriptor:command1
-  alias1
-  alias2
-
-<comment>Help:</comment>
- command 1 help
diff --git a/vendor/symfony/console/Tests/Fixtures/command_1.xml b/vendor/symfony/console/Tests/Fixtures/command_1.xml
deleted file mode 100644
index 838b9bd..0000000
--- a/vendor/symfony/console/Tests/Fixtures/command_1.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<command id="descriptor:command1" name="descriptor:command1">
-  <usages>
-    <usage>descriptor:command1</usage>
-    <usage>alias1</usage>
-    <usage>alias2</usage>
-  </usages>
-  <description>command 1 description</description>
-  <help>command 1 help</help>
-  <arguments/>
-  <options/>
-</command>
diff --git a/vendor/symfony/console/Tests/Fixtures/command_2.json b/vendor/symfony/console/Tests/Fixtures/command_2.json
deleted file mode 100644
index 38edd1e..0000000
--- a/vendor/symfony/console/Tests/Fixtures/command_2.json
+++ /dev/null
@@ -1 +0,0 @@
-{"name":"descriptor:command2","usage":["descriptor:command2 [-o|--option_name] [--] <argument_name>", "descriptor:command2 -o|--option_name <argument_name>", "descriptor:command2 <argument_name>"],"description":"command 2 description","help":"command 2 help","definition":{"arguments":{"argument_name":{"name":"argument_name","is_required":true,"is_array":false,"description":"","default":null}},"options":{"option_name":{"name":"--option_name","shortcut":"-o","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"","default":false}}}}
diff --git a/vendor/symfony/console/Tests/Fixtures/command_2.md b/vendor/symfony/console/Tests/Fixtures/command_2.md
deleted file mode 100644
index 6f538b6..0000000
--- a/vendor/symfony/console/Tests/Fixtures/command_2.md
+++ /dev/null
@@ -1,33 +0,0 @@
-descriptor:command2
--------------------
-
-* Description: command 2 description
-* Usage:
-
-  * `descriptor:command2 [-o|--option_name] [--] <argument_name>`
-  * `descriptor:command2 -o|--option_name <argument_name>`
-  * `descriptor:command2 <argument_name>`
-
-command 2 help
-
-### Arguments:
-
-**argument_name:**
-
-* Name: argument_name
-* Is required: yes
-* Is array: no
-* Description: <none>
-* Default: `NULL`
-
-### Options:
-
-**option_name:**
-
-* Name: `--option_name`
-* Shortcut: `-o`
-* Accept value: no
-* Is value required: no
-* Is multiple: no
-* Description: <none>
-* Default: `false`
diff --git a/vendor/symfony/console/Tests/Fixtures/command_2.txt b/vendor/symfony/console/Tests/Fixtures/command_2.txt
deleted file mode 100644
index 72f7ce0..0000000
--- a/vendor/symfony/console/Tests/Fixtures/command_2.txt
+++ /dev/null
@@ -1,13 +0,0 @@
-<comment>Usage:</comment>
-  descriptor:command2 [options] [--] <argument_name>
-  descriptor:command2 -o|--option_name <argument_name>
-  descriptor:command2 <argument_name>
-
-<comment>Arguments:</comment>
-  <info>argument_name</info>      
-
-<comment>Options:</comment>
-  <info>-o, --option_name</info>  
-
-<comment>Help:</comment>
- command 2 help
diff --git a/vendor/symfony/console/Tests/Fixtures/command_2.xml b/vendor/symfony/console/Tests/Fixtures/command_2.xml
deleted file mode 100644
index 67364ca..0000000
--- a/vendor/symfony/console/Tests/Fixtures/command_2.xml
+++ /dev/null
@@ -1,21 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<command id="descriptor:command2" name="descriptor:command2">
-  <usages>
-    <usage>descriptor:command2 [-o|--option_name] [--] &lt;argument_name&gt;</usage>
-    <usage>descriptor:command2 -o|--option_name &lt;argument_name&gt;</usage>
-    <usage>descriptor:command2 &lt;argument_name&gt;</usage>
-  </usages>
-  <description>command 2 description</description>
-  <help>command 2 help</help>
-  <arguments>
-    <argument name="argument_name" is_required="1" is_array="0">
-      <description></description>
-      <defaults/>
-    </argument>
-  </arguments>
-  <options>
-    <option name="--option_name" shortcut="-o" accept_value="0" is_value_required="0" is_multiple="0">
-      <description></description>
-    </option>
-  </options>
-</command>
diff --git a/vendor/symfony/console/Tests/Fixtures/command_astext.txt b/vendor/symfony/console/Tests/Fixtures/command_astext.txt
deleted file mode 100644
index 7e20638..0000000
--- a/vendor/symfony/console/Tests/Fixtures/command_astext.txt
+++ /dev/null
@@ -1,18 +0,0 @@
-<comment>Usage:</comment>
-  namespace:name
-  name
-
-<comment>Arguments:</comment>
-  <info>command</info>               The command to execute
-
-<comment>Options:</comment>
-  <info>-h, --help</info>            Display this help message
-  <info>-q, --quiet</info>           Do not output any message
-  <info>-V, --version</info>         Display this application version
-  <info>    --ansi</info>            Force ANSI output
-  <info>    --no-ansi</info>         Disable ANSI output
-  <info>-n, --no-interaction</info>  Do not ask any interactive question
-  <info>-v|vv|vvv, --verbose</info>  Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug
-
-<comment>Help:</comment>
- help
diff --git a/vendor/symfony/console/Tests/Fixtures/command_asxml.txt b/vendor/symfony/console/Tests/Fixtures/command_asxml.txt
deleted file mode 100644
index 5e77623..0000000
--- a/vendor/symfony/console/Tests/Fixtures/command_asxml.txt
+++ /dev/null
@@ -1,38 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<command id="namespace:name" name="namespace:name">
-  <usages>
-    <usage>namespace:name</usage>
-    <usage>name</usage>
-  </usages>
-  <description>description</description>
-  <help>help</help>
-  <arguments>
-    <argument name="command" is_required="1" is_array="0">
-      <description>The command to execute</description>
-      <defaults/>
-    </argument>
-  </arguments>
-  <options>
-    <option name="--help" shortcut="-h" accept_value="0" is_value_required="0" is_multiple="0">
-      <description>Display this help message</description>
-    </option>
-    <option name="--quiet" shortcut="-q" accept_value="0" is_value_required="0" is_multiple="0">
-      <description>Do not output any message</description>
-    </option>
-    <option name="--verbose" shortcut="-v" shortcuts="-v|-vv|-vvv" accept_value="0" is_value_required="0" is_multiple="0">
-      <description>Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug</description>
-    </option>
-    <option name="--version" shortcut="-V" accept_value="0" is_value_required="0" is_multiple="0">
-      <description>Display this application version</description>
-    </option>
-    <option name="--ansi" shortcut="" accept_value="0" is_value_required="0" is_multiple="0">
-      <description>Force ANSI output</description>
-    </option>
-    <option name="--no-ansi" shortcut="" accept_value="0" is_value_required="0" is_multiple="0">
-      <description>Disable ANSI output</description>
-    </option>
-    <option name="--no-interaction" shortcut="-n" accept_value="0" is_value_required="0" is_multiple="0">
-      <description>Do not ask any interactive question</description>
-    </option>
-  </options>
-</command>
diff --git a/vendor/symfony/console/Tests/Fixtures/definition_astext.txt b/vendor/symfony/console/Tests/Fixtures/definition_astext.txt
deleted file mode 100644
index 0431c07..0000000
--- a/vendor/symfony/console/Tests/Fixtures/definition_astext.txt
+++ /dev/null
@@ -1,11 +0,0 @@
-<comment>Arguments:</comment>
-  <info>foo</info>                The foo argument
-  <info>baz</info>                The baz argument<comment> [default: true]</comment>
-  <info>bar</info>                The bar argument<comment> [default: ["http://foo.com/"]]</comment>
-
-<comment>Options:</comment>
-  <info>-f, --foo=FOO</info>      The foo option
-  <info>    --baz[=BAZ]</info>    The baz option<comment> [default: false]</comment>
-  <info>-b, --bar[=BAR]</info>    The bar option<comment> [default: "bar"]</comment>
-  <info>    --qux[=QUX]</info>    The qux option<comment> [default: ["http://foo.com/","bar"]]</comment><comment> (multiple values allowed)</comment>
-  <info>    --qux2[=QUX2]</info>  The qux2 option<comment> [default: {"foo":"bar"}]</comment><comment> (multiple values allowed)</comment>
\ No newline at end of file
diff --git a/vendor/symfony/console/Tests/Fixtures/definition_asxml.txt b/vendor/symfony/console/Tests/Fixtures/definition_asxml.txt
deleted file mode 100644
index eec8c07..0000000
--- a/vendor/symfony/console/Tests/Fixtures/definition_asxml.txt
+++ /dev/null
@@ -1,39 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<definition>
-  <arguments>
-    <argument name="foo" is_required="0" is_array="0">
-      <description>The foo argument</description>
-      <defaults/>
-    </argument>
-    <argument name="baz" is_required="0" is_array="0">
-      <description>The baz argument</description>
-      <defaults>
-        <default>true</default>
-      </defaults>
-    </argument>
-    <argument name="bar" is_required="0" is_array="1">
-      <description>The bar argument</description>
-      <defaults>
-        <default>bar</default>
-      </defaults>
-    </argument>
-  </arguments>
-  <options>
-    <option name="--foo" shortcut="-f" accept_value="1" is_value_required="1" is_multiple="0">
-      <description>The foo option</description>
-      <defaults/>
-    </option>
-    <option name="--baz" shortcut="" accept_value="1" is_value_required="0" is_multiple="0">
-      <description>The baz option</description>
-      <defaults>
-        <default>false</default>
-      </defaults>
-    </option>
-    <option name="--bar" shortcut="-b" accept_value="1" is_value_required="0" is_multiple="0">
-      <description>The bar option</description>
-      <defaults>
-        <default>bar</default>
-      </defaults>
-    </option>
-  </options>
-</definition>
diff --git a/vendor/symfony/console/Tests/Fixtures/input_argument_1.json b/vendor/symfony/console/Tests/Fixtures/input_argument_1.json
deleted file mode 100644
index b8173b6..0000000
--- a/vendor/symfony/console/Tests/Fixtures/input_argument_1.json
+++ /dev/null
@@ -1 +0,0 @@
-{"name":"argument_name","is_required":true,"is_array":false,"description":"","default":null}
diff --git a/vendor/symfony/console/Tests/Fixtures/input_argument_1.md b/vendor/symfony/console/Tests/Fixtures/input_argument_1.md
deleted file mode 100644
index 88f311a..0000000
--- a/vendor/symfony/console/Tests/Fixtures/input_argument_1.md
+++ /dev/null
@@ -1,7 +0,0 @@
-**argument_name:**
-
-* Name: argument_name
-* Is required: yes
-* Is array: no
-* Description: <none>
-* Default: `NULL`
diff --git a/vendor/symfony/console/Tests/Fixtures/input_argument_1.txt b/vendor/symfony/console/Tests/Fixtures/input_argument_1.txt
deleted file mode 100644
index 5503518..0000000
--- a/vendor/symfony/console/Tests/Fixtures/input_argument_1.txt
+++ /dev/null
@@ -1 +0,0 @@
-  <info>argument_name</info>
diff --git a/vendor/symfony/console/Tests/Fixtures/input_argument_1.xml b/vendor/symfony/console/Tests/Fixtures/input_argument_1.xml
deleted file mode 100644
index cb37f81..0000000
--- a/vendor/symfony/console/Tests/Fixtures/input_argument_1.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<argument name="argument_name" is_required="1" is_array="0">
-  <description></description>
-  <defaults/>
-</argument>
diff --git a/vendor/symfony/console/Tests/Fixtures/input_argument_2.json b/vendor/symfony/console/Tests/Fixtures/input_argument_2.json
deleted file mode 100644
index ef06b09..0000000
--- a/vendor/symfony/console/Tests/Fixtures/input_argument_2.json
+++ /dev/null
@@ -1 +0,0 @@
-{"name":"argument_name","is_required":false,"is_array":true,"description":"argument description","default":[]}
diff --git a/vendor/symfony/console/Tests/Fixtures/input_argument_2.md b/vendor/symfony/console/Tests/Fixtures/input_argument_2.md
deleted file mode 100644
index 3cdb00c..0000000
--- a/vendor/symfony/console/Tests/Fixtures/input_argument_2.md
+++ /dev/null
@@ -1,7 +0,0 @@
-**argument_name:**
-
-* Name: argument_name
-* Is required: no
-* Is array: yes
-* Description: argument description
-* Default: `array ()`
diff --git a/vendor/symfony/console/Tests/Fixtures/input_argument_2.txt b/vendor/symfony/console/Tests/Fixtures/input_argument_2.txt
deleted file mode 100644
index e713660..0000000
--- a/vendor/symfony/console/Tests/Fixtures/input_argument_2.txt
+++ /dev/null
@@ -1 +0,0 @@
-  <info>argument_name</info>  argument description
diff --git a/vendor/symfony/console/Tests/Fixtures/input_argument_2.xml b/vendor/symfony/console/Tests/Fixtures/input_argument_2.xml
deleted file mode 100644
index 629da5a..0000000
--- a/vendor/symfony/console/Tests/Fixtures/input_argument_2.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<argument name="argument_name" is_required="0" is_array="1">
-  <description>argument description</description>
-  <defaults/>
-</argument>
diff --git a/vendor/symfony/console/Tests/Fixtures/input_argument_3.json b/vendor/symfony/console/Tests/Fixtures/input_argument_3.json
deleted file mode 100644
index de8484e..0000000
--- a/vendor/symfony/console/Tests/Fixtures/input_argument_3.json
+++ /dev/null
@@ -1 +0,0 @@
-{"name":"argument_name","is_required":false,"is_array":false,"description":"argument description","default":"default_value"}
diff --git a/vendor/symfony/console/Tests/Fixtures/input_argument_3.md b/vendor/symfony/console/Tests/Fixtures/input_argument_3.md
deleted file mode 100644
index be1c443..0000000
--- a/vendor/symfony/console/Tests/Fixtures/input_argument_3.md
+++ /dev/null
@@ -1,7 +0,0 @@
-**argument_name:**
-
-* Name: argument_name
-* Is required: no
-* Is array: no
-* Description: argument description
-* Default: `'default_value'`
diff --git a/vendor/symfony/console/Tests/Fixtures/input_argument_3.txt b/vendor/symfony/console/Tests/Fixtures/input_argument_3.txt
deleted file mode 100644
index 6b76639..0000000
--- a/vendor/symfony/console/Tests/Fixtures/input_argument_3.txt
+++ /dev/null
@@ -1 +0,0 @@
-  <info>argument_name</info>  argument description<comment> [default: "default_value"]</comment>
diff --git a/vendor/symfony/console/Tests/Fixtures/input_argument_3.xml b/vendor/symfony/console/Tests/Fixtures/input_argument_3.xml
deleted file mode 100644
index 399a5c8..0000000
--- a/vendor/symfony/console/Tests/Fixtures/input_argument_3.xml
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<argument name="argument_name" is_required="0" is_array="0">
-  <description>argument description</description>
-  <defaults>
-    <default>default_value</default>
-  </defaults>
-</argument>
diff --git a/vendor/symfony/console/Tests/Fixtures/input_argument_4.json b/vendor/symfony/console/Tests/Fixtures/input_argument_4.json
deleted file mode 100644
index 8067a4d..0000000
--- a/vendor/symfony/console/Tests/Fixtures/input_argument_4.json
+++ /dev/null
@@ -1 +0,0 @@
-{"name":"argument_name","is_required":true,"is_array":false,"description":"multiline argument description","default":null}
diff --git a/vendor/symfony/console/Tests/Fixtures/input_argument_4.md b/vendor/symfony/console/Tests/Fixtures/input_argument_4.md
deleted file mode 100644
index f026ab3..0000000
--- a/vendor/symfony/console/Tests/Fixtures/input_argument_4.md
+++ /dev/null
@@ -1,8 +0,0 @@
-**argument_name:**
-
-* Name: argument_name
-* Is required: yes
-* Is array: no
-* Description: multiline
-  argument description
-* Default: `NULL`
diff --git a/vendor/symfony/console/Tests/Fixtures/input_argument_4.txt b/vendor/symfony/console/Tests/Fixtures/input_argument_4.txt
deleted file mode 100644
index aa74e8c..0000000
--- a/vendor/symfony/console/Tests/Fixtures/input_argument_4.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-  <info>argument_name</info>  multiline
-                              argument description
diff --git a/vendor/symfony/console/Tests/Fixtures/input_argument_4.xml b/vendor/symfony/console/Tests/Fixtures/input_argument_4.xml
deleted file mode 100644
index 5ca135e..0000000
--- a/vendor/symfony/console/Tests/Fixtures/input_argument_4.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<argument name="argument_name" is_required="1" is_array="0">
-  <description>multiline
-argument description</description>
-  <defaults/>
-</argument>
diff --git a/vendor/symfony/console/Tests/Fixtures/input_definition_1.json b/vendor/symfony/console/Tests/Fixtures/input_definition_1.json
deleted file mode 100644
index c7a7d83..0000000
--- a/vendor/symfony/console/Tests/Fixtures/input_definition_1.json
+++ /dev/null
@@ -1 +0,0 @@
-{"arguments":[],"options":[]}
diff --git a/vendor/symfony/console/Tests/Fixtures/input_definition_1.md b/vendor/symfony/console/Tests/Fixtures/input_definition_1.md
deleted file mode 100644
index e69de29..0000000
diff --git a/vendor/symfony/console/Tests/Fixtures/input_definition_1.txt b/vendor/symfony/console/Tests/Fixtures/input_definition_1.txt
deleted file mode 100644
index e69de29..0000000
diff --git a/vendor/symfony/console/Tests/Fixtures/input_definition_1.xml b/vendor/symfony/console/Tests/Fixtures/input_definition_1.xml
deleted file mode 100644
index b5481ce..0000000
--- a/vendor/symfony/console/Tests/Fixtures/input_definition_1.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<definition>
-  <arguments/>
-  <options/>
-</definition>
diff --git a/vendor/symfony/console/Tests/Fixtures/input_definition_2.json b/vendor/symfony/console/Tests/Fixtures/input_definition_2.json
deleted file mode 100644
index 9964a55..0000000
--- a/vendor/symfony/console/Tests/Fixtures/input_definition_2.json
+++ /dev/null
@@ -1 +0,0 @@
-{"arguments":{"argument_name":{"name":"argument_name","is_required":true,"is_array":false,"description":"","default":null}},"options":[]}
diff --git a/vendor/symfony/console/Tests/Fixtures/input_definition_2.md b/vendor/symfony/console/Tests/Fixtures/input_definition_2.md
deleted file mode 100644
index 923191c..0000000
--- a/vendor/symfony/console/Tests/Fixtures/input_definition_2.md
+++ /dev/null
@@ -1,9 +0,0 @@
-### Arguments:
-
-**argument_name:**
-
-* Name: argument_name
-* Is required: yes
-* Is array: no
-* Description: <none>
-* Default: `NULL`
diff --git a/vendor/symfony/console/Tests/Fixtures/input_definition_2.txt b/vendor/symfony/console/Tests/Fixtures/input_definition_2.txt
deleted file mode 100644
index 73b0f30..0000000
--- a/vendor/symfony/console/Tests/Fixtures/input_definition_2.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-<comment>Arguments:</comment>
-  <info>argument_name</info>
diff --git a/vendor/symfony/console/Tests/Fixtures/input_definition_2.xml b/vendor/symfony/console/Tests/Fixtures/input_definition_2.xml
deleted file mode 100644
index 102efc1..0000000
--- a/vendor/symfony/console/Tests/Fixtures/input_definition_2.xml
+++ /dev/null
@@ -1,10 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<definition>
-  <arguments>
-    <argument name="argument_name" is_required="1" is_array="0">
-      <description></description>
-      <defaults/>
-    </argument>
-  </arguments>
-  <options/>
-</definition>
diff --git a/vendor/symfony/console/Tests/Fixtures/input_definition_3.json b/vendor/symfony/console/Tests/Fixtures/input_definition_3.json
deleted file mode 100644
index 6a86056..0000000
--- a/vendor/symfony/console/Tests/Fixtures/input_definition_3.json
+++ /dev/null
@@ -1 +0,0 @@
-{"arguments":[],"options":{"option_name":{"name":"--option_name","shortcut":"-o","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"","default":false}}}
diff --git a/vendor/symfony/console/Tests/Fixtures/input_definition_3.md b/vendor/symfony/console/Tests/Fixtures/input_definition_3.md
deleted file mode 100644
index 40fd7b0..0000000
--- a/vendor/symfony/console/Tests/Fixtures/input_definition_3.md
+++ /dev/null
@@ -1,11 +0,0 @@
-### Options:
-
-**option_name:**
-
-* Name: `--option_name`
-* Shortcut: `-o`
-* Accept value: no
-* Is value required: no
-* Is multiple: no
-* Description: <none>
-* Default: `false`
diff --git a/vendor/symfony/console/Tests/Fixtures/input_definition_3.txt b/vendor/symfony/console/Tests/Fixtures/input_definition_3.txt
deleted file mode 100644
index c02766f..0000000
--- a/vendor/symfony/console/Tests/Fixtures/input_definition_3.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-<comment>Options:</comment>
-  <info>-o, --option_name</info>
diff --git a/vendor/symfony/console/Tests/Fixtures/input_definition_3.xml b/vendor/symfony/console/Tests/Fixtures/input_definition_3.xml
deleted file mode 100644
index bc95151..0000000
--- a/vendor/symfony/console/Tests/Fixtures/input_definition_3.xml
+++ /dev/null
@@ -1,9 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<definition>
-  <arguments/>
-  <options>
-    <option name="--option_name" shortcut="-o" accept_value="0" is_value_required="0" is_multiple="0">
-      <description></description>
-    </option>
-  </options>
-</definition>
diff --git a/vendor/symfony/console/Tests/Fixtures/input_definition_4.json b/vendor/symfony/console/Tests/Fixtures/input_definition_4.json
deleted file mode 100644
index c5a0019..0000000
--- a/vendor/symfony/console/Tests/Fixtures/input_definition_4.json
+++ /dev/null
@@ -1 +0,0 @@
-{"arguments":{"argument_name":{"name":"argument_name","is_required":true,"is_array":false,"description":"","default":null}},"options":{"option_name":{"name":"--option_name","shortcut":"-o","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"","default":false}}}
diff --git a/vendor/symfony/console/Tests/Fixtures/input_definition_4.md b/vendor/symfony/console/Tests/Fixtures/input_definition_4.md
deleted file mode 100644
index a31feea..0000000
--- a/vendor/symfony/console/Tests/Fixtures/input_definition_4.md
+++ /dev/null
@@ -1,21 +0,0 @@
-### Arguments:
-
-**argument_name:**
-
-* Name: argument_name
-* Is required: yes
-* Is array: no
-* Description: <none>
-* Default: `NULL`
-
-### Options:
-
-**option_name:**
-
-* Name: `--option_name`
-* Shortcut: `-o`
-* Accept value: no
-* Is value required: no
-* Is multiple: no
-* Description: <none>
-* Default: `false`
diff --git a/vendor/symfony/console/Tests/Fixtures/input_definition_4.txt b/vendor/symfony/console/Tests/Fixtures/input_definition_4.txt
deleted file mode 100644
index 63aa81d..0000000
--- a/vendor/symfony/console/Tests/Fixtures/input_definition_4.txt
+++ /dev/null
@@ -1,5 +0,0 @@
-<comment>Arguments:</comment>
-  <info>argument_name</info>      
-
-<comment>Options:</comment>
-  <info>-o, --option_name</info>
diff --git a/vendor/symfony/console/Tests/Fixtures/input_definition_4.xml b/vendor/symfony/console/Tests/Fixtures/input_definition_4.xml
deleted file mode 100644
index cffceec..0000000
--- a/vendor/symfony/console/Tests/Fixtures/input_definition_4.xml
+++ /dev/null
@@ -1,14 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<definition>
-  <arguments>
-    <argument name="argument_name" is_required="1" is_array="0">
-      <description></description>
-      <defaults/>
-    </argument>
-  </arguments>
-  <options>
-    <option name="--option_name" shortcut="-o" accept_value="0" is_value_required="0" is_multiple="0">
-      <description></description>
-    </option>
-  </options>
-</definition>
diff --git a/vendor/symfony/console/Tests/Fixtures/input_option_1.json b/vendor/symfony/console/Tests/Fixtures/input_option_1.json
deleted file mode 100644
index 60c5b56..0000000
--- a/vendor/symfony/console/Tests/Fixtures/input_option_1.json
+++ /dev/null
@@ -1 +0,0 @@
-{"name":"--option_name","shortcut":"-o","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"","default":false}
diff --git a/vendor/symfony/console/Tests/Fixtures/input_option_1.md b/vendor/symfony/console/Tests/Fixtures/input_option_1.md
deleted file mode 100644
index 6f9e9a7..0000000
--- a/vendor/symfony/console/Tests/Fixtures/input_option_1.md
+++ /dev/null
@@ -1,9 +0,0 @@
-**option_name:**
-
-* Name: `--option_name`
-* Shortcut: `-o`
-* Accept value: no
-* Is value required: no
-* Is multiple: no
-* Description: <none>
-* Default: `false`
diff --git a/vendor/symfony/console/Tests/Fixtures/input_option_1.txt b/vendor/symfony/console/Tests/Fixtures/input_option_1.txt
deleted file mode 100644
index 3a5e4ee..0000000
--- a/vendor/symfony/console/Tests/Fixtures/input_option_1.txt
+++ /dev/null
@@ -1 +0,0 @@
-  <info>-o, --option_name</info>
diff --git a/vendor/symfony/console/Tests/Fixtures/input_option_1.xml b/vendor/symfony/console/Tests/Fixtures/input_option_1.xml
deleted file mode 100644
index 8a64ea6..0000000
--- a/vendor/symfony/console/Tests/Fixtures/input_option_1.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<option name="--option_name" shortcut="-o" accept_value="0" is_value_required="0" is_multiple="0">
-  <description></description>
-</option>
diff --git a/vendor/symfony/console/Tests/Fixtures/input_option_2.json b/vendor/symfony/console/Tests/Fixtures/input_option_2.json
deleted file mode 100644
index 04e4228..0000000
--- a/vendor/symfony/console/Tests/Fixtures/input_option_2.json
+++ /dev/null
@@ -1 +0,0 @@
-{"name":"--option_name","shortcut":"-o","accept_value":true,"is_value_required":false,"is_multiple":false,"description":"option description","default":"default_value"}
diff --git a/vendor/symfony/console/Tests/Fixtures/input_option_2.md b/vendor/symfony/console/Tests/Fixtures/input_option_2.md
deleted file mode 100644
index 634ac0b..0000000
--- a/vendor/symfony/console/Tests/Fixtures/input_option_2.md
+++ /dev/null
@@ -1,9 +0,0 @@
-**option_name:**
-
-* Name: `--option_name`
-* Shortcut: `-o`
-* Accept value: yes
-* Is value required: no
-* Is multiple: no
-* Description: option description
-* Default: `'default_value'`
diff --git a/vendor/symfony/console/Tests/Fixtures/input_option_2.txt b/vendor/symfony/console/Tests/Fixtures/input_option_2.txt
deleted file mode 100644
index 1009eff..0000000
--- a/vendor/symfony/console/Tests/Fixtures/input_option_2.txt
+++ /dev/null
@@ -1 +0,0 @@
-  <info>-o, --option_name[=OPTION_NAME]</info>  option description<comment> [default: "default_value"]</comment>
diff --git a/vendor/symfony/console/Tests/Fixtures/input_option_2.xml b/vendor/symfony/console/Tests/Fixtures/input_option_2.xml
deleted file mode 100644
index 4afac5b..0000000
--- a/vendor/symfony/console/Tests/Fixtures/input_option_2.xml
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<option name="--option_name" shortcut="-o" accept_value="1" is_value_required="0" is_multiple="0">
-  <description>option description</description>
-  <defaults>
-    <default>default_value</default>
-  </defaults>
-</option>
diff --git a/vendor/symfony/console/Tests/Fixtures/input_option_3.json b/vendor/symfony/console/Tests/Fixtures/input_option_3.json
deleted file mode 100644
index c1ea120..0000000
--- a/vendor/symfony/console/Tests/Fixtures/input_option_3.json
+++ /dev/null
@@ -1 +0,0 @@
-{"name":"--option_name","shortcut":"-o","accept_value":true,"is_value_required":true,"is_multiple":false,"description":"option description","default":null}
diff --git a/vendor/symfony/console/Tests/Fixtures/input_option_3.md b/vendor/symfony/console/Tests/Fixtures/input_option_3.md
deleted file mode 100644
index 3428289..0000000
--- a/vendor/symfony/console/Tests/Fixtures/input_option_3.md
+++ /dev/null
@@ -1,9 +0,0 @@
-**option_name:**
-
-* Name: `--option_name`
-* Shortcut: `-o`
-* Accept value: yes
-* Is value required: yes
-* Is multiple: no
-* Description: option description
-* Default: `NULL`
diff --git a/vendor/symfony/console/Tests/Fixtures/input_option_3.txt b/vendor/symfony/console/Tests/Fixtures/input_option_3.txt
deleted file mode 100644
index 947bb65..0000000
--- a/vendor/symfony/console/Tests/Fixtures/input_option_3.txt
+++ /dev/null
@@ -1 +0,0 @@
-  <info>-o, --option_name=OPTION_NAME</info>  option description
diff --git a/vendor/symfony/console/Tests/Fixtures/input_option_3.xml b/vendor/symfony/console/Tests/Fixtures/input_option_3.xml
deleted file mode 100644
index dcc0631..0000000
--- a/vendor/symfony/console/Tests/Fixtures/input_option_3.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<option name="--option_name" shortcut="-o" accept_value="1" is_value_required="1" is_multiple="0">
-  <description>option description</description>
-  <defaults/>
-</option>
diff --git a/vendor/symfony/console/Tests/Fixtures/input_option_4.json b/vendor/symfony/console/Tests/Fixtures/input_option_4.json
deleted file mode 100644
index 1b671d8..0000000
--- a/vendor/symfony/console/Tests/Fixtures/input_option_4.json
+++ /dev/null
@@ -1 +0,0 @@
-{"name":"--option_name","shortcut":"-o","accept_value":true,"is_value_required":false,"is_multiple":true,"description":"option description","default":[]}
diff --git a/vendor/symfony/console/Tests/Fixtures/input_option_4.md b/vendor/symfony/console/Tests/Fixtures/input_option_4.md
deleted file mode 100644
index 8ffba56..0000000
--- a/vendor/symfony/console/Tests/Fixtures/input_option_4.md
+++ /dev/null
@@ -1,9 +0,0 @@
-**option_name:**
-
-* Name: `--option_name`
-* Shortcut: `-o`
-* Accept value: yes
-* Is value required: no
-* Is multiple: yes
-* Description: option description
-* Default: `array ()`
diff --git a/vendor/symfony/console/Tests/Fixtures/input_option_4.txt b/vendor/symfony/console/Tests/Fixtures/input_option_4.txt
deleted file mode 100644
index 27edf77..0000000
--- a/vendor/symfony/console/Tests/Fixtures/input_option_4.txt
+++ /dev/null
@@ -1 +0,0 @@
-  <info>-o, --option_name[=OPTION_NAME]</info>  option description<comment> (multiple values allowed)</comment>
diff --git a/vendor/symfony/console/Tests/Fixtures/input_option_4.xml b/vendor/symfony/console/Tests/Fixtures/input_option_4.xml
deleted file mode 100644
index 5e2418b..0000000
--- a/vendor/symfony/console/Tests/Fixtures/input_option_4.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<option name="--option_name" shortcut="-o" accept_value="1" is_value_required="0" is_multiple="1">
-  <description>option description</description>
-  <defaults/>
-</option>
diff --git a/vendor/symfony/console/Tests/Fixtures/input_option_5.json b/vendor/symfony/console/Tests/Fixtures/input_option_5.json
deleted file mode 100644
index 35a1405..0000000
--- a/vendor/symfony/console/Tests/Fixtures/input_option_5.json
+++ /dev/null
@@ -1 +0,0 @@
-{"name":"--option_name","shortcut":"-o","accept_value":true,"is_value_required":true,"is_multiple":false,"description":"multiline option description","default":null}
diff --git a/vendor/symfony/console/Tests/Fixtures/input_option_5.md b/vendor/symfony/console/Tests/Fixtures/input_option_5.md
deleted file mode 100644
index 82f51ca..0000000
--- a/vendor/symfony/console/Tests/Fixtures/input_option_5.md
+++ /dev/null
@@ -1,10 +0,0 @@
-**option_name:**
-
-* Name: `--option_name`
-* Shortcut: `-o`
-* Accept value: yes
-* Is value required: yes
-* Is multiple: no
-* Description: multiline
-  option description
-* Default: `NULL`
diff --git a/vendor/symfony/console/Tests/Fixtures/input_option_5.txt b/vendor/symfony/console/Tests/Fixtures/input_option_5.txt
deleted file mode 100644
index 4368883..0000000
--- a/vendor/symfony/console/Tests/Fixtures/input_option_5.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-  <info>-o, --option_name=OPTION_NAME</info>  multiline
-                                              option description
diff --git a/vendor/symfony/console/Tests/Fixtures/input_option_5.xml b/vendor/symfony/console/Tests/Fixtures/input_option_5.xml
deleted file mode 100644
index 90040cc..0000000
--- a/vendor/symfony/console/Tests/Fixtures/input_option_5.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<option name="--option_name" shortcut="-o" accept_value="1" is_value_required="1" is_multiple="0">
-  <description>multiline
-option description</description>
-  <defaults/>
-</option>
diff --git a/vendor/symfony/console/Tests/Fixtures/input_option_6.json b/vendor/symfony/console/Tests/Fixtures/input_option_6.json
deleted file mode 100644
index d84e872..0000000
--- a/vendor/symfony/console/Tests/Fixtures/input_option_6.json
+++ /dev/null
@@ -1 +0,0 @@
-{"name":"--option_name","shortcut":"-o|-O","accept_value":true,"is_value_required":true,"is_multiple":false,"description":"option with multiple shortcuts","default":null}
diff --git a/vendor/symfony/console/Tests/Fixtures/input_option_6.md b/vendor/symfony/console/Tests/Fixtures/input_option_6.md
deleted file mode 100644
index ed1ea1c..0000000
--- a/vendor/symfony/console/Tests/Fixtures/input_option_6.md
+++ /dev/null
@@ -1,9 +0,0 @@
-**option_name:**
-
-* Name: `--option_name`
-* Shortcut: `-o|-O`
-* Accept value: yes
-* Is value required: yes
-* Is multiple: no
-* Description: option with multiple shortcuts
-* Default: `NULL`
diff --git a/vendor/symfony/console/Tests/Fixtures/input_option_6.txt b/vendor/symfony/console/Tests/Fixtures/input_option_6.txt
deleted file mode 100644
index 0e6c975..0000000
--- a/vendor/symfony/console/Tests/Fixtures/input_option_6.txt
+++ /dev/null
@@ -1 +0,0 @@
-  <info>-o|O, --option_name=OPTION_NAME</info>  option with multiple shortcuts
diff --git a/vendor/symfony/console/Tests/Fixtures/input_option_6.xml b/vendor/symfony/console/Tests/Fixtures/input_option_6.xml
deleted file mode 100644
index 06126a2..0000000
--- a/vendor/symfony/console/Tests/Fixtures/input_option_6.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<option name="--option_name" shortcut="-o" shortcuts="-o|-O" accept_value="1" is_value_required="1" is_multiple="0">
-  <description>option with multiple shortcuts</description>
-  <defaults/>
-</option>
diff --git a/vendor/symfony/console/Tests/Formatter/OutputFormatterStyleStackTest.php b/vendor/symfony/console/Tests/Formatter/OutputFormatterStyleStackTest.php
deleted file mode 100644
index 774df26..0000000
--- a/vendor/symfony/console/Tests/Formatter/OutputFormatterStyleStackTest.php
+++ /dev/null
@@ -1,70 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Console\Tests\Formatter;
-
-use Symfony\Component\Console\Formatter\OutputFormatterStyleStack;
-use Symfony\Component\Console\Formatter\OutputFormatterStyle;
-
-class OutputFormatterStyleStackTest extends \PHPUnit_Framework_TestCase
-{
-    public function testPush()
-    {
-        $stack = new OutputFormatterStyleStack();
-        $stack->push($s1 = new OutputFormatterStyle('white', 'black'));
-        $stack->push($s2 = new OutputFormatterStyle('yellow', 'blue'));
-
-        $this->assertEquals($s2, $stack->getCurrent());
-
-        $stack->push($s3 = new OutputFormatterStyle('green', 'red'));
-
-        $this->assertEquals($s3, $stack->getCurrent());
-    }
-
-    public function testPop()
-    {
-        $stack = new OutputFormatterStyleStack();
-        $stack->push($s1 = new OutputFormatterStyle('white', 'black'));
-        $stack->push($s2 = new OutputFormatterStyle('yellow', 'blue'));
-
-        $this->assertEquals($s2, $stack->pop());
-        $this->assertEquals($s1, $stack->pop());
-    }
-
-    public function testPopEmpty()
-    {
-        $stack = new OutputFormatterStyleStack();
-        $style = new OutputFormatterStyle();
-
-        $this->assertEquals($style, $stack->pop());
-    }
-
-    public function testPopNotLast()
-    {
-        $stack = new OutputFormatterStyleStack();
-        $stack->push($s1 = new OutputFormatterStyle('white', 'black'));
-        $stack->push($s2 = new OutputFormatterStyle('yellow', 'blue'));
-        $stack->push($s3 = new OutputFormatterStyle('green', 'red'));
-
-        $this->assertEquals($s2, $stack->pop($s2));
-        $this->assertEquals($s1, $stack->pop());
-    }
-
-    /**
-     * @expectedException \InvalidArgumentException
-     */
-    public function testInvalidPop()
-    {
-        $stack = new OutputFormatterStyleStack();
-        $stack->push(new OutputFormatterStyle('white', 'black'));
-        $stack->pop(new OutputFormatterStyle('yellow', 'blue'));
-    }
-}
diff --git a/vendor/symfony/console/Tests/Formatter/OutputFormatterStyleTest.php b/vendor/symfony/console/Tests/Formatter/OutputFormatterStyleTest.php
deleted file mode 100644
index 0abfb3c..0000000
--- a/vendor/symfony/console/Tests/Formatter/OutputFormatterStyleTest.php
+++ /dev/null
@@ -1,99 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Console\Tests\Formatter;
-
-use Symfony\Component\Console\Formatter\OutputFormatterStyle;
-
-class OutputFormatterStyleTest extends \PHPUnit_Framework_TestCase
-{
-    public function testConstructor()
-    {
-        $style = new OutputFormatterStyle('green', 'black', array('bold', 'underscore'));
-        $this->assertEquals("\033[32;40;1;4mfoo\033[39;49;22;24m", $style->apply('foo'));
-
-        $style = new OutputFormatterStyle('red', null, array('blink'));
-        $this->assertEquals("\033[31;5mfoo\033[39;25m", $style->apply('foo'));
-
-        $style = new OutputFormatterStyle(null, 'white');
-        $this->assertEquals("\033[47mfoo\033[49m", $style->apply('foo'));
-    }
-
-    public function testForeground()
-    {
-        $style = new OutputFormatterStyle();
-
-        $style->setForeground('black');
-        $this->assertEquals("\033[30mfoo\033[39m", $style->apply('foo'));
-
-        $style->setForeground('blue');
-        $this->assertEquals("\033[34mfoo\033[39m", $style->apply('foo'));
-
-        $style->setForeground('default');
-        $this->assertEquals("\033[39mfoo\033[39m", $style->apply('foo'));
-
-        $this->setExpectedException('InvalidArgumentException');
-        $style->setForeground('undefined-color');
-    }
-
-    public function testBackground()
-    {
-        $style = new OutputFormatterStyle();
-
-        $style->setBackground('black');
-        $this->assertEquals("\033[40mfoo\033[49m", $style->apply('foo'));
-
-        $style->setBackground('yellow');
-        $this->assertEquals("\033[43mfoo\033[49m", $style->apply('foo'));
-
-        $style->setBackground('default');
-        $this->assertEquals("\033[49mfoo\033[49m", $style->apply('foo'));
-
-        $this->setExpectedException('InvalidArgumentException');
-        $style->setBackground('undefined-color');
-    }
-
-    public function testOptions()
-    {
-        $style = new OutputFormatterStyle();
-
-        $style->setOptions(array('reverse', 'conceal'));
-        $this->assertEquals("\033[7;8mfoo\033[27;28m", $style->apply('foo'));
-
-        $style->setOption('bold');
-        $this->assertEquals("\033[7;8;1mfoo\033[27;28;22m", $style->apply('foo'));
-
-        $style->unsetOption('reverse');
-        $this->assertEquals("\033[8;1mfoo\033[28;22m", $style->apply('foo'));
-
-        $style->setOption('bold');
-        $this->assertEquals("\033[8;1mfoo\033[28;22m", $style->apply('foo'));
-
-        $style->setOptions(array('bold'));
-        $this->assertEquals("\033[1mfoo\033[22m", $style->apply('foo'));
-
-        try {
-            $style->setOption('foo');
-            $this->fail('->setOption() throws an \InvalidArgumentException when the option does not exist in the available options');
-        } catch (\Exception $e) {
-            $this->assertInstanceOf('\InvalidArgumentException', $e, '->setOption() throws an \InvalidArgumentException when the option does not exist in the available options');
-            $this->assertContains('Invalid option specified: "foo"', $e->getMessage(), '->setOption() throws an \InvalidArgumentException when the option does not exist in the available options');
-        }
-
-        try {
-            $style->unsetOption('foo');
-            $this->fail('->unsetOption() throws an \InvalidArgumentException when the option does not exist in the available options');
-        } catch (\Exception $e) {
-            $this->assertInstanceOf('\InvalidArgumentException', $e, '->unsetOption() throws an \InvalidArgumentException when the option does not exist in the available options');
-            $this->assertContains('Invalid option specified: "foo"', $e->getMessage(), '->unsetOption() throws an \InvalidArgumentException when the option does not exist in the available options');
-        }
-    }
-}
diff --git a/vendor/symfony/console/Tests/Formatter/OutputFormatterTest.php b/vendor/symfony/console/Tests/Formatter/OutputFormatterTest.php
deleted file mode 100644
index 510a4e7..0000000
--- a/vendor/symfony/console/Tests/Formatter/OutputFormatterTest.php
+++ /dev/null
@@ -1,273 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Console\Tests\Formatter;
-
-use Symfony\Component\Console\Formatter\OutputFormatter;
-use Symfony\Component\Console\Formatter\OutputFormatterStyle;
-
-class OutputFormatterTest extends \PHPUnit_Framework_TestCase
-{
-    public function testEmptyTag()
-    {
-        $formatter = new OutputFormatter(true);
-        $this->assertEquals('foo<>bar', $formatter->format('foo<>bar'));
-    }
-
-    public function testLGCharEscaping()
-    {
-        $formatter = new OutputFormatter(true);
-
-        $this->assertEquals('foo<bar', $formatter->format('foo\\<bar'));
-        $this->assertEquals('<info>some info</info>', $formatter->format('\\<info>some info\\</info>'));
-        $this->assertEquals('\\<info>some info\\</info>', OutputFormatter::escape('<info>some info</info>'));
-
-        $this->assertEquals(
-            "\033[33mSymfony\\Component\\Console does work very well!\033[39m",
-            $formatter->format('<comment>Symfony\Component\Console does work very well!</comment>')
-        );
-    }
-
-    public function testBundledStyles()
-    {
-        $formatter = new OutputFormatter(true);
-
-        $this->assertTrue($formatter->hasStyle('error'));
-        $this->assertTrue($formatter->hasStyle('info'));
-        $this->assertTrue($formatter->hasStyle('comment'));
-        $this->assertTrue($formatter->hasStyle('question'));
-
-        $this->assertEquals(
-            "\033[37;41msome error\033[39;49m",
-            $formatter->format('<error>some error</error>')
-        );
-        $this->assertEquals(
-            "\033[32msome info\033[39m",
-            $formatter->format('<info>some info</info>')
-        );
-        $this->assertEquals(
-            "\033[33msome comment\033[39m",
-            $formatter->format('<comment>some comment</comment>')
-        );
-        $this->assertEquals(
-            "\033[30;46msome question\033[39;49m",
-            $formatter->format('<question>some question</question>')
-        );
-    }
-
-    public function testNestedStyles()
-    {
-        $formatter = new OutputFormatter(true);
-
-        $this->assertEquals(
-            "\033[37;41msome \033[39;49m\033[32msome info\033[39m\033[37;41m error\033[39;49m",
-            $formatter->format('<error>some <info>some info</info> error</error>')
-        );
-    }
-
-    public function testAdjacentStyles()
-    {
-        $formatter = new OutputFormatter(true);
-
-        $this->assertEquals(
-            "\033[37;41msome error\033[39;49m\033[32msome info\033[39m",
-            $formatter->format('<error>some error</error><info>some info</info>')
-        );
-    }
-
-    public function testStyleMatchingNotGreedy()
-    {
-        $formatter = new OutputFormatter(true);
-
-        $this->assertEquals(
-            "(\033[32m>=2.0,<2.3\033[39m)",
-            $formatter->format('(<info>>=2.0,<2.3</info>)')
-        );
-    }
-
-    public function testStyleEscaping()
-    {
-        $formatter = new OutputFormatter(true);
-
-        $this->assertEquals(
-            "(\033[32mz>=2.0,<a2.3\033[39m)",
-            $formatter->format('(<info>'.$formatter->escape('z>=2.0,<a2.3').'</info>)')
-        );
-
-        $this->assertEquals(
-            "\033[32m<error>some error</error>\033[39m",
-            $formatter->format('<info>'.$formatter->escape('<error>some error</error>').'</info>')
-        );
-    }
-
-    public function testDeepNestedStyles()
-    {
-        $formatter = new OutputFormatter(true);
-
-        $this->assertEquals(
-            "\033[37;41merror\033[39;49m\033[32minfo\033[39m\033[33mcomment\033[39m\033[37;41merror\033[39;49m",
-            $formatter->format('<error>error<info>info<comment>comment</info>error</error>')
-        );
-    }
-
-    public function testNewStyle()
-    {
-        $formatter = new OutputFormatter(true);
-
-        $style = new OutputFormatterStyle('blue', 'white');
-        $formatter->setStyle('test', $style);
-
-        $this->assertEquals($style, $formatter->getStyle('test'));
-        $this->assertNotEquals($style, $formatter->getStyle('info'));
-
-        $style = new OutputFormatterStyle('blue', 'white');
-        $formatter->setStyle('b', $style);
-
-        $this->assertEquals("\033[34;47msome \033[39;49m\033[34;47mcustom\033[39;49m\033[34;47m msg\033[39;49m", $formatter->format('<test>some <b>custom</b> msg</test>'));
-    }
-
-    public function testRedefineStyle()
-    {
-        $formatter = new OutputFormatter(true);
-
-        $style = new OutputFormatterStyle('blue', 'white');
-        $formatter->setStyle('info', $style);
-
-        $this->assertEquals("\033[34;47msome custom msg\033[39;49m", $formatter->format('<info>some custom msg</info>'));
-    }
-
-    public function testInlineStyle()
-    {
-        $formatter = new OutputFormatter(true);
-
-        $this->assertEquals("\033[34;41msome text\033[39;49m", $formatter->format('<fg=blue;bg=red>some text</>'));
-        $this->assertEquals("\033[34;41msome text\033[39;49m", $formatter->format('<fg=blue;bg=red>some text</fg=blue;bg=red>'));
-    }
-
-    public function testNonStyleTag()
-    {
-        $formatter = new OutputFormatter(true);
-
-        $this->assertEquals("\033[32msome \033[39m\033[32m<tag>\033[39m\033[32m \033[39m\033[32m<setting=value>\033[39m\033[32m styled \033[39m\033[32m<p>\033[39m\033[32msingle-char tag\033[39m\033[32m</p>\033[39m", $formatter->format('<info>some <tag> <setting=value> styled <p>single-char tag</p></info>'));
-    }
-
-    public function testFormatLongString()
-    {
-        $formatter = new OutputFormatter(true);
-        $long = str_repeat('\\', 14000);
-        $this->assertEquals("\033[37;41msome error\033[39;49m".$long, $formatter->format('<error>some error</error>'.$long));
-    }
-
-    public function testFormatToStringObject()
-    {
-        $formatter = new OutputFormatter(false);
-        $this->assertEquals(
-            'some info', $formatter->format(new TableCell())
-        );
-    }
-
-    public function testNotDecoratedFormatter()
-    {
-        $formatter = new OutputFormatter(false);
-
-        $this->assertTrue($formatter->hasStyle('error'));
-        $this->assertTrue($formatter->hasStyle('info'));
-        $this->assertTrue($formatter->hasStyle('comment'));
-        $this->assertTrue($formatter->hasStyle('question'));
-
-        $this->assertEquals(
-            'some error', $formatter->format('<error>some error</error>')
-        );
-        $this->assertEquals(
-            'some info', $formatter->format('<info>some info</info>')
-        );
-        $this->assertEquals(
-            'some comment', $formatter->format('<comment>some comment</comment>')
-        );
-        $this->assertEquals(
-            'some question', $formatter->format('<question>some question</question>')
-        );
-
-        $formatter->setDecorated(true);
-
-        $this->assertEquals(
-            "\033[37;41msome error\033[39;49m", $formatter->format('<error>some error</error>')
-        );
-        $this->assertEquals(
-            "\033[32msome info\033[39m", $formatter->format('<info>some info</info>')
-        );
-        $this->assertEquals(
-            "\033[33msome comment\033[39m", $formatter->format('<comment>some comment</comment>')
-        );
-        $this->assertEquals(
-            "\033[30;46msome question\033[39;49m", $formatter->format('<question>some question</question>')
-        );
-    }
-
-    public function testContentWithLineBreaks()
-    {
-        $formatter = new OutputFormatter(true);
-
-        $this->assertEquals(<<<EOF
-\033[32m
-some text\033[39m
-EOF
-            , $formatter->format(<<<EOF
-<info>
-some text</info>
-EOF
-        ));
-
-        $this->assertEquals(<<<EOF
-\033[32msome text
-\033[39m
-EOF
-            , $formatter->format(<<<EOF
-<info>some text
-</info>
-EOF
-        ));
-
-        $this->assertEquals(<<<EOF
-\033[32m
-some text
-\033[39m
-EOF
-            , $formatter->format(<<<EOF
-<info>
-some text
-</info>
-EOF
-        ));
-
-        $this->assertEquals(<<<EOF
-\033[32m
-some text
-more text
-\033[39m
-EOF
-            , $formatter->format(<<<EOF
-<info>
-some text
-more text
-</info>
-EOF
-        ));
-    }
-}
-
-class TableCell
-{
-    public function __toString()
-    {
-        return '<info>some info</info>';
-    }
-}
diff --git a/vendor/symfony/console/Tests/Helper/FormatterHelperTest.php b/vendor/symfony/console/Tests/Helper/FormatterHelperTest.php
deleted file mode 100644
index e332774..0000000
--- a/vendor/symfony/console/Tests/Helper/FormatterHelperTest.php
+++ /dev/null
@@ -1,99 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Console\Tests\Helper;
-
-use Symfony\Component\Console\Helper\FormatterHelper;
-
-class FormatterHelperTest extends \PHPUnit_Framework_TestCase
-{
-    public function testFormatSection()
-    {
-        $formatter = new FormatterHelper();
-
-        $this->assertEquals(
-            '<info>[cli]</info> Some text to display',
-            $formatter->formatSection('cli', 'Some text to display'),
-            '::formatSection() formats a message in a section'
-        );
-    }
-
-    public function testFormatBlock()
-    {
-        $formatter = new FormatterHelper();
-
-        $this->assertEquals(
-            '<error> Some text to display </error>',
-            $formatter->formatBlock('Some text to display', 'error'),
-            '::formatBlock() formats a message in a block'
-        );
-
-        $this->assertEquals(
-            '<error> Some text to display </error>'."\n".
-            '<error> foo bar              </error>',
-            $formatter->formatBlock(array('Some text to display', 'foo bar'), 'error'),
-            '::formatBlock() formats a message in a block'
-        );
-
-        $this->assertEquals(
-            '<error>                        </error>'."\n".
-            '<error>  Some text to display  </error>'."\n".
-            '<error>                        </error>',
-            $formatter->formatBlock('Some text to display', 'error', true),
-            '::formatBlock() formats a message in a block'
-        );
-    }
-
-    public function testFormatBlockWithDiacriticLetters()
-    {
-        if (!function_exists('mb_detect_encoding')) {
-            $this->markTestSkipped('This test requires mbstring to work.');
-        }
-
-        $formatter = new FormatterHelper();
-
-        $this->assertEquals(
-            '<error>                       </error>'."\n".
-            '<error>  Du texte à afficher  </error>'."\n".
-            '<error>                       </error>',
-            $formatter->formatBlock('Du texte à afficher', 'error', true),
-            '::formatBlock() formats a message in a block'
-        );
-    }
-
-    public function testFormatBlockWithDoubleWidthDiacriticLetters()
-    {
-        if (!extension_loaded('mbstring')) {
-            $this->markTestSkipped('This test requires mbstring to work.');
-        }
-        $formatter = new FormatterHelper();
-        $this->assertEquals(
-            '<error>                    </error>'."\n".
-            '<error>  表示するテキスト  </error>'."\n".
-            '<error>                    </error>',
-            $formatter->formatBlock('表示するテキスト', 'error', true),
-            '::formatBlock() formats a message in a block'
-        );
-    }
-
-    public function testFormatBlockLGEscaping()
-    {
-        $formatter = new FormatterHelper();
-
-        $this->assertEquals(
-            '<error>                            </error>'."\n".
-            '<error>  \<info>some info\</info>  </error>'."\n".
-            '<error>                            </error>',
-            $formatter->formatBlock('<info>some info</info>', 'error', true),
-            '::formatBlock() escapes \'<\' chars'
-        );
-    }
-}
diff --git a/vendor/symfony/console/Tests/Helper/HelperSetTest.php b/vendor/symfony/console/Tests/Helper/HelperSetTest.php
deleted file mode 100644
index bf58a45..0000000
--- a/vendor/symfony/console/Tests/Helper/HelperSetTest.php
+++ /dev/null
@@ -1,153 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Console\Tests\Helper;
-
-use Symfony\Component\Console\Helper\HelperSet;
-use Symfony\Component\Console\Command\Command;
-
-class HelperSetTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @covers \Symfony\Component\Console\Helper\HelperSet::__construct
-     */
-    public function testConstructor()
-    {
-        $mock_helper = $this->getGenericMockHelper('fake_helper');
-        $helperset = new HelperSet(array('fake_helper_alias' => $mock_helper));
-
-        $this->assertEquals($mock_helper, $helperset->get('fake_helper_alias'), '__construct sets given helper to helpers');
-        $this->assertTrue($helperset->has('fake_helper_alias'), '__construct sets helper alias for given helper');
-    }
-
-    /**
-     * @covers \Symfony\Component\Console\Helper\HelperSet::set
-     */
-    public function testSet()
-    {
-        $helperset = new HelperSet();
-        $helperset->set($this->getGenericMockHelper('fake_helper', $helperset));
-        $this->assertTrue($helperset->has('fake_helper'), '->set() adds helper to helpers');
-
-        $helperset = new HelperSet();
-        $helperset->set($this->getGenericMockHelper('fake_helper_01', $helperset));
-        $helperset->set($this->getGenericMockHelper('fake_helper_02', $helperset));
-        $this->assertTrue($helperset->has('fake_helper_01'), '->set() will set multiple helpers on consecutive calls');
-        $this->assertTrue($helperset->has('fake_helper_02'), '->set() will set multiple helpers on consecutive calls');
-
-        $helperset = new HelperSet();
-        $helperset->set($this->getGenericMockHelper('fake_helper', $helperset), 'fake_helper_alias');
-        $this->assertTrue($helperset->has('fake_helper'), '->set() adds helper alias when set');
-        $this->assertTrue($helperset->has('fake_helper_alias'), '->set() adds helper alias when set');
-    }
-
-    /**
-     * @covers \Symfony\Component\Console\Helper\HelperSet::has
-     */
-    public function testHas()
-    {
-        $helperset = new HelperSet(array('fake_helper_alias' => $this->getGenericMockHelper('fake_helper')));
-        $this->assertTrue($helperset->has('fake_helper'), '->has() finds set helper');
-        $this->assertTrue($helperset->has('fake_helper_alias'), '->has() finds set helper by alias');
-    }
-
-    /**
-     * @covers \Symfony\Component\Console\Helper\HelperSet::get
-     */
-    public function testGet()
-    {
-        $helper_01 = $this->getGenericMockHelper('fake_helper_01');
-        $helper_02 = $this->getGenericMockHelper('fake_helper_02');
-        $helperset = new HelperSet(array('fake_helper_01_alias' => $helper_01, 'fake_helper_02_alias' => $helper_02));
-        $this->assertEquals($helper_01, $helperset->get('fake_helper_01'), '->get() returns correct helper by name');
-        $this->assertEquals($helper_01, $helperset->get('fake_helper_01_alias'), '->get() returns correct helper by alias');
-        $this->assertEquals($helper_02, $helperset->get('fake_helper_02'), '->get() returns correct helper by name');
-        $this->assertEquals($helper_02, $helperset->get('fake_helper_02_alias'), '->get() returns correct helper by alias');
-
-        $helperset = new HelperSet();
-        try {
-            $helperset->get('foo');
-            $this->fail('->get() throws \InvalidArgumentException when helper not found');
-        } catch (\Exception $e) {
-            $this->assertInstanceOf('\InvalidArgumentException', $e, '->get() throws \InvalidArgumentException when helper not found');
-            $this->assertContains('The helper "foo" is not defined.', $e->getMessage(), '->get() throws \InvalidArgumentException when helper not found');
-        }
-    }
-
-    /**
-     * @covers \Symfony\Component\Console\Helper\HelperSet::setCommand
-     */
-    public function testSetCommand()
-    {
-        $cmd_01 = new Command('foo');
-        $cmd_02 = new Command('bar');
-
-        $helperset = new HelperSet();
-        $helperset->setCommand($cmd_01);
-        $this->assertEquals($cmd_01, $helperset->getCommand(), '->setCommand() stores given command');
-
-        $helperset = new HelperSet();
-        $helperset->setCommand($cmd_01);
-        $helperset->setCommand($cmd_02);
-        $this->assertEquals($cmd_02, $helperset->getCommand(), '->setCommand() overwrites stored command with consecutive calls');
-    }
-
-    /**
-     * @covers \Symfony\Component\Console\Helper\HelperSet::getCommand
-     */
-    public function testGetCommand()
-    {
-        $cmd = new Command('foo');
-        $helperset = new HelperSet();
-        $helperset->setCommand($cmd);
-        $this->assertEquals($cmd, $helperset->getCommand(), '->getCommand() retrieves stored command');
-    }
-
-    /**
-     * @covers \Symfony\Component\Console\Helper\HelperSet::getIterator
-     */
-    public function testIteration()
-    {
-        $helperset = new HelperSet();
-        $helperset->set($this->getGenericMockHelper('fake_helper_01', $helperset));
-        $helperset->set($this->getGenericMockHelper('fake_helper_02', $helperset));
-
-        $helpers = array('fake_helper_01', 'fake_helper_02');
-        $i = 0;
-
-        foreach ($helperset as $helper) {
-            $this->assertEquals($helpers[$i++], $helper->getName());
-        }
-    }
-
-    /**
-     * Create a generic mock for the helper interface. Optionally check for a call to setHelperSet with a specific
-     * helperset instance.
-     *
-     * @param string    $name
-     * @param HelperSet $helperset allows a mock to verify a particular helperset set is being added to the Helper
-     */
-    private function getGenericMockHelper($name, HelperSet $helperset = null)
-    {
-        $mock_helper = $this->getMock('\Symfony\Component\Console\Helper\HelperInterface');
-        $mock_helper->expects($this->any())
-            ->method('getName')
-            ->will($this->returnValue($name));
-
-        if ($helperset) {
-            $mock_helper->expects($this->any())
-                ->method('setHelperSet')
-                ->with($this->equalTo($helperset));
-        }
-
-        return $mock_helper;
-    }
-}
diff --git a/vendor/symfony/console/Tests/Helper/LegacyDialogHelperTest.php b/vendor/symfony/console/Tests/Helper/LegacyDialogHelperTest.php
deleted file mode 100644
index e130cdc..0000000
--- a/vendor/symfony/console/Tests/Helper/LegacyDialogHelperTest.php
+++ /dev/null
@@ -1,195 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Console\Tests\Helper;
-
-use Symfony\Component\Console\Input\ArrayInput;
-use Symfony\Component\Console\Helper\DialogHelper;
-use Symfony\Component\Console\Helper\HelperSet;
-use Symfony\Component\Console\Helper\FormatterHelper;
-use Symfony\Component\Console\Output\StreamOutput;
-
-/**
- * @group legacy
- */
-class LegacyDialogHelperTest extends \PHPUnit_Framework_TestCase
-{
-    public function testSelect()
-    {
-        $dialog = new DialogHelper();
-
-        $helperSet = new HelperSet(array(new FormatterHelper()));
-        $dialog->setHelperSet($helperSet);
-
-        $heroes = array('Superman', 'Batman', 'Spiderman');
-
-        $dialog->setInputStream($this->getInputStream("\n1\n  1  \nFabien\n1\nFabien\n1\n0,2\n 0 , 2  \n\n\n"));
-        $this->assertEquals('2', $dialog->select($this->getOutputStream(), 'What is your favorite superhero?', $heroes, '2'));
-        $this->assertEquals('1', $dialog->select($this->getOutputStream(), 'What is your favorite superhero?', $heroes));
-        $this->assertEquals('1', $dialog->select($this->getOutputStream(), 'What is your favorite superhero?', $heroes));
-        $this->assertEquals('1', $dialog->select($output = $this->getOutputStream(), 'What is your favorite superhero?', $heroes, null, false, 'Input "%s" is not a superhero!', false));
-
-        rewind($output->getStream());
-        $this->assertContains('Input "Fabien" is not a superhero!', stream_get_contents($output->getStream()));
-
-        try {
-            $this->assertEquals('1', $dialog->select($output = $this->getOutputStream(), 'What is your favorite superhero?', $heroes, null, 1));
-            $this->fail();
-        } catch (\InvalidArgumentException $e) {
-            $this->assertEquals('Value "Fabien" is invalid', $e->getMessage());
-        }
-
-        $this->assertEquals(array('1'), $dialog->select($this->getOutputStream(), 'What is your favorite superhero?', $heroes, null, false, 'Input "%s" is not a superhero!', true));
-        $this->assertEquals(array('0', '2'), $dialog->select($this->getOutputStream(), 'What is your favorite superhero?', $heroes, null, false, 'Input "%s" is not a superhero!', true));
-        $this->assertEquals(array('0', '2'), $dialog->select($this->getOutputStream(), 'What is your favorite superhero?', $heroes, null, false, 'Input "%s" is not a superhero!', true));
-        $this->assertEquals(array('0', '1'), $dialog->select($this->getOutputStream(), 'What is your favorite superhero?', $heroes, '0,1', false, 'Input "%s" is not a superhero!', true));
-        $this->assertEquals(array('0', '1'), $dialog->select($this->getOutputStream(), 'What is your favorite superhero?', $heroes, ' 0 , 1 ', false, 'Input "%s" is not a superhero!', true));
-    }
-
-    public function testAsk()
-    {
-        $dialog = new DialogHelper();
-
-        $dialog->setInputStream($this->getInputStream("\n8AM\n"));
-
-        $this->assertEquals('2PM', $dialog->ask($this->getOutputStream(), 'What time is it?', '2PM'));
-        $this->assertEquals('8AM', $dialog->ask($output = $this->getOutputStream(), 'What time is it?', '2PM'));
-
-        rewind($output->getStream());
-        $this->assertEquals('What time is it?', stream_get_contents($output->getStream()));
-    }
-
-    public function testAskWithAutocomplete()
-    {
-        if (!$this->hasSttyAvailable()) {
-            $this->markTestSkipped('`stty` is required to test autocomplete functionality');
-        }
-
-        // Acm<NEWLINE>
-        // Ac<BACKSPACE><BACKSPACE>s<TAB>Test<NEWLINE>
-        // <NEWLINE>
-        // <UP ARROW><UP ARROW><NEWLINE>
-        // <UP ARROW><UP ARROW><UP ARROW><UP ARROW><UP ARROW><TAB>Test<NEWLINE>
-        // <DOWN ARROW><NEWLINE>
-        // S<BACKSPACE><BACKSPACE><DOWN ARROW><DOWN ARROW><NEWLINE>
-        // F00<BACKSPACE><BACKSPACE>oo<TAB><NEWLINE>
-        $inputStream = $this->getInputStream("Acm\nAc\177\177s\tTest\n\n\033[A\033[A\n\033[A\033[A\033[A\033[A\033[A\tTest\n\033[B\nS\177\177\033[B\033[B\nF00\177\177oo\t\n");
-
-        $dialog = new DialogHelper();
-        $dialog->setInputStream($inputStream);
-
-        $bundles = array('AcmeDemoBundle', 'AsseticBundle', 'SecurityBundle', 'FooBundle');
-
-        $this->assertEquals('AcmeDemoBundle', $dialog->ask($this->getOutputStream(), 'Please select a bundle', 'FrameworkBundle', $bundles));
-        $this->assertEquals('AsseticBundleTest', $dialog->ask($this->getOutputStream(), 'Please select a bundle', 'FrameworkBundle', $bundles));
-        $this->assertEquals('FrameworkBundle', $dialog->ask($this->getOutputStream(), 'Please select a bundle', 'FrameworkBundle', $bundles));
-        $this->assertEquals('SecurityBundle', $dialog->ask($this->getOutputStream(), 'Please select a bundle', 'FrameworkBundle', $bundles));
-        $this->assertEquals('FooBundleTest', $dialog->ask($this->getOutputStream(), 'Please select a bundle', 'FrameworkBundle', $bundles));
-        $this->assertEquals('AcmeDemoBundle', $dialog->ask($this->getOutputStream(), 'Please select a bundle', 'FrameworkBundle', $bundles));
-        $this->assertEquals('AsseticBundle', $dialog->ask($this->getOutputStream(), 'Please select a bundle', 'FrameworkBundle', $bundles));
-        $this->assertEquals('FooBundle', $dialog->ask($this->getOutputStream(), 'Please select a bundle', 'FrameworkBundle', $bundles));
-    }
-
-    /**
-     * @group tty
-     */
-    public function testAskHiddenResponse()
-    {
-        if ('\\' === DIRECTORY_SEPARATOR) {
-            $this->markTestSkipped('This test is not supported on Windows');
-        }
-
-        $dialog = new DialogHelper();
-
-        $dialog->setInputStream($this->getInputStream("8AM\n"));
-
-        $this->assertEquals('8AM', $dialog->askHiddenResponse($this->getOutputStream(), 'What time is it?'));
-    }
-
-    public function testAskConfirmation()
-    {
-        $dialog = new DialogHelper();
-
-        $dialog->setInputStream($this->getInputStream("\n\n"));
-        $this->assertTrue($dialog->askConfirmation($this->getOutputStream(), 'Do you like French fries?'));
-        $this->assertFalse($dialog->askConfirmation($this->getOutputStream(), 'Do you like French fries?', false));
-
-        $dialog->setInputStream($this->getInputStream("y\nyes\n"));
-        $this->assertTrue($dialog->askConfirmation($this->getOutputStream(), 'Do you like French fries?', false));
-        $this->assertTrue($dialog->askConfirmation($this->getOutputStream(), 'Do you like French fries?', false));
-
-        $dialog->setInputStream($this->getInputStream("n\nno\n"));
-        $this->assertFalse($dialog->askConfirmation($this->getOutputStream(), 'Do you like French fries?', true));
-        $this->assertFalse($dialog->askConfirmation($this->getOutputStream(), 'Do you like French fries?', true));
-    }
-
-    public function testAskAndValidate()
-    {
-        $dialog = new DialogHelper();
-        $helperSet = new HelperSet(array(new FormatterHelper()));
-        $dialog->setHelperSet($helperSet);
-
-        $question = 'What color was the white horse of Henry IV?';
-        $error = 'This is not a color!';
-        $validator = function ($color) use ($error) {
-            if (!in_array($color, array('white', 'black'))) {
-                throw new \InvalidArgumentException($error);
-            }
-
-            return $color;
-        };
-
-        $dialog->setInputStream($this->getInputStream("\nblack\n"));
-        $this->assertEquals('white', $dialog->askAndValidate($this->getOutputStream(), $question, $validator, 2, 'white'));
-        $this->assertEquals('black', $dialog->askAndValidate($this->getOutputStream(), $question, $validator, 2, 'white'));
-
-        $dialog->setInputStream($this->getInputStream("green\nyellow\norange\n"));
-        try {
-            $this->assertEquals('white', $dialog->askAndValidate($this->getOutputStream(), $question, $validator, 2, 'white'));
-            $this->fail();
-        } catch (\InvalidArgumentException $e) {
-            $this->assertEquals($error, $e->getMessage());
-        }
-    }
-
-    public function testNoInteraction()
-    {
-        $dialog = new DialogHelper();
-
-        $input = new ArrayInput(array());
-        $input->setInteractive(false);
-
-        $dialog->setInput($input);
-
-        $this->assertEquals('not yet', $dialog->ask($this->getOutputStream(), 'Do you have a job?', 'not yet'));
-    }
-
-    protected function getInputStream($input)
-    {
-        $stream = fopen('php://memory', 'r+', false);
-        fwrite($stream, $input);
-        rewind($stream);
-
-        return $stream;
-    }
-
-    protected function getOutputStream()
-    {
-        return new StreamOutput(fopen('php://memory', 'r+', false));
-    }
-
-    private function hasSttyAvailable()
-    {
-        exec('stty 2>&1', $output, $exitcode);
-
-        return $exitcode === 0;
-    }
-}
diff --git a/vendor/symfony/console/Tests/Helper/LegacyProgressHelperTest.php b/vendor/symfony/console/Tests/Helper/LegacyProgressHelperTest.php
deleted file mode 100644
index e027246..0000000
--- a/vendor/symfony/console/Tests/Helper/LegacyProgressHelperTest.php
+++ /dev/null
@@ -1,240 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Console\Tests\Helper;
-
-use Symfony\Component\Console\Helper\ProgressHelper;
-use Symfony\Component\Console\Output\StreamOutput;
-use Symfony\Component\Console\Tests;
-
-require_once __DIR__.'/../ClockMock.php';
-
-/**
- * @group legacy
- */
-class LegacyProgressHelperTest extends \PHPUnit_Framework_TestCase
-{
-    protected function setUp()
-    {
-        Tests\with_clock_mock(true);
-    }
-
-    protected function tearDown()
-    {
-        Tests\with_clock_mock(false);
-    }
-
-    public function testAdvance()
-    {
-        $progress = new ProgressHelper();
-        $progress->start($output = $this->getOutputStream());
-        $progress->advance();
-
-        rewind($output->getStream());
-        $this->assertEquals($this->generateOutput('    1 [->--------------------------]'), stream_get_contents($output->getStream()));
-    }
-
-    public function testAdvanceWithStep()
-    {
-        $progress = new ProgressHelper();
-        $progress->start($output = $this->getOutputStream());
-        $progress->advance(5);
-
-        rewind($output->getStream());
-        $this->assertEquals($this->generateOutput('    5 [----->----------------------]'), stream_get_contents($output->getStream()));
-    }
-
-    public function testAdvanceMultipleTimes()
-    {
-        $progress = new ProgressHelper();
-        $progress->start($output = $this->getOutputStream());
-        $progress->advance(3);
-        $progress->advance(2);
-
-        rewind($output->getStream());
-        $this->assertEquals($this->generateOutput('    3 [--->------------------------]').$this->generateOutput('    5 [----->----------------------]'), stream_get_contents($output->getStream()));
-    }
-
-    public function testCustomizations()
-    {
-        $progress = new ProgressHelper();
-        $progress->setBarWidth(10);
-        $progress->setBarCharacter('_');
-        $progress->setEmptyBarCharacter(' ');
-        $progress->setProgressCharacter('/');
-        $progress->setFormat(' %current%/%max% [%bar%] %percent%%');
-        $progress->start($output = $this->getOutputStream(), 10);
-        $progress->advance();
-
-        rewind($output->getStream());
-        $this->assertEquals($this->generateOutput('  1/10 [_/        ]  10%'), stream_get_contents($output->getStream()));
-    }
-
-    public function testPercent()
-    {
-        $progress = new ProgressHelper();
-        $progress->start($output = $this->getOutputStream(), 50);
-        $progress->display();
-        $progress->advance();
-        $progress->advance();
-
-        rewind($output->getStream());
-        $this->assertEquals($this->generateOutput('  0/50 [>---------------------------]   0%').$this->generateOutput('  1/50 [>---------------------------]   2%').$this->generateOutput('  2/50 [=>--------------------------]   4%'), stream_get_contents($output->getStream()));
-    }
-
-    public function testOverwriteWithShorterLine()
-    {
-        $progress = new ProgressHelper();
-        $progress->setFormat(' %current%/%max% [%bar%] %percent%%');
-        $progress->start($output = $this->getOutputStream(), 50);
-        $progress->display();
-        $progress->advance();
-
-        // set shorter format
-        $progress->setFormat(' %current%/%max% [%bar%]');
-        $progress->advance();
-
-        rewind($output->getStream());
-        $this->assertEquals(
-            $this->generateOutput('  0/50 [>---------------------------]   0%').
-            $this->generateOutput('  1/50 [>---------------------------]   2%').
-            $this->generateOutput('  2/50 [=>--------------------------]     '),
-            stream_get_contents($output->getStream())
-        );
-    }
-
-    public function testSetCurrentProgress()
-    {
-        $progress = new ProgressHelper();
-        $progress->start($output = $this->getOutputStream(), 50);
-        $progress->display();
-        $progress->advance();
-        $progress->setCurrent(15);
-        $progress->setCurrent(25);
-
-        rewind($output->getStream());
-        $this->assertEquals(
-            $this->generateOutput('  0/50 [>---------------------------]   0%').
-            $this->generateOutput('  1/50 [>---------------------------]   2%').
-            $this->generateOutput(' 15/50 [========>-------------------]  30%').
-            $this->generateOutput(' 25/50 [==============>-------------]  50%'),
-            stream_get_contents($output->getStream())
-        );
-    }
-
-    /**
-     * @expectedException        \LogicException
-     * @expectedExceptionMessage You must start the progress bar
-     */
-    public function testSetCurrentBeforeStarting()
-    {
-        $progress = new ProgressHelper();
-        $progress->setCurrent(15);
-    }
-
-    /**
-     * @expectedException        \LogicException
-     * @expectedExceptionMessage You can't regress the progress bar
-     */
-    public function testRegressProgress()
-    {
-        $progress = new ProgressHelper();
-        $progress->start($output = $this->getOutputStream(), 50);
-        $progress->setCurrent(15);
-        $progress->setCurrent(10);
-    }
-
-    public function testRedrawFrequency()
-    {
-        $progress = $this->getMock('Symfony\Component\Console\Helper\ProgressHelper', array('display'));
-        $progress->expects($this->exactly(4))
-                 ->method('display');
-
-        $progress->setRedrawFrequency(2);
-
-        $progress->start($output = $this->getOutputStream(), 6);
-        $progress->setCurrent(1);
-        $progress->advance(2);
-        $progress->advance(2);
-        $progress->advance(1);
-    }
-
-    public function testMultiByteSupport()
-    {
-        if (!function_exists('mb_strlen') || (false === $encoding = mb_detect_encoding('■'))) {
-            $this->markTestSkipped('The mbstring extension is needed for multi-byte support');
-        }
-
-        $progress = new ProgressHelper();
-        $progress->start($output = $this->getOutputStream());
-        $progress->setBarCharacter('■');
-        $progress->advance(3);
-
-        rewind($output->getStream());
-        $this->assertEquals($this->generateOutput('    3 [■■■>------------------------]'), stream_get_contents($output->getStream()));
-    }
-
-    public function testClear()
-    {
-        $progress = new ProgressHelper();
-        $progress->start($output = $this->getOutputStream(), 50);
-        $progress->setCurrent(25);
-        $progress->clear();
-
-        rewind($output->getStream());
-        $this->assertEquals(
-            $this->generateOutput(' 25/50 [==============>-------------]  50%').$this->generateOutput(''),
-            stream_get_contents($output->getStream())
-        );
-    }
-
-    public function testPercentNotHundredBeforeComplete()
-    {
-        $progress = new ProgressHelper();
-        $progress->start($output = $this->getOutputStream(), 200);
-        $progress->display();
-        $progress->advance(199);
-        $progress->advance();
-
-        rewind($output->getStream());
-        $this->assertEquals($this->generateOutput('   0/200 [>---------------------------]   0%').$this->generateOutput(' 199/200 [===========================>]  99%').$this->generateOutput(' 200/200 [============================] 100%'), stream_get_contents($output->getStream()));
-    }
-
-    public function testNonDecoratedOutput()
-    {
-        $progress = new ProgressHelper();
-        $progress->start($output = $this->getOutputStream(false));
-        $progress->advance();
-
-        rewind($output->getStream());
-        $this->assertEquals('', stream_get_contents($output->getStream()));
-    }
-
-    protected function getOutputStream($decorated = true)
-    {
-        return new StreamOutput(fopen('php://memory', 'r+', false), StreamOutput::VERBOSITY_NORMAL, $decorated);
-    }
-
-    protected $lastMessagesLength;
-
-    protected function generateOutput($expected)
-    {
-        $expectedout = $expected;
-
-        if ($this->lastMessagesLength !== null) {
-            $expectedout = str_pad($expected, $this->lastMessagesLength, "\x20", STR_PAD_RIGHT);
-        }
-
-        $this->lastMessagesLength = strlen($expectedout);
-
-        return "\x0D".$expectedout;
-    }
-}
diff --git a/vendor/symfony/console/Tests/Helper/LegacyTableHelperTest.php b/vendor/symfony/console/Tests/Helper/LegacyTableHelperTest.php
deleted file mode 100644
index 3b32423..0000000
--- a/vendor/symfony/console/Tests/Helper/LegacyTableHelperTest.php
+++ /dev/null
@@ -1,324 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Console\Tests\Helper;
-
-use Symfony\Component\Console\Helper\TableHelper;
-use Symfony\Component\Console\Output\StreamOutput;
-
-/**
- * @group legacy
- */
-class LegacyTableHelperTest extends \PHPUnit_Framework_TestCase
-{
-    protected $stream;
-
-    protected function setUp()
-    {
-        $this->stream = fopen('php://memory', 'r+');
-    }
-
-    protected function tearDown()
-    {
-        fclose($this->stream);
-        $this->stream = null;
-    }
-
-    /**
-     * @dataProvider testRenderProvider
-     */
-    public function testRender($headers, $rows, $layout, $expected)
-    {
-        $table = new TableHelper();
-        $table
-            ->setHeaders($headers)
-            ->setRows($rows)
-            ->setLayout($layout)
-        ;
-        $table->render($output = $this->getOutputStream());
-
-        $this->assertEquals($expected, $this->getOutputContent($output));
-    }
-
-    /**
-     * @dataProvider testRenderProvider
-     */
-    public function testRenderAddRows($headers, $rows, $layout, $expected)
-    {
-        $table = new TableHelper();
-        $table
-            ->setHeaders($headers)
-            ->addRows($rows)
-            ->setLayout($layout)
-        ;
-        $table->render($output = $this->getOutputStream());
-
-        $this->assertEquals($expected, $this->getOutputContent($output));
-    }
-
-    /**
-     * @dataProvider testRenderProvider
-     */
-    public function testRenderAddRowsOneByOne($headers, $rows, $layout, $expected)
-    {
-        $table = new TableHelper();
-        $table
-            ->setHeaders($headers)
-            ->setLayout($layout)
-        ;
-        foreach ($rows as $row) {
-            $table->addRow($row);
-        }
-        $table->render($output = $this->getOutputStream());
-
-        $this->assertEquals($expected, $this->getOutputContent($output));
-    }
-
-    public function testRenderProvider()
-    {
-        $books = array(
-            array('99921-58-10-7', 'Divine Comedy', 'Dante Alighieri'),
-            array('9971-5-0210-0', 'A Tale of Two Cities', 'Charles Dickens'),
-            array('960-425-059-0', 'The Lord of the Rings', 'J. R. R. Tolkien'),
-            array('80-902734-1-6', 'And Then There Were None', 'Agatha Christie'),
-        );
-
-        return array(
-            array(
-                array('ISBN', 'Title', 'Author'),
-                $books,
-                TableHelper::LAYOUT_DEFAULT,
-<<<TABLE
-+---------------+--------------------------+------------------+
-| ISBN          | Title                    | Author           |
-+---------------+--------------------------+------------------+
-| 99921-58-10-7 | Divine Comedy            | Dante Alighieri  |
-| 9971-5-0210-0 | A Tale of Two Cities     | Charles Dickens  |
-| 960-425-059-0 | The Lord of the Rings    | J. R. R. Tolkien |
-| 80-902734-1-6 | And Then There Were None | Agatha Christie  |
-+---------------+--------------------------+------------------+
-
-TABLE
-            ),
-            array(
-                array('ISBN', 'Title', 'Author'),
-                $books,
-                TableHelper::LAYOUT_COMPACT,
-<<<TABLE
- ISBN          Title                    Author           
- 99921-58-10-7 Divine Comedy            Dante Alighieri  
- 9971-5-0210-0 A Tale of Two Cities     Charles Dickens  
- 960-425-059-0 The Lord of the Rings    J. R. R. Tolkien 
- 80-902734-1-6 And Then There Were None Agatha Christie  
-
-TABLE
-            ),
-            array(
-                array('ISBN', 'Title', 'Author'),
-                $books,
-                TableHelper::LAYOUT_BORDERLESS,
-<<<TABLE
- =============== ========================== ================== 
-  ISBN            Title                      Author            
- =============== ========================== ================== 
-  99921-58-10-7   Divine Comedy              Dante Alighieri   
-  9971-5-0210-0   A Tale of Two Cities       Charles Dickens   
-  960-425-059-0   The Lord of the Rings      J. R. R. Tolkien  
-  80-902734-1-6   And Then There Were None   Agatha Christie   
- =============== ========================== ================== 
-
-TABLE
-            ),
-            array(
-                array('ISBN', 'Title'),
-                array(
-                    array('99921-58-10-7', 'Divine Comedy', 'Dante Alighieri'),
-                    array('9971-5-0210-0'),
-                    array('960-425-059-0', 'The Lord of the Rings', 'J. R. R. Tolkien'),
-                    array('80-902734-1-6', 'And Then There Were None', 'Agatha Christie'),
-                ),
-                TableHelper::LAYOUT_DEFAULT,
-<<<TABLE
-+---------------+--------------------------+------------------+
-| ISBN          | Title                    |                  |
-+---------------+--------------------------+------------------+
-| 99921-58-10-7 | Divine Comedy            | Dante Alighieri  |
-| 9971-5-0210-0 |                          |                  |
-| 960-425-059-0 | The Lord of the Rings    | J. R. R. Tolkien |
-| 80-902734-1-6 | And Then There Were None | Agatha Christie  |
-+---------------+--------------------------+------------------+
-
-TABLE
-            ),
-            array(
-                array(),
-                array(
-                    array('99921-58-10-7', 'Divine Comedy', 'Dante Alighieri'),
-                    array('9971-5-0210-0'),
-                    array('960-425-059-0', 'The Lord of the Rings', 'J. R. R. Tolkien'),
-                    array('80-902734-1-6', 'And Then There Were None', 'Agatha Christie'),
-                ),
-                TableHelper::LAYOUT_DEFAULT,
-<<<TABLE
-+---------------+--------------------------+------------------+
-| 99921-58-10-7 | Divine Comedy            | Dante Alighieri  |
-| 9971-5-0210-0 |                          |                  |
-| 960-425-059-0 | The Lord of the Rings    | J. R. R. Tolkien |
-| 80-902734-1-6 | And Then There Were None | Agatha Christie  |
-+---------------+--------------------------+------------------+
-
-TABLE
-            ),
-            array(
-                array('ISBN', 'Title', 'Author'),
-                array(
-                    array('99921-58-10-7', "Divine\nComedy", 'Dante Alighieri'),
-                    array('9971-5-0210-2', "Harry Potter\nand the Chamber of Secrets", "Rowling\nJoanne K."),
-                    array('9971-5-0210-2', "Harry Potter\nand the Chamber of Secrets", "Rowling\nJoanne K."),
-                    array('960-425-059-0', 'The Lord of the Rings', "J. R. R.\nTolkien"),
-                ),
-                TableHelper::LAYOUT_DEFAULT,
-<<<TABLE
-+---------------+----------------------------+-----------------+
-| ISBN          | Title                      | Author          |
-+---------------+----------------------------+-----------------+
-| 99921-58-10-7 | Divine                     | Dante Alighieri |
-|               | Comedy                     |                 |
-| 9971-5-0210-2 | Harry Potter               | Rowling         |
-|               | and the Chamber of Secrets | Joanne K.       |
-| 9971-5-0210-2 | Harry Potter               | Rowling         |
-|               | and the Chamber of Secrets | Joanne K.       |
-| 960-425-059-0 | The Lord of the Rings      | J. R. R.        |
-|               |                            | Tolkien         |
-+---------------+----------------------------+-----------------+
-
-TABLE
-            ),
-            array(
-                array('ISBN', 'Title'),
-                array(),
-                TableHelper::LAYOUT_DEFAULT,
-<<<TABLE
-+------+-------+
-| ISBN | Title |
-+------+-------+
-
-TABLE
-            ),
-            array(
-                array(),
-                array(),
-                TableHelper::LAYOUT_DEFAULT,
-                '',
-            ),
-            'Cell text with tags used for Output styling' => array(
-                array('ISBN', 'Title', 'Author'),
-                array(
-                    array('<info>99921-58-10-7</info>', '<error>Divine Comedy</error>', '<fg=blue;bg=white>Dante Alighieri</fg=blue;bg=white>'),
-                    array('9971-5-0210-0', 'A Tale of Two Cities', '<info>Charles Dickens</>'),
-                ),
-                TableHelper::LAYOUT_DEFAULT,
-<<<TABLE
-+---------------+----------------------+-----------------+
-| ISBN          | Title                | Author          |
-+---------------+----------------------+-----------------+
-| 99921-58-10-7 | Divine Comedy        | Dante Alighieri |
-| 9971-5-0210-0 | A Tale of Two Cities | Charles Dickens |
-+---------------+----------------------+-----------------+
-
-TABLE
-            ),
-            'Cell text with tags not used for Output styling' => array(
-                array('ISBN', 'Title', 'Author'),
-                array(
-                    array('<strong>99921-58-10-700</strong>', '<f>Divine Com</f>', 'Dante Alighieri'),
-                    array('9971-5-0210-0', 'A Tale of Two Cities', 'Charles Dickens'),
-                ),
-                TableHelper::LAYOUT_DEFAULT,
-<<<TABLE
-+----------------------------------+----------------------+-----------------+
-| ISBN                             | Title                | Author          |
-+----------------------------------+----------------------+-----------------+
-| <strong>99921-58-10-700</strong> | <f>Divine Com</f>    | Dante Alighieri |
-| 9971-5-0210-0                    | A Tale of Two Cities | Charles Dickens |
-+----------------------------------+----------------------+-----------------+
-
-TABLE
-            ),
-        );
-    }
-
-    public function testRenderMultiByte()
-    {
-        if (!function_exists('mb_strwidth')) {
-            $this->markTestSkipped('The "mbstring" extension is not available');
-        }
-
-        $table = new TableHelper();
-        $table
-            ->setHeaders(array('■■'))
-            ->setRows(array(array(1234)))
-            ->setLayout(TableHelper::LAYOUT_DEFAULT)
-        ;
-        $table->render($output = $this->getOutputStream());
-
-        $expected =
-<<<TABLE
-+------+
-| ■■   |
-+------+
-| 1234 |
-+------+
-
-TABLE;
-
-        $this->assertEquals($expected, $this->getOutputContent($output));
-    }
-
-    public function testRenderFullWidthCharacters()
-    {
-        if (!function_exists('mb_strwidth')) {
-            $this->markTestSkipped('The "mbstring" extension is not available');
-        }
-
-        $table = new TableHelper();
-        $table
-            ->setHeaders(array('あいうえお'))
-            ->setRows(array(array(1234567890)))
-            ->setLayout(TableHelper::LAYOUT_DEFAULT)
-        ;
-        $table->render($output = $this->getOutputStream());
-
-        $expected =
-            <<<TABLE
-+------------+
-| あいうえお |
-+------------+
-| 1234567890 |
-+------------+
-
-TABLE;
-
-        $this->assertEquals($expected, $this->getOutputContent($output));
-    }
-
-    protected function getOutputStream()
-    {
-        return new StreamOutput($this->stream, StreamOutput::VERBOSITY_NORMAL, false);
-    }
-
-    protected function getOutputContent(StreamOutput $output)
-    {
-        rewind($output->getStream());
-
-        return str_replace(PHP_EOL, "\n", stream_get_contents($output->getStream()));
-    }
-}
diff --git a/vendor/symfony/console/Tests/Helper/ProcessHelperTest.php b/vendor/symfony/console/Tests/Helper/ProcessHelperTest.php
deleted file mode 100644
index a51fb43..0000000
--- a/vendor/symfony/console/Tests/Helper/ProcessHelperTest.php
+++ /dev/null
@@ -1,117 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Console\Tests\Helper;
-
-use Symfony\Component\Console\Helper\DebugFormatterHelper;
-use Symfony\Component\Console\Helper\HelperSet;
-use Symfony\Component\Console\Output\StreamOutput;
-use Symfony\Component\Console\Helper\ProcessHelper;
-use Symfony\Component\Process\Process;
-
-class ProcessHelperTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @dataProvider provideCommandsAndOutput
-     */
-    public function testVariousProcessRuns($expected, $cmd, $verbosity, $error)
-    {
-        $helper = new ProcessHelper();
-        $helper->setHelperSet(new HelperSet(array(new DebugFormatterHelper())));
-        $output = $this->getOutputStream($verbosity);
-        $helper->run($output, $cmd, $error);
-        $this->assertEquals($expected, $this->getOutput($output));
-    }
-
-    public function testPassedCallbackIsExecuted()
-    {
-        $helper = new ProcessHelper();
-        $helper->setHelperSet(new HelperSet(array(new DebugFormatterHelper())));
-        $output = $this->getOutputStream(StreamOutput::VERBOSITY_NORMAL);
-
-        $executed = false;
-        $callback = function () use (&$executed) { $executed = true; };
-
-        $helper->run($output, 'php -r "echo 42;"', null, $callback);
-        $this->assertTrue($executed);
-    }
-
-    public function provideCommandsAndOutput()
-    {
-        $successOutputVerbose = <<<EOT
-  RUN  php -r "echo 42;"
-  RES  Command ran successfully
-
-EOT;
-        $successOutputDebug = <<<EOT
-  RUN  php -r "echo 42;"
-  OUT  42
-  RES  Command ran successfully
-
-EOT;
-        $successOutputDebugWithTags = <<<EOT
-  RUN  php -r "echo '<info>42</info>';"
-  OUT  <info>42</info>
-  RES  Command ran successfully
-
-EOT;
-        $successOutputProcessDebug = <<<EOT
-  RUN  'php' '-r' 'echo 42;'
-  OUT  42
-  RES  Command ran successfully
-
-EOT;
-        $syntaxErrorOutputVerbose = <<<EOT
-  RUN  php -r "fwrite(STDERR, 'error message');usleep(50000);fwrite(STDOUT, 'out message');exit(252);"
-  RES  252 Command did not run successfully
-
-EOT;
-        $syntaxErrorOutputDebug = <<<EOT
-  RUN  php -r "fwrite(STDERR, 'error message');usleep(500000);fwrite(STDOUT, 'out message');exit(252);"
-  ERR  error message
-  OUT  out message
-  RES  252 Command did not run successfully
-
-EOT;
-
-        $errorMessage = 'An error occurred';
-        if ('\\' === DIRECTORY_SEPARATOR) {
-            $successOutputProcessDebug = str_replace("'", '"', $successOutputProcessDebug);
-        }
-
-        return array(
-            array('', 'php -r "echo 42;"', StreamOutput::VERBOSITY_VERBOSE, null),
-            array($successOutputVerbose, 'php -r "echo 42;"', StreamOutput::VERBOSITY_VERY_VERBOSE, null),
-            array($successOutputDebug, 'php -r "echo 42;"', StreamOutput::VERBOSITY_DEBUG, null),
-            array($successOutputDebugWithTags, 'php -r "echo \'<info>42</info>\';"', StreamOutput::VERBOSITY_DEBUG, null),
-            array('', 'php -r "syntax error"', StreamOutput::VERBOSITY_VERBOSE, null),
-            array($syntaxErrorOutputVerbose, 'php -r "fwrite(STDERR, \'error message\');usleep(50000);fwrite(STDOUT, \'out message\');exit(252);"', StreamOutput::VERBOSITY_VERY_VERBOSE, null),
-            array($syntaxErrorOutputDebug, 'php -r "fwrite(STDERR, \'error message\');usleep(500000);fwrite(STDOUT, \'out message\');exit(252);"', StreamOutput::VERBOSITY_DEBUG, null),
-            array($errorMessage.PHP_EOL, 'php -r "fwrite(STDERR, \'error message\');usleep(50000);fwrite(STDOUT, \'out message\');exit(252);"', StreamOutput::VERBOSITY_VERBOSE, $errorMessage),
-            array($syntaxErrorOutputVerbose.$errorMessage.PHP_EOL, 'php -r "fwrite(STDERR, \'error message\');usleep(50000);fwrite(STDOUT, \'out message\');exit(252);"', StreamOutput::VERBOSITY_VERY_VERBOSE, $errorMessage),
-            array($syntaxErrorOutputDebug.$errorMessage.PHP_EOL, 'php -r "fwrite(STDERR, \'error message\');usleep(500000);fwrite(STDOUT, \'out message\');exit(252);"', StreamOutput::VERBOSITY_DEBUG, $errorMessage),
-            array($successOutputProcessDebug, array('php', '-r', 'echo 42;'), StreamOutput::VERBOSITY_DEBUG, null),
-            array($successOutputDebug, new Process('php -r "echo 42;"'), StreamOutput::VERBOSITY_DEBUG, null),
-        );
-    }
-
-    private function getOutputStream($verbosity)
-    {
-        return new StreamOutput(fopen('php://memory', 'r+', false), $verbosity, false);
-    }
-
-    private function getOutput(StreamOutput $output)
-    {
-        rewind($output->getStream());
-
-        return stream_get_contents($output->getStream());
-    }
-}
diff --git a/vendor/symfony/console/Tests/Helper/ProgressBarTest.php b/vendor/symfony/console/Tests/Helper/ProgressBarTest.php
deleted file mode 100644
index e37853e..0000000
--- a/vendor/symfony/console/Tests/Helper/ProgressBarTest.php
+++ /dev/null
@@ -1,612 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Console\Tests\Helper;
-
-use Symfony\Component\Console\Helper\ProgressBar;
-use Symfony\Component\Console\Helper\Helper;
-use Symfony\Component\Console\Output\StreamOutput;
-use Symfony\Component\Console\Tests;
-
-class ProgressBarTest extends \PHPUnit_Framework_TestCase
-{
-    protected function setUp()
-    {
-        Tests\with_clock_mock(true);
-    }
-
-    protected function tearDown()
-    {
-        Tests\with_clock_mock(false);
-    }
-
-    public function testMultipleStart()
-    {
-        $bar = new ProgressBar($output = $this->getOutputStream());
-        $bar->start();
-        $bar->advance();
-        $bar->start();
-
-        rewind($output->getStream());
-        $this->assertEquals(
-            $this->generateOutput('    0 [>---------------------------]').
-            $this->generateOutput('    1 [->--------------------------]').
-            $this->generateOutput('    0 [>---------------------------]'),
-            stream_get_contents($output->getStream())
-        );
-    }
-
-    public function testAdvance()
-    {
-        $bar = new ProgressBar($output = $this->getOutputStream());
-        $bar->start();
-        $bar->advance();
-
-        rewind($output->getStream());
-        $this->assertEquals(
-            $this->generateOutput('    0 [>---------------------------]').
-            $this->generateOutput('    1 [->--------------------------]'),
-            stream_get_contents($output->getStream())
-        );
-    }
-
-    public function testAdvanceWithStep()
-    {
-        $bar = new ProgressBar($output = $this->getOutputStream());
-        $bar->start();
-        $bar->advance(5);
-
-        rewind($output->getStream());
-        $this->assertEquals(
-            $this->generateOutput('    0 [>---------------------------]').
-            $this->generateOutput('    5 [----->----------------------]'),
-            stream_get_contents($output->getStream())
-        );
-    }
-
-    public function testAdvanceMultipleTimes()
-    {
-        $bar = new ProgressBar($output = $this->getOutputStream());
-        $bar->start();
-        $bar->advance(3);
-        $bar->advance(2);
-
-        rewind($output->getStream());
-        $this->assertEquals(
-            $this->generateOutput('    0 [>---------------------------]').
-            $this->generateOutput('    3 [--->------------------------]').
-            $this->generateOutput('    5 [----->----------------------]'),
-            stream_get_contents($output->getStream())
-        );
-    }
-
-    public function testAdvanceOverMax()
-    {
-        $bar = new ProgressBar($output = $this->getOutputStream(), 10);
-        $bar->setProgress(9);
-        $bar->advance();
-        $bar->advance();
-
-        rewind($output->getStream());
-        $this->assertEquals(
-            $this->generateOutput('  9/10 [=========================>--]  90%').
-            $this->generateOutput(' 10/10 [============================] 100%').
-            $this->generateOutput(' 11/11 [============================] 100%'),
-            stream_get_contents($output->getStream())
-        );
-    }
-
-    public function testCustomizations()
-    {
-        $bar = new ProgressBar($output = $this->getOutputStream(), 10);
-        $bar->setBarWidth(10);
-        $bar->setBarCharacter('_');
-        $bar->setEmptyBarCharacter(' ');
-        $bar->setProgressCharacter('/');
-        $bar->setFormat(' %current%/%max% [%bar%] %percent:3s%%');
-        $bar->start();
-        $bar->advance();
-
-        rewind($output->getStream());
-        $this->assertEquals(
-            $this->generateOutput('  0/10 [/         ]   0%').
-            $this->generateOutput('  1/10 [_/        ]  10%'),
-            stream_get_contents($output->getStream())
-        );
-    }
-
-    public function testDisplayWithoutStart()
-    {
-        $bar = new ProgressBar($output = $this->getOutputStream(), 50);
-        $bar->display();
-
-        rewind($output->getStream());
-        $this->assertEquals(
-            $this->generateOutput('  0/50 [>---------------------------]   0%'),
-            stream_get_contents($output->getStream())
-        );
-    }
-
-    public function testDisplayWithQuietVerbosity()
-    {
-        $bar = new ProgressBar($output = $this->getOutputStream(true, StreamOutput::VERBOSITY_QUIET), 50);
-        $bar->display();
-
-        rewind($output->getStream());
-        $this->assertEquals(
-            '',
-            stream_get_contents($output->getStream())
-        );
-    }
-
-    public function testFinishWithoutStart()
-    {
-        $bar = new ProgressBar($output = $this->getOutputStream(), 50);
-        $bar->finish();
-
-        rewind($output->getStream());
-        $this->assertEquals(
-            $this->generateOutput(' 50/50 [============================] 100%'),
-            stream_get_contents($output->getStream())
-        );
-    }
-
-    public function testPercent()
-    {
-        $bar = new ProgressBar($output = $this->getOutputStream(), 50);
-        $bar->start();
-        $bar->display();
-        $bar->advance();
-        $bar->advance();
-
-        rewind($output->getStream());
-        $this->assertEquals(
-            $this->generateOutput('  0/50 [>---------------------------]   0%').
-            $this->generateOutput('  0/50 [>---------------------------]   0%').
-            $this->generateOutput('  1/50 [>---------------------------]   2%').
-            $this->generateOutput('  2/50 [=>--------------------------]   4%'),
-            stream_get_contents($output->getStream())
-        );
-    }
-
-    public function testOverwriteWithShorterLine()
-    {
-        $bar = new ProgressBar($output = $this->getOutputStream(), 50);
-        $bar->setFormat(' %current%/%max% [%bar%] %percent:3s%%');
-        $bar->start();
-        $bar->display();
-        $bar->advance();
-
-        // set shorter format
-        $bar->setFormat(' %current%/%max% [%bar%]');
-        $bar->advance();
-
-        rewind($output->getStream());
-        $this->assertEquals(
-            $this->generateOutput('  0/50 [>---------------------------]   0%').
-            $this->generateOutput('  0/50 [>---------------------------]   0%').
-            $this->generateOutput('  1/50 [>---------------------------]   2%').
-            $this->generateOutput('  2/50 [=>--------------------------]     '),
-            stream_get_contents($output->getStream())
-        );
-    }
-
-    public function testStartWithMax()
-    {
-        $bar = new ProgressBar($output = $this->getOutputStream());
-        $bar->setFormat('%current%/%max% [%bar%]');
-        $bar->start(50);
-        $bar->advance();
-
-        rewind($output->getStream());
-        $this->assertEquals(
-            $this->generateOutput(' 0/50 [>---------------------------]').
-            $this->generateOutput(' 1/50 [>---------------------------]'),
-            stream_get_contents($output->getStream())
-        );
-    }
-
-    public function testSetCurrentProgress()
-    {
-        $bar = new ProgressBar($output = $this->getOutputStream(), 50);
-        $bar->start();
-        $bar->display();
-        $bar->advance();
-        $bar->setProgress(15);
-        $bar->setProgress(25);
-
-        rewind($output->getStream());
-        $this->assertEquals(
-            $this->generateOutput('  0/50 [>---------------------------]   0%').
-            $this->generateOutput('  0/50 [>---------------------------]   0%').
-            $this->generateOutput('  1/50 [>---------------------------]   2%').
-            $this->generateOutput(' 15/50 [========>-------------------]  30%').
-            $this->generateOutput(' 25/50 [==============>-------------]  50%'),
-            stream_get_contents($output->getStream())
-        );
-    }
-
-    /**
-     */
-    public function testSetCurrentBeforeStarting()
-    {
-        $bar = new ProgressBar($this->getOutputStream());
-        $bar->setProgress(15);
-        $this->assertNotNull($bar->getStartTime());
-    }
-
-    /**
-     * @expectedException        \LogicException
-     * @expectedExceptionMessage You can't regress the progress bar
-     */
-    public function testRegressProgress()
-    {
-        $bar = new ProgressBar($output = $this->getOutputStream(), 50);
-        $bar->start();
-        $bar->setProgress(15);
-        $bar->setProgress(10);
-    }
-
-    public function testRedrawFrequency()
-    {
-        $bar = $this->getMock('Symfony\Component\Console\Helper\ProgressBar', array('display'), array($output = $this->getOutputStream(), 6));
-        $bar->expects($this->exactly(4))->method('display');
-
-        $bar->setRedrawFrequency(2);
-        $bar->start();
-        $bar->setProgress(1);
-        $bar->advance(2);
-        $bar->advance(2);
-        $bar->advance(1);
-    }
-
-    public function testMultiByteSupport()
-    {
-        if (!function_exists('mb_strlen') || (false === $encoding = mb_detect_encoding('■'))) {
-            $this->markTestSkipped('The mbstring extension is needed for multi-byte support');
-        }
-
-        $bar = new ProgressBar($output = $this->getOutputStream());
-        $bar->start();
-        $bar->setBarCharacter('■');
-        $bar->advance(3);
-
-        rewind($output->getStream());
-        $this->assertEquals(
-            $this->generateOutput('    0 [>---------------------------]').
-            $this->generateOutput('    3 [■■■>------------------------]'),
-            stream_get_contents($output->getStream())
-        );
-    }
-
-    public function testClear()
-    {
-        $bar = new ProgressBar($output = $this->getOutputStream(), 50);
-        $bar->start();
-        $bar->setProgress(25);
-        $bar->clear();
-
-        rewind($output->getStream());
-        $this->assertEquals(
-            $this->generateOutput('  0/50 [>---------------------------]   0%').
-            $this->generateOutput(' 25/50 [==============>-------------]  50%').
-            $this->generateOutput('                                          '),
-            stream_get_contents($output->getStream())
-        );
-    }
-
-    public function testPercentNotHundredBeforeComplete()
-    {
-        $bar = new ProgressBar($output = $this->getOutputStream(), 200);
-        $bar->start();
-        $bar->display();
-        $bar->advance(199);
-        $bar->advance();
-
-        rewind($output->getStream());
-        $this->assertEquals(
-            $this->generateOutput('   0/200 [>---------------------------]   0%').
-            $this->generateOutput('   0/200 [>---------------------------]   0%').
-            $this->generateOutput(' 199/200 [===========================>]  99%').
-            $this->generateOutput(' 200/200 [============================] 100%'),
-            stream_get_contents($output->getStream())
-        );
-    }
-
-    public function testNonDecoratedOutput()
-    {
-        $bar = new ProgressBar($output = $this->getOutputStream(false), 200);
-        $bar->start();
-
-        for ($i = 0; $i < 200; ++$i) {
-            $bar->advance();
-        }
-
-        $bar->finish();
-
-        rewind($output->getStream());
-        $this->assertEquals(
-            '   0/200 [>---------------------------]   0%'.PHP_EOL.
-            '  20/200 [==>-------------------------]  10%'.PHP_EOL.
-            '  40/200 [=====>----------------------]  20%'.PHP_EOL.
-            '  60/200 [========>-------------------]  30%'.PHP_EOL.
-            '  80/200 [===========>----------------]  40%'.PHP_EOL.
-            ' 100/200 [==============>-------------]  50%'.PHP_EOL.
-            ' 120/200 [================>-----------]  60%'.PHP_EOL.
-            ' 140/200 [===================>--------]  70%'.PHP_EOL.
-            ' 160/200 [======================>-----]  80%'.PHP_EOL.
-            ' 180/200 [=========================>--]  90%'.PHP_EOL.
-            ' 200/200 [============================] 100%',
-            stream_get_contents($output->getStream())
-        );
-    }
-
-    public function testNonDecoratedOutputWithClear()
-    {
-        $bar = new ProgressBar($output = $this->getOutputStream(false), 50);
-        $bar->start();
-        $bar->setProgress(25);
-        $bar->clear();
-        $bar->setProgress(50);
-        $bar->finish();
-
-        rewind($output->getStream());
-        $this->assertEquals(
-            '  0/50 [>---------------------------]   0%'.PHP_EOL.
-            ' 25/50 [==============>-------------]  50%'.PHP_EOL.
-            ' 50/50 [============================] 100%',
-            stream_get_contents($output->getStream())
-        );
-    }
-
-    public function testNonDecoratedOutputWithoutMax()
-    {
-        $bar = new ProgressBar($output = $this->getOutputStream(false));
-        $bar->start();
-        $bar->advance();
-
-        rewind($output->getStream());
-        $this->assertEquals(
-            '    0 [>---------------------------]'.PHP_EOL.
-            '    1 [->--------------------------]',
-            stream_get_contents($output->getStream())
-        );
-    }
-
-    public function testParallelBars()
-    {
-        $output = $this->getOutputStream();
-        $bar1 = new ProgressBar($output, 2);
-        $bar2 = new ProgressBar($output, 3);
-        $bar2->setProgressCharacter('#');
-        $bar3 = new ProgressBar($output);
-
-        $bar1->start();
-        $output->write("\n");
-        $bar2->start();
-        $output->write("\n");
-        $bar3->start();
-
-        for ($i = 1; $i <= 3; ++$i) {
-            // up two lines
-            $output->write("\033[2A");
-            if ($i <= 2) {
-                $bar1->advance();
-            }
-            $output->write("\n");
-            $bar2->advance();
-            $output->write("\n");
-            $bar3->advance();
-        }
-        $output->write("\033[2A");
-        $output->write("\n");
-        $output->write("\n");
-        $bar3->finish();
-
-        rewind($output->getStream());
-        $this->assertEquals(
-            $this->generateOutput(' 0/2 [>---------------------------]   0%')."\n".
-            $this->generateOutput(' 0/3 [#---------------------------]   0%')."\n".
-            rtrim($this->generateOutput('    0 [>---------------------------]')).
-
-            "\033[2A".
-            $this->generateOutput(' 1/2 [==============>-------------]  50%')."\n".
-            $this->generateOutput(' 1/3 [=========#------------------]  33%')."\n".
-            rtrim($this->generateOutput('    1 [->--------------------------]')).
-
-            "\033[2A".
-            $this->generateOutput(' 2/2 [============================] 100%')."\n".
-            $this->generateOutput(' 2/3 [==================#---------]  66%')."\n".
-            rtrim($this->generateOutput('    2 [-->-------------------------]')).
-
-            "\033[2A".
-            "\n".
-            $this->generateOutput(' 3/3 [============================] 100%')."\n".
-            rtrim($this->generateOutput('    3 [--->------------------------]')).
-
-            "\033[2A".
-            "\n".
-            "\n".
-            rtrim($this->generateOutput('    3 [============================]')),
-            stream_get_contents($output->getStream())
-        );
-    }
-
-    public function testWithoutMax()
-    {
-        $output = $this->getOutputStream();
-
-        $bar = new ProgressBar($output);
-        $bar->start();
-        $bar->advance();
-        $bar->advance();
-        $bar->advance();
-        $bar->finish();
-
-        rewind($output->getStream());
-        $this->assertEquals(
-            rtrim($this->generateOutput('    0 [>---------------------------]')).
-            rtrim($this->generateOutput('    1 [->--------------------------]')).
-            rtrim($this->generateOutput('    2 [-->-------------------------]')).
-            rtrim($this->generateOutput('    3 [--->------------------------]')).
-            rtrim($this->generateOutput('    3 [============================]')),
-            stream_get_contents($output->getStream())
-        );
-    }
-
-    public function testAddingPlaceholderFormatter()
-    {
-        ProgressBar::setPlaceholderFormatterDefinition('remaining_steps', function (ProgressBar $bar) {
-            return $bar->getMaxSteps() - $bar->getProgress();
-        });
-        $bar = new ProgressBar($output = $this->getOutputStream(), 3);
-        $bar->setFormat(' %remaining_steps% [%bar%]');
-
-        $bar->start();
-        $bar->advance();
-        $bar->finish();
-
-        rewind($output->getStream());
-        $this->assertEquals(
-            $this->generateOutput(' 3 [>---------------------------]').
-            $this->generateOutput(' 2 [=========>------------------]').
-            $this->generateOutput(' 0 [============================]'),
-            stream_get_contents($output->getStream())
-        );
-    }
-
-    public function testMultilineFormat()
-    {
-        $bar = new ProgressBar($output = $this->getOutputStream(), 3);
-        $bar->setFormat("%bar%\nfoobar");
-
-        $bar->start();
-        $bar->advance();
-        $bar->clear();
-        $bar->finish();
-
-        rewind($output->getStream());
-        $this->assertEquals(
-            $this->generateOutput(">---------------------------\nfoobar").
-            $this->generateOutput("=========>------------------\nfoobar                      ").
-            $this->generateOutput("                            \n                            ").
-            $this->generateOutput("============================\nfoobar                      "),
-            stream_get_contents($output->getStream())
-        );
-    }
-
-    /**
-     * @requires extension mbstring
-     */
-    public function testAnsiColorsAndEmojis()
-    {
-        $bar = new ProgressBar($output = $this->getOutputStream(), 15);
-        ProgressBar::setPlaceholderFormatterDefinition('memory', function (ProgressBar $bar) {
-            static $i = 0;
-            $mem = 100000 * $i;
-            $colors = $i++ ? '41;37' : '44;37';
-
-            return "\033[".$colors.'m '.Helper::formatMemory($mem)." \033[0m";
-        });
-        $bar->setFormat(" \033[44;37m %title:-37s% \033[0m\n %current%/%max% %bar% %percent:3s%%\n 🏁  %remaining:-10s% %memory:37s%");
-        $bar->setBarCharacter($done = "\033[32m●\033[0m");
-        $bar->setEmptyBarCharacter($empty = "\033[31m●\033[0m");
-        $bar->setProgressCharacter($progress = "\033[32m➤ \033[0m");
-
-        $bar->setMessage('Starting the demo... fingers crossed', 'title');
-        $bar->start();
-        $bar->setMessage('Looks good to me...', 'title');
-        $bar->advance(4);
-        $bar->setMessage('Thanks, bye', 'title');
-        $bar->finish();
-
-        rewind($output->getStream());
-        $this->assertEquals(
-            $this->generateOutput(
-                " \033[44;37m Starting the demo... fingers crossed  \033[0m\n".
-                '  0/15 '.$progress.str_repeat($empty, 26)."   0%\n".
-                " \xf0\x9f\x8f\x81  1 sec                          \033[44;37m 0 B \033[0m"
-            ).
-            $this->generateOutput(
-                " \033[44;37m Looks good to me...                   \033[0m\n".
-                '  4/15 '.str_repeat($done, 7).$progress.str_repeat($empty, 19)."  26%\n".
-                " \xf0\x9f\x8f\x81  1 sec                       \033[41;37m 97 KiB \033[0m"
-            ).
-            $this->generateOutput(
-                " \033[44;37m Thanks, bye                           \033[0m\n".
-                ' 15/15 '.str_repeat($done, 28)." 100%\n".
-                " \xf0\x9f\x8f\x81  1 sec                      \033[41;37m 195 KiB \033[0m"
-            ),
-            stream_get_contents($output->getStream())
-        );
-    }
-
-    public function testSetFormat()
-    {
-        $bar = new ProgressBar($output = $this->getOutputStream());
-        $bar->setFormat('normal');
-        $bar->start();
-        rewind($output->getStream());
-        $this->assertEquals(
-            $this->generateOutput('    0 [>---------------------------]'),
-            stream_get_contents($output->getStream())
-        );
-
-        $bar = new ProgressBar($output = $this->getOutputStream(), 10);
-        $bar->setFormat('normal');
-        $bar->start();
-        rewind($output->getStream());
-        $this->assertEquals(
-            $this->generateOutput('  0/10 [>---------------------------]   0%'),
-            stream_get_contents($output->getStream())
-        );
-    }
-
-    /**
-     * @dataProvider provideFormat
-     */
-    public function testFormatsWithoutMax($format)
-    {
-        $bar = new ProgressBar($output = $this->getOutputStream());
-        $bar->setFormat($format);
-        $bar->start();
-
-        rewind($output->getStream());
-        $this->assertNotEmpty(stream_get_contents($output->getStream()));
-    }
-
-    /**
-     * Provides each defined format.
-     *
-     * @return array
-     */
-    public function provideFormat()
-    {
-        return array(
-            array('normal'),
-            array('verbose'),
-            array('very_verbose'),
-            array('debug'),
-        );
-    }
-
-    protected function getOutputStream($decorated = true, $verbosity = StreamOutput::VERBOSITY_NORMAL)
-    {
-        return new StreamOutput(fopen('php://memory', 'r+', false), $verbosity, $decorated);
-    }
-
-    protected function generateOutput($expected)
-    {
-        $count = substr_count($expected, "\n");
-
-        return "\x0D".($count ? sprintf("\033[%dA", $count) : '').$expected;
-    }
-}
diff --git a/vendor/symfony/console/Tests/Helper/QuestionHelperTest.php b/vendor/symfony/console/Tests/Helper/QuestionHelperTest.php
deleted file mode 100644
index a1f85b1..0000000
--- a/vendor/symfony/console/Tests/Helper/QuestionHelperTest.php
+++ /dev/null
@@ -1,383 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Console\Tests\Helper;
-
-use Symfony\Component\Console\Helper\QuestionHelper;
-use Symfony\Component\Console\Helper\HelperSet;
-use Symfony\Component\Console\Helper\FormatterHelper;
-use Symfony\Component\Console\Output\StreamOutput;
-use Symfony\Component\Console\Question\ChoiceQuestion;
-use Symfony\Component\Console\Question\ConfirmationQuestion;
-use Symfony\Component\Console\Question\Question;
-
-/**
- * @group tty
- */
-class QuestionHelperTest extends \PHPUnit_Framework_TestCase
-{
-    public function testAskChoice()
-    {
-        $questionHelper = new QuestionHelper();
-
-        $helperSet = new HelperSet(array(new FormatterHelper()));
-        $questionHelper->setHelperSet($helperSet);
-
-        $heroes = array('Superman', 'Batman', 'Spiderman');
-
-        $questionHelper->setInputStream($this->getInputStream("\n1\n  1  \nFabien\n1\nFabien\n1\n0,2\n 0 , 2  \n\n\n"));
-
-        $question = new ChoiceQuestion('What is your favorite superhero?', $heroes, '2');
-        $question->setMaxAttempts(1);
-        // first answer is an empty answer, we're supposed to receive the default value
-        $this->assertEquals('Spiderman', $questionHelper->ask($this->createInputInterfaceMock(), $this->createOutputInterface(), $question));
-
-        $question = new ChoiceQuestion('What is your favorite superhero?', $heroes);
-        $question->setMaxAttempts(1);
-        $this->assertEquals('Batman', $questionHelper->ask($this->createInputInterfaceMock(), $this->createOutputInterface(), $question));
-        $this->assertEquals('Batman', $questionHelper->ask($this->createInputInterfaceMock(), $this->createOutputInterface(), $question));
-
-        $question = new ChoiceQuestion('What is your favorite superhero?', $heroes);
-        $question->setErrorMessage('Input "%s" is not a superhero!');
-        $question->setMaxAttempts(2);
-        $this->assertEquals('Batman', $questionHelper->ask($this->createInputInterfaceMock(), $output = $this->createOutputInterface(), $question));
-
-        rewind($output->getStream());
-        $stream = stream_get_contents($output->getStream());
-        $this->assertContains('Input "Fabien" is not a superhero!', $stream);
-
-        try {
-            $question = new ChoiceQuestion('What is your favorite superhero?', $heroes, '1');
-            $question->setMaxAttempts(1);
-            $questionHelper->ask($this->createInputInterfaceMock(), $output = $this->createOutputInterface(), $question);
-            $this->fail();
-        } catch (\InvalidArgumentException $e) {
-            $this->assertEquals('Value "Fabien" is invalid', $e->getMessage());
-        }
-
-        $question = new ChoiceQuestion('What is your favorite superhero?', $heroes, null);
-        $question->setMaxAttempts(1);
-        $question->setMultiselect(true);
-
-        $this->assertEquals(array('Batman'), $questionHelper->ask($this->createInputInterfaceMock(), $this->createOutputInterface(), $question));
-        $this->assertEquals(array('Superman', 'Spiderman'), $questionHelper->ask($this->createInputInterfaceMock(), $this->createOutputInterface(), $question));
-        $this->assertEquals(array('Superman', 'Spiderman'), $questionHelper->ask($this->createInputInterfaceMock(), $this->createOutputInterface(), $question));
-
-        $question = new ChoiceQuestion('What is your favorite superhero?', $heroes, '0,1');
-        $question->setMaxAttempts(1);
-        $question->setMultiselect(true);
-
-        $this->assertEquals(array('Superman', 'Batman'), $questionHelper->ask($this->createInputInterfaceMock(), $this->createOutputInterface(), $question));
-
-        $question = new ChoiceQuestion('What is your favorite superhero?', $heroes, ' 0 , 1 ');
-        $question->setMaxAttempts(1);
-        $question->setMultiselect(true);
-
-        $this->assertEquals(array('Superman', 'Batman'), $questionHelper->ask($this->createInputInterfaceMock(), $this->createOutputInterface(), $question));
-    }
-
-    public function testAsk()
-    {
-        $dialog = new QuestionHelper();
-
-        $dialog->setInputStream($this->getInputStream("\n8AM\n"));
-
-        $question = new Question('What time is it?', '2PM');
-        $this->assertEquals('2PM', $dialog->ask($this->createInputInterfaceMock(), $this->createOutputInterface(), $question));
-
-        $question = new Question('What time is it?', '2PM');
-        $this->assertEquals('8AM', $dialog->ask($this->createInputInterfaceMock(), $output = $this->createOutputInterface(), $question));
-
-        rewind($output->getStream());
-        $this->assertEquals('What time is it?', stream_get_contents($output->getStream()));
-    }
-
-    public function testAskWithAutocomplete()
-    {
-        if (!$this->hasSttyAvailable()) {
-            $this->markTestSkipped('`stty` is required to test autocomplete functionality');
-        }
-
-        // Acm<NEWLINE>
-        // Ac<BACKSPACE><BACKSPACE>s<TAB>Test<NEWLINE>
-        // <NEWLINE>
-        // <UP ARROW><UP ARROW><NEWLINE>
-        // <UP ARROW><UP ARROW><UP ARROW><UP ARROW><UP ARROW><TAB>Test<NEWLINE>
-        // <DOWN ARROW><NEWLINE>
-        // S<BACKSPACE><BACKSPACE><DOWN ARROW><DOWN ARROW><NEWLINE>
-        // F00<BACKSPACE><BACKSPACE>oo<TAB><NEWLINE>
-        $inputStream = $this->getInputStream("Acm\nAc\177\177s\tTest\n\n\033[A\033[A\n\033[A\033[A\033[A\033[A\033[A\tTest\n\033[B\nS\177\177\033[B\033[B\nF00\177\177oo\t\n");
-
-        $dialog = new QuestionHelper();
-        $dialog->setInputStream($inputStream);
-        $helperSet = new HelperSet(array(new FormatterHelper()));
-        $dialog->setHelperSet($helperSet);
-
-        $question = new Question('Please select a bundle', 'FrameworkBundle');
-        $question->setAutocompleterValues(array('AcmeDemoBundle', 'AsseticBundle', 'SecurityBundle', 'FooBundle'));
-
-        $this->assertEquals('AcmeDemoBundle', $dialog->ask($this->createInputInterfaceMock(), $this->createOutputInterface(), $question));
-        $this->assertEquals('AsseticBundleTest', $dialog->ask($this->createInputInterfaceMock(), $this->createOutputInterface(), $question));
-        $this->assertEquals('FrameworkBundle', $dialog->ask($this->createInputInterfaceMock(), $this->createOutputInterface(), $question));
-        $this->assertEquals('SecurityBundle', $dialog->ask($this->createInputInterfaceMock(), $this->createOutputInterface(), $question));
-        $this->assertEquals('FooBundleTest', $dialog->ask($this->createInputInterfaceMock(), $this->createOutputInterface(), $question));
-        $this->assertEquals('AcmeDemoBundle', $dialog->ask($this->createInputInterfaceMock(), $this->createOutputInterface(), $question));
-        $this->assertEquals('AsseticBundle', $dialog->ask($this->createInputInterfaceMock(), $this->createOutputInterface(), $question));
-        $this->assertEquals('FooBundle', $dialog->ask($this->createInputInterfaceMock(), $this->createOutputInterface(), $question));
-    }
-
-    public function testAskHiddenResponse()
-    {
-        if ('\\' === DIRECTORY_SEPARATOR) {
-            $this->markTestSkipped('This test is not supported on Windows');
-        }
-
-        $dialog = new QuestionHelper();
-        $dialog->setInputStream($this->getInputStream("8AM\n"));
-
-        $question = new Question('What time is it?');
-        $question->setHidden(true);
-
-        $this->assertEquals('8AM', $dialog->ask($this->createInputInterfaceMock(), $this->createOutputInterface(), $question));
-    }
-
-    /**
-     * @dataProvider getAskConfirmationData
-     */
-    public function testAskConfirmation($question, $expected, $default = true)
-    {
-        $dialog = new QuestionHelper();
-
-        $dialog->setInputStream($this->getInputStream($question."\n"));
-        $question = new ConfirmationQuestion('Do you like French fries?', $default);
-        $this->assertEquals($expected, $dialog->ask($this->createInputInterfaceMock(), $this->createOutputInterface(), $question), 'confirmation question should '.($expected ? 'pass' : 'cancel'));
-    }
-
-    public function getAskConfirmationData()
-    {
-        return array(
-            array('', true),
-            array('', false, false),
-            array('y', true),
-            array('yes', true),
-            array('n', false),
-            array('no', false),
-        );
-    }
-
-    public function testAskConfirmationWithCustomTrueAnswer()
-    {
-        $dialog = new QuestionHelper();
-
-        $dialog->setInputStream($this->getInputStream("j\ny\n"));
-        $question = new ConfirmationQuestion('Do you like French fries?', false, '/^(j|y)/i');
-        $this->assertTrue($dialog->ask($this->createInputInterfaceMock(), $this->createOutputInterface(), $question));
-        $question = new ConfirmationQuestion('Do you like French fries?', false, '/^(j|y)/i');
-        $this->assertTrue($dialog->ask($this->createInputInterfaceMock(), $this->createOutputInterface(), $question));
-    }
-
-    public function testAskAndValidate()
-    {
-        $dialog = new QuestionHelper();
-        $helperSet = new HelperSet(array(new FormatterHelper()));
-        $dialog->setHelperSet($helperSet);
-
-        $error = 'This is not a color!';
-        $validator = function ($color) use ($error) {
-            if (!in_array($color, array('white', 'black'))) {
-                throw new \InvalidArgumentException($error);
-            }
-
-            return $color;
-        };
-
-        $question = new Question('What color was the white horse of Henry IV?', 'white');
-        $question->setValidator($validator);
-        $question->setMaxAttempts(2);
-
-        $dialog->setInputStream($this->getInputStream("\nblack\n"));
-        $this->assertEquals('white', $dialog->ask($this->createInputInterfaceMock(), $this->createOutputInterface(), $question));
-        $this->assertEquals('black', $dialog->ask($this->createInputInterfaceMock(), $this->createOutputInterface(), $question));
-
-        $dialog->setInputStream($this->getInputStream("green\nyellow\norange\n"));
-        try {
-            $dialog->ask($this->createInputInterfaceMock(), $this->createOutputInterface(), $question);
-            $this->fail();
-        } catch (\InvalidArgumentException $e) {
-            $this->assertEquals($error, $e->getMessage());
-        }
-    }
-
-    /**
-     * @dataProvider simpleAnswerProvider
-     */
-    public function testSelectChoiceFromSimpleChoices($providedAnswer, $expectedValue)
-    {
-        $possibleChoices = array(
-            'My environment 1',
-            'My environment 2',
-            'My environment 3',
-        );
-
-        $dialog = new QuestionHelper();
-        $dialog->setInputStream($this->getInputStream($providedAnswer."\n"));
-        $helperSet = new HelperSet(array(new FormatterHelper()));
-        $dialog->setHelperSet($helperSet);
-
-        $question = new ChoiceQuestion('Please select the environment to load', $possibleChoices);
-        $question->setMaxAttempts(1);
-        $answer = $dialog->ask($this->createInputInterfaceMock(), $this->createOutputInterface(), $question);
-
-        $this->assertSame($expectedValue, $answer);
-    }
-
-    public function simpleAnswerProvider()
-    {
-        return array(
-            array(0, 'My environment 1'),
-            array(1, 'My environment 2'),
-            array(2, 'My environment 3'),
-            array('My environment 1', 'My environment 1'),
-            array('My environment 2', 'My environment 2'),
-            array('My environment 3', 'My environment 3'),
-        );
-    }
-
-    /**
-     * @dataProvider mixedKeysChoiceListAnswerProvider
-     */
-    public function testChoiceFromChoicelistWithMixedKeys($providedAnswer, $expectedValue)
-    {
-        $possibleChoices = array(
-            '0' => 'No environment',
-            '1' => 'My environment 1',
-            'env_2' => 'My environment 2',
-            3 => 'My environment 3',
-        );
-
-        $dialog = new QuestionHelper();
-        $dialog->setInputStream($this->getInputStream($providedAnswer."\n"));
-        $helperSet = new HelperSet(array(new FormatterHelper()));
-        $dialog->setHelperSet($helperSet);
-
-        $question = new ChoiceQuestion('Please select the environment to load', $possibleChoices);
-        $question->setMaxAttempts(1);
-        $answer = $dialog->ask($this->createInputInterfaceMock(), $this->createOutputInterface(), $question);
-
-        $this->assertSame($expectedValue, $answer);
-    }
-
-    public function mixedKeysChoiceListAnswerProvider()
-    {
-        return array(
-            array('0', '0'),
-            array('No environment', '0'),
-            array('1', '1'),
-            array('env_2', 'env_2'),
-            array(3, '3'),
-            array('My environment 1', '1'),
-        );
-    }
-
-    /**
-     * @dataProvider answerProvider
-     */
-    public function testSelectChoiceFromChoiceList($providedAnswer, $expectedValue)
-    {
-        $possibleChoices = array(
-            'env_1' => 'My environment 1',
-            'env_2' => 'My environment',
-            'env_3' => 'My environment',
-        );
-
-        $dialog = new QuestionHelper();
-        $dialog->setInputStream($this->getInputStream($providedAnswer."\n"));
-        $helperSet = new HelperSet(array(new FormatterHelper()));
-        $dialog->setHelperSet($helperSet);
-
-        $question = new ChoiceQuestion('Please select the environment to load', $possibleChoices);
-        $question->setMaxAttempts(1);
-        $answer = $dialog->ask($this->createInputInterfaceMock(), $this->createOutputInterface(), $question);
-
-        $this->assertSame($expectedValue, $answer);
-    }
-
-    /**
-     * @expectedException        \InvalidArgumentException
-     * @expectedExceptionMessage The provided answer is ambiguous. Value should be one of env_2 or env_3.
-     */
-    public function testAmbiguousChoiceFromChoicelist()
-    {
-        $possibleChoices = array(
-            'env_1' => 'My first environment',
-            'env_2' => 'My environment',
-            'env_3' => 'My environment',
-        );
-
-        $dialog = new QuestionHelper();
-        $dialog->setInputStream($this->getInputStream("My environment\n"));
-        $helperSet = new HelperSet(array(new FormatterHelper()));
-        $dialog->setHelperSet($helperSet);
-
-        $question = new ChoiceQuestion('Please select the environment to load', $possibleChoices);
-        $question->setMaxAttempts(1);
-
-        $dialog->ask($this->createInputInterfaceMock(), $this->createOutputInterface(), $question);
-    }
-
-    public function answerProvider()
-    {
-        return array(
-            array('env_1', 'env_1'),
-            array('env_2', 'env_2'),
-            array('env_3', 'env_3'),
-            array('My environment 1', 'env_1'),
-        );
-    }
-
-    public function testNoInteraction()
-    {
-        $dialog = new QuestionHelper();
-        $question = new Question('Do you have a job?', 'not yet');
-        $this->assertEquals('not yet', $dialog->ask($this->createInputInterfaceMock(false), $this->createOutputInterface(), $question));
-    }
-
-    protected function getInputStream($input)
-    {
-        $stream = fopen('php://memory', 'r+', false);
-        fwrite($stream, $input);
-        rewind($stream);
-
-        return $stream;
-    }
-
-    protected function createOutputInterface()
-    {
-        return new StreamOutput(fopen('php://memory', 'r+', false));
-    }
-
-    protected function createInputInterfaceMock($interactive = true)
-    {
-        $mock = $this->getMock('Symfony\Component\Console\Input\InputInterface');
-        $mock->expects($this->any())
-            ->method('isInteractive')
-            ->will($this->returnValue($interactive));
-
-        return $mock;
-    }
-
-    private function hasSttyAvailable()
-    {
-        exec('stty 2>&1', $output, $exitcode);
-
-        return $exitcode === 0;
-    }
-}
diff --git a/vendor/symfony/console/Tests/Helper/TableStyleTest.php b/vendor/symfony/console/Tests/Helper/TableStyleTest.php
deleted file mode 100644
index 587d841..0000000
--- a/vendor/symfony/console/Tests/Helper/TableStyleTest.php
+++ /dev/null
@@ -1,27 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Console\Tests\Helper;
-
-use Symfony\Component\Console\Helper\TableStyle;
-
-class TableStyleTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @expectedException        \InvalidArgumentException
-     * @expectedExceptionMessage Invalid padding type. Expected one of (STR_PAD_LEFT, STR_PAD_RIGHT, STR_PAD_BOTH).
-     */
-    public function testSetPadTypeWithInvalidType()
-    {
-        $style = new TableStyle();
-        $style->setPadType('TEST');
-    }
-}
diff --git a/vendor/symfony/console/Tests/Helper/TableTest.php b/vendor/symfony/console/Tests/Helper/TableTest.php
deleted file mode 100644
index ad05379..0000000
--- a/vendor/symfony/console/Tests/Helper/TableTest.php
+++ /dev/null
@@ -1,568 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Console\Tests\Helper;
-
-use Symfony\Component\Console\Helper\Table;
-use Symfony\Component\Console\Helper\TableStyle;
-use Symfony\Component\Console\Helper\TableSeparator;
-use Symfony\Component\Console\Helper\TableCell;
-use Symfony\Component\Console\Output\StreamOutput;
-
-class TableTest extends \PHPUnit_Framework_TestCase
-{
-    protected $stream;
-
-    protected function setUp()
-    {
-        $this->stream = fopen('php://memory', 'r+');
-    }
-
-    protected function tearDown()
-    {
-        fclose($this->stream);
-        $this->stream = null;
-    }
-
-    /**
-     * @dataProvider testRenderProvider
-     */
-    public function testRender($headers, $rows, $style, $expected)
-    {
-        $table = new Table($output = $this->getOutputStream());
-        $table
-            ->setHeaders($headers)
-            ->setRows($rows)
-            ->setStyle($style)
-        ;
-        $table->render();
-
-        $this->assertEquals($expected, $this->getOutputContent($output));
-    }
-
-    /**
-     * @dataProvider testRenderProvider
-     */
-    public function testRenderAddRows($headers, $rows, $style, $expected)
-    {
-        $table = new Table($output = $this->getOutputStream());
-        $table
-            ->setHeaders($headers)
-            ->addRows($rows)
-            ->setStyle($style)
-        ;
-        $table->render();
-
-        $this->assertEquals($expected, $this->getOutputContent($output));
-    }
-
-    /**
-     * @dataProvider testRenderProvider
-     */
-    public function testRenderAddRowsOneByOne($headers, $rows, $style, $expected)
-    {
-        $table = new Table($output = $this->getOutputStream());
-        $table
-            ->setHeaders($headers)
-            ->setStyle($style)
-        ;
-        foreach ($rows as $row) {
-            $table->addRow($row);
-        }
-        $table->render();
-
-        $this->assertEquals($expected, $this->getOutputContent($output));
-    }
-
-    public function testRenderProvider()
-    {
-        $books = array(
-            array('99921-58-10-7', 'Divine Comedy', 'Dante Alighieri'),
-            array('9971-5-0210-0', 'A Tale of Two Cities', 'Charles Dickens'),
-            array('960-425-059-0', 'The Lord of the Rings', 'J. R. R. Tolkien'),
-            array('80-902734-1-6', 'And Then There Were None', 'Agatha Christie'),
-        );
-
-        return array(
-            array(
-                array('ISBN', 'Title', 'Author'),
-                $books,
-                'default',
-<<<TABLE
-+---------------+--------------------------+------------------+
-| ISBN          | Title                    | Author           |
-+---------------+--------------------------+------------------+
-| 99921-58-10-7 | Divine Comedy            | Dante Alighieri  |
-| 9971-5-0210-0 | A Tale of Two Cities     | Charles Dickens  |
-| 960-425-059-0 | The Lord of the Rings    | J. R. R. Tolkien |
-| 80-902734-1-6 | And Then There Were None | Agatha Christie  |
-+---------------+--------------------------+------------------+
-
-TABLE
-            ),
-            array(
-                array('ISBN', 'Title', 'Author'),
-                $books,
-                'compact',
-<<<TABLE
- ISBN          Title                    Author           
- 99921-58-10-7 Divine Comedy            Dante Alighieri  
- 9971-5-0210-0 A Tale of Two Cities     Charles Dickens  
- 960-425-059-0 The Lord of the Rings    J. R. R. Tolkien 
- 80-902734-1-6 And Then There Were None Agatha Christie  
-
-TABLE
-            ),
-            array(
-                array('ISBN', 'Title', 'Author'),
-                $books,
-                'borderless',
-<<<TABLE
- =============== ========================== ================== 
-  ISBN            Title                      Author            
- =============== ========================== ================== 
-  99921-58-10-7   Divine Comedy              Dante Alighieri   
-  9971-5-0210-0   A Tale of Two Cities       Charles Dickens   
-  960-425-059-0   The Lord of the Rings      J. R. R. Tolkien  
-  80-902734-1-6   And Then There Were None   Agatha Christie   
- =============== ========================== ================== 
-
-TABLE
-            ),
-            array(
-                array('ISBN', 'Title'),
-                array(
-                    array('99921-58-10-7', 'Divine Comedy', 'Dante Alighieri'),
-                    array('9971-5-0210-0'),
-                    array('960-425-059-0', 'The Lord of the Rings', 'J. R. R. Tolkien'),
-                    array('80-902734-1-6', 'And Then There Were None', 'Agatha Christie'),
-                ),
-                'default',
-<<<TABLE
-+---------------+--------------------------+------------------+
-| ISBN          | Title                    |                  |
-+---------------+--------------------------+------------------+
-| 99921-58-10-7 | Divine Comedy            | Dante Alighieri  |
-| 9971-5-0210-0 |                          |                  |
-| 960-425-059-0 | The Lord of the Rings    | J. R. R. Tolkien |
-| 80-902734-1-6 | And Then There Were None | Agatha Christie  |
-+---------------+--------------------------+------------------+
-
-TABLE
-            ),
-            array(
-                array(),
-                array(
-                    array('99921-58-10-7', 'Divine Comedy', 'Dante Alighieri'),
-                    array('9971-5-0210-0'),
-                    array('960-425-059-0', 'The Lord of the Rings', 'J. R. R. Tolkien'),
-                    array('80-902734-1-6', 'And Then There Were None', 'Agatha Christie'),
-                ),
-                'default',
-<<<TABLE
-+---------------+--------------------------+------------------+
-| 99921-58-10-7 | Divine Comedy            | Dante Alighieri  |
-| 9971-5-0210-0 |                          |                  |
-| 960-425-059-0 | The Lord of the Rings    | J. R. R. Tolkien |
-| 80-902734-1-6 | And Then There Were None | Agatha Christie  |
-+---------------+--------------------------+------------------+
-
-TABLE
-            ),
-            array(
-                array('ISBN', 'Title', 'Author'),
-                array(
-                    array('99921-58-10-7', "Divine\nComedy", 'Dante Alighieri'),
-                    array('9971-5-0210-2', "Harry Potter\nand the Chamber of Secrets", "Rowling\nJoanne K."),
-                    array('9971-5-0210-2', "Harry Potter\nand the Chamber of Secrets", "Rowling\nJoanne K."),
-                    array('960-425-059-0', 'The Lord of the Rings', "J. R. R.\nTolkien"),
-                ),
-                'default',
-<<<TABLE
-+---------------+----------------------------+-----------------+
-| ISBN          | Title                      | Author          |
-+---------------+----------------------------+-----------------+
-| 99921-58-10-7 | Divine                     | Dante Alighieri |
-|               | Comedy                     |                 |
-| 9971-5-0210-2 | Harry Potter               | Rowling         |
-|               | and the Chamber of Secrets | Joanne K.       |
-| 9971-5-0210-2 | Harry Potter               | Rowling         |
-|               | and the Chamber of Secrets | Joanne K.       |
-| 960-425-059-0 | The Lord of the Rings      | J. R. R.        |
-|               |                            | Tolkien         |
-+---------------+----------------------------+-----------------+
-
-TABLE
-            ),
-            array(
-                array('ISBN', 'Title'),
-                array(),
-                'default',
-<<<TABLE
-+------+-------+
-| ISBN | Title |
-+------+-------+
-
-TABLE
-            ),
-            array(
-                array(),
-                array(),
-                'default',
-                '',
-            ),
-            'Cell text with tags used for Output styling' => array(
-                array('ISBN', 'Title', 'Author'),
-                array(
-                    array('<info>99921-58-10-7</info>', '<error>Divine Comedy</error>', '<fg=blue;bg=white>Dante Alighieri</fg=blue;bg=white>'),
-                    array('9971-5-0210-0', 'A Tale of Two Cities', '<info>Charles Dickens</>'),
-                ),
-                'default',
-<<<TABLE
-+---------------+----------------------+-----------------+
-| ISBN          | Title                | Author          |
-+---------------+----------------------+-----------------+
-| 99921-58-10-7 | Divine Comedy        | Dante Alighieri |
-| 9971-5-0210-0 | A Tale of Two Cities | Charles Dickens |
-+---------------+----------------------+-----------------+
-
-TABLE
-            ),
-            'Cell text with tags not used for Output styling' => array(
-                array('ISBN', 'Title', 'Author'),
-                array(
-                    array('<strong>99921-58-10-700</strong>', '<f>Divine Com</f>', 'Dante Alighieri'),
-                    array('9971-5-0210-0', 'A Tale of Two Cities', 'Charles Dickens'),
-                ),
-                'default',
-<<<TABLE
-+----------------------------------+----------------------+-----------------+
-| ISBN                             | Title                | Author          |
-+----------------------------------+----------------------+-----------------+
-| <strong>99921-58-10-700</strong> | <f>Divine Com</f>    | Dante Alighieri |
-| 9971-5-0210-0                    | A Tale of Two Cities | Charles Dickens |
-+----------------------------------+----------------------+-----------------+
-
-TABLE
-            ),
-            'Cell with colspan' => array(
-                array('ISBN', 'Title', 'Author'),
-                array(
-                    array('99921-58-10-7', 'Divine Comedy', 'Dante Alighieri'),
-                    new TableSeparator(),
-                    array(new TableCell('Divine Comedy(Dante Alighieri)', array('colspan' => 3))),
-                    new TableSeparator(),
-                    array(
-                        new TableCell('Arduino: A Quick-Start Guide', array('colspan' => 2)),
-                        'Mark Schmidt',
-                    ),
-                    new TableSeparator(),
-                    array(
-                        '9971-5-0210-0',
-                        new TableCell("A Tale of \nTwo Cities", array('colspan' => 2)),
-                    ),
-                ),
-                'default',
-<<<TABLE
-+----------------+---------------+-----------------+
-| ISBN           | Title         | Author          |
-+----------------+---------------+-----------------+
-| 99921-58-10-7  | Divine Comedy | Dante Alighieri |
-+----------------+---------------+-----------------+
-| Divine Comedy(Dante Alighieri)                   |
-+----------------+---------------+-----------------+
-| Arduino: A Quick-Start Guide   | Mark Schmidt    |
-+----------------+---------------+-----------------+
-| 9971-5-0210-0  | A Tale of                       |
-|                | Two Cities                      |
-+----------------+---------------+-----------------+
-
-TABLE
-            ),
-            'Cell with rowspan' => array(
-                array('ISBN', 'Title', 'Author'),
-                array(
-                    array(
-                        new TableCell('9971-5-0210-0', array('rowspan' => 3)),
-                        'Divine Comedy',
-                        'Dante Alighieri',
-                    ),
-                    array('A Tale of Two Cities', 'Charles Dickens'),
-                    array("The Lord of \nthe Rings", "J. R. \nR. Tolkien"),
-                    new TableSeparator(),
-                    array('80-902734-1-6', new TableCell("And Then \nThere \nWere None", array('rowspan' => 3)), 'Agatha Christie'),
-                    array('80-902734-1-7', 'Test'),
-                ),
-                'default',
-<<<TABLE
-+---------------+----------------------+-----------------+
-| ISBN          | Title                | Author          |
-+---------------+----------------------+-----------------+
-| 9971-5-0210-0 | Divine Comedy        | Dante Alighieri |
-|               | A Tale of Two Cities | Charles Dickens |
-|               | The Lord of          | J. R.           |
-|               | the Rings            | R. Tolkien      |
-+---------------+----------------------+-----------------+
-| 80-902734-1-6 | And Then             | Agatha Christie |
-| 80-902734-1-7 | There                | Test            |
-|               | Were None            |                 |
-+---------------+----------------------+-----------------+
-
-TABLE
-            ),
-            'Cell with rowspan and colspan' => array(
-                array('ISBN', 'Title', 'Author'),
-                array(
-                    array(
-                        new TableCell('9971-5-0210-0', array('rowspan' => 2, 'colspan' => 2)),
-                        'Dante Alighieri',
-                    ),
-                    array('Charles Dickens'),
-                    new TableSeparator(),
-                    array(
-                        'Dante Alighieri',
-                        new TableCell('9971-5-0210-0', array('rowspan' => 3, 'colspan' => 2)),
-                    ),
-                    array('J. R. R. Tolkien'),
-                    array('J. R. R'),
-                ),
-                'default',
-<<<TABLE
-+------------------+--------+-----------------+
-| ISBN             | Title  | Author          |
-+------------------+--------+-----------------+
-| 9971-5-0210-0             | Dante Alighieri |
-|                           | Charles Dickens |
-+------------------+--------+-----------------+
-| Dante Alighieri  | 9971-5-0210-0            |
-| J. R. R. Tolkien |                          |
-| J. R. R          |                          |
-+------------------+--------+-----------------+
-
-TABLE
-            ),
-            'Cell with rowspan and colspan contains new line break' => array(
-                array('ISBN', 'Title', 'Author'),
-                array(
-                    array(
-                        new TableCell("9971\n-5-\n021\n0-0", array('rowspan' => 2, 'colspan' => 2)),
-                        'Dante Alighieri',
-                    ),
-                    array('Charles Dickens'),
-                    new TableSeparator(),
-                    array(
-                        'Dante Alighieri',
-                        new TableCell("9971\n-5-\n021\n0-0", array('rowspan' => 2, 'colspan' => 2)),
-                    ),
-                    array('Charles Dickens'),
-                    new TableSeparator(),
-                    array(
-                        new TableCell("9971\n-5-\n021\n0-0", array('rowspan' => 2, 'colspan' => 2)),
-                        new TableCell("Dante \nAlighieri", array('rowspan' => 2, 'colspan' => 1)),
-                    ),
-                ),
-                'default',
-<<<TABLE
-+-----------------+-------+-----------------+
-| ISBN            | Title | Author          |
-+-----------------+-------+-----------------+
-| 9971                    | Dante Alighieri |
-| -5-                     | Charles Dickens |
-| 021                     |                 |
-| 0-0                     |                 |
-+-----------------+-------+-----------------+
-| Dante Alighieri | 9971                    |
-| Charles Dickens | -5-                     |
-|                 | 021                     |
-|                 | 0-0                     |
-+-----------------+-------+-----------------+
-| 9971                    | Dante           |
-| -5-                     | Alighieri       |
-| 021                     |                 |
-| 0-0                     |                 |
-+-----------------+-------+-----------------+
-
-TABLE
-            ),
-            'Cell with rowspan and colspan without using TableSeparator' => array(
-                array('ISBN', 'Title', 'Author'),
-                array(
-                    array(
-                        new TableCell("9971\n-5-\n021\n0-0", array('rowspan' => 2, 'colspan' => 2)),
-                        'Dante Alighieri',
-                    ),
-                    array('Charles Dickens'),
-                    array(
-                        'Dante Alighieri',
-                        new TableCell("9971\n-5-\n021\n0-0", array('rowspan' => 2, 'colspan' => 2)),
-                    ),
-                    array('Charles Dickens'),
-                ),
-                'default',
-<<<TABLE
-+-----------------+-------+-----------------+
-| ISBN            | Title | Author          |
-+-----------------+-------+-----------------+
-| 9971                    | Dante Alighieri |
-| -5-                     | Charles Dickens |
-| 021                     |                 |
-| 0-0                     |                 |
-| Dante Alighieri | 9971                    |
-| Charles Dickens | -5-                     |
-|                 | 021                     |
-|                 | 0-0                     |
-+-----------------+-------+-----------------+
-
-TABLE
-            ),
-            'Cell with rowspan and colspan with separator inside a rowspan' => array(
-                array('ISBN', 'Author'),
-                array(
-                    array(
-                        new TableCell('9971-5-0210-0', array('rowspan' => 3, 'colspan' => 1)),
-                        'Dante Alighieri',
-                    ),
-                    array(new TableSeparator()),
-                    array('Charles Dickens'),
-                ),
-                'default',
-<<<TABLE
-+---------------+-----------------+
-| ISBN          | Author          |
-+---------------+-----------------+
-| 9971-5-0210-0 | Dante Alighieri |
-|               |-----------------|
-|               | Charles Dickens |
-+---------------+-----------------+
-
-TABLE
-            ),
-            'Multiple header lines' => array(
-                array(
-                    array(new TableCell('Main title', array('colspan' => 3))),
-                    array('ISBN', 'Title', 'Author'),
-                ),
-                array(),
-                'default',
-<<<TABLE
-+------+-------+--------+
-| Main title            |
-+------+-------+--------+
-| ISBN | Title | Author |
-+------+-------+--------+
-
-TABLE
-            ),
-        );
-    }
-
-    public function testRenderMultiByte()
-    {
-        if (!function_exists('mb_strlen')) {
-            $this->markTestSkipped('The "mbstring" extension is not available');
-        }
-
-        $table = new Table($output = $this->getOutputStream());
-        $table
-            ->setHeaders(array('■■'))
-            ->setRows(array(array(1234)))
-            ->setStyle('default')
-        ;
-        $table->render();
-
-        $expected =
-<<<TABLE
-+------+
-| ■■   |
-+------+
-| 1234 |
-+------+
-
-TABLE;
-
-        $this->assertEquals($expected, $this->getOutputContent($output));
-    }
-
-    public function testStyle()
-    {
-        $style = new TableStyle();
-        $style
-            ->setHorizontalBorderChar('.')
-            ->setVerticalBorderChar('.')
-            ->setCrossingChar('.')
-        ;
-
-        Table::setStyleDefinition('dotfull', $style);
-        $table = new Table($output = $this->getOutputStream());
-        $table
-            ->setHeaders(array('Foo'))
-            ->setRows(array(array('Bar')))
-            ->setStyle('dotfull');
-        $table->render();
-
-        $expected =
-<<<TABLE
-.......
-. Foo .
-.......
-. Bar .
-.......
-
-TABLE;
-
-        $this->assertEquals($expected, $this->getOutputContent($output));
-    }
-
-    public function testRowSeparator()
-    {
-        $table = new Table($output = $this->getOutputStream());
-        $table
-            ->setHeaders(array('Foo'))
-            ->setRows(array(
-                array('Bar1'),
-                new TableSeparator(),
-                array('Bar2'),
-                new TableSeparator(),
-                array('Bar3'),
-            ));
-        $table->render();
-
-        $expected =
-<<<TABLE
-+------+
-| Foo  |
-+------+
-| Bar1 |
-+------+
-| Bar2 |
-+------+
-| Bar3 |
-+------+
-
-TABLE;
-
-        $this->assertEquals($expected, $this->getOutputContent($output));
-
-        $this->assertEquals($table, $table->addRow(new TableSeparator()), 'fluent interface on addRow() with a single TableSeparator() works');
-    }
-
-    protected function getOutputStream()
-    {
-        return new StreamOutput($this->stream, StreamOutput::VERBOSITY_NORMAL, false);
-    }
-
-    protected function getOutputContent(StreamOutput $output)
-    {
-        rewind($output->getStream());
-
-        return str_replace(PHP_EOL, "\n", stream_get_contents($output->getStream()));
-    }
-}
diff --git a/vendor/symfony/console/Tests/Input/ArgvInputTest.php b/vendor/symfony/console/Tests/Input/ArgvInputTest.php
deleted file mode 100644
index d2c540e..0000000
--- a/vendor/symfony/console/Tests/Input/ArgvInputTest.php
+++ /dev/null
@@ -1,317 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Console\Tests\Input;
-
-use Symfony\Component\Console\Input\ArgvInput;
-use Symfony\Component\Console\Input\InputDefinition;
-use Symfony\Component\Console\Input\InputArgument;
-use Symfony\Component\Console\Input\InputOption;
-
-class ArgvInputTest extends \PHPUnit_Framework_TestCase
-{
-    public function testConstructor()
-    {
-        $_SERVER['argv'] = array('cli.php', 'foo');
-        $input = new ArgvInput();
-        $r = new \ReflectionObject($input);
-        $p = $r->getProperty('tokens');
-        $p->setAccessible(true);
-
-        $this->assertEquals(array('foo'), $p->getValue($input), '__construct() automatically get its input from the argv server variable');
-    }
-
-    public function testParseArguments()
-    {
-        $input = new ArgvInput(array('cli.php', 'foo'));
-        $input->bind(new InputDefinition(array(new InputArgument('name'))));
-        $this->assertEquals(array('name' => 'foo'), $input->getArguments(), '->parse() parses required arguments');
-
-        $input->bind(new InputDefinition(array(new InputArgument('name'))));
-        $this->assertEquals(array('name' => 'foo'), $input->getArguments(), '->parse() is stateless');
-    }
-
-    /**
-     * @dataProvider provideOptions
-     */
-    public function testParseOptions($input, $options, $expectedOptions, $message)
-    {
-        $input = new ArgvInput($input);
-        $input->bind(new InputDefinition($options));
-
-        $this->assertEquals($expectedOptions, $input->getOptions(), $message);
-    }
-
-    public function provideOptions()
-    {
-        return array(
-            array(
-                array('cli.php', '--foo'),
-                array(new InputOption('foo')),
-                array('foo' => true),
-                '->parse() parses long options without a value',
-            ),
-            array(
-                array('cli.php', '--foo=bar'),
-                array(new InputOption('foo', 'f', InputOption::VALUE_REQUIRED)),
-                array('foo' => 'bar'),
-                '->parse() parses long options with a required value (with a = separator)',
-            ),
-            array(
-                array('cli.php', '--foo', 'bar'),
-                array(new InputOption('foo', 'f', InputOption::VALUE_REQUIRED)),
-                array('foo' => 'bar'),
-                '->parse() parses long options with a required value (with a space separator)',
-            ),
-            array(
-                array('cli.php', '-f'),
-                array(new InputOption('foo', 'f')),
-                array('foo' => true),
-                '->parse() parses short options without a value',
-            ),
-            array(
-                array('cli.php', '-fbar'),
-                array(new InputOption('foo', 'f', InputOption::VALUE_REQUIRED)),
-                array('foo' => 'bar'),
-                '->parse() parses short options with a required value (with no separator)',
-            ),
-            array(
-                array('cli.php', '-f', 'bar'),
-                array(new InputOption('foo', 'f', InputOption::VALUE_REQUIRED)),
-                array('foo' => 'bar'),
-                '->parse() parses short options with a required value (with a space separator)',
-            ),
-            array(
-                array('cli.php', '-f', ''),
-                array(new InputOption('foo', 'f', InputOption::VALUE_OPTIONAL)),
-                array('foo' => ''),
-                '->parse() parses short options with an optional empty value',
-            ),
-            array(
-                array('cli.php', '-f', '', 'foo'),
-                array(new InputArgument('name'), new InputOption('foo', 'f', InputOption::VALUE_OPTIONAL)),
-                array('foo' => ''),
-                '->parse() parses short options with an optional empty value followed by an argument',
-            ),
-            array(
-                array('cli.php', '-f', '', '-b'),
-                array(new InputOption('foo', 'f', InputOption::VALUE_OPTIONAL), new InputOption('bar', 'b')),
-                array('foo' => '', 'bar' => true),
-                '->parse() parses short options with an optional empty value followed by an option',
-            ),
-            array(
-                array('cli.php', '-f', '-b', 'foo'),
-                array(new InputArgument('name'), new InputOption('foo', 'f', InputOption::VALUE_OPTIONAL), new InputOption('bar', 'b')),
-                array('foo' => null, 'bar' => true),
-                '->parse() parses short options with an optional value which is not present',
-            ),
-            array(
-                array('cli.php', '-fb'),
-                array(new InputOption('foo', 'f'), new InputOption('bar', 'b')),
-                array('foo' => true, 'bar' => true),
-                '->parse() parses short options when they are aggregated as a single one',
-            ),
-            array(
-                array('cli.php', '-fb', 'bar'),
-                array(new InputOption('foo', 'f'), new InputOption('bar', 'b', InputOption::VALUE_REQUIRED)),
-                array('foo' => true, 'bar' => 'bar'),
-                '->parse() parses short options when they are aggregated as a single one and the last one has a required value',
-            ),
-            array(
-                array('cli.php', '-fb', 'bar'),
-                array(new InputOption('foo', 'f'), new InputOption('bar', 'b', InputOption::VALUE_OPTIONAL)),
-                array('foo' => true, 'bar' => 'bar'),
-                '->parse() parses short options when they are aggregated as a single one and the last one has an optional value',
-            ),
-            array(
-                array('cli.php', '-fbbar'),
-                array(new InputOption('foo', 'f'), new InputOption('bar', 'b', InputOption::VALUE_OPTIONAL)),
-                array('foo' => true, 'bar' => 'bar'),
-                '->parse() parses short options when they are aggregated as a single one and the last one has an optional value with no separator',
-            ),
-            array(
-                array('cli.php', '-fbbar'),
-                array(new InputOption('foo', 'f', InputOption::VALUE_OPTIONAL), new InputOption('bar', 'b', InputOption::VALUE_OPTIONAL)),
-                array('foo' => 'bbar', 'bar' => null),
-                '->parse() parses short options when they are aggregated as a single one and one of them takes a value',
-            ),
-        );
-    }
-
-    /**
-     * @dataProvider provideInvalidInput
-     */
-    public function testInvalidInput($argv, $definition, $expectedExceptionMessage)
-    {
-        $this->setExpectedException('RuntimeException', $expectedExceptionMessage);
-
-        $input = new ArgvInput($argv);
-        $input->bind($definition);
-    }
-
-    public function provideInvalidInput()
-    {
-        return array(
-            array(
-                array('cli.php', '--foo'),
-                new InputDefinition(array(new InputOption('foo', 'f', InputOption::VALUE_REQUIRED))),
-                'The "--foo" option requires a value.',
-            ),
-            array(
-                array('cli.php', '-f'),
-                new InputDefinition(array(new InputOption('foo', 'f', InputOption::VALUE_REQUIRED))),
-                'The "--foo" option requires a value.',
-            ),
-            array(
-                array('cli.php', '-ffoo'),
-                new InputDefinition(array(new InputOption('foo', 'f', InputOption::VALUE_NONE))),
-                'The "-o" option does not exist.',
-            ),
-            array(
-                array('cli.php', '--foo=bar'),
-                new InputDefinition(array(new InputOption('foo', 'f', InputOption::VALUE_NONE))),
-                'The "--foo" option does not accept a value.',
-            ),
-            array(
-                array('cli.php', 'foo', 'bar'),
-                new InputDefinition(),
-                'Too many arguments.',
-            ),
-            array(
-                array('cli.php', '--foo'),
-                new InputDefinition(),
-                'The "--foo" option does not exist.',
-            ),
-            array(
-                array('cli.php', '-f'),
-                new InputDefinition(),
-                'The "-f" option does not exist.',
-            ),
-            array(
-                array('cli.php', '-1'),
-                new InputDefinition(array(new InputArgument('number'))),
-                'The "-1" option does not exist.',
-            ),
-        );
-    }
-
-    public function testParseArrayArgument()
-    {
-        $input = new ArgvInput(array('cli.php', 'foo', 'bar', 'baz', 'bat'));
-        $input->bind(new InputDefinition(array(new InputArgument('name', InputArgument::IS_ARRAY))));
-
-        $this->assertEquals(array('name' => array('foo', 'bar', 'baz', 'bat')), $input->getArguments(), '->parse() parses array arguments');
-    }
-
-    public function testParseArrayOption()
-    {
-        $input = new ArgvInput(array('cli.php', '--name=foo', '--name=bar', '--name=baz'));
-        $input->bind(new InputDefinition(array(new InputOption('name', null, InputOption::VALUE_OPTIONAL | InputOption::VALUE_IS_ARRAY))));
-
-        $this->assertEquals(array('name' => array('foo', 'bar', 'baz')), $input->getOptions(), '->parse() parses array options ("--option=value" syntax)');
-
-        $input = new ArgvInput(array('cli.php', '--name', 'foo', '--name', 'bar', '--name', 'baz'));
-        $input->bind(new InputDefinition(array(new InputOption('name', null, InputOption::VALUE_OPTIONAL | InputOption::VALUE_IS_ARRAY))));
-        $this->assertEquals(array('name' => array('foo', 'bar', 'baz')), $input->getOptions(), '->parse() parses array options ("--option value" syntax)');
-
-        $input = new ArgvInput(array('cli.php', '--name=foo', '--name=bar', '--name='));
-        $input->bind(new InputDefinition(array(new InputOption('name', null, InputOption::VALUE_OPTIONAL | InputOption::VALUE_IS_ARRAY))));
-        $this->assertSame(array('name' => array('foo', 'bar', null)), $input->getOptions(), '->parse() parses empty array options as null ("--option=value" syntax)');
-
-        $input = new ArgvInput(array('cli.php', '--name', 'foo', '--name', 'bar', '--name', '--anotherOption'));
-        $input->bind(new InputDefinition(array(
-            new InputOption('name', null, InputOption::VALUE_OPTIONAL | InputOption::VALUE_IS_ARRAY),
-            new InputOption('anotherOption', null, InputOption::VALUE_NONE),
-        )));
-        $this->assertSame(array('name' => array('foo', 'bar', null), 'anotherOption' => true), $input->getOptions(), '->parse() parses empty array options as null ("--option value" syntax)');
-    }
-
-    public function testParseNegativeNumberAfterDoubleDash()
-    {
-        $input = new ArgvInput(array('cli.php', '--', '-1'));
-        $input->bind(new InputDefinition(array(new InputArgument('number'))));
-        $this->assertEquals(array('number' => '-1'), $input->getArguments(), '->parse() parses arguments with leading dashes as arguments after having encountered a double-dash sequence');
-
-        $input = new ArgvInput(array('cli.php', '-f', 'bar', '--', '-1'));
-        $input->bind(new InputDefinition(array(new InputArgument('number'), new InputOption('foo', 'f', InputOption::VALUE_OPTIONAL))));
-        $this->assertEquals(array('foo' => 'bar'), $input->getOptions(), '->parse() parses arguments with leading dashes as options before having encountered a double-dash sequence');
-        $this->assertEquals(array('number' => '-1'), $input->getArguments(), '->parse() parses arguments with leading dashes as arguments after having encountered a double-dash sequence');
-    }
-
-    public function testParseEmptyStringArgument()
-    {
-        $input = new ArgvInput(array('cli.php', '-f', 'bar', ''));
-        $input->bind(new InputDefinition(array(new InputArgument('empty'), new InputOption('foo', 'f', InputOption::VALUE_OPTIONAL))));
-
-        $this->assertEquals(array('empty' => ''), $input->getArguments(), '->parse() parses empty string arguments');
-    }
-
-    public function testGetFirstArgument()
-    {
-        $input = new ArgvInput(array('cli.php', '-fbbar'));
-        $this->assertNull($input->getFirstArgument(), '->getFirstArgument() returns null when there is no arguments');
-
-        $input = new ArgvInput(array('cli.php', '-fbbar', 'foo'));
-        $this->assertEquals('foo', $input->getFirstArgument(), '->getFirstArgument() returns the first argument from the raw input');
-    }
-
-    public function testHasParameterOption()
-    {
-        $input = new ArgvInput(array('cli.php', '-f', 'foo'));
-        $this->assertTrue($input->hasParameterOption('-f'), '->hasParameterOption() returns true if the given short option is in the raw input');
-
-        $input = new ArgvInput(array('cli.php', '--foo', 'foo'));
-        $this->assertTrue($input->hasParameterOption('--foo'), '->hasParameterOption() returns true if the given short option is in the raw input');
-
-        $input = new ArgvInput(array('cli.php', 'foo'));
-        $this->assertFalse($input->hasParameterOption('--foo'), '->hasParameterOption() returns false if the given short option is not in the raw input');
-
-        $input = new ArgvInput(array('cli.php', '--foo=bar'));
-        $this->assertTrue($input->hasParameterOption('--foo'), '->hasParameterOption() returns true if the given option with provided value is in the raw input');
-    }
-
-    public function testToString()
-    {
-        $input = new ArgvInput(array('cli.php', '-f', 'foo'));
-        $this->assertEquals('-f foo', (string) $input);
-
-        $input = new ArgvInput(array('cli.php', '-f', '--bar=foo', 'a b c d', "A\nB'C"));
-        $this->assertEquals('-f --bar=foo '.escapeshellarg('a b c d').' '.escapeshellarg("A\nB'C"), (string) $input);
-    }
-
-    /**
-     * @dataProvider provideGetParameterOptionValues
-     */
-    public function testGetParameterOptionEqualSign($argv, $key, $expected)
-    {
-        $input = new ArgvInput($argv);
-        $this->assertEquals($expected, $input->getParameterOption($key), '->getParameterOption() returns the expected value');
-    }
-
-    public function provideGetParameterOptionValues()
-    {
-        return array(
-            array(array('app/console', 'foo:bar', '-e', 'dev'), '-e', 'dev'),
-            array(array('app/console', 'foo:bar', '--env=dev'), '--env', 'dev'),
-            array(array('app/console', 'foo:bar', '-e', 'dev'), array('-e', '--env'), 'dev'),
-            array(array('app/console', 'foo:bar', '--env=dev'), array('-e', '--env'), 'dev'),
-            array(array('app/console', 'foo:bar', '--env=dev', '--en=1'), array('--en'), '1'),
-            array(array('app/console', 'foo:bar', '--env=dev', '', '--en=1'), array('--en'), '1'),
-        );
-    }
-
-    public function testParseSingleDashAsArgument()
-    {
-        $input = new ArgvInput(array('cli.php', '-'));
-        $input->bind(new InputDefinition(array(new InputArgument('file'))));
-        $this->assertEquals(array('file' => '-'), $input->getArguments(), '->parse() parses single dash as an argument');
-    }
-}
diff --git a/vendor/symfony/console/Tests/Input/ArrayInputTest.php b/vendor/symfony/console/Tests/Input/ArrayInputTest.php
deleted file mode 100644
index cc89083..0000000
--- a/vendor/symfony/console/Tests/Input/ArrayInputTest.php
+++ /dev/null
@@ -1,138 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Console\Tests\Input;
-
-use Symfony\Component\Console\Input\ArrayInput;
-use Symfony\Component\Console\Input\InputDefinition;
-use Symfony\Component\Console\Input\InputArgument;
-use Symfony\Component\Console\Input\InputOption;
-
-class ArrayInputTest extends \PHPUnit_Framework_TestCase
-{
-    public function testGetFirstArgument()
-    {
-        $input = new ArrayInput(array());
-        $this->assertNull($input->getFirstArgument(), '->getFirstArgument() returns null if no argument were passed');
-        $input = new ArrayInput(array('name' => 'Fabien'));
-        $this->assertEquals('Fabien', $input->getFirstArgument(), '->getFirstArgument() returns the first passed argument');
-        $input = new ArrayInput(array('--foo' => 'bar', 'name' => 'Fabien'));
-        $this->assertEquals('Fabien', $input->getFirstArgument(), '->getFirstArgument() returns the first passed argument');
-    }
-
-    public function testHasParameterOption()
-    {
-        $input = new ArrayInput(array('name' => 'Fabien', '--foo' => 'bar'));
-        $this->assertTrue($input->hasParameterOption('--foo'), '->hasParameterOption() returns true if an option is present in the passed parameters');
-        $this->assertFalse($input->hasParameterOption('--bar'), '->hasParameterOption() returns false if an option is not present in the passed parameters');
-
-        $input = new ArrayInput(array('--foo'));
-        $this->assertTrue($input->hasParameterOption('--foo'), '->hasParameterOption() returns true if an option is present in the passed parameters');
-    }
-
-    public function testGetParameterOption()
-    {
-        $input = new ArrayInput(array('name' => 'Fabien', '--foo' => 'bar'));
-        $this->assertEquals('bar', $input->getParameterOption('--foo'), '->getParameterOption() returns the option of specified name');
-
-        $input = new ArrayInput(array('Fabien', '--foo' => 'bar'));
-        $this->assertEquals('bar', $input->getParameterOption('--foo'), '->getParameterOption() returns the option of specified name');
-    }
-
-    public function testParseArguments()
-    {
-        $input = new ArrayInput(array('name' => 'foo'), new InputDefinition(array(new InputArgument('name'))));
-
-        $this->assertEquals(array('name' => 'foo'), $input->getArguments(), '->parse() parses required arguments');
-    }
-
-    /**
-     * @dataProvider provideOptions
-     */
-    public function testParseOptions($input, $options, $expectedOptions, $message)
-    {
-        $input = new ArrayInput($input, new InputDefinition($options));
-
-        $this->assertEquals($expectedOptions, $input->getOptions(), $message);
-    }
-
-    public function provideOptions()
-    {
-        return array(
-            array(
-                array('--foo' => 'bar'),
-                array(new InputOption('foo')),
-                array('foo' => 'bar'),
-                '->parse() parses long options',
-            ),
-            array(
-                array('--foo' => 'bar'),
-                array(new InputOption('foo', 'f', InputOption::VALUE_OPTIONAL, '', 'default')),
-                array('foo' => 'bar'),
-                '->parse() parses long options with a default value',
-            ),
-            array(
-                array('--foo' => null),
-                array(new InputOption('foo', 'f', InputOption::VALUE_OPTIONAL, '', 'default')),
-                array('foo' => 'default'),
-                '->parse() parses long options with a default value',
-            ),
-            array(
-                array('-f' => 'bar'),
-                array(new InputOption('foo', 'f')),
-                array('foo' => 'bar'),
-                '->parse() parses short options',
-            ),
-        );
-    }
-
-    /**
-     * @dataProvider provideInvalidInput
-     */
-    public function testParseInvalidInput($parameters, $definition, $expectedExceptionMessage)
-    {
-        $this->setExpectedException('InvalidArgumentException', $expectedExceptionMessage);
-
-        new ArrayInput($parameters, $definition);
-    }
-
-    public function provideInvalidInput()
-    {
-        return array(
-            array(
-                array('foo' => 'foo'),
-                new InputDefinition(array(new InputArgument('name'))),
-                'The "foo" argument does not exist.',
-            ),
-            array(
-                array('--foo' => null),
-                new InputDefinition(array(new InputOption('foo', 'f', InputOption::VALUE_REQUIRED))),
-                'The "--foo" option requires a value.',
-            ),
-            array(
-                array('--foo' => 'foo'),
-                new InputDefinition(),
-                'The "--foo" option does not exist.',
-            ),
-            array(
-                array('-o' => 'foo'),
-                new InputDefinition(),
-                'The "-o" option does not exist.',
-            ),
-        );
-    }
-
-    public function testToString()
-    {
-        $input = new ArrayInput(array('-f' => null, '-b' => 'bar', '--foo' => 'b a z', '--lala' => null, 'test' => 'Foo', 'test2' => "A\nB'C"));
-        $this->assertEquals('-f -b=bar --foo='.escapeshellarg('b a z').' --lala Foo '.escapeshellarg("A\nB'C"), (string) $input);
-    }
-}
diff --git a/vendor/symfony/console/Tests/Input/InputArgumentTest.php b/vendor/symfony/console/Tests/Input/InputArgumentTest.php
deleted file mode 100644
index cfb37cd..0000000
--- a/vendor/symfony/console/Tests/Input/InputArgumentTest.php
+++ /dev/null
@@ -1,111 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Console\Tests\Input;
-
-use Symfony\Component\Console\Input\InputArgument;
-
-class InputArgumentTest extends \PHPUnit_Framework_TestCase
-{
-    public function testConstructor()
-    {
-        $argument = new InputArgument('foo');
-        $this->assertEquals('foo', $argument->getName(), '__construct() takes a name as its first argument');
-    }
-
-    public function testModes()
-    {
-        $argument = new InputArgument('foo');
-        $this->assertFalse($argument->isRequired(), '__construct() gives a "InputArgument::OPTIONAL" mode by default');
-
-        $argument = new InputArgument('foo', null);
-        $this->assertFalse($argument->isRequired(), '__construct() can take "InputArgument::OPTIONAL" as its mode');
-
-        $argument = new InputArgument('foo', InputArgument::OPTIONAL);
-        $this->assertFalse($argument->isRequired(), '__construct() can take "InputArgument::OPTIONAL" as its mode');
-
-        $argument = new InputArgument('foo', InputArgument::REQUIRED);
-        $this->assertTrue($argument->isRequired(), '__construct() can take "InputArgument::REQUIRED" as its mode');
-    }
-
-    /**
-     * @dataProvider provideInvalidModes
-     */
-    public function testInvalidModes($mode)
-    {
-        $this->setExpectedException('InvalidArgumentException', sprintf('Argument mode "%s" is not valid.', $mode));
-
-        new InputArgument('foo', $mode);
-    }
-
-    public function provideInvalidModes()
-    {
-        return array(
-            array('ANOTHER_ONE'),
-            array(-1),
-        );
-    }
-
-    public function testIsArray()
-    {
-        $argument = new InputArgument('foo', InputArgument::IS_ARRAY);
-        $this->assertTrue($argument->isArray(), '->isArray() returns true if the argument can be an array');
-        $argument = new InputArgument('foo', InputArgument::OPTIONAL | InputArgument::IS_ARRAY);
-        $this->assertTrue($argument->isArray(), '->isArray() returns true if the argument can be an array');
-        $argument = new InputArgument('foo', InputArgument::OPTIONAL);
-        $this->assertFalse($argument->isArray(), '->isArray() returns false if the argument can not be an array');
-    }
-
-    public function testGetDescription()
-    {
-        $argument = new InputArgument('foo', null, 'Some description');
-        $this->assertEquals('Some description', $argument->getDescription(), '->getDescription() return the message description');
-    }
-
-    public function testGetDefault()
-    {
-        $argument = new InputArgument('foo', InputArgument::OPTIONAL, '', 'default');
-        $this->assertEquals('default', $argument->getDefault(), '->getDefault() return the default value');
-    }
-
-    public function testSetDefault()
-    {
-        $argument = new InputArgument('foo', InputArgument::OPTIONAL, '', 'default');
-        $argument->setDefault(null);
-        $this->assertNull($argument->getDefault(), '->setDefault() can reset the default value by passing null');
-        $argument->setDefault('another');
-        $this->assertEquals('another', $argument->getDefault(), '->setDefault() changes the default value');
-
-        $argument = new InputArgument('foo', InputArgument::OPTIONAL | InputArgument::IS_ARRAY);
-        $argument->setDefault(array(1, 2));
-        $this->assertEquals(array(1, 2), $argument->getDefault(), '->setDefault() changes the default value');
-    }
-
-    /**
-     * @expectedException        \LogicException
-     * @expectedExceptionMessage Cannot set a default value except for InputArgument::OPTIONAL mode.
-     */
-    public function testSetDefaultWithRequiredArgument()
-    {
-        $argument = new InputArgument('foo', InputArgument::REQUIRED);
-        $argument->setDefault('default');
-    }
-
-    /**
-     * @expectedException        \LogicException
-     * @expectedExceptionMessage A default value for an array argument must be an array.
-     */
-    public function testSetDefaultWithArrayArgument()
-    {
-        $argument = new InputArgument('foo', InputArgument::IS_ARRAY);
-        $argument->setDefault('default');
-    }
-}
diff --git a/vendor/symfony/console/Tests/Input/InputDefinitionTest.php b/vendor/symfony/console/Tests/Input/InputDefinitionTest.php
deleted file mode 100644
index 7e0a242..0000000
--- a/vendor/symfony/console/Tests/Input/InputDefinitionTest.php
+++ /dev/null
@@ -1,437 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Console\Tests\Input;
-
-use Symfony\Component\Console\Input\InputDefinition;
-use Symfony\Component\Console\Input\InputArgument;
-use Symfony\Component\Console\Input\InputOption;
-
-class InputDefinitionTest extends \PHPUnit_Framework_TestCase
-{
-    protected static $fixtures;
-
-    protected $foo, $bar, $foo1, $foo2;
-
-    public static function setUpBeforeClass()
-    {
-        self::$fixtures = __DIR__.'/../Fixtures/';
-    }
-
-    public function testConstructorArguments()
-    {
-        $this->initializeArguments();
-
-        $definition = new InputDefinition();
-        $this->assertEquals(array(), $definition->getArguments(), '__construct() creates a new InputDefinition object');
-
-        $definition = new InputDefinition(array($this->foo, $this->bar));
-        $this->assertEquals(array('foo' => $this->foo, 'bar' => $this->bar), $definition->getArguments(), '__construct() takes an array of InputArgument objects as its first argument');
-    }
-
-    public function testConstructorOptions()
-    {
-        $this->initializeOptions();
-
-        $definition = new InputDefinition();
-        $this->assertEquals(array(), $definition->getOptions(), '__construct() creates a new InputDefinition object');
-
-        $definition = new InputDefinition(array($this->foo, $this->bar));
-        $this->assertEquals(array('foo' => $this->foo, 'bar' => $this->bar), $definition->getOptions(), '__construct() takes an array of InputOption objects as its first argument');
-    }
-
-    public function testSetArguments()
-    {
-        $this->initializeArguments();
-
-        $definition = new InputDefinition();
-        $definition->setArguments(array($this->foo));
-        $this->assertEquals(array('foo' => $this->foo), $definition->getArguments(), '->setArguments() sets the array of InputArgument objects');
-        $definition->setArguments(array($this->bar));
-
-        $this->assertEquals(array('bar' => $this->bar), $definition->getArguments(), '->setArguments() clears all InputArgument objects');
-    }
-
-    public function testAddArguments()
-    {
-        $this->initializeArguments();
-
-        $definition = new InputDefinition();
-        $definition->addArguments(array($this->foo));
-        $this->assertEquals(array('foo' => $this->foo), $definition->getArguments(), '->addArguments() adds an array of InputArgument objects');
-        $definition->addArguments(array($this->bar));
-        $this->assertEquals(array('foo' => $this->foo, 'bar' => $this->bar), $definition->getArguments(), '->addArguments() does not clear existing InputArgument objects');
-    }
-
-    public function testAddArgument()
-    {
-        $this->initializeArguments();
-
-        $definition = new InputDefinition();
-        $definition->addArgument($this->foo);
-        $this->assertEquals(array('foo' => $this->foo), $definition->getArguments(), '->addArgument() adds a InputArgument object');
-        $definition->addArgument($this->bar);
-        $this->assertEquals(array('foo' => $this->foo, 'bar' => $this->bar), $definition->getArguments(), '->addArgument() adds a InputArgument object');
-    }
-
-    /**
-     * @expectedException        \LogicException
-     * @expectedExceptionMessage An argument with name "foo" already exists.
-     */
-    public function testArgumentsMustHaveDifferentNames()
-    {
-        $this->initializeArguments();
-
-        $definition = new InputDefinition();
-        $definition->addArgument($this->foo);
-        $definition->addArgument($this->foo1);
-    }
-
-    /**
-     * @expectedException        \LogicException
-     * @expectedExceptionMessage Cannot add an argument after an array argument.
-     */
-    public function testArrayArgumentHasToBeLast()
-    {
-        $this->initializeArguments();
-
-        $definition = new InputDefinition();
-        $definition->addArgument(new InputArgument('fooarray', InputArgument::IS_ARRAY));
-        $definition->addArgument(new InputArgument('anotherbar'));
-    }
-
-    /**
-     * @expectedException        \LogicException
-     * @expectedExceptionMessage Cannot add a required argument after an optional one.
-     */
-    public function testRequiredArgumentCannotFollowAnOptionalOne()
-    {
-        $this->initializeArguments();
-
-        $definition = new InputDefinition();
-        $definition->addArgument($this->foo);
-        $definition->addArgument($this->foo2);
-    }
-
-    public function testGetArgument()
-    {
-        $this->initializeArguments();
-
-        $definition = new InputDefinition();
-        $definition->addArguments(array($this->foo));
-        $this->assertEquals($this->foo, $definition->getArgument('foo'), '->getArgument() returns a InputArgument by its name');
-    }
-
-    /**
-     * @expectedException        \InvalidArgumentException
-     * @expectedExceptionMessage The "bar" argument does not exist.
-     */
-    public function testGetInvalidArgument()
-    {
-        $this->initializeArguments();
-
-        $definition = new InputDefinition();
-        $definition->addArguments(array($this->foo));
-        $definition->getArgument('bar');
-    }
-
-    public function testHasArgument()
-    {
-        $this->initializeArguments();
-
-        $definition = new InputDefinition();
-        $definition->addArguments(array($this->foo));
-
-        $this->assertTrue($definition->hasArgument('foo'), '->hasArgument() returns true if a InputArgument exists for the given name');
-        $this->assertFalse($definition->hasArgument('bar'), '->hasArgument() returns false if a InputArgument exists for the given name');
-    }
-
-    public function testGetArgumentRequiredCount()
-    {
-        $this->initializeArguments();
-
-        $definition = new InputDefinition();
-        $definition->addArgument($this->foo2);
-        $this->assertEquals(1, $definition->getArgumentRequiredCount(), '->getArgumentRequiredCount() returns the number of required arguments');
-        $definition->addArgument($this->foo);
-        $this->assertEquals(1, $definition->getArgumentRequiredCount(), '->getArgumentRequiredCount() returns the number of required arguments');
-    }
-
-    public function testGetArgumentCount()
-    {
-        $this->initializeArguments();
-
-        $definition = new InputDefinition();
-        $definition->addArgument($this->foo2);
-        $this->assertEquals(1, $definition->getArgumentCount(), '->getArgumentCount() returns the number of arguments');
-        $definition->addArgument($this->foo);
-        $this->assertEquals(2, $definition->getArgumentCount(), '->getArgumentCount() returns the number of arguments');
-    }
-
-    public function testGetArgumentDefaults()
-    {
-        $definition = new InputDefinition(array(
-            new InputArgument('foo1', InputArgument::OPTIONAL),
-            new InputArgument('foo2', InputArgument::OPTIONAL, '', 'default'),
-            new InputArgument('foo3', InputArgument::OPTIONAL | InputArgument::IS_ARRAY),
-        //  new InputArgument('foo4', InputArgument::OPTIONAL | InputArgument::IS_ARRAY, '', array(1, 2)),
-        ));
-        $this->assertEquals(array('foo1' => null, 'foo2' => 'default', 'foo3' => array()), $definition->getArgumentDefaults(), '->getArgumentDefaults() return the default values for each argument');
-
-        $definition = new InputDefinition(array(
-            new InputArgument('foo4', InputArgument::OPTIONAL | InputArgument::IS_ARRAY, '', array(1, 2)),
-        ));
-        $this->assertEquals(array('foo4' => array(1, 2)), $definition->getArgumentDefaults(), '->getArgumentDefaults() return the default values for each argument');
-    }
-
-    public function testSetOptions()
-    {
-        $this->initializeOptions();
-
-        $definition = new InputDefinition(array($this->foo));
-        $this->assertEquals(array('foo' => $this->foo), $definition->getOptions(), '->setOptions() sets the array of InputOption objects');
-        $definition->setOptions(array($this->bar));
-        $this->assertEquals(array('bar' => $this->bar), $definition->getOptions(), '->setOptions() clears all InputOption objects');
-    }
-
-    /**
-     * @expectedException        \InvalidArgumentException
-     * @expectedExceptionMessage The "-f" option does not exist.
-     */
-    public function testSetOptionsClearsOptions()
-    {
-        $this->initializeOptions();
-
-        $definition = new InputDefinition(array($this->foo));
-        $definition->setOptions(array($this->bar));
-        $definition->getOptionForShortcut('f');
-    }
-
-    public function testAddOptions()
-    {
-        $this->initializeOptions();
-
-        $definition = new InputDefinition(array($this->foo));
-        $this->assertEquals(array('foo' => $this->foo), $definition->getOptions(), '->addOptions() adds an array of InputOption objects');
-        $definition->addOptions(array($this->bar));
-        $this->assertEquals(array('foo' => $this->foo, 'bar' => $this->bar), $definition->getOptions(), '->addOptions() does not clear existing InputOption objects');
-    }
-
-    public function testAddOption()
-    {
-        $this->initializeOptions();
-
-        $definition = new InputDefinition();
-        $definition->addOption($this->foo);
-        $this->assertEquals(array('foo' => $this->foo), $definition->getOptions(), '->addOption() adds a InputOption object');
-        $definition->addOption($this->bar);
-        $this->assertEquals(array('foo' => $this->foo, 'bar' => $this->bar), $definition->getOptions(), '->addOption() adds a InputOption object');
-    }
-
-    /**
-     * @expectedException        \LogicException
-     * @expectedExceptionMessage An option named "foo" already exists.
-     */
-    public function testAddDuplicateOption()
-    {
-        $this->initializeOptions();
-
-        $definition = new InputDefinition();
-        $definition->addOption($this->foo);
-        $definition->addOption($this->foo2);
-    }
-
-    /**
-     * @expectedException        \LogicException
-     * @expectedExceptionMessage An option with shortcut "f" already exists.
-     */
-    public function testAddDuplicateShortcutOption()
-    {
-        $this->initializeOptions();
-
-        $definition = new InputDefinition();
-        $definition->addOption($this->foo);
-        $definition->addOption($this->foo1);
-    }
-
-    public function testGetOption()
-    {
-        $this->initializeOptions();
-
-        $definition = new InputDefinition(array($this->foo));
-        $this->assertEquals($this->foo, $definition->getOption('foo'), '->getOption() returns a InputOption by its name');
-    }
-
-    /**
-     * @expectedException        \InvalidArgumentException
-     * @expectedExceptionMessage The "--bar" option does not exist.
-     */
-    public function testGetInvalidOption()
-    {
-        $this->initializeOptions();
-
-        $definition = new InputDefinition(array($this->foo));
-        $definition->getOption('bar');
-    }
-
-    public function testHasOption()
-    {
-        $this->initializeOptions();
-
-        $definition = new InputDefinition(array($this->foo));
-        $this->assertTrue($definition->hasOption('foo'), '->hasOption() returns true if a InputOption exists for the given name');
-        $this->assertFalse($definition->hasOption('bar'), '->hasOption() returns false if a InputOption exists for the given name');
-    }
-
-    public function testHasShortcut()
-    {
-        $this->initializeOptions();
-
-        $definition = new InputDefinition(array($this->foo));
-        $this->assertTrue($definition->hasShortcut('f'), '->hasShortcut() returns true if a InputOption exists for the given shortcut');
-        $this->assertFalse($definition->hasShortcut('b'), '->hasShortcut() returns false if a InputOption exists for the given shortcut');
-    }
-
-    public function testGetOptionForShortcut()
-    {
-        $this->initializeOptions();
-
-        $definition = new InputDefinition(array($this->foo));
-        $this->assertEquals($this->foo, $definition->getOptionForShortcut('f'), '->getOptionForShortcut() returns a InputOption by its shortcut');
-    }
-
-    public function testGetOptionForMultiShortcut()
-    {
-        $this->initializeOptions();
-
-        $definition = new InputDefinition(array($this->multi));
-        $this->assertEquals($this->multi, $definition->getOptionForShortcut('m'), '->getOptionForShortcut() returns a InputOption by its shortcut');
-        $this->assertEquals($this->multi, $definition->getOptionForShortcut('mmm'), '->getOptionForShortcut() returns a InputOption by its shortcut');
-    }
-
-    /**
-     * @expectedException        \InvalidArgumentException
-     * @expectedExceptionMessage The "-l" option does not exist.
-     */
-    public function testGetOptionForInvalidShortcut()
-    {
-        $this->initializeOptions();
-
-        $definition = new InputDefinition(array($this->foo));
-        $definition->getOptionForShortcut('l');
-    }
-
-    public function testGetOptionDefaults()
-    {
-        $definition = new InputDefinition(array(
-            new InputOption('foo1', null, InputOption::VALUE_NONE),
-            new InputOption('foo2', null, InputOption::VALUE_REQUIRED),
-            new InputOption('foo3', null, InputOption::VALUE_REQUIRED, '', 'default'),
-            new InputOption('foo4', null, InputOption::VALUE_OPTIONAL),
-            new InputOption('foo5', null, InputOption::VALUE_OPTIONAL, '', 'default'),
-            new InputOption('foo6', null, InputOption::VALUE_OPTIONAL | InputOption::VALUE_IS_ARRAY),
-            new InputOption('foo7', null, InputOption::VALUE_OPTIONAL | InputOption::VALUE_IS_ARRAY, '', array(1, 2)),
-        ));
-        $defaults = array(
-            'foo1' => false,
-            'foo2' => null,
-            'foo3' => 'default',
-            'foo4' => null,
-            'foo5' => 'default',
-            'foo6' => array(),
-            'foo7' => array(1, 2),
-        );
-        $this->assertSame($defaults, $definition->getOptionDefaults(), '->getOptionDefaults() returns the default values for all options');
-    }
-
-    /**
-     * @dataProvider getGetSynopsisData
-     */
-    public function testGetSynopsis(InputDefinition $definition, $expectedSynopsis, $message = null)
-    {
-        $this->assertEquals($expectedSynopsis, $definition->getSynopsis(), $message ? '->getSynopsis() '.$message : '');
-    }
-
-    public function getGetSynopsisData()
-    {
-        return array(
-            array(new InputDefinition(array(new InputOption('foo'))), '[--foo]', 'puts optional options in square brackets'),
-            array(new InputDefinition(array(new InputOption('foo', 'f'))), '[-f|--foo]', 'separates shortcut with a pipe'),
-            array(new InputDefinition(array(new InputOption('foo', 'f', InputOption::VALUE_REQUIRED))), '[-f|--foo FOO]', 'uses shortcut as value placeholder'),
-            array(new InputDefinition(array(new InputOption('foo', 'f', InputOption::VALUE_OPTIONAL))), '[-f|--foo [FOO]]', 'puts optional values in square brackets'),
-
-            array(new InputDefinition(array(new InputArgument('foo', InputArgument::REQUIRED))), '<foo>', 'puts arguments in angle brackets'),
-            array(new InputDefinition(array(new InputArgument('foo'))), '[<foo>]', 'puts optional arguments in square brackets'),
-            array(new InputDefinition(array(new InputArgument('foo', InputArgument::IS_ARRAY))), '[<foo>]...', 'uses an ellipsis for array arguments'),
-            array(new InputDefinition(array(new InputArgument('foo', InputArgument::REQUIRED | InputArgument::IS_ARRAY))), '<foo> (<foo>)...', 'uses parenthesis and ellipsis for required array arguments'),
-
-            array(new InputDefinition(array(new InputOption('foo'), new InputArgument('foo', InputArgument::REQUIRED))), '[--foo] [--] <foo>', 'puts [--] between options and arguments'),
-        );
-    }
-
-    public function testGetShortSynopsis()
-    {
-        $definition = new InputDefinition(array(new InputOption('foo'), new InputOption('bar'), new InputArgument('cat')));
-        $this->assertEquals('[options] [--] [<cat>]', $definition->getSynopsis(true), '->getSynopsis(true) groups options in [options]');
-    }
-
-    /**
-     * @group legacy
-     */
-    public function testLegacyAsText()
-    {
-        $definition = new InputDefinition(array(
-            new InputArgument('foo', InputArgument::OPTIONAL, 'The foo argument'),
-            new InputArgument('baz', InputArgument::OPTIONAL, 'The baz argument', true),
-            new InputArgument('bar', InputArgument::OPTIONAL | InputArgument::IS_ARRAY, 'The bar argument', array('http://foo.com/')),
-            new InputOption('foo', 'f', InputOption::VALUE_REQUIRED, 'The foo option'),
-            new InputOption('baz', null, InputOption::VALUE_OPTIONAL, 'The baz option', false),
-            new InputOption('bar', 'b', InputOption::VALUE_OPTIONAL, 'The bar option', 'bar'),
-            new InputOption('qux', '', InputOption::VALUE_OPTIONAL | InputOption::VALUE_IS_ARRAY, 'The qux option', array('http://foo.com/', 'bar')),
-            new InputOption('qux2', '', InputOption::VALUE_OPTIONAL | InputOption::VALUE_IS_ARRAY, 'The qux2 option', array('foo' => 'bar')),
-        ));
-
-        $this->assertStringEqualsFile(self::$fixtures.'/definition_astext.txt', $definition->asText(), '->asText() returns a textual representation of the InputDefinition');
-    }
-
-    /**
-     * @group legacy
-     */
-    public function testLegacyAsXml()
-    {
-        $definition = new InputDefinition(array(
-            new InputArgument('foo', InputArgument::OPTIONAL, 'The foo argument'),
-            new InputArgument('baz', InputArgument::OPTIONAL, 'The baz argument', true),
-            new InputArgument('bar', InputArgument::OPTIONAL | InputArgument::IS_ARRAY, 'The bar argument', array('bar')),
-            new InputOption('foo', 'f', InputOption::VALUE_REQUIRED, 'The foo option'),
-            new InputOption('baz', null, InputOption::VALUE_OPTIONAL, 'The baz option', false),
-            new InputOption('bar', 'b', InputOption::VALUE_OPTIONAL, 'The bar option', 'bar'),
-        ));
-        $this->assertXmlStringEqualsXmlFile(self::$fixtures.'/definition_asxml.txt', $definition->asXml(), '->asXml() returns an XML representation of the InputDefinition');
-    }
-
-    protected function initializeArguments()
-    {
-        $this->foo = new InputArgument('foo');
-        $this->bar = new InputArgument('bar');
-        $this->foo1 = new InputArgument('foo');
-        $this->foo2 = new InputArgument('foo2', InputArgument::REQUIRED);
-    }
-
-    protected function initializeOptions()
-    {
-        $this->foo = new InputOption('foo', 'f');
-        $this->bar = new InputOption('bar', 'b');
-        $this->foo1 = new InputOption('fooBis', 'f');
-        $this->foo2 = new InputOption('foo', 'p');
-        $this->multi = new InputOption('multi', 'm|mm|mmm');
-    }
-}
diff --git a/vendor/symfony/console/Tests/Input/InputOptionTest.php b/vendor/symfony/console/Tests/Input/InputOptionTest.php
deleted file mode 100644
index 53ce1df..0000000
--- a/vendor/symfony/console/Tests/Input/InputOptionTest.php
+++ /dev/null
@@ -1,204 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Console\Tests\Input;
-
-use Symfony\Component\Console\Input\InputOption;
-
-class InputOptionTest extends \PHPUnit_Framework_TestCase
-{
-    public function testConstructor()
-    {
-        $option = new InputOption('foo');
-        $this->assertEquals('foo', $option->getName(), '__construct() takes a name as its first argument');
-        $option = new InputOption('--foo');
-        $this->assertEquals('foo', $option->getName(), '__construct() removes the leading -- of the option name');
-    }
-
-    /**
-     * @expectedException        \InvalidArgumentException
-     * @expectedExceptionMessage Impossible to have an option mode VALUE_IS_ARRAY if the option does not accept a value.
-     */
-    public function testArrayModeWithoutValue()
-    {
-        new InputOption('foo', 'f', InputOption::VALUE_IS_ARRAY);
-    }
-
-    public function testShortcut()
-    {
-        $option = new InputOption('foo', 'f');
-        $this->assertEquals('f', $option->getShortcut(), '__construct() can take a shortcut as its second argument');
-        $option = new InputOption('foo', '-f|-ff|fff');
-        $this->assertEquals('f|ff|fff', $option->getShortcut(), '__construct() removes the leading - of the shortcuts');
-        $option = new InputOption('foo', array('f', 'ff', '-fff'));
-        $this->assertEquals('f|ff|fff', $option->getShortcut(), '__construct() removes the leading - of the shortcuts');
-        $option = new InputOption('foo');
-        $this->assertNull($option->getShortcut(), '__construct() makes the shortcut null by default');
-    }
-
-    public function testModes()
-    {
-        $option = new InputOption('foo', 'f');
-        $this->assertFalse($option->acceptValue(), '__construct() gives a "InputOption::VALUE_NONE" mode by default');
-        $this->assertFalse($option->isValueRequired(), '__construct() gives a "InputOption::VALUE_NONE" mode by default');
-        $this->assertFalse($option->isValueOptional(), '__construct() gives a "InputOption::VALUE_NONE" mode by default');
-
-        $option = new InputOption('foo', 'f', null);
-        $this->assertFalse($option->acceptValue(), '__construct() can take "InputOption::VALUE_NONE" as its mode');
-        $this->assertFalse($option->isValueRequired(), '__construct() can take "InputOption::VALUE_NONE" as its mode');
-        $this->assertFalse($option->isValueOptional(), '__construct() can take "InputOption::VALUE_NONE" as its mode');
-
-        $option = new InputOption('foo', 'f', InputOption::VALUE_NONE);
-        $this->assertFalse($option->acceptValue(), '__construct() can take "InputOption::VALUE_NONE" as its mode');
-        $this->assertFalse($option->isValueRequired(), '__construct() can take "InputOption::VALUE_NONE" as its mode');
-        $this->assertFalse($option->isValueOptional(), '__construct() can take "InputOption::VALUE_NONE" as its mode');
-
-        $option = new InputOption('foo', 'f', InputOption::VALUE_REQUIRED);
-        $this->assertTrue($option->acceptValue(), '__construct() can take "InputOption::VALUE_REQUIRED" as its mode');
-        $this->assertTrue($option->isValueRequired(), '__construct() can take "InputOption::VALUE_REQUIRED" as its mode');
-        $this->assertFalse($option->isValueOptional(), '__construct() can take "InputOption::VALUE_REQUIRED" as its mode');
-
-        $option = new InputOption('foo', 'f', InputOption::VALUE_OPTIONAL);
-        $this->assertTrue($option->acceptValue(), '__construct() can take "InputOption::VALUE_OPTIONAL" as its mode');
-        $this->assertFalse($option->isValueRequired(), '__construct() can take "InputOption::VALUE_OPTIONAL" as its mode');
-        $this->assertTrue($option->isValueOptional(), '__construct() can take "InputOption::VALUE_OPTIONAL" as its mode');
-    }
-
-    /**
-     * @dataProvider provideInvalidModes
-     */
-    public function testInvalidModes($mode)
-    {
-        $this->setExpectedException('InvalidArgumentException', sprintf('Option mode "%s" is not valid.', $mode));
-
-        new InputOption('foo', 'f', $mode);
-    }
-
-    public function provideInvalidModes()
-    {
-        return array(
-            array('ANOTHER_ONE'),
-            array(-1),
-        );
-    }
-
-    /**
-     * @expectedException \InvalidArgumentException
-     */
-    public function testEmptyNameIsInvalid()
-    {
-        new InputOption('');
-    }
-
-    /**
-     * @expectedException \InvalidArgumentException
-     */
-    public function testDoubleDashNameIsInvalid()
-    {
-        new InputOption('--');
-    }
-
-    /**
-     * @expectedException \InvalidArgumentException
-     */
-    public function testSingleDashOptionIsInvalid()
-    {
-        new InputOption('foo', '-');
-    }
-
-    public function testIsArray()
-    {
-        $option = new InputOption('foo', null, InputOption::VALUE_OPTIONAL | InputOption::VALUE_IS_ARRAY);
-        $this->assertTrue($option->isArray(), '->isArray() returns true if the option can be an array');
-        $option = new InputOption('foo', null, InputOption::VALUE_NONE);
-        $this->assertFalse($option->isArray(), '->isArray() returns false if the option can not be an array');
-    }
-
-    public function testGetDescription()
-    {
-        $option = new InputOption('foo', 'f', null, 'Some description');
-        $this->assertEquals('Some description', $option->getDescription(), '->getDescription() returns the description message');
-    }
-
-    public function testGetDefault()
-    {
-        $option = new InputOption('foo', null, InputOption::VALUE_OPTIONAL, '', 'default');
-        $this->assertEquals('default', $option->getDefault(), '->getDefault() returns the default value');
-
-        $option = new InputOption('foo', null, InputOption::VALUE_REQUIRED, '', 'default');
-        $this->assertEquals('default', $option->getDefault(), '->getDefault() returns the default value');
-
-        $option = new InputOption('foo', null, InputOption::VALUE_REQUIRED);
-        $this->assertNull($option->getDefault(), '->getDefault() returns null if no default value is configured');
-
-        $option = new InputOption('foo', null, InputOption::VALUE_OPTIONAL | InputOption::VALUE_IS_ARRAY);
-        $this->assertEquals(array(), $option->getDefault(), '->getDefault() returns an empty array if option is an array');
-
-        $option = new InputOption('foo', null, InputOption::VALUE_NONE);
-        $this->assertFalse($option->getDefault(), '->getDefault() returns false if the option does not take a value');
-    }
-
-    public function testSetDefault()
-    {
-        $option = new InputOption('foo', null, InputOption::VALUE_REQUIRED, '', 'default');
-        $option->setDefault(null);
-        $this->assertNull($option->getDefault(), '->setDefault() can reset the default value by passing null');
-        $option->setDefault('another');
-        $this->assertEquals('another', $option->getDefault(), '->setDefault() changes the default value');
-
-        $option = new InputOption('foo', null, InputOption::VALUE_REQUIRED | InputOption::VALUE_IS_ARRAY);
-        $option->setDefault(array(1, 2));
-        $this->assertEquals(array(1, 2), $option->getDefault(), '->setDefault() changes the default value');
-    }
-
-    /**
-     * @expectedException        \LogicException
-     * @expectedExceptionMessage Cannot set a default value when using InputOption::VALUE_NONE mode.
-     */
-    public function testDefaultValueWithValueNoneMode()
-    {
-        $option = new InputOption('foo', 'f', InputOption::VALUE_NONE);
-        $option->setDefault('default');
-    }
-
-    /**
-     * @expectedException        \LogicException
-     * @expectedExceptionMessage A default value for an array option must be an array.
-     */
-    public function testDefaultValueWithIsArrayMode()
-    {
-        $option = new InputOption('foo', 'f', InputOption::VALUE_OPTIONAL | InputOption::VALUE_IS_ARRAY);
-        $option->setDefault('default');
-    }
-
-    public function testEquals()
-    {
-        $option = new InputOption('foo', 'f', null, 'Some description');
-        $option2 = new InputOption('foo', 'f', null, 'Alternative description');
-        $this->assertTrue($option->equals($option2));
-
-        $option = new InputOption('foo', 'f', InputOption::VALUE_OPTIONAL, 'Some description');
-        $option2 = new InputOption('foo', 'f', InputOption::VALUE_OPTIONAL, 'Some description', true);
-        $this->assertFalse($option->equals($option2));
-
-        $option = new InputOption('foo', 'f', null, 'Some description');
-        $option2 = new InputOption('bar', 'f', null, 'Some description');
-        $this->assertFalse($option->equals($option2));
-
-        $option = new InputOption('foo', 'f', null, 'Some description');
-        $option2 = new InputOption('foo', '', null, 'Some description');
-        $this->assertFalse($option->equals($option2));
-
-        $option = new InputOption('foo', 'f', null, 'Some description');
-        $option2 = new InputOption('foo', 'f', InputOption::VALUE_OPTIONAL, 'Some description');
-        $this->assertFalse($option->equals($option2));
-    }
-}
diff --git a/vendor/symfony/console/Tests/Input/InputTest.php b/vendor/symfony/console/Tests/Input/InputTest.php
deleted file mode 100644
index 0b3e38f..0000000
--- a/vendor/symfony/console/Tests/Input/InputTest.php
+++ /dev/null
@@ -1,121 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Console\Tests\Input;
-
-use Symfony\Component\Console\Input\ArrayInput;
-use Symfony\Component\Console\Input\InputDefinition;
-use Symfony\Component\Console\Input\InputArgument;
-use Symfony\Component\Console\Input\InputOption;
-
-class InputTest extends \PHPUnit_Framework_TestCase
-{
-    public function testConstructor()
-    {
-        $input = new ArrayInput(array('name' => 'foo'), new InputDefinition(array(new InputArgument('name'))));
-        $this->assertEquals('foo', $input->getArgument('name'), '->__construct() takes a InputDefinition as an argument');
-    }
-
-    public function testOptions()
-    {
-        $input = new ArrayInput(array('--name' => 'foo'), new InputDefinition(array(new InputOption('name'))));
-        $this->assertEquals('foo', $input->getOption('name'), '->getOption() returns the value for the given option');
-
-        $input->setOption('name', 'bar');
-        $this->assertEquals('bar', $input->getOption('name'), '->setOption() sets the value for a given option');
-        $this->assertEquals(array('name' => 'bar'), $input->getOptions(), '->getOptions() returns all option values');
-
-        $input = new ArrayInput(array('--name' => 'foo'), new InputDefinition(array(new InputOption('name'), new InputOption('bar', '', InputOption::VALUE_OPTIONAL, '', 'default'))));
-        $this->assertEquals('default', $input->getOption('bar'), '->getOption() returns the default value for optional options');
-        $this->assertEquals(array('name' => 'foo', 'bar' => 'default'), $input->getOptions(), '->getOptions() returns all option values, even optional ones');
-    }
-
-    /**
-     * @expectedException        \InvalidArgumentException
-     * @expectedExceptionMessage The "foo" option does not exist.
-     */
-    public function testSetInvalidOption()
-    {
-        $input = new ArrayInput(array('--name' => 'foo'), new InputDefinition(array(new InputOption('name'), new InputOption('bar', '', InputOption::VALUE_OPTIONAL, '', 'default'))));
-        $input->setOption('foo', 'bar');
-    }
-
-    /**
-     * @expectedException        \InvalidArgumentException
-     * @expectedExceptionMessage The "foo" option does not exist.
-     */
-    public function testGetInvalidOption()
-    {
-        $input = new ArrayInput(array('--name' => 'foo'), new InputDefinition(array(new InputOption('name'), new InputOption('bar', '', InputOption::VALUE_OPTIONAL, '', 'default'))));
-        $input->getOption('foo');
-    }
-
-    public function testArguments()
-    {
-        $input = new ArrayInput(array('name' => 'foo'), new InputDefinition(array(new InputArgument('name'))));
-        $this->assertEquals('foo', $input->getArgument('name'), '->getArgument() returns the value for the given argument');
-
-        $input->setArgument('name', 'bar');
-        $this->assertEquals('bar', $input->getArgument('name'), '->setArgument() sets the value for a given argument');
-        $this->assertEquals(array('name' => 'bar'), $input->getArguments(), '->getArguments() returns all argument values');
-
-        $input = new ArrayInput(array('name' => 'foo'), new InputDefinition(array(new InputArgument('name'), new InputArgument('bar', InputArgument::OPTIONAL, '', 'default'))));
-        $this->assertEquals('default', $input->getArgument('bar'), '->getArgument() returns the default value for optional arguments');
-        $this->assertEquals(array('name' => 'foo', 'bar' => 'default'), $input->getArguments(), '->getArguments() returns all argument values, even optional ones');
-    }
-
-    /**
-     * @expectedException        \InvalidArgumentException
-     * @expectedExceptionMessage The "foo" argument does not exist.
-     */
-    public function testSetInvalidArgument()
-    {
-        $input = new ArrayInput(array('name' => 'foo'), new InputDefinition(array(new InputArgument('name'), new InputArgument('bar', InputArgument::OPTIONAL, '', 'default'))));
-        $input->setArgument('foo', 'bar');
-    }
-
-    /**
-     * @expectedException        \InvalidArgumentException
-     * @expectedExceptionMessage The "foo" argument does not exist.
-     */
-    public function testGetInvalidArgument()
-    {
-        $input = new ArrayInput(array('name' => 'foo'), new InputDefinition(array(new InputArgument('name'), new InputArgument('bar', InputArgument::OPTIONAL, '', 'default'))));
-        $input->getArgument('foo');
-    }
-
-    /**
-     * @expectedException        \RuntimeException
-     * @expectedExceptionMessage Not enough arguments.
-     */
-    public function testValidateWithMissingArguments()
-    {
-        $input = new ArrayInput(array());
-        $input->bind(new InputDefinition(array(new InputArgument('name', InputArgument::REQUIRED))));
-        $input->validate();
-    }
-
-    public function testValidate()
-    {
-        $input = new ArrayInput(array('name' => 'foo'));
-        $input->bind(new InputDefinition(array(new InputArgument('name', InputArgument::REQUIRED))));
-
-        $this->assertNull($input->validate());
-    }
-
-    public function testSetGetInteractive()
-    {
-        $input = new ArrayInput(array());
-        $this->assertTrue($input->isInteractive(), '->isInteractive() returns whether the input should be interactive or not');
-        $input->setInteractive(false);
-        $this->assertFalse($input->isInteractive(), '->setInteractive() changes the interactive flag');
-    }
-}
diff --git a/vendor/symfony/console/Tests/Input/StringInputTest.php b/vendor/symfony/console/Tests/Input/StringInputTest.php
deleted file mode 100644
index ccf9289..0000000
--- a/vendor/symfony/console/Tests/Input/StringInputTest.php
+++ /dev/null
@@ -1,99 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Console\Tests\Input;
-
-use Symfony\Component\Console\Input\InputDefinition;
-use Symfony\Component\Console\Input\InputOption;
-use Symfony\Component\Console\Input\StringInput;
-
-class StringInputTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @dataProvider getTokenizeData
-     */
-    public function testTokenize($input, $tokens, $message)
-    {
-        $input = new StringInput($input);
-        $r = new \ReflectionClass('Symfony\Component\Console\Input\ArgvInput');
-        $p = $r->getProperty('tokens');
-        $p->setAccessible(true);
-        $this->assertEquals($tokens, $p->getValue($input), $message);
-    }
-
-    public function testInputOptionWithGivenString()
-    {
-        $definition = new InputDefinition(
-            array(new InputOption('foo', null, InputOption::VALUE_REQUIRED))
-        );
-
-        // call to bind
-        $input = new StringInput('--foo=bar');
-        $input->bind($definition);
-        $this->assertEquals('bar', $input->getOption('foo'));
-    }
-
-    /**
-     * @group legacy
-     */
-    public function testLegacyInputOptionDefinitionInConstructor()
-    {
-        $definition = new InputDefinition(
-            array(new InputOption('foo', null, InputOption::VALUE_REQUIRED))
-        );
-
-        $input = new StringInput('--foo=bar', $definition);
-        $this->assertEquals('bar', $input->getOption('foo'));
-    }
-
-    public function getTokenizeData()
-    {
-        return array(
-            array('', array(), '->tokenize() parses an empty string'),
-            array('foo', array('foo'), '->tokenize() parses arguments'),
-            array('  foo  bar  ', array('foo', 'bar'), '->tokenize() ignores whitespaces between arguments'),
-            array('"quoted"', array('quoted'), '->tokenize() parses quoted arguments'),
-            array("'quoted'", array('quoted'), '->tokenize() parses quoted arguments'),
-            array("'a\rb\nc\td'", array("a\rb\nc\td"), '->tokenize() parses whitespace chars in strings'),
-            array("'a'\r'b'\n'c'\t'd'", array('a','b','c','d'), '->tokenize() parses whitespace chars between args as spaces'),
-            array('\"quoted\"', array('"quoted"'), '->tokenize() parses escaped-quoted arguments'),
-            array("\'quoted\'", array('\'quoted\''), '->tokenize() parses escaped-quoted arguments'),
-            array('-a', array('-a'), '->tokenize() parses short options'),
-            array('-azc', array('-azc'), '->tokenize() parses aggregated short options'),
-            array('-awithavalue', array('-awithavalue'), '->tokenize() parses short options with a value'),
-            array('-a"foo bar"', array('-afoo bar'), '->tokenize() parses short options with a value'),
-            array('-a"foo bar""foo bar"', array('-afoo barfoo bar'), '->tokenize() parses short options with a value'),
-            array('-a\'foo bar\'', array('-afoo bar'), '->tokenize() parses short options with a value'),
-            array('-a\'foo bar\'\'foo bar\'', array('-afoo barfoo bar'), '->tokenize() parses short options with a value'),
-            array('-a\'foo bar\'"foo bar"', array('-afoo barfoo bar'), '->tokenize() parses short options with a value'),
-            array('--long-option', array('--long-option'), '->tokenize() parses long options'),
-            array('--long-option=foo', array('--long-option=foo'), '->tokenize() parses long options with a value'),
-            array('--long-option="foo bar"', array('--long-option=foo bar'), '->tokenize() parses long options with a value'),
-            array('--long-option="foo bar""another"', array('--long-option=foo baranother'), '->tokenize() parses long options with a value'),
-            array('--long-option=\'foo bar\'', array('--long-option=foo bar'), '->tokenize() parses long options with a value'),
-            array("--long-option='foo bar''another'", array('--long-option=foo baranother'), '->tokenize() parses long options with a value'),
-            array("--long-option='foo bar'\"another\"", array('--long-option=foo baranother'), '->tokenize() parses long options with a value'),
-            array('foo -a -ffoo --long bar', array('foo', '-a', '-ffoo', '--long', 'bar'), '->tokenize() parses when several arguments and options'),
-        );
-    }
-
-    public function testToString()
-    {
-        $input = new StringInput('-f foo');
-        $this->assertEquals('-f foo', (string) $input);
-
-        $input = new StringInput('-f --bar=foo "a b c d"');
-        $this->assertEquals('-f --bar=foo '.escapeshellarg('a b c d'), (string) $input);
-
-        $input = new StringInput('-f --bar=foo \'a b c d\' '."'A\nB\\'C'");
-        $this->assertEquals('-f --bar=foo '.escapeshellarg('a b c d').' '.escapeshellarg("A\nB'C"), (string) $input);
-    }
-}
diff --git a/vendor/symfony/console/Tests/Logger/ConsoleLoggerTest.php b/vendor/symfony/console/Tests/Logger/ConsoleLoggerTest.php
deleted file mode 100644
index c5eca2c..0000000
--- a/vendor/symfony/console/Tests/Logger/ConsoleLoggerTest.php
+++ /dev/null
@@ -1,58 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Console\Tests\Logger;
-
-use Psr\Log\Test\LoggerInterfaceTest;
-use Psr\Log\LogLevel;
-use Symfony\Component\Console\Logger\ConsoleLogger;
-use Symfony\Component\Console\Tests\Fixtures\DummyOutput;
-use Symfony\Component\Console\Output\OutputInterface;
-
-/**
- * Console logger test.
- *
- * @author Kévin Dunglas <dunglas@gmail.com>
- */
-class ConsoleLoggerTest extends LoggerInterfaceTest
-{
-    /**
-     * @var DummyOutput
-     */
-    protected $output;
-
-    /**
-     * {@inheritdoc}
-     */
-    public function getLogger()
-    {
-        $this->output = new DummyOutput(OutputInterface::VERBOSITY_VERBOSE);
-
-        return new ConsoleLogger($this->output, array(
-            LogLevel::EMERGENCY => OutputInterface::VERBOSITY_NORMAL,
-            LogLevel::ALERT => OutputInterface::VERBOSITY_NORMAL,
-            LogLevel::CRITICAL => OutputInterface::VERBOSITY_NORMAL,
-            LogLevel::ERROR => OutputInterface::VERBOSITY_NORMAL,
-            LogLevel::WARNING => OutputInterface::VERBOSITY_NORMAL,
-            LogLevel::NOTICE => OutputInterface::VERBOSITY_NORMAL,
-            LogLevel::INFO => OutputInterface::VERBOSITY_NORMAL,
-            LogLevel::DEBUG => OutputInterface::VERBOSITY_NORMAL,
-        ));
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    public function getLogs()
-    {
-        return $this->output->getLogs();
-    }
-}
diff --git a/vendor/symfony/console/Tests/Output/ConsoleOutputTest.php b/vendor/symfony/console/Tests/Output/ConsoleOutputTest.php
deleted file mode 100644
index 1afbbb6..0000000
--- a/vendor/symfony/console/Tests/Output/ConsoleOutputTest.php
+++ /dev/null
@@ -1,25 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Console\Tests\Output;
-
-use Symfony\Component\Console\Output\ConsoleOutput;
-use Symfony\Component\Console\Output\Output;
-
-class ConsoleOutputTest extends \PHPUnit_Framework_TestCase
-{
-    public function testConstructor()
-    {
-        $output = new ConsoleOutput(Output::VERBOSITY_QUIET, true);
-        $this->assertEquals(Output::VERBOSITY_QUIET, $output->getVerbosity(), '__construct() takes the verbosity as its first argument');
-        $this->assertSame($output->getFormatter(), $output->getErrorOutput()->getFormatter(), '__construct() takes a formatter or null as the third argument');
-    }
-}
diff --git a/vendor/symfony/console/Tests/Output/NullOutputTest.php b/vendor/symfony/console/Tests/Output/NullOutputTest.php
deleted file mode 100644
index b20ae4e..0000000
--- a/vendor/symfony/console/Tests/Output/NullOutputTest.php
+++ /dev/null
@@ -1,39 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Console\Tests\Output;
-
-use Symfony\Component\Console\Output\NullOutput;
-use Symfony\Component\Console\Output\OutputInterface;
-
-class NullOutputTest extends \PHPUnit_Framework_TestCase
-{
-    public function testConstructor()
-    {
-        $output = new NullOutput();
-
-        ob_start();
-        $output->write('foo');
-        $buffer = ob_get_clean();
-
-        $this->assertSame('', $buffer, '->write() does nothing (at least nothing is printed)');
-        $this->assertFalse($output->isDecorated(), '->isDecorated() returns false');
-    }
-
-    public function testVerbosity()
-    {
-        $output = new NullOutput();
-        $this->assertSame(OutputInterface::VERBOSITY_QUIET, $output->getVerbosity(), '->getVerbosity() returns VERBOSITY_QUIET for NullOutput by default');
-
-        $output->setVerbosity(OutputInterface::VERBOSITY_VERBOSE);
-        $this->assertSame(OutputInterface::VERBOSITY_QUIET, $output->getVerbosity(), '->getVerbosity() always returns VERBOSITY_QUIET for NullOutput');
-    }
-}
diff --git a/vendor/symfony/console/Tests/Output/OutputTest.php b/vendor/symfony/console/Tests/Output/OutputTest.php
deleted file mode 100644
index cfb4afe..0000000
--- a/vendor/symfony/console/Tests/Output/OutputTest.php
+++ /dev/null
@@ -1,156 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Console\Tests\Output;
-
-use Symfony\Component\Console\Output\Output;
-use Symfony\Component\Console\Formatter\OutputFormatterStyle;
-
-class OutputTest extends \PHPUnit_Framework_TestCase
-{
-    public function testConstructor()
-    {
-        $output = new TestOutput(Output::VERBOSITY_QUIET, true);
-        $this->assertEquals(Output::VERBOSITY_QUIET, $output->getVerbosity(), '__construct() takes the verbosity as its first argument');
-        $this->assertTrue($output->isDecorated(), '__construct() takes the decorated flag as its second argument');
-    }
-
-    public function testSetIsDecorated()
-    {
-        $output = new TestOutput();
-        $output->setDecorated(true);
-        $this->assertTrue($output->isDecorated(), 'setDecorated() sets the decorated flag');
-    }
-
-    public function testSetGetVerbosity()
-    {
-        $output = new TestOutput();
-        $output->setVerbosity(Output::VERBOSITY_QUIET);
-        $this->assertEquals(Output::VERBOSITY_QUIET, $output->getVerbosity(), '->setVerbosity() sets the verbosity');
-
-        $this->assertTrue($output->isQuiet());
-        $this->assertFalse($output->isVerbose());
-        $this->assertFalse($output->isVeryVerbose());
-        $this->assertFalse($output->isDebug());
-
-        $output->setVerbosity(Output::VERBOSITY_NORMAL);
-        $this->assertFalse($output->isQuiet());
-        $this->assertFalse($output->isVerbose());
-        $this->assertFalse($output->isVeryVerbose());
-        $this->assertFalse($output->isDebug());
-
-        $output->setVerbosity(Output::VERBOSITY_VERBOSE);
-        $this->assertFalse($output->isQuiet());
-        $this->assertTrue($output->isVerbose());
-        $this->assertFalse($output->isVeryVerbose());
-        $this->assertFalse($output->isDebug());
-
-        $output->setVerbosity(Output::VERBOSITY_VERY_VERBOSE);
-        $this->assertFalse($output->isQuiet());
-        $this->assertTrue($output->isVerbose());
-        $this->assertTrue($output->isVeryVerbose());
-        $this->assertFalse($output->isDebug());
-
-        $output->setVerbosity(Output::VERBOSITY_DEBUG);
-        $this->assertFalse($output->isQuiet());
-        $this->assertTrue($output->isVerbose());
-        $this->assertTrue($output->isVeryVerbose());
-        $this->assertTrue($output->isDebug());
-    }
-
-    public function testWriteWithVerbosityQuiet()
-    {
-        $output = new TestOutput(Output::VERBOSITY_QUIET);
-        $output->writeln('foo');
-        $this->assertEquals('', $output->output, '->writeln() outputs nothing if verbosity is set to VERBOSITY_QUIET');
-    }
-
-    public function testWriteAnArrayOfMessages()
-    {
-        $output = new TestOutput();
-        $output->writeln(array('foo', 'bar'));
-        $this->assertEquals("foo\nbar\n", $output->output, '->writeln() can take an array of messages to output');
-    }
-
-    /**
-     * @dataProvider provideWriteArguments
-     */
-    public function testWriteRawMessage($message, $type, $expectedOutput)
-    {
-        $output = new TestOutput();
-        $output->writeln($message, $type);
-        $this->assertEquals($expectedOutput, $output->output);
-    }
-
-    public function provideWriteArguments()
-    {
-        return array(
-            array('<info>foo</info>', Output::OUTPUT_RAW, "<info>foo</info>\n"),
-            array('<info>foo</info>', Output::OUTPUT_PLAIN, "foo\n"),
-        );
-    }
-
-    public function testWriteWithDecorationTurnedOff()
-    {
-        $output = new TestOutput();
-        $output->setDecorated(false);
-        $output->writeln('<info>foo</info>');
-        $this->assertEquals("foo\n", $output->output, '->writeln() strips decoration tags if decoration is set to false');
-    }
-
-    public function testWriteDecoratedMessage()
-    {
-        $fooStyle = new OutputFormatterStyle('yellow', 'red', array('blink'));
-        $output = new TestOutput();
-        $output->getFormatter()->setStyle('FOO', $fooStyle);
-        $output->setDecorated(true);
-        $output->writeln('<foo>foo</foo>');
-        $this->assertEquals("\033[33;41;5mfoo\033[39;49;25m\n", $output->output, '->writeln() decorates the output');
-    }
-
-    /**
-     * @expectedException        \InvalidArgumentException
-     * @expectedExceptionMessage Unknown output type given (24)
-     */
-    public function testWriteWithInvalidOutputType()
-    {
-        $output = new TestOutput();
-        $output->writeln('<foo>foo</foo>', 24);
-    }
-
-    public function testWriteWithInvalidStyle()
-    {
-        $output = new TestOutput();
-
-        $output->clear();
-        $output->write('<bar>foo</bar>');
-        $this->assertEquals('<bar>foo</bar>', $output->output, '->write() do nothing when a style does not exist');
-
-        $output->clear();
-        $output->writeln('<bar>foo</bar>');
-        $this->assertEquals("<bar>foo</bar>\n", $output->output, '->writeln() do nothing when a style does not exist');
-    }
-}
-
-class TestOutput extends Output
-{
-    public $output = '';
-
-    public function clear()
-    {
-        $this->output = '';
-    }
-
-    protected function doWrite($message, $newline)
-    {
-        $this->output .= $message.($newline ? "\n" : '');
-    }
-}
diff --git a/vendor/symfony/console/Tests/Output/StreamOutputTest.php b/vendor/symfony/console/Tests/Output/StreamOutputTest.php
deleted file mode 100644
index 2fd4f61..0000000
--- a/vendor/symfony/console/Tests/Output/StreamOutputTest.php
+++ /dev/null
@@ -1,60 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Console\Tests\Output;
-
-use Symfony\Component\Console\Output\Output;
-use Symfony\Component\Console\Output\StreamOutput;
-
-class StreamOutputTest extends \PHPUnit_Framework_TestCase
-{
-    protected $stream;
-
-    protected function setUp()
-    {
-        $this->stream = fopen('php://memory', 'a', false);
-    }
-
-    protected function tearDown()
-    {
-        $this->stream = null;
-    }
-
-    public function testConstructor()
-    {
-        $output = new StreamOutput($this->stream, Output::VERBOSITY_QUIET, true);
-        $this->assertEquals(Output::VERBOSITY_QUIET, $output->getVerbosity(), '__construct() takes the verbosity as its first argument');
-        $this->assertTrue($output->isDecorated(), '__construct() takes the decorated flag as its second argument');
-    }
-
-    /**
-     * @expectedException        \InvalidArgumentException
-     * @expectedExceptionMessage The StreamOutput class needs a stream as its first argument.
-     */
-    public function testStreamIsRequired()
-    {
-        new StreamOutput('foo');
-    }
-
-    public function testGetStream()
-    {
-        $output = new StreamOutput($this->stream);
-        $this->assertEquals($this->stream, $output->getStream(), '->getStream() returns the current stream');
-    }
-
-    public function testDoWrite()
-    {
-        $output = new StreamOutput($this->stream);
-        $output->writeln('foo');
-        rewind($output->getStream());
-        $this->assertEquals('foo'.PHP_EOL, stream_get_contents($output->getStream()), '->doWrite() writes to the stream');
-    }
-}
diff --git a/vendor/symfony/console/Tests/Style/SymfonyStyleTest.php b/vendor/symfony/console/Tests/Style/SymfonyStyleTest.php
deleted file mode 100644
index 2df4f40..0000000
--- a/vendor/symfony/console/Tests/Style/SymfonyStyleTest.php
+++ /dev/null
@@ -1,64 +0,0 @@
-<?php
-
-namespace Symfony\Component\Console\Tests\Style;
-
-use PHPUnit_Framework_TestCase;
-use Symfony\Component\Console\Command\Command;
-use Symfony\Component\Console\Input\InputInterface;
-use Symfony\Component\Console\Output\OutputInterface;
-use Symfony\Component\Console\Style\SymfonyStyle;
-use Symfony\Component\Console\Tester\CommandTester;
-
-class SymfonyStyleTest extends PHPUnit_Framework_TestCase
-{
-    /** @var Command */
-    protected $command;
-    /** @var CommandTester */
-    protected $tester;
-
-    protected function setUp()
-    {
-        $this->command = new Command('sfstyle');
-        $this->tester = new CommandTester($this->command);
-    }
-
-    protected function tearDown()
-    {
-        $this->command = null;
-        $this->tester = null;
-    }
-
-    /**
-     * @dataProvider inputCommandToOutputFilesProvider
-     */
-    public function testOutputs($inputCommandFilepath, $outputFilepath)
-    {
-        $code = require $inputCommandFilepath;
-        $this->command->setCode($code);
-        $this->tester->execute(array(), array('interactive' => false, 'decorated' => false));
-        $this->assertStringEqualsFile($outputFilepath, $this->tester->getDisplay(true));
-    }
-
-    public function inputCommandToOutputFilesProvider()
-    {
-        $baseDir = __DIR__.'/../Fixtures/Style/SymfonyStyle';
-
-        return array_map(null, glob($baseDir.'/command/command_*.php'), glob($baseDir.'/output/output_*.txt'));
-    }
-
-    public function testLongWordsBlockWrapping()
-    {
-        $word = 'Lopadotemachoselachogaleokranioleipsanodrimhypotrimmatosilphioparaomelitokatakechymenokichlepikossyphophattoperisteralektryonoptekephalliokigklopeleiolagoiosiraiobaphetraganopterygon';
-        $wordLength = strlen($word);
-        $maxLineLength = SymfonyStyle::MAX_LINE_LENGTH - 3;
-
-        $this->command->setCode(function (InputInterface $input, OutputInterface $output) use ($word) {
-            $sfStyle = new SymfonyStyle($input, $output);
-            $sfStyle->block($word, 'CUSTOM', 'fg=white;bg=blue', ' § ', false);
-        });
-
-        $this->tester->execute(array(), array('interactive' => false, 'decorated' => false));
-        $expectedCount = (int) ceil($wordLength / ($maxLineLength)) + (int) ($wordLength > $maxLineLength - 5);
-        $this->assertSame($expectedCount, substr_count($this->tester->getDisplay(true), ' § '));
-    }
-}
diff --git a/vendor/symfony/console/Tests/Tester/ApplicationTesterTest.php b/vendor/symfony/console/Tests/Tester/ApplicationTesterTest.php
deleted file mode 100644
index a8389dd..0000000
--- a/vendor/symfony/console/Tests/Tester/ApplicationTesterTest.php
+++ /dev/null
@@ -1,69 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Console\Tests\Tester;
-
-use Symfony\Component\Console\Application;
-use Symfony\Component\Console\Output\Output;
-use Symfony\Component\Console\Tester\ApplicationTester;
-
-class ApplicationTesterTest extends \PHPUnit_Framework_TestCase
-{
-    protected $application;
-    protected $tester;
-
-    protected function setUp()
-    {
-        $this->application = new Application();
-        $this->application->setAutoExit(false);
-        $this->application->register('foo')
-            ->addArgument('foo')
-            ->setCode(function ($input, $output) { $output->writeln('foo'); })
-        ;
-
-        $this->tester = new ApplicationTester($this->application);
-        $this->tester->run(array('command' => 'foo', 'foo' => 'bar'), array('interactive' => false, 'decorated' => false, 'verbosity' => Output::VERBOSITY_VERBOSE));
-    }
-
-    protected function tearDown()
-    {
-        $this->application = null;
-        $this->tester = null;
-    }
-
-    public function testRun()
-    {
-        $this->assertFalse($this->tester->getInput()->isInteractive(), '->execute() takes an interactive option');
-        $this->assertFalse($this->tester->getOutput()->isDecorated(), '->execute() takes a decorated option');
-        $this->assertEquals(Output::VERBOSITY_VERBOSE, $this->tester->getOutput()->getVerbosity(), '->execute() takes a verbosity option');
-    }
-
-    public function testGetInput()
-    {
-        $this->assertEquals('bar', $this->tester->getInput()->getArgument('foo'), '->getInput() returns the current input instance');
-    }
-
-    public function testGetOutput()
-    {
-        rewind($this->tester->getOutput()->getStream());
-        $this->assertEquals('foo'.PHP_EOL, stream_get_contents($this->tester->getOutput()->getStream()), '->getOutput() returns the current output instance');
-    }
-
-    public function testGetDisplay()
-    {
-        $this->assertEquals('foo'.PHP_EOL, $this->tester->getDisplay(), '->getDisplay() returns the display of the last execution');
-    }
-
-    public function testGetStatusCode()
-    {
-        $this->assertSame(0, $this->tester->getStatusCode(), '->getStatusCode() returns the status code');
-    }
-}
diff --git a/vendor/symfony/console/Tests/Tester/CommandTesterTest.php b/vendor/symfony/console/Tests/Tester/CommandTesterTest.php
deleted file mode 100644
index b54c00e..0000000
--- a/vendor/symfony/console/Tests/Tester/CommandTesterTest.php
+++ /dev/null
@@ -1,84 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Console\Tests\Tester;
-
-use Symfony\Component\Console\Application;
-use Symfony\Component\Console\Command\Command;
-use Symfony\Component\Console\Output\Output;
-use Symfony\Component\Console\Tester\CommandTester;
-
-class CommandTesterTest extends \PHPUnit_Framework_TestCase
-{
-    protected $command;
-    protected $tester;
-
-    protected function setUp()
-    {
-        $this->command = new Command('foo');
-        $this->command->addArgument('command');
-        $this->command->addArgument('foo');
-        $this->command->setCode(function ($input, $output) { $output->writeln('foo'); });
-
-        $this->tester = new CommandTester($this->command);
-        $this->tester->execute(array('foo' => 'bar'), array('interactive' => false, 'decorated' => false, 'verbosity' => Output::VERBOSITY_VERBOSE));
-    }
-
-    protected function tearDown()
-    {
-        $this->command = null;
-        $this->tester = null;
-    }
-
-    public function testExecute()
-    {
-        $this->assertFalse($this->tester->getInput()->isInteractive(), '->execute() takes an interactive option');
-        $this->assertFalse($this->tester->getOutput()->isDecorated(), '->execute() takes a decorated option');
-        $this->assertEquals(Output::VERBOSITY_VERBOSE, $this->tester->getOutput()->getVerbosity(), '->execute() takes a verbosity option');
-    }
-
-    public function testGetInput()
-    {
-        $this->assertEquals('bar', $this->tester->getInput()->getArgument('foo'), '->getInput() returns the current input instance');
-    }
-
-    public function testGetOutput()
-    {
-        rewind($this->tester->getOutput()->getStream());
-        $this->assertEquals('foo'.PHP_EOL, stream_get_contents($this->tester->getOutput()->getStream()), '->getOutput() returns the current output instance');
-    }
-
-    public function testGetDisplay()
-    {
-        $this->assertEquals('foo'.PHP_EOL, $this->tester->getDisplay(), '->getDisplay() returns the display of the last execution');
-    }
-
-    public function testGetStatusCode()
-    {
-        $this->assertSame(0, $this->tester->getStatusCode(), '->getStatusCode() returns the status code');
-    }
-
-    public function testCommandFromApplication()
-    {
-        $application = new Application();
-        $application->setAutoExit(false);
-
-        $command = new Command('foo');
-        $command->setCode(function ($input, $output) { $output->writeln('foo'); });
-
-        $application->add($command);
-
-        $tester = new CommandTester($application->find('foo'));
-
-        // check that there is no need to pass the command name here
-        $this->assertEquals(0, $tester->execute(array()));
-    }
-}
diff --git a/vendor/symfony/css-selector/Tests/CssSelectorTest.php b/vendor/symfony/css-selector/Tests/CssSelectorTest.php
deleted file mode 100644
index 61ab80e..0000000
--- a/vendor/symfony/css-selector/Tests/CssSelectorTest.php
+++ /dev/null
@@ -1,64 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\CssSelector\Tests;
-
-use Symfony\Component\CssSelector\CssSelector;
-
-class CssSelectorTest extends \PHPUnit_Framework_TestCase
-{
-    public function testCssToXPath()
-    {
-        $this->assertEquals('descendant-or-self::*', CssSelector::toXPath(''));
-        $this->assertEquals('descendant-or-self::h1', CssSelector::toXPath('h1'));
-        $this->assertEquals("descendant-or-self::h1[@id = 'foo']", CssSelector::toXPath('h1#foo'));
-        $this->assertEquals("descendant-or-self::h1[@class and contains(concat(' ', normalize-space(@class), ' '), ' foo ')]", CssSelector::toXPath('h1.foo'));
-        $this->assertEquals('descendant-or-self::foo:h1', CssSelector::toXPath('foo|h1'));
-    }
-
-    /** @dataProvider getCssToXPathWithoutPrefixTestData */
-    public function testCssToXPathWithoutPrefix($css, $xpath)
-    {
-        $this->assertEquals($xpath, CssSelector::toXPath($css, ''), '->parse() parses an input string and returns a node');
-    }
-
-    public function testParseExceptions()
-    {
-        try {
-            CssSelector::toXPath('h1:');
-            $this->fail('->parse() throws an Exception if the css selector is not valid');
-        } catch (\Exception $e) {
-            $this->assertInstanceOf('\Symfony\Component\CssSelector\Exception\ParseException', $e, '->parse() throws an Exception if the css selector is not valid');
-            $this->assertEquals('Expected identifier, but <eof at 3> found.', $e->getMessage(), '->parse() throws an Exception if the css selector is not valid');
-        }
-    }
-
-    public function getCssToXPathWithoutPrefixTestData()
-    {
-        return array(
-            array('h1', 'h1'),
-            array('foo|h1', 'foo:h1'),
-            array('h1, h2, h3', 'h1 | h2 | h3'),
-            array('h1:nth-child(3n+1)', "*/*[name() = 'h1' and (position() - 1 >= 0 and (position() - 1) mod 3 = 0)]"),
-            array('h1 > p', 'h1/p'),
-            array('h1#foo', "h1[@id = 'foo']"),
-            array('h1.foo', "h1[@class and contains(concat(' ', normalize-space(@class), ' '), ' foo ')]"),
-            array('h1[class*="foo bar"]', "h1[@class and contains(@class, 'foo bar')]"),
-            array('h1[foo|class*="foo bar"]', "h1[@foo:class and contains(@foo:class, 'foo bar')]"),
-            array('h1[class]', 'h1[@class]'),
-            array('h1 .foo', "h1/descendant-or-self::*/*[@class and contains(concat(' ', normalize-space(@class), ' '), ' foo ')]"),
-            array('h1 #foo', "h1/descendant-or-self::*/*[@id = 'foo']"),
-            array('h1 [class*=foo]', "h1/descendant-or-self::*/*[@class and contains(@class, 'foo')]"),
-            array('div>.foo', "div/*[@class and contains(concat(' ', normalize-space(@class), ' '), ' foo ')]"),
-            array('div > .foo', "div/*[@class and contains(concat(' ', normalize-space(@class), ' '), ' foo ')]"),
-        );
-    }
-}
diff --git a/vendor/symfony/css-selector/Tests/Node/AbstractNodeTest.php b/vendor/symfony/css-selector/Tests/Node/AbstractNodeTest.php
deleted file mode 100644
index 16a3a34..0000000
--- a/vendor/symfony/css-selector/Tests/Node/AbstractNodeTest.php
+++ /dev/null
@@ -1,32 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\CssSelector\Tests\Node;
-
-use Symfony\Component\CssSelector\Node\NodeInterface;
-
-abstract class AbstractNodeTest extends \PHPUnit_Framework_TestCase
-{
-    /** @dataProvider getToStringConversionTestData */
-    public function testToStringConversion(NodeInterface $node, $representation)
-    {
-        $this->assertEquals($representation, (string) $node);
-    }
-
-    /** @dataProvider getSpecificityValueTestData */
-    public function testSpecificityValue(NodeInterface $node, $value)
-    {
-        $this->assertEquals($value, $node->getSpecificity()->getValue());
-    }
-
-    abstract public function getToStringConversionTestData();
-    abstract public function getSpecificityValueTestData();
-}
diff --git a/vendor/symfony/css-selector/Tests/Node/AttributeNodeTest.php b/vendor/symfony/css-selector/Tests/Node/AttributeNodeTest.php
deleted file mode 100644
index 1fd090f..0000000
--- a/vendor/symfony/css-selector/Tests/Node/AttributeNodeTest.php
+++ /dev/null
@@ -1,37 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\CssSelector\Tests\Node;
-
-use Symfony\Component\CssSelector\Node\AttributeNode;
-use Symfony\Component\CssSelector\Node\ElementNode;
-
-class AttributeNodeTest extends AbstractNodeTest
-{
-    public function getToStringConversionTestData()
-    {
-        return array(
-            array(new AttributeNode(new ElementNode(), null, 'attribute', 'exists', null), 'Attribute[Element[*][attribute]]'),
-            array(new AttributeNode(new ElementNode(), null, 'attribute', '$=', 'value'), "Attribute[Element[*][attribute $= 'value']]"),
-            array(new AttributeNode(new ElementNode(), 'namespace', 'attribute', '$=', 'value'), "Attribute[Element[*][namespace|attribute $= 'value']]"),
-        );
-    }
-
-    public function getSpecificityValueTestData()
-    {
-        return array(
-            array(new AttributeNode(new ElementNode(), null, 'attribute', 'exists', null), 10),
-            array(new AttributeNode(new ElementNode(null, 'element'), null, 'attribute', 'exists', null), 11),
-            array(new AttributeNode(new ElementNode(), null, 'attribute', '$=', 'value'), 10),
-            array(new AttributeNode(new ElementNode(), 'namespace', 'attribute', '$=', 'value'), 10),
-        );
-    }
-}
diff --git a/vendor/symfony/css-selector/Tests/Node/ClassNodeTest.php b/vendor/symfony/css-selector/Tests/Node/ClassNodeTest.php
deleted file mode 100644
index e0ab45a..0000000
--- a/vendor/symfony/css-selector/Tests/Node/ClassNodeTest.php
+++ /dev/null
@@ -1,33 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\CssSelector\Tests\Node;
-
-use Symfony\Component\CssSelector\Node\ClassNode;
-use Symfony\Component\CssSelector\Node\ElementNode;
-
-class ClassNodeTest extends AbstractNodeTest
-{
-    public function getToStringConversionTestData()
-    {
-        return array(
-            array(new ClassNode(new ElementNode(), 'class'), 'Class[Element[*].class]'),
-        );
-    }
-
-    public function getSpecificityValueTestData()
-    {
-        return array(
-            array(new ClassNode(new ElementNode(), 'class'), 10),
-            array(new ClassNode(new ElementNode(null, 'element'), 'class'), 11),
-        );
-    }
-}
diff --git a/vendor/symfony/css-selector/Tests/Node/CombinedSelectorNodeTest.php b/vendor/symfony/css-selector/Tests/Node/CombinedSelectorNodeTest.php
deleted file mode 100644
index 9547298..0000000
--- a/vendor/symfony/css-selector/Tests/Node/CombinedSelectorNodeTest.php
+++ /dev/null
@@ -1,35 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\CssSelector\Tests\Node;
-
-use Symfony\Component\CssSelector\Node\CombinedSelectorNode;
-use Symfony\Component\CssSelector\Node\ElementNode;
-
-class CombinedSelectorNodeTest extends AbstractNodeTest
-{
-    public function getToStringConversionTestData()
-    {
-        return array(
-            array(new CombinedSelectorNode(new ElementNode(), '>', new ElementNode()), 'CombinedSelector[Element[*] > Element[*]]'),
-            array(new CombinedSelectorNode(new ElementNode(), ' ', new ElementNode()), 'CombinedSelector[Element[*] <followed> Element[*]]'),
-        );
-    }
-
-    public function getSpecificityValueTestData()
-    {
-        return array(
-            array(new CombinedSelectorNode(new ElementNode(), '>', new ElementNode()), 0),
-            array(new CombinedSelectorNode(new ElementNode(null, 'element'), '>', new ElementNode()), 1),
-            array(new CombinedSelectorNode(new ElementNode(null, 'element'), '>', new ElementNode(null, 'element')), 2),
-        );
-    }
-}
diff --git a/vendor/symfony/css-selector/Tests/Node/ElementNodeTest.php b/vendor/symfony/css-selector/Tests/Node/ElementNodeTest.php
deleted file mode 100644
index 1db6a59..0000000
--- a/vendor/symfony/css-selector/Tests/Node/ElementNodeTest.php
+++ /dev/null
@@ -1,35 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\CssSelector\Tests\Node;
-
-use Symfony\Component\CssSelector\Node\ElementNode;
-
-class ElementNodeTest extends AbstractNodeTest
-{
-    public function getToStringConversionTestData()
-    {
-        return array(
-            array(new ElementNode(), 'Element[*]'),
-            array(new ElementNode(null, 'element'), 'Element[element]'),
-            array(new ElementNode('namespace', 'element'), 'Element[namespace|element]'),
-        );
-    }
-
-    public function getSpecificityValueTestData()
-    {
-        return array(
-            array(new ElementNode(), 0),
-            array(new ElementNode(null, 'element'), 1),
-            array(new ElementNode('namespace', 'element'),1),
-        );
-    }
-}
diff --git a/vendor/symfony/css-selector/Tests/Node/FunctionNodeTest.php b/vendor/symfony/css-selector/Tests/Node/FunctionNodeTest.php
deleted file mode 100644
index ee3ce51..0000000
--- a/vendor/symfony/css-selector/Tests/Node/FunctionNodeTest.php
+++ /dev/null
@@ -1,47 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\CssSelector\Tests\Node;
-
-use Symfony\Component\CssSelector\Node\ElementNode;
-use Symfony\Component\CssSelector\Node\FunctionNode;
-use Symfony\Component\CssSelector\Parser\Token;
-
-class FunctionNodeTest extends AbstractNodeTest
-{
-    public function getToStringConversionTestData()
-    {
-        return array(
-            array(new FunctionNode(new ElementNode(), 'function'), 'Function[Element[*]:function()]'),
-            array(new FunctionNode(new ElementNode(), 'function', array(
-                new Token(Token::TYPE_IDENTIFIER, 'value', 0),
-            )), "Function[Element[*]:function(['value'])]"),
-            array(new FunctionNode(new ElementNode(), 'function', array(
-                new Token(Token::TYPE_STRING, 'value1', 0),
-                new Token(Token::TYPE_NUMBER, 'value2', 0),
-            )), "Function[Element[*]:function(['value1', 'value2'])]"),
-        );
-    }
-
-    public function getSpecificityValueTestData()
-    {
-        return array(
-            array(new FunctionNode(new ElementNode(), 'function'), 10),
-            array(new FunctionNode(new ElementNode(), 'function', array(
-                new Token(Token::TYPE_IDENTIFIER, 'value', 0),
-            )), 10),
-            array(new FunctionNode(new ElementNode(), 'function', array(
-                new Token(Token::TYPE_STRING, 'value1', 0),
-                new Token(Token::TYPE_NUMBER, 'value2', 0),
-            )), 10),
-        );
-    }
-}
diff --git a/vendor/symfony/css-selector/Tests/Node/HashNodeTest.php b/vendor/symfony/css-selector/Tests/Node/HashNodeTest.php
deleted file mode 100644
index 8554b22..0000000
--- a/vendor/symfony/css-selector/Tests/Node/HashNodeTest.php
+++ /dev/null
@@ -1,33 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\CssSelector\Tests\Node;
-
-use Symfony\Component\CssSelector\Node\HashNode;
-use Symfony\Component\CssSelector\Node\ElementNode;
-
-class HashNodeTest extends AbstractNodeTest
-{
-    public function getToStringConversionTestData()
-    {
-        return array(
-            array(new HashNode(new ElementNode(), 'id'), 'Hash[Element[*]#id]'),
-        );
-    }
-
-    public function getSpecificityValueTestData()
-    {
-        return array(
-            array(new HashNode(new ElementNode(), 'id'), 100),
-            array(new HashNode(new ElementNode(null, 'id'), 'class'), 101),
-        );
-    }
-}
diff --git a/vendor/symfony/css-selector/Tests/Node/NegationNodeTest.php b/vendor/symfony/css-selector/Tests/Node/NegationNodeTest.php
deleted file mode 100644
index edf4552..0000000
--- a/vendor/symfony/css-selector/Tests/Node/NegationNodeTest.php
+++ /dev/null
@@ -1,33 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\CssSelector\Tests\Node;
-
-use Symfony\Component\CssSelector\Node\ClassNode;
-use Symfony\Component\CssSelector\Node\NegationNode;
-use Symfony\Component\CssSelector\Node\ElementNode;
-
-class NegationNodeTest extends AbstractNodeTest
-{
-    public function getToStringConversionTestData()
-    {
-        return array(
-            array(new NegationNode(new ElementNode(), new ClassNode(new ElementNode(), 'class')), 'Negation[Element[*]:not(Class[Element[*].class])]'),
-        );
-    }
-
-    public function getSpecificityValueTestData()
-    {
-        return array(
-            array(new NegationNode(new ElementNode(), new ClassNode(new ElementNode(), 'class')), 10),
-        );
-    }
-}
diff --git a/vendor/symfony/css-selector/Tests/Node/PseudoNodeTest.php b/vendor/symfony/css-selector/Tests/Node/PseudoNodeTest.php
deleted file mode 100644
index bc57813..0000000
--- a/vendor/symfony/css-selector/Tests/Node/PseudoNodeTest.php
+++ /dev/null
@@ -1,32 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\CssSelector\Tests\Node;
-
-use Symfony\Component\CssSelector\Node\ElementNode;
-use Symfony\Component\CssSelector\Node\PseudoNode;
-
-class PseudoNodeTest extends AbstractNodeTest
-{
-    public function getToStringConversionTestData()
-    {
-        return array(
-            array(new PseudoNode(new ElementNode(), 'pseudo'), 'Pseudo[Element[*]:pseudo]'),
-        );
-    }
-
-    public function getSpecificityValueTestData()
-    {
-        return array(
-            array(new PseudoNode(new ElementNode(), 'pseudo'), 10),
-        );
-    }
-}
diff --git a/vendor/symfony/css-selector/Tests/Node/SelectorNodeTest.php b/vendor/symfony/css-selector/Tests/Node/SelectorNodeTest.php
deleted file mode 100644
index 5badf71..0000000
--- a/vendor/symfony/css-selector/Tests/Node/SelectorNodeTest.php
+++ /dev/null
@@ -1,34 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\CssSelector\Tests\Node;
-
-use Symfony\Component\CssSelector\Node\ElementNode;
-use Symfony\Component\CssSelector\Node\SelectorNode;
-
-class SelectorNodeTest extends AbstractNodeTest
-{
-    public function getToStringConversionTestData()
-    {
-        return array(
-            array(new SelectorNode(new ElementNode()), 'Selector[Element[*]]'),
-            array(new SelectorNode(new ElementNode(), 'pseudo'), 'Selector[Element[*]::pseudo]'),
-        );
-    }
-
-    public function getSpecificityValueTestData()
-    {
-        return array(
-            array(new SelectorNode(new ElementNode()), 0),
-            array(new SelectorNode(new ElementNode(), 'pseudo'), 1),
-        );
-    }
-}
diff --git a/vendor/symfony/css-selector/Tests/Node/SpecificityTest.php b/vendor/symfony/css-selector/Tests/Node/SpecificityTest.php
deleted file mode 100644
index c34fe5f..0000000
--- a/vendor/symfony/css-selector/Tests/Node/SpecificityTest.php
+++ /dev/null
@@ -1,62 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\CssSelector\Tests\Node;
-
-use Symfony\Component\CssSelector\Node\Specificity;
-
-class SpecificityTest extends \PHPUnit_Framework_TestCase
-{
-    /** @dataProvider getValueTestData */
-    public function testValue(Specificity $specificity, $value)
-    {
-        $this->assertEquals($value, $specificity->getValue());
-    }
-
-    /** @dataProvider getValueTestData */
-    public function testPlusValue(Specificity $specificity, $value)
-    {
-        $this->assertEquals($value + 123, $specificity->plus(new Specificity(1, 2, 3))->getValue());
-    }
-
-    public function getValueTestData()
-    {
-        return array(
-            array(new Specificity(0, 0, 0), 0),
-            array(new Specificity(0, 0, 2), 2),
-            array(new Specificity(0, 3, 0), 30),
-            array(new Specificity(4, 0, 0), 400),
-            array(new Specificity(4, 3, 2), 432),
-        );
-    }
-
-    /** @dataProvider getCompareTestData */
-    public function testCompareTo(Specificity $a, Specificity $b, $result)
-    {
-        $this->assertEquals($result, $a->compareTo($b));
-    }
-
-    public function getCompareTestData()
-    {
-        return array(
-            array(new Specificity(0, 0, 0), new Specificity(0, 0, 0), 0),
-            array(new Specificity(0, 0, 1), new Specificity(0, 0, 1), 0),
-            array(new Specificity(0, 0, 2), new Specificity(0, 0, 1), 1),
-            array(new Specificity(0, 0, 2), new Specificity(0, 0, 3), -1),
-            array(new Specificity(0, 4, 0), new Specificity(0, 4, 0), 0),
-            array(new Specificity(0, 6, 0), new Specificity(0, 5, 11), 1),
-            array(new Specificity(0, 7, 0), new Specificity(0, 8, 0), -1),
-            array(new Specificity(9, 0, 0), new Specificity(9, 0, 0), 0),
-            array(new Specificity(11, 0, 0), new Specificity(10, 11, 0), 1),
-            array(new Specificity(12, 11, 0), new Specificity(13, 0, 0), -1),
-        );
-    }
-}
diff --git a/vendor/symfony/css-selector/Tests/Parser/Handler/AbstractHandlerTest.php b/vendor/symfony/css-selector/Tests/Parser/Handler/AbstractHandlerTest.php
deleted file mode 100644
index a06dca0..0000000
--- a/vendor/symfony/css-selector/Tests/Parser/Handler/AbstractHandlerTest.php
+++ /dev/null
@@ -1,67 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\CssSelector\Tests\Parser\Handler;
-
-use Symfony\Component\CssSelector\Parser\Reader;
-use Symfony\Component\CssSelector\Parser\Token;
-use Symfony\Component\CssSelector\Parser\TokenStream;
-
-/**
- * @author Jean-François Simon <contact@jfsimon.fr>
- */
-abstract class AbstractHandlerTest extends \PHPUnit_Framework_TestCase
-{
-    /** @dataProvider getHandleValueTestData */
-    public function testHandleValue($value, Token $expectedToken, $remainingContent)
-    {
-        $reader = new Reader($value);
-        $stream = new TokenStream();
-
-        $this->assertTrue($this->generateHandler()->handle($reader, $stream));
-        $this->assertEquals($expectedToken, $stream->getNext());
-        $this->assertRemainingContent($reader, $remainingContent);
-    }
-
-    /** @dataProvider getDontHandleValueTestData */
-    public function testDontHandleValue($value)
-    {
-        $reader = new Reader($value);
-        $stream = new TokenStream();
-
-        $this->assertFalse($this->generateHandler()->handle($reader, $stream));
-        $this->assertStreamEmpty($stream);
-        $this->assertRemainingContent($reader, $value);
-    }
-
-    abstract public function getHandleValueTestData();
-    abstract public function getDontHandleValueTestData();
-    abstract protected function generateHandler();
-
-    protected function assertStreamEmpty(TokenStream $stream)
-    {
-        $property = new \ReflectionProperty($stream, 'tokens');
-        $property->setAccessible(true);
-
-        $this->assertEquals(array(), $property->getValue($stream));
-    }
-
-    protected function assertRemainingContent(Reader $reader, $remainingContent)
-    {
-        if ('' === $remainingContent) {
-            $this->assertEquals(0, $reader->getRemainingLength());
-            $this->assertTrue($reader->isEOF());
-        } else {
-            $this->assertEquals(strlen($remainingContent), $reader->getRemainingLength());
-            $this->assertEquals(0, $reader->getOffset($remainingContent));
-        }
-    }
-}
diff --git a/vendor/symfony/css-selector/Tests/Parser/Handler/CommentHandlerTest.php b/vendor/symfony/css-selector/Tests/Parser/Handler/CommentHandlerTest.php
deleted file mode 100644
index 3961bf7..0000000
--- a/vendor/symfony/css-selector/Tests/Parser/Handler/CommentHandlerTest.php
+++ /dev/null
@@ -1,55 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\CssSelector\Tests\Parser\Handler;
-
-use Symfony\Component\CssSelector\Parser\Handler\CommentHandler;
-use Symfony\Component\CssSelector\Parser\Reader;
-use Symfony\Component\CssSelector\Parser\Token;
-use Symfony\Component\CssSelector\Parser\TokenStream;
-
-class CommentHandlerTest extends AbstractHandlerTest
-{
-    /** @dataProvider getHandleValueTestData */
-    public function testHandleValue($value, Token $unusedArgument, $remainingContent)
-    {
-        $reader = new Reader($value);
-        $stream = new TokenStream();
-
-        $this->assertTrue($this->generateHandler()->handle($reader, $stream));
-        // comments are ignored (not pushed as token in stream)
-        $this->assertStreamEmpty($stream);
-        $this->assertRemainingContent($reader, $remainingContent);
-    }
-
-    public function getHandleValueTestData()
-    {
-        return array(
-            // 2nd argument only exists for inherited method compatibility
-            array('/* comment */', new Token(null, null, null), ''),
-            array('/* comment */foo', new Token(null, null, null), 'foo'),
-        );
-    }
-
-    public function getDontHandleValueTestData()
-    {
-        return array(
-            array('>'),
-            array('+'),
-            array(' '),
-        );
-    }
-
-    protected function generateHandler()
-    {
-        return new CommentHandler();
-    }
-}
diff --git a/vendor/symfony/css-selector/Tests/Parser/Handler/HashHandlerTest.php b/vendor/symfony/css-selector/Tests/Parser/Handler/HashHandlerTest.php
deleted file mode 100644
index b7fa00a..0000000
--- a/vendor/symfony/css-selector/Tests/Parser/Handler/HashHandlerTest.php
+++ /dev/null
@@ -1,49 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\CssSelector\Tests\Parser\Handler;
-
-use Symfony\Component\CssSelector\Parser\Handler\HashHandler;
-use Symfony\Component\CssSelector\Parser\Token;
-use Symfony\Component\CssSelector\Parser\Tokenizer\TokenizerPatterns;
-use Symfony\Component\CssSelector\Parser\Tokenizer\TokenizerEscaping;
-
-class HashHandlerTest extends AbstractHandlerTest
-{
-    public function getHandleValueTestData()
-    {
-        return array(
-            array('#id', new Token(Token::TYPE_HASH, 'id', 0), ''),
-            array('#123', new Token(Token::TYPE_HASH, '123', 0), ''),
-
-            array('#id.class', new Token(Token::TYPE_HASH, 'id', 0), '.class'),
-            array('#id element', new Token(Token::TYPE_HASH, 'id', 0), ' element'),
-        );
-    }
-
-    public function getDontHandleValueTestData()
-    {
-        return array(
-            array('id'),
-            array('123'),
-            array('<'),
-            array('<'),
-            array('#'),
-        );
-    }
-
-    protected function generateHandler()
-    {
-        $patterns = new TokenizerPatterns();
-
-        return new HashHandler($patterns, new TokenizerEscaping($patterns));
-    }
-}
diff --git a/vendor/symfony/css-selector/Tests/Parser/Handler/IdentifierHandlerTest.php b/vendor/symfony/css-selector/Tests/Parser/Handler/IdentifierHandlerTest.php
deleted file mode 100644
index 44d3574..0000000
--- a/vendor/symfony/css-selector/Tests/Parser/Handler/IdentifierHandlerTest.php
+++ /dev/null
@@ -1,49 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\CssSelector\Tests\Parser\Handler;
-
-use Symfony\Component\CssSelector\Parser\Handler\IdentifierHandler;
-use Symfony\Component\CssSelector\Parser\Token;
-use Symfony\Component\CssSelector\Parser\Tokenizer\TokenizerPatterns;
-use Symfony\Component\CssSelector\Parser\Tokenizer\TokenizerEscaping;
-
-class IdentifierHandlerTest extends AbstractHandlerTest
-{
-    public function getHandleValueTestData()
-    {
-        return array(
-            array('foo', new Token(Token::TYPE_IDENTIFIER, 'foo', 0), ''),
-            array('foo|bar', new Token(Token::TYPE_IDENTIFIER, 'foo', 0), '|bar'),
-            array('foo.class', new Token(Token::TYPE_IDENTIFIER, 'foo', 0), '.class'),
-            array('foo[attr]', new Token(Token::TYPE_IDENTIFIER, 'foo', 0), '[attr]'),
-            array('foo bar', new Token(Token::TYPE_IDENTIFIER, 'foo', 0), ' bar'),
-        );
-    }
-
-    public function getDontHandleValueTestData()
-    {
-        return array(
-            array('>'),
-            array('+'),
-            array(' '),
-            array('*|foo'),
-            array('/* comment */'),
-        );
-    }
-
-    protected function generateHandler()
-    {
-        $patterns = new TokenizerPatterns();
-
-        return new IdentifierHandler($patterns, new TokenizerEscaping($patterns));
-    }
-}
diff --git a/vendor/symfony/css-selector/Tests/Parser/Handler/NumberHandlerTest.php b/vendor/symfony/css-selector/Tests/Parser/Handler/NumberHandlerTest.php
deleted file mode 100644
index 675fd05..0000000
--- a/vendor/symfony/css-selector/Tests/Parser/Handler/NumberHandlerTest.php
+++ /dev/null
@@ -1,50 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\CssSelector\Tests\Parser\Handler;
-
-use Symfony\Component\CssSelector\Parser\Handler\NumberHandler;
-use Symfony\Component\CssSelector\Parser\Token;
-use Symfony\Component\CssSelector\Parser\Tokenizer\TokenizerPatterns;
-
-class NumberHandlerTest extends AbstractHandlerTest
-{
-    public function getHandleValueTestData()
-    {
-        return array(
-            array('12', new Token(Token::TYPE_NUMBER, '12', 0), ''),
-            array('12.34', new Token(Token::TYPE_NUMBER, '12.34', 0), ''),
-            array('+12.34', new Token(Token::TYPE_NUMBER, '+12.34', 0), ''),
-            array('-12.34', new Token(Token::TYPE_NUMBER, '-12.34', 0), ''),
-
-            array('12 arg', new Token(Token::TYPE_NUMBER, '12', 0), ' arg'),
-            array('12]', new Token(Token::TYPE_NUMBER, '12', 0), ']'),
-        );
-    }
-
-    public function getDontHandleValueTestData()
-    {
-        return array(
-            array('hello'),
-            array('>'),
-            array('+'),
-            array(' '),
-            array('/* comment */'),
-        );
-    }
-
-    protected function generateHandler()
-    {
-        $patterns = new TokenizerPatterns();
-
-        return new NumberHandler($patterns);
-    }
-}
diff --git a/vendor/symfony/css-selector/Tests/Parser/Handler/StringHandlerTest.php b/vendor/symfony/css-selector/Tests/Parser/Handler/StringHandlerTest.php
deleted file mode 100644
index 89eff8b..0000000
--- a/vendor/symfony/css-selector/Tests/Parser/Handler/StringHandlerTest.php
+++ /dev/null
@@ -1,50 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\CssSelector\Tests\Parser\Handler;
-
-use Symfony\Component\CssSelector\Parser\Handler\StringHandler;
-use Symfony\Component\CssSelector\Parser\Token;
-use Symfony\Component\CssSelector\Parser\Tokenizer\TokenizerPatterns;
-use Symfony\Component\CssSelector\Parser\Tokenizer\TokenizerEscaping;
-
-class StringHandlerTest extends AbstractHandlerTest
-{
-    public function getHandleValueTestData()
-    {
-        return array(
-            array('"hello"', new Token(Token::TYPE_STRING, 'hello', 1), ''),
-            array('"1"', new Token(Token::TYPE_STRING, '1', 1), ''),
-            array('" "', new Token(Token::TYPE_STRING, ' ', 1), ''),
-            array('""', new Token(Token::TYPE_STRING, '', 1), ''),
-            array("'hello'", new Token(Token::TYPE_STRING, 'hello', 1), ''),
-
-            array("'foo'bar", new Token(Token::TYPE_STRING, 'foo', 1), 'bar'),
-        );
-    }
-
-    public function getDontHandleValueTestData()
-    {
-        return array(
-            array('hello'),
-            array('>'),
-            array('1'),
-            array(' '),
-        );
-    }
-
-    protected function generateHandler()
-    {
-        $patterns = new TokenizerPatterns();
-
-        return new StringHandler($patterns, new TokenizerEscaping($patterns));
-    }
-}
diff --git a/vendor/symfony/css-selector/Tests/Parser/Handler/WhitespaceHandlerTest.php b/vendor/symfony/css-selector/Tests/Parser/Handler/WhitespaceHandlerTest.php
deleted file mode 100644
index f5f9e71..0000000
--- a/vendor/symfony/css-selector/Tests/Parser/Handler/WhitespaceHandlerTest.php
+++ /dev/null
@@ -1,44 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\CssSelector\Tests\Parser\Handler;
-
-use Symfony\Component\CssSelector\Parser\Handler\WhitespaceHandler;
-use Symfony\Component\CssSelector\Parser\Token;
-
-class WhitespaceHandlerTest extends AbstractHandlerTest
-{
-    public function getHandleValueTestData()
-    {
-        return array(
-            array(' ', new Token(Token::TYPE_WHITESPACE, ' ', 0), ''),
-            array("\n", new Token(Token::TYPE_WHITESPACE, "\n", 0), ''),
-            array("\t", new Token(Token::TYPE_WHITESPACE, "\t", 0), ''),
-
-            array(' foo', new Token(Token::TYPE_WHITESPACE, ' ', 0), 'foo'),
-            array(' .foo', new Token(Token::TYPE_WHITESPACE, ' ', 0), '.foo'),
-        );
-    }
-
-    public function getDontHandleValueTestData()
-    {
-        return array(
-            array('>'),
-            array('1'),
-            array('a'),
-        );
-    }
-
-    protected function generateHandler()
-    {
-        return new WhitespaceHandler();
-    }
-}
diff --git a/vendor/symfony/css-selector/Tests/Parser/ParserTest.php b/vendor/symfony/css-selector/Tests/Parser/ParserTest.php
deleted file mode 100644
index 0454d9f..0000000
--- a/vendor/symfony/css-selector/Tests/Parser/ParserTest.php
+++ /dev/null
@@ -1,248 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\CssSelector\Tests\Parser;
-
-use Symfony\Component\CssSelector\Exception\SyntaxErrorException;
-use Symfony\Component\CssSelector\Node\FunctionNode;
-use Symfony\Component\CssSelector\Node\SelectorNode;
-use Symfony\Component\CssSelector\Parser\Parser;
-use Symfony\Component\CssSelector\Parser\Token;
-
-class ParserTest extends \PHPUnit_Framework_TestCase
-{
-    /** @dataProvider getParserTestData */
-    public function testParser($source, $representation)
-    {
-        $parser = new Parser();
-
-        $this->assertEquals($representation, array_map(function (SelectorNode $node) {
-            return (string) $node->getTree();
-        }, $parser->parse($source)));
-    }
-
-    /** @dataProvider getParserExceptionTestData */
-    public function testParserException($source, $message)
-    {
-        $parser = new Parser();
-
-        try {
-            $parser->parse($source);
-            $this->fail('Parser should throw a SyntaxErrorException.');
-        } catch (SyntaxErrorException $e) {
-            $this->assertEquals($message, $e->getMessage());
-        }
-    }
-
-    /** @dataProvider getPseudoElementsTestData */
-    public function testPseudoElements($source, $element, $pseudo)
-    {
-        $parser = new Parser();
-        $selectors = $parser->parse($source);
-        $this->assertCount(1, $selectors);
-
-        /** @var SelectorNode $selector */
-        $selector = $selectors[0];
-        $this->assertEquals($element, (string) $selector->getTree());
-        $this->assertEquals($pseudo, (string) $selector->getPseudoElement());
-    }
-
-    /** @dataProvider getSpecificityTestData */
-    public function testSpecificity($source, $value)
-    {
-        $parser = new Parser();
-        $selectors = $parser->parse($source);
-        $this->assertCount(1, $selectors);
-
-        /** @var SelectorNode $selector */
-        $selector = $selectors[0];
-        $this->assertEquals($value, $selector->getSpecificity()->getValue());
-    }
-
-    /** @dataProvider getParseSeriesTestData */
-    public function testParseSeries($series, $a, $b)
-    {
-        $parser = new Parser();
-        $selectors = $parser->parse(sprintf(':nth-child(%s)', $series));
-        $this->assertCount(1, $selectors);
-
-        /** @var FunctionNode $function */
-        $function = $selectors[0]->getTree();
-        $this->assertEquals(array($a, $b), Parser::parseSeries($function->getArguments()));
-    }
-
-    /** @dataProvider getParseSeriesExceptionTestData */
-    public function testParseSeriesException($series)
-    {
-        $parser = new Parser();
-        $selectors = $parser->parse(sprintf(':nth-child(%s)', $series));
-        $this->assertCount(1, $selectors);
-
-        /** @var FunctionNode $function */
-        $function = $selectors[0]->getTree();
-        $this->setExpectedException('Symfony\Component\CssSelector\Exception\SyntaxErrorException');
-        Parser::parseSeries($function->getArguments());
-    }
-
-    public function getParserTestData()
-    {
-        return array(
-            array('*', array('Element[*]')),
-            array('*|*', array('Element[*]')),
-            array('*|foo', array('Element[foo]')),
-            array('foo|*', array('Element[foo|*]')),
-            array('foo|bar', array('Element[foo|bar]')),
-            array('#foo#bar', array('Hash[Hash[Element[*]#foo]#bar]')),
-            array('div>.foo', array('CombinedSelector[Element[div] > Class[Element[*].foo]]')),
-            array('div> .foo', array('CombinedSelector[Element[div] > Class[Element[*].foo]]')),
-            array('div >.foo', array('CombinedSelector[Element[div] > Class[Element[*].foo]]')),
-            array('div > .foo', array('CombinedSelector[Element[div] > Class[Element[*].foo]]')),
-            array("div \n>  \t \t .foo", array('CombinedSelector[Element[div] > Class[Element[*].foo]]')),
-            array('td.foo,.bar', array('Class[Element[td].foo]', 'Class[Element[*].bar]')),
-            array('td.foo, .bar', array('Class[Element[td].foo]', 'Class[Element[*].bar]')),
-            array("td.foo\t\r\n\f ,\t\r\n\f .bar", array('Class[Element[td].foo]', 'Class[Element[*].bar]')),
-            array('td.foo,.bar', array('Class[Element[td].foo]', 'Class[Element[*].bar]')),
-            array('td.foo, .bar', array('Class[Element[td].foo]', 'Class[Element[*].bar]')),
-            array("td.foo\t\r\n\f ,\t\r\n\f .bar", array('Class[Element[td].foo]', 'Class[Element[*].bar]')),
-            array('div, td.foo, div.bar span', array('Element[div]', 'Class[Element[td].foo]', 'CombinedSelector[Class[Element[div].bar] <followed> Element[span]]')),
-            array('div > p', array('CombinedSelector[Element[div] > Element[p]]')),
-            array('td:first', array('Pseudo[Element[td]:first]')),
-            array('td :first', array('CombinedSelector[Element[td] <followed> Pseudo[Element[*]:first]]')),
-            array('a[name]', array('Attribute[Element[a][name]]')),
-            array("a[ name\t]", array('Attribute[Element[a][name]]')),
-            array('a [name]', array('CombinedSelector[Element[a] <followed> Attribute[Element[*][name]]]')),
-            array('a[rel="include"]', array("Attribute[Element[a][rel = 'include']]")),
-            array('a[rel = include]', array("Attribute[Element[a][rel = 'include']]")),
-            array("a[hreflang |= 'en']", array("Attribute[Element[a][hreflang |= 'en']]")),
-            array('a[hreflang|=en]', array("Attribute[Element[a][hreflang |= 'en']]")),
-            array('div:nth-child(10)', array("Function[Element[div]:nth-child(['10'])]")),
-            array(':nth-child(2n+2)', array("Function[Element[*]:nth-child(['2', 'n', '+2'])]")),
-            array('div:nth-of-type(10)', array("Function[Element[div]:nth-of-type(['10'])]")),
-            array('div div:nth-of-type(10) .aclass', array("CombinedSelector[CombinedSelector[Element[div] <followed> Function[Element[div]:nth-of-type(['10'])]] <followed> Class[Element[*].aclass]]")),
-            array('label:only', array('Pseudo[Element[label]:only]')),
-            array('a:lang(fr)', array("Function[Element[a]:lang(['fr'])]")),
-            array('div:contains("foo")', array("Function[Element[div]:contains(['foo'])]")),
-            array('div#foobar', array('Hash[Element[div]#foobar]')),
-            array('div:not(div.foo)', array('Negation[Element[div]:not(Class[Element[div].foo])]')),
-            array('td ~ th', array('CombinedSelector[Element[td] ~ Element[th]]')),
-            array('.foo[data-bar][data-baz=0]', array("Attribute[Attribute[Class[Element[*].foo][data-bar]][data-baz = '0']]")),
-        );
-    }
-
-    public function getParserExceptionTestData()
-    {
-        return array(
-            array('attributes(href)/html/body/a', SyntaxErrorException::unexpectedToken('selector', new Token(Token::TYPE_DELIMITER, '(', 10))->getMessage()),
-            array('attributes(href)', SyntaxErrorException::unexpectedToken('selector', new Token(Token::TYPE_DELIMITER, '(', 10))->getMessage()),
-            array('html/body/a', SyntaxErrorException::unexpectedToken('selector', new Token(Token::TYPE_DELIMITER, '/', 4))->getMessage()),
-            array(' ', SyntaxErrorException::unexpectedToken('selector', new Token(Token::TYPE_FILE_END, '', 1))->getMessage()),
-            array('div, ', SyntaxErrorException::unexpectedToken('selector', new Token(Token::TYPE_FILE_END, '', 5))->getMessage()),
-            array(' , div', SyntaxErrorException::unexpectedToken('selector', new Token(Token::TYPE_DELIMITER, ',', 1))->getMessage()),
-            array('p, , div', SyntaxErrorException::unexpectedToken('selector', new Token(Token::TYPE_DELIMITER, ',', 3))->getMessage()),
-            array('div > ', SyntaxErrorException::unexpectedToken('selector', new Token(Token::TYPE_FILE_END, '', 6))->getMessage()),
-            array('  > div', SyntaxErrorException::unexpectedToken('selector', new Token(Token::TYPE_DELIMITER, '>', 2))->getMessage()),
-            array('foo|#bar', SyntaxErrorException::unexpectedToken('identifier or "*"', new Token(Token::TYPE_HASH, 'bar', 4))->getMessage()),
-            array('#.foo', SyntaxErrorException::unexpectedToken('selector', new Token(Token::TYPE_DELIMITER, '#', 0))->getMessage()),
-            array('.#foo', SyntaxErrorException::unexpectedToken('identifier', new Token(Token::TYPE_HASH, 'foo', 1))->getMessage()),
-            array(':#foo', SyntaxErrorException::unexpectedToken('identifier', new Token(Token::TYPE_HASH, 'foo', 1))->getMessage()),
-            array('[*]', SyntaxErrorException::unexpectedToken('"|"', new Token(Token::TYPE_DELIMITER, ']', 2))->getMessage()),
-            array('[foo|]', SyntaxErrorException::unexpectedToken('identifier', new Token(Token::TYPE_DELIMITER, ']', 5))->getMessage()),
-            array('[#]', SyntaxErrorException::unexpectedToken('identifier or "*"', new Token(Token::TYPE_DELIMITER, '#', 1))->getMessage()),
-            array('[foo=#]', SyntaxErrorException::unexpectedToken('string or identifier', new Token(Token::TYPE_DELIMITER, '#', 5))->getMessage()),
-            array(':nth-child()', SyntaxErrorException::unexpectedToken('at least one argument', new Token(Token::TYPE_DELIMITER, ')', 11))->getMessage()),
-            array('[href]a', SyntaxErrorException::unexpectedToken('selector', new Token(Token::TYPE_IDENTIFIER, 'a', 6))->getMessage()),
-            array('[rel:stylesheet]', SyntaxErrorException::unexpectedToken('operator', new Token(Token::TYPE_DELIMITER, ':', 4))->getMessage()),
-            array('[rel=stylesheet', SyntaxErrorException::unexpectedToken('"]"', new Token(Token::TYPE_FILE_END, '', 15))->getMessage()),
-            array(':lang(fr', SyntaxErrorException::unexpectedToken('an argument', new Token(Token::TYPE_FILE_END, '', 8))->getMessage()),
-            array(':contains("foo', SyntaxErrorException::unclosedString(10)->getMessage()),
-            array('foo!', SyntaxErrorException::unexpectedToken('selector', new Token(Token::TYPE_DELIMITER, '!', 3))->getMessage()),
-        );
-    }
-
-    public function getPseudoElementsTestData()
-    {
-        return array(
-            array('foo', 'Element[foo]', ''),
-            array('*', 'Element[*]', ''),
-            array(':empty', 'Pseudo[Element[*]:empty]', ''),
-            array(':BEfore', 'Element[*]', 'before'),
-            array(':aftER', 'Element[*]', 'after'),
-            array(':First-Line', 'Element[*]', 'first-line'),
-            array(':First-Letter', 'Element[*]', 'first-letter'),
-            array('::befoRE', 'Element[*]', 'before'),
-            array('::AFter', 'Element[*]', 'after'),
-            array('::firsT-linE', 'Element[*]', 'first-line'),
-            array('::firsT-letteR', 'Element[*]', 'first-letter'),
-            array('::Selection', 'Element[*]', 'selection'),
-            array('foo:after', 'Element[foo]', 'after'),
-            array('foo::selection', 'Element[foo]', 'selection'),
-            array('lorem#ipsum ~ a#b.c[href]:empty::selection', 'CombinedSelector[Hash[Element[lorem]#ipsum] ~ Pseudo[Attribute[Class[Hash[Element[a]#b].c][href]]:empty]]', 'selection'),
-        );
-    }
-
-    public function getSpecificityTestData()
-    {
-        return array(
-            array('*', 0),
-            array(' foo', 1),
-            array(':empty ', 10),
-            array(':before', 1),
-            array('*:before', 1),
-            array(':nth-child(2)', 10),
-            array('.bar', 10),
-            array('[baz]', 10),
-            array('[baz="4"]', 10),
-            array('[baz^="4"]', 10),
-            array('#lipsum', 100),
-            array(':not(*)', 0),
-            array(':not(foo)', 1),
-            array(':not(.foo)', 10),
-            array(':not([foo])', 10),
-            array(':not(:empty)', 10),
-            array(':not(#foo)', 100),
-            array('foo:empty', 11),
-            array('foo:before', 2),
-            array('foo::before', 2),
-            array('foo:empty::before', 12),
-            array('#lorem + foo#ipsum:first-child > bar:first-line', 213),
-        );
-    }
-
-    public function getParseSeriesTestData()
-    {
-        return array(
-            array('1n+3', 1, 3),
-            array('1n +3', 1, 3),
-            array('1n + 3', 1, 3),
-            array('1n+ 3', 1, 3),
-            array('1n-3', 1, -3),
-            array('1n -3', 1, -3),
-            array('1n - 3', 1, -3),
-            array('1n- 3', 1, -3),
-            array('n-5', 1, -5),
-            array('odd', 2, 1),
-            array('even', 2, 0),
-            array('3n', 3, 0),
-            array('n', 1, 0),
-            array('+n', 1, 0),
-            array('-n', -1, 0),
-            array('5', 0, 5),
-        );
-    }
-
-    public function getParseSeriesExceptionTestData()
-    {
-        return array(
-            array('foo'),
-            array('n+'),
-        );
-    }
-}
diff --git a/vendor/symfony/css-selector/Tests/Parser/ReaderTest.php b/vendor/symfony/css-selector/Tests/Parser/ReaderTest.php
deleted file mode 100644
index 03c054e..0000000
--- a/vendor/symfony/css-selector/Tests/Parser/ReaderTest.php
+++ /dev/null
@@ -1,101 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\CssSelector\Tests\Parser;
-
-use Symfony\Component\CssSelector\Parser\Reader;
-
-class ReaderTest extends \PHPUnit_Framework_TestCase
-{
-    public function testIsEOF()
-    {
-        $reader = new Reader('');
-        $this->assertTrue($reader->isEOF());
-
-        $reader = new Reader('hello');
-        $this->assertFalse($reader->isEOF());
-
-        $this->assignPosition($reader, 2);
-        $this->assertFalse($reader->isEOF());
-
-        $this->assignPosition($reader, 5);
-        $this->assertTrue($reader->isEOF());
-    }
-
-    public function testGetRemainingLength()
-    {
-        $reader = new Reader('hello');
-        $this->assertEquals(5, $reader->getRemainingLength());
-
-        $this->assignPosition($reader, 2);
-        $this->assertEquals(3, $reader->getRemainingLength());
-
-        $this->assignPosition($reader, 5);
-        $this->assertEquals(0, $reader->getRemainingLength());
-    }
-
-    public function testGetSubstring()
-    {
-        $reader = new Reader('hello');
-        $this->assertEquals('he', $reader->getSubstring(2));
-        $this->assertEquals('el', $reader->getSubstring(2, 1));
-
-        $this->assignPosition($reader, 2);
-        $this->assertEquals('ll', $reader->getSubstring(2));
-        $this->assertEquals('lo', $reader->getSubstring(2, 1));
-    }
-
-    public function testGetOffset()
-    {
-        $reader = new Reader('hello');
-        $this->assertEquals(2, $reader->getOffset('ll'));
-        $this->assertFalse($reader->getOffset('w'));
-
-        $this->assignPosition($reader, 2);
-        $this->assertEquals(0, $reader->getOffset('ll'));
-        $this->assertFalse($reader->getOffset('he'));
-    }
-
-    public function testFindPattern()
-    {
-        $reader = new Reader('hello');
-
-        $this->assertFalse($reader->findPattern('/world/'));
-        $this->assertEquals(array('hello', 'h'), $reader->findPattern('/^([a-z]).*/'));
-
-        $this->assignPosition($reader, 2);
-        $this->assertFalse($reader->findPattern('/^h.*/'));
-        $this->assertEquals(array('llo'), $reader->findPattern('/^llo$/'));
-    }
-
-    public function testMoveForward()
-    {
-        $reader = new Reader('hello');
-        $this->assertEquals(0, $reader->getPosition());
-
-        $reader->moveForward(2);
-        $this->assertEquals(2, $reader->getPosition());
-    }
-
-    public function testToEnd()
-    {
-        $reader = new Reader('hello');
-        $reader->moveToEnd();
-        $this->assertTrue($reader->isEOF());
-    }
-
-    private function assignPosition(Reader $reader, $value)
-    {
-        $position = new \ReflectionProperty($reader, 'position');
-        $position->setAccessible(true);
-        $position->setValue($reader, $value);
-    }
-}
diff --git a/vendor/symfony/css-selector/Tests/Parser/Shortcut/ClassParserTest.php b/vendor/symfony/css-selector/Tests/Parser/Shortcut/ClassParserTest.php
deleted file mode 100644
index 6efdd67..0000000
--- a/vendor/symfony/css-selector/Tests/Parser/Shortcut/ClassParserTest.php
+++ /dev/null
@@ -1,44 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\CssSelector\Tests\Parser\Shortcut;
-
-use Symfony\Component\CssSelector\Node\SelectorNode;
-use Symfony\Component\CssSelector\Parser\Shortcut\ClassParser;
-
-/**
- * @author Jean-François Simon <jeanfrancois.simon@sensiolabs.com>
- */
-class ClassParserTest extends \PHPUnit_Framework_TestCase
-{
-    /** @dataProvider getParseTestData */
-    public function testParse($source, $representation)
-    {
-        $parser = new ClassParser();
-        $selectors = $parser->parse($source);
-        $this->assertCount(1, $selectors);
-
-        /** @var SelectorNode $selector */
-        $selector = $selectors[0];
-        $this->assertEquals($representation, (string) $selector->getTree());
-    }
-
-    public function getParseTestData()
-    {
-        return array(
-            array('.testclass', 'Class[Element[*].testclass]'),
-            array('testel.testclass', 'Class[Element[testel].testclass]'),
-            array('testns|.testclass', 'Class[Element[testns|*].testclass]'),
-            array('testns|*.testclass', 'Class[Element[testns|*].testclass]'),
-            array('testns|testel.testclass', 'Class[Element[testns|testel].testclass]'),
-        );
-    }
-}
diff --git a/vendor/symfony/css-selector/Tests/Parser/Shortcut/ElementParserTest.php b/vendor/symfony/css-selector/Tests/Parser/Shortcut/ElementParserTest.php
deleted file mode 100644
index b30b5ee..0000000
--- a/vendor/symfony/css-selector/Tests/Parser/Shortcut/ElementParserTest.php
+++ /dev/null
@@ -1,43 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\CssSelector\Tests\Parser\Shortcut;
-
-use Symfony\Component\CssSelector\Node\SelectorNode;
-use Symfony\Component\CssSelector\Parser\Shortcut\ElementParser;
-
-/**
- * @author Jean-François Simon <jeanfrancois.simon@sensiolabs.com>
- */
-class ElementParserTest extends \PHPUnit_Framework_TestCase
-{
-    /** @dataProvider getParseTestData */
-    public function testParse($source, $representation)
-    {
-        $parser = new ElementParser();
-        $selectors = $parser->parse($source);
-        $this->assertCount(1, $selectors);
-
-        /** @var SelectorNode $selector */
-        $selector = $selectors[0];
-        $this->assertEquals($representation, (string) $selector->getTree());
-    }
-
-    public function getParseTestData()
-    {
-        return array(
-            array('*', 'Element[*]'),
-            array('testel', 'Element[testel]'),
-            array('testns|*', 'Element[testns|*]'),
-            array('testns|testel', 'Element[testns|testel]'),
-        );
-    }
-}
diff --git a/vendor/symfony/css-selector/Tests/Parser/Shortcut/EmptyStringParserTest.php b/vendor/symfony/css-selector/Tests/Parser/Shortcut/EmptyStringParserTest.php
deleted file mode 100644
index b7c3539..0000000
--- a/vendor/symfony/css-selector/Tests/Parser/Shortcut/EmptyStringParserTest.php
+++ /dev/null
@@ -1,35 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\CssSelector\Tests\Parser\Shortcut;
-
-use Symfony\Component\CssSelector\Node\SelectorNode;
-use Symfony\Component\CssSelector\Parser\Shortcut\EmptyStringParser;
-
-/**
- * @author Jean-François Simon <jeanfrancois.simon@sensiolabs.com>
- */
-class EmptyStringParserTest extends \PHPUnit_Framework_TestCase
-{
-    public function testParse()
-    {
-        $parser = new EmptyStringParser();
-        $selectors = $parser->parse('');
-        $this->assertCount(1, $selectors);
-
-        /** @var SelectorNode $selector */
-        $selector = $selectors[0];
-        $this->assertEquals('Element[*]', (string) $selector->getTree());
-
-        $selectors = $parser->parse('this will produce an empty array');
-        $this->assertCount(0, $selectors);
-    }
-}
diff --git a/vendor/symfony/css-selector/Tests/Parser/Shortcut/HashParserTest.php b/vendor/symfony/css-selector/Tests/Parser/Shortcut/HashParserTest.php
deleted file mode 100644
index d2ce891..0000000
--- a/vendor/symfony/css-selector/Tests/Parser/Shortcut/HashParserTest.php
+++ /dev/null
@@ -1,44 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\CssSelector\Tests\Parser\Shortcut;
-
-use Symfony\Component\CssSelector\Node\SelectorNode;
-use Symfony\Component\CssSelector\Parser\Shortcut\HashParser;
-
-/**
- * @author Jean-François Simon <jeanfrancois.simon@sensiolabs.com>
- */
-class HashParserTest extends \PHPUnit_Framework_TestCase
-{
-    /** @dataProvider getParseTestData */
-    public function testParse($source, $representation)
-    {
-        $parser = new HashParser();
-        $selectors = $parser->parse($source);
-        $this->assertCount(1, $selectors);
-
-        /** @var SelectorNode $selector */
-        $selector = $selectors[0];
-        $this->assertEquals($representation, (string) $selector->getTree());
-    }
-
-    public function getParseTestData()
-    {
-        return array(
-            array('#testid', 'Hash[Element[*]#testid]'),
-            array('testel#testid', 'Hash[Element[testel]#testid]'),
-            array('testns|#testid', 'Hash[Element[testns|*]#testid]'),
-            array('testns|*#testid', 'Hash[Element[testns|*]#testid]'),
-            array('testns|testel#testid', 'Hash[Element[testns|testel]#testid]'),
-        );
-    }
-}
diff --git a/vendor/symfony/css-selector/Tests/Parser/TokenStreamTest.php b/vendor/symfony/css-selector/Tests/Parser/TokenStreamTest.php
deleted file mode 100644
index 8f3253a..0000000
--- a/vendor/symfony/css-selector/Tests/Parser/TokenStreamTest.php
+++ /dev/null
@@ -1,95 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\CssSelector\Tests\Parser;
-
-use Symfony\Component\CssSelector\Parser\Token;
-use Symfony\Component\CssSelector\Parser\TokenStream;
-
-class TokenStreamTest extends \PHPUnit_Framework_TestCase
-{
-    public function testGetNext()
-    {
-        $stream = new TokenStream();
-        $stream->push($t1 = new Token(Token::TYPE_IDENTIFIER, 'h1', 0));
-        $stream->push($t2 = new Token(Token::TYPE_DELIMITER, '.', 2));
-        $stream->push($t3 = new Token(Token::TYPE_IDENTIFIER, 'title', 3));
-
-        $this->assertSame($t1, $stream->getNext());
-        $this->assertSame($t2, $stream->getNext());
-        $this->assertSame($t3, $stream->getNext());
-    }
-
-    public function testGetPeek()
-    {
-        $stream = new TokenStream();
-        $stream->push($t1 = new Token(Token::TYPE_IDENTIFIER, 'h1', 0));
-        $stream->push($t2 = new Token(Token::TYPE_DELIMITER, '.', 2));
-        $stream->push($t3 = new Token(Token::TYPE_IDENTIFIER, 'title', 3));
-
-        $this->assertSame($t1, $stream->getPeek());
-        $this->assertSame($t1, $stream->getNext());
-        $this->assertSame($t2, $stream->getPeek());
-        $this->assertSame($t2, $stream->getPeek());
-        $this->assertSame($t2, $stream->getNext());
-    }
-
-    public function testGetNextIdentifier()
-    {
-        $stream = new TokenStream();
-        $stream->push(new Token(Token::TYPE_IDENTIFIER, 'h1', 0));
-
-        $this->assertEquals('h1', $stream->getNextIdentifier());
-    }
-
-    public function testFailToGetNextIdentifier()
-    {
-        $this->setExpectedException('Symfony\Component\CssSelector\Exception\SyntaxErrorException');
-
-        $stream = new TokenStream();
-        $stream->push(new Token(Token::TYPE_DELIMITER, '.', 2));
-        $stream->getNextIdentifier();
-    }
-
-    public function testGetNextIdentifierOrStar()
-    {
-        $stream = new TokenStream();
-
-        $stream->push(new Token(Token::TYPE_IDENTIFIER, 'h1', 0));
-        $this->assertEquals('h1', $stream->getNextIdentifierOrStar());
-
-        $stream->push(new Token(Token::TYPE_DELIMITER, '*', 0));
-        $this->assertNull($stream->getNextIdentifierOrStar());
-    }
-
-    public function testFailToGetNextIdentifierOrStar()
-    {
-        $this->setExpectedException('Symfony\Component\CssSelector\Exception\SyntaxErrorException');
-
-        $stream = new TokenStream();
-        $stream->push(new Token(Token::TYPE_DELIMITER, '.', 2));
-        $stream->getNextIdentifierOrStar();
-    }
-
-    public function testSkipWhitespace()
-    {
-        $stream = new TokenStream();
-        $stream->push($t1 = new Token(Token::TYPE_IDENTIFIER, 'h1', 0));
-        $stream->push($t2 = new Token(Token::TYPE_WHITESPACE, ' ', 2));
-        $stream->push($t3 = new Token(Token::TYPE_IDENTIFIER, 'h1', 3));
-
-        $stream->skipWhitespace();
-        $this->assertSame($t1, $stream->getNext());
-
-        $stream->skipWhitespace();
-        $this->assertSame($t3, $stream->getNext());
-    }
-}
diff --git a/vendor/symfony/css-selector/Tests/XPath/Fixtures/ids.html b/vendor/symfony/css-selector/Tests/XPath/Fixtures/ids.html
deleted file mode 100644
index 5799fad..0000000
--- a/vendor/symfony/css-selector/Tests/XPath/Fixtures/ids.html
+++ /dev/null
@@ -1,48 +0,0 @@
-<html id="html"><head>
-  <link id="link-href" href="foo" />
-  <link id="link-nohref" />
-</head><body>
-<div id="outer-div">
- <a id="name-anchor" name="foo"></a>
- <a id="tag-anchor" rel="tag" href="http://localhost/foo">link</a>
- <a id="nofollow-anchor" rel="nofollow" href="https://example.org">
-    link</a>
- <ol id="first-ol" class="a b c">
-   <li id="first-li">content</li>
-   <li id="second-li" lang="En-us">
-     <div id="li-div">
-     </div>
-   </li>
-   <li id="third-li" class="ab c"></li>
-   <li id="fourth-li" class="ab
-c"></li>
-   <li id="fifth-li"></li>
-   <li id="sixth-li"></li>
-   <li id="seventh-li">  </li>
- </ol>
- <p id="paragraph">
-   <b id="p-b">hi</b> <em id="p-em">there</em>
-   <b id="p-b2">guy</b>
-   <input type="checkbox" id="checkbox-unchecked" />
-   <input type="checkbox" id="checkbox-disabled" disabled="" />
-   <input type="text" id="text-checked" checked="checked" />
-   <input type="hidden" />
-   <input type="hidden" disabled="disabled" />
-   <input type="checkbox" id="checkbox-checked" checked="checked" />
-   <input type="checkbox" id="checkbox-disabled-checked"
-          disabled="disabled" checked="checked" />
-   <fieldset id="fieldset" disabled="disabled">
-     <input type="checkbox" id="checkbox-fieldset-disabled" />
-     <input type="hidden" />
-   </fieldset>
- </p>
- <ol id="second-ol">
- </ol>
- <map name="dummymap">
-   <area shape="circle" coords="200,250,25" href="foo.html" id="area-href" />
-   <area shape="default" id="area-nohref" />
- </map>
-</div>
-<div id="foobar-div" foobar="ab bc
-cde"><span id="foobar-span"></span></div>
-</body></html>
diff --git a/vendor/symfony/css-selector/Tests/XPath/Fixtures/lang.xml b/vendor/symfony/css-selector/Tests/XPath/Fixtures/lang.xml
deleted file mode 100644
index 14f8dbe..0000000
--- a/vendor/symfony/css-selector/Tests/XPath/Fixtures/lang.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<test>
-  <a id="first" xml:lang="en">a</a>
-  <b id="second" xml:lang="en-US">b</b>
-  <c id="third" xml:lang="en-Nz">c</c>
-  <d id="fourth" xml:lang="En-us">d</d>
-  <e id="fifth" xml:lang="fr">e</e>
-  <f id="sixth" xml:lang="ru">f</f>
-  <g id="seventh" xml:lang="de">
-    <h id="eighth" xml:lang="zh"/>
-  </g>
-</test>
diff --git a/vendor/symfony/css-selector/Tests/XPath/Fixtures/shakespear.html b/vendor/symfony/css-selector/Tests/XPath/Fixtures/shakespear.html
deleted file mode 100644
index 15d1ad3..0000000
--- a/vendor/symfony/css-selector/Tests/XPath/Fixtures/shakespear.html
+++ /dev/null
@@ -1,308 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
-	"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en" debug="true">
-<head>
-	<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
-</head>
-<body>
-	<div id="test">
-	<div class="dialog">
-	<h2>As You Like It</h2>
-	<div id="playwright">
-	  by William Shakespeare
-	</div>
-	<div class="dialog scene thirdClass" id="scene1">
-	  <h3>ACT I, SCENE III. A room in the palace.</h3>
-	  <div class="dialog">
-	  <div class="direction">Enter CELIA and ROSALIND</div>
-	  </div>
-	  <div id="speech1" class="character">CELIA</div>
-	  <div class="dialog">
-	  <div id="scene1.3.1">Why, cousin! why, Rosalind! Cupid have mercy! not a word?</div>
-	  </div>
-	  <div id="speech2" class="character">ROSALIND</div>
-	  <div class="dialog">
-	  <div id="scene1.3.2">Not one to throw at a dog.</div>
-	  </div>
-	  <div id="speech3" class="character">CELIA</div>
-	  <div class="dialog">
-	  <div id="scene1.3.3">No, thy words are too precious to be cast away upon</div>
-	  <div id="scene1.3.4">curs; throw some of them at me; come, lame me with reasons.</div>
-	  </div>
-	  <div id="speech4" class="character">ROSALIND</div>
-	  <div id="speech5" class="character">CELIA</div>
-	  <div class="dialog">
-	  <div id="scene1.3.8">But is all this for your father?</div>
-	  </div>
-	  <div class="dialog">
-	  <div id="scene1.3.5">Then there were two cousins laid up; when the one</div>
-	  <div id="scene1.3.6">should be lamed with reasons and the other mad</div>
-	  <div id="scene1.3.7">without any.</div>
-	  </div>
-	  <div id="speech6" class="character">ROSALIND</div>
-	  <div class="dialog">
-	  <div id="scene1.3.9">No, some of it is for my child's father. O, how</div>
-	  <div id="scene1.3.10">full of briers is this working-day world!</div>
-	  </div>
-	  <div id="speech7" class="character">CELIA</div>
-	  <div class="dialog">
-	  <div id="scene1.3.11">They are but burs, cousin, thrown upon thee in</div>
-	  <div id="scene1.3.12">holiday foolery: if we walk not in the trodden</div>
-	  <div id="scene1.3.13">paths our very petticoats will catch them.</div>
-	  </div>
-	  <div id="speech8" class="character">ROSALIND</div>
-	  <div class="dialog">
-	  <div id="scene1.3.14">I could shake them off my coat: these burs are in my heart.</div>
-	  </div>
-	  <div id="speech9" class="character">CELIA</div>
-	  <div class="dialog">
-	  <div id="scene1.3.15">Hem them away.</div>
-	  </div>
-	  <div id="speech10" class="character">ROSALIND</div>
-	  <div class="dialog">
-	  <div id="scene1.3.16">I would try, if I could cry 'hem' and have him.</div>
-	  </div>
-	  <div id="speech11" class="character">CELIA</div>
-	  <div class="dialog">
-	  <div id="scene1.3.17">Come, come, wrestle with thy affections.</div>
-	  </div>
-	  <div id="speech12" class="character">ROSALIND</div>
-	  <div class="dialog">
-	  <div id="scene1.3.18">O, they take the part of a better wrestler than myself!</div>
-	  </div>
-	  <div id="speech13" class="character">CELIA</div>
-	  <div class="dialog">
-	  <div id="scene1.3.19">O, a good wish upon you! you will try in time, in</div>
-	  <div id="scene1.3.20">despite of a fall. But, turning these jests out of</div>
-	  <div id="scene1.3.21">service, let us talk in good earnest: is it</div>
-	  <div id="scene1.3.22">possible, on such a sudden, you should fall into so</div>
-	  <div id="scene1.3.23">strong a liking with old Sir Rowland's youngest son?</div>
-	  </div>
-	  <div id="speech14" class="character">ROSALIND</div>
-	  <div class="dialog">
-	  <div id="scene1.3.24">The duke my father loved his father dearly.</div>
-	  </div>
-	  <div id="speech15" class="character">CELIA</div>
-	  <div class="dialog">
-	  <div id="scene1.3.25">Doth it therefore ensue that you should love his son</div>
-	  <div id="scene1.3.26">dearly? By this kind of chase, I should hate him,</div>
-	  <div id="scene1.3.27">for my father hated his father dearly; yet I hate</div>
-	  <div id="scene1.3.28">not Orlando.</div>
-	  </div>
-	  <div id="speech16" class="character">ROSALIND</div>
-	  <div title="wtf" class="dialog">
-	  <div id="scene1.3.29">No, faith, hate him not, for my sake.</div>
-	  </div>
-	  <div id="speech17" class="character">CELIA</div>
-	  <div class="dialog">
-	  <div id="scene1.3.30">Why should I not? doth he not deserve well?</div>
-	  </div>
-	  <div id="speech18" class="character">ROSALIND</div>
-	  <div class="dialog">
-	  <div id="scene1.3.31">Let me love him for that, and do you love him</div>
-	  <div id="scene1.3.32">because I do. Look, here comes the duke.</div>
-	  </div>
-	  <div id="speech19" class="character">CELIA</div>
-	  <div class="dialog">
-	  <div id="scene1.3.33">With his eyes full of anger.</div>
-	  <div class="direction">Enter DUKE FREDERICK, with Lords</div>
-	  </div>
-	  <div id="speech20" class="character">DUKE FREDERICK</div>
-	  <div class="dialog">
-	  <div id="scene1.3.34">Mistress, dispatch you with your safest haste</div>
-	  <div id="scene1.3.35">And get you from our court.</div>
-	  </div>
-	  <div id="speech21" class="character">ROSALIND</div>
-	  <div class="dialog">
-	  <div id="scene1.3.36">Me, uncle?</div>
-	  </div>
-	  <div id="speech22" class="character">DUKE FREDERICK</div>
-	  <div class="dialog">
-	  <div id="scene1.3.37">You, cousin</div>
-	  <div id="scene1.3.38">Within these ten days if that thou be'st found</div>
-	  <div id="scene1.3.39">So near our public court as twenty miles,</div>
-	  <div id="scene1.3.40">Thou diest for it.</div>
-	  </div>
-	  <div id="speech23" class="character">ROSALIND</div>
-	  <div class="dialog">
-	  <div id="scene1.3.41">                  I do beseech your grace,</div>
-	  <div id="scene1.3.42">Let me the knowledge of my fault bear with me:</div>
-	  <div id="scene1.3.43">If with myself I hold intelligence</div>
-	  <div id="scene1.3.44">Or have acquaintance with mine own desires,</div>
-	  <div id="scene1.3.45">If that I do not dream or be not frantic,--</div>
-	  <div id="scene1.3.46">As I do trust I am not--then, dear uncle,</div>
-	  <div id="scene1.3.47">Never so much as in a thought unborn</div>
-	  <div id="scene1.3.48">Did I offend your highness.</div>
-	  </div>
-	  <div id="speech24" class="character">DUKE FREDERICK</div>
-	  <div class="dialog">
-	  <div id="scene1.3.49">Thus do all traitors:</div>
-	  <div id="scene1.3.50">If their purgation did consist in words,</div>
-	  <div id="scene1.3.51">They are as innocent as grace itself:</div>
-	  <div id="scene1.3.52">Let it suffice thee that I trust thee not.</div>
-	  </div>
-	  <div id="speech25" class="character">ROSALIND</div>
-	  <div class="dialog">
-	  <div id="scene1.3.53">Yet your mistrust cannot make me a traitor:</div>
-	  <div id="scene1.3.54">Tell me whereon the likelihood depends.</div>
-	  </div>
-	  <div id="speech26" class="character">DUKE FREDERICK</div>
-	  <div class="dialog">
-	  <div id="scene1.3.55">Thou art thy father's daughter; there's enough.</div>
-	  </div>
-	  <div id="speech27" class="character">ROSALIND</div>
-	  <div class="dialog">
-	  <div id="scene1.3.56">So was I when your highness took his dukedom;</div>
-	  <div id="scene1.3.57">So was I when your highness banish'd him:</div>
-	  <div id="scene1.3.58">Treason is not inherited, my lord;</div>
-	  <div id="scene1.3.59">Or, if we did derive it from our friends,</div>
-	  <div id="scene1.3.60">What's that to me? my father was no traitor:</div>
-	  <div id="scene1.3.61">Then, good my liege, mistake me not so much</div>
-	  <div id="scene1.3.62">To think my poverty is treacherous.</div>
-	  </div>
-	  <div id="speech28" class="character">CELIA</div>
-	  <div class="dialog">
-	  <div id="scene1.3.63">Dear sovereign, hear me speak.</div>
-	  </div>
-	  <div id="speech29" class="character">DUKE FREDERICK</div>
-	  <div class="dialog">
-	  <div id="scene1.3.64">Ay, Celia; we stay'd her for your sake,</div>
-	  <div id="scene1.3.65">Else had she with her father ranged along.</div>
-	  </div>
-	  <div id="speech30" class="character">CELIA</div>
-	  <div class="dialog">
-	  <div id="scene1.3.66">I did not then entreat to have her stay;</div>
-	  <div id="scene1.3.67">It was your pleasure and your own remorse:</div>
-	  <div id="scene1.3.68">I was too young that time to value her;</div>
-	  <div id="scene1.3.69">But now I know her: if she be a traitor,</div>
-	  <div id="scene1.3.70">Why so am I; we still have slept together,</div>
-	  <div id="scene1.3.71">Rose at an instant, learn'd, play'd, eat together,</div>
-	  <div id="scene1.3.72">And wheresoever we went, like Juno's swans,</div>
-	  <div id="scene1.3.73">Still we went coupled and inseparable.</div>
-	  </div>
-	  <div id="speech31" class="character">DUKE FREDERICK</div>
-	  <div class="dialog">
-	  <div id="scene1.3.74">She is too subtle for thee; and her smoothness,</div>
-	  <div id="scene1.3.75">Her very silence and her patience</div>
-	  <div id="scene1.3.76">Speak to the people, and they pity her.</div>
-	  <div id="scene1.3.77">Thou art a fool: she robs thee of thy name;</div>
-	  <div id="scene1.3.78">And thou wilt show more bright and seem more virtuous</div>
-	  <div id="scene1.3.79">When she is gone. Then open not thy lips:</div>
-	  <div id="scene1.3.80">Firm and irrevocable is my doom</div>
-	  <div id="scene1.3.81">Which I have pass'd upon her; she is banish'd.</div>
-	  </div>
-	  <div id="speech32" class="character">CELIA</div>
-	  <div class="dialog">
-	  <div id="scene1.3.82">Pronounce that sentence then on me, my liege:</div>
-	  <div id="scene1.3.83">I cannot live out of her company.</div>
-	  </div>
-	  <div id="speech33" class="character">DUKE FREDERICK</div>
-	  <div class="dialog">
-	  <div id="scene1.3.84">You are a fool. You, niece, provide yourself:</div>
-	  <div id="scene1.3.85">If you outstay the time, upon mine honour,</div>
-	  <div id="scene1.3.86">And in the greatness of my word, you die.</div>
-	  <div class="direction">Exeunt DUKE FREDERICK and Lords</div>
-	  </div>
-	  <div id="speech34" class="character">CELIA</div>
-	  <div class="dialog">
-	  <div id="scene1.3.87">O my poor Rosalind, whither wilt thou go?</div>
-	  <div id="scene1.3.88">Wilt thou change fathers? I will give thee mine.</div>
-	  <div id="scene1.3.89">I charge thee, be not thou more grieved than I am.</div>
-	  </div>
-	  <div id="speech35" class="character">ROSALIND</div>
-	  <div class="dialog">
-	  <div id="scene1.3.90">I have more cause.</div>
-	  </div>
-	  <div id="speech36" class="character">CELIA</div>
-	  <div class="dialog">
-	  <div id="scene1.3.91">                  Thou hast not, cousin;</div>
-	  <div id="scene1.3.92">Prithee be cheerful: know'st thou not, the duke</div>
-	  <div id="scene1.3.93">Hath banish'd me, his daughter?</div>
-	  </div>
-	  <div id="speech37" class="character">ROSALIND</div>
-	  <div class="dialog">
-	  <div id="scene1.3.94">That he hath not.</div>
-	  </div>
-	  <div id="speech38" class="character">CELIA</div>
-	  <div class="dialog">
-	  <div id="scene1.3.95">No, hath not? Rosalind lacks then the love</div>
-	  <div id="scene1.3.96">Which teacheth thee that thou and I am one:</div>
-	  <div id="scene1.3.97">Shall we be sunder'd? shall we part, sweet girl?</div>
-	  <div id="scene1.3.98">No: let my father seek another heir.</div>
-	  <div id="scene1.3.99">Therefore devise with me how we may fly,</div>
-	  <div id="scene1.3.100">Whither to go and what to bear with us;</div>
-	  <div id="scene1.3.101">And do not seek to take your change upon you,</div>
-	  <div id="scene1.3.102">To bear your griefs yourself and leave me out;</div>
-	  <div id="scene1.3.103">For, by this heaven, now at our sorrows pale,</div>
-	  <div id="scene1.3.104">Say what thou canst, I'll go along with thee.</div>
-	  </div>
-	  <div id="speech39" class="character">ROSALIND</div>
-	  <div class="dialog">
-	  <div id="scene1.3.105">Why, whither shall we go?</div>
-	  </div>
-	  <div id="speech40" class="character">CELIA</div>
-	  <div class="dialog">
-	  <div id="scene1.3.106">To seek my uncle in the forest of Arden.</div>
-	  </div>
-	  <div id="speech41" class="character">ROSALIND</div>
-	  <div class="dialog">
-	  <div id="scene1.3.107">Alas, what danger will it be to us,</div>
-	  <div id="scene1.3.108">Maids as we are, to travel forth so far!</div>
-	  <div id="scene1.3.109">Beauty provoketh thieves sooner than gold.</div>
-	  </div>
-	  <div id="speech42" class="character">CELIA</div>
-	  <div class="dialog">
-	  <div id="scene1.3.110">I'll put myself in poor and mean attire</div>
-	  <div id="scene1.3.111">And with a kind of umber smirch my face;</div>
-	  <div id="scene1.3.112">The like do you: so shall we pass along</div>
-	  <div id="scene1.3.113">And never stir assailants.</div>
-	  </div>
-	  <div id="speech43" class="character">ROSALIND</div>
-	  <div class="dialog">
-	  <div id="scene1.3.114">Were it not better,</div>
-	  <div id="scene1.3.115">Because that I am more than common tall,</div>
-	  <div id="scene1.3.116">That I did suit me all points like a man?</div>
-	  <div id="scene1.3.117">A gallant curtle-axe upon my thigh,</div>
-	  <div id="scene1.3.118">A boar-spear in my hand; and--in my heart</div>
-	  <div id="scene1.3.119">Lie there what hidden woman's fear there will--</div>
-	  <div id="scene1.3.120">We'll have a swashing and a martial outside,</div>
-	  <div id="scene1.3.121">As many other mannish cowards have</div>
-	  <div id="scene1.3.122">That do outface it with their semblances.</div>
-	  </div>
-	  <div id="speech44" class="character">CELIA</div>
-	  <div class="dialog">
-	  <div id="scene1.3.123">What shall I call thee when thou art a man?</div>
-	  </div>
-	  <div id="speech45" class="character">ROSALIND</div>
-	  <div class="dialog">
-	  <div id="scene1.3.124">I'll have no worse a name than Jove's own page;</div>
-	  <div id="scene1.3.125">And therefore look you call me Ganymede.</div>
-	  <div id="scene1.3.126">But what will you be call'd?</div>
-	  </div>
-	  <div id="speech46" class="character">CELIA</div>
-	  <div class="dialog">
-	  <div id="scene1.3.127">Something that hath a reference to my state</div>
-	  <div id="scene1.3.128">No longer Celia, but Aliena.</div>
-	  </div>
-	  <div id="speech47" class="character">ROSALIND</div>
-	  <div class="dialog">
-	  <div id="scene1.3.129">But, cousin, what if we assay'd to steal</div>
-	  <div id="scene1.3.130">The clownish fool out of your father's court?</div>
-	  <div id="scene1.3.131">Would he not be a comfort to our travel?</div>
-	  </div>
-	  <div id="speech48" class="character">CELIA</div>
-	  <div class="dialog">
-	  <div id="scene1.3.132">He'll go along o'er the wide world with me;</div>
-	  <div id="scene1.3.133">Leave me alone to woo him. Let's away,</div>
-	  <div id="scene1.3.134">And get our jewels and our wealth together,</div>
-	  <div id="scene1.3.135">Devise the fittest time and safest way</div>
-	  <div id="scene1.3.136">To hide us from pursuit that will be made</div>
-	  <div id="scene1.3.137">After my flight. Now go we in content</div>
-	  <div id="scene1.3.138">To liberty and not to banishment.</div>
-	  <div class="direction">Exeunt</div>
-	  </div>
-	</div>
-	</div>
-</div>
-</body>
-</html>
diff --git a/vendor/symfony/css-selector/Tests/XPath/TranslatorTest.php b/vendor/symfony/css-selector/Tests/XPath/TranslatorTest.php
deleted file mode 100644
index 143328f..0000000
--- a/vendor/symfony/css-selector/Tests/XPath/TranslatorTest.php
+++ /dev/null
@@ -1,324 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\CssSelector\Tests\XPath;
-
-use Symfony\Component\CssSelector\XPath\Extension\HtmlExtension;
-use Symfony\Component\CssSelector\XPath\Translator;
-
-class TranslatorTest extends \PHPUnit_Framework_TestCase
-{
-    /** @dataProvider getXpathLiteralTestData */
-    public function testXpathLiteral($value, $literal)
-    {
-        $this->assertEquals($literal, Translator::getXpathLiteral($value));
-    }
-
-    /** @dataProvider getCssToXPathTestData */
-    public function testCssToXPath($css, $xpath)
-    {
-        $translator = new Translator();
-        $translator->registerExtension(new HtmlExtension($translator));
-        $this->assertEquals($xpath, $translator->cssToXPath($css, ''));
-    }
-
-    /** @dataProvider getXmlLangTestData */
-    public function testXmlLang($css, array $elementsId)
-    {
-        $translator = new Translator();
-        $document = new \SimpleXMLElement(file_get_contents(__DIR__.'/Fixtures/lang.xml'));
-        $elements = $document->xpath($translator->cssToXPath($css));
-        $this->assertEquals(count($elementsId), count($elements));
-        foreach ($elements as $element) {
-            $this->assertTrue(in_array($element->attributes()->id, $elementsId));
-        }
-    }
-
-    /** @dataProvider getHtmlIdsTestData */
-    public function testHtmlIds($css, array $elementsId)
-    {
-        $translator = new Translator();
-        $translator->registerExtension(new HtmlExtension($translator));
-        $document = new \DOMDocument();
-        $document->strictErrorChecking = false;
-        $internalErrors = libxml_use_internal_errors(true);
-        $document->loadHTMLFile(__DIR__.'/Fixtures/ids.html');
-        $document = simplexml_import_dom($document);
-        $elements = $document->xpath($translator->cssToXPath($css));
-        $this->assertCount(count($elementsId), $elementsId);
-        foreach ($elements as $element) {
-            if (null !== $element->attributes()->id) {
-                $this->assertTrue(in_array($element->attributes()->id, $elementsId));
-            }
-        }
-        libxml_clear_errors();
-        libxml_use_internal_errors($internalErrors);
-    }
-
-    /** @dataProvider getHtmlShakespearTestData */
-    public function testHtmlShakespear($css, $count)
-    {
-        $translator = new Translator();
-        $translator->registerExtension(new HtmlExtension($translator));
-        $document = new \DOMDocument();
-        $document->strictErrorChecking = false;
-        $document->loadHTMLFile(__DIR__.'/Fixtures/shakespear.html');
-        $document = simplexml_import_dom($document);
-        $bodies = $document->xpath('//body');
-        $elements = $bodies[0]->xpath($translator->cssToXPath($css));
-        $this->assertEquals($count, count($elements));
-    }
-
-    public function getXpathLiteralTestData()
-    {
-        return array(
-            array('foo', "'foo'"),
-            array("foo's bar", '"foo\'s bar"'),
-            array("foo's \"middle\" bar", 'concat(\'foo\', "\'", \'s "middle" bar\')'),
-            array("foo's 'middle' \"bar\"", 'concat(\'foo\', "\'", \'s \', "\'", \'middle\', "\'", \' "bar"\')'),
-        );
-    }
-
-    public function getCssToXPathTestData()
-    {
-        return array(
-            array('*', '*'),
-            array('e', 'e'),
-            array('*|e', 'e'),
-            array('e|f', 'e:f'),
-            array('e[foo]', 'e[@foo]'),
-            array('e[foo|bar]', 'e[@foo:bar]'),
-            array('e[foo="bar"]', "e[@foo = 'bar']"),
-            array('e[foo~="bar"]', "e[@foo and contains(concat(' ', normalize-space(@foo), ' '), ' bar ')]"),
-            array('e[foo^="bar"]', "e[@foo and starts-with(@foo, 'bar')]"),
-            array('e[foo$="bar"]', "e[@foo and substring(@foo, string-length(@foo)-2) = 'bar']"),
-            array('e[foo*="bar"]', "e[@foo and contains(@foo, 'bar')]"),
-            array('e[hreflang|="en"]', "e[@hreflang and (@hreflang = 'en' or starts-with(@hreflang, 'en-'))]"),
-            array('e:nth-child(1)', "*/*[name() = 'e' and (position() = 1)]"),
-            array('e:nth-last-child(1)', "*/*[name() = 'e' and (position() = last() - 0)]"),
-            array('e:nth-last-child(2n+2)', "*/*[name() = 'e' and (last() - position() - 1 >= 0 and (last() - position() - 1) mod 2 = 0)]"),
-            array('e:nth-of-type(1)', '*/e[position() = 1]'),
-            array('e:nth-last-of-type(1)', '*/e[position() = last() - 0]'),
-            array('div e:nth-last-of-type(1) .aclass', "div/descendant-or-self::*/e[position() = last() - 0]/descendant-or-self::*/*[@class and contains(concat(' ', normalize-space(@class), ' '), ' aclass ')]"),
-            array('e:first-child', "*/*[name() = 'e' and (position() = 1)]"),
-            array('e:last-child', "*/*[name() = 'e' and (position() = last())]"),
-            array('e:first-of-type', '*/e[position() = 1]'),
-            array('e:last-of-type', '*/e[position() = last()]'),
-            array('e:only-child', "*/*[name() = 'e' and (last() = 1)]"),
-            array('e:only-of-type', 'e[last() = 1]'),
-            array('e:empty', 'e[not(*) and not(string-length())]'),
-            array('e:EmPTY', 'e[not(*) and not(string-length())]'),
-            array('e:root', 'e[not(parent::*)]'),
-            array('e:hover', 'e[0]'),
-            array('e:contains("foo")', "e[contains(string(.), 'foo')]"),
-            array('e:ConTains(foo)', "e[contains(string(.), 'foo')]"),
-            array('e.warning', "e[@class and contains(concat(' ', normalize-space(@class), ' '), ' warning ')]"),
-            array('e#myid', "e[@id = 'myid']"),
-            array('e:not(:nth-child(odd))', 'e[not(position() - 1 >= 0 and (position() - 1) mod 2 = 0)]'),
-            array('e:nOT(*)', 'e[0]'),
-            array('e f', 'e/descendant-or-self::*/f'),
-            array('e > f', 'e/f'),
-            array('e + f', "e/following-sibling::*[name() = 'f' and (position() = 1)]"),
-            array('e ~ f', 'e/following-sibling::f'),
-            array('div#container p', "div[@id = 'container']/descendant-or-self::*/p"),
-        );
-    }
-
-    public function getXmlLangTestData()
-    {
-        return array(
-            array(':lang("EN")', array('first', 'second', 'third', 'fourth')),
-            array(':lang("en-us")', array('second', 'fourth')),
-            array(':lang(en-nz)', array('third')),
-            array(':lang(fr)', array('fifth')),
-            array(':lang(ru)', array('sixth')),
-            array(":lang('ZH')", array('eighth')),
-            array(':lang(de) :lang(zh)', array('eighth')),
-            array(':lang(en), :lang(zh)', array('first', 'second', 'third', 'fourth', 'eighth')),
-            array(':lang(es)', array()),
-        );
-    }
-
-    public function getHtmlIdsTestData()
-    {
-        return array(
-            array('div', array('outer-div', 'li-div', 'foobar-div')),
-            array('DIV', array('outer-div', 'li-div', 'foobar-div')),  // case-insensitive in HTML
-            array('div div', array('li-div')),
-            array('div, div div', array('outer-div', 'li-div', 'foobar-div')),
-            array('a[name]', array('name-anchor')),
-            array('a[NAme]', array('name-anchor')), // case-insensitive in HTML:
-            array('a[rel]', array('tag-anchor', 'nofollow-anchor')),
-            array('a[rel="tag"]', array('tag-anchor')),
-            array('a[href*="localhost"]', array('tag-anchor')),
-            array('a[href*=""]', array()),
-            array('a[href^="http"]', array('tag-anchor', 'nofollow-anchor')),
-            array('a[href^="http:"]', array('tag-anchor')),
-            array('a[href^=""]', array()),
-            array('a[href$="org"]', array('nofollow-anchor')),
-            array('a[href$=""]', array()),
-            array('div[foobar~="bc"]', array('foobar-div')),
-            array('div[foobar~="cde"]', array('foobar-div')),
-            array('[foobar~="ab bc"]', array('foobar-div')),
-            array('[foobar~=""]', array()),
-            array('[foobar~=" \t"]', array()),
-            array('div[foobar~="cd"]', array()),
-            array('*[lang|="En"]', array('second-li')),
-            array('[lang|="En-us"]', array('second-li')),
-            // Attribute values are case sensitive
-            array('*[lang|="en"]', array()),
-            array('[lang|="en-US"]', array()),
-            array('*[lang|="e"]', array()),
-            // ... :lang() is not.
-            array(':lang("EN")', array('second-li', 'li-div')),
-            array('*:lang(en-US)', array('second-li', 'li-div')),
-            array(':lang("e")', array()),
-            array('li:nth-child(3)', array('third-li')),
-            array('li:nth-child(10)', array()),
-            array('li:nth-child(2n)', array('second-li', 'fourth-li', 'sixth-li')),
-            array('li:nth-child(even)', array('second-li', 'fourth-li', 'sixth-li')),
-            array('li:nth-child(2n+0)', array('second-li', 'fourth-li', 'sixth-li')),
-            array('li:nth-child(+2n+1)', array('first-li', 'third-li', 'fifth-li', 'seventh-li')),
-            array('li:nth-child(odd)', array('first-li', 'third-li', 'fifth-li', 'seventh-li')),
-            array('li:nth-child(2n+4)', array('fourth-li', 'sixth-li')),
-            array('li:nth-child(3n+1)', array('first-li', 'fourth-li', 'seventh-li')),
-            array('li:nth-child(n)', array('first-li', 'second-li', 'third-li', 'fourth-li', 'fifth-li', 'sixth-li', 'seventh-li')),
-            array('li:nth-child(n-1)', array('first-li', 'second-li', 'third-li', 'fourth-li', 'fifth-li', 'sixth-li', 'seventh-li')),
-            array('li:nth-child(n+1)', array('first-li', 'second-li', 'third-li', 'fourth-li', 'fifth-li', 'sixth-li', 'seventh-li')),
-            array('li:nth-child(n+3)', array('third-li', 'fourth-li', 'fifth-li', 'sixth-li', 'seventh-li')),
-            array('li:nth-child(-n)', array()),
-            array('li:nth-child(-n-1)', array()),
-            array('li:nth-child(-n+1)', array('first-li')),
-            array('li:nth-child(-n+3)', array('first-li', 'second-li', 'third-li')),
-            array('li:nth-last-child(0)', array()),
-            array('li:nth-last-child(2n)', array('second-li', 'fourth-li', 'sixth-li')),
-            array('li:nth-last-child(even)', array('second-li', 'fourth-li', 'sixth-li')),
-            array('li:nth-last-child(2n+2)', array('second-li', 'fourth-li', 'sixth-li')),
-            array('li:nth-last-child(n)', array('first-li', 'second-li', 'third-li', 'fourth-li', 'fifth-li', 'sixth-li', 'seventh-li')),
-            array('li:nth-last-child(n-1)', array('first-li', 'second-li', 'third-li', 'fourth-li', 'fifth-li', 'sixth-li', 'seventh-li')),
-            array('li:nth-last-child(n-3)', array('first-li', 'second-li', 'third-li', 'fourth-li', 'fifth-li', 'sixth-li', 'seventh-li')),
-            array('li:nth-last-child(n+1)', array('first-li', 'second-li', 'third-li', 'fourth-li', 'fifth-li', 'sixth-li', 'seventh-li')),
-            array('li:nth-last-child(n+3)', array('first-li', 'second-li', 'third-li', 'fourth-li', 'fifth-li')),
-            array('li:nth-last-child(-n)', array()),
-            array('li:nth-last-child(-n-1)', array()),
-            array('li:nth-last-child(-n+1)', array('seventh-li')),
-            array('li:nth-last-child(-n+3)', array('fifth-li', 'sixth-li', 'seventh-li')),
-            array('ol:first-of-type', array('first-ol')),
-            array('ol:nth-child(1)', array('first-ol')),
-            array('ol:nth-of-type(2)', array('second-ol')),
-            array('ol:nth-last-of-type(1)', array('second-ol')),
-            array('span:only-child', array('foobar-span')),
-            array('li div:only-child', array('li-div')),
-            array('div *:only-child', array('li-div', 'foobar-span')),
-            array('p:only-of-type', array('paragraph')),
-            array('a:empty', array('name-anchor')),
-            array('a:EMpty', array('name-anchor')),
-            array('li:empty', array('third-li', 'fourth-li', 'fifth-li', 'sixth-li')),
-            array(':root', array('html')),
-            array('html:root', array('html')),
-            array('li:root', array()),
-            array('* :root', array()),
-            array('*:contains("link")', array('html', 'outer-div', 'tag-anchor', 'nofollow-anchor')),
-            array(':CONtains("link")', array('html', 'outer-div', 'tag-anchor', 'nofollow-anchor')),
-            array('*:contains("LInk")', array()),  // case sensitive
-            array('*:contains("e")', array('html', 'nil', 'outer-div', 'first-ol', 'first-li', 'paragraph', 'p-em')),
-            array('*:contains("E")', array()),  // case-sensitive
-            array('.a', array('first-ol')),
-            array('.b', array('first-ol')),
-            array('*.a', array('first-ol')),
-            array('ol.a', array('first-ol')),
-            array('.c', array('first-ol', 'third-li', 'fourth-li')),
-            array('*.c', array('first-ol', 'third-li', 'fourth-li')),
-            array('ol *.c', array('third-li', 'fourth-li')),
-            array('ol li.c', array('third-li', 'fourth-li')),
-            array('li ~ li.c', array('third-li', 'fourth-li')),
-            array('ol > li.c', array('third-li', 'fourth-li')),
-            array('#first-li', array('first-li')),
-            array('li#first-li', array('first-li')),
-            array('*#first-li', array('first-li')),
-            array('li div', array('li-div')),
-            array('li > div', array('li-div')),
-            array('div div', array('li-div')),
-            array('div > div', array()),
-            array('div>.c', array('first-ol')),
-            array('div > .c', array('first-ol')),
-            array('div + div', array('foobar-div')),
-            array('a ~ a', array('tag-anchor', 'nofollow-anchor')),
-            array('a[rel="tag"] ~ a', array('nofollow-anchor')),
-            array('ol#first-ol li:last-child', array('seventh-li')),
-            array('ol#first-ol *:last-child', array('li-div', 'seventh-li')),
-            array('#outer-div:first-child', array('outer-div')),
-            array('#outer-div :first-child', array('name-anchor', 'first-li', 'li-div', 'p-b', 'checkbox-fieldset-disabled', 'area-href')),
-            array('a[href]', array('tag-anchor', 'nofollow-anchor')),
-            array(':not(*)', array()),
-            array('a:not([href])', array('name-anchor')),
-            array('ol :Not(li[class])', array('first-li', 'second-li', 'li-div', 'fifth-li', 'sixth-li', 'seventh-li')),
-            // HTML-specific
-            array(':link', array('link-href', 'tag-anchor', 'nofollow-anchor', 'area-href')),
-            array(':visited', array()),
-            array(':enabled', array('link-href', 'tag-anchor', 'nofollow-anchor', 'checkbox-unchecked', 'text-checked', 'checkbox-checked', 'area-href')),
-            array(':disabled', array('checkbox-disabled', 'checkbox-disabled-checked', 'fieldset', 'checkbox-fieldset-disabled')),
-            array(':checked', array('checkbox-checked', 'checkbox-disabled-checked')),
-        );
-    }
-
-    public function getHtmlShakespearTestData()
-    {
-        return array(
-            array('*', 246),
-            array('div:contains(CELIA)', 26),
-            array('div:only-child', 22), // ?
-            array('div:nth-child(even)', 106),
-            array('div:nth-child(2n)', 106),
-            array('div:nth-child(odd)', 137),
-            array('div:nth-child(2n+1)', 137),
-            array('div:nth-child(n)', 243),
-            array('div:last-child', 53),
-            array('div:first-child', 51),
-            array('div > div', 242),
-            array('div + div', 190),
-            array('div ~ div', 190),
-            array('body', 1),
-            array('body div', 243),
-            array('div', 243),
-            array('div div', 242),
-            array('div div div', 241),
-            array('div, div, div', 243),
-            array('div, a, span', 243),
-            array('.dialog', 51),
-            array('div.dialog', 51),
-            array('div .dialog', 51),
-            array('div.character, div.dialog', 99),
-            array('div.direction.dialog', 0),
-            array('div.dialog.direction', 0),
-            array('div.dialog.scene', 1),
-            array('div.scene.scene', 1),
-            array('div.scene .scene', 0),
-            array('div.direction .dialog ', 0),
-            array('div .dialog .direction', 4),
-            array('div.dialog .dialog .direction', 4),
-            array('#speech5', 1),
-            array('div#speech5', 1),
-            array('div #speech5', 1),
-            array('div.scene div.dialog', 49),
-            array('div#scene1 div.dialog div', 142),
-            array('#scene1 #speech1', 1),
-            array('div[class]', 103),
-            array('div[class=dialog]', 50),
-            array('div[class^=dia]', 51),
-            array('div[class$=log]', 50),
-            array('div[class*=sce]', 1),
-            array('div[class|=dialog]', 50), // ? Seems right
-            array('div[class!=madeup]', 243), // ? Seems right
-            array('div[class~=dialog]', 51), // ? Seems right
-        );
-    }
-}
diff --git a/vendor/symfony/debug/Tests/DebugClassLoaderTest.php b/vendor/symfony/debug/Tests/DebugClassLoaderTest.php
deleted file mode 100644
index 1516dbe..0000000
--- a/vendor/symfony/debug/Tests/DebugClassLoaderTest.php
+++ /dev/null
@@ -1,296 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Debug\Tests;
-
-use Symfony\Component\Debug\DebugClassLoader;
-use Symfony\Component\Debug\ErrorHandler;
-use Symfony\Component\Debug\Exception\ContextErrorException;
-
-class DebugClassLoaderTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @var int Error reporting level before running tests.
-     */
-    private $errorReporting;
-
-    private $loader;
-
-    protected function setUp()
-    {
-        $this->errorReporting = error_reporting(E_ALL | E_STRICT);
-        $this->loader = new ClassLoader();
-        spl_autoload_register(array($this->loader, 'loadClass'), true, true);
-        DebugClassLoader::enable();
-    }
-
-    protected function tearDown()
-    {
-        DebugClassLoader::disable();
-        spl_autoload_unregister(array($this->loader, 'loadClass'));
-        error_reporting($this->errorReporting);
-    }
-
-    public function testIdempotence()
-    {
-        DebugClassLoader::enable();
-
-        $functions = spl_autoload_functions();
-        foreach ($functions as $function) {
-            if (is_array($function) && $function[0] instanceof DebugClassLoader) {
-                $reflClass = new \ReflectionClass($function[0]);
-                $reflProp = $reflClass->getProperty('classLoader');
-                $reflProp->setAccessible(true);
-
-                $this->assertNotInstanceOf('Symfony\Component\Debug\DebugClassLoader', $reflProp->getValue($function[0]));
-
-                return;
-            }
-        }
-
-        $this->fail('DebugClassLoader did not register');
-    }
-
-    public function testUnsilencing()
-    {
-        if (PHP_VERSION_ID >= 70000) {
-            $this->markTestSkipped('PHP7 throws exceptions, unsilencing is not required anymore.');
-        }
-        if (defined('HHVM_VERSION')) {
-            $this->markTestSkipped('HHVM is not handled in this test case.');
-        }
-
-        ob_start();
-
-        $this->iniSet('log_errors', 0);
-        $this->iniSet('display_errors', 1);
-
-        // See below: this will fail with parse error
-        // but this should not be @-silenced.
-        @class_exists(__NAMESPACE__.'\TestingUnsilencing', true);
-
-        $output = ob_get_clean();
-
-        $this->assertStringMatchesFormat('%aParse error%a', $output);
-    }
-
-    public function testStacking()
-    {
-        // the ContextErrorException must not be loaded to test the workaround
-        // for https://bugs.php.net/65322.
-        if (class_exists('Symfony\Component\Debug\Exception\ContextErrorException', false)) {
-            $this->markTestSkipped('The ContextErrorException class is already loaded.');
-        }
-        if (defined('HHVM_VERSION')) {
-            $this->markTestSkipped('HHVM is not handled in this test case.');
-        }
-
-        ErrorHandler::register();
-
-        try {
-            // Trigger autoloading + E_STRICT at compile time
-            // which in turn triggers $errorHandler->handle()
-            // that again triggers autoloading for ContextErrorException.
-            // Error stacking works around the bug above and everything is fine.
-
-            eval('
-                namespace '.__NAMESPACE__.';
-                class ChildTestingStacking extends TestingStacking { function foo($bar) {} }
-            ');
-            $this->fail('ContextErrorException expected');
-        } catch (\ErrorException $exception) {
-            // if an exception is thrown, the test passed
-            restore_error_handler();
-            restore_exception_handler();
-            $this->assertStringStartsWith(__FILE__, $exception->getFile());
-            if (PHP_VERSION_ID < 70000) {
-                $this->assertRegExp('/^Runtime Notice: Declaration/', $exception->getMessage());
-                $this->assertEquals(E_STRICT, $exception->getSeverity());
-            } else {
-                $this->assertRegExp('/^Warning: Declaration/', $exception->getMessage());
-                $this->assertEquals(E_WARNING, $exception->getSeverity());
-            }
-        } catch (\Exception $exception) {
-            restore_error_handler();
-            restore_exception_handler();
-
-            throw $exception;
-        }
-    }
-
-    /**
-     * @expectedException \RuntimeException
-     */
-    public function testNameCaseMismatch()
-    {
-        class_exists(__NAMESPACE__.'\TestingCaseMismatch', true);
-    }
-
-    /**
-     * @expectedException \RuntimeException
-     * @expectedExceptionMessage Case mismatch between class and real file names
-     */
-    public function testFileCaseMismatch()
-    {
-        if (!file_exists(__DIR__.'/Fixtures/CaseMismatch.php')) {
-            $this->markTestSkipped('Can only be run on case insensitive filesystems');
-        }
-
-        class_exists(__NAMESPACE__.'\Fixtures\CaseMismatch', true);
-    }
-
-    /**
-     * @expectedException \RuntimeException
-     */
-    public function testPsr4CaseMismatch()
-    {
-        class_exists(__NAMESPACE__.'\Fixtures\Psr4CaseMismatch', true);
-    }
-
-    public function testNotPsr0()
-    {
-        $this->assertTrue(class_exists(__NAMESPACE__.'\Fixtures\NotPSR0', true));
-    }
-
-    public function testNotPsr0Bis()
-    {
-        $this->assertTrue(class_exists(__NAMESPACE__.'\Fixtures\NotPSR0bis', true));
-    }
-
-    public function testClassAlias()
-    {
-        $this->assertTrue(class_exists(__NAMESPACE__.'\Fixtures\ClassAlias', true));
-    }
-
-    /**
-     * @dataProvider provideDeprecatedSuper
-     */
-    public function testDeprecatedSuper($class, $super, $type)
-    {
-        set_error_handler('var_dump', 0);
-        $e = error_reporting(0);
-        trigger_error('', E_USER_DEPRECATED);
-
-        class_exists('Test\\'.__NAMESPACE__.'\\'.$class, true);
-
-        error_reporting($e);
-        restore_error_handler();
-
-        $lastError = error_get_last();
-        unset($lastError['file'], $lastError['line']);
-
-        $xError = array(
-            'type' => E_USER_DEPRECATED,
-            'message' => 'The Test\Symfony\Component\Debug\Tests\\'.$class.' class '.$type.' Symfony\Component\Debug\Tests\Fixtures\\'.$super.' that is deprecated but this is a test deprecation notice.',
-        );
-
-        $this->assertSame($xError, $lastError);
-    }
-
-    public function provideDeprecatedSuper()
-    {
-        return array(
-            array('DeprecatedInterfaceClass', 'DeprecatedInterface', 'implements'),
-            array('DeprecatedParentClass', 'DeprecatedClass', 'extends'),
-        );
-    }
-
-    public function testDeprecatedSuperInSameNamespace()
-    {
-        set_error_handler('var_dump', 0);
-        $e = error_reporting(0);
-        trigger_error('', E_USER_NOTICE);
-
-        class_exists('Symfony\Bridge\Debug\Tests\Fixtures\ExtendsDeprecatedParent', true);
-
-        error_reporting($e);
-        restore_error_handler();
-
-        $lastError = error_get_last();
-        unset($lastError['file'], $lastError['line']);
-
-        $xError = array(
-            'type' => E_USER_NOTICE,
-            'message' => '',
-        );
-
-        $this->assertSame($xError, $lastError);
-    }
-
-    public function testReservedForPhp7()
-    {
-        if (PHP_VERSION_ID >= 70000) {
-            $this->markTestSkipped('PHP7 already prevents using reserved names.');
-        }
-
-        set_error_handler('var_dump', 0);
-        $e = error_reporting(0);
-        trigger_error('', E_USER_NOTICE);
-
-        class_exists('Test\\'.__NAMESPACE__.'\\Float', true);
-
-        error_reporting($e);
-        restore_error_handler();
-
-        $lastError = error_get_last();
-        unset($lastError['file'], $lastError['line']);
-
-        $xError = array(
-            'type' => E_USER_DEPRECATED,
-            'message' => 'Test\Symfony\Component\Debug\Tests\Float uses a reserved class name (Float) that will break on PHP 7 and higher',
-        );
-
-        $this->assertSame($xError, $lastError);
-    }
-}
-
-class ClassLoader
-{
-    public function loadClass($class)
-    {
-    }
-
-    public function getClassMap()
-    {
-        return array(__NAMESPACE__.'\Fixtures\NotPSR0bis' => __DIR__.'/Fixtures/notPsr0Bis.php');
-    }
-
-    public function findFile($class)
-    {
-        $fixtureDir = __DIR__.DIRECTORY_SEPARATOR.'Fixtures'.DIRECTORY_SEPARATOR;
-
-        if (__NAMESPACE__.'\TestingUnsilencing' === $class) {
-            eval('-- parse error --');
-        } elseif (__NAMESPACE__.'\TestingStacking' === $class) {
-            eval('namespace '.__NAMESPACE__.'; class TestingStacking { function foo() {} }');
-        } elseif (__NAMESPACE__.'\TestingCaseMismatch' === $class) {
-            eval('namespace '.__NAMESPACE__.'; class TestingCaseMisMatch {}');
-        } elseif (__NAMESPACE__.'\Fixtures\CaseMismatch' === $class) {
-            return $fixtureDir.'CaseMismatch.php';
-        } elseif (__NAMESPACE__.'\Fixtures\Psr4CaseMismatch' === $class) {
-            return $fixtureDir.'psr4'.DIRECTORY_SEPARATOR.'Psr4CaseMismatch.php';
-        } elseif (__NAMESPACE__.'\Fixtures\NotPSR0' === $class) {
-            return $fixtureDir.'reallyNotPsr0.php';
-        } elseif (__NAMESPACE__.'\Fixtures\NotPSR0bis' === $class) {
-            return $fixtureDir.'notPsr0Bis.php';
-        } elseif (__NAMESPACE__.'\Fixtures\DeprecatedInterface' === $class) {
-            return $fixtureDir.'DeprecatedInterface.php';
-        } elseif ('Symfony\Bridge\Debug\Tests\Fixtures\ExtendsDeprecatedParent' === $class) {
-            eval('namespace Symfony\Bridge\Debug\Tests\Fixtures; class ExtendsDeprecatedParent extends \\'.__NAMESPACE__.'\Fixtures\DeprecatedClass {}');
-        } elseif ('Test\\'.__NAMESPACE__.'\DeprecatedParentClass' === $class) {
-            eval('namespace Test\\'.__NAMESPACE__.'; class DeprecatedParentClass extends \\'.__NAMESPACE__.'\Fixtures\DeprecatedClass {}');
-        } elseif ('Test\\'.__NAMESPACE__.'\DeprecatedInterfaceClass' === $class) {
-            eval('namespace Test\\'.__NAMESPACE__.'; class DeprecatedInterfaceClass implements \\'.__NAMESPACE__.'\Fixtures\DeprecatedInterface {}');
-        } elseif ('Test\\'.__NAMESPACE__.'\Float' === $class) {
-            eval('namespace Test\\'.__NAMESPACE__.'; class Float {}');
-        }
-    }
-}
diff --git a/vendor/symfony/debug/Tests/ErrorHandlerTest.php b/vendor/symfony/debug/Tests/ErrorHandlerTest.php
deleted file mode 100644
index c107c0c..0000000
--- a/vendor/symfony/debug/Tests/ErrorHandlerTest.php
+++ /dev/null
@@ -1,503 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Debug\Tests;
-
-use Psr\Log\LogLevel;
-use Symfony\Component\Debug\ErrorHandler;
-use Symfony\Component\Debug\Exception\ContextErrorException;
-
-/**
- * ErrorHandlerTest.
- *
- * @author Robert Schönthal <seroscho@googlemail.com>
- * @author Nicolas Grekas <p@tchwork.com>
- */
-class ErrorHandlerTest extends \PHPUnit_Framework_TestCase
-{
-    public function testRegister()
-    {
-        $handler = ErrorHandler::register();
-
-        try {
-            $this->assertInstanceOf('Symfony\Component\Debug\ErrorHandler', $handler);
-            $this->assertSame($handler, ErrorHandler::register());
-
-            $newHandler = new ErrorHandler();
-
-            $this->assertSame($newHandler, ErrorHandler::register($newHandler, false));
-            $h = set_error_handler('var_dump');
-            restore_error_handler();
-            $this->assertSame(array($handler, 'handleError'), $h);
-
-            try {
-                $this->assertSame($newHandler, ErrorHandler::register($newHandler, true));
-                $h = set_error_handler('var_dump');
-                restore_error_handler();
-                $this->assertSame(array($newHandler, 'handleError'), $h);
-            } catch (\Exception $e) {
-            }
-
-            restore_error_handler();
-            restore_exception_handler();
-
-            if (isset($e)) {
-                throw $e;
-            }
-        } catch (\Exception $e) {
-        }
-
-        restore_error_handler();
-        restore_exception_handler();
-
-        if (isset($e)) {
-            throw $e;
-        }
-    }
-
-    public function testNotice()
-    {
-        ErrorHandler::register();
-
-        try {
-            self::triggerNotice($this);
-            $this->fail('ContextErrorException expected');
-        } catch (ContextErrorException $exception) {
-            // if an exception is thrown, the test passed
-            restore_error_handler();
-            restore_exception_handler();
-
-            $this->assertEquals(E_NOTICE, $exception->getSeverity());
-            $this->assertEquals(__FILE__, $exception->getFile());
-            $this->assertRegExp('/^Notice: Undefined variable: (foo|bar)/', $exception->getMessage());
-            $this->assertArrayHasKey('foobar', $exception->getContext());
-
-            $trace = $exception->getTrace();
-            $this->assertEquals(__FILE__, $trace[0]['file']);
-            $this->assertEquals('Symfony\Component\Debug\ErrorHandler', $trace[0]['class']);
-            $this->assertEquals('handleError', $trace[0]['function']);
-            $this->assertEquals('->', $trace[0]['type']);
-
-            $this->assertEquals(__FILE__, $trace[1]['file']);
-            $this->assertEquals(__CLASS__, $trace[1]['class']);
-            $this->assertEquals('triggerNotice', $trace[1]['function']);
-            $this->assertEquals('::', $trace[1]['type']);
-
-            $this->assertEquals(__FILE__, $trace[1]['file']);
-            $this->assertEquals(__CLASS__, $trace[2]['class']);
-            $this->assertEquals(__FUNCTION__, $trace[2]['function']);
-            $this->assertEquals('->', $trace[2]['type']);
-        } catch (\Exception $e) {
-            restore_error_handler();
-            restore_exception_handler();
-
-            throw $e;
-        }
-    }
-
-    // dummy function to test trace in error handler.
-    private static function triggerNotice($that)
-    {
-        // dummy variable to check for in error handler.
-        $foobar = 123;
-        $that->assertSame('', $foo.$foo.$bar);
-    }
-
-    public function testConstruct()
-    {
-        try {
-            $handler = ErrorHandler::register();
-            $handler->throwAt(3, true);
-            $this->assertEquals(3 | E_RECOVERABLE_ERROR | E_USER_ERROR, $handler->throwAt(0));
-
-            restore_error_handler();
-            restore_exception_handler();
-        } catch (\Exception $e) {
-            restore_error_handler();
-            restore_exception_handler();
-
-            throw $e;
-        }
-    }
-
-    public function testDefaultLogger()
-    {
-        try {
-            $handler = ErrorHandler::register();
-
-            $logger = $this->getMock('Psr\Log\LoggerInterface');
-
-            $handler->setDefaultLogger($logger, E_NOTICE);
-            $handler->setDefaultLogger($logger, array(E_USER_NOTICE => LogLevel::CRITICAL));
-
-            $loggers = array(
-                E_DEPRECATED => array(null, LogLevel::INFO),
-                E_USER_DEPRECATED => array(null, LogLevel::INFO),
-                E_NOTICE => array($logger, LogLevel::WARNING),
-                E_USER_NOTICE => array($logger, LogLevel::CRITICAL),
-                E_STRICT => array(null, LogLevel::WARNING),
-                E_WARNING => array(null, LogLevel::WARNING),
-                E_USER_WARNING => array(null, LogLevel::WARNING),
-                E_COMPILE_WARNING => array(null, LogLevel::WARNING),
-                E_CORE_WARNING => array(null, LogLevel::WARNING),
-                E_USER_ERROR => array(null, LogLevel::CRITICAL),
-                E_RECOVERABLE_ERROR => array(null, LogLevel::CRITICAL),
-                E_COMPILE_ERROR => array(null, LogLevel::CRITICAL),
-                E_PARSE => array(null, LogLevel::CRITICAL),
-                E_ERROR => array(null, LogLevel::CRITICAL),
-                E_CORE_ERROR => array(null, LogLevel::CRITICAL),
-            );
-            $this->assertSame($loggers, $handler->setLoggers(array()));
-
-            restore_error_handler();
-            restore_exception_handler();
-        } catch (\Exception $e) {
-            restore_error_handler();
-            restore_exception_handler();
-
-            throw $e;
-        }
-    }
-
-    public function testHandleError()
-    {
-        try {
-            $handler = ErrorHandler::register();
-            $handler->throwAt(0, true);
-            $this->assertFalse($handler->handleError(0, 'foo', 'foo.php', 12, array()));
-
-            restore_error_handler();
-            restore_exception_handler();
-
-            $handler = ErrorHandler::register();
-            $handler->throwAt(3, true);
-            $this->assertFalse($handler->handleError(4, 'foo', 'foo.php', 12, array()));
-
-            restore_error_handler();
-            restore_exception_handler();
-
-            $handler = ErrorHandler::register();
-            $handler->throwAt(3, true);
-            try {
-                $handler->handleError(4, 'foo', 'foo.php', 12, array());
-            } catch (\ErrorException $e) {
-                $this->assertSame('Parse Error: foo', $e->getMessage());
-                $this->assertSame(4, $e->getSeverity());
-                $this->assertSame('foo.php', $e->getFile());
-                $this->assertSame(12, $e->getLine());
-            }
-
-            restore_error_handler();
-            restore_exception_handler();
-
-            $handler = ErrorHandler::register();
-            $handler->throwAt(E_USER_DEPRECATED, true);
-            $this->assertFalse($handler->handleError(E_USER_DEPRECATED, 'foo', 'foo.php', 12, array()));
-
-            restore_error_handler();
-            restore_exception_handler();
-
-            $handler = ErrorHandler::register();
-            $handler->throwAt(E_DEPRECATED, true);
-            $this->assertFalse($handler->handleError(E_DEPRECATED, 'foo', 'foo.php', 12, array()));
-
-            restore_error_handler();
-            restore_exception_handler();
-
-            $logger = $this->getMock('Psr\Log\LoggerInterface');
-
-            $that = $this;
-            $warnArgCheck = function ($logLevel, $message, $context) use ($that) {
-                $that->assertEquals('info', $logLevel);
-                $that->assertEquals('foo', $message);
-                $that->assertArrayHasKey('type', $context);
-                $that->assertEquals($context['type'], E_USER_DEPRECATED);
-                $that->assertArrayHasKey('stack', $context);
-                $that->assertInternalType('array', $context['stack']);
-            };
-
-            $logger
-                ->expects($this->once())
-                ->method('log')
-                ->will($this->returnCallback($warnArgCheck))
-            ;
-
-            $handler = ErrorHandler::register();
-            $handler->setDefaultLogger($logger, E_USER_DEPRECATED);
-            $this->assertTrue($handler->handleError(E_USER_DEPRECATED, 'foo', 'foo.php', 12, array()));
-
-            restore_error_handler();
-            restore_exception_handler();
-
-            $logger = $this->getMock('Psr\Log\LoggerInterface');
-
-            $that = $this;
-            $logArgCheck = function ($level, $message, $context) use ($that) {
-                $that->assertEquals('Undefined variable: undefVar', $message);
-                $that->assertArrayHasKey('type', $context);
-                $that->assertEquals($context['type'], E_NOTICE);
-            };
-
-            $logger
-                ->expects($this->once())
-                ->method('log')
-                ->will($this->returnCallback($logArgCheck))
-            ;
-
-            $handler = ErrorHandler::register();
-            $handler->setDefaultLogger($logger, E_NOTICE);
-            $handler->screamAt(E_NOTICE);
-            unset($undefVar);
-            @$undefVar++;
-
-            restore_error_handler();
-            restore_exception_handler();
-        } catch (\Exception $e) {
-            restore_error_handler();
-            restore_exception_handler();
-
-            throw $e;
-        }
-    }
-
-    public function testHandleDeprecation()
-    {
-        $that = $this;
-        $logArgCheck = function ($level, $message, $context) use ($that) {
-            $that->assertEquals(LogLevel::INFO, $level);
-            $that->assertArrayHasKey('level', $context);
-            $that->assertEquals(E_RECOVERABLE_ERROR | E_USER_ERROR | E_DEPRECATED | E_USER_DEPRECATED, $context['level']);
-            $that->assertArrayHasKey('stack', $context);
-        };
-
-        $logger = $this->getMock('Psr\Log\LoggerInterface');
-        $logger
-            ->expects($this->once())
-            ->method('log')
-            ->will($this->returnCallback($logArgCheck))
-        ;
-
-        $handler = new ErrorHandler();
-        $handler->setDefaultLogger($logger);
-        @$handler->handleError(E_USER_DEPRECATED, 'Foo deprecation', __FILE__, __LINE__, array());
-    }
-
-    public function testHandleException()
-    {
-        try {
-            $handler = ErrorHandler::register();
-
-            $exception = new \Exception('foo');
-
-            $logger = $this->getMock('Psr\Log\LoggerInterface');
-
-            $that = $this;
-            $logArgCheck = function ($level, $message, $context) use ($that) {
-                $that->assertEquals('Uncaught Exception: foo', $message);
-                $that->assertArrayHasKey('type', $context);
-                $that->assertEquals($context['type'], E_ERROR);
-            };
-
-            $logger
-                ->expects($this->exactly(2))
-                ->method('log')
-                ->will($this->returnCallback($logArgCheck))
-            ;
-
-            $handler->setDefaultLogger($logger, E_ERROR);
-
-            try {
-                $handler->handleException($exception);
-                $this->fail('Exception expected');
-            } catch (\Exception $e) {
-                $this->assertSame($exception, $e);
-            }
-
-            $that = $this;
-            $handler->setExceptionHandler(function ($e) use ($exception, $that) {
-                $that->assertSame($exception, $e);
-            });
-
-            $handler->handleException($exception);
-
-            restore_error_handler();
-            restore_exception_handler();
-        } catch (\Exception $e) {
-            restore_error_handler();
-            restore_exception_handler();
-
-            throw $e;
-        }
-    }
-
-    public function testErrorStacking()
-    {
-        try {
-            $handler = ErrorHandler::register();
-            $handler->screamAt(E_USER_WARNING);
-
-            $logger = $this->getMock('Psr\Log\LoggerInterface');
-
-            $logger
-                ->expects($this->exactly(2))
-                ->method('log')
-                ->withConsecutive(
-                    array($this->equalTo(LogLevel::WARNING), $this->equalTo('Dummy log')),
-                    array($this->equalTo(LogLevel::DEBUG), $this->equalTo('Silenced warning'))
-                )
-            ;
-
-            $handler->setDefaultLogger($logger, array(E_USER_WARNING => LogLevel::WARNING));
-
-            ErrorHandler::stackErrors();
-            @trigger_error('Silenced warning', E_USER_WARNING);
-            $logger->log(LogLevel::WARNING, 'Dummy log');
-            ErrorHandler::unstackErrors();
-
-            restore_error_handler();
-            restore_exception_handler();
-        } catch (\Exception $e) {
-            restore_error_handler();
-            restore_exception_handler();
-
-            throw $e;
-        }
-    }
-
-    public function testHandleFatalError()
-    {
-        try {
-            $handler = ErrorHandler::register();
-
-            $error = array(
-                'type' => E_PARSE,
-                'message' => 'foo',
-                'file' => 'bar',
-                'line' => 123,
-            );
-
-            $logger = $this->getMock('Psr\Log\LoggerInterface');
-
-            $that = $this;
-            $logArgCheck = function ($level, $message, $context) use ($that) {
-                $that->assertEquals('Fatal Parse Error: foo', $message);
-                $that->assertArrayHasKey('type', $context);
-                $that->assertEquals($context['type'], E_PARSE);
-            };
-
-            $logger
-                ->expects($this->once())
-                ->method('log')
-                ->will($this->returnCallback($logArgCheck))
-            ;
-
-            $handler->setDefaultLogger($logger, E_PARSE);
-
-            $handler->handleFatalError($error);
-
-            restore_error_handler();
-            restore_exception_handler();
-        } catch (\Exception $e) {
-            restore_error_handler();
-            restore_exception_handler();
-
-            throw $e;
-        }
-    }
-
-    public function testHandleFatalErrorOnHHVM()
-    {
-        try {
-            $handler = ErrorHandler::register();
-
-            $logger = $this->getMock('Psr\Log\LoggerInterface');
-            $logger
-                ->expects($this->once())
-                ->method('log')
-                ->with(
-                    $this->equalTo(LogLevel::CRITICAL),
-                    $this->equalTo('Fatal Error: foo'),
-                    $this->equalTo(array(
-                        'type' => 1,
-                        'file' => 'bar',
-                        'line' => 123,
-                        'level' => -1,
-                        'stack' => array(456),
-                    ))
-                )
-            ;
-
-            $handler->setDefaultLogger($logger, E_ERROR);
-
-            $error = array(
-                'type' => E_ERROR + 0x1000000, // This error level is used by HHVM for fatal errors
-                'message' => 'foo',
-                'file' => 'bar',
-                'line' => 123,
-                'context' => array(123),
-                'backtrace' => array(456),
-            );
-
-            call_user_func_array(array($handler, 'handleError'), $error);
-            $handler->handleFatalError($error);
-
-            restore_error_handler();
-            restore_exception_handler();
-        } catch (\Exception $e) {
-            restore_error_handler();
-            restore_exception_handler();
-
-            throw $e;
-        }
-    }
-
-    /**
-     * @group legacy
-     */
-    public function testLegacyInterface()
-    {
-        try {
-            $handler = ErrorHandler::register(0);
-            $this->assertFalse($handler->handle(0, 'foo', 'foo.php', 12, array()));
-
-            restore_error_handler();
-            restore_exception_handler();
-
-            $logger = $this->getMock('Psr\Log\LoggerInterface');
-
-            $that = $this;
-            $logArgCheck = function ($level, $message, $context) use ($that) {
-                $that->assertEquals('Undefined variable: undefVar', $message);
-                $that->assertArrayHasKey('type', $context);
-                $that->assertEquals($context['type'], E_NOTICE);
-            };
-
-            $logger
-                ->expects($this->once())
-                ->method('log')
-                ->will($this->returnCallback($logArgCheck))
-            ;
-
-            $handler = ErrorHandler::register(E_NOTICE);
-            @$handler->setLogger($logger, 'scream');
-            unset($undefVar);
-            @$undefVar++;
-
-            restore_error_handler();
-            restore_exception_handler();
-        } catch (\Exception $e) {
-            restore_error_handler();
-            restore_exception_handler();
-
-            throw $e;
-        }
-    }
-}
diff --git a/vendor/symfony/debug/Tests/Exception/FlattenExceptionTest.php b/vendor/symfony/debug/Tests/Exception/FlattenExceptionTest.php
deleted file mode 100644
index 99eaf49..0000000
--- a/vendor/symfony/debug/Tests/Exception/FlattenExceptionTest.php
+++ /dev/null
@@ -1,256 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Debug\Tests\Exception;
-
-use Symfony\Component\Debug\Exception\FlattenException;
-use Symfony\Component\HttpKernel\Exception\NotFoundHttpException;
-use Symfony\Component\HttpKernel\Exception\MethodNotAllowedHttpException;
-use Symfony\Component\HttpKernel\Exception\UnauthorizedHttpException;
-use Symfony\Component\HttpKernel\Exception\BadRequestHttpException;
-use Symfony\Component\HttpKernel\Exception\NotAcceptableHttpException;
-use Symfony\Component\HttpKernel\Exception\ConflictHttpException;
-use Symfony\Component\HttpKernel\Exception\AccessDeniedHttpException;
-use Symfony\Component\HttpKernel\Exception\GoneHttpException;
-use Symfony\Component\HttpKernel\Exception\LengthRequiredHttpException;
-use Symfony\Component\HttpKernel\Exception\PreconditionFailedHttpException;
-use Symfony\Component\HttpKernel\Exception\PreconditionRequiredHttpException;
-use Symfony\Component\HttpKernel\Exception\ServiceUnavailableHttpException;
-use Symfony\Component\HttpKernel\Exception\TooManyRequestsHttpException;
-use Symfony\Component\HttpKernel\Exception\UnsupportedMediaTypeHttpException;
-
-class FlattenExceptionTest extends \PHPUnit_Framework_TestCase
-{
-    public function testStatusCode()
-    {
-        $flattened = FlattenException::create(new \RuntimeException(), 403);
-        $this->assertEquals('403', $flattened->getStatusCode());
-
-        $flattened = FlattenException::create(new \RuntimeException());
-        $this->assertEquals('500', $flattened->getStatusCode());
-
-        $flattened = FlattenException::create(new NotFoundHttpException());
-        $this->assertEquals('404', $flattened->getStatusCode());
-
-        $flattened = FlattenException::create(new UnauthorizedHttpException('Basic realm="My Realm"'));
-        $this->assertEquals('401', $flattened->getStatusCode());
-
-        $flattened = FlattenException::create(new BadRequestHttpException());
-        $this->assertEquals('400', $flattened->getStatusCode());
-
-        $flattened = FlattenException::create(new NotAcceptableHttpException());
-        $this->assertEquals('406', $flattened->getStatusCode());
-
-        $flattened = FlattenException::create(new ConflictHttpException());
-        $this->assertEquals('409', $flattened->getStatusCode());
-
-        $flattened = FlattenException::create(new MethodNotAllowedHttpException(array('POST')));
-        $this->assertEquals('405', $flattened->getStatusCode());
-
-        $flattened = FlattenException::create(new AccessDeniedHttpException());
-        $this->assertEquals('403', $flattened->getStatusCode());
-
-        $flattened = FlattenException::create(new GoneHttpException());
-        $this->assertEquals('410', $flattened->getStatusCode());
-
-        $flattened = FlattenException::create(new LengthRequiredHttpException());
-        $this->assertEquals('411', $flattened->getStatusCode());
-
-        $flattened = FlattenException::create(new PreconditionFailedHttpException());
-        $this->assertEquals('412', $flattened->getStatusCode());
-
-        $flattened = FlattenException::create(new PreconditionRequiredHttpException());
-        $this->assertEquals('428', $flattened->getStatusCode());
-
-        $flattened = FlattenException::create(new ServiceUnavailableHttpException());
-        $this->assertEquals('503', $flattened->getStatusCode());
-
-        $flattened = FlattenException::create(new TooManyRequestsHttpException());
-        $this->assertEquals('429', $flattened->getStatusCode());
-
-        $flattened = FlattenException::create(new UnsupportedMediaTypeHttpException());
-        $this->assertEquals('415', $flattened->getStatusCode());
-    }
-
-    public function testHeadersForHttpException()
-    {
-        $flattened = FlattenException::create(new MethodNotAllowedHttpException(array('POST')));
-        $this->assertEquals(array('Allow' => 'POST'), $flattened->getHeaders());
-
-        $flattened = FlattenException::create(new UnauthorizedHttpException('Basic realm="My Realm"'));
-        $this->assertEquals(array('WWW-Authenticate' => 'Basic realm="My Realm"'), $flattened->getHeaders());
-
-        $flattened = FlattenException::create(new ServiceUnavailableHttpException('Fri, 31 Dec 1999 23:59:59 GMT'));
-        $this->assertEquals(array('Retry-After' => 'Fri, 31 Dec 1999 23:59:59 GMT'), $flattened->getHeaders());
-
-        $flattened = FlattenException::create(new ServiceUnavailableHttpException(120));
-        $this->assertEquals(array('Retry-After' => 120), $flattened->getHeaders());
-
-        $flattened = FlattenException::create(new TooManyRequestsHttpException('Fri, 31 Dec 1999 23:59:59 GMT'));
-        $this->assertEquals(array('Retry-After' => 'Fri, 31 Dec 1999 23:59:59 GMT'), $flattened->getHeaders());
-
-        $flattened = FlattenException::create(new TooManyRequestsHttpException(120));
-        $this->assertEquals(array('Retry-After' => 120), $flattened->getHeaders());
-    }
-
-    /**
-     * @dataProvider flattenDataProvider
-     */
-    public function testFlattenHttpException(\Exception $exception, $statusCode)
-    {
-        $flattened = FlattenException::create($exception);
-        $flattened2 = FlattenException::create($exception);
-
-        $flattened->setPrevious($flattened2);
-
-        $this->assertEquals($exception->getMessage(), $flattened->getMessage(), 'The message is copied from the original exception.');
-        $this->assertEquals($exception->getCode(), $flattened->getCode(), 'The code is copied from the original exception.');
-        $this->assertInstanceOf($flattened->getClass(), $exception, 'The class is set to the class of the original exception');
-    }
-
-    /**
-     * @dataProvider flattenDataProvider
-     */
-    public function testPrevious(\Exception $exception, $statusCode)
-    {
-        $flattened = FlattenException::create($exception);
-        $flattened2 = FlattenException::create($exception);
-
-        $flattened->setPrevious($flattened2);
-
-        $this->assertSame($flattened2, $flattened->getPrevious());
-
-        $this->assertSame(array($flattened2), $flattened->getAllPrevious());
-    }
-
-    /**
-     * @dataProvider flattenDataProvider
-     */
-    public function testLine(\Exception $exception)
-    {
-        $flattened = FlattenException::create($exception);
-        $this->assertSame($exception->getLine(), $flattened->getLine());
-    }
-
-    /**
-     * @dataProvider flattenDataProvider
-     */
-    public function testFile(\Exception $exception)
-    {
-        $flattened = FlattenException::create($exception);
-        $this->assertSame($exception->getFile(), $flattened->getFile());
-    }
-
-    /**
-     * @dataProvider flattenDataProvider
-     */
-    public function testToArray(\Exception $exception, $statusCode)
-    {
-        $flattened = FlattenException::create($exception);
-        $flattened->setTrace(array(), 'foo.php', 123);
-
-        $this->assertEquals(array(
-            array(
-                'message' => 'test',
-                'class' => 'Exception',
-                'trace' => array(array(
-                    'namespace' => '', 'short_class' => '', 'class' => '', 'type' => '', 'function' => '', 'file' => 'foo.php', 'line' => 123,
-                    'args' => array(),
-                )),
-            ),
-        ), $flattened->toArray());
-    }
-
-    public function flattenDataProvider()
-    {
-        return array(
-            array(new \Exception('test', 123), 500),
-        );
-    }
-
-    public function testRecursionInArguments()
-    {
-        $a = array('foo', array(2, &$a));
-        $exception = $this->createException($a);
-
-        $flattened = FlattenException::create($exception);
-        $trace = $flattened->getTrace();
-        $this->assertContains('*DEEP NESTED ARRAY*', serialize($trace));
-    }
-
-    public function testTooBigArray()
-    {
-        $a = array();
-        for ($i = 0; $i < 20; ++$i) {
-            for ($j = 0; $j < 50; ++$j) {
-                for ($k = 0; $k < 10; ++$k) {
-                    $a[$i][$j][$k] = 'value';
-                }
-            }
-        }
-        $a[20] = 'value';
-        $a[21] = 'value1';
-        $exception = $this->createException($a);
-
-        $flattened = FlattenException::create($exception);
-        $trace = $flattened->getTrace();
-        $serializeTrace = serialize($trace);
-
-        $this->assertContains('*SKIPPED over 10000 entries*', $serializeTrace);
-        $this->assertNotContains('*value1*', $serializeTrace);
-    }
-
-    private function createException($foo)
-    {
-        return new \Exception();
-    }
-
-    public function testSetTraceIncompleteClass()
-    {
-        $flattened = FlattenException::create(new \Exception('test', 123));
-        $flattened->setTrace(
-            array(
-                array(
-                    'file' => __FILE__,
-                    'line' => 123,
-                    'function' => 'test',
-                    'args' => array(
-                        unserialize('O:14:"BogusTestClass":0:{}'),
-                    ),
-                ),
-            ),
-            'foo.php', 123
-        );
-
-        $this->assertEquals(array(
-            array(
-                'message' => 'test',
-                'class' => 'Exception',
-                'trace' => array(
-                    array(
-                        'namespace' => '', 'short_class' => '', 'class' => '', 'type' => '', 'function' => '',
-                        'file' => 'foo.php', 'line' => 123,
-                        'args' => array(),
-                    ),
-                    array(
-                        'namespace' => '', 'short_class' => '', 'class' => '', 'type' => '', 'function' => 'test',
-                        'file' => __FILE__, 'line' => 123,
-                        'args' => array(
-                            array(
-                                'incomplete-object', 'BogusTestClass',
-                            ),
-                        ),
-                    ),
-                ),
-            ),
-        ), $flattened->toArray());
-    }
-}
diff --git a/vendor/symfony/debug/Tests/ExceptionHandlerTest.php b/vendor/symfony/debug/Tests/ExceptionHandlerTest.php
deleted file mode 100644
index d4b93c0..0000000
--- a/vendor/symfony/debug/Tests/ExceptionHandlerTest.php
+++ /dev/null
@@ -1,134 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Debug\Tests;
-
-use Symfony\Component\Debug\ExceptionHandler;
-use Symfony\Component\Debug\Exception\OutOfMemoryException;
-use Symfony\Component\HttpKernel\Exception\NotFoundHttpException;
-use Symfony\Component\HttpKernel\Exception\MethodNotAllowedHttpException;
-
-require_once __DIR__.'/HeaderMock.php';
-
-class ExceptionHandlerTest extends \PHPUnit_Framework_TestCase
-{
-    protected function setUp()
-    {
-        testHeader();
-    }
-
-    protected function tearDown()
-    {
-        testHeader();
-    }
-
-    public function testDebug()
-    {
-        $handler = new ExceptionHandler(false);
-
-        ob_start();
-        $handler->sendPhpResponse(new \RuntimeException('Foo'));
-        $response = ob_get_clean();
-
-        $this->assertContains('<h1>Whoops, looks like something went wrong.</h1>', $response);
-        $this->assertNotContains('<h2 class="block_exception clear_fix">', $response);
-
-        $handler = new ExceptionHandler(true);
-
-        ob_start();
-        $handler->sendPhpResponse(new \RuntimeException('Foo'));
-        $response = ob_get_clean();
-
-        $this->assertContains('<h1>Whoops, looks like something went wrong.</h1>', $response);
-        $this->assertContains('<h2 class="block_exception clear_fix">', $response);
-    }
-
-    public function testStatusCode()
-    {
-        $handler = new ExceptionHandler(false, 'iso8859-1');
-
-        ob_start();
-        $handler->sendPhpResponse(new NotFoundHttpException('Foo'));
-        $response = ob_get_clean();
-
-        $this->assertContains('Sorry, the page you are looking for could not be found.', $response);
-
-        $expectedHeaders = array(
-            array('HTTP/1.0 404', true, null),
-            array('Content-Type: text/html; charset=iso8859-1', true, null),
-        );
-
-        $this->assertSame($expectedHeaders, testHeader());
-    }
-
-    public function testHeaders()
-    {
-        $handler = new ExceptionHandler(false, 'iso8859-1');
-
-        ob_start();
-        $handler->sendPhpResponse(new MethodNotAllowedHttpException(array('POST')));
-        $response = ob_get_clean();
-
-        $expectedHeaders = array(
-            array('HTTP/1.0 405', true, null),
-            array('Allow: POST', false, null),
-            array('Content-Type: text/html; charset=iso8859-1', true, null),
-        );
-
-        $this->assertSame($expectedHeaders, testHeader());
-    }
-
-    public function testNestedExceptions()
-    {
-        $handler = new ExceptionHandler(true);
-        ob_start();
-        $handler->sendPhpResponse(new \RuntimeException('Foo', 0, new \RuntimeException('Bar')));
-        $response = ob_get_clean();
-
-        $this->assertStringMatchesFormat('%A<span class="exception_message">Foo</span>%A<span class="exception_message">Bar</span>%A', $response);
-    }
-
-    public function testHandle()
-    {
-        $exception = new \Exception('foo');
-
-        $handler = $this->getMock('Symfony\Component\Debug\ExceptionHandler', array('sendPhpResponse'));
-        $handler
-            ->expects($this->exactly(2))
-            ->method('sendPhpResponse');
-
-        $handler->handle($exception);
-
-        $that = $this;
-        $handler->setHandler(function ($e) use ($exception, $that) {
-            $that->assertSame($exception, $e);
-        });
-
-        $handler->handle($exception);
-    }
-
-    public function testHandleOutOfMemoryException()
-    {
-        $exception = new OutOfMemoryException('foo', 0, E_ERROR, __FILE__, __LINE__);
-
-        $handler = $this->getMock('Symfony\Component\Debug\ExceptionHandler', array('sendPhpResponse'));
-        $handler
-            ->expects($this->once())
-            ->method('sendPhpResponse');
-
-        $that = $this;
-        $handler->setHandler(function ($e) use ($that) {
-            $that->fail('OutOfMemoryException should bypass the handler');
-        });
-
-        $handler->handle($exception);
-    }
-}
diff --git a/vendor/symfony/debug/Tests/FatalErrorHandler/ClassNotFoundFatalErrorHandlerTest.php b/vendor/symfony/debug/Tests/FatalErrorHandler/ClassNotFoundFatalErrorHandlerTest.php
deleted file mode 100644
index c939837..0000000
--- a/vendor/symfony/debug/Tests/FatalErrorHandler/ClassNotFoundFatalErrorHandlerTest.php
+++ /dev/null
@@ -1,200 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Debug\Tests\FatalErrorHandler;
-
-use Symfony\Component\ClassLoader\ClassLoader as SymfonyClassLoader;
-use Symfony\Component\ClassLoader\UniversalClassLoader as SymfonyUniversalClassLoader;
-use Symfony\Component\Debug\Exception\FatalErrorException;
-use Symfony\Component\Debug\FatalErrorHandler\ClassNotFoundFatalErrorHandler;
-use Symfony\Component\Debug\DebugClassLoader;
-use Composer\Autoload\ClassLoader as ComposerClassLoader;
-
-class ClassNotFoundFatalErrorHandlerTest extends \PHPUnit_Framework_TestCase
-{
-    public static function setUpBeforeClass()
-    {
-        foreach (spl_autoload_functions() as $function) {
-            if (!is_array($function)) {
-                continue;
-            }
-
-            // get class loaders wrapped by DebugClassLoader
-            if ($function[0] instanceof DebugClassLoader) {
-                $function = $function[0]->getClassLoader();
-            }
-
-            if ($function[0] instanceof ComposerClassLoader) {
-                $function[0]->add('Symfony_Component_Debug_Tests_Fixtures', dirname(dirname(dirname(dirname(dirname(__DIR__))))));
-                break;
-            }
-        }
-    }
-
-    /**
-     * @dataProvider provideClassNotFoundData
-     */
-    public function testHandleClassNotFound($error, $translatedMessage, $autoloader = null)
-    {
-        if ($autoloader) {
-            // Unregister all autoloaders to ensure the custom provided
-            // autoloader is the only one to be used during the test run.
-            $autoloaders = spl_autoload_functions();
-            array_map('spl_autoload_unregister', $autoloaders);
-            spl_autoload_register($autoloader);
-        }
-
-        $handler = new ClassNotFoundFatalErrorHandler();
-
-        $exception = $handler->handleError($error, new FatalErrorException('', 0, $error['type'], $error['file'], $error['line']));
-
-        if ($autoloader) {
-            spl_autoload_unregister($autoloader);
-            array_map('spl_autoload_register', $autoloaders);
-        }
-
-        $this->assertInstanceOf('Symfony\Component\Debug\Exception\ClassNotFoundException', $exception);
-        $this->assertSame($translatedMessage, $exception->getMessage());
-        $this->assertSame($error['type'], $exception->getSeverity());
-        $this->assertSame($error['file'], $exception->getFile());
-        $this->assertSame($error['line'], $exception->getLine());
-    }
-
-    /**
-     * @group legacy
-     */
-    public function testLegacyHandleClassNotFound()
-    {
-        $prefixes = array('Symfony\Component\Debug\Exception\\' => realpath(__DIR__.'/../../Exception'));
-        $symfonyUniversalClassLoader = new SymfonyUniversalClassLoader();
-        $symfonyUniversalClassLoader->registerPrefixes($prefixes);
-
-        $this->testHandleClassNotFound(
-            array(
-                'type' => 1,
-                'line' => 12,
-                'file' => 'foo.php',
-                'message' => 'Class \'Foo\\Bar\\UndefinedFunctionException\' not found',
-            ),
-            "Attempted to load class \"UndefinedFunctionException\" from namespace \"Foo\Bar\".\nDid you forget a \"use\" statement for \"Symfony\Component\Debug\Exception\UndefinedFunctionException\"?",
-            array($symfonyUniversalClassLoader, 'loadClass')
-        );
-    }
-
-    public function provideClassNotFoundData()
-    {
-        $prefixes = array('Symfony\Component\Debug\Exception\\' => realpath(__DIR__.'/../../Exception'));
-
-        $symfonyAutoloader = new SymfonyClassLoader();
-        $symfonyAutoloader->addPrefixes($prefixes);
-
-        $debugClassLoader = new DebugClassLoader(array($symfonyAutoloader, 'loadClass'));
-
-        return array(
-            array(
-                array(
-                    'type' => 1,
-                    'line' => 12,
-                    'file' => 'foo.php',
-                    'message' => 'Class \'WhizBangFactory\' not found',
-                ),
-                "Attempted to load class \"WhizBangFactory\" from the global namespace.\nDid you forget a \"use\" statement?",
-            ),
-            array(
-                array(
-                    'type' => 1,
-                    'line' => 12,
-                    'file' => 'foo.php',
-                    'message' => 'Class \'Foo\\Bar\\WhizBangFactory\' not found',
-                ),
-                "Attempted to load class \"WhizBangFactory\" from namespace \"Foo\\Bar\".\nDid you forget a \"use\" statement for another namespace?",
-            ),
-            array(
-                array(
-                    'type' => 1,
-                    'line' => 12,
-                    'file' => 'foo.php',
-                    'message' => 'Class \'UndefinedFunctionException\' not found',
-                ),
-                "Attempted to load class \"UndefinedFunctionException\" from the global namespace.\nDid you forget a \"use\" statement for \"Symfony\Component\Debug\Exception\UndefinedFunctionException\"?",
-            ),
-            array(
-                array(
-                    'type' => 1,
-                    'line' => 12,
-                    'file' => 'foo.php',
-                    'message' => 'Class \'PEARClass\' not found',
-                ),
-                "Attempted to load class \"PEARClass\" from the global namespace.\nDid you forget a \"use\" statement for \"Symfony_Component_Debug_Tests_Fixtures_PEARClass\"?",
-            ),
-            array(
-                array(
-                    'type' => 1,
-                    'line' => 12,
-                    'file' => 'foo.php',
-                    'message' => 'Class \'Foo\\Bar\\UndefinedFunctionException\' not found',
-                ),
-                "Attempted to load class \"UndefinedFunctionException\" from namespace \"Foo\Bar\".\nDid you forget a \"use\" statement for \"Symfony\Component\Debug\Exception\UndefinedFunctionException\"?",
-            ),
-            array(
-                array(
-                    'type' => 1,
-                    'line' => 12,
-                    'file' => 'foo.php',
-                    'message' => 'Class \'Foo\\Bar\\UndefinedFunctionException\' not found',
-                ),
-                "Attempted to load class \"UndefinedFunctionException\" from namespace \"Foo\Bar\".\nDid you forget a \"use\" statement for \"Symfony\Component\Debug\Exception\UndefinedFunctionException\"?",
-                array($symfonyAutoloader, 'loadClass'),
-            ),
-            array(
-                array(
-                    'type' => 1,
-                    'line' => 12,
-                    'file' => 'foo.php',
-                    'message' => 'Class \'Foo\\Bar\\UndefinedFunctionException\' not found',
-                ),
-                "Attempted to load class \"UndefinedFunctionException\" from namespace \"Foo\Bar\".\nDid you forget a \"use\" statement for \"Symfony\Component\Debug\Exception\UndefinedFunctionException\"?",
-                array($debugClassLoader, 'loadClass'),
-            ),
-            array(
-                array(
-                    'type' => 1,
-                    'line' => 12,
-                    'file' => 'foo.php',
-                    'message' => 'Class \'Foo\\Bar\\UndefinedFunctionException\' not found',
-                ),
-                "Attempted to load class \"UndefinedFunctionException\" from namespace \"Foo\\Bar\".\nDid you forget a \"use\" statement for another namespace?",
-                function ($className) { /* do nothing here */ },
-            ),
-        );
-    }
-
-    public function testCannotRedeclareClass()
-    {
-        if (!file_exists(__DIR__.'/../FIXTURES2/REQUIREDTWICE.PHP')) {
-            $this->markTestSkipped('Can only be run on case insensitive filesystems');
-        }
-
-        require_once __DIR__.'/../FIXTURES2/REQUIREDTWICE.PHP';
-
-        $error = array(
-            'type' => 1,
-            'line' => 12,
-            'file' => 'foo.php',
-            'message' => 'Class \'Foo\\Bar\\RequiredTwice\' not found',
-        );
-
-        $handler = new ClassNotFoundFatalErrorHandler();
-        $exception = $handler->handleError($error, new FatalErrorException('', 0, $error['type'], $error['file'], $error['line']));
-
-        $this->assertInstanceOf('Symfony\Component\Debug\Exception\ClassNotFoundException', $exception);
-    }
-}
diff --git a/vendor/symfony/debug/Tests/FatalErrorHandler/UndefinedFunctionFatalErrorHandlerTest.php b/vendor/symfony/debug/Tests/FatalErrorHandler/UndefinedFunctionFatalErrorHandlerTest.php
deleted file mode 100644
index 795b747..0000000
--- a/vendor/symfony/debug/Tests/FatalErrorHandler/UndefinedFunctionFatalErrorHandlerTest.php
+++ /dev/null
@@ -1,80 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Debug\Tests\FatalErrorHandler;
-
-use Symfony\Component\Debug\Exception\FatalErrorException;
-use Symfony\Component\Debug\FatalErrorHandler\UndefinedFunctionFatalErrorHandler;
-
-class UndefinedFunctionFatalErrorHandlerTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @dataProvider provideUndefinedFunctionData
-     */
-    public function testUndefinedFunction($error, $translatedMessage)
-    {
-        $handler = new UndefinedFunctionFatalErrorHandler();
-        $exception = $handler->handleError($error, new FatalErrorException('', 0, $error['type'], $error['file'], $error['line']));
-
-        $this->assertInstanceOf('Symfony\Component\Debug\Exception\UndefinedFunctionException', $exception);
-        // class names are case insensitive and PHP/HHVM do not return the same
-        $this->assertSame(strtolower($translatedMessage), strtolower($exception->getMessage()));
-        $this->assertSame($error['type'], $exception->getSeverity());
-        $this->assertSame($error['file'], $exception->getFile());
-        $this->assertSame($error['line'], $exception->getLine());
-    }
-
-    public function provideUndefinedFunctionData()
-    {
-        return array(
-            array(
-                array(
-                    'type' => 1,
-                    'line' => 12,
-                    'file' => 'foo.php',
-                    'message' => 'Call to undefined function test_namespaced_function()',
-                ),
-                "Attempted to call function \"test_namespaced_function\" from the global namespace.\nDid you mean to call \"\\symfony\\component\\debug\\tests\\fatalerrorhandler\\test_namespaced_function\"?",
-            ),
-            array(
-                array(
-                    'type' => 1,
-                    'line' => 12,
-                    'file' => 'foo.php',
-                    'message' => 'Call to undefined function Foo\\Bar\\Baz\\test_namespaced_function()',
-                ),
-                "Attempted to call function \"test_namespaced_function\" from namespace \"Foo\\Bar\\Baz\".\nDid you mean to call \"\\symfony\\component\\debug\\tests\\fatalerrorhandler\\test_namespaced_function\"?",
-            ),
-            array(
-                array(
-                    'type' => 1,
-                    'line' => 12,
-                    'file' => 'foo.php',
-                    'message' => 'Call to undefined function foo()',
-                ),
-                'Attempted to call function "foo" from the global namespace.',
-            ),
-            array(
-                array(
-                    'type' => 1,
-                    'line' => 12,
-                    'file' => 'foo.php',
-                    'message' => 'Call to undefined function Foo\\Bar\\Baz\\foo()',
-                ),
-                'Attempted to call function "foo" from namespace "Foo\Bar\Baz".',
-            ),
-        );
-    }
-}
-
-function test_namespaced_function()
-{
-}
diff --git a/vendor/symfony/debug/Tests/FatalErrorHandler/UndefinedMethodFatalErrorHandlerTest.php b/vendor/symfony/debug/Tests/FatalErrorHandler/UndefinedMethodFatalErrorHandlerTest.php
deleted file mode 100644
index de7b21c..0000000
--- a/vendor/symfony/debug/Tests/FatalErrorHandler/UndefinedMethodFatalErrorHandlerTest.php
+++ /dev/null
@@ -1,66 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Debug\Tests\FatalErrorHandler;
-
-use Symfony\Component\Debug\Exception\FatalErrorException;
-use Symfony\Component\Debug\FatalErrorHandler\UndefinedMethodFatalErrorHandler;
-
-class UndefinedMethodFatalErrorHandlerTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @dataProvider provideUndefinedMethodData
-     */
-    public function testUndefinedMethod($error, $translatedMessage)
-    {
-        $handler = new UndefinedMethodFatalErrorHandler();
-        $exception = $handler->handleError($error, new FatalErrorException('', 0, $error['type'], $error['file'], $error['line']));
-
-        $this->assertInstanceOf('Symfony\Component\Debug\Exception\UndefinedMethodException', $exception);
-        $this->assertSame($translatedMessage, $exception->getMessage());
-        $this->assertSame($error['type'], $exception->getSeverity());
-        $this->assertSame($error['file'], $exception->getFile());
-        $this->assertSame($error['line'], $exception->getLine());
-    }
-
-    public function provideUndefinedMethodData()
-    {
-        return array(
-            array(
-                array(
-                    'type' => 1,
-                    'line' => 12,
-                    'file' => 'foo.php',
-                    'message' => 'Call to undefined method SplObjectStorage::what()',
-                ),
-                'Attempted to call an undefined method named "what" of class "SplObjectStorage".',
-            ),
-            array(
-                array(
-                    'type' => 1,
-                    'line' => 12,
-                    'file' => 'foo.php',
-                    'message' => 'Call to undefined method SplObjectStorage::walid()',
-                ),
-                "Attempted to call an undefined method named \"walid\" of class \"SplObjectStorage\".\nDid you mean to call \"valid\"?",
-            ),
-            array(
-                array(
-                    'type' => 1,
-                    'line' => 12,
-                    'file' => 'foo.php',
-                    'message' => 'Call to undefined method SplObjectStorage::offsetFet()',
-                ),
-                "Attempted to call an undefined method named \"offsetFet\" of class \"SplObjectStorage\".\nDid you mean to call e.g. \"offsetGet\", \"offsetSet\" or \"offsetUnset\"?",
-            ),
-        );
-    }
-}
diff --git a/vendor/symfony/debug/Tests/Fixtures/ClassAlias.php b/vendor/symfony/debug/Tests/Fixtures/ClassAlias.php
deleted file mode 100644
index 9d6dbaa..0000000
--- a/vendor/symfony/debug/Tests/Fixtures/ClassAlias.php
+++ /dev/null
@@ -1,3 +0,0 @@
-<?php
-
-class_alias('Symfony\Component\Debug\Tests\Fixtures\NotPSR0bis', 'Symfony\Component\Debug\Tests\Fixtures\ClassAlias');
diff --git a/vendor/symfony/debug/Tests/Fixtures/DeprecatedClass.php b/vendor/symfony/debug/Tests/Fixtures/DeprecatedClass.php
deleted file mode 100644
index b4c78cd..0000000
--- a/vendor/symfony/debug/Tests/Fixtures/DeprecatedClass.php
+++ /dev/null
@@ -1,12 +0,0 @@
-<?php
-
-namespace Symfony\Component\Debug\Tests\Fixtures;
-
-/**
- * @deprecated but this is a test
- *             deprecation notice.
- * @foobar
- */
-class DeprecatedClass
-{
-}
diff --git a/vendor/symfony/debug/Tests/Fixtures/DeprecatedInterface.php b/vendor/symfony/debug/Tests/Fixtures/DeprecatedInterface.php
deleted file mode 100644
index 505ecca..0000000
--- a/vendor/symfony/debug/Tests/Fixtures/DeprecatedInterface.php
+++ /dev/null
@@ -1,12 +0,0 @@
-<?php
-
-namespace Symfony\Component\Debug\Tests\Fixtures;
-
-/**
- * @deprecated but this is a test
- *             deprecation notice.
- * @foobar
- */
-interface DeprecatedInterface
-{
-}
diff --git a/vendor/symfony/debug/Tests/Fixtures/PEARClass.php b/vendor/symfony/debug/Tests/Fixtures/PEARClass.php
deleted file mode 100644
index 39f2281..0000000
--- a/vendor/symfony/debug/Tests/Fixtures/PEARClass.php
+++ /dev/null
@@ -1,5 +0,0 @@
-<?php
-
-class Symfony_Component_Debug_Tests_Fixtures_PEARClass
-{
-}
diff --git a/vendor/symfony/debug/Tests/Fixtures/casemismatch.php b/vendor/symfony/debug/Tests/Fixtures/casemismatch.php
deleted file mode 100644
index 691d660..0000000
--- a/vendor/symfony/debug/Tests/Fixtures/casemismatch.php
+++ /dev/null
@@ -1,7 +0,0 @@
-<?php
-
-namespace Symfony\Component\Debug\Tests\Fixtures;
-
-class CaseMismatch
-{
-}
diff --git a/vendor/symfony/debug/Tests/Fixtures/notPsr0Bis.php b/vendor/symfony/debug/Tests/Fixtures/notPsr0Bis.php
deleted file mode 100644
index 4cf5267..0000000
--- a/vendor/symfony/debug/Tests/Fixtures/notPsr0Bis.php
+++ /dev/null
@@ -1,7 +0,0 @@
-<?php
-
-namespace Symfony\Component\Debug\Tests\Fixtures;
-
-class NotPSR0bis
-{
-}
diff --git a/vendor/symfony/debug/Tests/Fixtures/psr4/Psr4CaseMismatch.php b/vendor/symfony/debug/Tests/Fixtures/psr4/Psr4CaseMismatch.php
deleted file mode 100644
index ec48dd2..0000000
--- a/vendor/symfony/debug/Tests/Fixtures/psr4/Psr4CaseMismatch.php
+++ /dev/null
@@ -1,7 +0,0 @@
-<?php
-
-namespace Symfony\Component\Debug\Tests\Fixtures;
-
-class PSR4CaseMismatch
-{
-}
diff --git a/vendor/symfony/debug/Tests/Fixtures/reallyNotPsr0.php b/vendor/symfony/debug/Tests/Fixtures/reallyNotPsr0.php
deleted file mode 100644
index 8554725..0000000
--- a/vendor/symfony/debug/Tests/Fixtures/reallyNotPsr0.php
+++ /dev/null
@@ -1,7 +0,0 @@
-<?php
-
-namespace Symfony\Component\Debug\Tests\Fixtures;
-
-class NotPSR0
-{
-}
diff --git a/vendor/symfony/debug/Tests/Fixtures2/RequiredTwice.php b/vendor/symfony/debug/Tests/Fixtures2/RequiredTwice.php
deleted file mode 100644
index 604bc37..0000000
--- a/vendor/symfony/debug/Tests/Fixtures2/RequiredTwice.php
+++ /dev/null
@@ -1,7 +0,0 @@
-<?php
-
-namespace Symfony\Component\Debug\Tests\Fixtures2;
-
-class RequiredTwice
-{
-}
diff --git a/vendor/symfony/debug/Tests/HeaderMock.php b/vendor/symfony/debug/Tests/HeaderMock.php
deleted file mode 100644
index 65d0b58..0000000
--- a/vendor/symfony/debug/Tests/HeaderMock.php
+++ /dev/null
@@ -1,38 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Debug;
-
-function headers_sent()
-{
-    return false;
-}
-
-function header($str, $replace = true, $status = null)
-{
-    Tests\testHeader($str, $replace, $status);
-}
-
-namespace Symfony\Component\Debug\Tests;
-
-function testHeader()
-{
-    static $headers = array();
-
-    if (!$h = func_get_args()) {
-        $h = $headers;
-        $headers = array();
-
-        return $h;
-    }
-
-    $headers[] = func_get_args();
-}
diff --git a/vendor/symfony/debug/Tests/MockExceptionHandler.php b/vendor/symfony/debug/Tests/MockExceptionHandler.php
deleted file mode 100644
index a85d2d1..0000000
--- a/vendor/symfony/debug/Tests/MockExceptionHandler.php
+++ /dev/null
@@ -1,24 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Debug\Tests;
-
-use Symfony\Component\Debug\ExceptionHandler;
-
-class MockExceptionHandler extends Exceptionhandler
-{
-    public $e;
-
-    public function handle(\Exception $e)
-    {
-        $this->e = $e;
-    }
-}
diff --git a/vendor/symfony/dependency-injection/Tests/Compiler/AnalyzeServiceReferencesPassTest.php b/vendor/symfony/dependency-injection/Tests/Compiler/AnalyzeServiceReferencesPassTest.php
deleted file mode 100644
index 04fe7c2..0000000
--- a/vendor/symfony/dependency-injection/Tests/Compiler/AnalyzeServiceReferencesPassTest.php
+++ /dev/null
@@ -1,146 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\DependencyInjection\Tests\Compiler;
-
-use Symfony\Component\DependencyInjection\Definition;
-use Symfony\Component\DependencyInjection\Compiler\AnalyzeServiceReferencesPass;
-use Symfony\Component\DependencyInjection\Compiler\RepeatedPass;
-use Symfony\Component\DependencyInjection\Reference;
-use Symfony\Component\DependencyInjection\ContainerBuilder;
-
-class AnalyzeServiceReferencesPassTest extends \PHPUnit_Framework_TestCase
-{
-    public function testProcess()
-    {
-        $container = new ContainerBuilder();
-
-        $a = $container
-            ->register('a')
-            ->addArgument($ref1 = new Reference('b'))
-        ;
-
-        $b = $container
-            ->register('b')
-            ->addMethodCall('setA', array($ref2 = new Reference('a')))
-        ;
-
-        $c = $container
-            ->register('c')
-            ->addArgument($ref3 = new Reference('a'))
-            ->addArgument($ref4 = new Reference('b'))
-        ;
-
-        $d = $container
-            ->register('d')
-            ->setProperty('foo', $ref5 = new Reference('b'))
-        ;
-
-        $e = $container
-            ->register('e')
-            ->setConfigurator(array($ref6 = new Reference('b'), 'methodName'))
-        ;
-
-        $graph = $this->process($container);
-
-        $this->assertCount(4, $edges = $graph->getNode('b')->getInEdges());
-
-        $this->assertSame($ref1, $edges[0]->getValue());
-        $this->assertSame($ref4, $edges[1]->getValue());
-        $this->assertSame($ref5, $edges[2]->getValue());
-        $this->assertSame($ref6, $edges[3]->getValue());
-    }
-
-    public function testProcessDetectsReferencesFromInlinedDefinitions()
-    {
-        $container = new ContainerBuilder();
-
-        $container
-            ->register('a')
-        ;
-
-        $container
-            ->register('b')
-            ->addArgument(new Definition(null, array($ref = new Reference('a'))))
-        ;
-
-        $graph = $this->process($container);
-
-        $this->assertCount(1, $refs = $graph->getNode('a')->getInEdges());
-        $this->assertSame($ref, $refs[0]->getValue());
-    }
-
-    public function testProcessDetectsReferencesFromInlinedFactoryDefinitions()
-    {
-        $container = new ContainerBuilder();
-
-        $container
-            ->register('a')
-        ;
-
-        $factory = new Definition();
-        $factory->setFactory(array(new Reference('a'), 'a'));
-
-        $container
-            ->register('b')
-            ->addArgument($factory)
-        ;
-
-        $graph = $this->process($container);
-
-        $this->assertTrue($graph->hasNode('a'));
-        $this->assertCount(1, $refs = $graph->getNode('a')->getInEdges());
-    }
-
-    public function testProcessDoesNotSaveDuplicateReferences()
-    {
-        $container = new ContainerBuilder();
-
-        $container
-            ->register('a')
-        ;
-        $container
-            ->register('b')
-            ->addArgument(new Definition(null, array($ref1 = new Reference('a'))))
-            ->addArgument(new Definition(null, array($ref2 = new Reference('a'))))
-        ;
-
-        $graph = $this->process($container);
-
-        $this->assertCount(2, $graph->getNode('a')->getInEdges());
-    }
-
-    public function testProcessDetectsFactoryReferences()
-    {
-        $container = new ContainerBuilder();
-
-        $container
-            ->register('foo', 'stdClass')
-            ->setFactory(array('stdClass', 'getInstance'));
-
-        $container
-            ->register('bar', 'stdClass')
-            ->setFactory(array(new Reference('foo'), 'getInstance'));
-
-        $graph = $this->process($container);
-
-        $this->assertTrue($graph->hasNode('foo'));
-        $this->assertCount(1, $graph->getNode('foo')->getInEdges());
-    }
-
-    protected function process(ContainerBuilder $container)
-    {
-        $pass = new RepeatedPass(array(new AnalyzeServiceReferencesPass()));
-        $pass->process($container);
-
-        return $container->getCompiler()->getServiceReferenceGraph();
-    }
-}
diff --git a/vendor/symfony/dependency-injection/Tests/Compiler/AutoAliasServicePassTest.php b/vendor/symfony/dependency-injection/Tests/Compiler/AutoAliasServicePassTest.php
deleted file mode 100644
index e3aba6d..0000000
--- a/vendor/symfony/dependency-injection/Tests/Compiler/AutoAliasServicePassTest.php
+++ /dev/null
@@ -1,112 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\DependencyInjection\Tests\Compiler;
-
-use Symfony\Component\DependencyInjection\Compiler\AutoAliasServicePass;
-use Symfony\Component\DependencyInjection\ContainerBuilder;
-
-class AutoAliasServicePassTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @expectedException \Symfony\Component\DependencyInjection\Exception\ParameterNotFoundException
-     */
-    public function testProcessWithMissingParameter()
-    {
-        $container = new ContainerBuilder();
-
-        $container->register('example')
-          ->addTag('auto_alias', array('format' => '%non_existing%.example'));
-
-        $pass = new AutoAliasServicePass();
-        $pass->process($container);
-    }
-
-    /**
-     * @expectedException \Symfony\Component\DependencyInjection\Exception\InvalidArgumentException
-     */
-    public function testProcessWithMissingFormat()
-    {
-        $container = new ContainerBuilder();
-
-        $container->register('example')
-          ->addTag('auto_alias', array());
-        $container->setParameter('existing', 'mysql');
-
-        $pass = new AutoAliasServicePass();
-        $pass->process($container);
-    }
-
-    public function testProcessWithNonExistingAlias()
-    {
-        $container = new ContainerBuilder();
-
-        $container->register('example', 'Symfony\Component\DependencyInjection\Tests\Compiler\ServiceClassDefault')
-          ->addTag('auto_alias', array('format' => '%existing%.example'));
-        $container->setParameter('existing', 'mysql');
-
-        $pass = new AutoAliasServicePass();
-        $pass->process($container);
-
-        $this->assertEquals('Symfony\Component\DependencyInjection\Tests\Compiler\ServiceClassDefault', $container->getDefinition('example')->getClass());
-        $this->assertInstanceOf('Symfony\Component\DependencyInjection\Tests\Compiler\ServiceClassDefault', $container->get('example'));
-    }
-
-    public function testProcessWithExistingAlias()
-    {
-        $container = new ContainerBuilder();
-
-        $container->register('example', 'Symfony\Component\DependencyInjection\Tests\Compiler\ServiceClassDefault')
-          ->addTag('auto_alias', array('format' => '%existing%.example'));
-
-        $container->register('mysql.example', 'Symfony\Component\DependencyInjection\Tests\Compiler\ServiceClassMysql');
-        $container->setParameter('existing', 'mysql');
-
-        $pass = new AutoAliasServicePass();
-        $pass->process($container);
-
-        $this->assertTrue($container->hasAlias('example'));
-        $this->assertEquals('mysql.example', $container->getAlias('example'));
-        $this->assertInstanceOf('Symfony\Component\DependencyInjection\Tests\Compiler\ServiceClassMysql', $container->get('example'));
-    }
-
-    public function testProcessWithManualAlias()
-    {
-        $container = new ContainerBuilder();
-
-        $container->register('example', 'Symfony\Component\DependencyInjection\Tests\Compiler\ServiceClassDefault')
-          ->addTag('auto_alias', array('format' => '%existing%.example'));
-
-        $container->register('mysql.example', 'Symfony\Component\DependencyInjection\Tests\Compiler\ServiceClassMysql');
-        $container->register('mariadb.example', 'Symfony\Component\DependencyInjection\Tests\Compiler\ServiceClassMariadb');
-        $container->setAlias('example', 'mariadb.example');
-        $container->setParameter('existing', 'mysql');
-
-        $pass = new AutoAliasServicePass();
-        $pass->process($container);
-
-        $this->assertTrue($container->hasAlias('example'));
-        $this->assertEquals('mariadb.example', $container->getAlias('example'));
-        $this->assertInstanceOf('Symfony\Component\DependencyInjection\Tests\Compiler\ServiceClassMariaDb', $container->get('example'));
-    }
-}
-
-class ServiceClassDefault
-{
-}
-
-class ServiceClassMysql extends ServiceClassDefault
-{
-}
-
-class ServiceClassMariaDb extends ServiceClassMysql
-{
-}
diff --git a/vendor/symfony/dependency-injection/Tests/Compiler/CheckCircularReferencesPassTest.php b/vendor/symfony/dependency-injection/Tests/Compiler/CheckCircularReferencesPassTest.php
deleted file mode 100644
index 55351e5..0000000
--- a/vendor/symfony/dependency-injection/Tests/Compiler/CheckCircularReferencesPassTest.php
+++ /dev/null
@@ -1,130 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\DependencyInjection\Tests\Compiler;
-
-use Symfony\Component\DependencyInjection\Reference;
-use Symfony\Component\DependencyInjection\Compiler\CheckCircularReferencesPass;
-use Symfony\Component\DependencyInjection\Compiler\AnalyzeServiceReferencesPass;
-use Symfony\Component\DependencyInjection\Compiler\Compiler;
-use Symfony\Component\DependencyInjection\ContainerBuilder;
-
-class CheckCircularReferencesPassTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @expectedException \Symfony\Component\DependencyInjection\Exception\ServiceCircularReferenceException
-     */
-    public function testProcess()
-    {
-        $container = new ContainerBuilder();
-        $container->register('a')->addArgument(new Reference('b'));
-        $container->register('b')->addArgument(new Reference('a'));
-
-        $this->process($container);
-    }
-
-    /**
-     * @expectedException \Symfony\Component\DependencyInjection\Exception\ServiceCircularReferenceException
-     */
-    public function testProcessWithAliases()
-    {
-        $container = new ContainerBuilder();
-        $container->register('a')->addArgument(new Reference('b'));
-        $container->setAlias('b', 'c');
-        $container->setAlias('c', 'a');
-
-        $this->process($container);
-    }
-
-    /**
-     * @expectedException \Symfony\Component\DependencyInjection\Exception\ServiceCircularReferenceException
-     */
-    public function testProcessWithFactory()
-    {
-        $container = new ContainerBuilder();
-
-        $container
-            ->register('a', 'stdClass')
-            ->setFactory(array(new Reference('b'), 'getInstance'));
-
-        $container
-            ->register('b', 'stdClass')
-            ->setFactory(array(new Reference('a'), 'getInstance'));
-
-        $this->process($container);
-    }
-
-    /**
-     * @expectedException \Symfony\Component\DependencyInjection\Exception\ServiceCircularReferenceException
-     */
-    public function testProcessDetectsIndirectCircularReference()
-    {
-        $container = new ContainerBuilder();
-        $container->register('a')->addArgument(new Reference('b'));
-        $container->register('b')->addArgument(new Reference('c'));
-        $container->register('c')->addArgument(new Reference('a'));
-
-        $this->process($container);
-    }
-
-    /**
-     * @expectedException \Symfony\Component\DependencyInjection\Exception\ServiceCircularReferenceException
-     */
-    public function testProcessDetectsIndirectCircularReferenceWithFactory()
-    {
-        $container = new ContainerBuilder();
-
-        $container->register('a')->addArgument(new Reference('b'));
-
-        $container
-            ->register('b', 'stdClass')
-            ->setFactory(array(new Reference('c'), 'getInstance'));
-
-        $container->register('c')->addArgument(new Reference('a'));
-
-        $this->process($container);
-    }
-
-    /**
-     * @expectedException \Symfony\Component\DependencyInjection\Exception\ServiceCircularReferenceException
-     */
-    public function testDeepCircularReference()
-    {
-        $container = new ContainerBuilder();
-        $container->register('a')->addArgument(new Reference('b'));
-        $container->register('b')->addArgument(new Reference('c'));
-        $container->register('c')->addArgument(new Reference('b'));
-
-        $this->process($container);
-    }
-
-    public function testProcessIgnoresMethodCalls()
-    {
-        $container = new ContainerBuilder();
-        $container->register('a')->addArgument(new Reference('b'));
-        $container->register('b')->addMethodCall('setA', array(new Reference('a')));
-
-        $this->process($container);
-    }
-
-    protected function process(ContainerBuilder $container)
-    {
-        $compiler = new Compiler();
-        $passConfig = $compiler->getPassConfig();
-        $passConfig->setOptimizationPasses(array(
-            new AnalyzeServiceReferencesPass(true),
-            new CheckCircularReferencesPass(),
-        ));
-        $passConfig->setRemovingPasses(array());
-
-        $compiler->compile($container);
-    }
-}
diff --git a/vendor/symfony/dependency-injection/Tests/Compiler/CheckDefinitionValidityPassTest.php b/vendor/symfony/dependency-injection/Tests/Compiler/CheckDefinitionValidityPassTest.php
deleted file mode 100644
index 4e8efdc..0000000
--- a/vendor/symfony/dependency-injection/Tests/Compiler/CheckDefinitionValidityPassTest.php
+++ /dev/null
@@ -1,103 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\DependencyInjection\Tests\Compiler;
-
-use Symfony\Component\DependencyInjection\Compiler\CheckDefinitionValidityPass;
-use Symfony\Component\DependencyInjection\ContainerInterface;
-use Symfony\Component\DependencyInjection\ContainerBuilder;
-
-class CheckDefinitionValidityPassTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @expectedException \Symfony\Component\DependencyInjection\Exception\RuntimeException
-     */
-    public function testProcessDetectsSyntheticNonPublicDefinitions()
-    {
-        $container = new ContainerBuilder();
-        $container->register('a')->setSynthetic(true)->setPublic(false);
-
-        $this->process($container);
-    }
-
-    /**
-     * @expectedException \Symfony\Component\DependencyInjection\Exception\RuntimeException
-     */
-    public function testProcessDetectsSyntheticPrototypeDefinitions()
-    {
-        $container = new ContainerBuilder();
-        $container->register('a')->setSynthetic(true)->setScope(ContainerInterface::SCOPE_PROTOTYPE);
-
-        $this->process($container);
-    }
-
-    /**
-     * @expectedException \Symfony\Component\DependencyInjection\Exception\RuntimeException
-     */
-    public function testProcessDetectsNonSyntheticNonAbstractDefinitionWithoutClass()
-    {
-        $container = new ContainerBuilder();
-        $container->register('a')->setSynthetic(false)->setAbstract(false);
-
-        $this->process($container);
-    }
-
-    /**
-     * @expectedException \Symfony\Component\DependencyInjection\Exception\RuntimeException
-     * @group legacy
-     */
-    public function testLegacyProcessDetectsBothFactorySyntaxesUsed()
-    {
-        $container = new ContainerBuilder();
-        $container->register('a')->setFactory(array('a', 'b'))->setFactoryClass('a');
-
-        $this->process($container);
-    }
-
-    public function testProcess()
-    {
-        $container = new ContainerBuilder();
-        $container->register('a', 'class');
-        $container->register('b', 'class')->setSynthetic(true)->setPublic(true);
-        $container->register('c', 'class')->setAbstract(true);
-        $container->register('d', 'class')->setSynthetic(true);
-
-        $this->process($container);
-    }
-
-    public function testValidTags()
-    {
-        $container = new ContainerBuilder();
-        $container->register('a', 'class')->addTag('foo', array('bar' => 'baz'));
-        $container->register('b', 'class')->addTag('foo', array('bar' => null));
-        $container->register('c', 'class')->addTag('foo', array('bar' => 1));
-        $container->register('d', 'class')->addTag('foo', array('bar' => 1.1));
-
-        $this->process($container);
-    }
-
-    /**
-     * @expectedException \Symfony\Component\DependencyInjection\Exception\RuntimeException
-     */
-    public function testInvalidTags()
-    {
-        $container = new ContainerBuilder();
-        $container->register('a', 'class')->addTag('foo', array('bar' => array('baz' => 'baz')));
-
-        $this->process($container);
-    }
-
-    protected function process(ContainerBuilder $container)
-    {
-        $pass = new CheckDefinitionValidityPass();
-        $pass->process($container);
-    }
-}
diff --git a/vendor/symfony/dependency-injection/Tests/Compiler/CheckExceptionOnInvalidReferenceBehaviorPassTest.php b/vendor/symfony/dependency-injection/Tests/Compiler/CheckExceptionOnInvalidReferenceBehaviorPassTest.php
deleted file mode 100644
index 18b605b..0000000
--- a/vendor/symfony/dependency-injection/Tests/Compiler/CheckExceptionOnInvalidReferenceBehaviorPassTest.php
+++ /dev/null
@@ -1,70 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\DependencyInjection\Tests\Compiler;
-
-use Symfony\Component\DependencyInjection\Definition;
-use Symfony\Component\DependencyInjection\Compiler\CheckExceptionOnInvalidReferenceBehaviorPass;
-use Symfony\Component\DependencyInjection\Reference;
-use Symfony\Component\DependencyInjection\ContainerBuilder;
-
-class CheckExceptionOnInvalidReferenceBehaviorPassTest extends \PHPUnit_Framework_TestCase
-{
-    public function testProcess()
-    {
-        $container = new ContainerBuilder();
-
-        $container
-            ->register('a', '\stdClass')
-            ->addArgument(new Reference('b'))
-        ;
-        $container->register('b', '\stdClass');
-    }
-
-    /**
-     * @expectedException \Symfony\Component\DependencyInjection\Exception\ServiceNotFoundException
-     */
-    public function testProcessThrowsExceptionOnInvalidReference()
-    {
-        $container = new ContainerBuilder();
-
-        $container
-            ->register('a', '\stdClass')
-            ->addArgument(new Reference('b'))
-        ;
-
-        $this->process($container);
-    }
-
-    /**
-     * @expectedException \Symfony\Component\DependencyInjection\Exception\ServiceNotFoundException
-     */
-    public function testProcessThrowsExceptionOnInvalidReferenceFromInlinedDefinition()
-    {
-        $container = new ContainerBuilder();
-
-        $def = new Definition();
-        $def->addArgument(new Reference('b'));
-
-        $container
-            ->register('a', '\stdClass')
-            ->addArgument($def)
-        ;
-
-        $this->process($container);
-    }
-
-    private function process(ContainerBuilder $container)
-    {
-        $pass = new CheckExceptionOnInvalidReferenceBehaviorPass();
-        $pass->process($container);
-    }
-}
diff --git a/vendor/symfony/dependency-injection/Tests/Compiler/CheckReferenceValidityPassTest.php b/vendor/symfony/dependency-injection/Tests/Compiler/CheckReferenceValidityPassTest.php
deleted file mode 100644
index cd4448a..0000000
--- a/vendor/symfony/dependency-injection/Tests/Compiler/CheckReferenceValidityPassTest.php
+++ /dev/null
@@ -1,97 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\DependencyInjection\Tests\Compiler;
-
-use Symfony\Component\DependencyInjection\Scope;
-use Symfony\Component\DependencyInjection\Compiler\CheckReferenceValidityPass;
-use Symfony\Component\DependencyInjection\ContainerInterface;
-use Symfony\Component\DependencyInjection\Reference;
-use Symfony\Component\DependencyInjection\ContainerBuilder;
-
-class CheckReferenceValidityPassTest extends \PHPUnit_Framework_TestCase
-{
-    public function testProcessIgnoresScopeWideningIfNonStrictReference()
-    {
-        $container = new ContainerBuilder();
-        $container->register('a')->addArgument(new Reference('b', ContainerInterface::EXCEPTION_ON_INVALID_REFERENCE, false));
-        $container->register('b')->setScope('prototype');
-
-        $this->process($container);
-    }
-
-    /**
-     * @expectedException \RuntimeException
-     */
-    public function testProcessDetectsScopeWidening()
-    {
-        $container = new ContainerBuilder();
-        $container->register('a')->addArgument(new Reference('b'));
-        $container->register('b')->setScope('prototype');
-
-        $this->process($container);
-    }
-
-    public function testProcessIgnoresCrossScopeHierarchyReferenceIfNotStrict()
-    {
-        $container = new ContainerBuilder();
-        $container->addScope(new Scope('a'));
-        $container->addScope(new Scope('b'));
-
-        $container->register('a')->setScope('a')->addArgument(new Reference('b', ContainerInterface::EXCEPTION_ON_INVALID_REFERENCE, false));
-        $container->register('b')->setScope('b');
-
-        $this->process($container);
-    }
-
-    /**
-     * @expectedException \RuntimeException
-     */
-    public function testProcessDetectsCrossScopeHierarchyReference()
-    {
-        $container = new ContainerBuilder();
-        $container->addScope(new Scope('a'));
-        $container->addScope(new Scope('b'));
-
-        $container->register('a')->setScope('a')->addArgument(new Reference('b'));
-        $container->register('b')->setScope('b');
-
-        $this->process($container);
-    }
-
-    /**
-     * @expectedException \RuntimeException
-     */
-    public function testProcessDetectsReferenceToAbstractDefinition()
-    {
-        $container = new ContainerBuilder();
-
-        $container->register('a')->setAbstract(true);
-        $container->register('b')->addArgument(new Reference('a'));
-
-        $this->process($container);
-    }
-
-    public function testProcess()
-    {
-        $container = new ContainerBuilder();
-        $container->register('a')->addArgument(new Reference('b'));
-        $container->register('b');
-
-        $this->process($container);
-    }
-
-    protected function process(ContainerBuilder $container)
-    {
-        $pass = new CheckReferenceValidityPass();
-        $pass->process($container);
-    }
-}
diff --git a/vendor/symfony/dependency-injection/Tests/Compiler/DecoratorServicePassTest.php b/vendor/symfony/dependency-injection/Tests/Compiler/DecoratorServicePassTest.php
deleted file mode 100644
index e17961a..0000000
--- a/vendor/symfony/dependency-injection/Tests/Compiler/DecoratorServicePassTest.php
+++ /dev/null
@@ -1,81 +0,0 @@
-<?php
-
-namespace Symfony\Component\DependencyInjection\Tests\Compiler;
-
-use Symfony\Component\DependencyInjection\Alias;
-use Symfony\Component\DependencyInjection\ContainerBuilder;
-use Symfony\Component\DependencyInjection\Compiler\DecoratorServicePass;
-
-class DecoratorServicePassTest extends \PHPUnit_Framework_TestCase
-{
-    public function testProcessWithoutAlias()
-    {
-        $container = new ContainerBuilder();
-        $fooDefinition = $container
-            ->register('foo')
-            ->setPublic(false)
-        ;
-        $fooExtendedDefinition = $container
-            ->register('foo.extended')
-            ->setPublic(true)
-            ->setDecoratedService('foo')
-        ;
-        $barDefinition = $container
-            ->register('bar')
-            ->setPublic(true)
-        ;
-        $barExtendedDefinition = $container
-            ->register('bar.extended')
-            ->setPublic(true)
-            ->setDecoratedService('bar', 'bar.yoo')
-        ;
-
-        $this->process($container);
-
-        $this->assertEquals('foo.extended', $container->getAlias('foo'));
-        $this->assertFalse($container->getAlias('foo')->isPublic());
-
-        $this->assertEquals('bar.extended', $container->getAlias('bar'));
-        $this->assertTrue($container->getAlias('bar')->isPublic());
-
-        $this->assertSame($fooDefinition, $container->getDefinition('foo.extended.inner'));
-        $this->assertFalse($container->getDefinition('foo.extended.inner')->isPublic());
-
-        $this->assertSame($barDefinition, $container->getDefinition('bar.yoo'));
-        $this->assertFalse($container->getDefinition('bar.yoo')->isPublic());
-
-        $this->assertNull($fooExtendedDefinition->getDecoratedService());
-        $this->assertNull($barExtendedDefinition->getDecoratedService());
-    }
-
-    public function testProcessWithAlias()
-    {
-        $container = new ContainerBuilder();
-        $container
-            ->register('foo')
-            ->setPublic(true)
-        ;
-        $container->setAlias('foo.alias', new Alias('foo', false));
-        $fooExtendedDefinition = $container
-            ->register('foo.extended')
-            ->setPublic(true)
-            ->setDecoratedService('foo.alias')
-        ;
-
-        $this->process($container);
-
-        $this->assertEquals('foo.extended', $container->getAlias('foo.alias'));
-        $this->assertFalse($container->getAlias('foo.alias')->isPublic());
-
-        $this->assertEquals('foo', $container->getAlias('foo.extended.inner'));
-        $this->assertFalse($container->getAlias('foo.extended.inner')->isPublic());
-
-        $this->assertNull($fooExtendedDefinition->getDecoratedService());
-    }
-
-    protected function process(ContainerBuilder $container)
-    {
-        $repeatedPass = new DecoratorServicePass();
-        $repeatedPass->process($container);
-    }
-}
diff --git a/vendor/symfony/dependency-injection/Tests/Compiler/ExtensionCompilerPassTest.php b/vendor/symfony/dependency-injection/Tests/Compiler/ExtensionCompilerPassTest.php
deleted file mode 100644
index ef690da..0000000
--- a/vendor/symfony/dependency-injection/Tests/Compiler/ExtensionCompilerPassTest.php
+++ /dev/null
@@ -1,46 +0,0 @@
-<?php
-
-namespace Symfony\Component\DependencyInjection\Tests\Compiler;
-
-use Symfony\Component\DependencyInjection\Compiler\ExtensionCompilerPass;
-
-/**
- * @author Wouter J <wouter@wouterj.nl>
- */
-class ExtensionCompilerPassTest extends \PHPUnit_Framework_TestCase
-{
-    private $container;
-    private $pass;
-
-    public function setUp()
-    {
-        $this->container = $this->getMock('Symfony\Component\DependencyInjection\ContainerBuilder');
-        $this->pass = new ExtensionCompilerPass();
-    }
-
-    public function testProcess()
-    {
-        $extension1 = $this->createExtensionMock(true);
-        $extension1->expects($this->once())->method('process');
-        $extension2 = $this->createExtensionMock(false);
-        $extension3 = $this->createExtensionMock(false);
-        $extension4 = $this->createExtensionMock(true);
-        $extension4->expects($this->once())->method('process');
-
-        $this->container->expects($this->any())
-            ->method('getExtensions')
-            ->will($this->returnValue(array($extension1, $extension2, $extension3, $extension4)))
-        ;
-
-        $this->pass->process($this->container);
-    }
-
-    private function createExtensionMock($hasInlineCompile)
-    {
-        return $this->getMock('Symfony\Component\DependencyInjection\\'.(
-            $hasInlineCompile
-            ? 'Compiler\CompilerPassInterface'
-            : 'Extension\ExtensionInterface'
-        ));
-    }
-}
diff --git a/vendor/symfony/dependency-injection/Tests/Compiler/InlineServiceDefinitionsPassTest.php b/vendor/symfony/dependency-injection/Tests/Compiler/InlineServiceDefinitionsPassTest.php
deleted file mode 100644
index 590ca4c..0000000
--- a/vendor/symfony/dependency-injection/Tests/Compiler/InlineServiceDefinitionsPassTest.php
+++ /dev/null
@@ -1,245 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\DependencyInjection\Tests\Compiler;
-
-use Symfony\Component\DependencyInjection\Scope;
-use Symfony\Component\DependencyInjection\Definition;
-use Symfony\Component\DependencyInjection\Compiler\AnalyzeServiceReferencesPass;
-use Symfony\Component\DependencyInjection\Compiler\RepeatedPass;
-use Symfony\Component\DependencyInjection\Compiler\InlineServiceDefinitionsPass;
-use Symfony\Component\DependencyInjection\Reference;
-use Symfony\Component\DependencyInjection\ContainerBuilder;
-
-class InlineServiceDefinitionsPassTest extends \PHPUnit_Framework_TestCase
-{
-    public function testProcess()
-    {
-        $container = new ContainerBuilder();
-        $container
-            ->register('inlinable.service')
-            ->setPublic(false)
-        ;
-
-        $container
-            ->register('service')
-            ->setArguments(array(new Reference('inlinable.service')))
-        ;
-
-        $this->process($container);
-
-        $arguments = $container->getDefinition('service')->getArguments();
-        $this->assertInstanceOf('Symfony\Component\DependencyInjection\Definition', $arguments[0]);
-        $this->assertSame($container->getDefinition('inlinable.service'), $arguments[0]);
-    }
-
-    public function testProcessDoesNotInlineWhenAliasedServiceIsNotOfPrototypeScope()
-    {
-        $container = new ContainerBuilder();
-        $container
-            ->register('foo')
-            ->setPublic(false)
-        ;
-        $container->setAlias('moo', 'foo');
-
-        $container
-            ->register('service')
-            ->setArguments(array($ref = new Reference('foo')))
-        ;
-
-        $this->process($container);
-
-        $arguments = $container->getDefinition('service')->getArguments();
-        $this->assertSame($ref, $arguments[0]);
-    }
-
-    public function testProcessDoesInlineServiceOfPrototypeScope()
-    {
-        $container = new ContainerBuilder();
-        $container
-            ->register('foo')
-            ->setScope('prototype')
-        ;
-        $container
-            ->register('bar')
-            ->setPublic(false)
-            ->setScope('prototype')
-        ;
-        $container->setAlias('moo', 'bar');
-
-        $container
-            ->register('service')
-            ->setArguments(array(new Reference('foo'), $ref = new Reference('moo'), new Reference('bar')))
-        ;
-
-        $this->process($container);
-
-        $arguments = $container->getDefinition('service')->getArguments();
-        $this->assertEquals($container->getDefinition('foo'), $arguments[0]);
-        $this->assertNotSame($container->getDefinition('foo'), $arguments[0]);
-        $this->assertSame($ref, $arguments[1]);
-        $this->assertEquals($container->getDefinition('bar'), $arguments[2]);
-        $this->assertNotSame($container->getDefinition('bar'), $arguments[2]);
-    }
-
-    public function testProcessInlinesIfMultipleReferencesButAllFromTheSameDefinition()
-    {
-        $container = new ContainerBuilder();
-
-        $a = $container->register('a')->setPublic(false);
-        $b = $container
-            ->register('b')
-            ->addArgument(new Reference('a'))
-            ->addArgument(new Definition(null, array(new Reference('a'))))
-        ;
-
-        $this->process($container);
-
-        $arguments = $b->getArguments();
-        $this->assertSame($a, $arguments[0]);
-
-        $inlinedArguments = $arguments[1]->getArguments();
-        $this->assertSame($a, $inlinedArguments[0]);
-    }
-
-    public function testProcessInlinesPrivateFactoryReference()
-    {
-        $container = new ContainerBuilder();
-
-        $container->register('a')->setPublic(false);
-        $b = $container
-            ->register('b')
-            ->setPublic(false)
-            ->setFactory(array(new Reference('a'), 'a'))
-        ;
-
-        $container
-            ->register('foo')
-            ->setArguments(array(
-                $ref = new Reference('b'),
-            ));
-
-        $this->process($container);
-
-        $inlinedArguments = $container->getDefinition('foo')->getArguments();
-        $this->assertSame($b, $inlinedArguments[0]);
-    }
-
-    public function testProcessDoesNotInlinePrivateFactoryIfReferencedMultipleTimesWithinTheSameDefinition()
-    {
-        $container = new ContainerBuilder();
-        $container
-            ->register('a')
-        ;
-        $container
-            ->register('b')
-            ->setPublic(false)
-            ->setFactory(array(new Reference('a'), 'a'))
-        ;
-
-        $container
-            ->register('foo')
-            ->setArguments(array(
-                    $ref1 = new Reference('b'),
-                    $ref2 = new Reference('b'),
-                ))
-        ;
-        $this->process($container);
-
-        $args = $container->getDefinition('foo')->getArguments();
-        $this->assertSame($ref1, $args[0]);
-        $this->assertSame($ref2, $args[1]);
-    }
-
-    public function testProcessDoesNotInlineReferenceWhenUsedByInlineFactory()
-    {
-        $container = new ContainerBuilder();
-        $container
-            ->register('a')
-        ;
-        $container
-            ->register('b')
-            ->setPublic(false)
-            ->setFactory(array(new Reference('a'), 'a'))
-        ;
-
-        $inlineFactory = new Definition();
-        $inlineFactory->setPublic(false);
-        $inlineFactory->setFactory(array(new Reference('b'), 'b'));
-
-        $container
-            ->register('foo')
-            ->setArguments(array(
-                    $ref = new Reference('b'),
-                    $inlineFactory,
-                ))
-        ;
-        $this->process($container);
-
-        $args = $container->getDefinition('foo')->getArguments();
-        $this->assertSame($ref, $args[0]);
-    }
-
-    public function testProcessInlinesOnlyIfSameScope()
-    {
-        $container = new ContainerBuilder();
-
-        $container->addScope(new Scope('foo'));
-        $a = $container->register('a')->setPublic(false)->setScope('foo');
-        $b = $container->register('b')->addArgument(new Reference('a'));
-
-        $this->process($container);
-        $arguments = $b->getArguments();
-        $this->assertEquals(new Reference('a'), $arguments[0]);
-        $this->assertTrue($container->hasDefinition('a'));
-    }
-
-    public function testProcessDoesNotInlineWhenServiceIsPrivateButLazy()
-    {
-        $container = new ContainerBuilder();
-        $container
-            ->register('foo')
-            ->setPublic(false)
-            ->setLazy(true)
-        ;
-
-        $container
-            ->register('service')
-            ->setArguments(array($ref = new Reference('foo')))
-        ;
-
-        $this->process($container);
-
-        $arguments = $container->getDefinition('service')->getArguments();
-        $this->assertSame($ref, $arguments[0]);
-    }
-
-    public function testProcessDoesNotInlineWhenServiceReferencesItself()
-    {
-        $container = new ContainerBuilder();
-        $container
-            ->register('foo')
-            ->setPublic(false)
-            ->addMethodCall('foo', array($ref = new Reference('foo')))
-        ;
-
-        $this->process($container);
-
-        $calls = $container->getDefinition('foo')->getMethodCalls();
-        $this->assertSame($ref, $calls[0][1][0]);
-    }
-
-    protected function process(ContainerBuilder $container)
-    {
-        $repeatedPass = new RepeatedPass(array(new AnalyzeServiceReferencesPass(), new InlineServiceDefinitionsPass()));
-        $repeatedPass->process($container);
-    }
-}
diff --git a/vendor/symfony/dependency-injection/Tests/Compiler/IntegrationTest.php b/vendor/symfony/dependency-injection/Tests/Compiler/IntegrationTest.php
deleted file mode 100644
index c447940..0000000
--- a/vendor/symfony/dependency-injection/Tests/Compiler/IntegrationTest.php
+++ /dev/null
@@ -1,116 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\DependencyInjection\Tests\Compiler;
-
-use Symfony\Component\DependencyInjection\Alias;
-use Symfony\Component\DependencyInjection\Reference;
-use Symfony\Component\DependencyInjection\ContainerBuilder;
-
-/**
- * This class tests the integration of the different compiler passes.
- */
-class IntegrationTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * This tests that dependencies are correctly processed.
-     *
-     * We're checking that:
-     *
-     *   * A is public, B/C are private
-     *   * A -> C
-     *   * B -> C
-     */
-    public function testProcessRemovesAndInlinesRecursively()
-    {
-        $container = new ContainerBuilder();
-        $container->setResourceTracking(false);
-
-        $a = $container
-            ->register('a', '\stdClass')
-            ->addArgument(new Reference('c'))
-        ;
-
-        $b = $container
-            ->register('b', '\stdClass')
-            ->addArgument(new Reference('c'))
-            ->setPublic(false)
-        ;
-
-        $c = $container
-            ->register('c', '\stdClass')
-            ->setPublic(false)
-        ;
-
-        $container->compile();
-
-        $this->assertTrue($container->hasDefinition('a'));
-        $arguments = $a->getArguments();
-        $this->assertSame($c, $arguments[0]);
-        $this->assertFalse($container->hasDefinition('b'));
-        $this->assertFalse($container->hasDefinition('c'));
-    }
-
-    public function testProcessInlinesReferencesToAliases()
-    {
-        $container = new ContainerBuilder();
-        $container->setResourceTracking(false);
-
-        $a = $container
-            ->register('a', '\stdClass')
-            ->addArgument(new Reference('b'))
-        ;
-
-        $container->setAlias('b', new Alias('c', false));
-
-        $c = $container
-            ->register('c', '\stdClass')
-            ->setPublic(false)
-        ;
-
-        $container->compile();
-
-        $this->assertTrue($container->hasDefinition('a'));
-        $arguments = $a->getArguments();
-        $this->assertSame($c, $arguments[0]);
-        $this->assertFalse($container->hasAlias('b'));
-        $this->assertFalse($container->hasDefinition('c'));
-    }
-
-    public function testProcessInlinesWhenThereAreMultipleReferencesButFromTheSameDefinition()
-    {
-        $container = new ContainerBuilder();
-        $container->setResourceTracking(false);
-
-        $container
-            ->register('a', '\stdClass')
-            ->addArgument(new Reference('b'))
-            ->addMethodCall('setC', array(new Reference('c')))
-        ;
-
-        $container
-            ->register('b', '\stdClass')
-            ->addArgument(new Reference('c'))
-            ->setPublic(false)
-        ;
-
-        $container
-            ->register('c', '\stdClass')
-            ->setPublic(false)
-        ;
-
-        $container->compile();
-
-        $this->assertTrue($container->hasDefinition('a'));
-        $this->assertFalse($container->hasDefinition('b'));
-        $this->assertFalse($container->hasDefinition('c'), 'Service C was not inlined.');
-    }
-}
diff --git a/vendor/symfony/dependency-injection/Tests/Compiler/LegacyResolveParameterPlaceHoldersPassTest.php b/vendor/symfony/dependency-injection/Tests/Compiler/LegacyResolveParameterPlaceHoldersPassTest.php
deleted file mode 100644
index e730a1a..0000000
--- a/vendor/symfony/dependency-injection/Tests/Compiler/LegacyResolveParameterPlaceHoldersPassTest.php
+++ /dev/null
@@ -1,35 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\DependencyInjection\Tests\Compiler;
-
-use Symfony\Component\DependencyInjection\Compiler\ResolveParameterPlaceHoldersPass;
-use Symfony\Component\DependencyInjection\ContainerBuilder;
-
-/**
- * @group legacy
- */
-class LegacyResolveParameterPlaceHoldersPassTest extends \PHPUnit_Framework_TestCase
-{
-    public function testFactoryClassParametersShouldBeResolved()
-    {
-        $compilerPass = new ResolveParameterPlaceHoldersPass();
-
-        $container = new ContainerBuilder();
-        $container->setParameter('foo.factory.class', 'FooFactory');
-        $fooDefinition = $container->register('foo', '%foo.factory.class%');
-        $fooDefinition->setFactoryClass('%foo.factory.class%');
-        $compilerPass->process($container);
-        $fooDefinition = $container->getDefinition('foo');
-
-        $this->assertSame('FooFactory', $fooDefinition->getFactoryClass());
-    }
-}
diff --git a/vendor/symfony/dependency-injection/Tests/Compiler/MergeExtensionConfigurationPassTest.php b/vendor/symfony/dependency-injection/Tests/Compiler/MergeExtensionConfigurationPassTest.php
deleted file mode 100644
index 6e112bb..0000000
--- a/vendor/symfony/dependency-injection/Tests/Compiler/MergeExtensionConfigurationPassTest.php
+++ /dev/null
@@ -1,55 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\DependencyInjection\Tests\Compiler;
-
-use Symfony\Component\DependencyInjection\Compiler\MergeExtensionConfigurationPass;
-use Symfony\Component\DependencyInjection\ContainerBuilder;
-use Symfony\Component\DependencyInjection\ParameterBag\ParameterBag;
-
-class MergeExtensionConfigurationPassTest extends \PHPUnit_Framework_TestCase
-{
-    public function testExpressionLanguageProviderForwarding()
-    {
-        if (true !== class_exists('Symfony\\Component\\ExpressionLanguage\\ExpressionLanguage')) {
-            $this->markTestSkipped('The ExpressionLanguage component isn\'t available!');
-        }
-
-        $tmpProviders = array();
-
-        $extension = $this->getMock('Symfony\\Component\\DependencyInjection\\Extension\\ExtensionInterface');
-        $extension->expects($this->any())
-            ->method('getXsdValidationBasePath')
-            ->will($this->returnValue(false));
-        $extension->expects($this->any())
-            ->method('getNamespace')
-            ->will($this->returnValue('http://example.org/schema/dic/foo'));
-        $extension->expects($this->any())
-            ->method('getAlias')
-            ->will($this->returnValue('foo'));
-        $extension->expects($this->once())
-            ->method('load')
-            ->will($this->returnCallback(function (array $config, ContainerBuilder $container) use (&$tmpProviders) {
-                $tmpProviders = $container->getExpressionLanguageProviders();
-            }));
-
-        $provider = $this->getMock('Symfony\\Component\\ExpressionLanguage\\ExpressionFunctionProviderInterface');
-        $container = new ContainerBuilder(new ParameterBag());
-        $container->registerExtension($extension);
-        $container->prependExtensionConfig('foo', array('bar' => true));
-        $container->addExpressionLanguageProvider($provider);
-
-        $pass = new MergeExtensionConfigurationPass();
-        $pass->process($container);
-
-        $this->assertEquals(array($provider), $tmpProviders);
-    }
-}
diff --git a/vendor/symfony/dependency-injection/Tests/Compiler/RemoveUnusedDefinitionsPassTest.php b/vendor/symfony/dependency-injection/Tests/Compiler/RemoveUnusedDefinitionsPassTest.php
deleted file mode 100644
index 82149eb..0000000
--- a/vendor/symfony/dependency-injection/Tests/Compiler/RemoveUnusedDefinitionsPassTest.php
+++ /dev/null
@@ -1,113 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\DependencyInjection\Tests\Compiler;
-
-use Symfony\Component\DependencyInjection\Compiler\AnalyzeServiceReferencesPass;
-use Symfony\Component\DependencyInjection\Compiler\RepeatedPass;
-use Symfony\Component\DependencyInjection\Compiler\RemoveUnusedDefinitionsPass;
-use Symfony\Component\DependencyInjection\Definition;
-use Symfony\Component\DependencyInjection\Reference;
-use Symfony\Component\DependencyInjection\ContainerBuilder;
-
-class RemoveUnusedDefinitionsPassTest extends \PHPUnit_Framework_TestCase
-{
-    public function testProcess()
-    {
-        $container = new ContainerBuilder();
-        $container
-            ->register('foo')
-            ->setPublic(false)
-        ;
-        $container
-            ->register('bar')
-            ->setPublic(false)
-        ;
-        $container
-            ->register('moo')
-            ->setArguments(array(new Reference('bar')))
-        ;
-
-        $this->process($container);
-
-        $this->assertFalse($container->hasDefinition('foo'));
-        $this->assertTrue($container->hasDefinition('bar'));
-        $this->assertTrue($container->hasDefinition('moo'));
-    }
-
-    public function testProcessRemovesUnusedDefinitionsRecursively()
-    {
-        $container = new ContainerBuilder();
-        $container
-            ->register('foo')
-            ->setPublic(false)
-        ;
-        $container
-            ->register('bar')
-            ->setArguments(array(new Reference('foo')))
-            ->setPublic(false)
-        ;
-
-        $this->process($container);
-
-        $this->assertFalse($container->hasDefinition('foo'));
-        $this->assertFalse($container->hasDefinition('bar'));
-    }
-
-    public function testProcessWorksWithInlinedDefinitions()
-    {
-        $container = new ContainerBuilder();
-        $container
-            ->register('foo')
-            ->setPublic(false)
-        ;
-        $container
-            ->register('bar')
-            ->setArguments(array(new Definition(null, array(new Reference('foo')))))
-        ;
-
-        $this->process($container);
-
-        $this->assertTrue($container->hasDefinition('foo'));
-        $this->assertTrue($container->hasDefinition('bar'));
-    }
-
-    public function testProcessWontRemovePrivateFactory()
-    {
-        $container = new ContainerBuilder();
-
-        $container
-            ->register('foo', 'stdClass')
-            ->setFactory(array('stdClass', 'getInstance'))
-            ->setPublic(false);
-
-        $container
-            ->register('bar', 'stdClass')
-            ->setFactory(array(new Reference('foo'), 'getInstance'))
-            ->setPublic(false);
-
-        $container
-            ->register('foobar')
-            ->addArgument(new Reference('bar'));
-
-        $this->process($container);
-
-        $this->assertTrue($container->hasDefinition('foo'));
-        $this->assertTrue($container->hasDefinition('bar'));
-        $this->assertTrue($container->hasDefinition('foobar'));
-    }
-
-    protected function process(ContainerBuilder $container)
-    {
-        $repeatedPass = new RepeatedPass(array(new AnalyzeServiceReferencesPass(), new RemoveUnusedDefinitionsPass()));
-        $repeatedPass->process($container);
-    }
-}
diff --git a/vendor/symfony/dependency-injection/Tests/Compiler/ReplaceAliasByActualDefinitionPassTest.php b/vendor/symfony/dependency-injection/Tests/Compiler/ReplaceAliasByActualDefinitionPassTest.php
deleted file mode 100644
index e4d2240..0000000
--- a/vendor/symfony/dependency-injection/Tests/Compiler/ReplaceAliasByActualDefinitionPassTest.php
+++ /dev/null
@@ -1,59 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\DependencyInjection\Tests\Compiler;
-
-use Symfony\Component\DependencyInjection\Compiler\ReplaceAliasByActualDefinitionPass;
-use Symfony\Component\DependencyInjection\ContainerBuilder;
-use Symfony\Component\DependencyInjection\Definition;
-
-class ReplaceAliasByActualDefinitionPassTest extends \PHPUnit_Framework_TestCase
-{
-    public function testProcess()
-    {
-        $container = new ContainerBuilder();
-
-        $container->register('a', '\stdClass');
-
-        $bDefinition = new Definition('\stdClass');
-        $bDefinition->setPublic(false);
-        $container->setDefinition('b', $bDefinition);
-
-        $container->setAlias('a_alias', 'a');
-        $container->setAlias('b_alias', 'b');
-
-        $this->process($container);
-
-        $this->assertTrue($container->has('a'), '->process() does nothing to public definitions.');
-        $this->assertTrue($container->hasAlias('a_alias'));
-        $this->assertFalse($container->has('b'), '->process() removes non-public definitions.');
-        $this->assertTrue(
-            $container->has('b_alias') && !$container->hasAlias('b_alias'),
-            '->process() replaces alias to actual.'
-        );
-    }
-
-    /**
-     * @expectedException \InvalidArgumentException
-     */
-    public function testProcessWithInvalidAlias()
-    {
-        $container = new ContainerBuilder();
-        $container->setAlias('a_alias', 'a');
-        $this->process($container);
-    }
-
-    protected function process(ContainerBuilder $container)
-    {
-        $pass = new ReplaceAliasByActualDefinitionPass();
-        $pass->process($container);
-    }
-}
diff --git a/vendor/symfony/dependency-injection/Tests/Compiler/ResolveDefinitionTemplatesPassTest.php b/vendor/symfony/dependency-injection/Tests/Compiler/ResolveDefinitionTemplatesPassTest.php
deleted file mode 100644
index 845edd2..0000000
--- a/vendor/symfony/dependency-injection/Tests/Compiler/ResolveDefinitionTemplatesPassTest.php
+++ /dev/null
@@ -1,215 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\DependencyInjection\Tests\Compiler;
-
-use Symfony\Component\DependencyInjection\ContainerInterface;
-use Symfony\Component\DependencyInjection\DefinitionDecorator;
-use Symfony\Component\DependencyInjection\Compiler\ResolveDefinitionTemplatesPass;
-use Symfony\Component\DependencyInjection\ContainerBuilder;
-
-class ResolveDefinitionTemplatesPassTest extends \PHPUnit_Framework_TestCase
-{
-    public function testProcess()
-    {
-        $container = new ContainerBuilder();
-        $container->register('parent', 'foo')->setArguments(array('moo', 'b'))->setProperty('foo', 'moo');
-        $container->setDefinition('child', new DefinitionDecorator('parent'))
-            ->replaceArgument(0, 'a')
-            ->setProperty('foo', 'bar')
-            ->setClass('bar')
-        ;
-
-        $this->process($container);
-
-        $def = $container->getDefinition('child');
-        $this->assertNotInstanceOf('Symfony\Component\DependencyInjection\DefinitionDecorator', $def);
-        $this->assertEquals('bar', $def->getClass());
-        $this->assertEquals(array('a', 'b'), $def->getArguments());
-        $this->assertEquals(array('foo' => 'bar'), $def->getProperties());
-    }
-
-    public function testProcessAppendsMethodCallsAlways()
-    {
-        $container = new ContainerBuilder();
-
-        $container
-            ->register('parent')
-            ->addMethodCall('foo', array('bar'))
-        ;
-
-        $container
-            ->setDefinition('child', new DefinitionDecorator('parent'))
-            ->addMethodCall('bar', array('foo'))
-        ;
-
-        $this->process($container);
-
-        $def = $container->getDefinition('child');
-        $this->assertEquals(array(
-            array('foo', array('bar')),
-            array('bar', array('foo')),
-        ), $def->getMethodCalls());
-    }
-
-    public function testProcessDoesNotCopyAbstract()
-    {
-        $container = new ContainerBuilder();
-
-        $container
-            ->register('parent')
-            ->setAbstract(true)
-        ;
-
-        $container
-            ->setDefinition('child', new DefinitionDecorator('parent'))
-        ;
-
-        $this->process($container);
-
-        $def = $container->getDefinition('child');
-        $this->assertFalse($def->isAbstract());
-    }
-
-    public function testProcessDoesNotCopyScope()
-    {
-        $container = new ContainerBuilder();
-
-        $container
-            ->register('parent')
-            ->setScope('foo')
-        ;
-
-        $container
-            ->setDefinition('child', new DefinitionDecorator('parent'))
-        ;
-
-        $this->process($container);
-
-        $def = $container->getDefinition('child');
-        $this->assertEquals(ContainerInterface::SCOPE_CONTAINER, $def->getScope());
-    }
-
-    public function testProcessDoesNotCopyTags()
-    {
-        $container = new ContainerBuilder();
-
-        $container
-            ->register('parent')
-            ->addTag('foo')
-        ;
-
-        $container
-            ->setDefinition('child', new DefinitionDecorator('parent'))
-        ;
-
-        $this->process($container);
-
-        $def = $container->getDefinition('child');
-        $this->assertEquals(array(), $def->getTags());
-    }
-
-    public function testProcessDoesNotCopyDecoratedService()
-    {
-        $container = new ContainerBuilder();
-
-        $container
-            ->register('parent')
-            ->setDecoratedService('foo')
-        ;
-
-        $container
-            ->setDefinition('child', new DefinitionDecorator('parent'))
-        ;
-
-        $this->process($container);
-
-        $def = $container->getDefinition('child');
-        $this->assertNull($def->getDecoratedService());
-    }
-
-    public function testProcessHandlesMultipleInheritance()
-    {
-        $container = new ContainerBuilder();
-
-        $container
-            ->register('parent', 'foo')
-            ->setArguments(array('foo', 'bar', 'c'))
-        ;
-
-        $container
-            ->setDefinition('child2', new DefinitionDecorator('child1'))
-            ->replaceArgument(1, 'b')
-        ;
-
-        $container
-            ->setDefinition('child1', new DefinitionDecorator('parent'))
-            ->replaceArgument(0, 'a')
-        ;
-
-        $this->process($container);
-
-        $def = $container->getDefinition('child2');
-        $this->assertEquals(array('a', 'b', 'c'), $def->getArguments());
-        $this->assertEquals('foo', $def->getClass());
-    }
-
-    public function testSetLazyOnServiceHasParent()
-    {
-        $container = new ContainerBuilder();
-
-        $container->register('parent', 'stdClass');
-
-        $container->setDefinition('child1', new DefinitionDecorator('parent'))
-            ->setLazy(true)
-        ;
-
-        $this->process($container);
-
-        $this->assertTrue($container->getDefinition('child1')->isLazy());
-    }
-
-    public function testSetLazyOnServiceIsParent()
-    {
-        $container = new ContainerBuilder();
-
-        $container->register('parent', 'stdClass')
-            ->setLazy(true)
-        ;
-
-        $container->setDefinition('child1', new DefinitionDecorator('parent'));
-
-        $this->process($container);
-
-        $this->assertTrue($container->getDefinition('child1')->isLazy());
-    }
-
-    public function testSetDecoratedServiceOnServiceHasParent()
-    {
-        $container = new ContainerBuilder();
-
-        $container->register('parent', 'stdClass');
-
-        $container->setDefinition('child1', new DefinitionDecorator('parent'))
-            ->setDecoratedService('foo', 'foo_inner')
-        ;
-
-        $this->process($container);
-
-        $this->assertEquals(array('foo', 'foo_inner'), $container->getDefinition('child1')->getDecoratedService());
-    }
-
-    protected function process(ContainerBuilder $container)
-    {
-        $pass = new ResolveDefinitionTemplatesPass();
-        $pass->process($container);
-    }
-}
diff --git a/vendor/symfony/dependency-injection/Tests/Compiler/ResolveInvalidReferencesPassTest.php b/vendor/symfony/dependency-injection/Tests/Compiler/ResolveInvalidReferencesPassTest.php
deleted file mode 100644
index 7205886..0000000
--- a/vendor/symfony/dependency-injection/Tests/Compiler/ResolveInvalidReferencesPassTest.php
+++ /dev/null
@@ -1,83 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\DependencyInjection\Tests\Compiler;
-
-use Symfony\Component\DependencyInjection\ContainerInterface;
-use Symfony\Component\DependencyInjection\Reference;
-use Symfony\Component\DependencyInjection\Compiler\ResolveInvalidReferencesPass;
-use Symfony\Component\DependencyInjection\ContainerBuilder;
-
-class ResolveInvalidReferencesPassTest extends \PHPUnit_Framework_TestCase
-{
-    public function testProcess()
-    {
-        $container = new ContainerBuilder();
-        $def = $container
-            ->register('foo')
-            ->setArguments(array(new Reference('bar', ContainerInterface::NULL_ON_INVALID_REFERENCE)))
-            ->addMethodCall('foo', array(new Reference('moo', ContainerInterface::IGNORE_ON_INVALID_REFERENCE)))
-        ;
-
-        $this->process($container);
-
-        $arguments = $def->getArguments();
-        $this->assertNull($arguments[0]);
-        $this->assertCount(0, $def->getMethodCalls());
-    }
-
-    public function testProcessIgnoreNonExistentServices()
-    {
-        $container = new ContainerBuilder();
-        $def = $container
-            ->register('foo')
-            ->setArguments(array(new Reference('bar')))
-        ;
-
-        $this->process($container);
-
-        $arguments = $def->getArguments();
-        $this->assertEquals('bar', (string) $arguments[0]);
-    }
-
-    public function testProcessRemovesPropertiesOnInvalid()
-    {
-        $container = new ContainerBuilder();
-        $def = $container
-            ->register('foo')
-            ->setProperty('foo', new Reference('bar', ContainerInterface::IGNORE_ON_INVALID_REFERENCE))
-        ;
-
-        $this->process($container);
-
-        $this->assertEquals(array(), $def->getProperties());
-    }
-
-    public function testStrictFlagIsPreserved()
-    {
-        $container = new ContainerBuilder();
-        $container->register('bar');
-        $def = $container
-            ->register('foo')
-            ->addArgument(new Reference('bar', ContainerInterface::NULL_ON_INVALID_REFERENCE, false))
-        ;
-
-        $this->process($container);
-
-        $this->assertFalse($def->getArgument(0)->isStrict());
-    }
-
-    protected function process(ContainerBuilder $container)
-    {
-        $pass = new ResolveInvalidReferencesPass();
-        $pass->process($container);
-    }
-}
diff --git a/vendor/symfony/dependency-injection/Tests/Compiler/ResolveParameterPlaceHoldersPassTest.php b/vendor/symfony/dependency-injection/Tests/Compiler/ResolveParameterPlaceHoldersPassTest.php
deleted file mode 100644
index 1f604c2..0000000
--- a/vendor/symfony/dependency-injection/Tests/Compiler/ResolveParameterPlaceHoldersPassTest.php
+++ /dev/null
@@ -1,91 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\DependencyInjection\Tests\Compiler;
-
-use Symfony\Component\DependencyInjection\Compiler\ResolveParameterPlaceHoldersPass;
-use Symfony\Component\DependencyInjection\ContainerBuilder;
-
-class ResolveParameterPlaceHoldersPassTest extends \PHPUnit_Framework_TestCase
-{
-    private $compilerPass;
-    private $container;
-    private $fooDefinition;
-
-    protected function setUp()
-    {
-        $this->compilerPass = new ResolveParameterPlaceHoldersPass();
-        $this->container = $this->createContainerBuilder();
-        $this->compilerPass->process($this->container);
-        $this->fooDefinition = $this->container->getDefinition('foo');
-    }
-
-    public function testClassParametersShouldBeResolved()
-    {
-        $this->assertSame('Foo', $this->fooDefinition->getClass());
-    }
-
-    public function testFactoryParametersShouldBeResolved()
-    {
-        $this->assertSame(array('FooFactory', 'getFoo'), $this->fooDefinition->getFactory());
-    }
-
-    public function testArgumentParametersShouldBeResolved()
-    {
-        $this->assertSame(array('bar', 'baz'), $this->fooDefinition->getArguments());
-    }
-
-    public function testMethodCallParametersShouldBeResolved()
-    {
-        $this->assertSame(array(array('foobar', array('bar', 'baz'))), $this->fooDefinition->getMethodCalls());
-    }
-
-    public function testPropertyParametersShouldBeResolved()
-    {
-        $this->assertSame(array('bar' => 'baz'), $this->fooDefinition->getProperties());
-    }
-
-    public function testFileParametersShouldBeResolved()
-    {
-        $this->assertSame('foo.php', $this->fooDefinition->getFile());
-    }
-
-    public function testAliasParametersShouldBeResolved()
-    {
-        $this->assertSame('foo', $this->container->getAlias('bar')->__toString());
-    }
-
-    private function createContainerBuilder()
-    {
-        $containerBuilder = new ContainerBuilder();
-
-        $containerBuilder->setParameter('foo.class', 'Foo');
-        $containerBuilder->setParameter('foo.factory.class', 'FooFactory');
-        $containerBuilder->setParameter('foo.arg1', 'bar');
-        $containerBuilder->setParameter('foo.arg2', 'baz');
-        $containerBuilder->setParameter('foo.method', 'foobar');
-        $containerBuilder->setParameter('foo.property.name', 'bar');
-        $containerBuilder->setParameter('foo.property.value', 'baz');
-        $containerBuilder->setParameter('foo.file', 'foo.php');
-        $containerBuilder->setParameter('alias.id', 'bar');
-
-        $fooDefinition = $containerBuilder->register('foo', '%foo.class%');
-        $fooDefinition->setFactory(array('%foo.factory.class%', 'getFoo'));
-        $fooDefinition->setArguments(array('%foo.arg1%', '%foo.arg2%'));
-        $fooDefinition->addMethodCall('%foo.method%', array('%foo.arg1%', '%foo.arg2%'));
-        $fooDefinition->setProperty('%foo.property.name%', '%foo.property.value%');
-        $fooDefinition->setFile('%foo.file%');
-
-        $containerBuilder->setAlias('%alias.id%', 'foo');
-
-        return $containerBuilder;
-    }
-}
diff --git a/vendor/symfony/dependency-injection/Tests/Compiler/ResolveReferencesToAliasesPassTest.php b/vendor/symfony/dependency-injection/Tests/Compiler/ResolveReferencesToAliasesPassTest.php
deleted file mode 100644
index 6fdc233..0000000
--- a/vendor/symfony/dependency-injection/Tests/Compiler/ResolveReferencesToAliasesPassTest.php
+++ /dev/null
@@ -1,67 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\DependencyInjection\Tests\Compiler;
-
-use Symfony\Component\DependencyInjection\Reference;
-use Symfony\Component\DependencyInjection\Compiler\ResolveReferencesToAliasesPass;
-use Symfony\Component\DependencyInjection\ContainerBuilder;
-
-class ResolveReferencesToAliasesPassTest extends \PHPUnit_Framework_TestCase
-{
-    public function testProcess()
-    {
-        $container = new ContainerBuilder();
-        $container->setAlias('bar', 'foo');
-        $def = $container
-            ->register('moo')
-            ->setArguments(array(new Reference('bar')))
-        ;
-
-        $this->process($container);
-
-        $arguments = $def->getArguments();
-        $this->assertEquals('foo', (string) $arguments[0]);
-    }
-
-    public function testProcessRecursively()
-    {
-        $container = new ContainerBuilder();
-        $container->setAlias('bar', 'foo');
-        $container->setAlias('moo', 'bar');
-        $def = $container
-            ->register('foobar')
-            ->setArguments(array(new Reference('moo')))
-        ;
-
-        $this->process($container);
-
-        $arguments = $def->getArguments();
-        $this->assertEquals('foo', (string) $arguments[0]);
-    }
-
-    /**
-     * @expectedException \Symfony\Component\DependencyInjection\Exception\ServiceCircularReferenceException
-     */
-    public function testAliasCircularReference()
-    {
-        $container = new ContainerBuilder();
-        $container->setAlias('bar', 'foo');
-        $container->setAlias('foo', 'bar');
-        $this->process($container);
-    }
-
-    protected function process(ContainerBuilder $container)
-    {
-        $pass = new ResolveReferencesToAliasesPass();
-        $pass->process($container);
-    }
-}
diff --git a/vendor/symfony/dependency-injection/Tests/ContainerBuilderTest.php b/vendor/symfony/dependency-injection/Tests/ContainerBuilderTest.php
deleted file mode 100644
index 8155e0b..0000000
--- a/vendor/symfony/dependency-injection/Tests/ContainerBuilderTest.php
+++ /dev/null
@@ -1,858 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\DependencyInjection\Tests;
-
-require_once __DIR__.'/Fixtures/includes/classes.php';
-require_once __DIR__.'/Fixtures/includes/ProjectExtension.php';
-
-use Symfony\Component\Config\Resource\ResourceInterface;
-use Symfony\Component\DependencyInjection\Alias;
-use Symfony\Component\DependencyInjection\ContainerBuilder;
-use Symfony\Component\DependencyInjection\ContainerInterface;
-use Symfony\Component\DependencyInjection\Definition;
-use Symfony\Component\DependencyInjection\Exception\RuntimeException;
-use Symfony\Component\DependencyInjection\Exception\InactiveScopeException;
-use Symfony\Component\DependencyInjection\Loader\ClosureLoader;
-use Symfony\Component\DependencyInjection\Reference;
-use Symfony\Component\DependencyInjection\ParameterBag\ParameterBag;
-use Symfony\Component\DependencyInjection\Scope;
-use Symfony\Component\Config\Resource\FileResource;
-use Symfony\Component\ExpressionLanguage\Expression;
-
-class ContainerBuilderTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @covers Symfony\Component\DependencyInjection\ContainerBuilder::setDefinitions
-     * @covers Symfony\Component\DependencyInjection\ContainerBuilder::getDefinitions
-     * @covers Symfony\Component\DependencyInjection\ContainerBuilder::setDefinition
-     * @covers Symfony\Component\DependencyInjection\ContainerBuilder::getDefinition
-     */
-    public function testDefinitions()
-    {
-        $builder = new ContainerBuilder();
-        $definitions = array(
-            'foo' => new Definition('Bar\FooClass'),
-            'bar' => new Definition('BarClass'),
-        );
-        $builder->setDefinitions($definitions);
-        $this->assertEquals($definitions, $builder->getDefinitions(), '->setDefinitions() sets the service definitions');
-        $this->assertTrue($builder->hasDefinition('foo'), '->hasDefinition() returns true if a service definition exists');
-        $this->assertFalse($builder->hasDefinition('foobar'), '->hasDefinition() returns false if a service definition does not exist');
-
-        $builder->setDefinition('foobar', $foo = new Definition('FooBarClass'));
-        $this->assertEquals($foo, $builder->getDefinition('foobar'), '->getDefinition() returns a service definition if defined');
-        $this->assertTrue($builder->setDefinition('foobar', $foo = new Definition('FooBarClass')) === $foo, '->setDefinition() implements a fluid interface by returning the service reference');
-
-        $builder->addDefinitions($defs = array('foobar' => new Definition('FooBarClass')));
-        $this->assertEquals(array_merge($definitions, $defs), $builder->getDefinitions(), '->addDefinitions() adds the service definitions');
-
-        try {
-            $builder->getDefinition('baz');
-            $this->fail('->getDefinition() throws an InvalidArgumentException if the service definition does not exist');
-        } catch (\InvalidArgumentException $e) {
-            $this->assertEquals('The service definition "baz" does not exist.', $e->getMessage(), '->getDefinition() throws an InvalidArgumentException if the service definition does not exist');
-        }
-    }
-
-    /**
-     * @covers Symfony\Component\DependencyInjection\ContainerBuilder::register
-     */
-    public function testRegister()
-    {
-        $builder = new ContainerBuilder();
-        $builder->register('foo', 'Bar\FooClass');
-        $this->assertTrue($builder->hasDefinition('foo'), '->register() registers a new service definition');
-        $this->assertInstanceOf('Symfony\Component\DependencyInjection\Definition', $builder->getDefinition('foo'), '->register() returns the newly created Definition instance');
-    }
-
-    /**
-     * @covers Symfony\Component\DependencyInjection\ContainerBuilder::has
-     */
-    public function testHas()
-    {
-        $builder = new ContainerBuilder();
-        $this->assertFalse($builder->has('foo'), '->has() returns false if the service does not exist');
-        $builder->register('foo', 'Bar\FooClass');
-        $this->assertTrue($builder->has('foo'), '->has() returns true if a service definition exists');
-        $builder->set('bar', new \stdClass());
-        $this->assertTrue($builder->has('bar'), '->has() returns true if a service exists');
-    }
-
-    /**
-     * @covers Symfony\Component\DependencyInjection\ContainerBuilder::get
-     */
-    public function testGet()
-    {
-        $builder = new ContainerBuilder();
-        try {
-            $builder->get('foo');
-            $this->fail('->get() throws an InvalidArgumentException if the service does not exist');
-        } catch (\InvalidArgumentException $e) {
-            $this->assertEquals('The service definition "foo" does not exist.', $e->getMessage(), '->get() throws an InvalidArgumentException if the service does not exist');
-        }
-
-        $this->assertNull($builder->get('foo', ContainerInterface::NULL_ON_INVALID_REFERENCE), '->get() returns null if the service does not exist and NULL_ON_INVALID_REFERENCE is passed as a second argument');
-
-        $builder->register('foo', 'stdClass');
-        $this->assertInternalType('object', $builder->get('foo'), '->get() returns the service definition associated with the id');
-        $builder->set('bar', $bar = new \stdClass());
-        $this->assertEquals($bar, $builder->get('bar'), '->get() returns the service associated with the id');
-        $builder->register('bar', 'stdClass');
-        $this->assertEquals($bar, $builder->get('bar'), '->get() returns the service associated with the id even if a definition has been defined');
-
-        $builder->register('baz', 'stdClass')->setArguments(array(new Reference('baz')));
-        try {
-            @$builder->get('baz');
-            $this->fail('->get() throws a ServiceCircularReferenceException if the service has a circular reference to itself');
-        } catch (\Symfony\Component\DependencyInjection\Exception\ServiceCircularReferenceException $e) {
-            $this->assertEquals('Circular reference detected for service "baz", path: "baz".', $e->getMessage(), '->get() throws a LogicException if the service has a circular reference to itself');
-        }
-
-        $builder->register('foobar', 'stdClass')->setScope('container');
-        $this->assertTrue($builder->get('bar') === $builder->get('bar'), '->get() always returns the same instance if the service is shared');
-    }
-
-    /**
-     * @covers                   \Symfony\Component\DependencyInjection\ContainerBuilder::get
-     * @expectedException        \Symfony\Component\DependencyInjection\Exception\RuntimeException
-     * @expectedExceptionMessage You have requested a synthetic service ("foo"). The DIC does not know how to construct this service.
-     */
-    public function testGetUnsetLoadingServiceWhenCreateServiceThrowsAnException()
-    {
-        $builder = new ContainerBuilder();
-        $builder->register('foo', 'stdClass')->setSynthetic(true);
-
-        // we expect a RuntimeException here as foo is synthetic
-        try {
-            $builder->get('foo');
-        } catch (RuntimeException $e) {
-        }
-
-        // we must also have the same RuntimeException here
-        $builder->get('foo');
-    }
-
-    /**
-     * @covers Symfony\Component\DependencyInjection\ContainerBuilder::get
-     */
-    public function testGetReturnsNullOnInactiveScope()
-    {
-        $builder = new ContainerBuilder();
-        $builder->register('foo', 'stdClass')->setScope('request');
-
-        $this->assertNull($builder->get('foo', ContainerInterface::NULL_ON_INVALID_REFERENCE));
-    }
-
-    /**
-     * @covers Symfony\Component\DependencyInjection\ContainerBuilder::get
-     */
-    public function testGetReturnsNullOnInactiveScopeWhenServiceIsCreatedByAMethod()
-    {
-        $builder = new ProjectContainer();
-
-        $this->assertNull($builder->get('foobaz', ContainerInterface::NULL_ON_INVALID_REFERENCE));
-    }
-
-    /**
-     * @covers Symfony\Component\DependencyInjection\ContainerBuilder::getServiceIds
-     */
-    public function testGetServiceIds()
-    {
-        $builder = new ContainerBuilder();
-        $builder->register('foo', 'stdClass');
-        $builder->bar = $bar = new \stdClass();
-        $builder->register('bar', 'stdClass');
-        $this->assertEquals(array('foo', 'bar', 'service_container'), $builder->getServiceIds(), '->getServiceIds() returns all defined service ids');
-    }
-
-    /**
-     * @covers Symfony\Component\DependencyInjection\ContainerBuilder::setAlias
-     * @covers Symfony\Component\DependencyInjection\ContainerBuilder::hasAlias
-     * @covers Symfony\Component\DependencyInjection\ContainerBuilder::getAlias
-     */
-    public function testAliases()
-    {
-        $builder = new ContainerBuilder();
-        $builder->register('foo', 'stdClass');
-        $builder->setAlias('bar', 'foo');
-        $this->assertTrue($builder->hasAlias('bar'), '->hasAlias() returns true if the alias exists');
-        $this->assertFalse($builder->hasAlias('foobar'), '->hasAlias() returns false if the alias does not exist');
-        $this->assertEquals('foo', (string) $builder->getAlias('bar'), '->getAlias() returns the aliased service');
-        $this->assertTrue($builder->has('bar'), '->setAlias() defines a new service');
-        $this->assertTrue($builder->get('bar') === $builder->get('foo'), '->setAlias() creates a service that is an alias to another one');
-
-        try {
-            $builder->setAlias('foobar', 'foobar');
-            $this->fail('->setAlias() throws an InvalidArgumentException if the alias references itself');
-        } catch (\InvalidArgumentException $e) {
-            $this->assertEquals('An alias can not reference itself, got a circular reference on "foobar".', $e->getMessage(), '->setAlias() throws an InvalidArgumentException if the alias references itself');
-        }
-
-        try {
-            $builder->getAlias('foobar');
-            $this->fail('->getAlias() throws an InvalidArgumentException if the alias does not exist');
-        } catch (\InvalidArgumentException $e) {
-            $this->assertEquals('The service alias "foobar" does not exist.', $e->getMessage(), '->getAlias() throws an InvalidArgumentException if the alias does not exist');
-        }
-    }
-
-    /**
-     * @covers Symfony\Component\DependencyInjection\ContainerBuilder::getAliases
-     */
-    public function testGetAliases()
-    {
-        $builder = new ContainerBuilder();
-        $builder->setAlias('bar', 'foo');
-        $builder->setAlias('foobar', 'foo');
-        $builder->setAlias('moo', new Alias('foo', false));
-
-        $aliases = $builder->getAliases();
-        $this->assertEquals('foo', (string) $aliases['bar']);
-        $this->assertTrue($aliases['bar']->isPublic());
-        $this->assertEquals('foo', (string) $aliases['foobar']);
-        $this->assertEquals('foo', (string) $aliases['moo']);
-        $this->assertFalse($aliases['moo']->isPublic());
-
-        $builder->register('bar', 'stdClass');
-        $this->assertFalse($builder->hasAlias('bar'));
-
-        $builder->set('foobar', 'stdClass');
-        $builder->set('moo', 'stdClass');
-        $this->assertCount(0, $builder->getAliases(), '->getAliases() does not return aliased services that have been overridden');
-    }
-
-    /**
-     * @covers Symfony\Component\DependencyInjection\ContainerBuilder::setAliases
-     */
-    public function testSetAliases()
-    {
-        $builder = new ContainerBuilder();
-        $builder->setAliases(array('bar' => 'foo', 'foobar' => 'foo'));
-
-        $aliases = $builder->getAliases();
-        $this->assertTrue(isset($aliases['bar']));
-        $this->assertTrue(isset($aliases['foobar']));
-    }
-
-    /**
-     * @covers Symfony\Component\DependencyInjection\ContainerBuilder::addAliases
-     */
-    public function testAddAliases()
-    {
-        $builder = new ContainerBuilder();
-        $builder->setAliases(array('bar' => 'foo'));
-        $builder->addAliases(array('foobar' => 'foo'));
-
-        $aliases = $builder->getAliases();
-        $this->assertTrue(isset($aliases['bar']));
-        $this->assertTrue(isset($aliases['foobar']));
-    }
-
-    /**
-     * @covers Symfony\Component\DependencyInjection\ContainerBuilder::addCompilerPass
-     * @covers Symfony\Component\DependencyInjection\ContainerBuilder::getCompilerPassConfig
-     */
-    public function testAddGetCompilerPass()
-    {
-        $builder = new ContainerBuilder();
-        $builder->setResourceTracking(false);
-        $builderCompilerPasses = $builder->getCompiler()->getPassConfig()->getPasses();
-        $builder->addCompilerPass($this->getMock('Symfony\Component\DependencyInjection\Compiler\CompilerPassInterface'));
-
-        $this->assertCount(count($builder->getCompiler()->getPassConfig()->getPasses()) - 1, $builderCompilerPasses);
-    }
-
-    /**
-     * @covers Symfony\Component\DependencyInjection\ContainerBuilder::createService
-     */
-    public function testCreateService()
-    {
-        $builder = new ContainerBuilder();
-        $builder->register('foo1', 'Bar\FooClass')->setFile(__DIR__.'/Fixtures/includes/foo.php');
-        $this->assertInstanceOf('\Bar\FooClass', $builder->get('foo1'), '->createService() requires the file defined by the service definition');
-        $builder->register('foo2', 'Bar\FooClass')->setFile(__DIR__.'/Fixtures/includes/%file%.php');
-        $builder->setParameter('file', 'foo');
-        $this->assertInstanceOf('\Bar\FooClass', $builder->get('foo2'), '->createService() replaces parameters in the file provided by the service definition');
-    }
-
-    /**
-     * @covers Symfony\Component\DependencyInjection\ContainerBuilder::createService
-     */
-    public function testCreateProxyWithRealServiceInstantiator()
-    {
-        $builder = new ContainerBuilder();
-
-        $builder->register('foo1', 'Bar\FooClass')->setFile(__DIR__.'/Fixtures/includes/foo.php');
-        $builder->getDefinition('foo1')->setLazy(true);
-
-        $foo1 = $builder->get('foo1');
-
-        $this->assertSame($foo1, $builder->get('foo1'), 'The same proxy is retrieved on multiple subsequent calls');
-        $this->assertSame('Bar\FooClass', get_class($foo1));
-    }
-
-    /**
-     * @covers Symfony\Component\DependencyInjection\ContainerBuilder::createService
-     */
-    public function testCreateServiceClass()
-    {
-        $builder = new ContainerBuilder();
-        $builder->register('foo1', '%class%');
-        $builder->setParameter('class', 'stdClass');
-        $this->assertInstanceOf('\stdClass', $builder->get('foo1'), '->createService() replaces parameters in the class provided by the service definition');
-    }
-
-    /**
-     * @covers Symfony\Component\DependencyInjection\ContainerBuilder::createService
-     */
-    public function testCreateServiceArguments()
-    {
-        $builder = new ContainerBuilder();
-        $builder->register('bar', 'stdClass');
-        $builder->register('foo1', 'Bar\FooClass')->addArgument(array('foo' => '%value%', '%value%' => 'foo', new Reference('bar'), '%%unescape_it%%'));
-        $builder->setParameter('value', 'bar');
-        $this->assertEquals(array('foo' => 'bar', 'bar' => 'foo', $builder->get('bar'), '%unescape_it%'), $builder->get('foo1')->arguments, '->createService() replaces parameters and service references in the arguments provided by the service definition');
-    }
-
-    /**
-     * @covers Symfony\Component\DependencyInjection\ContainerBuilder::createService
-     */
-    public function testCreateServiceFactory()
-    {
-        $builder = new ContainerBuilder();
-        $builder->register('foo', 'Bar\FooClass')->setFactory('Bar\FooClass::getInstance');
-        $builder->register('qux', 'Bar\FooClass')->setFactory(array('Bar\FooClass', 'getInstance'));
-        $builder->register('bar', 'Bar\FooClass')->setFactory(array(new Definition('Bar\FooClass'), 'getInstance'));
-        $builder->register('baz', 'Bar\FooClass')->setFactory(array(new Reference('bar'), 'getInstance'));
-
-        $this->assertTrue($builder->get('foo')->called, '->createService() calls the factory method to create the service instance');
-        $this->assertTrue($builder->get('qux')->called, '->createService() calls the factory method to create the service instance');
-        $this->assertTrue($builder->get('bar')->called, '->createService() uses anonymous service as factory');
-        $this->assertTrue($builder->get('baz')->called, '->createService() uses another service as factory');
-    }
-
-    public function testLegacyCreateServiceFactory()
-    {
-        $builder = new ContainerBuilder();
-        $builder->register('bar', 'Bar\FooClass');
-        $builder
-            ->register('foo1', 'Bar\FooClass')
-            ->setFactoryClass('%foo_class%')
-            ->setFactoryMethod('getInstance')
-            ->addArgument(array('foo' => '%value%', '%value%' => 'foo', new Reference('bar')))
-        ;
-        $builder->setParameter('value', 'bar');
-        $builder->setParameter('foo_class', 'Bar\FooClass');
-        $this->assertTrue($builder->get('foo1')->called, '->createService() calls the factory method to create the service instance');
-        $this->assertEquals(array('foo' => 'bar', 'bar' => 'foo', $builder->get('bar')), $builder->get('foo1')->arguments, '->createService() passes the arguments to the factory method');
-    }
-
-    /**
-     * @covers Symfony\Component\DependencyInjection\ContainerBuilder::createService
-     */
-    public function testLegacyCreateServiceFactoryService()
-    {
-        $builder = new ContainerBuilder();
-        $builder->register('foo_service', 'Bar\FooClass');
-        $builder
-            ->register('foo', 'Bar\FooClass')
-            ->setFactoryService('%foo_service%')
-            ->setFactoryMethod('getInstance')
-        ;
-        $builder->setParameter('foo_service', 'foo_service');
-        $this->assertTrue($builder->get('foo')->called, '->createService() calls the factory method to create the service instance');
-    }
-
-    /**
-     * @covers Symfony\Component\DependencyInjection\ContainerBuilder::createService
-     */
-    public function testCreateServiceMethodCalls()
-    {
-        $builder = new ContainerBuilder();
-        $builder->register('bar', 'stdClass');
-        $builder->register('foo1', 'Bar\FooClass')->addMethodCall('setBar', array(array('%value%', new Reference('bar'))));
-        $builder->setParameter('value', 'bar');
-        $this->assertEquals(array('bar', $builder->get('bar')), $builder->get('foo1')->bar, '->createService() replaces the values in the method calls arguments');
-    }
-
-    /**
-     * @covers Symfony\Component\DependencyInjection\ContainerBuilder::createService
-     */
-    public function testCreateServiceConfigurator()
-    {
-        $builder = new ContainerBuilder();
-        $builder->register('foo1', 'Bar\FooClass')->setConfigurator('sc_configure');
-        $this->assertTrue($builder->get('foo1')->configured, '->createService() calls the configurator');
-
-        $builder->register('foo2', 'Bar\FooClass')->setConfigurator(array('%class%', 'configureStatic'));
-        $builder->setParameter('class', 'BazClass');
-        $this->assertTrue($builder->get('foo2')->configured, '->createService() calls the configurator');
-
-        $builder->register('baz', 'BazClass');
-        $builder->register('foo3', 'Bar\FooClass')->setConfigurator(array(new Reference('baz'), 'configure'));
-        $this->assertTrue($builder->get('foo3')->configured, '->createService() calls the configurator');
-
-        $builder->register('foo4', 'Bar\FooClass')->setConfigurator(array($builder->getDefinition('baz'), 'configure'));
-        $this->assertTrue($builder->get('foo4')->configured, '->createService() calls the configurator');
-
-        $builder->register('foo5', 'Bar\FooClass')->setConfigurator('foo');
-        try {
-            $builder->get('foo5');
-            $this->fail('->createService() throws an InvalidArgumentException if the configure callable is not a valid callable');
-        } catch (\InvalidArgumentException $e) {
-            $this->assertEquals('The configure callable for class "Bar\FooClass" is not a callable.', $e->getMessage(), '->createService() throws an InvalidArgumentException if the configure callable is not a valid callable');
-        }
-    }
-
-    /**
-     * @covers Symfony\Component\DependencyInjection\ContainerBuilder::createService
-     * @expectedException \RuntimeException
-     */
-    public function testCreateSyntheticService()
-    {
-        $builder = new ContainerBuilder();
-        $builder->register('foo', 'Bar\FooClass')->setSynthetic(true);
-        $builder->get('foo');
-    }
-
-    public function testCreateServiceWithExpression()
-    {
-        $builder = new ContainerBuilder();
-        $builder->setParameter('bar', 'bar');
-        $builder->register('bar', 'BarClass');
-        $builder->register('foo', 'Bar\FooClass')->addArgument(array('foo' => new Expression('service("bar").foo ~ parameter("bar")')));
-        $this->assertEquals('foobar', $builder->get('foo')->arguments['foo']);
-    }
-
-    /**
-     * @covers Symfony\Component\DependencyInjection\ContainerBuilder::resolveServices
-     */
-    public function testResolveServices()
-    {
-        $builder = new ContainerBuilder();
-        $builder->register('foo', 'Bar\FooClass');
-        $this->assertEquals($builder->get('foo'), $builder->resolveServices(new Reference('foo')), '->resolveServices() resolves service references to service instances');
-        $this->assertEquals(array('foo' => array('foo', $builder->get('foo'))), $builder->resolveServices(array('foo' => array('foo', new Reference('foo')))), '->resolveServices() resolves service references to service instances in nested arrays');
-        $this->assertEquals($builder->get('foo'), $builder->resolveServices(new Expression('service("foo")')), '->resolveServices() resolves expressions');
-    }
-
-    /**
-     * @covers Symfony\Component\DependencyInjection\ContainerBuilder::merge
-     */
-    public function testMerge()
-    {
-        $container = new ContainerBuilder(new ParameterBag(array('bar' => 'foo')));
-        $container->setResourceTracking(false);
-        $config = new ContainerBuilder(new ParameterBag(array('foo' => 'bar')));
-        $container->merge($config);
-        $this->assertEquals(array('bar' => 'foo', 'foo' => 'bar'), $container->getParameterBag()->all(), '->merge() merges current parameters with the loaded ones');
-
-        $container = new ContainerBuilder(new ParameterBag(array('bar' => 'foo')));
-        $container->setResourceTracking(false);
-        $config = new ContainerBuilder(new ParameterBag(array('foo' => '%bar%')));
-        $container->merge($config);
-        $container->compile();
-        $this->assertEquals(array('bar' => 'foo', 'foo' => 'foo'), $container->getParameterBag()->all(), '->merge() evaluates the values of the parameters towards already defined ones');
-
-        $container = new ContainerBuilder(new ParameterBag(array('bar' => 'foo')));
-        $container->setResourceTracking(false);
-        $config = new ContainerBuilder(new ParameterBag(array('foo' => '%bar%', 'baz' => '%foo%')));
-        $container->merge($config);
-        $container->compile();
-        $this->assertEquals(array('bar' => 'foo', 'foo' => 'foo', 'baz' => 'foo'), $container->getParameterBag()->all(), '->merge() evaluates the values of the parameters towards already defined ones');
-
-        $container = new ContainerBuilder();
-        $container->setResourceTracking(false);
-        $container->register('foo', 'Bar\FooClass');
-        $container->register('bar', 'BarClass');
-        $config = new ContainerBuilder();
-        $config->setDefinition('baz', new Definition('BazClass'));
-        $config->setAlias('alias_for_foo', 'foo');
-        $container->merge($config);
-        $this->assertEquals(array('foo', 'bar', 'baz'), array_keys($container->getDefinitions()), '->merge() merges definitions already defined ones');
-
-        $aliases = $container->getAliases();
-        $this->assertTrue(isset($aliases['alias_for_foo']));
-        $this->assertEquals('foo', (string) $aliases['alias_for_foo']);
-
-        $container = new ContainerBuilder();
-        $container->setResourceTracking(false);
-        $container->register('foo', 'Bar\FooClass');
-        $config->setDefinition('foo', new Definition('BazClass'));
-        $container->merge($config);
-        $this->assertEquals('BazClass', $container->getDefinition('foo')->getClass(), '->merge() overrides already defined services');
-    }
-
-    /**
-     * @covers Symfony\Component\DependencyInjection\ContainerBuilder::merge
-     * @expectedException \LogicException
-     */
-    public function testMergeLogicException()
-    {
-        $container = new ContainerBuilder();
-        $container->setResourceTracking(false);
-        $container->compile();
-        $container->merge(new ContainerBuilder());
-    }
-
-    /**
-     * @covers Symfony\Component\DependencyInjection\ContainerBuilder::findTaggedServiceIds
-     */
-    public function testfindTaggedServiceIds()
-    {
-        $builder = new ContainerBuilder();
-        $builder
-            ->register('foo', 'Bar\FooClass')
-            ->addTag('foo', array('foo' => 'foo'))
-            ->addTag('bar', array('bar' => 'bar'))
-            ->addTag('foo', array('foofoo' => 'foofoo'))
-        ;
-        $this->assertEquals($builder->findTaggedServiceIds('foo'), array(
-            'foo' => array(
-                array('foo' => 'foo'),
-                array('foofoo' => 'foofoo'),
-            ),
-        ), '->findTaggedServiceIds() returns an array of service ids and its tag attributes');
-        $this->assertEquals(array(), $builder->findTaggedServiceIds('foobar'), '->findTaggedServiceIds() returns an empty array if there is annotated services');
-    }
-
-    /**
-     * @covers Symfony\Component\DependencyInjection\ContainerBuilder::findDefinition
-     */
-    public function testFindDefinition()
-    {
-        $container = new ContainerBuilder();
-        $container->setDefinition('foo', $definition = new Definition('Bar\FooClass'));
-        $container->setAlias('bar', 'foo');
-        $container->setAlias('foobar', 'bar');
-        $this->assertEquals($definition, $container->findDefinition('foobar'), '->findDefinition() returns a Definition');
-    }
-
-    /**
-     * @covers Symfony\Component\DependencyInjection\ContainerBuilder::addObjectResource
-     */
-    public function testAddObjectResource()
-    {
-        $container = new ContainerBuilder();
-
-        $container->setResourceTracking(false);
-        $container->addObjectResource(new \BarClass());
-
-        $this->assertEmpty($container->getResources(), 'No resources get registered without resource tracking');
-
-        $container->setResourceTracking(true);
-        $container->addObjectResource(new \BarClass());
-
-        $resources = $container->getResources();
-
-        $this->assertCount(1, $resources, '1 resource was registered');
-
-        /* @var $resource \Symfony\Component\Config\Resource\FileResource */
-        $resource = end($resources);
-
-        $this->assertInstanceOf('Symfony\Component\Config\Resource\FileResource', $resource);
-        $this->assertSame(realpath(__DIR__.'/Fixtures/includes/classes.php'), realpath($resource->getResource()));
-    }
-
-    /**
-     * @covers Symfony\Component\DependencyInjection\ContainerBuilder::addClassResource
-     */
-    public function testAddClassResource()
-    {
-        $container = new ContainerBuilder();
-
-        $container->setResourceTracking(false);
-        $container->addClassResource(new \ReflectionClass('BarClass'));
-
-        $this->assertEmpty($container->getResources(), 'No resources get registered without resource tracking');
-
-        $container->setResourceTracking(true);
-        $container->addClassResource(new \ReflectionClass('BarClass'));
-
-        $resources = $container->getResources();
-
-        $this->assertCount(1, $resources, '1 resource was registered');
-
-        /* @var $resource \Symfony\Component\Config\Resource\FileResource */
-        $resource = end($resources);
-
-        $this->assertInstanceOf('Symfony\Component\Config\Resource\FileResource', $resource);
-        $this->assertSame(realpath(__DIR__.'/Fixtures/includes/classes.php'), realpath($resource->getResource()));
-    }
-
-    /**
-     * @covers Symfony\Component\DependencyInjection\ContainerBuilder::compile
-     */
-    public function testCompilesClassDefinitionsOfLazyServices()
-    {
-        $container = new ContainerBuilder();
-
-        $this->assertEmpty($container->getResources(), 'No resources get registered without resource tracking');
-
-        $container->register('foo', 'BarClass');
-        $container->getDefinition('foo')->setLazy(true);
-
-        $container->compile();
-
-        $classesPath = realpath(__DIR__.'/Fixtures/includes/classes.php');
-        $matchingResources = array_filter(
-            $container->getResources(),
-            function (ResourceInterface $resource) use ($classesPath) {
-                return $resource instanceof FileResource && $classesPath === realpath($resource->getResource());
-            }
-        );
-
-        $this->assertNotEmpty($matchingResources);
-    }
-
-    /**
-     * @covers Symfony\Component\DependencyInjection\ContainerBuilder::getResources
-     * @covers Symfony\Component\DependencyInjection\ContainerBuilder::addResource
-     */
-    public function testResources()
-    {
-        $container = new ContainerBuilder();
-        $container->addResource($a = new FileResource(__DIR__.'/Fixtures/xml/services1.xml'));
-        $container->addResource($b = new FileResource(__DIR__.'/Fixtures/xml/services2.xml'));
-        $resources = array();
-        foreach ($container->getResources() as $resource) {
-            if (false === strpos($resource, '.php')) {
-                $resources[] = $resource;
-            }
-        }
-        $this->assertEquals(array($a, $b), $resources, '->getResources() returns an array of resources read for the current configuration');
-        $this->assertSame($container, $container->setResources(array()));
-        $this->assertEquals(array(), $container->getResources());
-    }
-
-    /**
-     * @covers Symfony\Component\DependencyInjection\ContainerBuilder::registerExtension
-     * @covers Symfony\Component\DependencyInjection\ContainerBuilder::getExtension
-     */
-    public function testExtension()
-    {
-        $container = new ContainerBuilder();
-        $container->setResourceTracking(false);
-
-        $container->registerExtension($extension = new \ProjectExtension());
-        $this->assertTrue($container->getExtension('project') === $extension, '->registerExtension() registers an extension');
-
-        $this->setExpectedException('LogicException');
-        $container->getExtension('no_registered');
-    }
-
-    public function testRegisteredButNotLoadedExtension()
-    {
-        $extension = $this->getMock('Symfony\\Component\\DependencyInjection\\Extension\\ExtensionInterface');
-        $extension->expects($this->once())->method('getAlias')->will($this->returnValue('project'));
-        $extension->expects($this->never())->method('load');
-
-        $container = new ContainerBuilder();
-        $container->setResourceTracking(false);
-        $container->registerExtension($extension);
-        $container->compile();
-    }
-
-    public function testRegisteredAndLoadedExtension()
-    {
-        $extension = $this->getMock('Symfony\\Component\\DependencyInjection\\Extension\\ExtensionInterface');
-        $extension->expects($this->exactly(2))->method('getAlias')->will($this->returnValue('project'));
-        $extension->expects($this->once())->method('load')->with(array(array('foo' => 'bar')));
-
-        $container = new ContainerBuilder();
-        $container->setResourceTracking(false);
-        $container->registerExtension($extension);
-        $container->loadFromExtension('project', array('foo' => 'bar'));
-        $container->compile();
-    }
-
-    public function testPrivateServiceUser()
-    {
-        $fooDefinition = new Definition('BarClass');
-        $fooUserDefinition = new Definition('BarUserClass', array(new Reference('bar')));
-        $container = new ContainerBuilder();
-        $container->setResourceTracking(false);
-
-        $fooDefinition->setPublic(false);
-
-        $container->addDefinitions(array(
-            'bar' => $fooDefinition,
-            'bar_user' => $fooUserDefinition,
-        ));
-
-        $container->compile();
-        $this->assertInstanceOf('BarClass', $container->get('bar_user')->bar);
-    }
-
-    /**
-     * @expectedException \BadMethodCallException
-     */
-    public function testThrowsExceptionWhenSetServiceOnAFrozenContainer()
-    {
-        $container = new ContainerBuilder();
-        $container->setResourceTracking(false);
-        $container->setDefinition('a', new Definition('stdClass'));
-        $container->compile();
-        $container->set('a', new \stdClass());
-    }
-
-    /**
-     * @expectedException \BadMethodCallException
-     */
-    public function testThrowsExceptionWhenAddServiceOnAFrozenContainer()
-    {
-        $container = new ContainerBuilder();
-        $container->compile();
-        $container->set('a', new \stdClass());
-    }
-
-    public function testNoExceptionWhenSetSyntheticServiceOnAFrozenContainer()
-    {
-        $container = new ContainerBuilder();
-        $def = new Definition('stdClass');
-        $def->setSynthetic(true);
-        $container->setDefinition('a', $def);
-        $container->compile();
-        $container->set('a', $a = new \stdClass());
-        $this->assertEquals($a, $container->get('a'));
-    }
-
-    /**
-     * @group legacy
-     */
-    public function testLegacySetOnSynchronizedService()
-    {
-        $container = new ContainerBuilder();
-        $container->register('baz', 'BazClass')
-            ->setSynchronized(true)
-        ;
-        $container->register('bar', 'BarClass')
-            ->addMethodCall('setBaz', array(new Reference('baz')))
-        ;
-
-        $container->set('baz', $baz = new \BazClass());
-        $this->assertSame($baz, $container->get('bar')->getBaz());
-
-        $container->set('baz', $baz = new \BazClass());
-        $this->assertSame($baz, $container->get('bar')->getBaz());
-    }
-
-    /**
-     * @group legacy
-     */
-    public function testLegacySynchronizedServiceWithScopes()
-    {
-        $container = new ContainerBuilder();
-        $container->addScope(new Scope('foo'));
-        $container->register('baz', 'BazClass')
-            ->setSynthetic(true)
-            ->setSynchronized(true)
-            ->setScope('foo')
-        ;
-        $container->register('bar', 'BarClass')
-            ->addMethodCall('setBaz', array(new Reference('baz', ContainerInterface::NULL_ON_INVALID_REFERENCE, false)))
-        ;
-        $container->compile();
-
-        $container->enterScope('foo');
-        $container->set('baz', $outerBaz = new \BazClass(), 'foo');
-        $this->assertSame($outerBaz, $container->get('bar')->getBaz());
-
-        $container->enterScope('foo');
-        $container->set('baz', $innerBaz = new \BazClass(), 'foo');
-        $this->assertSame($innerBaz, $container->get('bar')->getBaz());
-        $container->leaveScope('foo');
-
-        $this->assertNotSame($innerBaz, $container->get('bar')->getBaz());
-        $this->assertSame($outerBaz, $container->get('bar')->getBaz());
-
-        $container->leaveScope('foo');
-    }
-
-    /**
-     * @expectedException \BadMethodCallException
-     */
-    public function testThrowsExceptionWhenSetDefinitionOnAFrozenContainer()
-    {
-        $container = new ContainerBuilder();
-        $container->setResourceTracking(false);
-        $container->compile();
-        $container->setDefinition('a', new Definition());
-    }
-
-    /**
-     * @covers Symfony\Component\DependencyInjection\ContainerBuilder::getExtensionConfig
-     * @covers Symfony\Component\DependencyInjection\ContainerBuilder::prependExtensionConfig
-     */
-    public function testExtensionConfig()
-    {
-        $container = new ContainerBuilder();
-
-        $configs = $container->getExtensionConfig('foo');
-        $this->assertEmpty($configs);
-
-        $first = array('foo' => 'bar');
-        $container->prependExtensionConfig('foo', $first);
-        $configs = $container->getExtensionConfig('foo');
-        $this->assertEquals(array($first), $configs);
-
-        $second = array('ding' => 'dong');
-        $container->prependExtensionConfig('foo', $second);
-        $configs = $container->getExtensionConfig('foo');
-        $this->assertEquals(array($second, $first), $configs);
-    }
-
-    public function testLazyLoadedService()
-    {
-        $loader = new ClosureLoader($container = new ContainerBuilder());
-        $loader->load(function (ContainerBuilder $container) {
-                $container->set('a', new \BazClass());
-                $definition = new Definition('BazClass');
-                $definition->setLazy(true);
-                $container->setDefinition('a', $definition);
-            }
-        );
-
-        $container->setResourceTracking(true);
-
-        $container->compile();
-
-        $class = new \BazClass();
-        $reflectionClass = new \ReflectionClass($class);
-
-        $r = new \ReflectionProperty($container, 'resources');
-        $r->setAccessible(true);
-        $resources = $r->getValue($container);
-
-        $classInList = false;
-        foreach ($resources as $resource) {
-            if ($resource->getResource() === $reflectionClass->getFileName()) {
-                $classInList = true;
-                break;
-            }
-        }
-
-        $this->assertTrue($classInList);
-    }
-}
-
-class FooClass
-{
-}
-
-class ProjectContainer extends ContainerBuilder
-{
-    public function getFoobazService()
-    {
-        throw new InactiveScopeException('foo', 'request');
-    }
-}
diff --git a/vendor/symfony/dependency-injection/Tests/ContainerTest.php b/vendor/symfony/dependency-injection/Tests/ContainerTest.php
deleted file mode 100644
index 472bd1f..0000000
--- a/vendor/symfony/dependency-injection/Tests/ContainerTest.php
+++ /dev/null
@@ -1,713 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\DependencyInjection\Tests;
-
-use Symfony\Component\DependencyInjection\Scope;
-use Symfony\Component\DependencyInjection\Container;
-use Symfony\Component\DependencyInjection\ContainerInterface;
-use Symfony\Component\DependencyInjection\ParameterBag\ParameterBag;
-use Symfony\Component\DependencyInjection\Exception\InactiveScopeException;
-
-class ContainerTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @covers Symfony\Component\DependencyInjection\Container::__construct
-     */
-    public function testConstructor()
-    {
-        $sc = new Container();
-        $this->assertSame($sc, $sc->get('service_container'), '__construct() automatically registers itself as a service');
-
-        $sc = new Container(new ParameterBag(array('foo' => 'bar')));
-        $this->assertEquals(array('foo' => 'bar'), $sc->getParameterBag()->all(), '__construct() takes an array of parameters as its first argument');
-    }
-
-    /**
-     * @dataProvider dataForTestCamelize
-     */
-    public function testCamelize($id, $expected)
-    {
-        $this->assertEquals($expected, Container::camelize($id), sprintf('Container::camelize("%s")', $id));
-    }
-
-    public function dataForTestCamelize()
-    {
-        return array(
-            array('foo_bar', 'FooBar'),
-            array('foo.bar', 'Foo_Bar'),
-            array('foo.bar_baz', 'Foo_BarBaz'),
-            array('foo._bar', 'Foo_Bar'),
-            array('foo_.bar', 'Foo_Bar'),
-            array('_foo', 'Foo'),
-            array('.foo', '_Foo'),
-            array('foo_', 'Foo'),
-            array('foo.', 'Foo_'),
-            array('foo\bar', 'Foo_Bar'),
-        );
-    }
-
-    /**
-     * @dataProvider dataForTestUnderscore
-     */
-    public function testUnderscore($id, $expected)
-    {
-        $this->assertEquals($expected, Container::underscore($id), sprintf('Container::underscore("%s")', $id));
-    }
-
-    public function dataForTestUnderscore()
-    {
-        return array(
-            array('FooBar', 'foo_bar'),
-            array('Foo_Bar', 'foo.bar'),
-            array('Foo_BarBaz', 'foo.bar_baz'),
-            array('FooBar_BazQux', 'foo_bar.baz_qux'),
-            array('_Foo', '.foo'),
-            array('Foo_', 'foo.'),
-        );
-    }
-
-    /**
-     * @covers Symfony\Component\DependencyInjection\Container::compile
-     */
-    public function testCompile()
-    {
-        $sc = new Container(new ParameterBag(array('foo' => 'bar')));
-        $this->assertFalse($sc->getParameterBag()->isResolved(), '->compile() resolves the parameter bag');
-        $sc->compile();
-        $this->assertTrue($sc->getParameterBag()->isResolved(), '->compile() resolves the parameter bag');
-        $this->assertInstanceOf('Symfony\Component\DependencyInjection\ParameterBag\FrozenParameterBag', $sc->getParameterBag(), '->compile() changes the parameter bag to a FrozenParameterBag instance');
-        $this->assertEquals(array('foo' => 'bar'), $sc->getParameterBag()->all(), '->compile() copies the current parameters to the new parameter bag');
-    }
-
-    /**
-     * @covers Symfony\Component\DependencyInjection\Container::isFrozen
-     */
-    public function testIsFrozen()
-    {
-        $sc = new Container(new ParameterBag(array('foo' => 'bar')));
-        $this->assertFalse($sc->isFrozen(), '->isFrozen() returns false if the parameters are not frozen');
-        $sc->compile();
-        $this->assertTrue($sc->isFrozen(), '->isFrozen() returns true if the parameters are frozen');
-    }
-
-    /**
-     * @covers Symfony\Component\DependencyInjection\Container::getParameterBag
-     */
-    public function testGetParameterBag()
-    {
-        $sc = new Container();
-        $this->assertEquals(array(), $sc->getParameterBag()->all(), '->getParameterBag() returns an empty array if no parameter has been defined');
-    }
-
-    /**
-     * @covers Symfony\Component\DependencyInjection\Container::setParameter
-     * @covers Symfony\Component\DependencyInjection\Container::getParameter
-     */
-    public function testGetSetParameter()
-    {
-        $sc = new Container(new ParameterBag(array('foo' => 'bar')));
-        $sc->setParameter('bar', 'foo');
-        $this->assertEquals('foo', $sc->getParameter('bar'), '->setParameter() sets the value of a new parameter');
-
-        $sc->setParameter('foo', 'baz');
-        $this->assertEquals('baz', $sc->getParameter('foo'), '->setParameter() overrides previously set parameter');
-
-        $sc->setParameter('Foo', 'baz1');
-        $this->assertEquals('baz1', $sc->getParameter('foo'), '->setParameter() converts the key to lowercase');
-        $this->assertEquals('baz1', $sc->getParameter('FOO'), '->getParameter() converts the key to lowercase');
-
-        try {
-            $sc->getParameter('baba');
-            $this->fail('->getParameter() thrown an \InvalidArgumentException if the key does not exist');
-        } catch (\Exception $e) {
-            $this->assertInstanceOf('\InvalidArgumentException', $e, '->getParameter() thrown an \InvalidArgumentException if the key does not exist');
-            $this->assertEquals('You have requested a non-existent parameter "baba".', $e->getMessage(), '->getParameter() thrown an \InvalidArgumentException if the key does not exist');
-        }
-    }
-
-    /**
-     * @covers Symfony\Component\DependencyInjection\Container::getServiceIds
-     */
-    public function testGetServiceIds()
-    {
-        $sc = new Container();
-        $sc->set('foo', $obj = new \stdClass());
-        $sc->set('bar', $obj = new \stdClass());
-        $this->assertEquals(array('service_container', 'foo', 'bar'), $sc->getServiceIds(), '->getServiceIds() returns all defined service ids');
-
-        $sc = new ProjectServiceContainer();
-        $sc->set('foo', $obj = new \stdClass());
-        $this->assertEquals(array('scoped', 'scoped_foo', 'scoped_synchronized_foo', 'inactive', 'bar', 'foo_bar', 'foo.baz', 'circular', 'throw_exception', 'throws_exception_on_service_configuration', 'service_container', 'foo'), $sc->getServiceIds(), '->getServiceIds() returns defined service ids by getXXXService() methods, followed by service ids defined by set()');
-    }
-
-    /**
-     * @covers Symfony\Component\DependencyInjection\Container::set
-     */
-    public function testSet()
-    {
-        $sc = new Container();
-        $sc->set('foo', $foo = new \stdClass());
-        $this->assertEquals($foo, $sc->get('foo'), '->set() sets a service');
-    }
-
-    /**
-     * @covers Symfony\Component\DependencyInjection\Container::set
-     */
-    public function testSetWithNullResetTheService()
-    {
-        $sc = new Container();
-        $sc->set('foo', null);
-        $this->assertFalse($sc->has('foo'), '->set() with null service resets the service');
-    }
-
-    /**
-     * @expectedException \InvalidArgumentException
-     */
-    public function testSetDoesNotAllowPrototypeScope()
-    {
-        $c = new Container();
-        $c->set('foo', new \stdClass(), Container::SCOPE_PROTOTYPE);
-    }
-
-    /**
-     * @expectedException \RuntimeException
-     */
-    public function testSetDoesNotAllowInactiveScope()
-    {
-        $c = new Container();
-        $c->addScope(new Scope('foo'));
-        $c->set('foo', new \stdClass(), 'foo');
-    }
-
-    public function testSetAlsoSetsScopedService()
-    {
-        $c = new Container();
-        $c->addScope(new Scope('foo'));
-        $c->enterScope('foo');
-        $c->set('foo', $foo = new \stdClass(), 'foo');
-
-        $scoped = $this->getField($c, 'scopedServices');
-        $this->assertTrue(isset($scoped['foo']['foo']), '->set() sets a scoped service');
-        $this->assertSame($foo, $scoped['foo']['foo'], '->set() sets a scoped service');
-    }
-
-    public function testSetAlsoCallsSynchronizeService()
-    {
-        $c = new ProjectServiceContainer();
-        $c->addScope(new Scope('foo'));
-        $c->enterScope('foo');
-        $c->set('scoped_synchronized_foo', $bar = new \stdClass(), 'foo');
-        $this->assertTrue($c->synchronized, '->set() calls synchronize*Service() if it is defined for the service');
-    }
-
-    /**
-     * @covers Symfony\Component\DependencyInjection\Container::get
-     */
-    public function testGet()
-    {
-        $sc = new ProjectServiceContainer();
-        $sc->set('foo', $foo = new \stdClass());
-        $this->assertEquals($foo, $sc->get('foo'), '->get() returns the service for the given id');
-        $this->assertEquals($foo, $sc->get('Foo'), '->get() returns the service for the given id, and converts id to lowercase');
-        $this->assertEquals($sc->__bar, $sc->get('bar'), '->get() returns the service for the given id');
-        $this->assertEquals($sc->__foo_bar, $sc->get('foo_bar'), '->get() returns the service if a get*Method() is defined');
-        $this->assertEquals($sc->__foo_baz, $sc->get('foo.baz'), '->get() returns the service if a get*Method() is defined');
-        $this->assertEquals($sc->__foo_baz, $sc->get('foo\\baz'), '->get() returns the service if a get*Method() is defined');
-
-        $sc->set('bar', $bar = new \stdClass());
-        $this->assertEquals($bar, $sc->get('bar'), '->get() prefers to return a service defined with set() than one defined with a getXXXMethod()');
-
-        try {
-            $sc->get('');
-            $this->fail('->get() throws a \InvalidArgumentException exception if the service is empty');
-        } catch (\Exception $e) {
-            $this->assertInstanceOf('Symfony\Component\DependencyInjection\Exception\ServiceNotFoundException', $e, '->get() throws a ServiceNotFoundException exception if the service is empty');
-        }
-        $this->assertNull($sc->get('', ContainerInterface::NULL_ON_INVALID_REFERENCE), '->get() returns null if the service is empty');
-    }
-
-    public function testGetThrowServiceNotFoundException()
-    {
-        $sc = new ProjectServiceContainer();
-        $sc->set('foo', $foo = new \stdClass());
-        $sc->set('bar', $foo = new \stdClass());
-        $sc->set('baz', $foo = new \stdClass());
-
-        try {
-            $sc->get('foo1');
-            $this->fail('->get() throws an Symfony\Component\DependencyInjection\Exception\ServiceNotFoundException if the key does not exist');
-        } catch (\Exception $e) {
-            $this->assertInstanceOf('Symfony\Component\DependencyInjection\Exception\ServiceNotFoundException', $e, '->get() throws an Symfony\Component\DependencyInjection\Exception\ServiceNotFoundException if the key does not exist');
-            $this->assertEquals('You have requested a non-existent service "foo1". Did you mean this: "foo"?', $e->getMessage(), '->get() throws an Symfony\Component\DependencyInjection\Exception\ServiceNotFoundException with some advices');
-        }
-
-        try {
-            $sc->get('bag');
-            $this->fail('->get() throws an Symfony\Component\DependencyInjection\Exception\ServiceNotFoundException if the key does not exist');
-        } catch (\Exception $e) {
-            $this->assertInstanceOf('Symfony\Component\DependencyInjection\Exception\ServiceNotFoundException', $e, '->get() throws an Symfony\Component\DependencyInjection\Exception\ServiceNotFoundException if the key does not exist');
-            $this->assertEquals('You have requested a non-existent service "bag". Did you mean one of these: "bar", "baz"?', $e->getMessage(), '->get() throws an Symfony\Component\DependencyInjection\Exception\ServiceNotFoundException with some advices');
-        }
-    }
-
-    public function testGetCircularReference()
-    {
-        $sc = new ProjectServiceContainer();
-        try {
-            $sc->get('circular');
-            $this->fail('->get() throws a ServiceCircularReferenceException if it contains circular reference');
-        } catch (\Exception $e) {
-            $this->assertInstanceOf('\Symfony\Component\DependencyInjection\Exception\ServiceCircularReferenceException', $e, '->get() throws a ServiceCircularReferenceException if it contains circular reference');
-            $this->assertStringStartsWith('Circular reference detected for service "circular"', $e->getMessage(), '->get() throws a \LogicException if it contains circular reference');
-        }
-    }
-
-    /**
-     * @covers Symfony\Component\DependencyInjection\Container::get
-     */
-    public function testGetReturnsNullOnInactiveScope()
-    {
-        $sc = new ProjectServiceContainer();
-        $this->assertNull($sc->get('inactive', ContainerInterface::NULL_ON_INVALID_REFERENCE));
-    }
-
-    /**
-     * @covers Symfony\Component\DependencyInjection\Container::has
-     */
-    public function testHas()
-    {
-        $sc = new ProjectServiceContainer();
-        $sc->set('foo', new \stdClass());
-        $this->assertFalse($sc->has('foo1'), '->has() returns false if the service does not exist');
-        $this->assertTrue($sc->has('foo'), '->has() returns true if the service exists');
-        $this->assertTrue($sc->has('bar'), '->has() returns true if a get*Method() is defined');
-        $this->assertTrue($sc->has('foo_bar'), '->has() returns true if a get*Method() is defined');
-        $this->assertTrue($sc->has('foo.baz'), '->has() returns true if a get*Method() is defined');
-        $this->assertTrue($sc->has('foo\\baz'), '->has() returns true if a get*Method() is defined');
-    }
-
-    /**
-     * @covers Symfony\Component\DependencyInjection\Container::initialized
-     */
-    public function testInitialized()
-    {
-        $sc = new ProjectServiceContainer();
-        $sc->set('foo', new \stdClass());
-        $this->assertTrue($sc->initialized('foo'), '->initialized() returns true if service is loaded');
-        $this->assertFalse($sc->initialized('foo1'), '->initialized() returns false if service is not loaded');
-        $this->assertFalse($sc->initialized('bar'), '->initialized() returns false if a service is defined, but not currently loaded');
-        $this->assertFalse($sc->initialized('alias'), '->initialized() returns false if an aliased service is not initialized');
-
-        $sc->set('bar', new \stdClass());
-        $this->assertTrue($sc->initialized('alias'), '->initialized() returns true for alias if aliased service is initialized');
-    }
-
-    public function testEnterLeaveCurrentScope()
-    {
-        $container = new ProjectServiceContainer();
-        $container->addScope(new Scope('foo'));
-
-        $container->enterScope('foo');
-        $scoped1 = $container->get('scoped');
-        $scopedFoo1 = $container->get('scoped_foo');
-
-        $container->enterScope('foo');
-        $scoped2 = $container->get('scoped');
-        $scoped3 = $container->get('SCOPED');
-        $scopedFoo2 = $container->get('scoped_foo');
-
-        $container->leaveScope('foo');
-        $scoped4 = $container->get('scoped');
-        $scopedFoo3 = $container->get('scoped_foo');
-
-        $this->assertNotSame($scoped1, $scoped2);
-        $this->assertSame($scoped2, $scoped3);
-        $this->assertSame($scoped1, $scoped4);
-        $this->assertNotSame($scopedFoo1, $scopedFoo2);
-        $this->assertSame($scopedFoo1, $scopedFoo3);
-    }
-
-    public function testEnterLeaveScopeWithChildScopes()
-    {
-        $container = new Container();
-        $container->addScope(new Scope('foo'));
-        $container->addScope(new Scope('bar', 'foo'));
-
-        $this->assertFalse($container->isScopeActive('foo'));
-
-        $container->enterScope('foo');
-        $container->enterScope('bar');
-
-        $this->assertTrue($container->isScopeActive('foo'));
-        $this->assertFalse($container->has('a'));
-
-        $a = new \stdClass();
-        $container->set('a', $a, 'bar');
-
-        $scoped = $this->getField($container, 'scopedServices');
-        $this->assertTrue(isset($scoped['bar']['a']));
-        $this->assertSame($a, $scoped['bar']['a']);
-        $this->assertTrue($container->has('a'));
-
-        $container->leaveScope('foo');
-
-        $scoped = $this->getField($container, 'scopedServices');
-        $this->assertFalse(isset($scoped['bar']));
-        $this->assertFalse($container->isScopeActive('foo'));
-        $this->assertFalse($container->has('a'));
-    }
-
-    public function testEnterScopeRecursivelyWithInactiveChildScopes()
-    {
-        $container = new Container();
-        $container->addScope(new Scope('foo'));
-        $container->addScope(new Scope('bar', 'foo'));
-
-        $this->assertFalse($container->isScopeActive('foo'));
-
-        $container->enterScope('foo');
-
-        $this->assertTrue($container->isScopeActive('foo'));
-        $this->assertFalse($container->isScopeActive('bar'));
-        $this->assertFalse($container->has('a'));
-
-        $a = new \stdClass();
-        $container->set('a', $a, 'foo');
-
-        $scoped = $this->getField($container, 'scopedServices');
-        $this->assertTrue(isset($scoped['foo']['a']));
-        $this->assertSame($a, $scoped['foo']['a']);
-        $this->assertTrue($container->has('a'));
-
-        $container->enterScope('foo');
-
-        $scoped = $this->getField($container, 'scopedServices');
-        $this->assertFalse(isset($scoped['a']));
-        $this->assertTrue($container->isScopeActive('foo'));
-        $this->assertFalse($container->isScopeActive('bar'));
-        $this->assertFalse($container->has('a'));
-
-        $container->enterScope('bar');
-
-        $this->assertTrue($container->isScopeActive('bar'));
-
-        $container->leaveScope('foo');
-
-        $this->assertTrue($container->isScopeActive('foo'));
-        $this->assertFalse($container->isScopeActive('bar'));
-        $this->assertTrue($container->has('a'));
-    }
-
-    public function testEnterChildScopeRecursively()
-    {
-        $container = new Container();
-        $container->addScope(new Scope('foo'));
-        $container->addScope(new Scope('bar', 'foo'));
-
-        $container->enterScope('foo');
-        $container->enterScope('bar');
-
-        $this->assertTrue($container->isScopeActive('bar'));
-        $this->assertFalse($container->has('a'));
-
-        $a = new \stdClass();
-        $container->set('a', $a, 'bar');
-
-        $scoped = $this->getField($container, 'scopedServices');
-        $this->assertTrue(isset($scoped['bar']['a']));
-        $this->assertSame($a, $scoped['bar']['a']);
-        $this->assertTrue($container->has('a'));
-
-        $container->enterScope('bar');
-
-        $scoped = $this->getField($container, 'scopedServices');
-        $this->assertFalse(isset($scoped['a']));
-        $this->assertTrue($container->isScopeActive('foo'));
-        $this->assertTrue($container->isScopeActive('bar'));
-        $this->assertFalse($container->has('a'));
-
-        $container->leaveScope('bar');
-
-        $this->assertTrue($container->isScopeActive('foo'));
-        $this->assertTrue($container->isScopeActive('bar'));
-        $this->assertTrue($container->has('a'));
-    }
-
-    /**
-     * @expectedException \InvalidArgumentException
-     */
-    public function testEnterScopeNotAdded()
-    {
-        $container = new Container();
-        $container->enterScope('foo');
-    }
-
-    /**
-     * @expectedException \RuntimeException
-     */
-    public function testEnterScopeDoesNotAllowInactiveParentScope()
-    {
-        $container = new Container();
-        $container->addScope(new Scope('foo'));
-        $container->addScope(new Scope('bar', 'foo'));
-        $container->enterScope('bar');
-    }
-
-    public function testLeaveScopeNotActive()
-    {
-        $container = new Container();
-        $container->addScope(new Scope('foo'));
-
-        try {
-            $container->leaveScope('foo');
-            $this->fail('->leaveScope() throws a \LogicException if the scope is not active yet');
-        } catch (\Exception $e) {
-            $this->assertInstanceOf('\LogicException', $e, '->leaveScope() throws a \LogicException if the scope is not active yet');
-            $this->assertEquals('The scope "foo" is not active.', $e->getMessage(), '->leaveScope() throws a \LogicException if the scope is not active yet');
-        }
-
-        try {
-            $container->leaveScope('bar');
-            $this->fail('->leaveScope() throws a \LogicException if the scope does not exist');
-        } catch (\Exception $e) {
-            $this->assertInstanceOf('\LogicException', $e, '->leaveScope() throws a \LogicException if the scope does not exist');
-            $this->assertEquals('The scope "bar" is not active.', $e->getMessage(), '->leaveScope() throws a \LogicException if the scope does not exist');
-        }
-    }
-
-    /**
-     * @expectedException \InvalidArgumentException
-     * @dataProvider getBuiltInScopes
-     */
-    public function testAddScopeDoesNotAllowBuiltInScopes($scope)
-    {
-        $container = new Container();
-        $container->addScope(new Scope($scope));
-    }
-
-    /**
-     * @expectedException \InvalidArgumentException
-     */
-    public function testAddScopeDoesNotAllowExistingScope()
-    {
-        $container = new Container();
-        $container->addScope(new Scope('foo'));
-        $container->addScope(new Scope('foo'));
-    }
-
-    /**
-     * @expectedException \InvalidArgumentException
-     * @dataProvider getInvalidParentScopes
-     */
-    public function testAddScopeDoesNotAllowInvalidParentScope($scope)
-    {
-        $c = new Container();
-        $c->addScope(new Scope('foo', $scope));
-    }
-
-    public function testAddScope()
-    {
-        $c = new Container();
-        $c->addScope(new Scope('foo'));
-        $c->addScope(new Scope('bar', 'foo'));
-
-        $this->assertSame(array('foo' => 'container', 'bar' => 'foo'), $this->getField($c, 'scopes'));
-        $this->assertSame(array('foo' => array('bar'), 'bar' => array()), $this->getField($c, 'scopeChildren'));
-
-        $c->addScope(new Scope('baz', 'bar'));
-
-        $this->assertSame(array('foo' => 'container', 'bar' => 'foo', 'baz' => 'bar'), $this->getField($c, 'scopes'));
-        $this->assertSame(array('foo' => array('bar', 'baz'), 'bar' => array('baz'), 'baz' => array()), $this->getField($c, 'scopeChildren'));
-    }
-
-    public function testHasScope()
-    {
-        $c = new Container();
-
-        $this->assertFalse($c->hasScope('foo'));
-        $c->addScope(new Scope('foo'));
-        $this->assertTrue($c->hasScope('foo'));
-    }
-
-    /**
-     * @expectedException \Exception
-     * @expectedExceptionMessage Something went terribly wrong!
-     */
-    public function testGetThrowsException()
-    {
-        $c = new ProjectServiceContainer();
-
-        try {
-            $c->get('throw_exception');
-        } catch (\Exception $e) {
-            // Do nothing.
-        }
-
-        // Retry, to make sure that get*Service() will be called.
-        $c->get('throw_exception');
-    }
-
-    public function testGetThrowsExceptionOnServiceConfiguration()
-    {
-        $c = new ProjectServiceContainer();
-
-        try {
-            $c->get('throws_exception_on_service_configuration');
-        } catch (\Exception $e) {
-            // Do nothing.
-        }
-
-        $this->assertFalse($c->initialized('throws_exception_on_service_configuration'));
-
-        // Retry, to make sure that get*Service() will be called.
-        try {
-            $c->get('throws_exception_on_service_configuration');
-        } catch (\Exception $e) {
-            // Do nothing.
-        }
-        $this->assertFalse($c->initialized('throws_exception_on_service_configuration'));
-    }
-
-    public function testIsScopeActive()
-    {
-        $c = new Container();
-
-        $this->assertFalse($c->isScopeActive('foo'));
-        $c->addScope(new Scope('foo'));
-
-        $this->assertFalse($c->isScopeActive('foo'));
-        $c->enterScope('foo');
-
-        $this->assertTrue($c->isScopeActive('foo'));
-        $c->leaveScope('foo');
-
-        $this->assertFalse($c->isScopeActive('foo'));
-    }
-
-    public function getInvalidParentScopes()
-    {
-        return array(
-            array(ContainerInterface::SCOPE_PROTOTYPE),
-            array('bar'),
-        );
-    }
-
-    public function getBuiltInScopes()
-    {
-        return array(
-            array(ContainerInterface::SCOPE_CONTAINER),
-            array(ContainerInterface::SCOPE_PROTOTYPE),
-        );
-    }
-
-    protected function getField($obj, $field)
-    {
-        $reflection = new \ReflectionProperty($obj, $field);
-        $reflection->setAccessible(true);
-
-        return $reflection->getValue($obj);
-    }
-
-    public function testAlias()
-    {
-        $c = new ProjectServiceContainer();
-
-        $this->assertTrue($c->has('alias'));
-        $this->assertSame($c->get('alias'), $c->get('bar'));
-    }
-}
-
-class ProjectServiceContainer extends Container
-{
-    public $__bar, $__foo_bar, $__foo_baz;
-    public $synchronized;
-
-    public function __construct()
-    {
-        parent::__construct();
-
-        $this->__bar = new \stdClass();
-        $this->__foo_bar = new \stdClass();
-        $this->__foo_baz = new \stdClass();
-        $this->synchronized = false;
-        $this->aliases = array('alias' => 'bar');
-    }
-
-    protected function getScopedService()
-    {
-        if (!$this->isScopeActive('foo')) {
-            throw new \RuntimeException('Invalid call');
-        }
-
-        return $this->services['scoped'] = $this->scopedServices['foo']['scoped'] = new \stdClass();
-    }
-
-    protected function getScopedFooService()
-    {
-        if (!$this->isScopeActive('foo')) {
-            throw new \RuntimeException('invalid call');
-        }
-
-        return $this->services['scoped_foo'] = $this->scopedServices['foo']['scoped_foo'] = new \stdClass();
-    }
-
-    protected function getScopedSynchronizedFooService()
-    {
-        if (!$this->isScopeActive('foo')) {
-            throw new \RuntimeException('invalid call');
-        }
-
-        return $this->services['scoped_bar'] = $this->scopedServices['foo']['scoped_bar'] = new \stdClass();
-    }
-
-    protected function synchronizeScopedSynchronizedFooService()
-    {
-        $this->synchronized = true;
-    }
-
-    protected function getInactiveService()
-    {
-        throw new InactiveScopeException('request', 'request');
-    }
-
-    protected function getBarService()
-    {
-        return $this->__bar;
-    }
-
-    protected function getFooBarService()
-    {
-        return $this->__foo_bar;
-    }
-
-    protected function getFoo_BazService()
-    {
-        return $this->__foo_baz;
-    }
-
-    protected function getCircularService()
-    {
-        return $this->get('circular');
-    }
-
-    protected function getThrowExceptionService()
-    {
-        throw new \Exception('Something went terribly wrong!');
-    }
-
-    protected function getThrowsExceptionOnServiceConfigurationService()
-    {
-        $this->services['throws_exception_on_service_configuration'] = $instance = new \stdClass();
-
-        throw new \Exception('Something was terribly wrong while trying to configure the service!');
-    }
-}
diff --git a/vendor/symfony/dependency-injection/Tests/CrossCheckTest.php b/vendor/symfony/dependency-injection/Tests/CrossCheckTest.php
deleted file mode 100644
index 692d73d..0000000
--- a/vendor/symfony/dependency-injection/Tests/CrossCheckTest.php
+++ /dev/null
@@ -1,96 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\DependencyInjection\Tests;
-
-use Symfony\Component\DependencyInjection\ContainerBuilder;
-use Symfony\Component\Config\FileLocator;
-
-class CrossCheckTest extends \PHPUnit_Framework_TestCase
-{
-    protected static $fixturesPath;
-
-    public static function setUpBeforeClass()
-    {
-        self::$fixturesPath = __DIR__.'/Fixtures/';
-
-        require_once self::$fixturesPath.'/includes/classes.php';
-        require_once self::$fixturesPath.'/includes/foo.php';
-    }
-
-    /**
-     * @dataProvider crossCheckLoadersDumpers
-     */
-    public function testCrossCheck($fixture, $type)
-    {
-        $loaderClass = 'Symfony\\Component\\DependencyInjection\\Loader\\'.ucfirst($type).'FileLoader';
-        $dumperClass = 'Symfony\\Component\\DependencyInjection\\Dumper\\'.ucfirst($type).'Dumper';
-
-        $tmp = tempnam('sf_service_container', 'sf');
-
-        file_put_contents($tmp, file_get_contents(self::$fixturesPath.'/'.$type.'/'.$fixture));
-
-        $container1 = new ContainerBuilder();
-        $loader1 = new $loaderClass($container1, new FileLocator());
-        $loader1->load($tmp);
-
-        $dumper = new $dumperClass($container1);
-        file_put_contents($tmp, $dumper->dump());
-
-        $container2 = new ContainerBuilder();
-        $loader2 = new $loaderClass($container2, new FileLocator());
-        $loader2->load($tmp);
-
-        unlink($tmp);
-
-        $this->assertEquals($container2->getAliases(), $container1->getAliases(), 'loading a dump from a previously loaded container returns the same container');
-        $this->assertEquals($container2->getDefinitions(), $container1->getDefinitions(), 'loading a dump from a previously loaded container returns the same container');
-        $this->assertEquals($container2->getParameterBag()->all(), $container1->getParameterBag()->all(), '->getParameterBag() returns the same value for both containers');
-
-        $this->assertEquals(serialize($container2), serialize($container1), 'loading a dump from a previously loaded container returns the same container');
-
-        $services1 = array();
-        foreach ($container1 as $id => $service) {
-            $services1[$id] = serialize($service);
-        }
-        $services2 = array();
-        foreach ($container2 as $id => $service) {
-            $services2[$id] = serialize($service);
-        }
-
-        unset($services1['service_container'], $services2['service_container']);
-
-        $this->assertEquals($services2, $services1, 'Iterator on the containers returns the same services');
-    }
-
-    public function crossCheckLoadersDumpers()
-    {
-        $tests = array(
-            array('services1.xml', 'xml'),
-            array('services2.xml', 'xml'),
-            array('services6.xml', 'xml'),
-            array('services8.xml', 'xml'),
-            array('services9.xml', 'xml'),
-        );
-
-        if (class_exists('Symfony\Component\Yaml\Yaml')) {
-            $tests = array_merge($tests, array(
-                array('services1.yml', 'yaml'),
-                array('services2.yml', 'yaml'),
-                array('services6.yml', 'yaml'),
-                array('services8.yml', 'yaml'),
-                array('services9.yml', 'yaml'),
-            ));
-        }
-
-        return $tests;
-    }
-}
diff --git a/vendor/symfony/dependency-injection/Tests/DefinitionDecoratorTest.php b/vendor/symfony/dependency-injection/Tests/DefinitionDecoratorTest.php
deleted file mode 100644
index 732eead..0000000
--- a/vendor/symfony/dependency-injection/Tests/DefinitionDecoratorTest.php
+++ /dev/null
@@ -1,144 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\DependencyInjection\Tests;
-
-use Symfony\Component\DependencyInjection\DefinitionDecorator;
-
-class DefinitionDecoratorTest extends \PHPUnit_Framework_TestCase
-{
-    public function testConstructor()
-    {
-        $def = new DefinitionDecorator('foo');
-
-        $this->assertEquals('foo', $def->getParent());
-        $this->assertEquals(array(), $def->getChanges());
-    }
-
-    /**
-     * @dataProvider getPropertyTests
-     */
-    public function testSetProperty($property, $changeKey)
-    {
-        $def = new DefinitionDecorator('foo');
-
-        $getter = 'get'.ucfirst($property);
-        $setter = 'set'.ucfirst($property);
-
-        $this->assertNull($def->$getter());
-        $this->assertSame($def, $def->$setter('foo'));
-        $this->assertEquals('foo', $def->$getter());
-        $this->assertEquals(array($changeKey => true), $def->getChanges());
-    }
-
-    public function getPropertyTests()
-    {
-        return array(
-            array('class', 'class'),
-            array('factory', 'factory'),
-            array('configurator', 'configurator'),
-            array('file', 'file'),
-        );
-    }
-
-    /**
-     * @dataProvider provideLegacyPropertyTests
-     * @group legacy
-     */
-    public function testLegacySetProperty($property, $changeKey)
-    {
-        $def = new DefinitionDecorator('foo');
-
-        $getter = 'get'.ucfirst($property);
-        $setter = 'set'.ucfirst($property);
-
-        $this->assertNull($def->$getter());
-        $this->assertSame($def, $def->$setter('foo'));
-        $this->assertEquals('foo', $def->$getter());
-        $this->assertEquals(array($changeKey => true), $def->getChanges());
-    }
-
-    public function provideLegacyPropertyTests()
-    {
-        return array(
-            array('factoryClass', 'factory_class'),
-            array('factoryMethod', 'factory_method'),
-            array('factoryService', 'factory_service'),
-        );
-    }
-
-    public function testSetPublic()
-    {
-        $def = new DefinitionDecorator('foo');
-
-        $this->assertTrue($def->isPublic());
-        $this->assertSame($def, $def->setPublic(false));
-        $this->assertFalse($def->isPublic());
-        $this->assertEquals(array('public' => true), $def->getChanges());
-    }
-
-    public function testSetLazy()
-    {
-        $def = new DefinitionDecorator('foo');
-
-        $this->assertFalse($def->isLazy());
-        $this->assertSame($def, $def->setLazy(false));
-        $this->assertFalse($def->isLazy());
-        $this->assertEquals(array('lazy' => true), $def->getChanges());
-    }
-
-    public function testSetArgument()
-    {
-        $def = new DefinitionDecorator('foo');
-
-        $this->assertEquals(array(), $def->getArguments());
-        $this->assertSame($def, $def->replaceArgument(0, 'foo'));
-        $this->assertEquals(array('index_0' => 'foo'), $def->getArguments());
-    }
-
-    /**
-     * @expectedException \InvalidArgumentException
-     */
-    public function testReplaceArgumentShouldRequireIntegerIndex()
-    {
-        $def = new DefinitionDecorator('foo');
-
-        $def->replaceArgument('0', 'foo');
-    }
-
-    public function testReplaceArgument()
-    {
-        $def = new DefinitionDecorator('foo');
-
-        $def->setArguments(array(0 => 'foo', 1 => 'bar'));
-        $this->assertEquals('foo', $def->getArgument(0));
-        $this->assertEquals('bar', $def->getArgument(1));
-
-        $this->assertSame($def, $def->replaceArgument(1, 'baz'));
-        $this->assertEquals('foo', $def->getArgument(0));
-        $this->assertEquals('baz', $def->getArgument(1));
-
-        $this->assertEquals(array(0 => 'foo', 1 => 'bar', 'index_1' => 'baz'), $def->getArguments());
-    }
-
-    /**
-     * @expectedException \OutOfBoundsException
-     */
-    public function testGetArgumentShouldCheckBounds()
-    {
-        $def = new DefinitionDecorator('foo');
-
-        $def->setArguments(array(0 => 'foo'));
-        $def->replaceArgument(0, 'foo');
-
-        $def->getArgument(1);
-    }
-}
diff --git a/vendor/symfony/dependency-injection/Tests/DefinitionTest.php b/vendor/symfony/dependency-injection/Tests/DefinitionTest.php
deleted file mode 100644
index b501f11..0000000
--- a/vendor/symfony/dependency-injection/Tests/DefinitionTest.php
+++ /dev/null
@@ -1,328 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\DependencyInjection\Tests;
-
-use Symfony\Component\DependencyInjection\Definition;
-
-class DefinitionTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @covers Symfony\Component\DependencyInjection\Definition::__construct
-     */
-    public function testConstructor()
-    {
-        $def = new Definition('stdClass');
-        $this->assertEquals('stdClass', $def->getClass(), '__construct() takes the class name as its first argument');
-
-        $def = new Definition('stdClass', array('foo'));
-        $this->assertEquals(array('foo'), $def->getArguments(), '__construct() takes an optional array of arguments as its second argument');
-    }
-
-    /**
-     * @covers Symfony\Component\DependencyInjection\Definition::setFactory
-     * @covers Symfony\Component\DependencyInjection\Definition::getFactory
-     */
-    public function testSetGetFactory()
-    {
-        $def = new Definition('stdClass');
-
-        $this->assertSame($def, $def->setFactory('foo'), '->setFactory() implements a fluent interface');
-        $this->assertEquals('foo', $def->getFactory(), '->getFactory() returns the factory');
-
-        $def->setFactory('Foo::bar');
-        $this->assertEquals(array('Foo', 'bar'), $def->getFactory(), '->setFactory() converts string static method call to the array');
-    }
-
-    /**
-     * @covers Symfony\Component\DependencyInjection\Definition::setClass
-     * @covers Symfony\Component\DependencyInjection\Definition::getClass
-     */
-    public function testSetGetClass()
-    {
-        $def = new Definition('stdClass');
-        $this->assertSame($def, $def->setClass('foo'), '->setClass() implements a fluent interface');
-        $this->assertEquals('foo', $def->getClass(), '->getClass() returns the class name');
-    }
-
-    public function testSetGetDecoratedService()
-    {
-        $def = new Definition('stdClass');
-        $this->assertNull($def->getDecoratedService());
-        $def->setDecoratedService('foo', 'foo.renamed');
-        $this->assertEquals(array('foo', 'foo.renamed'), $def->getDecoratedService());
-        $def->setDecoratedService(null);
-        $this->assertNull($def->getDecoratedService());
-
-        $def = new Definition('stdClass');
-        $def->setDecoratedService('foo');
-        $this->assertEquals(array('foo', null), $def->getDecoratedService());
-        $def->setDecoratedService(null);
-        $this->assertNull($def->getDecoratedService());
-
-        $def = new Definition('stdClass');
-        $this->setExpectedException('InvalidArgumentException', 'The decorated service inner name for "foo" must be different than the service name itself.');
-        $def->setDecoratedService('foo', 'foo');
-    }
-
-    /**
-     * @covers Symfony\Component\DependencyInjection\Definition::setArguments
-     * @covers Symfony\Component\DependencyInjection\Definition::getArguments
-     * @covers Symfony\Component\DependencyInjection\Definition::addArgument
-     */
-    public function testArguments()
-    {
-        $def = new Definition('stdClass');
-        $this->assertSame($def, $def->setArguments(array('foo')), '->setArguments() implements a fluent interface');
-        $this->assertEquals(array('foo'), $def->getArguments(), '->getArguments() returns the arguments');
-        $this->assertSame($def, $def->addArgument('bar'), '->addArgument() implements a fluent interface');
-        $this->assertEquals(array('foo', 'bar'), $def->getArguments(), '->addArgument() adds an argument');
-    }
-
-    /**
-     * @covers Symfony\Component\DependencyInjection\Definition::setMethodCalls
-     * @covers Symfony\Component\DependencyInjection\Definition::addMethodCall
-     * @covers Symfony\Component\DependencyInjection\Definition::hasMethodCall
-     * @covers Symfony\Component\DependencyInjection\Definition::removeMethodCall
-     */
-    public function testMethodCalls()
-    {
-        $def = new Definition('stdClass');
-        $this->assertSame($def, $def->setMethodCalls(array(array('foo', array('foo')))), '->setMethodCalls() implements a fluent interface');
-        $this->assertEquals(array(array('foo', array('foo'))), $def->getMethodCalls(), '->getMethodCalls() returns the methods to call');
-        $this->assertSame($def, $def->addMethodCall('bar', array('bar')), '->addMethodCall() implements a fluent interface');
-        $this->assertEquals(array(array('foo', array('foo')), array('bar', array('bar'))), $def->getMethodCalls(), '->addMethodCall() adds a method to call');
-        $this->assertTrue($def->hasMethodCall('bar'), '->hasMethodCall() returns true if first argument is a method to call registered');
-        $this->assertFalse($def->hasMethodCall('no_registered'), '->hasMethodCall() returns false if first argument is not a method to call registered');
-        $this->assertSame($def, $def->removeMethodCall('bar'), '->removeMethodCall() implements a fluent interface');
-        $this->assertEquals(array(array('foo', array('foo'))), $def->getMethodCalls(), '->removeMethodCall() removes a method to call');
-    }
-
-    /**
-     * @expectedException \Symfony\Component\DependencyInjection\Exception\InvalidArgumentException
-     * @expectedExceptionMessage Method name cannot be empty.
-     */
-    public function testExceptionOnEmptyMethodCall()
-    {
-        $def = new Definition('stdClass');
-        $def->addMethodCall('');
-    }
-
-    /**
-     * @covers Symfony\Component\DependencyInjection\Definition::setFile
-     * @covers Symfony\Component\DependencyInjection\Definition::getFile
-     */
-    public function testSetGetFile()
-    {
-        $def = new Definition('stdClass');
-        $this->assertSame($def, $def->setFile('foo'), '->setFile() implements a fluent interface');
-        $this->assertEquals('foo', $def->getFile(), '->getFile() returns the file to include');
-    }
-
-    /**
-     * @covers Symfony\Component\DependencyInjection\Definition::setScope
-     * @covers Symfony\Component\DependencyInjection\Definition::getScope
-     */
-    public function testSetGetScope()
-    {
-        $def = new Definition('stdClass');
-        $this->assertEquals('container', $def->getScope());
-        $this->assertSame($def, $def->setScope('foo'));
-        $this->assertEquals('foo', $def->getScope());
-    }
-
-    /**
-     * @covers Symfony\Component\DependencyInjection\Definition::setPublic
-     * @covers Symfony\Component\DependencyInjection\Definition::isPublic
-     */
-    public function testSetIsPublic()
-    {
-        $def = new Definition('stdClass');
-        $this->assertTrue($def->isPublic(), '->isPublic() returns true by default');
-        $this->assertSame($def, $def->setPublic(false), '->setPublic() implements a fluent interface');
-        $this->assertFalse($def->isPublic(), '->isPublic() returns false if the instance must not be public.');
-    }
-
-    /**
-     * @covers Symfony\Component\DependencyInjection\Definition::setSynthetic
-     * @covers Symfony\Component\DependencyInjection\Definition::isSynthetic
-     */
-    public function testSetIsSynthetic()
-    {
-        $def = new Definition('stdClass');
-        $this->assertFalse($def->isSynthetic(), '->isSynthetic() returns false by default');
-        $this->assertSame($def, $def->setSynthetic(true), '->setSynthetic() implements a fluent interface');
-        $this->assertTrue($def->isSynthetic(), '->isSynthetic() returns true if the service is synthetic.');
-    }
-
-    /**
-     * @covers Symfony\Component\DependencyInjection\Definition::setSynchronized
-     * @covers Symfony\Component\DependencyInjection\Definition::isSynchronized
-     * @group legacy
-     */
-    public function testLegacySetIsSynchronized()
-    {
-        $def = new Definition('stdClass');
-        $this->assertFalse($def->isSynchronized(), '->isSynchronized() returns false by default');
-        $this->assertSame($def, $def->setSynchronized(true), '->setSynchronized() implements a fluent interface');
-        $this->assertTrue($def->isSynchronized(), '->isSynchronized() returns true if the service is synchronized.');
-    }
-
-    /**
-     * @covers Symfony\Component\DependencyInjection\Definition::setLazy
-     * @covers Symfony\Component\DependencyInjection\Definition::isLazy
-     */
-    public function testSetIsLazy()
-    {
-        $def = new Definition('stdClass');
-        $this->assertFalse($def->isLazy(), '->isLazy() returns false by default');
-        $this->assertSame($def, $def->setLazy(true), '->setLazy() implements a fluent interface');
-        $this->assertTrue($def->isLazy(), '->isLazy() returns true if the service is lazy.');
-    }
-
-    /**
-     * @covers Symfony\Component\DependencyInjection\Definition::setAbstract
-     * @covers Symfony\Component\DependencyInjection\Definition::isAbstract
-     */
-    public function testSetIsAbstract()
-    {
-        $def = new Definition('stdClass');
-        $this->assertFalse($def->isAbstract(), '->isAbstract() returns false by default');
-        $this->assertSame($def, $def->setAbstract(true), '->setAbstract() implements a fluent interface');
-        $this->assertTrue($def->isAbstract(), '->isAbstract() returns true if the instance must not be public.');
-    }
-
-    /**
-     * @covers Symfony\Component\DependencyInjection\Definition::setConfigurator
-     * @covers Symfony\Component\DependencyInjection\Definition::getConfigurator
-     */
-    public function testSetGetConfigurator()
-    {
-        $def = new Definition('stdClass');
-        $this->assertSame($def, $def->setConfigurator('foo'), '->setConfigurator() implements a fluent interface');
-        $this->assertEquals('foo', $def->getConfigurator(), '->getConfigurator() returns the configurator');
-    }
-
-    /**
-     * @covers Symfony\Component\DependencyInjection\Definition::clearTags
-     */
-    public function testClearTags()
-    {
-        $def = new Definition('stdClass');
-        $this->assertSame($def, $def->clearTags(), '->clearTags() implements a fluent interface');
-        $def->addTag('foo', array('foo' => 'bar'));
-        $def->clearTags();
-        $this->assertEquals(array(), $def->getTags(), '->clearTags() removes all current tags');
-    }
-
-    /**
-     * @covers Symfony\Component\DependencyInjection\Definition::clearTags
-     */
-    public function testClearTag()
-    {
-        $def = new Definition('stdClass');
-        $this->assertSame($def, $def->clearTags(), '->clearTags() implements a fluent interface');
-        $def->addTag('1foo1', array('foo1' => 'bar1'));
-        $def->addTag('2foo2', array('foo2' => 'bar2'));
-        $def->addTag('3foo3', array('foo3' => 'bar3'));
-        $def->clearTag('2foo2');
-        $this->assertTrue($def->hasTag('1foo1'));
-        $this->assertFalse($def->hasTag('2foo2'));
-        $this->assertTrue($def->hasTag('3foo3'));
-        $def->clearTag('1foo1');
-        $this->assertFalse($def->hasTag('1foo1'));
-        $this->assertTrue($def->hasTag('3foo3'));
-    }
-
-    /**
-     * @covers Symfony\Component\DependencyInjection\Definition::addTag
-     * @covers Symfony\Component\DependencyInjection\Definition::getTag
-     * @covers Symfony\Component\DependencyInjection\Definition::getTags
-     * @covers Symfony\Component\DependencyInjection\Definition::hasTag
-     */
-    public function testTags()
-    {
-        $def = new Definition('stdClass');
-        $this->assertEquals(array(), $def->getTag('foo'), '->getTag() returns an empty array if the tag is not defined');
-        $this->assertFalse($def->hasTag('foo'));
-        $this->assertSame($def, $def->addTag('foo'), '->addTag() implements a fluent interface');
-        $this->assertTrue($def->hasTag('foo'));
-        $this->assertEquals(array(array()), $def->getTag('foo'), '->getTag() returns attributes for a tag name');
-        $def->addTag('foo', array('foo' => 'bar'));
-        $this->assertEquals(array(array(), array('foo' => 'bar')), $def->getTag('foo'), '->addTag() can adds the same tag several times');
-        $def->addTag('bar', array('bar' => 'bar'));
-        $this->assertEquals($def->getTags(), array(
-            'foo' => array(array(), array('foo' => 'bar')),
-            'bar' => array(array('bar' => 'bar')),
-        ), '->getTags() returns all tags');
-    }
-
-    /**
-     * @covers Symfony\Component\DependencyInjection\Definition::replaceArgument
-     */
-    public function testSetArgument()
-    {
-        $def = new Definition('stdClass');
-
-        $def->addArgument('foo');
-        $this->assertSame(array('foo'), $def->getArguments());
-
-        $this->assertSame($def, $def->replaceArgument(0, 'moo'));
-        $this->assertSame(array('moo'), $def->getArguments());
-
-        $def->addArgument('moo');
-        $def
-            ->replaceArgument(0, 'foo')
-            ->replaceArgument(1, 'bar')
-        ;
-        $this->assertSame(array('foo', 'bar'), $def->getArguments());
-    }
-
-    /**
-     * @expectedException \OutOfBoundsException
-     */
-    public function testGetArgumentShouldCheckBounds()
-    {
-        $def = new Definition('stdClass');
-
-        $def->addArgument('foo');
-        $def->getArgument(1);
-    }
-
-    /**
-     * @expectedException \OutOfBoundsException
-     */
-    public function testReplaceArgumentShouldCheckBounds()
-    {
-        $def = new Definition('stdClass');
-
-        $def->addArgument('foo');
-        $def->replaceArgument(1, 'bar');
-    }
-
-    public function testSetGetProperties()
-    {
-        $def = new Definition('stdClass');
-
-        $this->assertEquals(array(), $def->getProperties());
-        $this->assertSame($def, $def->setProperties(array('foo' => 'bar')));
-        $this->assertEquals(array('foo' => 'bar'), $def->getProperties());
-    }
-
-    public function testSetProperty()
-    {
-        $def = new Definition('stdClass');
-
-        $this->assertEquals(array(), $def->getProperties());
-        $this->assertSame($def, $def->setProperty('foo', 'bar'));
-        $this->assertEquals(array('foo' => 'bar'), $def->getProperties());
-    }
-}
diff --git a/vendor/symfony/dependency-injection/Tests/Dumper/GraphvizDumperTest.php b/vendor/symfony/dependency-injection/Tests/Dumper/GraphvizDumperTest.php
deleted file mode 100644
index 5da1135..0000000
--- a/vendor/symfony/dependency-injection/Tests/Dumper/GraphvizDumperTest.php
+++ /dev/null
@@ -1,90 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\DependencyInjection\Tests\Dumper;
-
-use Symfony\Component\DependencyInjection\ContainerBuilder;
-use Symfony\Component\DependencyInjection\Dumper\GraphvizDumper;
-
-class GraphvizDumperTest extends \PHPUnit_Framework_TestCase
-{
-    protected static $fixturesPath;
-
-    public static function setUpBeforeClass()
-    {
-        self::$fixturesPath = __DIR__.'/../Fixtures/';
-    }
-
-    /**
-     * @group legacy
-     */
-    public function testLegacyDump()
-    {
-        $container = include self::$fixturesPath.'/containers/legacy-container9.php';
-        $dumper = new GraphvizDumper($container);
-        $this->assertEquals(str_replace('%path%', __DIR__, file_get_contents(self::$fixturesPath.'/graphviz/legacy-services9.dot')), $dumper->dump(), '->dump() dumps services');
-    }
-
-    public function testDump()
-    {
-        $dumper = new GraphvizDumper($container = new ContainerBuilder());
-
-        $this->assertStringEqualsFile(self::$fixturesPath.'/graphviz/services1.dot', $dumper->dump(), '->dump() dumps an empty container as an empty dot file');
-
-        $container = include self::$fixturesPath.'/containers/container9.php';
-        $dumper = new GraphvizDumper($container);
-        $this->assertEquals(str_replace('%path%', __DIR__, file_get_contents(self::$fixturesPath.'/graphviz/services9.dot')), $dumper->dump(), '->dump() dumps services');
-
-        $container = include self::$fixturesPath.'/containers/container10.php';
-        $dumper = new GraphvizDumper($container);
-        $this->assertEquals(str_replace('%path%', __DIR__, file_get_contents(self::$fixturesPath.'/graphviz/services10.dot')), $dumper->dump(), '->dump() dumps services');
-
-        $container = include self::$fixturesPath.'/containers/container10.php';
-        $dumper = new GraphvizDumper($container);
-        $this->assertEquals($dumper->dump(array(
-            'graph' => array('ratio' => 'normal'),
-            'node' => array('fontsize' => 13, 'fontname' => 'Verdana', 'shape' => 'square'),
-            'edge' => array('fontsize' => 12, 'fontname' => 'Verdana', 'color' => 'white', 'arrowhead' => 'closed', 'arrowsize' => 1),
-            'node.instance' => array('fillcolor' => 'green', 'style' => 'empty'),
-            'node.definition' => array('fillcolor' => 'grey'),
-            'node.missing' => array('fillcolor' => 'red', 'style' => 'empty'),
-        )), str_replace('%path%', __DIR__, file_get_contents(self::$fixturesPath.'/graphviz/services10-1.dot')), '->dump() dumps services');
-    }
-
-    public function testDumpWithFrozenContainer()
-    {
-        $container = include self::$fixturesPath.'/containers/container13.php';
-        $dumper = new GraphvizDumper($container);
-        $this->assertEquals(str_replace('%path%', __DIR__, file_get_contents(self::$fixturesPath.'/graphviz/services13.dot')), $dumper->dump(), '->dump() dumps services');
-    }
-
-    public function testDumpWithFrozenCustomClassContainer()
-    {
-        $container = include self::$fixturesPath.'/containers/container14.php';
-        $dumper = new GraphvizDumper($container);
-        $this->assertEquals(str_replace('%path%', __DIR__, file_get_contents(self::$fixturesPath.'/graphviz/services14.dot')), $dumper->dump(), '->dump() dumps services');
-    }
-
-    public function testDumpWithUnresolvedParameter()
-    {
-        $container = include self::$fixturesPath.'/containers/container17.php';
-        $dumper = new GraphvizDumper($container);
-
-        $this->assertEquals(str_replace('%path%', __DIR__, file_get_contents(self::$fixturesPath.'/graphviz/services17.dot')), $dumper->dump(), '->dump() dumps services');
-    }
-
-    public function testDumpWithScopes()
-    {
-        $container = include self::$fixturesPath.'/containers/container18.php';
-        $dumper = new GraphvizDumper($container);
-        $this->assertEquals(str_replace('%path%', __DIR__, file_get_contents(self::$fixturesPath.'/graphviz/services18.dot')), $dumper->dump(), '->dump() dumps services');
-    }
-}
diff --git a/vendor/symfony/dependency-injection/Tests/Dumper/PhpDumperTest.php b/vendor/symfony/dependency-injection/Tests/Dumper/PhpDumperTest.php
deleted file mode 100644
index 063007e..0000000
--- a/vendor/symfony/dependency-injection/Tests/Dumper/PhpDumperTest.php
+++ /dev/null
@@ -1,221 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\DependencyInjection\Tests\Dumper;
-
-use Symfony\Component\DependencyInjection\ContainerBuilder;
-use Symfony\Component\DependencyInjection\Dumper\PhpDumper;
-use Symfony\Component\DependencyInjection\ParameterBag\ParameterBag;
-use Symfony\Component\DependencyInjection\Reference;
-use Symfony\Component\DependencyInjection\Definition;
-
-class PhpDumperTest extends \PHPUnit_Framework_TestCase
-{
-    protected static $fixturesPath;
-
-    public static function setUpBeforeClass()
-    {
-        self::$fixturesPath = realpath(__DIR__.'/../Fixtures/');
-    }
-
-    public function testDump()
-    {
-        $dumper = new PhpDumper($container = new ContainerBuilder());
-
-        $this->assertStringEqualsFile(self::$fixturesPath.'/php/services1.php', $dumper->dump(), '->dump() dumps an empty container as an empty PHP class');
-        $this->assertStringEqualsFile(self::$fixturesPath.'/php/services1-1.php', $dumper->dump(array('class' => 'Container', 'base_class' => 'AbstractContainer', 'namespace' => 'Symfony\Component\DependencyInjection\Dump')), '->dump() takes a class and a base_class options');
-
-        $container = new ContainerBuilder();
-        new PhpDumper($container);
-    }
-
-    public function testDumpOptimizationString()
-    {
-        $definition = new Definition();
-        $definition->setClass('stdClass');
-        $definition->addArgument(array(
-            'only dot' => '.',
-            'concatenation as value' => '.\'\'.',
-            'concatenation from the start value' => '\'\'.',
-            '.' => 'dot as a key',
-            '.\'\'.' => 'concatenation as a key',
-            '\'\'.' => 'concatenation from the start key',
-            'optimize concatenation' => 'string1%some_string%string2',
-            'optimize concatenation with empty string' => 'string1%empty_value%string2',
-            'optimize concatenation from the start' => '%empty_value%start',
-            'optimize concatenation at the end' => 'end%empty_value%',
-        ));
-
-        $container = new ContainerBuilder();
-        $container->setResourceTracking(false);
-        $container->setDefinition('test', $definition);
-        $container->setParameter('empty_value', '');
-        $container->setParameter('some_string', '-');
-        $container->compile();
-
-        $dumper = new PhpDumper($container);
-        $this->assertStringEqualsFile(self::$fixturesPath.'/php/services10.php', $dumper->dump(), '->dump() dumps an empty container as an empty PHP class');
-    }
-
-    public function testDumpRelativeDir()
-    {
-        $definition = new Definition();
-        $definition->setClass('stdClass');
-        $definition->addArgument('%foo%');
-        $definition->addArgument(array('%foo%' => '%buz%/'));
-
-        $container = new ContainerBuilder();
-        $container->setDefinition('test', $definition);
-        $container->setParameter('foo', 'wiz'.dirname(__DIR__));
-        $container->setParameter('bar', __DIR__);
-        $container->setParameter('baz', '%bar%/PhpDumperTest.php');
-        $container->setParameter('buz', dirname(dirname(__DIR__)));
-        $container->compile();
-
-        $dumper = new PhpDumper($container);
-        $this->assertStringEqualsFile(self::$fixturesPath.'/php/services12.php', $dumper->dump(array('file' => __FILE__)), '->dump() dumps __DIR__ relative strings');
-    }
-
-    /**
-     * @expectedException \InvalidArgumentException
-     */
-    public function testExportParameters()
-    {
-        $dumper = new PhpDumper(new ContainerBuilder(new ParameterBag(array('foo' => new Reference('foo')))));
-        $dumper->dump();
-    }
-
-    public function testAddParameters()
-    {
-        $container = include self::$fixturesPath.'/containers/container8.php';
-        $dumper = new PhpDumper($container);
-        $this->assertStringEqualsFile(self::$fixturesPath.'/php/services8.php', $dumper->dump(), '->dump() dumps parameters');
-    }
-
-    public function testAddService()
-    {
-        // without compilation
-        $container = include self::$fixturesPath.'/containers/container9.php';
-        $dumper = new PhpDumper($container);
-        $this->assertEquals(str_replace('%path%', str_replace('\\', '\\\\', self::$fixturesPath.DIRECTORY_SEPARATOR.'includes'.DIRECTORY_SEPARATOR), file_get_contents(self::$fixturesPath.'/php/services9.php')), $dumper->dump(), '->dump() dumps services');
-
-        // with compilation
-        $container = include self::$fixturesPath.'/containers/container9.php';
-        $container->compile();
-        $dumper = new PhpDumper($container);
-        $this->assertEquals(str_replace('%path%', str_replace('\\', '\\\\', self::$fixturesPath.DIRECTORY_SEPARATOR.'includes'.DIRECTORY_SEPARATOR), file_get_contents(self::$fixturesPath.'/php/services9_compiled.php')), $dumper->dump(), '->dump() dumps services');
-
-        $dumper = new PhpDumper($container = new ContainerBuilder());
-        $container->register('foo', 'FooClass')->addArgument(new \stdClass());
-        try {
-            $dumper->dump();
-            $this->fail('->dump() throws a RuntimeException if the container to be dumped has reference to objects or resources');
-        } catch (\Exception $e) {
-            $this->assertInstanceOf('\Symfony\Component\DependencyInjection\Exception\RuntimeException', $e, '->dump() throws a RuntimeException if the container to be dumped has reference to objects or resources');
-            $this->assertEquals('Unable to dump a service container if a parameter is an object or a resource.', $e->getMessage(), '->dump() throws a RuntimeException if the container to be dumped has reference to objects or resources');
-        }
-    }
-
-    /**
-     * @group legacy
-     */
-    public function testLegacySynchronizedServices()
-    {
-        $container = include self::$fixturesPath.'/containers/container20.php';
-        $dumper = new PhpDumper($container);
-        $this->assertEquals(str_replace('%path%', str_replace('\\', '\\\\', self::$fixturesPath.DIRECTORY_SEPARATOR.'includes'.DIRECTORY_SEPARATOR), file_get_contents(self::$fixturesPath.'/php/services20.php')), $dumper->dump(), '->dump() dumps services');
-    }
-
-    public function testServicesWithAnonymousFactories()
-    {
-        $container = include self::$fixturesPath.'/containers/container19.php';
-        $dumper = new PhpDumper($container);
-
-        $this->assertStringEqualsFile(self::$fixturesPath.'/php/services19.php', $dumper->dump(), '->dump() dumps services with anonymous factories');
-    }
-
-    /**
-     * @expectedException \InvalidArgumentException
-     * @expectedExceptionMessage Service id "bar$" cannot be converted to a valid PHP method name.
-     */
-    public function testAddServiceInvalidServiceId()
-    {
-        $container = new ContainerBuilder();
-        $container->register('bar$', 'FooClass');
-        $dumper = new PhpDumper($container);
-        $dumper->dump();
-    }
-
-    public function testAliases()
-    {
-        $container = include self::$fixturesPath.'/containers/container9.php';
-        $container->compile();
-        $dumper = new PhpDumper($container);
-        eval('?>'.$dumper->dump(array('class' => 'Symfony_DI_PhpDumper_Test_Aliases')));
-
-        $container = new \Symfony_DI_PhpDumper_Test_Aliases();
-        $container->set('foo', $foo = new \stdClass());
-        $this->assertSame($foo, $container->get('foo'));
-        $this->assertSame($foo, $container->get('alias_for_foo'));
-        $this->assertSame($foo, $container->get('alias_for_alias'));
-    }
-
-    public function testFrozenContainerWithoutAliases()
-    {
-        $container = new ContainerBuilder();
-        $container->compile();
-
-        $dumper = new PhpDumper($container);
-        eval('?>'.$dumper->dump(array('class' => 'Symfony_DI_PhpDumper_Test_Frozen_No_Aliases')));
-
-        $container = new \Symfony_DI_PhpDumper_Test_Frozen_No_Aliases();
-        $this->assertFalse($container->has('foo'));
-    }
-
-    public function testOverrideServiceWhenUsingADumpedContainer()
-    {
-        require_once self::$fixturesPath.'/php/services9.php';
-        require_once self::$fixturesPath.'/includes/foo.php';
-
-        $container = new \ProjectServiceContainer();
-        $container->set('bar', $bar = new \stdClass());
-        $container->setParameter('foo_bar', 'foo_bar');
-
-        $this->assertEquals($bar, $container->get('bar'), '->set() overrides an already defined service');
-    }
-
-    public function testOverrideServiceWhenUsingADumpedContainerAndServiceIsUsedFromAnotherOne()
-    {
-        require_once self::$fixturesPath.'/php/services9.php';
-        require_once self::$fixturesPath.'/includes/foo.php';
-        require_once self::$fixturesPath.'/includes/classes.php';
-
-        $container = new \ProjectServiceContainer();
-        $container->set('bar', $bar = new \stdClass());
-
-        $this->assertSame($bar, $container->get('foo')->bar, '->set() overrides an already defined service');
-    }
-
-    /**
-     * @expectedException \Symfony\Component\DependencyInjection\Exception\ServiceCircularReferenceException
-     */
-    public function testCircularReference()
-    {
-        $container = new ContainerBuilder();
-        $container->register('foo', 'stdClass')->addArgument(new Reference('bar'));
-        $container->register('bar', 'stdClass')->setPublic(false)->addMethodCall('setA', array(new Reference('baz')));
-        $container->register('baz', 'stdClass')->addMethodCall('setA', array(new Reference('foo')));
-        $container->compile();
-
-        $dumper = new PhpDumper($container);
-        $dumper->dump();
-    }
-}
diff --git a/vendor/symfony/dependency-injection/Tests/Dumper/XmlDumperTest.php b/vendor/symfony/dependency-injection/Tests/Dumper/XmlDumperTest.php
deleted file mode 100644
index 8aa544c..0000000
--- a/vendor/symfony/dependency-injection/Tests/Dumper/XmlDumperTest.php
+++ /dev/null
@@ -1,184 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\DependencyInjection\Tests\Dumper;
-
-use Symfony\Component\DependencyInjection\ContainerBuilder;
-use Symfony\Component\DependencyInjection\Dumper\XmlDumper;
-
-class XmlDumperTest extends \PHPUnit_Framework_TestCase
-{
-    protected static $fixturesPath;
-
-    public static function setUpBeforeClass()
-    {
-        self::$fixturesPath = realpath(__DIR__.'/../Fixtures/');
-    }
-
-    public function testDump()
-    {
-        $dumper = new XmlDumper(new ContainerBuilder());
-
-        $this->assertXmlStringEqualsXmlFile(self::$fixturesPath.'/xml/services1.xml', $dumper->dump(), '->dump() dumps an empty container as an empty XML file');
-    }
-
-    public function testExportParameters()
-    {
-        $container = include self::$fixturesPath.'//containers/container8.php';
-        $dumper = new XmlDumper($container);
-        $this->assertXmlStringEqualsXmlFile(self::$fixturesPath.'/xml/services8.xml', $dumper->dump(), '->dump() dumps parameters');
-    }
-
-    public function testAddParameters()
-    {
-        $container = include self::$fixturesPath.'//containers/container8.php';
-        $dumper = new XmlDumper($container);
-        $this->assertXmlStringEqualsXmlFile(self::$fixturesPath.'/xml/services8.xml', $dumper->dump(), '->dump() dumps parameters');
-    }
-
-    /**
-     * @group legacy
-     */
-    public function testLegacyAddService()
-    {
-        $container = include self::$fixturesPath.'/containers/legacy-container9.php';
-        $dumper = new XmlDumper($container);
-
-        $this->assertEquals(str_replace('%path%', self::$fixturesPath.DIRECTORY_SEPARATOR.'includes'.DIRECTORY_SEPARATOR, file_get_contents(self::$fixturesPath.'/xml/legacy-services9.xml')), $dumper->dump(), '->dump() dumps services');
-
-        $dumper = new XmlDumper($container = new ContainerBuilder());
-        $container->register('foo', 'FooClass')->addArgument(new \stdClass());
-        try {
-            $dumper->dump();
-            $this->fail('->dump() throws a RuntimeException if the container to be dumped has reference to objects or resources');
-        } catch (\Exception $e) {
-            $this->assertInstanceOf('\RuntimeException', $e, '->dump() throws a RuntimeException if the container to be dumped has reference to objects or resources');
-            $this->assertEquals('Unable to dump a service container if a parameter is an object or a resource.', $e->getMessage(), '->dump() throws a RuntimeException if the container to be dumped has reference to objects or resources');
-        }
-    }
-
-    public function testAddService()
-    {
-        $container = include self::$fixturesPath.'/containers/container9.php';
-        $dumper = new XmlDumper($container);
-
-        $this->assertEquals(str_replace('%path%', self::$fixturesPath.DIRECTORY_SEPARATOR.'includes'.DIRECTORY_SEPARATOR, file_get_contents(self::$fixturesPath.'/xml/services9.xml')), $dumper->dump(), '->dump() dumps services');
-
-        $dumper = new XmlDumper($container = new ContainerBuilder());
-        $container->register('foo', 'FooClass')->addArgument(new \stdClass());
-        try {
-            $dumper->dump();
-            $this->fail('->dump() throws a RuntimeException if the container to be dumped has reference to objects or resources');
-        } catch (\Exception $e) {
-            $this->assertInstanceOf('\RuntimeException', $e, '->dump() throws a RuntimeException if the container to be dumped has reference to objects or resources');
-            $this->assertEquals('Unable to dump a service container if a parameter is an object or a resource.', $e->getMessage(), '->dump() throws a RuntimeException if the container to be dumped has reference to objects or resources');
-        }
-    }
-
-    public function testDumpAnonymousServices()
-    {
-        $container = include self::$fixturesPath.'/containers/container11.php';
-        $dumper = new XmlDumper($container);
-        $this->assertEquals('<?xml version="1.0" encoding="utf-8"?>
-<container xmlns="http://symfony.com/schema/dic/services" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://symfony.com/schema/dic/services http://symfony.com/schema/dic/services/services-1.0.xsd">
-  <services>
-    <service id="foo" class="FooClass">
-      <argument type="service">
-        <service class="BarClass">
-          <argument type="service">
-            <service class="BazClass"/>
-          </argument>
-        </service>
-      </argument>
-    </service>
-  </services>
-</container>
-', $dumper->dump());
-    }
-
-    public function testDumpEntities()
-    {
-        $container = include self::$fixturesPath.'/containers/container12.php';
-        $dumper = new XmlDumper($container);
-        $this->assertEquals("<?xml version=\"1.0\" encoding=\"utf-8\"?>
-<container xmlns=\"http://symfony.com/schema/dic/services\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xsi:schemaLocation=\"http://symfony.com/schema/dic/services http://symfony.com/schema/dic/services/services-1.0.xsd\">
-  <services>
-    <service id=\"foo\" class=\"FooClass\Foo\">
-      <tag name=\"foo&quot;bar\bar\" foo=\"foo&quot;barřž€\"/>
-      <argument>foo&lt;&gt;&amp;bar</argument>
-    </service>
-  </services>
-</container>
-", $dumper->dump());
-    }
-
-    /**
-     * @dataProvider provideDecoratedServicesData
-     */
-    public function testDumpDecoratedServices($expectedXmlDump, $container)
-    {
-        $dumper = new XmlDumper($container);
-        $this->assertEquals($expectedXmlDump, $dumper->dump());
-    }
-
-    public function provideDecoratedServicesData()
-    {
-        $fixturesPath = realpath(__DIR__.'/../Fixtures/');
-
-        return array(
-            array("<?xml version=\"1.0\" encoding=\"utf-8\"?>
-<container xmlns=\"http://symfony.com/schema/dic/services\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xsi:schemaLocation=\"http://symfony.com/schema/dic/services http://symfony.com/schema/dic/services/services-1.0.xsd\">
-  <services>
-    <service id=\"foo\" class=\"FooClass\Foo\" decorates=\"bar\" decoration-inner-name=\"bar.woozy\"/>
-  </services>
-</container>
-", include $fixturesPath.'/containers/container15.php'),
-            array("<?xml version=\"1.0\" encoding=\"utf-8\"?>
-<container xmlns=\"http://symfony.com/schema/dic/services\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xsi:schemaLocation=\"http://symfony.com/schema/dic/services http://symfony.com/schema/dic/services/services-1.0.xsd\">
-  <services>
-    <service id=\"foo\" class=\"FooClass\Foo\" decorates=\"bar\"/>
-  </services>
-</container>
-", include $fixturesPath.'/containers/container16.php'),
-        );
-    }
-
-    /**
-     * @dataProvider provideCompiledContainerData
-     */
-    public function testCompiledContainerCanBeDumped($containerFile)
-    {
-        $fixturesPath = __DIR__.'/../Fixtures';
-        $container = require $fixturesPath.'/containers/'.$containerFile.'.php';
-        $container->compile();
-        $dumper = new XmlDumper($container);
-        $dumper->dump();
-    }
-
-    public function provideCompiledContainerData()
-    {
-        return array(
-            array('container8'),
-            array('container9'),
-            array('container11'),
-            array('container12'),
-            array('container14'),
-        );
-    }
-
-    public function testDumpInlinedServices()
-    {
-        $container = include self::$fixturesPath.'/containers/container21.php';
-        $dumper = new XmlDumper($container);
-
-        $this->assertEquals(file_get_contents(self::$fixturesPath.'/xml/services21.xml'), $dumper->dump());
-    }
-}
diff --git a/vendor/symfony/dependency-injection/Tests/Dumper/YamlDumperTest.php b/vendor/symfony/dependency-injection/Tests/Dumper/YamlDumperTest.php
deleted file mode 100644
index 8e9f117..0000000
--- a/vendor/symfony/dependency-injection/Tests/Dumper/YamlDumperTest.php
+++ /dev/null
@@ -1,80 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\DependencyInjection\Tests\Dumper;
-
-use Symfony\Component\DependencyInjection\ContainerBuilder;
-use Symfony\Component\DependencyInjection\Dumper\YamlDumper;
-
-class YamlDumperTest extends \PHPUnit_Framework_TestCase
-{
-    protected static $fixturesPath;
-
-    public static function setUpBeforeClass()
-    {
-        self::$fixturesPath = realpath(__DIR__.'/../Fixtures/');
-    }
-
-    public function testDump()
-    {
-        $dumper = new YamlDumper($container = new ContainerBuilder());
-
-        $this->assertStringEqualsFile(self::$fixturesPath.'/yaml/services1.yml', $dumper->dump(), '->dump() dumps an empty container as an empty YAML file');
-
-        $container = new ContainerBuilder();
-        $dumper = new YamlDumper($container);
-    }
-
-    public function testAddParameters()
-    {
-        $container = include self::$fixturesPath.'/containers/container8.php';
-        $dumper = new YamlDumper($container);
-        $this->assertStringEqualsFile(self::$fixturesPath.'/yaml/services8.yml', $dumper->dump(), '->dump() dumps parameters');
-    }
-
-    /**
-     * @group legacy
-     */
-    public function testLegacyAddService()
-    {
-        $container = include self::$fixturesPath.'/containers/legacy-container9.php';
-        $dumper = new YamlDumper($container);
-
-        $this->assertEquals(str_replace('%path%', self::$fixturesPath.DIRECTORY_SEPARATOR.'includes'.DIRECTORY_SEPARATOR, file_get_contents(self::$fixturesPath.'/yaml/legacy-services9.yml')), $dumper->dump(), '->dump() dumps services');
-
-        $dumper = new YamlDumper($container = new ContainerBuilder());
-        $container->register('foo', 'FooClass')->addArgument(new \stdClass());
-        try {
-            $dumper->dump();
-            $this->fail('->dump() throws a RuntimeException if the container to be dumped has reference to objects or resources');
-        } catch (\Exception $e) {
-            $this->assertInstanceOf('\RuntimeException', $e, '->dump() throws a RuntimeException if the container to be dumped has reference to objects or resources');
-            $this->assertEquals('Unable to dump a service container if a parameter is an object or a resource.', $e->getMessage(), '->dump() throws a RuntimeException if the container to be dumped has reference to objects or resources');
-        }
-    }
-
-    public function testAddService()
-    {
-        $container = include self::$fixturesPath.'/containers/container9.php';
-        $dumper = new YamlDumper($container);
-        $this->assertEquals(str_replace('%path%', self::$fixturesPath.DIRECTORY_SEPARATOR.'includes'.DIRECTORY_SEPARATOR, file_get_contents(self::$fixturesPath.'/yaml/services9.yml')), $dumper->dump(), '->dump() dumps services');
-
-        $dumper = new YamlDumper($container = new ContainerBuilder());
-        $container->register('foo', 'FooClass')->addArgument(new \stdClass());
-        try {
-            $dumper->dump();
-            $this->fail('->dump() throws a RuntimeException if the container to be dumped has reference to objects or resources');
-        } catch (\Exception $e) {
-            $this->assertInstanceOf('\RuntimeException', $e, '->dump() throws a RuntimeException if the container to be dumped has reference to objects or resources');
-            $this->assertEquals('Unable to dump a service container if a parameter is an object or a resource.', $e->getMessage(), '->dump() throws a RuntimeException if the container to be dumped has reference to objects or resources');
-        }
-    }
-}
diff --git a/vendor/symfony/dependency-injection/Tests/Extension/ExtensionTest.php b/vendor/symfony/dependency-injection/Tests/Extension/ExtensionTest.php
deleted file mode 100644
index e7f19a6..0000000
--- a/vendor/symfony/dependency-injection/Tests/Extension/ExtensionTest.php
+++ /dev/null
@@ -1,81 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\DependencyInjection\Tests\Extension;
-
-class ExtensionTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @dataProvider getResolvedEnabledFixtures
-     */
-    public function testIsConfigEnabledReturnsTheResolvedValue($enabled)
-    {
-        $pb = $this->getMockBuilder('Symfony\Component\DependencyInjection\ParameterBag\ParameterBag')
-            ->setMethods(array('resolveValue'))
-            ->getMock()
-        ;
-
-        $container = $this->getMockBuilder('Symfony\Component\DependencyInjection\ContainerBuilder')
-            ->setMethods(array('getParameterBag'))
-            ->getMock()
-        ;
-
-        $pb->expects($this->once())
-            ->method('resolveValue')
-            ->with($this->equalTo($enabled))
-            ->will($this->returnValue($enabled))
-        ;
-
-        $container->expects($this->once())
-            ->method('getParameterBag')
-            ->will($this->returnValue($pb))
-        ;
-
-        $extension = $this->getMockBuilder('Symfony\Component\DependencyInjection\Extension\Extension')
-            ->setMethods(array())
-            ->getMockForAbstractClass()
-        ;
-
-        $r = new \ReflectionMethod('Symfony\Component\DependencyInjection\Extension\Extension', 'isConfigEnabled');
-        $r->setAccessible(true);
-
-        $r->invoke($extension, $container, array('enabled' => $enabled));
-    }
-
-    public function getResolvedEnabledFixtures()
-    {
-        return array(
-            array(true),
-            array(false),
-        );
-    }
-
-    /**
-     * @expectedException \Symfony\Component\DependencyInjection\Exception\InvalidArgumentException
-     * @expectedExceptionMessage The config array has no 'enabled' key.
-     */
-    public function testIsConfigEnabledOnNonEnableableConfig()
-    {
-        $container = $this->getMockBuilder('Symfony\Component\DependencyInjection\ContainerBuilder')
-            ->getMock()
-        ;
-
-        $extension = $this->getMockBuilder('Symfony\Component\DependencyInjection\Extension\Extension')
-            ->setMethods(array())
-            ->getMockForAbstractClass()
-        ;
-
-        $r = new \ReflectionMethod('Symfony\Component\DependencyInjection\Extension\Extension', 'isConfigEnabled');
-        $r->setAccessible(true);
-
-        $r->invoke($extension, $container, array());
-    }
-}
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/containers/container10.php b/vendor/symfony/dependency-injection/Tests/Fixtures/containers/container10.php
deleted file mode 100644
index a16ca9f..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/containers/container10.php
+++ /dev/null
@@ -1,14 +0,0 @@
-<?php
-
-require_once __DIR__.'/../includes/classes.php';
-
-use Symfony\Component\DependencyInjection\ContainerBuilder;
-use Symfony\Component\DependencyInjection\Reference;
-
-$container = new ContainerBuilder();
-$container->
-    register('foo', 'FooClass')->
-    addArgument(new Reference('bar'))
-;
-
-return $container;
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/containers/container11.php b/vendor/symfony/dependency-injection/Tests/Fixtures/containers/container11.php
deleted file mode 100644
index 3e6cafc..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/containers/container11.php
+++ /dev/null
@@ -1,12 +0,0 @@
-<?php
-
-use Symfony\Component\DependencyInjection\ContainerBuilder;
-use Symfony\Component\DependencyInjection\Definition;
-
-$container = new ContainerBuilder();
-$container->
-    register('foo', 'FooClass')->
-    addArgument(new Definition('BarClass', array(new Definition('BazClass'))))
-;
-
-return $container;
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/containers/container12.php b/vendor/symfony/dependency-injection/Tests/Fixtures/containers/container12.php
deleted file mode 100644
index 73c5b4e..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/containers/container12.php
+++ /dev/null
@@ -1,12 +0,0 @@
-<?php
-
-use Symfony\Component\DependencyInjection\ContainerBuilder;
-
-$container = new ContainerBuilder();
-$container->
-    register('foo', 'FooClass\\Foo')->
-    addArgument('foo<>&bar')->
-    addTag('foo"bar\\bar', array('foo' => 'foo"barřž€'))
-;
-
-return $container;
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/containers/container13.php b/vendor/symfony/dependency-injection/Tests/Fixtures/containers/container13.php
deleted file mode 100644
index cc716c7..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/containers/container13.php
+++ /dev/null
@@ -1,16 +0,0 @@
-<?php
-
-use Symfony\Component\DependencyInjection\ContainerBuilder;
-use Symfony\Component\DependencyInjection\Reference;
-
-$container = new ContainerBuilder();
-$container->
-    register('foo', 'FooClass')->
-    addArgument(new Reference('bar'))
-;
-$container->
-    register('bar', 'BarClass')
-;
-$container->compile();
-
-return $container;
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/containers/container14.php b/vendor/symfony/dependency-injection/Tests/Fixtures/containers/container14.php
deleted file mode 100644
index 56ea6c1..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/containers/container14.php
+++ /dev/null
@@ -1,17 +0,0 @@
-<?php
-
-namespace Container14;
-
-use Symfony\Component\DependencyInjection\ContainerBuilder;
-
-/**
- * This file is included in Tests\Dumper\GraphvizDumperTest::testDumpWithFrozenCustomClassContainer
- * and Tests\Dumper\XmlDumperTest::testCompiledContainerCanBeDumped.
- */
-if (!class_exists('Container14\ProjectServiceContainer')) {
-    class ProjectServiceContainer extends ContainerBuilder
-    {
-    }
-}
-
-return new ProjectServiceContainer();
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/containers/container15.php b/vendor/symfony/dependency-injection/Tests/Fixtures/containers/container15.php
deleted file mode 100644
index bb41ea3..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/containers/container15.php
+++ /dev/null
@@ -1,11 +0,0 @@
-<?php
-
-use Symfony\Component\DependencyInjection\ContainerBuilder;
-
-$container = new ContainerBuilder();
-$container
-    ->register('foo', 'FooClass\\Foo')
-    ->setDecoratedService('bar', 'bar.woozy')
-;
-
-return $container;
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/containers/container16.php b/vendor/symfony/dependency-injection/Tests/Fixtures/containers/container16.php
deleted file mode 100644
index 67b4d35..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/containers/container16.php
+++ /dev/null
@@ -1,11 +0,0 @@
-<?php
-
-use Symfony\Component\DependencyInjection\ContainerBuilder;
-
-$container = new ContainerBuilder();
-$container
-    ->register('foo', 'FooClass\\Foo')
-    ->setDecoratedService('bar')
-;
-
-return $container;
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/containers/container17.php b/vendor/symfony/dependency-injection/Tests/Fixtures/containers/container17.php
deleted file mode 100644
index d902ec2..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/containers/container17.php
+++ /dev/null
@@ -1,10 +0,0 @@
-<?php
-
-use Symfony\Component\DependencyInjection\ContainerBuilder;
-
-$container = new ContainerBuilder();
-$container
-    ->register('foo', '%foo.class%')
-;
-
-return $container;
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/containers/container18.php b/vendor/symfony/dependency-injection/Tests/Fixtures/containers/container18.php
deleted file mode 100644
index 0248ed4..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/containers/container18.php
+++ /dev/null
@@ -1,14 +0,0 @@
-<?php
-
-use Symfony\Component\DependencyInjection\ContainerBuilder;
-use Symfony\Component\DependencyInjection\Scope;
-
-$container = new ContainerBuilder();
-$container->addScope(new Scope('request'));
-$container->
-    register('foo', 'FooClass')->
-    setScope('request')
-;
-$container->compile();
-
-return $container;
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/containers/container19.php b/vendor/symfony/dependency-injection/Tests/Fixtures/containers/container19.php
deleted file mode 100644
index 64b8f06..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/containers/container19.php
+++ /dev/null
@@ -1,22 +0,0 @@
-<?php
-
-use Symfony\Component\DependencyInjection\ContainerBuilder;
-use Symfony\Component\DependencyInjection\Definition;
-
-require_once __DIR__.'/../includes/classes.php';
-
-$container = new ContainerBuilder();
-
-$container
-    ->register('service_from_anonymous_factory', 'Bar\FooClass')
-    ->setFactory(array(new Definition('Bar\FooClass'), 'getInstance'))
-;
-
-$anonymousServiceWithFactory = new Definition('Bar\FooClass');
-$anonymousServiceWithFactory->setFactory('Bar\FooClass::getInstance');
-$container
-    ->register('service_with_method_call_and_factory', 'Bar\FooClass')
-    ->addMethodCall('setBar', array($anonymousServiceWithFactory))
-;
-
-return $container;
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/containers/container20.php b/vendor/symfony/dependency-injection/Tests/Fixtures/containers/container20.php
deleted file mode 100644
index a40a0e8..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/containers/container20.php
+++ /dev/null
@@ -1,19 +0,0 @@
-<?php
-
-require_once __DIR__.'/../includes/classes.php';
-
-use Symfony\Component\DependencyInjection\ContainerInterface;
-use Symfony\Component\DependencyInjection\ContainerBuilder;
-use Symfony\Component\DependencyInjection\Reference;
-
-$container = new ContainerBuilder();
-$container
-    ->register('request', 'Request')
-    ->setSynchronized(true)
-;
-$container
-    ->register('depends_on_request', 'stdClass')
-    ->addMethodCall('setRequest', array(new Reference('request', ContainerInterface::NULL_ON_INVALID_REFERENCE, false)))
-;
-
-return $container;
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/containers/container21.php b/vendor/symfony/dependency-injection/Tests/Fixtures/containers/container21.php
deleted file mode 100644
index d046738..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/containers/container21.php
+++ /dev/null
@@ -1,20 +0,0 @@
-<?php
-
-use Symfony\Component\DependencyInjection\ContainerBuilder;
-use Symfony\Component\DependencyInjection\Definition;
-
-$container = new ContainerBuilder();
-
-$bar = new Definition('Bar');
-$bar->setConfigurator(array(new Definition('Baz'), 'configureBar'));
-
-$fooFactory = new Definition('FooFactory');
-$fooFactory->setFactory(array(new Definition('Foobar'), 'createFooFactory'));
-
-$container
-    ->register('foo', 'Foo')
-    ->setFactory(array($fooFactory, 'createFoo'))
-    ->setConfigurator(array($bar, 'configureFoo'))
-;
-
-return $container;
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/containers/container8.php b/vendor/symfony/dependency-injection/Tests/Fixtures/containers/container8.php
deleted file mode 100644
index f0b4ca9..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/containers/container8.php
+++ /dev/null
@@ -1,14 +0,0 @@
-<?php
-
-use Symfony\Component\DependencyInjection\ContainerBuilder;
-use Symfony\Component\DependencyInjection\ParameterBag\ParameterBag;
-
-$container = new ContainerBuilder(new ParameterBag(array(
-    'FOO' => '%baz%',
-    'baz' => 'bar',
-    'bar' => 'foo is %%foo bar',
-    'escape' => '@escapeme',
-    'values' => array(true, false, null, 0, 1000.3, 'true', 'false', 'null'),
-)));
-
-return $container;
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/containers/container9.php b/vendor/symfony/dependency-injection/Tests/Fixtures/containers/container9.php
deleted file mode 100644
index 47064c3..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/containers/container9.php
+++ /dev/null
@@ -1,113 +0,0 @@
-<?php
-
-require_once __DIR__.'/../includes/classes.php';
-
-use Symfony\Component\DependencyInjection\ContainerInterface;
-use Symfony\Component\DependencyInjection\ContainerBuilder;
-use Symfony\Component\DependencyInjection\Reference;
-use Symfony\Component\DependencyInjection\Parameter;
-use Symfony\Component\ExpressionLanguage\Expression;
-
-$container = new ContainerBuilder();
-$container
-    ->register('foo', '\Bar\FooClass')
-    ->addTag('foo', array('foo' => 'foo'))
-    ->addTag('foo', array('bar' => 'bar', 'baz' => 'baz'))
-    ->setFactory(array('Bar\\FooClass', 'getInstance'))
-    ->setArguments(array('foo', new Reference('foo.baz'), array('%foo%' => 'foo is %foo%', 'foobar' => '%foo%'), true, new Reference('service_container')))
-    ->setProperties(array('foo' => 'bar', 'moo' => new Reference('foo.baz'), 'qux' => array('%foo%' => 'foo is %foo%', 'foobar' => '%foo%')))
-    ->addMethodCall('setBar', array(new Reference('bar')))
-    ->addMethodCall('initialize')
-    ->setConfigurator('sc_configure')
-;
-$container
-    ->register('foo.baz', '%baz_class%')
-    ->setFactory(array('%baz_class%', 'getInstance'))
-    ->setConfigurator(array('%baz_class%', 'configureStatic1'))
-;
-$container
-    ->register('bar', 'Bar\FooClass')
-    ->setArguments(array('foo', new Reference('foo.baz'), new Parameter('foo_bar')))
-    ->setScope('container')
-    ->setConfigurator(array(new Reference('foo.baz'), 'configure'))
-;
-$container
-    ->register('foo_bar', '%foo_class%')
-    ->setScope('prototype')
-;
-$container->getParameterBag()->clear();
-$container->getParameterBag()->add(array(
-    'baz_class' => 'BazClass',
-    'foo_class' => 'Bar\FooClass',
-    'foo' => 'bar',
-));
-$container->setAlias('alias_for_foo', 'foo');
-$container->setAlias('alias_for_alias', 'alias_for_foo');
-$container
-    ->register('method_call1', 'Bar\FooClass')
-    ->setFile(realpath(__DIR__.'/../includes/foo.php'))
-    ->addMethodCall('setBar', array(new Reference('foo')))
-    ->addMethodCall('setBar', array(new Reference('foo2', ContainerInterface::NULL_ON_INVALID_REFERENCE)))
-    ->addMethodCall('setBar', array(new Reference('foo3', ContainerInterface::IGNORE_ON_INVALID_REFERENCE)))
-    ->addMethodCall('setBar', array(new Reference('foobaz', ContainerInterface::IGNORE_ON_INVALID_REFERENCE)))
-    ->addMethodCall('setBar', array(new Expression('service("foo").foo() ~ (container.hasparameter("foo") ? parameter("foo") : "default")')))
-;
-$container
-    ->register('foo_with_inline', 'Foo')
-    ->addMethodCall('setBar', array(new Reference('inlined')))
-;
-$container
-    ->register('inlined', 'Bar')
-    ->setProperty('pub', 'pub')
-    ->addMethodCall('setBaz', array(new Reference('baz')))
-    ->setPublic(false)
-;
-$container
-    ->register('baz', 'Baz')
-    ->addMethodCall('setFoo', array(new Reference('foo_with_inline')))
-;
-$container
-    ->register('request', 'Request')
-    ->setSynthetic(true)
-;
-$container
-    ->register('configurator_service', 'ConfClass')
-    ->setPublic(false)
-    ->addMethodCall('setFoo', array(new Reference('baz')))
-;
-$container
-    ->register('configured_service', 'stdClass')
-    ->setConfigurator(array(new Reference('configurator_service'), 'configureStdClass'))
-;
-$container
-    ->register('decorated', 'stdClass')
-;
-$container
-    ->register('decorator_service', 'stdClass')
-    ->setDecoratedService('decorated')
-;
-$container
-    ->register('decorator_service_with_name', 'stdClass')
-    ->setDecoratedService('decorated', 'decorated.pif-pouf')
-;
-$container
-    ->register('new_factory', 'FactoryClass')
-    ->setProperty('foo', 'bar')
-    ->setScope('container')
-    ->setPublic(false)
-;
-$container
-    ->register('factory_service', 'Bar')
-    ->setFactory(array(new Reference('foo.baz'), 'getInstance'))
-;
-$container
-    ->register('new_factory_service', 'FooBarBaz')
-    ->setProperty('foo', 'bar')
-    ->setFactory(array(new Reference('new_factory'), 'getInstance'))
-;
-$container
-    ->register('service_from_static_method', 'Bar\FooClass')
-    ->setFactory(array('Bar\FooClass', 'getInstance'))
-;
-
-return $container;
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/containers/legacy-container9.php b/vendor/symfony/dependency-injection/Tests/Fixtures/containers/legacy-container9.php
deleted file mode 100644
index 9f4210c..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/containers/legacy-container9.php
+++ /dev/null
@@ -1,39 +0,0 @@
-<?php
-
-require_once __DIR__.'/../includes/classes.php';
-
-use Symfony\Component\DependencyInjection\ContainerBuilder;
-use Symfony\Component\DependencyInjection\Reference;
-use Symfony\Component\ExpressionLanguage\Expression;
-
-$container = new ContainerBuilder();
-$container->
-    register('foo', 'Bar\FooClass')->
-    addTag('foo', array('foo' => 'foo'))->
-    addTag('foo', array('bar' => 'bar'))->
-    setFactoryClass('Bar\\FooClass')->
-    setFactoryMethod('getInstance')->
-    setArguments(array('foo', new Reference('foo.baz'), array('%foo%' => 'foo is %foo%', 'foobar' => '%foo%'), true, new Reference('service_container')))->
-    setProperties(array('foo' => 'bar', 'moo' => new Reference('foo.baz'), 'qux' => array('%foo%' => 'foo is %foo%', 'foobar' => '%foo%')))->
-    addMethodCall('setBar', array(new Reference('bar')))->
-    addMethodCall('initialize')->
-    setConfigurator('sc_configure')
-;
-$container->
-    register('foo.baz', '%baz_class%')->
-    setFactoryClass('%baz_class%')->
-    setFactoryMethod('getInstance')->
-    setConfigurator(array('%baz_class%', 'configureStatic1'))
-;
-$container->
-    register('factory_service', 'Bar')->
-    setFactoryService('foo.baz')->
-    setFactoryMethod('getInstance')
-;
-$container->getParameterBag()->clear();
-$container->getParameterBag()->add(array(
-    'baz_class' => 'BazClass',
-    'foo' => 'bar',
-));
-
-return $container;
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/graphviz/legacy-services9.dot b/vendor/symfony/dependency-injection/Tests/Fixtures/graphviz/legacy-services9.dot
deleted file mode 100644
index 4e8dfb9..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/graphviz/legacy-services9.dot
+++ /dev/null
@@ -1,15 +0,0 @@
-digraph sc {
-  ratio="compress"
-  node [fontsize="11" fontname="Arial" shape="record"];
-  edge [fontsize="9" fontname="Arial" color="grey" arrowhead="open" arrowsize="0.5"];
-
-  node_foo [label="foo\nBar\\FooClass\n", shape=record, fillcolor="#eeeeee", style="filled"];
-  node_foo_baz [label="foo.baz\nBazClass\n", shape=record, fillcolor="#eeeeee", style="filled"];
-  node_factory_service [label="factory_service\nBar\n", shape=record, fillcolor="#eeeeee", style="filled"];
-  node_service_container [label="service_container\nSymfony\\Component\\DependencyInjection\\ContainerBuilder\n", shape=record, fillcolor="#9999ff", style="filled"];
-  node_bar [label="bar\n\n", shape=record, fillcolor="#ff9999", style="filled"];
-  node_foo -> node_foo_baz [label="" style="filled"];
-  node_foo -> node_service_container [label="" style="filled"];
-  node_foo -> node_foo_baz [label="" style="dashed"];
-  node_foo -> node_bar [label="setBar()" style="dashed"];
-}
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/graphviz/services1.dot b/vendor/symfony/dependency-injection/Tests/Fixtures/graphviz/services1.dot
deleted file mode 100644
index 1bb7c30..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/graphviz/services1.dot
+++ /dev/null
@@ -1,7 +0,0 @@
-digraph sc {
-  ratio="compress"
-  node [fontsize="11" fontname="Arial" shape="record"];
-  edge [fontsize="9" fontname="Arial" color="grey" arrowhead="open" arrowsize="0.5"];
-
-  node_service_container [label="service_container\nSymfony\\Component\\DependencyInjection\\ContainerBuilder\n", shape=record, fillcolor="#9999ff", style="filled"];
-}
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/graphviz/services10-1.dot b/vendor/symfony/dependency-injection/Tests/Fixtures/graphviz/services10-1.dot
deleted file mode 100644
index 0e578b1..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/graphviz/services10-1.dot
+++ /dev/null
@@ -1,10 +0,0 @@
-digraph sc {
-  ratio="normal"
-  node [fontsize="13" fontname="Verdana" shape="square"];
-  edge [fontsize="12" fontname="Verdana" color="white" arrowhead="closed" arrowsize="1"];
-
-  node_foo [label="foo\nFooClass\n", shape=square, fillcolor="grey", style="filled"];
-  node_service_container [label="service_container\nSymfony\\Component\\DependencyInjection\\ContainerBuilder\n", shape=square, fillcolor="green", style="empty"];
-  node_bar [label="bar\n\n", shape=square, fillcolor="red", style="empty"];
-  node_foo -> node_bar [label="" style="filled"];
-}
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/graphviz/services10.dot b/vendor/symfony/dependency-injection/Tests/Fixtures/graphviz/services10.dot
deleted file mode 100644
index f17857f..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/graphviz/services10.dot
+++ /dev/null
@@ -1,10 +0,0 @@
-digraph sc {
-  ratio="compress"
-  node [fontsize="11" fontname="Arial" shape="record"];
-  edge [fontsize="9" fontname="Arial" color="grey" arrowhead="open" arrowsize="0.5"];
-
-  node_foo [label="foo\nFooClass\n", shape=record, fillcolor="#eeeeee", style="filled"];
-  node_service_container [label="service_container\nSymfony\\Component\\DependencyInjection\\ContainerBuilder\n", shape=record, fillcolor="#9999ff", style="filled"];
-  node_bar [label="bar\n\n", shape=record, fillcolor="#ff9999", style="filled"];
-  node_foo -> node_bar [label="" style="filled"];
-}
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/graphviz/services13.dot b/vendor/symfony/dependency-injection/Tests/Fixtures/graphviz/services13.dot
deleted file mode 100644
index bc7f813..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/graphviz/services13.dot
+++ /dev/null
@@ -1,10 +0,0 @@
-digraph sc {
-  ratio="compress"
-  node [fontsize="11" fontname="Arial" shape="record"];
-  edge [fontsize="9" fontname="Arial" color="grey" arrowhead="open" arrowsize="0.5"];
-
-  node_foo [label="foo\nFooClass\n", shape=record, fillcolor="#eeeeee", style="filled"];
-  node_bar [label="bar\nBarClass\n", shape=record, fillcolor="#eeeeee", style="filled"];
-  node_service_container [label="service_container\nSymfony\\Component\\DependencyInjection\\ContainerBuilder\n", shape=record, fillcolor="#9999ff", style="filled"];
-  node_foo -> node_bar [label="" style="filled"];
-}
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/graphviz/services14.dot b/vendor/symfony/dependency-injection/Tests/Fixtures/graphviz/services14.dot
deleted file mode 100644
index d07dc38..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/graphviz/services14.dot
+++ /dev/null
@@ -1,7 +0,0 @@
-digraph sc {
-  ratio="compress"
-  node [fontsize="11" fontname="Arial" shape="record"];
-  edge [fontsize="9" fontname="Arial" color="grey" arrowhead="open" arrowsize="0.5"];
-
-  node_service_container [label="service_container\nContainer14\\ProjectServiceContainer\n", shape=record, fillcolor="#9999ff", style="filled"];
-}
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/graphviz/services17.dot b/vendor/symfony/dependency-injection/Tests/Fixtures/graphviz/services17.dot
deleted file mode 100644
index a6d04bf..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/graphviz/services17.dot
+++ /dev/null
@@ -1,8 +0,0 @@
-digraph sc {
-  ratio="compress"
-  node [fontsize="11" fontname="Arial" shape="record"];
-  edge [fontsize="9" fontname="Arial" color="grey" arrowhead="open" arrowsize="0.5"];
-
-  node_foo [label="foo\n%foo.class%\n", shape=record, fillcolor="#eeeeee", style="filled"];
-  node_service_container [label="service_container\nSymfony\\Component\\DependencyInjection\\ContainerBuilder\n", shape=record, fillcolor="#9999ff", style="filled"];
-}
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/graphviz/services18.dot b/vendor/symfony/dependency-injection/Tests/Fixtures/graphviz/services18.dot
deleted file mode 100644
index 4fbccee..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/graphviz/services18.dot
+++ /dev/null
@@ -1,8 +0,0 @@
-digraph sc {
-  ratio="compress"
-  node [fontsize="11" fontname="Arial" shape="record"];
-  edge [fontsize="9" fontname="Arial" color="grey" arrowhead="open" arrowsize="0.5"];
-
-  node_foo [label="foo\nFooClass\n", shape=record, fillcolor="#eeeeee", style="filled"];
-  node_service_container [label="service_container\nSymfony\\Component\\DependencyInjection\\ContainerBuilder\n", shape=record, fillcolor="#9999ff", style="filled"];
-}
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/graphviz/services9.dot b/vendor/symfony/dependency-injection/Tests/Fixtures/graphviz/services9.dot
deleted file mode 100644
index b3b424e..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/graphviz/services9.dot
+++ /dev/null
@@ -1,41 +0,0 @@
-digraph sc {
-  ratio="compress"
-  node [fontsize="11" fontname="Arial" shape="record"];
-  edge [fontsize="9" fontname="Arial" color="grey" arrowhead="open" arrowsize="0.5"];
-
-  node_foo [label="foo (alias_for_foo)\nBar\\FooClass\n", shape=record, fillcolor="#eeeeee", style="filled"];
-  node_foo_baz [label="foo.baz\nBazClass\n", shape=record, fillcolor="#eeeeee", style="filled"];
-  node_bar [label="bar\nBar\\FooClass\n", shape=record, fillcolor="#eeeeee", style="filled"];
-  node_foo_bar [label="foo_bar\nBar\\FooClass\n", shape=record, fillcolor="#eeeeee", style="dotted"];
-  node_method_call1 [label="method_call1\nBar\\FooClass\n", shape=record, fillcolor="#eeeeee", style="filled"];
-  node_foo_with_inline [label="foo_with_inline\nFoo\n", shape=record, fillcolor="#eeeeee", style="filled"];
-  node_inlined [label="inlined\nBar\n", shape=record, fillcolor="#eeeeee", style="filled"];
-  node_baz [label="baz\nBaz\n", shape=record, fillcolor="#eeeeee", style="filled"];
-  node_request [label="request\nRequest\n", shape=record, fillcolor="#eeeeee", style="filled"];
-  node_configurator_service [label="configurator_service\nConfClass\n", shape=record, fillcolor="#eeeeee", style="filled"];
-  node_configured_service [label="configured_service\nstdClass\n", shape=record, fillcolor="#eeeeee", style="filled"];
-  node_decorated [label="decorated\nstdClass\n", shape=record, fillcolor="#eeeeee", style="filled"];
-  node_decorator_service [label="decorator_service\nstdClass\n", shape=record, fillcolor="#eeeeee", style="filled"];
-  node_decorator_service_with_name [label="decorator_service_with_name\nstdClass\n", shape=record, fillcolor="#eeeeee", style="filled"];
-  node_new_factory [label="new_factory\nFactoryClass\n", shape=record, fillcolor="#eeeeee", style="filled"];
-  node_factory_service [label="factory_service\nBar\n", shape=record, fillcolor="#eeeeee", style="filled"];
-  node_new_factory_service [label="new_factory_service\nFooBarBaz\n", shape=record, fillcolor="#eeeeee", style="filled"];
-  node_service_from_static_method [label="service_from_static_method\nBar\\FooClass\n", shape=record, fillcolor="#eeeeee", style="filled"];
-  node_service_container [label="service_container\nSymfony\\Component\\DependencyInjection\\ContainerBuilder\n", shape=record, fillcolor="#9999ff", style="filled"];
-  node_foo2 [label="foo2\n\n", shape=record, fillcolor="#ff9999", style="filled"];
-  node_foo3 [label="foo3\n\n", shape=record, fillcolor="#ff9999", style="filled"];
-  node_foobaz [label="foobaz\n\n", shape=record, fillcolor="#ff9999", style="filled"];
-  node_foo -> node_foo_baz [label="" style="filled"];
-  node_foo -> node_service_container [label="" style="filled"];
-  node_foo -> node_foo_baz [label="" style="dashed"];
-  node_foo -> node_bar [label="setBar()" style="dashed"];
-  node_bar -> node_foo_baz [label="" style="filled"];
-  node_method_call1 -> node_foo [label="setBar()" style="dashed"];
-  node_method_call1 -> node_foo2 [label="setBar()" style="dashed"];
-  node_method_call1 -> node_foo3 [label="setBar()" style="dashed"];
-  node_method_call1 -> node_foobaz [label="setBar()" style="dashed"];
-  node_foo_with_inline -> node_inlined [label="setBar()" style="dashed"];
-  node_inlined -> node_baz [label="setBaz()" style="dashed"];
-  node_baz -> node_foo_with_inline [label="setFoo()" style="dashed"];
-  node_configurator_service -> node_baz [label="setFoo()" style="dashed"];
-}
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/includes/ProjectExtension.php b/vendor/symfony/dependency-injection/Tests/Fixtures/includes/ProjectExtension.php
deleted file mode 100644
index c9f8010..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/includes/ProjectExtension.php
+++ /dev/null
@@ -1,40 +0,0 @@
-<?php
-
-use Symfony\Component\DependencyInjection\ContainerBuilder;
-use Symfony\Component\DependencyInjection\Definition;
-use Symfony\Component\DependencyInjection\Extension\ExtensionInterface;
-
-class ProjectExtension implements ExtensionInterface
-{
-    public function load(array $configs, ContainerBuilder $configuration)
-    {
-        $config = call_user_func_array('array_merge', $configs);
-
-        $configuration->setDefinition('project.service.bar', new Definition('FooClass'));
-        $configuration->setParameter('project.parameter.bar', isset($config['foo']) ? $config['foo'] : 'foobar');
-
-        $configuration->setDefinition('project.service.foo', new Definition('FooClass'));
-        $configuration->setParameter('project.parameter.foo', isset($config['foo']) ? $config['foo'] : 'foobar');
-
-        return $configuration;
-    }
-
-    public function getXsdValidationBasePath()
-    {
-        return false;
-    }
-
-    public function getNamespace()
-    {
-        return 'http://www.example.com/schema/project';
-    }
-
-    public function getAlias()
-    {
-        return 'project';
-    }
-
-    public function getConfiguration(array $config, ContainerBuilder $container)
-    {
-    }
-}
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/includes/ProjectWithXsdExtension.php b/vendor/symfony/dependency-injection/Tests/Fixtures/includes/ProjectWithXsdExtension.php
deleted file mode 100644
index 2ee2f12..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/includes/ProjectWithXsdExtension.php
+++ /dev/null
@@ -1,19 +0,0 @@
-<?php
-
-class ProjectWithXsdExtension extends ProjectExtension
-{
-    public function getXsdValidationBasePath()
-    {
-        return __DIR__.'/schema';
-    }
-
-    public function getNamespace()
-    {
-        return 'http://www.example.com/schema/projectwithxsd';
-    }
-
-    public function getAlias()
-    {
-        return 'projectwithxsd';
-    }
-}
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/includes/ProjectWithXsdExtensionInPhar.phar b/vendor/symfony/dependency-injection/Tests/Fixtures/includes/ProjectWithXsdExtensionInPhar.phar
deleted file mode 100644
index 040e136..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/includes/ProjectWithXsdExtensionInPhar.phar
+++ /dev/null
@@ -1,32 +0,0 @@
-<?php Phar::mapPhar("ProjectWithXsdExtensionInPhar.phar"); require_once "phar://ProjectWithXsdExtensionInPhar.phar/ProjectWithXsdExtensionInPhar.php"; __HALT_COMPILER(); ?>
-          "   ProjectWithXsdExtensionInPhar.phar    !   ProjectWithXsdExtensionInPhar.phpl   TUl  WѶ         schema/project-1.0.xsd   TU  rr      <?php
-
-class ProjectWithXsdExtensionInPhar extends ProjectExtension
-{
-    public function getXsdValidationBasePath()
-    {
-        return __DIR__.'/schema';
-    }
-
-    public function getNamespace()
-    {
-        return 'http://www.example.com/schema/projectwithxsdinphar';
-    }
-
-    public function getAlias()
-    {
-        return 'projectwithxsdinphar';
-    }
-}<?xml version="1.0" encoding="UTF-8" ?>
-
-<xsd:schema xmlns="http://www.example.com/schema/projectwithxsdinphar"
-    xmlns:xsd="http://www.w3.org/2001/XMLSchema"
-    targetNamespace="http://www.example.com/schema/projectwithxsdinphar"
-    elementFormDefault="qualified">
-
-  <xsd:element name="bar" type="bar" />
-
-  <xsd:complexType name="bar">
-    <xsd:attribute name="foo" type="xsd:string" />
-  </xsd:complexType>
-</xsd:schema>|M*c(.k&`   GBMB
\ No newline at end of file
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/includes/classes.php b/vendor/symfony/dependency-injection/Tests/Fixtures/includes/classes.php
deleted file mode 100644
index 70c3d27..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/includes/classes.php
+++ /dev/null
@@ -1,61 +0,0 @@
-<?php
-
-function sc_configure($instance)
-{
-    $instance->configure();
-}
-
-class BarClass
-{
-    protected $baz;
-    public $foo = 'foo';
-
-    public function setBaz(BazClass $baz)
-    {
-        $this->baz = $baz;
-    }
-
-    public function getBaz()
-    {
-        return $this->baz;
-    }
-}
-
-class BazClass
-{
-    protected $foo;
-
-    public function setFoo(Foo $foo)
-    {
-        $this->foo = $foo;
-    }
-
-    public function configure($instance)
-    {
-        $instance->configure();
-    }
-
-    public static function getInstance()
-    {
-        return new self();
-    }
-
-    public static function configureStatic($instance)
-    {
-        $instance->configure();
-    }
-
-    public static function configureStatic1()
-    {
-    }
-}
-
-class BarUserClass
-{
-    public $bar;
-
-    public function __construct(BarClass $bar)
-    {
-        $this->bar = $bar;
-    }
-}
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/includes/createphar.php b/vendor/symfony/dependency-injection/Tests/Fixtures/includes/createphar.php
deleted file mode 100644
index 5fa06a0..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/includes/createphar.php
+++ /dev/null
@@ -1,47 +0,0 @@
-<?php
-
-$file = __DIR__.'/ProjectWithXsdExtensionInPhar.phar';
-if (is_file($file)) {
-    @unlink($file);
-}
-
-$phar = new Phar($file, 0, 'ProjectWithXsdExtensionInPhar.phar');
-$phar->addFromString('ProjectWithXsdExtensionInPhar.php', <<<EOT
-<?php
-
-class ProjectWithXsdExtensionInPhar extends ProjectExtension
-{
-    public function getXsdValidationBasePath()
-    {
-        return __DIR__.'/schema';
-    }
-
-    public function getNamespace()
-    {
-        return 'http://www.example.com/schema/projectwithxsdinphar';
-    }
-
-    public function getAlias()
-    {
-        return 'projectwithxsdinphar';
-    }
-}
-EOT
-);
-$phar->addFromString('schema/project-1.0.xsd', <<<EOT
-<?xml version="1.0" encoding="UTF-8" ?>
-
-<xsd:schema xmlns="http://www.example.com/schema/projectwithxsdinphar"
-    xmlns:xsd="http://www.w3.org/2001/XMLSchema"
-    targetNamespace="http://www.example.com/schema/projectwithxsdinphar"
-    elementFormDefault="qualified">
-
-  <xsd:element name="bar" type="bar" />
-
-  <xsd:complexType name="bar">
-    <xsd:attribute name="foo" type="xsd:string" />
-  </xsd:complexType>
-</xsd:schema>
-EOT
-);
-$phar->setStub('<?php Phar::mapPhar("ProjectWithXsdExtensionInPhar.phar"); require_once "phar://ProjectWithXsdExtensionInPhar.phar/ProjectWithXsdExtensionInPhar.php"; __HALT_COMPILER(); ?>');
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/includes/foo.php b/vendor/symfony/dependency-injection/Tests/Fixtures/includes/foo.php
deleted file mode 100644
index 55968af..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/includes/foo.php
+++ /dev/null
@@ -1,38 +0,0 @@
-<?php
-
-namespace Bar;
-
-class FooClass
-{
-    public $foo, $moo;
-
-    public $bar = null, $initialized = false, $configured = false, $called = false, $arguments = array();
-
-    public function __construct($arguments = array())
-    {
-        $this->arguments = $arguments;
-    }
-
-    public static function getInstance($arguments = array())
-    {
-        $obj = new self($arguments);
-        $obj->called = true;
-
-        return $obj;
-    }
-
-    public function initialize()
-    {
-        $this->initialized = true;
-    }
-
-    public function configure()
-    {
-        $this->configured = true;
-    }
-
-    public function setBar($value = null)
-    {
-        $this->bar = $value;
-    }
-}
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/includes/schema/project-1.0.xsd b/vendor/symfony/dependency-injection/Tests/Fixtures/includes/schema/project-1.0.xsd
deleted file mode 100644
index 282884e..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/includes/schema/project-1.0.xsd
+++ /dev/null
@@ -1,13 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" ?>
-
-<xsd:schema xmlns="http://www.example.com/schema/projectwithxsd"
-    xmlns:xsd="http://www.w3.org/2001/XMLSchema"
-    targetNamespace="http://www.example.com/schema/projectwithxsd"
-    elementFormDefault="qualified">
-
-  <xsd:element name="bar" type="bar" />
-
-  <xsd:complexType name="bar">
-    <xsd:attribute name="foo" type="xsd:string" />
-  </xsd:complexType>
-</xsd:schema>
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/ini/nonvalid.ini b/vendor/symfony/dependency-injection/Tests/Fixtures/ini/nonvalid.ini
deleted file mode 100644
index 9f84a608..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/ini/nonvalid.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-{NOT AN INI FILE}
-{JUST A PLAIN TEXT FILE}
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/ini/parameters.ini b/vendor/symfony/dependency-injection/Tests/Fixtures/ini/parameters.ini
deleted file mode 100644
index df92f75..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/ini/parameters.ini
+++ /dev/null
@@ -1,3 +0,0 @@
-[parameters]
-  foo = bar
-  bar = %foo%
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/ini/parameters1.ini b/vendor/symfony/dependency-injection/Tests/Fixtures/ini/parameters1.ini
deleted file mode 100644
index e50f722..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/ini/parameters1.ini
+++ /dev/null
@@ -1,3 +0,0 @@
-[parameters]
-  FOO = foo
-  baz = baz
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/ini/parameters2.ini b/vendor/symfony/dependency-injection/Tests/Fixtures/ini/parameters2.ini
deleted file mode 100644
index 75fbac6..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/ini/parameters2.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[parameters]
-  imported_from_ini = true
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/php/services1-1.php b/vendor/symfony/dependency-injection/Tests/Fixtures/php/services1-1.php
deleted file mode 100644
index f157711..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/php/services1-1.php
+++ /dev/null
@@ -1,30 +0,0 @@
-<?php
-namespace Symfony\Component\DependencyInjection\Dump;
-
-use Symfony\Component\DependencyInjection\ContainerInterface;
-use Symfony\Component\DependencyInjection\Container;
-use Symfony\Component\DependencyInjection\Exception\InactiveScopeException;
-use Symfony\Component\DependencyInjection\Exception\InvalidArgumentException;
-use Symfony\Component\DependencyInjection\Exception\LogicException;
-use Symfony\Component\DependencyInjection\Exception\RuntimeException;
-use Symfony\Component\DependencyInjection\ParameterBag\ParameterBag;
-
-/**
- * Container.
- *
- * This class has been auto-generated
- * by the Symfony Dependency Injection Component.
- */
-class Container extends AbstractContainer
-{
-    private $parameters;
-    private $targetDirs = array();
-
-    /**
-     * Constructor.
-     */
-    public function __construct()
-    {
-        parent::__construct();
-    }
-}
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/php/services1.php b/vendor/symfony/dependency-injection/Tests/Fixtures/php/services1.php
deleted file mode 100644
index 5497a75..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/php/services1.php
+++ /dev/null
@@ -1,29 +0,0 @@
-<?php
-
-use Symfony\Component\DependencyInjection\ContainerInterface;
-use Symfony\Component\DependencyInjection\Container;
-use Symfony\Component\DependencyInjection\Exception\InactiveScopeException;
-use Symfony\Component\DependencyInjection\Exception\InvalidArgumentException;
-use Symfony\Component\DependencyInjection\Exception\LogicException;
-use Symfony\Component\DependencyInjection\Exception\RuntimeException;
-use Symfony\Component\DependencyInjection\ParameterBag\ParameterBag;
-
-/**
- * ProjectServiceContainer.
- *
- * This class has been auto-generated
- * by the Symfony Dependency Injection Component.
- */
-class ProjectServiceContainer extends Container
-{
-    private $parameters;
-    private $targetDirs = array();
-
-    /**
-     * Constructor.
-     */
-    public function __construct()
-    {
-        parent::__construct();
-    }
-}
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/php/services10.php b/vendor/symfony/dependency-injection/Tests/Fixtures/php/services10.php
deleted file mode 100644
index b9b8d5b..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/php/services10.php
+++ /dev/null
@@ -1,118 +0,0 @@
-<?php
-
-use Symfony\Component\DependencyInjection\ContainerInterface;
-use Symfony\Component\DependencyInjection\Container;
-use Symfony\Component\DependencyInjection\Exception\InactiveScopeException;
-use Symfony\Component\DependencyInjection\Exception\InvalidArgumentException;
-use Symfony\Component\DependencyInjection\Exception\LogicException;
-use Symfony\Component\DependencyInjection\Exception\RuntimeException;
-use Symfony\Component\DependencyInjection\ParameterBag\FrozenParameterBag;
-
-/**
- * ProjectServiceContainer.
- *
- * This class has been auto-generated
- * by the Symfony Dependency Injection Component.
- */
-class ProjectServiceContainer extends Container
-{
-    private $parameters;
-    private $targetDirs = array();
-
-    /**
-     * Constructor.
-     */
-    public function __construct()
-    {
-        $this->parameters = $this->getDefaultParameters();
-
-        $this->services =
-        $this->scopedServices =
-        $this->scopeStacks = array();
-        $this->scopes = array();
-        $this->scopeChildren = array();
-        $this->methodMap = array(
-            'test' => 'getTestService',
-        );
-
-        $this->aliases = array();
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    public function compile()
-    {
-        throw new LogicException('You cannot compile a dumped frozen container.');
-    }
-
-    /**
-     * Gets the 'test' service.
-     *
-     * This service is shared.
-     * This method always returns the same instance of the service.
-     *
-     * @return \stdClass A stdClass instance.
-     */
-    protected function getTestService()
-    {
-        return $this->services['test'] = new \stdClass(array('only dot' => '.', 'concatenation as value' => '.\'\'.', 'concatenation from the start value' => '\'\'.', '.' => 'dot as a key', '.\'\'.' => 'concatenation as a key', '\'\'.' => 'concatenation from the start key', 'optimize concatenation' => 'string1-string2', 'optimize concatenation with empty string' => 'string1string2', 'optimize concatenation from the start' => 'start', 'optimize concatenation at the end' => 'end'));
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    public function getParameter($name)
-    {
-        $name = strtolower($name);
-
-        if (!(isset($this->parameters[$name]) || array_key_exists($name, $this->parameters))) {
-            throw new InvalidArgumentException(sprintf('The parameter "%s" must be defined.', $name));
-        }
-
-        return $this->parameters[$name];
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    public function hasParameter($name)
-    {
-        $name = strtolower($name);
-
-        return isset($this->parameters[$name]) || array_key_exists($name, $this->parameters);
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    public function setParameter($name, $value)
-    {
-        throw new LogicException('Impossible to call set() on a frozen ParameterBag.');
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    public function getParameterBag()
-    {
-        if (null === $this->parameterBag) {
-            $this->parameterBag = new FrozenParameterBag($this->parameters);
-        }
-
-        return $this->parameterBag;
-    }
-
-    /**
-     * Gets the default parameters.
-     *
-     * @return array An array of the default parameters
-     */
-    protected function getDefaultParameters()
-    {
-        return array(
-            'empty_value' => '',
-            'some_string' => '-',
-        );
-    }
-}
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/php/services12.php b/vendor/symfony/dependency-injection/Tests/Fixtures/php/services12.php
deleted file mode 100644
index a53f3a3..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/php/services12.php
+++ /dev/null
@@ -1,124 +0,0 @@
-<?php
-
-use Symfony\Component\DependencyInjection\ContainerInterface;
-use Symfony\Component\DependencyInjection\Container;
-use Symfony\Component\DependencyInjection\Exception\InactiveScopeException;
-use Symfony\Component\DependencyInjection\Exception\InvalidArgumentException;
-use Symfony\Component\DependencyInjection\Exception\LogicException;
-use Symfony\Component\DependencyInjection\Exception\RuntimeException;
-use Symfony\Component\DependencyInjection\ParameterBag\FrozenParameterBag;
-
-/**
- * ProjectServiceContainer.
- *
- * This class has been auto-generated
- * by the Symfony Dependency Injection Component.
- */
-class ProjectServiceContainer extends Container
-{
-    private $parameters;
-    private $targetDirs = array();
-
-    /**
-     * Constructor.
-     */
-    public function __construct()
-    {
-        $dir = __DIR__;
-        for ($i = 1; $i <= 5; ++$i) {
-            $this->targetDirs[$i] = $dir = dirname($dir);
-        }
-        $this->parameters = $this->getDefaultParameters();
-
-        $this->services =
-        $this->scopedServices =
-        $this->scopeStacks = array();
-        $this->scopes = array();
-        $this->scopeChildren = array();
-        $this->methodMap = array(
-            'test' => 'getTestService',
-        );
-
-        $this->aliases = array();
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    public function compile()
-    {
-        throw new LogicException('You cannot compile a dumped frozen container.');
-    }
-
-    /**
-     * Gets the 'test' service.
-     *
-     * This service is shared.
-     * This method always returns the same instance of the service.
-     *
-     * @return \stdClass A stdClass instance.
-     */
-    protected function getTestService()
-    {
-        return $this->services['test'] = new \stdClass(('wiz'.$this->targetDirs[1]), array(('wiz'.$this->targetDirs[1]) => ($this->targetDirs[2].'/')));
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    public function getParameter($name)
-    {
-        $name = strtolower($name);
-
-        if (!(isset($this->parameters[$name]) || array_key_exists($name, $this->parameters))) {
-            throw new InvalidArgumentException(sprintf('The parameter "%s" must be defined.', $name));
-        }
-
-        return $this->parameters[$name];
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    public function hasParameter($name)
-    {
-        $name = strtolower($name);
-
-        return isset($this->parameters[$name]) || array_key_exists($name, $this->parameters);
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    public function setParameter($name, $value)
-    {
-        throw new LogicException('Impossible to call set() on a frozen ParameterBag.');
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    public function getParameterBag()
-    {
-        if (null === $this->parameterBag) {
-            $this->parameterBag = new FrozenParameterBag($this->parameters);
-        }
-
-        return $this->parameterBag;
-    }
-
-    /**
-     * Gets the default parameters.
-     *
-     * @return array An array of the default parameters
-     */
-    protected function getDefaultParameters()
-    {
-        return array(
-            'foo' => ('wiz'.$this->targetDirs[1]),
-            'bar' => __DIR__,
-            'baz' => (__DIR__.'/PhpDumperTest.php'),
-            'buz' => $this->targetDirs[2],
-        );
-    }
-}
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/php/services19.php b/vendor/symfony/dependency-injection/Tests/Fixtures/php/services19.php
deleted file mode 100644
index 455600d..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/php/services19.php
+++ /dev/null
@@ -1,63 +0,0 @@
-<?php
-
-use Symfony\Component\DependencyInjection\ContainerInterface;
-use Symfony\Component\DependencyInjection\Container;
-use Symfony\Component\DependencyInjection\Exception\InactiveScopeException;
-use Symfony\Component\DependencyInjection\Exception\InvalidArgumentException;
-use Symfony\Component\DependencyInjection\Exception\LogicException;
-use Symfony\Component\DependencyInjection\Exception\RuntimeException;
-use Symfony\Component\DependencyInjection\ParameterBag\ParameterBag;
-
-/**
- * ProjectServiceContainer.
- *
- * This class has been auto-generated
- * by the Symfony Dependency Injection Component.
- */
-class ProjectServiceContainer extends Container
-{
-    private $parameters;
-    private $targetDirs = array();
-
-    /**
-     * Constructor.
-     */
-    public function __construct()
-    {
-        parent::__construct();
-        $this->methodMap = array(
-            'service_from_anonymous_factory' => 'getServiceFromAnonymousFactoryService',
-            'service_with_method_call_and_factory' => 'getServiceWithMethodCallAndFactoryService',
-        );
-    }
-
-    /**
-     * Gets the 'service_from_anonymous_factory' service.
-     *
-     * This service is shared.
-     * This method always returns the same instance of the service.
-     *
-     * @return \Bar\FooClass A Bar\FooClass instance.
-     */
-    protected function getServiceFromAnonymousFactoryService()
-    {
-        return $this->services['service_from_anonymous_factory'] = call_user_func(array(new \Bar\FooClass(), 'getInstance'));
-    }
-
-    /**
-     * Gets the 'service_with_method_call_and_factory' service.
-     *
-     * This service is shared.
-     * This method always returns the same instance of the service.
-     *
-     * @return \Bar\FooClass A Bar\FooClass instance.
-     */
-    protected function getServiceWithMethodCallAndFactoryService()
-    {
-        $this->services['service_with_method_call_and_factory'] = $instance = new \Bar\FooClass();
-
-        $instance->setBar(\Bar\FooClass::getInstance());
-
-        return $instance;
-    }
-}
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/php/services20.php b/vendor/symfony/dependency-injection/Tests/Fixtures/php/services20.php
deleted file mode 100644
index 83f6dc7..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/php/services20.php
+++ /dev/null
@@ -1,73 +0,0 @@
-<?php
-
-use Symfony\Component\DependencyInjection\ContainerInterface;
-use Symfony\Component\DependencyInjection\Container;
-use Symfony\Component\DependencyInjection\Exception\InactiveScopeException;
-use Symfony\Component\DependencyInjection\Exception\InvalidArgumentException;
-use Symfony\Component\DependencyInjection\Exception\LogicException;
-use Symfony\Component\DependencyInjection\Exception\RuntimeException;
-use Symfony\Component\DependencyInjection\ParameterBag\ParameterBag;
-
-/**
- * ProjectServiceContainer.
- *
- * This class has been auto-generated
- * by the Symfony Dependency Injection Component.
- */
-class ProjectServiceContainer extends Container
-{
-    private $parameters;
-    private $targetDirs = array();
-
-    /**
-     * Constructor.
-     */
-    public function __construct()
-    {
-        parent::__construct();
-        $this->methodMap = array(
-            'depends_on_request' => 'getDependsOnRequestService',
-            'request' => 'getRequestService',
-        );
-    }
-
-    /**
-     * Gets the 'depends_on_request' service.
-     *
-     * This service is shared.
-     * This method always returns the same instance of the service.
-     *
-     * @return \stdClass A stdClass instance.
-     */
-    protected function getDependsOnRequestService()
-    {
-        $this->services['depends_on_request'] = $instance = new \stdClass();
-
-        $instance->setRequest($this->get('request', ContainerInterface::NULL_ON_INVALID_REFERENCE));
-
-        return $instance;
-    }
-
-    /**
-     * Gets the 'request' service.
-     *
-     * This service is shared.
-     * This method always returns the same instance of the service.
-     *
-     * @return \Request A Request instance.
-     */
-    protected function getRequestService()
-    {
-        return $this->services['request'] = new \Request();
-    }
-
-    /**
-     * Updates the 'request' service.
-     */
-    protected function synchronizeRequestService()
-    {
-        if ($this->initialized('depends_on_request')) {
-            $this->get('depends_on_request')->setRequest($this->get('request', ContainerInterface::NULL_ON_INVALID_REFERENCE));
-        }
-    }
-}
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/php/services8.php b/vendor/symfony/dependency-injection/Tests/Fixtures/php/services8.php
deleted file mode 100644
index c2c52fe..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/php/services8.php
+++ /dev/null
@@ -1,54 +0,0 @@
-<?php
-
-use Symfony\Component\DependencyInjection\ContainerInterface;
-use Symfony\Component\DependencyInjection\Container;
-use Symfony\Component\DependencyInjection\Exception\InactiveScopeException;
-use Symfony\Component\DependencyInjection\Exception\InvalidArgumentException;
-use Symfony\Component\DependencyInjection\Exception\LogicException;
-use Symfony\Component\DependencyInjection\Exception\RuntimeException;
-use Symfony\Component\DependencyInjection\ParameterBag\ParameterBag;
-
-/**
- * ProjectServiceContainer.
- *
- * This class has been auto-generated
- * by the Symfony Dependency Injection Component.
- */
-class ProjectServiceContainer extends Container
-{
-    private $parameters;
-    private $targetDirs = array();
-
-    /**
-     * Constructor.
-     */
-    public function __construct()
-    {
-        parent::__construct(new ParameterBag($this->getDefaultParameters()));
-    }
-
-    /**
-     * Gets the default parameters.
-     *
-     * @return array An array of the default parameters
-     */
-    protected function getDefaultParameters()
-    {
-        return array(
-            'foo' => '%baz%',
-            'baz' => 'bar',
-            'bar' => 'foo is %%foo bar',
-            'escape' => '@escapeme',
-            'values' => array(
-                0 => true,
-                1 => false,
-                2 => NULL,
-                3 => 0,
-                4 => 1000.3,
-                5 => 'true',
-                6 => 'false',
-                7 => 'null',
-            ),
-        );
-    }
-}
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/php/services9.php b/vendor/symfony/dependency-injection/Tests/Fixtures/php/services9.php
deleted file mode 100644
index 5977c1c..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/php/services9.php
+++ /dev/null
@@ -1,376 +0,0 @@
-<?php
-
-use Symfony\Component\DependencyInjection\ContainerInterface;
-use Symfony\Component\DependencyInjection\Container;
-use Symfony\Component\DependencyInjection\Exception\InactiveScopeException;
-use Symfony\Component\DependencyInjection\Exception\InvalidArgumentException;
-use Symfony\Component\DependencyInjection\Exception\LogicException;
-use Symfony\Component\DependencyInjection\Exception\RuntimeException;
-use Symfony\Component\DependencyInjection\ParameterBag\ParameterBag;
-
-/**
- * ProjectServiceContainer.
- *
- * This class has been auto-generated
- * by the Symfony Dependency Injection Component.
- */
-class ProjectServiceContainer extends Container
-{
-    private $parameters;
-    private $targetDirs = array();
-
-    /**
-     * Constructor.
-     */
-    public function __construct()
-    {
-        parent::__construct(new ParameterBag($this->getDefaultParameters()));
-        $this->methodMap = array(
-            'bar' => 'getBarService',
-            'baz' => 'getBazService',
-            'configurator_service' => 'getConfiguratorServiceService',
-            'configured_service' => 'getConfiguredServiceService',
-            'decorated' => 'getDecoratedService',
-            'decorator_service' => 'getDecoratorServiceService',
-            'decorator_service_with_name' => 'getDecoratorServiceWithNameService',
-            'factory_service' => 'getFactoryServiceService',
-            'foo' => 'getFooService',
-            'foo.baz' => 'getFoo_BazService',
-            'foo_bar' => 'getFooBarService',
-            'foo_with_inline' => 'getFooWithInlineService',
-            'inlined' => 'getInlinedService',
-            'method_call1' => 'getMethodCall1Service',
-            'new_factory' => 'getNewFactoryService',
-            'new_factory_service' => 'getNewFactoryServiceService',
-            'request' => 'getRequestService',
-            'service_from_static_method' => 'getServiceFromStaticMethodService',
-        );
-        $this->aliases = array(
-            'alias_for_alias' => 'foo',
-            'alias_for_foo' => 'foo',
-        );
-    }
-
-    /**
-     * Gets the 'bar' service.
-     *
-     * This service is shared.
-     * This method always returns the same instance of the service.
-     *
-     * @return \Bar\FooClass A Bar\FooClass instance.
-     */
-    protected function getBarService()
-    {
-        $a = $this->get('foo.baz');
-
-        $this->services['bar'] = $instance = new \Bar\FooClass('foo', $a, $this->getParameter('foo_bar'));
-
-        $a->configure($instance);
-
-        return $instance;
-    }
-
-    /**
-     * Gets the 'baz' service.
-     *
-     * This service is shared.
-     * This method always returns the same instance of the service.
-     *
-     * @return \Baz A Baz instance.
-     */
-    protected function getBazService()
-    {
-        $this->services['baz'] = $instance = new \Baz();
-
-        $instance->setFoo($this->get('foo_with_inline'));
-
-        return $instance;
-    }
-
-    /**
-     * Gets the 'configured_service' service.
-     *
-     * This service is shared.
-     * This method always returns the same instance of the service.
-     *
-     * @return \stdClass A stdClass instance.
-     */
-    protected function getConfiguredServiceService()
-    {
-        $this->services['configured_service'] = $instance = new \stdClass();
-
-        $this->get('configurator_service')->configureStdClass($instance);
-
-        return $instance;
-    }
-
-    /**
-     * Gets the 'decorated' service.
-     *
-     * This service is shared.
-     * This method always returns the same instance of the service.
-     *
-     * @return \stdClass A stdClass instance.
-     */
-    protected function getDecoratedService()
-    {
-        return $this->services['decorated'] = new \stdClass();
-    }
-
-    /**
-     * Gets the 'decorator_service' service.
-     *
-     * This service is shared.
-     * This method always returns the same instance of the service.
-     *
-     * @return \stdClass A stdClass instance.
-     */
-    protected function getDecoratorServiceService()
-    {
-        return $this->services['decorator_service'] = new \stdClass();
-    }
-
-    /**
-     * Gets the 'decorator_service_with_name' service.
-     *
-     * This service is shared.
-     * This method always returns the same instance of the service.
-     *
-     * @return \stdClass A stdClass instance.
-     */
-    protected function getDecoratorServiceWithNameService()
-    {
-        return $this->services['decorator_service_with_name'] = new \stdClass();
-    }
-
-    /**
-     * Gets the 'factory_service' service.
-     *
-     * This service is shared.
-     * This method always returns the same instance of the service.
-     *
-     * @return \Bar A Bar instance.
-     */
-    protected function getFactoryServiceService()
-    {
-        return $this->services['factory_service'] = $this->get('foo.baz')->getInstance();
-    }
-
-    /**
-     * Gets the 'foo' service.
-     *
-     * This service is shared.
-     * This method always returns the same instance of the service.
-     *
-     * @return \Bar\FooClass A Bar\FooClass instance.
-     */
-    protected function getFooService()
-    {
-        $a = $this->get('foo.baz');
-
-        $this->services['foo'] = $instance = \Bar\FooClass::getInstance('foo', $a, array($this->getParameter('foo') => 'foo is '.$this->getParameter('foo').'', 'foobar' => $this->getParameter('foo')), true, $this);
-
-        $instance->setBar($this->get('bar'));
-        $instance->initialize();
-        $instance->foo = 'bar';
-        $instance->moo = $a;
-        $instance->qux = array($this->getParameter('foo') => 'foo is '.$this->getParameter('foo').'', 'foobar' => $this->getParameter('foo'));
-        sc_configure($instance);
-
-        return $instance;
-    }
-
-    /**
-     * Gets the 'foo.baz' service.
-     *
-     * This service is shared.
-     * This method always returns the same instance of the service.
-     *
-     * @return object A %baz_class% instance.
-     */
-    protected function getFoo_BazService()
-    {
-        $this->services['foo.baz'] = $instance = call_user_func(array($this->getParameter('baz_class'), 'getInstance'));
-
-        call_user_func(array($this->getParameter('baz_class'), 'configureStatic1'), $instance);
-
-        return $instance;
-    }
-
-    /**
-     * Gets the 'foo_bar' service.
-     *
-     * @return object A %foo_class% instance.
-     */
-    protected function getFooBarService()
-    {
-        $class = $this->getParameter('foo_class');
-
-        return new $class();
-    }
-
-    /**
-     * Gets the 'foo_with_inline' service.
-     *
-     * This service is shared.
-     * This method always returns the same instance of the service.
-     *
-     * @return \Foo A Foo instance.
-     */
-    protected function getFooWithInlineService()
-    {
-        $this->services['foo_with_inline'] = $instance = new \Foo();
-
-        $instance->setBar($this->get('inlined'));
-
-        return $instance;
-    }
-
-    /**
-     * Gets the 'method_call1' service.
-     *
-     * This service is shared.
-     * This method always returns the same instance of the service.
-     *
-     * @return \Bar\FooClass A Bar\FooClass instance.
-     */
-    protected function getMethodCall1Service()
-    {
-        require_once '%path%foo.php';
-
-        $this->services['method_call1'] = $instance = new \Bar\FooClass();
-
-        $instance->setBar($this->get('foo'));
-        $instance->setBar($this->get('foo2', ContainerInterface::NULL_ON_INVALID_REFERENCE));
-        if ($this->has('foo3')) {
-            $instance->setBar($this->get('foo3', ContainerInterface::NULL_ON_INVALID_REFERENCE));
-        }
-        if ($this->has('foobaz')) {
-            $instance->setBar($this->get('foobaz', ContainerInterface::NULL_ON_INVALID_REFERENCE));
-        }
-        $instance->setBar(($this->get("foo")->foo() . (($this->hasparameter("foo")) ? ($this->getParameter("foo")) : ("default"))));
-
-        return $instance;
-    }
-
-    /**
-     * Gets the 'new_factory_service' service.
-     *
-     * This service is shared.
-     * This method always returns the same instance of the service.
-     *
-     * @return \FooBarBaz A FooBarBaz instance.
-     */
-    protected function getNewFactoryServiceService()
-    {
-        $this->services['new_factory_service'] = $instance = $this->get('new_factory')->getInstance();
-
-        $instance->foo = 'bar';
-
-        return $instance;
-    }
-
-    /**
-     * Gets the 'request' service.
-     *
-     * This service is shared.
-     * This method always returns the same instance of the service.
-     *
-     * @throws RuntimeException always since this service is expected to be injected dynamically
-     */
-    protected function getRequestService()
-    {
-        throw new RuntimeException('You have requested a synthetic service ("request"). The DIC does not know how to construct this service.');
-    }
-
-    /**
-     * Gets the 'service_from_static_method' service.
-     *
-     * This service is shared.
-     * This method always returns the same instance of the service.
-     *
-     * @return \Bar\FooClass A Bar\FooClass instance.
-     */
-    protected function getServiceFromStaticMethodService()
-    {
-        return $this->services['service_from_static_method'] = \Bar\FooClass::getInstance();
-    }
-
-    /**
-     * Gets the 'configurator_service' service.
-     *
-     * This service is shared.
-     * This method always returns the same instance of the service.
-     *
-     * This service is private.
-     * If you want to be able to request this service from the container directly,
-     * make it public, otherwise you might end up with broken code.
-     *
-     * @return \ConfClass A ConfClass instance.
-     */
-    protected function getConfiguratorServiceService()
-    {
-        $this->services['configurator_service'] = $instance = new \ConfClass();
-
-        $instance->setFoo($this->get('baz'));
-
-        return $instance;
-    }
-
-    /**
-     * Gets the 'inlined' service.
-     *
-     * This service is shared.
-     * This method always returns the same instance of the service.
-     *
-     * This service is private.
-     * If you want to be able to request this service from the container directly,
-     * make it public, otherwise you might end up with broken code.
-     *
-     * @return \Bar A Bar instance.
-     */
-    protected function getInlinedService()
-    {
-        $this->services['inlined'] = $instance = new \Bar();
-
-        $instance->setBaz($this->get('baz'));
-        $instance->pub = 'pub';
-
-        return $instance;
-    }
-
-    /**
-     * Gets the 'new_factory' service.
-     *
-     * This service is shared.
-     * This method always returns the same instance of the service.
-     *
-     * This service is private.
-     * If you want to be able to request this service from the container directly,
-     * make it public, otherwise you might end up with broken code.
-     *
-     * @return \FactoryClass A FactoryClass instance.
-     */
-    protected function getNewFactoryService()
-    {
-        $this->services['new_factory'] = $instance = new \FactoryClass();
-
-        $instance->foo = 'bar';
-
-        return $instance;
-    }
-
-    /**
-     * Gets the default parameters.
-     *
-     * @return array An array of the default parameters
-     */
-    protected function getDefaultParameters()
-    {
-        return array(
-            'baz_class' => 'BazClass',
-            'foo_class' => 'Bar\\FooClass',
-            'foo' => 'bar',
-        );
-    }
-}
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/php/services9_compiled.php b/vendor/symfony/dependency-injection/Tests/Fixtures/php/services9_compiled.php
deleted file mode 100644
index 8c1e71f..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/php/services9_compiled.php
+++ /dev/null
@@ -1,357 +0,0 @@
-<?php
-
-use Symfony\Component\DependencyInjection\ContainerInterface;
-use Symfony\Component\DependencyInjection\Container;
-use Symfony\Component\DependencyInjection\Exception\InactiveScopeException;
-use Symfony\Component\DependencyInjection\Exception\InvalidArgumentException;
-use Symfony\Component\DependencyInjection\Exception\LogicException;
-use Symfony\Component\DependencyInjection\Exception\RuntimeException;
-use Symfony\Component\DependencyInjection\ParameterBag\FrozenParameterBag;
-
-/**
- * ProjectServiceContainer.
- *
- * This class has been auto-generated
- * by the Symfony Dependency Injection Component.
- */
-class ProjectServiceContainer extends Container
-{
-    private $parameters;
-    private $targetDirs = array();
-
-    /**
-     * Constructor.
-     */
-    public function __construct()
-    {
-        $this->parameters = $this->getDefaultParameters();
-
-        $this->services =
-        $this->scopedServices =
-        $this->scopeStacks = array();
-        $this->scopes = array();
-        $this->scopeChildren = array();
-        $this->methodMap = array(
-            'bar' => 'getBarService',
-            'baz' => 'getBazService',
-            'configured_service' => 'getConfiguredServiceService',
-            'decorator_service' => 'getDecoratorServiceService',
-            'decorator_service_with_name' => 'getDecoratorServiceWithNameService',
-            'factory_service' => 'getFactoryServiceService',
-            'foo' => 'getFooService',
-            'foo.baz' => 'getFoo_BazService',
-            'foo_bar' => 'getFooBarService',
-            'foo_with_inline' => 'getFooWithInlineService',
-            'method_call1' => 'getMethodCall1Service',
-            'new_factory_service' => 'getNewFactoryServiceService',
-            'request' => 'getRequestService',
-            'service_from_static_method' => 'getServiceFromStaticMethodService',
-        );
-        $this->aliases = array(
-            'alias_for_alias' => 'foo',
-            'alias_for_foo' => 'foo',
-            'decorated' => 'decorator_service_with_name',
-        );
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    public function compile()
-    {
-        throw new LogicException('You cannot compile a dumped frozen container.');
-    }
-
-    /**
-     * Gets the 'bar' service.
-     *
-     * This service is shared.
-     * This method always returns the same instance of the service.
-     *
-     * @return \Bar\FooClass A Bar\FooClass instance.
-     */
-    protected function getBarService()
-    {
-        $a = $this->get('foo.baz');
-
-        $this->services['bar'] = $instance = new \Bar\FooClass('foo', $a, $this->getParameter('foo_bar'));
-
-        $a->configure($instance);
-
-        return $instance;
-    }
-
-    /**
-     * Gets the 'baz' service.
-     *
-     * This service is shared.
-     * This method always returns the same instance of the service.
-     *
-     * @return \Baz A Baz instance.
-     */
-    protected function getBazService()
-    {
-        $this->services['baz'] = $instance = new \Baz();
-
-        $instance->setFoo($this->get('foo_with_inline'));
-
-        return $instance;
-    }
-
-    /**
-     * Gets the 'configured_service' service.
-     *
-     * This service is shared.
-     * This method always returns the same instance of the service.
-     *
-     * @return \stdClass A stdClass instance.
-     */
-    protected function getConfiguredServiceService()
-    {
-        $a = new \ConfClass();
-        $a->setFoo($this->get('baz'));
-
-        $this->services['configured_service'] = $instance = new \stdClass();
-
-        $a->configureStdClass($instance);
-
-        return $instance;
-    }
-
-    /**
-     * Gets the 'decorator_service' service.
-     *
-     * This service is shared.
-     * This method always returns the same instance of the service.
-     *
-     * @return \stdClass A stdClass instance.
-     */
-    protected function getDecoratorServiceService()
-    {
-        return $this->services['decorator_service'] = new \stdClass();
-    }
-
-    /**
-     * Gets the 'decorator_service_with_name' service.
-     *
-     * This service is shared.
-     * This method always returns the same instance of the service.
-     *
-     * @return \stdClass A stdClass instance.
-     */
-    protected function getDecoratorServiceWithNameService()
-    {
-        return $this->services['decorator_service_with_name'] = new \stdClass();
-    }
-
-    /**
-     * Gets the 'factory_service' service.
-     *
-     * This service is shared.
-     * This method always returns the same instance of the service.
-     *
-     * @return \Bar A Bar instance.
-     */
-    protected function getFactoryServiceService()
-    {
-        return $this->services['factory_service'] = $this->get('foo.baz')->getInstance();
-    }
-
-    /**
-     * Gets the 'foo' service.
-     *
-     * This service is shared.
-     * This method always returns the same instance of the service.
-     *
-     * @return \Bar\FooClass A Bar\FooClass instance.
-     */
-    protected function getFooService()
-    {
-        $a = $this->get('foo.baz');
-
-        $this->services['foo'] = $instance = \Bar\FooClass::getInstance('foo', $a, array('bar' => 'foo is bar', 'foobar' => 'bar'), true, $this);
-
-        $instance->setBar($this->get('bar'));
-        $instance->initialize();
-        $instance->foo = 'bar';
-        $instance->moo = $a;
-        $instance->qux = array('bar' => 'foo is bar', 'foobar' => 'bar');
-        sc_configure($instance);
-
-        return $instance;
-    }
-
-    /**
-     * Gets the 'foo.baz' service.
-     *
-     * This service is shared.
-     * This method always returns the same instance of the service.
-     *
-     * @return \BazClass A BazClass instance.
-     */
-    protected function getFoo_BazService()
-    {
-        $this->services['foo.baz'] = $instance = \BazClass::getInstance();
-
-        \BazClass::configureStatic1($instance);
-
-        return $instance;
-    }
-
-    /**
-     * Gets the 'foo_bar' service.
-     *
-     * @return \Bar\FooClass A Bar\FooClass instance.
-     */
-    protected function getFooBarService()
-    {
-        return new \Bar\FooClass();
-    }
-
-    /**
-     * Gets the 'foo_with_inline' service.
-     *
-     * This service is shared.
-     * This method always returns the same instance of the service.
-     *
-     * @return \Foo A Foo instance.
-     */
-    protected function getFooWithInlineService()
-    {
-        $a = new \Bar();
-
-        $this->services['foo_with_inline'] = $instance = new \Foo();
-
-        $a->setBaz($this->get('baz'));
-        $a->pub = 'pub';
-
-        $instance->setBar($a);
-
-        return $instance;
-    }
-
-    /**
-     * Gets the 'method_call1' service.
-     *
-     * This service is shared.
-     * This method always returns the same instance of the service.
-     *
-     * @return \Bar\FooClass A Bar\FooClass instance.
-     */
-    protected function getMethodCall1Service()
-    {
-        require_once '%path%foo.php';
-
-        $this->services['method_call1'] = $instance = new \Bar\FooClass();
-
-        $instance->setBar($this->get('foo'));
-        $instance->setBar(NULL);
-        $instance->setBar(($this->get("foo")->foo() . (($this->hasparameter("foo")) ? ($this->getParameter("foo")) : ("default"))));
-
-        return $instance;
-    }
-
-    /**
-     * Gets the 'new_factory_service' service.
-     *
-     * This service is shared.
-     * This method always returns the same instance of the service.
-     *
-     * @return \FooBarBaz A FooBarBaz instance.
-     */
-    protected function getNewFactoryServiceService()
-    {
-        $a = new \FactoryClass();
-        $a->foo = 'bar';
-
-        $this->services['new_factory_service'] = $instance = $a->getInstance();
-
-        $instance->foo = 'bar';
-
-        return $instance;
-    }
-
-    /**
-     * Gets the 'request' service.
-     *
-     * This service is shared.
-     * This method always returns the same instance of the service.
-     *
-     * @throws RuntimeException always since this service is expected to be injected dynamically
-     */
-    protected function getRequestService()
-    {
-        throw new RuntimeException('You have requested a synthetic service ("request"). The DIC does not know how to construct this service.');
-    }
-
-    /**
-     * Gets the 'service_from_static_method' service.
-     *
-     * This service is shared.
-     * This method always returns the same instance of the service.
-     *
-     * @return \Bar\FooClass A Bar\FooClass instance.
-     */
-    protected function getServiceFromStaticMethodService()
-    {
-        return $this->services['service_from_static_method'] = \Bar\FooClass::getInstance();
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    public function getParameter($name)
-    {
-        $name = strtolower($name);
-
-        if (!(isset($this->parameters[$name]) || array_key_exists($name, $this->parameters))) {
-            throw new InvalidArgumentException(sprintf('The parameter "%s" must be defined.', $name));
-        }
-
-        return $this->parameters[$name];
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    public function hasParameter($name)
-    {
-        $name = strtolower($name);
-
-        return isset($this->parameters[$name]) || array_key_exists($name, $this->parameters);
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    public function setParameter($name, $value)
-    {
-        throw new LogicException('Impossible to call set() on a frozen ParameterBag.');
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    public function getParameterBag()
-    {
-        if (null === $this->parameterBag) {
-            $this->parameterBag = new FrozenParameterBag($this->parameters);
-        }
-
-        return $this->parameterBag;
-    }
-
-    /**
-     * Gets the default parameters.
-     *
-     * @return array An array of the default parameters
-     */
-    protected function getDefaultParameters()
-    {
-        return array(
-            'baz_class' => 'BazClass',
-            'foo_class' => 'Bar\\FooClass',
-            'foo' => 'bar',
-        );
-    }
-}
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/php/simple.php b/vendor/symfony/dependency-injection/Tests/Fixtures/php/simple.php
deleted file mode 100644
index aa4df99..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/php/simple.php
+++ /dev/null
@@ -1,3 +0,0 @@
-<?php
-
-$container->setParameter('foo', 'foo');
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/xml/extension1/services.xml b/vendor/symfony/dependency-injection/Tests/Fixtures/xml/extension1/services.xml
deleted file mode 100644
index 52df38d..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/xml/extension1/services.xml
+++ /dev/null
@@ -1,14 +0,0 @@
-<?xml version="1.0" ?>
-
-<container xmlns="http://symfony.com/schema/dic/services"
-    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-    xsi:schemaLocation="http://symfony.com/schema/dic/services http://symfony.com/schema/dic/services/services-1.0.xsd">
-  <services>
-    <service id="extension1.foo" class="FooClass1">
-      <argument type="service">
-        <service class="BarClass1">
-        </service>
-      </argument>
-    </service>
-  </services>
-</container>
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/xml/extension2/services.xml b/vendor/symfony/dependency-injection/Tests/Fixtures/xml/extension2/services.xml
deleted file mode 100644
index 21a7ef5..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/xml/extension2/services.xml
+++ /dev/null
@@ -1,14 +0,0 @@
-<?xml version="1.0" ?>
-
-<container xmlns="http://symfony.com/schema/dic/services"
-    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-    xsi:schemaLocation="http://symfony.com/schema/dic/services http://symfony.com/schema/dic/services/services-1.0.xsd">
-  <services>
-    <service id="extension2.foo" class="FooClass2">
-      <argument type="service">
-        <service class="BarClass2">
-        </service>
-      </argument>
-    </service>
-  </services>
-</container>
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/xml/extensions/services1.xml b/vendor/symfony/dependency-injection/Tests/Fixtures/xml/extensions/services1.xml
deleted file mode 100644
index 792fa07..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/xml/extensions/services1.xml
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0" ?>
-
-<container xmlns="http://symfony.com/schema/dic/services"
-    xmlns:project="http://www.example.com/schema/project">
-
-    <parameters>
-        <parameter key="project.parameter.foo">BAR</parameter>
-    </parameters>
-
-    <services>
-        <service id="project.service.foo" class="BAR" />
-    </services>
-
-    <project:bar babar="babar">
-        <another />
-        <another2>%project.parameter.foo%</another2>
-    </project:bar>
-
-</container>
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/xml/extensions/services2.xml b/vendor/symfony/dependency-injection/Tests/Fixtures/xml/extensions/services2.xml
deleted file mode 100644
index 67d462b..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/xml/extensions/services2.xml
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0" ?>
-
-<container xmlns="http://symfony.com/schema/dic/services"
-    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-    xmlns:project="http://www.example.com/schema/projectwithxsd"
-    xsi:schemaLocation="http://symfony.com/schema/dic/services http://symfony.com/schema/dic/services/services-1.0.xsd
-                        http://www.example.com/schema/projectwithxsd http://www.example.com/schema/projectwithxsd/project-1.0.xsd">
-
-    <parameters>
-        <parameter key="project.parameter.foo">BAR</parameter>
-    </parameters>
-
-    <services>
-        <service id="project.service.foo" class="BAR" />
-    </services>
-
-    <project:bar />
-
-</container>
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/xml/extensions/services3.xml b/vendor/symfony/dependency-injection/Tests/Fixtures/xml/extensions/services3.xml
deleted file mode 100644
index c23f02a..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/xml/extensions/services3.xml
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0" ?>
-
-<container xmlns="http://symfony.com/schema/dic/services"
-    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-    xmlns:project="http://www.example.com/schema/projectwithxsd"
-    xsi:schemaLocation="http://symfony.com/schema/dic/services http://symfony.com/schema/dic/services/services-1.0.xsd
-                        http://www.example.com/schema/projectwithxsd http://www.example.com/schema/projectwithxsd/project-1.0.xsd">
-
-    <parameters>
-        <parameter key="project.parameter.foo">BAR</parameter>
-    </parameters>
-
-    <services>
-        <service id="project.service.foo" class="BAR" />
-    </services>
-
-    <project:bar bar="bar" />
-
-</container>
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/xml/extensions/services4.xml b/vendor/symfony/dependency-injection/Tests/Fixtures/xml/extensions/services4.xml
deleted file mode 100644
index 2c33c3a..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/xml/extensions/services4.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" ?>
-
-<container xmlns="http://symfony.com/schema/dic/services"
-    xmlns:project="http://www.example.com/schema/not_registered_extension">
-  <project:bar />
-</container>
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/xml/extensions/services5.xml b/vendor/symfony/dependency-injection/Tests/Fixtures/xml/extensions/services5.xml
deleted file mode 100644
index 0eaaff2..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/xml/extensions/services5.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" ?>
-
-<container xmlns="http://symfony.com/schema/dic/services"
-    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-    xmlns:project="http://www.example.com/schema/projectwithxsd"
-    xsi:schemaLocation="http://symfony.com/schema/dic/services http://symfony.com/schema/dic/services/services-1.0.xsd
-                        http://www.example.com/schema/projectwithxsd http://www.example.com/schema/projectwithxsd/project-1.0.xsd">
-
-    <project:foobar />
-
-</container>
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/xml/extensions/services6.xml b/vendor/symfony/dependency-injection/Tests/Fixtures/xml/extensions/services6.xml
deleted file mode 100644
index a9c0103..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/xml/extensions/services6.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" ?>
-
-<container xmlns="http://symfony.com/schema/dic/services"
-    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-    xmlns:project="http://www.example.com/schema/projectwithxsdinphar"
-    xsi:schemaLocation="http://symfony.com/schema/dic/services http://symfony.com/schema/dic/services/services-1.0.xsd
-                        http://www.example.com/schema/projectwithxsdinphar http://www.example.com/schema/projectwithxsdinphar/project-1.0.xsd">
-
-    <project:bar />
-
-</container>
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/xml/extensions/services7.xml b/vendor/symfony/dependency-injection/Tests/Fixtures/xml/extensions/services7.xml
deleted file mode 100644
index e77780d..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/xml/extensions/services7.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" ?>
-
-<container xmlns="http://symfony.com/schema/dic/services"
-    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-    xmlns:project="http://www.example.com/schema/projectwithxsdinphar"
-    xsi:schemaLocation="http://symfony.com/schema/dic/services http://symfony.com/schema/dic/services/services-1.0.xsd
-                        http://www.example.com/schema/projectwithxsdinphar http://www.example.com/schema/projectwithxsdinphar/project-1.0.xsd">
-
-    <project:bar bar="foo" />
-
-</container>
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/xml/legacy-services6.xml b/vendor/symfony/dependency-injection/Tests/Fixtures/xml/legacy-services6.xml
deleted file mode 100644
index 708e10f..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/xml/legacy-services6.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" ?>
-
-<container xmlns="http://symfony.com/schema/dic/services"
-    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-    xsi:schemaLocation="http://symfony.com/schema/dic/services http://symfony.com/schema/dic/services/services-1.0.xsd">
-  <services>
-    <service id="constructor" class="FooClass" factory-method="getInstance" />
-    <service id="factory_service" factory-method="getInstance" factory-service="baz_factory" />
-    <service id="request" class="Request" synthetic="true" synchronized="true" lazy="true"/>
-  </services>
-</container>
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/xml/legacy-services9.xml b/vendor/symfony/dependency-injection/Tests/Fixtures/xml/legacy-services9.xml
deleted file mode 100644
index 5692ba1..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/xml/legacy-services9.xml
+++ /dev/null
@@ -1,36 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<container xmlns="http://symfony.com/schema/dic/services" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://symfony.com/schema/dic/services http://symfony.com/schema/dic/services/services-1.0.xsd">
-  <parameters>
-    <parameter key="baz_class">BazClass</parameter>
-    <parameter key="foo">bar</parameter>
-  </parameters>
-  <services>
-    <service id="foo" class="Bar\FooClass" factory-method="getInstance" factory-class="Bar\FooClass">
-      <tag name="foo" foo="foo"/>
-      <tag name="foo" bar="bar"/>
-      <argument>foo</argument>
-      <argument type="service" id="foo.baz"/>
-      <argument type="collection">
-        <argument key="%foo%">foo is %foo%</argument>
-        <argument key="foobar">%foo%</argument>
-      </argument>
-      <argument>true</argument>
-      <argument type="service" id="service_container"/>
-      <property name="foo">bar</property>
-      <property name="moo" type="service" id="foo.baz"/>
-      <property name="qux" type="collection">
-        <property key="%foo%">foo is %foo%</property>
-        <property key="foobar">%foo%</property>
-      </property>
-      <call method="setBar">
-        <argument type="service" id="bar"/>
-      </call>
-      <call method="initialize"/>
-      <configurator function="sc_configure"/>
-    </service>
-    <service id="foo.baz" class="%baz_class%" factory-method="getInstance" factory-class="%baz_class%">
-      <configurator class="%baz_class%" method="configureStatic1"/>
-    </service>
-    <service id="factory_service" class="Bar" factory-method="getInstance" factory-service="foo.baz"/>
-  </services>
-</container>
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/xml/namespaces.xml b/vendor/symfony/dependency-injection/Tests/Fixtures/xml/namespaces.xml
deleted file mode 100644
index 5a05ced..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/xml/namespaces.xml
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" ?>
-
-<srv:container xmlns="http://symfony.com/schema/dic/doctrine"
-    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-    xmlns:srv="http://symfony.com/schema/dic/services"
-    xsi:schemaLocation="http://symfony.com/schema/dic/services http://symfony.com/schema/dic/services/services-1.0.xsd
-                        http://symfony.com/schema/dic/doctrine http://symfony.com/schema/dic/doctrine/doctrine-1.0.xsd">
-
-    <srv:services>
-        <srv:service id="foo" class="FooClass">
-            <srv:tag name="foo.tag" />
-            <srv:call method="setBar">
-                <srv:argument>foo</srv:argument>
-            </srv:call>
-        </srv:service>
-    </srv:services>
-</srv:container>
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/xml/nonvalid.xml b/vendor/symfony/dependency-injection/Tests/Fixtures/xml/nonvalid.xml
deleted file mode 100644
index e7b5bc9..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/xml/nonvalid.xml
+++ /dev/null
@@ -1,3 +0,0 @@
-<?xml version="1.0" ?>
-
-<nonvalid />
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/xml/services1.xml b/vendor/symfony/dependency-injection/Tests/Fixtures/xml/services1.xml
deleted file mode 100644
index 6aa5732..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/xml/services1.xml
+++ /dev/null
@@ -1,2 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<container xmlns="http://symfony.com/schema/dic/services" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://symfony.com/schema/dic/services http://symfony.com/schema/dic/services/services-1.0.xsd"/>
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/xml/services10.xml b/vendor/symfony/dependency-injection/Tests/Fixtures/xml/services10.xml
deleted file mode 100644
index a4da1bf..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/xml/services10.xml
+++ /dev/null
@@ -1,16 +0,0 @@
-<?xml version="1.0" ?>
-
-<container xmlns="http://symfony.com/schema/dic/services"
-    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-    xsi:schemaLocation="http://symfony.com/schema/dic/services http://symfony.com/schema/dic/services/services-1.0.xsd">
-  <services>
-    <service id="foo" class="BarClass">
-        <tag name="foo_tag"
-            some-option="cat"
-            some_option="ciz"
-            other-option="lorem"
-            an_other-option="ipsum"
-        />
-    </service>
-  </services>
-</container>
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/xml/services13.xml b/vendor/symfony/dependency-injection/Tests/Fixtures/xml/services13.xml
deleted file mode 100644
index 1ac4938..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/xml/services13.xml
+++ /dev/null
@@ -1,9 +0,0 @@
-<?xml version="1.0" ?>
-
-<container xmlns="http://symfony.com/schema/dic/services"
-    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-    xsi:schemaLocation="http://symfony.com/schema/dic/services http://symfony.com/schema/dic/services/services-1.0.xsd">
-  <parameters>
-    <parameter key="imported_from_xml">true</parameter>
-  </parameters>
-</container>
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/xml/services14.xml b/vendor/symfony/dependency-injection/Tests/Fixtures/xml/services14.xml
deleted file mode 100644
index 7344621..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/xml/services14.xml
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<container xmlns="http://symfony.com/schema/dic/services"
-           xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-           xsi:schemaLocation="http://symfony.com/schema/dic/services http://symfony.com/schema/dic/services/services-1.0.xsd">
-    <services>
-        <service id="monolog.logger" parent="monolog.logger_prototype" public="false">
-            <argument index="0">app</argument>
-        </service>
-
-        <service id="logger" alias="monolog.logger" />
-
-        <service id="monolog.logger" parent="monolog.logger_prototype" public="false">
-            <argument index="0">app</argument>
-        </service>
-        <service id="monolog.logger_prototype" class="Symfony\Bridge\Monolog\Logger" abstract="true">
-            <argument /><!-- Channel -->
-        </service>
-    </services>
-</container>
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/xml/services2.xml b/vendor/symfony/dependency-injection/Tests/Fixtures/xml/services2.xml
deleted file mode 100644
index f1ac14d..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/xml/services2.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" ?>
-
-<container xmlns="http://symfony.com/schema/dic/services"
-    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-    xsi:schemaLocation="http://symfony.com/schema/dic/services http://symfony.com/schema/dic/services/services-1.0.xsd">
-  <parameters>
-    <parameter>a string</parameter>
-    <parameter key="FOO">bar</parameter>
-    <parameter key="values" type="collection">
-      <parameter>0</parameter>
-      <parameter key="integer">4</parameter>
-      <parameter key="100">null</parameter>
-      <parameter type="string">true</parameter>
-      <parameter>true</parameter>
-      <parameter>false</parameter>
-      <parameter>on</parameter>
-      <parameter>off</parameter>
-      <parameter key="float">1.3</parameter>
-      <parameter>1000.3</parameter>
-      <parameter>a string</parameter>
-      <parameter type="collection">
-        <parameter>foo</parameter>
-        <parameter>bar</parameter>
-      </parameter>
-    </parameter>
-    <parameter key="MixedCase" type="collection"> <!-- Should be lower cased -->
-      <parameter key="MixedCaseKey">value</parameter> <!-- Should stay mixed case -->
-    </parameter>
-    <parameter key="constant" type="constant">PHP_EOL</parameter>
-  </parameters>
-</container>
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/xml/services20.xml b/vendor/symfony/dependency-injection/Tests/Fixtures/xml/services20.xml
deleted file mode 100644
index 5d799fc..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/xml/services20.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<container xmlns="http://symfony.com/schema/dic/services" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://symfony.com/schema/dic/services http://symfony.com/schema/dic/services/services-1.0.xsd">
-  <services>
-    <service id="request" class="Request" synthetic="true" synchronized="true"/>
-    <service id="depends_on_request" class="stdClass">
-      <call method="setRequest">
-        <argument type="service" id="request" on-invalid="null" strict="false"/>
-      </call>
-    </service>
-  </services>
-</container>
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/xml/services21.xml b/vendor/symfony/dependency-injection/Tests/Fixtures/xml/services21.xml
deleted file mode 100644
index 329bc3d..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/xml/services21.xml
+++ /dev/null
@@ -1,21 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<container xmlns="http://symfony.com/schema/dic/services" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://symfony.com/schema/dic/services http://symfony.com/schema/dic/services/services-1.0.xsd">
-  <services>
-    <service id="foo" class="Foo">
-      <factory method="createFoo">
-        <service class="FooFactory">
-          <factory method="createFooFactory">
-            <service class="Foobar"/>
-          </factory>
-        </service>
-      </factory>
-      <configurator method="configureFoo">
-        <service class="Bar">
-          <configurator method="configureBar">
-            <service class="Baz"/>
-          </configurator>
-        </service>
-      </configurator>
-    </service>
-  </services>
-</container>
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/xml/services3.xml b/vendor/symfony/dependency-injection/Tests/Fixtures/xml/services3.xml
deleted file mode 100644
index 87bf183..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/xml/services3.xml
+++ /dev/null
@@ -1,13 +0,0 @@
-<?xml version="1.0" ?>
-
-<container xmlns="http://symfony.com/schema/dic/services"
-    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-    xsi:schemaLocation="http://symfony.com/schema/dic/services http://symfony.com/schema/dic/services/services-1.0.xsd">
-  <parameters>
-    <parameter key="foo">foo</parameter>
-    <parameter key="values" type="collection">
-      <parameter>true</parameter>
-      <parameter>false</parameter>
-    </parameter>
-  </parameters>
-</container>
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/xml/services4.xml b/vendor/symfony/dependency-injection/Tests/Fixtures/xml/services4.xml
deleted file mode 100644
index 03ad9f8..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/xml/services4.xml
+++ /dev/null
@@ -1,13 +0,0 @@
-<?xml version="1.0" ?>
-
-<container xmlns="http://symfony.com/schema/dic/services"
-    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-    xsi:schemaLocation="http://symfony.com/schema/dic/services http://symfony.com/schema/dic/services/services-1.0.xsd">
-  <imports>
-    <import resource="services2.xml" />
-    <import resource="services3.xml" />
-    <import resource="../ini/parameters.ini" />
-    <import resource="../ini/parameters2.ini" />
-    <import resource="../yaml/services13.yml" />
-  </imports>
-</container>
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/xml/services4_bad_import.xml b/vendor/symfony/dependency-injection/Tests/Fixtures/xml/services4_bad_import.xml
deleted file mode 100644
index 0b7f10a..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/xml/services4_bad_import.xml
+++ /dev/null
@@ -1,9 +0,0 @@
-<?xml version="1.0" ?>
-
-<container xmlns="http://symfony.com/schema/dic/services"
-    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-    xsi:schemaLocation="http://symfony.com/schema/dic/services http://symfony.com/schema/dic/services/services-1.0.xsd">
-  <imports>
-    <import resource="foo_fake.xml" ignore-errors="true" />
-  </imports>
-</container>
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/xml/services5.xml b/vendor/symfony/dependency-injection/Tests/Fixtures/xml/services5.xml
deleted file mode 100644
index acb93e7..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/xml/services5.xml
+++ /dev/null
@@ -1,21 +0,0 @@
-<?xml version="1.0" ?>
-
-<container xmlns="http://symfony.com/schema/dic/services"
-    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-    xsi:schemaLocation="http://symfony.com/schema/dic/services http://symfony.com/schema/dic/services/services-1.0.xsd">
-  <services>
-    <service id="foo" class="FooClass">
-      <argument type="service">
-        <service class="BarClass">
-          <argument type="service">
-            <service class="BazClass">
-            </service>
-          </argument>
-        </service>
-      </argument>
-      <property name="p" type="service">
-        <service class="BazClass" />
-      </property>
-    </service>
-  </services>
-</container>
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/xml/services6.xml b/vendor/symfony/dependency-injection/Tests/Fixtures/xml/services6.xml
deleted file mode 100644
index 9eb7b89..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/xml/services6.xml
+++ /dev/null
@@ -1,62 +0,0 @@
-<?xml version="1.0" ?>
-
-<container xmlns="http://symfony.com/schema/dic/services"
-    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-    xsi:schemaLocation="http://symfony.com/schema/dic/services http://symfony.com/schema/dic/services/services-1.0.xsd">
-  <services>
-    <service id="foo" class="FooClass" />
-    <service id="baz" class="BazClass" />
-    <service id="scope.container" class="FooClass" scope="container" />
-    <service id="scope.custom" class="FooClass" scope="custom" />
-    <service id="scope.prototype" class="FooClass" scope="prototype" />
-    <service id="file" class="FooClass">
-      <file>%path%/foo.php</file>
-    </service>
-    <service id="arguments" class="FooClass">
-      <argument>foo</argument>
-      <argument type="service" id="foo" />
-      <argument type="collection">
-        <argument>true</argument>
-        <argument>false</argument>
-      </argument>
-    </service>
-    <service id="configurator1" class="FooClass">
-      <configurator function="sc_configure" />
-    </service>
-    <service id="configurator2" class="FooClass">
-      <configurator service="baz" method="configure" />
-    </service>
-    <service id="configurator3" class="FooClass">
-      <configurator class="BazClass" method="configureStatic" />
-    </service>
-    <service id="method_call1" class="FooClass">
-      <call method="setBar" />
-      <call method="setBar">
-        <argument type="expression">service("foo").foo() ~ (container.hasparameter("foo") ? parameter("foo") : "default")</argument>
-      </call>
-    </service>
-    <service id="method_call2" class="FooClass">
-      <call method="setBar">
-        <argument>foo</argument>
-        <argument type="service" id="foo" />
-        <argument type="collection">
-          <argument>true</argument>
-          <argument>false</argument>
-        </argument>
-      </call>
-    </service>
-    <service id="alias_for_foo" alias="foo" />
-    <service id="another_alias_for_foo" alias="foo" public="false" />
-    <service id="decorator_service" decorates="decorated" />
-    <service id="decorator_service_with_name" decorates="decorated" decoration-inner-name="decorated.pif-pouf"/>
-    <service id="new_factory1" class="FooBarClass">
-      <factory function="factory" />
-    </service>
-    <service id="new_factory2" class="FooBarClass">
-      <factory service="baz" method="getClass" />
-    </service>
-    <service id="new_factory3" class="FooBarClass">
-      <factory class="BazClass" method="getInstance" />
-    </service>
-  </services>
-</container>
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/xml/services7.xml b/vendor/symfony/dependency-injection/Tests/Fixtures/xml/services7.xml
deleted file mode 100644
index 824d8b5..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/xml/services7.xml
+++ /dev/null
@@ -1,9 +0,0 @@
-<?xml version="1.0" ?>
-
-<container xmlns="http://symfony.com/schema/dic/services"
-    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-    xsi:schemaLocation="http://symfony.com/schema/dic/services http://symfony.com/schema/dic/services/services-1.0.xsd">
-  <services>
-    <service id="foo" class="BarClass" />
-  </services>
-</container>
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/xml/services8.xml b/vendor/symfony/dependency-injection/Tests/Fixtures/xml/services8.xml
deleted file mode 100644
index b17e500..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/xml/services8.xml
+++ /dev/null
@@ -1,22 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-
-<container xmlns="http://symfony.com/schema/dic/services"
-    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-    xsi:schemaLocation="http://symfony.com/schema/dic/services http://symfony.com/schema/dic/services/services-1.0.xsd">
-  <parameters>
-    <parameter key="foo">%baz%</parameter>
-    <parameter key="baz">bar</parameter>
-    <parameter key="bar">foo is %%foo bar</parameter>
-    <parameter key="escape">@escapeme</parameter>
-    <parameter key="values" type="collection">
-      <parameter>true</parameter>
-      <parameter>false</parameter>
-      <parameter>null</parameter>
-      <parameter>0</parameter>
-      <parameter>1000.3</parameter>
-      <parameter type="string">true</parameter>
-      <parameter type="string">false</parameter>
-      <parameter type="string">null</parameter>
-    </parameter>
-  </parameters>
-</container>
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/xml/services9.xml b/vendor/symfony/dependency-injection/Tests/Fixtures/xml/services9.xml
deleted file mode 100644
index c4ddc41..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/xml/services9.xml
+++ /dev/null
@@ -1,106 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<container xmlns="http://symfony.com/schema/dic/services" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://symfony.com/schema/dic/services http://symfony.com/schema/dic/services/services-1.0.xsd">
-  <parameters>
-    <parameter key="baz_class">BazClass</parameter>
-    <parameter key="foo_class">Bar\FooClass</parameter>
-    <parameter key="foo">bar</parameter>
-  </parameters>
-  <services>
-    <service id="foo" class="Bar\FooClass">
-      <tag name="foo" foo="foo"/>
-      <tag name="foo" bar="bar" baz="baz"/>
-      <argument>foo</argument>
-      <argument type="service" id="foo.baz"/>
-      <argument type="collection">
-        <argument key="%foo%">foo is %foo%</argument>
-        <argument key="foobar">%foo%</argument>
-      </argument>
-      <argument>true</argument>
-      <argument type="service" id="service_container"/>
-      <property name="foo">bar</property>
-      <property name="moo" type="service" id="foo.baz"/>
-      <property name="qux" type="collection">
-        <property key="%foo%">foo is %foo%</property>
-        <property key="foobar">%foo%</property>
-      </property>
-      <call method="setBar">
-        <argument type="service" id="bar"/>
-      </call>
-      <call method="initialize"/>
-      <factory class="Bar\FooClass" method="getInstance"/>
-      <configurator function="sc_configure"/>
-    </service>
-    <service id="foo.baz" class="%baz_class%">
-      <factory class="%baz_class%" method="getInstance"/>
-      <configurator class="%baz_class%" method="configureStatic1"/>
-    </service>
-    <service id="bar" class="Bar\FooClass">
-      <argument>foo</argument>
-      <argument type="service" id="foo.baz"/>
-      <argument>%foo_bar%</argument>
-      <configurator service="foo.baz" method="configure"/>
-    </service>
-    <service id="foo_bar" class="%foo_class%" scope="prototype"/>
-    <service id="method_call1" class="Bar\FooClass">
-      <file>%path%foo.php</file>
-      <call method="setBar">
-        <argument type="service" id="foo"/>
-      </call>
-      <call method="setBar">
-        <argument type="service" id="foo2" on-invalid="null"/>
-      </call>
-      <call method="setBar">
-        <argument type="service" id="foo3" on-invalid="ignore"/>
-      </call>
-      <call method="setBar">
-        <argument type="service" id="foobaz" on-invalid="ignore"/>
-      </call>
-      <call method="setBar">
-        <argument type="expression">service("foo").foo() ~ (container.hasparameter("foo") ? parameter("foo") : "default")</argument>
-      </call>
-    </service>
-    <service id="foo_with_inline" class="Foo">
-      <call method="setBar">
-        <argument type="service" id="inlined"/>
-      </call>
-    </service>
-    <service id="inlined" class="Bar" public="false">
-      <property name="pub">pub</property>
-      <call method="setBaz">
-        <argument type="service" id="baz"/>
-      </call>
-    </service>
-    <service id="baz" class="Baz">
-      <call method="setFoo">
-        <argument type="service" id="foo_with_inline"/>
-      </call>
-    </service>
-    <service id="request" class="Request" synthetic="true"/>
-    <service id="configurator_service" class="ConfClass" public="false">
-      <call method="setFoo">
-        <argument type="service" id="baz"/>
-      </call>
-    </service>
-    <service id="configured_service" class="stdClass">
-      <configurator service="configurator_service" method="configureStdClass"/>
-    </service>
-    <service id="decorated" class="stdClass"/>
-    <service id="decorator_service" class="stdClass" decorates="decorated"/>
-    <service id="decorator_service_with_name" class="stdClass" decorates="decorated" decoration-inner-name="decorated.pif-pouf"/>
-    <service id="new_factory" class="FactoryClass" public="false">
-      <property name="foo">bar</property>
-    </service>
-    <service id="factory_service" class="Bar">
-      <factory service="foo.baz" method="getInstance"/>
-    </service>
-    <service id="new_factory_service" class="FooBarBaz">
-      <property name="foo">bar</property>
-      <factory service="new_factory" method="getInstance"/>
-    </service>
-    <service id="service_from_static_method" class="Bar\FooClass">
-      <factory class="Bar\FooClass" method="getInstance"/>
-    </service>
-    <service id="alias_for_foo" alias="foo"/>
-    <service id="alias_for_alias" alias="foo"/>
-  </services>
-</container>
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/xml/withdoctype.xml b/vendor/symfony/dependency-injection/Tests/Fixtures/xml/withdoctype.xml
deleted file mode 100644
index f217d5b..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/xml/withdoctype.xml
+++ /dev/null
@@ -1,3 +0,0 @@
-<?xml version="1.0"?>
-<!DOCTYPE foo>
-<foo></foo>
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/yaml/bad_calls.yml b/vendor/symfony/dependency-injection/Tests/Fixtures/yaml/bad_calls.yml
deleted file mode 100644
index 3f34b07..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/yaml/bad_calls.yml
+++ /dev/null
@@ -1,4 +0,0 @@
-services:
-    method_call1:
-        class: FooClass
-        calls: foo
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/yaml/bad_format.yml b/vendor/symfony/dependency-injection/Tests/Fixtures/yaml/bad_format.yml
deleted file mode 100644
index 1f58cac..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/yaml/bad_format.yml
+++ /dev/null
@@ -1,2 +0,0 @@
-parameters:
-	FOO: bar
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/yaml/bad_import.yml b/vendor/symfony/dependency-injection/Tests/Fixtures/yaml/bad_import.yml
deleted file mode 100644
index 0765dc8..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/yaml/bad_import.yml
+++ /dev/null
@@ -1,2 +0,0 @@
-imports:
-    - foo.yml
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/yaml/bad_imports.yml b/vendor/symfony/dependency-injection/Tests/Fixtures/yaml/bad_imports.yml
deleted file mode 100644
index 1ce9d57..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/yaml/bad_imports.yml
+++ /dev/null
@@ -1,2 +0,0 @@
-imports:
-    foo:bar
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/yaml/bad_parameters.yml b/vendor/symfony/dependency-injection/Tests/Fixtures/yaml/bad_parameters.yml
deleted file mode 100644
index bbd13ac..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/yaml/bad_parameters.yml
+++ /dev/null
@@ -1,2 +0,0 @@
-parameters:
-    foo:bar
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/yaml/bad_service.yml b/vendor/symfony/dependency-injection/Tests/Fixtures/yaml/bad_service.yml
deleted file mode 100644
index 811af3c..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/yaml/bad_service.yml
+++ /dev/null
@@ -1,2 +0,0 @@
-services:
-    foo: bar
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/yaml/bad_services.yml b/vendor/symfony/dependency-injection/Tests/Fixtures/yaml/bad_services.yml
deleted file mode 100644
index cfbf17c..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/yaml/bad_services.yml
+++ /dev/null
@@ -1 +0,0 @@
-services: foo
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/yaml/badtag1.yml b/vendor/symfony/dependency-injection/Tests/Fixtures/yaml/badtag1.yml
deleted file mode 100644
index 14536fd..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/yaml/badtag1.yml
+++ /dev/null
@@ -1,5 +0,0 @@
-services:
-    foo_service:
-        class:    FooClass
-        # tags is not an array
-        tags:     string
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/yaml/badtag2.yml b/vendor/symfony/dependency-injection/Tests/Fixtures/yaml/badtag2.yml
deleted file mode 100644
index 9028814..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/yaml/badtag2.yml
+++ /dev/null
@@ -1,6 +0,0 @@
-services:
-    foo_service:
-        class:    FooClass
-        tags:
-          # tag is missing the name key
-          foo_tag:   { foo: bar }
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/yaml/badtag3.yml b/vendor/symfony/dependency-injection/Tests/Fixtures/yaml/badtag3.yml
deleted file mode 100644
index 72ec4e8..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/yaml/badtag3.yml
+++ /dev/null
@@ -1,6 +0,0 @@
-services:
-    foo_service:
-        class:    FooClass
-        tags:
-          # tag-attribute is not a scalar
-          - { name: foo, bar: { foo: foo, bar: bar } }
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/yaml/badtag4.yml b/vendor/symfony/dependency-injection/Tests/Fixtures/yaml/badtag4.yml
deleted file mode 100644
index e8e9939..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/yaml/badtag4.yml
+++ /dev/null
@@ -1,6 +0,0 @@
-services:
-    foo_service:
-        class:    FooClass
-        tags:
-          # tag is not an array
-          - foo
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/yaml/legacy-services6.yml b/vendor/symfony/dependency-injection/Tests/Fixtures/yaml/legacy-services6.yml
deleted file mode 100644
index 46ac679..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/yaml/legacy-services6.yml
+++ /dev/null
@@ -1,8 +0,0 @@
-services:
-    constructor: { class: FooClass, factory_method: getInstance }
-    factory_service: { class: BazClass, factory_method: getInstance, factory_service: baz_factory }
-    request:
-        class: Request
-        synthetic: true
-        synchronized: true
-        lazy: true
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/yaml/legacy-services9.yml b/vendor/symfony/dependency-injection/Tests/Fixtures/yaml/legacy-services9.yml
deleted file mode 100644
index 64d1726..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/yaml/legacy-services9.yml
+++ /dev/null
@@ -1,28 +0,0 @@
-parameters:
-    baz_class: BazClass
-    foo: bar
-
-services:
-    foo:
-        class: Bar\FooClass
-        tags:
-            - { name: foo, foo: foo }
-            - { name: foo, bar: bar }
-        factory_class: Bar\FooClass
-        factory_method: getInstance
-        arguments: [foo, '@foo.baz', { '%foo%': 'foo is %foo%', foobar: '%foo%' }, true, '@service_container']
-        properties: { foo: bar, moo: '@foo.baz', qux: { '%foo%': 'foo is %foo%', foobar: '%foo%' } }
-        calls:
-            - [setBar, ['@bar']]
-            - [initialize, {  }]
-
-        configurator: sc_configure
-    foo.baz:
-        class: %baz_class%
-        factory_class: %baz_class%
-        factory_method: getInstance
-        configurator: ['%baz_class%', configureStatic1]
-    factory_service:
-        class: Bar
-        factory_method: getInstance
-        factory_service: foo.baz
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/yaml/nonvalid1.yml b/vendor/symfony/dependency-injection/Tests/Fixtures/yaml/nonvalid1.yml
deleted file mode 100644
index 4eddb87..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/yaml/nonvalid1.yml
+++ /dev/null
@@ -1,2 +0,0 @@
-foo:
-  bar
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/yaml/nonvalid2.yml b/vendor/symfony/dependency-injection/Tests/Fixtures/yaml/nonvalid2.yml
deleted file mode 100644
index c508d53..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/yaml/nonvalid2.yml
+++ /dev/null
@@ -1 +0,0 @@
-false
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/yaml/services1.yml b/vendor/symfony/dependency-injection/Tests/Fixtures/yaml/services1.yml
deleted file mode 100644
index 8b13789..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/yaml/services1.yml
+++ /dev/null
@@ -1 +0,0 @@
-
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/yaml/services10.yml b/vendor/symfony/dependency-injection/Tests/Fixtures/yaml/services10.yml
deleted file mode 100644
index f2f8d95..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/yaml/services10.yml
+++ /dev/null
@@ -1,9 +0,0 @@
-parameters:
-    project.parameter.foo: BAR
-
-services:
-    project.service.foo:
-        class: BAR
-
-project:
-    test: %project.parameter.foo%
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/yaml/services11.yml b/vendor/symfony/dependency-injection/Tests/Fixtures/yaml/services11.yml
deleted file mode 100644
index 40126f0..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/yaml/services11.yml
+++ /dev/null
@@ -1 +0,0 @@
-foobarfoobar: {}
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/yaml/services13.yml b/vendor/symfony/dependency-injection/Tests/Fixtures/yaml/services13.yml
deleted file mode 100644
index d52d355..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/yaml/services13.yml
+++ /dev/null
@@ -1,3 +0,0 @@
-# used to test imports in XML
-parameters:
-    imported_from_yaml: true
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/yaml/services14.yml b/vendor/symfony/dependency-injection/Tests/Fixtures/yaml/services14.yml
deleted file mode 100644
index 4c188c5..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/yaml/services14.yml
+++ /dev/null
@@ -1,3 +0,0 @@
-services:
-    factory: { class: FooBarClass, factory: baz:getClass}
-    factory_with_static_call: { class: FooBarClass, factory: FooBacFactory::createFooBar}
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/yaml/services2.yml b/vendor/symfony/dependency-injection/Tests/Fixtures/yaml/services2.yml
deleted file mode 100644
index 3c12746..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/yaml/services2.yml
+++ /dev/null
@@ -1,12 +0,0 @@
-parameters:
-    FOO: bar
-    values:
-        - true
-        - false
-        - 0
-        - 1000.3
-    bar: foo
-    escape: @@escapeme
-    foo_bar: @foo_bar
-    MixedCase:
-        MixedCaseKey: value
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/yaml/services20.yml b/vendor/symfony/dependency-injection/Tests/Fixtures/yaml/services20.yml
deleted file mode 100644
index 847f656..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/yaml/services20.yml
+++ /dev/null
@@ -1,9 +0,0 @@
-services:
-    request:
-        class: Request
-        synthetic: true
-        synchronized: true
-    depends_on_request:
-        class: stdClass
-        calls:
-            - [setRequest, ['@?request']]
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/yaml/services21.yml b/vendor/symfony/dependency-injection/Tests/Fixtures/yaml/services21.yml
deleted file mode 100644
index da717a8..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/yaml/services21.yml
+++ /dev/null
@@ -1,15 +0,0 @@
-services:
-    manager:
-        class: UserManager
-        arguments:
-          - true
-        calls:
-          - method: setLogger
-            arguments:
-              - @logger
-          - method: setClass
-            arguments:
-              - User
-        tags:
-          - name: manager
-            alias: user
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/yaml/services3.yml b/vendor/symfony/dependency-injection/Tests/Fixtures/yaml/services3.yml
deleted file mode 100644
index 0e92cdf..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/yaml/services3.yml
+++ /dev/null
@@ -1,5 +0,0 @@
-parameters:
-    foo: foo
-    values:
-        - true
-        - false
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/yaml/services4.yml b/vendor/symfony/dependency-injection/Tests/Fixtures/yaml/services4.yml
deleted file mode 100644
index 8e0987f..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/yaml/services4.yml
+++ /dev/null
@@ -1,7 +0,0 @@
-imports:
-    - { resource: services2.yml }
-    - { resource: services3.yml }
-    - { resource: "../php/simple.php" }
-    - { resource: "../ini/parameters.ini", class: Symfony\Component\DependencyInjection\Loader\IniFileLoader }
-    - { resource: "../ini/parameters2.ini" }
-    - { resource: "../xml/services13.xml" }
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/yaml/services4_bad_import.yml b/vendor/symfony/dependency-injection/Tests/Fixtures/yaml/services4_bad_import.yml
deleted file mode 100644
index f7089fc..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/yaml/services4_bad_import.yml
+++ /dev/null
@@ -1,2 +0,0 @@
-imports:
-    - { resource: foo_fake.yml, ignore_errors: true }
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/yaml/services6.yml b/vendor/symfony/dependency-injection/Tests/Fixtures/yaml/services6.yml
deleted file mode 100644
index 78abf4d..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/yaml/services6.yml
+++ /dev/null
@@ -1,33 +0,0 @@
-services:
-    foo: { class: FooClass }
-    baz: { class: BazClass }
-    scope.container: { class: FooClass, scope: container }
-    scope.custom: { class: FooClass, scope: custom }
-    scope.prototype: { class: FooClass, scope: prototype }
-    file: { class: FooClass, file: %path%/foo.php }
-    arguments: { class: FooClass, arguments: [foo, @foo, [true, false]] }
-    configurator1: { class: FooClass, configurator: sc_configure }
-    configurator2: { class: FooClass, configurator: [@baz, configure] }
-    configurator3: { class: FooClass, configurator: [BazClass, configureStatic] }
-    method_call1:
-        class: FooClass
-        calls:
-            - [ setBar, [] ]
-            - [ setBar ]
-            - [ setBar, ['@=service("foo").foo() ~ (container.hasparameter("foo") ? parameter("foo") : "default")'] ]
-    method_call2:
-        class: FooClass
-        calls:
-            - [ setBar, [ foo, @foo, [true, false] ] ]
-    alias_for_foo: @foo
-    another_alias_for_foo:
-        alias: foo
-        public: false
-    decorator_service:
-        decorates: decorated
-    decorator_service_with_name:
-        decorates: decorated
-        decoration_inner_name: decorated.pif-pouf
-    new_factory1: { class: FooBarClass, factory: factory}
-    new_factory2: { class: FooBarClass, factory: [@baz, getClass]}
-    new_factory3: { class: FooBarClass, factory: [BazClass, getInstance]}
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/yaml/services7.yml b/vendor/symfony/dependency-injection/Tests/Fixtures/yaml/services7.yml
deleted file mode 100644
index 09064f2..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/yaml/services7.yml
+++ /dev/null
@@ -1,2 +0,0 @@
-services:
-    foo: { class: BarClass }
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/yaml/services8.yml b/vendor/symfony/dependency-injection/Tests/Fixtures/yaml/services8.yml
deleted file mode 100644
index a1fb590..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/yaml/services8.yml
+++ /dev/null
@@ -1,7 +0,0 @@
-parameters:
-    foo: '%baz%'
-    baz: bar
-    bar: 'foo is %%foo bar'
-    escape: '@@escapeme'
-    values: [true, false, null, 0, 1000.3, 'true', 'false', 'null']
-
diff --git a/vendor/symfony/dependency-injection/Tests/Fixtures/yaml/services9.yml b/vendor/symfony/dependency-injection/Tests/Fixtures/yaml/services9.yml
deleted file mode 100644
index fdab85f..0000000
--- a/vendor/symfony/dependency-injection/Tests/Fixtures/yaml/services9.yml
+++ /dev/null
@@ -1,94 +0,0 @@
-parameters:
-    baz_class: BazClass
-    foo_class: Bar\FooClass
-    foo: bar
-
-services:
-    foo:
-        class: Bar\FooClass
-        tags:
-            - { name: foo, foo: foo }
-            - { name: foo, bar: bar, baz: baz }
-        arguments: [foo, '@foo.baz', { '%foo%': 'foo is %foo%', foobar: '%foo%' }, true, '@service_container']
-        properties: { foo: bar, moo: '@foo.baz', qux: { '%foo%': 'foo is %foo%', foobar: '%foo%' } }
-        calls:
-            - [setBar, ['@bar']]
-            - [initialize, {  }]
-
-        factory: [Bar\FooClass, getInstance]
-        configurator: sc_configure
-    foo.baz:
-        class: %baz_class%
-        factory: ['%baz_class%', getInstance]
-        configurator: ['%baz_class%', configureStatic1]
-    bar:
-        class: Bar\FooClass
-        arguments: [foo, '@foo.baz', '%foo_bar%']
-        configurator: ['@foo.baz', configure]
-    foo_bar:
-        class: %foo_class%
-        scope: prototype
-    method_call1:
-        class: Bar\FooClass
-        file: %path%foo.php
-        calls:
-            - [setBar, ['@foo']]
-            - [setBar, ['@?foo2']]
-            - [setBar, ['@?foo3']]
-            - [setBar, ['@?foobaz']]
-            - [setBar, ['@=service("foo").foo() ~ (container.hasparameter("foo") ? parameter("foo") : "default")']]
-
-    foo_with_inline:
-        class: Foo
-        calls:
-            - [setBar, ['@inlined']]
-
-    inlined:
-        class: Bar
-        public: false
-        properties: { pub: pub }
-        calls:
-            - [setBaz, ['@baz']]
-
-    baz:
-        class: Baz
-        calls:
-            - [setFoo, ['@foo_with_inline']]
-
-    request:
-        class: Request
-        synthetic: true
-    configurator_service:
-        class: ConfClass
-        public: false
-        calls:
-            - [setFoo, ['@baz']]
-
-    configured_service:
-        class: stdClass
-        configurator: ['@configurator_service', configureStdClass]
-    decorated:
-        class: stdClass
-    decorator_service:
-        class: stdClass
-        decorates: decorated
-    decorator_service_with_name:
-        class: stdClass
-        decorates: decorated
-        decoration_inner_name: decorated.pif-pouf
-    new_factory:
-        class: FactoryClass
-        public: false
-        properties: { foo: bar }
-    factory_service:
-        class: Bar
-        factory: ['@foo.baz', getInstance]
-    new_factory_service:
-        class: FooBarBaz
-        properties: { foo: bar }
-        factory: ['@new_factory', getInstance]
-    service_from_static_method:
-        class: Bar\FooClass
-        factory: [Bar\FooClass, getInstance]
-    alias_for_foo: @foo
-    alias_for_alias: @foo
diff --git a/vendor/symfony/dependency-injection/Tests/LazyProxy/Instantiator/RealServiceInstantiatorTest.php b/vendor/symfony/dependency-injection/Tests/LazyProxy/Instantiator/RealServiceInstantiatorTest.php
deleted file mode 100644
index cb44024..0000000
--- a/vendor/symfony/dependency-injection/Tests/LazyProxy/Instantiator/RealServiceInstantiatorTest.php
+++ /dev/null
@@ -1,37 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\DependencyInjection\Tests\LazyProxy\Instantiator;
-
-use Symfony\Component\DependencyInjection\Definition;
-use Symfony\Component\DependencyInjection\LazyProxy\Instantiator\RealServiceInstantiator;
-
-/**
- * Tests for {@see \Symfony\Component\DependencyInjection\Instantiator\RealServiceInstantiator}.
- *
- * @author Marco Pivetta <ocramius@gmail.com>
- *
- * @covers \Symfony\Component\DependencyInjection\LazyProxy\Instantiator\RealServiceInstantiator
- */
-class RealServiceInstantiatorTest extends \PHPUnit_Framework_TestCase
-{
-    public function testInstantiateProxy()
-    {
-        $instantiator = new RealServiceInstantiator();
-        $instance = new \stdClass();
-        $container = $this->getMock('Symfony\Component\DependencyInjection\ContainerInterface');
-        $callback = function () use ($instance) {
-            return $instance;
-        };
-
-        $this->assertSame($instance, $instantiator->instantiateProxy($container, new Definition(), 'foo', $callback));
-    }
-}
diff --git a/vendor/symfony/dependency-injection/Tests/LazyProxy/PhpDumper/NullDumperTest.php b/vendor/symfony/dependency-injection/Tests/LazyProxy/PhpDumper/NullDumperTest.php
deleted file mode 100644
index 2081ebc..0000000
--- a/vendor/symfony/dependency-injection/Tests/LazyProxy/PhpDumper/NullDumperTest.php
+++ /dev/null
@@ -1,35 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\DependencyInjection\Tests\LazyProxy\PhpDumper;
-
-use Symfony\Component\DependencyInjection\Definition;
-use Symfony\Component\DependencyInjection\LazyProxy\PhpDumper\NullDumper;
-
-/**
- * Tests for {@see \Symfony\Component\DependencyInjection\PhpDumper\NullDumper}.
- *
- * @author Marco Pivetta <ocramius@gmail.com>
- *
- * @covers \Symfony\Component\DependencyInjection\LazyProxy\PhpDumper\NullDumper
- */
-class NullDumperTest extends \PHPUnit_Framework_TestCase
-{
-    public function testNullDumper()
-    {
-        $dumper = new NullDumper();
-        $definition = new Definition('stdClass');
-
-        $this->assertFalse($dumper->isProxyCandidate($definition));
-        $this->assertSame('', $dumper->getProxyFactoryCode($definition, 'foo'));
-        $this->assertSame('', $dumper->getProxyCode($definition));
-    }
-}
diff --git a/vendor/symfony/dependency-injection/Tests/LegacyContainerBuilderTest.php b/vendor/symfony/dependency-injection/Tests/LegacyContainerBuilderTest.php
deleted file mode 100644
index 40aec20..0000000
--- a/vendor/symfony/dependency-injection/Tests/LegacyContainerBuilderTest.php
+++ /dev/null
@@ -1,46 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\DependencyInjection\Tests;
-
-use Symfony\Component\DependencyInjection\ContainerBuilder;
-use Symfony\Component\DependencyInjection\Reference;
-
-/**
- * @group legacy
- */
-class LegacyContainerBuilderTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @covers Symfony\Component\DependencyInjection\ContainerBuilder::createService
-     */
-    public function testCreateServiceFactoryMethod()
-    {
-        $builder = new ContainerBuilder();
-        $builder->register('bar', 'stdClass');
-        $builder->register('foo1', 'Bar\FooClass')->setFactoryClass('Bar\FooClass')->setFactoryMethod('getInstance')->addArgument(array('foo' => '%value%', '%value%' => 'foo', new Reference('bar')));
-        $builder->setParameter('value', 'bar');
-        $this->assertTrue($builder->get('foo1')->called, '->createService() calls the factory method to create the service instance');
-        $this->assertEquals(array('foo' => 'bar', 'bar' => 'foo', $builder->get('bar')), $builder->get('foo1')->arguments, '->createService() passes the arguments to the factory method');
-    }
-
-    /**
-     * @covers Symfony\Component\DependencyInjection\ContainerBuilder::createService
-     */
-    public function testCreateServiceFactoryService()
-    {
-        $builder = new ContainerBuilder();
-        $builder->register('baz_service')->setFactoryService('baz_factory')->setFactoryMethod('getInstance');
-        $builder->register('baz_factory', 'BazClass');
-
-        $this->assertInstanceOf('BazClass', $builder->get('baz_service'));
-    }
-}
diff --git a/vendor/symfony/dependency-injection/Tests/LegacyDefinitionTest.php b/vendor/symfony/dependency-injection/Tests/LegacyDefinitionTest.php
deleted file mode 100644
index 07891ff..0000000
--- a/vendor/symfony/dependency-injection/Tests/LegacyDefinitionTest.php
+++ /dev/null
@@ -1,44 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\DependencyInjection\Tests;
-
-use Symfony\Component\DependencyInjection\Definition;
-
-/**
- * @group legacy
- */
-class LegacyDefinitionTest extends \PHPUnit_Framework_TestCase
-{
-    public function testSetGetFactoryClass()
-    {
-        $def = new Definition('stdClass');
-        $this->assertNull($def->getFactoryClass());
-        $this->assertSame($def, $def->setFactoryClass('stdClass2'), '->setFactoryClass() implements a fluent interface.');
-        $this->assertEquals('stdClass2', $def->getFactoryClass(), '->getFactoryClass() returns current class to construct this service.');
-    }
-
-    public function testSetGetFactoryMethod()
-    {
-        $def = new Definition('stdClass');
-        $this->assertNull($def->getFactoryMethod());
-        $this->assertSame($def, $def->setFactoryMethod('foo'), '->setFactoryMethod() implements a fluent interface');
-        $this->assertEquals('foo', $def->getFactoryMethod(), '->getFactoryMethod() returns the factory method name');
-    }
-
-    public function testSetGetFactoryService()
-    {
-        $def = new Definition('stdClass');
-        $this->assertNull($def->getFactoryService());
-        $this->assertSame($def, $def->setFactoryService('foo.bar'), '->setFactoryService() implements a fluent interface.');
-        $this->assertEquals('foo.bar', $def->getFactoryService(), '->getFactoryService() returns current service to construct this service.');
-    }
-}
diff --git a/vendor/symfony/dependency-injection/Tests/Loader/ClosureLoaderTest.php b/vendor/symfony/dependency-injection/Tests/Loader/ClosureLoaderTest.php
deleted file mode 100644
index 483e30b..0000000
--- a/vendor/symfony/dependency-injection/Tests/Loader/ClosureLoaderTest.php
+++ /dev/null
@@ -1,43 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\DependencyInjection\Tests\Loader;
-
-use Symfony\Component\DependencyInjection\ContainerBuilder;
-use Symfony\Component\DependencyInjection\Loader\ClosureLoader;
-
-class ClosureLoaderTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @covers Symfony\Component\DependencyInjection\Loader\ClosureLoader::supports
-     */
-    public function testSupports()
-    {
-        $loader = new ClosureLoader(new ContainerBuilder());
-
-        $this->assertTrue($loader->supports(function ($container) {}), '->supports() returns true if the resource is loadable');
-        $this->assertFalse($loader->supports('foo.foo'), '->supports() returns true if the resource is loadable');
-    }
-
-    /**
-     * @covers Symfony\Component\DependencyInjection\Loader\ClosureLoader::load
-     */
-    public function testLoad()
-    {
-        $loader = new ClosureLoader($container = new ContainerBuilder());
-
-        $loader->load(function ($container) {
-            $container->setParameter('foo', 'foo');
-        });
-
-        $this->assertEquals('foo', $container->getParameter('foo'), '->load() loads a \Closure resource');
-    }
-}
diff --git a/vendor/symfony/dependency-injection/Tests/Loader/IniFileLoaderTest.php b/vendor/symfony/dependency-injection/Tests/Loader/IniFileLoaderTest.php
deleted file mode 100644
index 9188018..0000000
--- a/vendor/symfony/dependency-injection/Tests/Loader/IniFileLoaderTest.php
+++ /dev/null
@@ -1,80 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\DependencyInjection\Tests\Loader;
-
-use Symfony\Component\DependencyInjection\ContainerBuilder;
-use Symfony\Component\DependencyInjection\Loader\IniFileLoader;
-use Symfony\Component\Config\FileLocator;
-
-class IniFileLoaderTest extends \PHPUnit_Framework_TestCase
-{
-    protected static $fixturesPath;
-
-    protected $container;
-    protected $loader;
-
-    public static function setUpBeforeClass()
-    {
-        self::$fixturesPath = realpath(__DIR__.'/../Fixtures/');
-    }
-
-    protected function setUp()
-    {
-        $this->container = new ContainerBuilder();
-        $this->loader = new IniFileLoader($this->container, new FileLocator(self::$fixturesPath.'/ini'));
-    }
-
-    /**
-     * @covers Symfony\Component\DependencyInjection\Loader\IniFileLoader::__construct
-     * @covers Symfony\Component\DependencyInjection\Loader\IniFileLoader::load
-     */
-    public function testIniFileCanBeLoaded()
-    {
-        $this->loader->load('parameters.ini');
-        $this->assertEquals(array('foo' => 'bar', 'bar' => '%foo%'), $this->container->getParameterBag()->all(), '->load() takes a single file name as its first argument');
-    }
-
-    /**
-     * @covers Symfony\Component\DependencyInjection\Loader\IniFileLoader::__construct
-     * @covers Symfony\Component\DependencyInjection\Loader\IniFileLoader::load
-     *
-     * @expectedException        \InvalidArgumentException
-     * @expectedExceptionMessage The file "foo.ini" does not exist (in:
-     */
-    public function testExceptionIsRaisedWhenIniFileDoesNotExist()
-    {
-        $this->loader->load('foo.ini');
-    }
-
-    /**
-     * @covers Symfony\Component\DependencyInjection\Loader\IniFileLoader::__construct
-     * @covers Symfony\Component\DependencyInjection\Loader\IniFileLoader::load
-     *
-     * @expectedException        \InvalidArgumentException
-     * @expectedExceptionMessage The "nonvalid.ini" file is not valid.
-     */
-    public function testExceptionIsRaisedWhenIniFileCannotBeParsed()
-    {
-        @$this->loader->load('nonvalid.ini');
-    }
-
-    /**
-     * @covers Symfony\Component\DependencyInjection\Loader\IniFileLoader::supports
-     */
-    public function testSupports()
-    {
-        $loader = new IniFileLoader(new ContainerBuilder(), new FileLocator());
-
-        $this->assertTrue($loader->supports('foo.ini'), '->supports() returns true if the resource is loadable');
-        $this->assertFalse($loader->supports('foo.foo'), '->supports() returns true if the resource is loadable');
-    }
-}
diff --git a/vendor/symfony/dependency-injection/Tests/Loader/PhpFileLoaderTest.php b/vendor/symfony/dependency-injection/Tests/Loader/PhpFileLoaderTest.php
deleted file mode 100644
index 5ae097c..0000000
--- a/vendor/symfony/dependency-injection/Tests/Loader/PhpFileLoaderTest.php
+++ /dev/null
@@ -1,42 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\DependencyInjection\Tests\Loader;
-
-use Symfony\Component\DependencyInjection\ContainerBuilder;
-use Symfony\Component\DependencyInjection\Loader\PhpFileLoader;
-use Symfony\Component\Config\FileLocator;
-
-class PhpFileLoaderTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @covers Symfony\Component\DependencyInjection\Loader\PhpFileLoader::supports
-     */
-    public function testSupports()
-    {
-        $loader = new PhpFileLoader(new ContainerBuilder(), new FileLocator());
-
-        $this->assertTrue($loader->supports('foo.php'), '->supports() returns true if the resource is loadable');
-        $this->assertFalse($loader->supports('foo.foo'), '->supports() returns true if the resource is loadable');
-    }
-
-    /**
-     * @covers Symfony\Component\DependencyInjection\Loader\PhpFileLoader::load
-     */
-    public function testLoad()
-    {
-        $loader = new PhpFileLoader($container = new ContainerBuilder(), new FileLocator());
-
-        $loader->load(__DIR__.'/../Fixtures/php/simple.php');
-
-        $this->assertEquals('foo', $container->getParameter('foo'), '->load() loads a PHP file resource');
-    }
-}
diff --git a/vendor/symfony/dependency-injection/Tests/Loader/XmlFileLoaderTest.php b/vendor/symfony/dependency-injection/Tests/Loader/XmlFileLoaderTest.php
deleted file mode 100644
index 8bf524a..0000000
--- a/vendor/symfony/dependency-injection/Tests/Loader/XmlFileLoaderTest.php
+++ /dev/null
@@ -1,495 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\DependencyInjection\Tests\Loader;
-
-use Symfony\Component\DependencyInjection\ContainerInterface;
-use Symfony\Component\DependencyInjection\ContainerBuilder;
-use Symfony\Component\DependencyInjection\Reference;
-use Symfony\Component\DependencyInjection\Loader\XmlFileLoader;
-use Symfony\Component\DependencyInjection\Loader\YamlFileLoader;
-use Symfony\Component\DependencyInjection\Loader\IniFileLoader;
-use Symfony\Component\Config\Loader\LoaderResolver;
-use Symfony\Component\Config\FileLocator;
-use Symfony\Component\ExpressionLanguage\Expression;
-
-class XmlFileLoaderTest extends \PHPUnit_Framework_TestCase
-{
-    protected static $fixturesPath;
-
-    public static function setUpBeforeClass()
-    {
-        self::$fixturesPath = realpath(__DIR__.'/../Fixtures/');
-        require_once self::$fixturesPath.'/includes/foo.php';
-        require_once self::$fixturesPath.'/includes/ProjectExtension.php';
-        require_once self::$fixturesPath.'/includes/ProjectWithXsdExtension.php';
-    }
-
-    public function testLoad()
-    {
-        $loader = new XmlFileLoader(new ContainerBuilder(), new FileLocator(self::$fixturesPath.'/ini'));
-
-        try {
-            $loader->load('foo.xml');
-            $this->fail('->load() throws an InvalidArgumentException if the loaded file does not exist');
-        } catch (\Exception $e) {
-            $this->assertInstanceOf('InvalidArgumentException', $e, '->load() throws an InvalidArgumentException if the loaded file does not exist');
-            $this->assertStringStartsWith('The file "foo.xml" does not exist (in:', $e->getMessage(), '->load() throws an InvalidArgumentException if the loaded file does not exist');
-        }
-    }
-
-    public function testParseFile()
-    {
-        $loader = new XmlFileLoader(new ContainerBuilder(), new FileLocator(self::$fixturesPath.'/ini'));
-        $r = new \ReflectionObject($loader);
-        $m = $r->getMethod('parseFileToDOM');
-        $m->setAccessible(true);
-
-        try {
-            $m->invoke($loader, self::$fixturesPath.'/ini/parameters.ini');
-            $this->fail('->parseFileToDOM() throws an InvalidArgumentException if the loaded file is not a valid XML file');
-        } catch (\Exception $e) {
-            $this->assertInstanceOf('Symfony\\Component\\DependencyInjection\\Exception\\InvalidArgumentException', $e, '->parseFileToDOM() throws an InvalidArgumentException if the loaded file is not a valid XML file');
-            $this->assertRegExp(sprintf('#^Unable to parse file ".+%s".$#', 'parameters.ini'), $e->getMessage(), '->parseFileToDOM() throws an InvalidArgumentException if the loaded file is not a valid XML file');
-
-            $e = $e->getPrevious();
-            $this->assertInstanceOf('InvalidArgumentException', $e, '->parseFileToDOM() throws an InvalidArgumentException if the loaded file is not a valid XML file');
-            $this->assertStringStartsWith('[ERROR 4] Start tag expected, \'<\' not found (in', $e->getMessage(), '->parseFileToDOM() throws an InvalidArgumentException if the loaded file is not a valid XML file');
-        }
-
-        $loader = new XmlFileLoader(new ContainerBuilder(), new FileLocator(self::$fixturesPath.'/xml'));
-
-        try {
-            $m->invoke($loader, self::$fixturesPath.'/xml/nonvalid.xml');
-            $this->fail('->parseFileToDOM() throws an InvalidArgumentException if the loaded file does not validate the XSD');
-        } catch (\Exception $e) {
-            $this->assertInstanceOf('Symfony\\Component\\DependencyInjection\\Exception\\InvalidArgumentException', $e, '->parseFileToDOM() throws an InvalidArgumentException if the loaded file does not validate the XSD');
-            $this->assertRegExp(sprintf('#^Unable to parse file ".+%s".$#', 'nonvalid.xml'), $e->getMessage(), '->parseFileToDOM() throws an InvalidArgumentException if the loaded file is not a valid XML file');
-
-            $e = $e->getPrevious();
-            $this->assertInstanceOf('InvalidArgumentException', $e, '->parseFileToDOM() throws an InvalidArgumentException if the loaded file does not validate the XSD');
-            $this->assertStringStartsWith('[ERROR 1845] Element \'nonvalid\': No matching global declaration available for the validation root. (in', $e->getMessage(), '->parseFileToDOM() throws an InvalidArgumentException if the loaded file does not validate the XSD');
-        }
-
-        $xml = $m->invoke($loader, self::$fixturesPath.'/xml/services1.xml');
-        $this->assertInstanceOf('DOMDocument', $xml, '->parseFileToDOM() returns an SimpleXMLElement object');
-    }
-
-    public function testLoadParameters()
-    {
-        $container = new ContainerBuilder();
-        $loader = new XmlFileLoader($container, new FileLocator(self::$fixturesPath.'/xml'));
-        $loader->load('services2.xml');
-
-        $actual = $container->getParameterBag()->all();
-        $expected = array(
-            'a string',
-            'foo' => 'bar',
-            'values' => array(
-                0,
-                'integer' => 4,
-                100 => null,
-                'true',
-                true,
-                false,
-                'on',
-                'off',
-                'float' => 1.3,
-                1000.3,
-                'a string',
-                array('foo', 'bar'),
-            ),
-            'mixedcase' => array('MixedCaseKey' => 'value'),
-            'constant' => PHP_EOL,
-        );
-
-        $this->assertEquals($expected, $actual, '->load() converts XML values to PHP ones');
-    }
-
-    public function testLoadImports()
-    {
-        $container = new ContainerBuilder();
-        $resolver = new LoaderResolver(array(
-            new IniFileLoader($container, new FileLocator(self::$fixturesPath.'/xml')),
-            new YamlFileLoader($container, new FileLocator(self::$fixturesPath.'/xml')),
-            $loader = new XmlFileLoader($container, new FileLocator(self::$fixturesPath.'/xml')),
-        ));
-        $loader->setResolver($resolver);
-        $loader->load('services4.xml');
-
-        $actual = $container->getParameterBag()->all();
-        $expected = array(
-            'a string',
-            'foo' => 'bar',
-            'values' => array(
-                0,
-                'integer' => 4,
-                100 => null,
-                'true',
-                true,
-                false,
-                'on',
-                'off',
-                'float' => 1.3,
-                1000.3,
-                'a string',
-                array('foo', 'bar'),
-            ),
-            'mixedcase' => array('MixedCaseKey' => 'value'),
-            'constant' => PHP_EOL,
-            'bar' => '%foo%',
-            'imported_from_ini' => true,
-            'imported_from_yaml' => true,
-        );
-
-        $this->assertEquals(array_keys($expected), array_keys($actual), '->load() imports and merges imported files');
-
-        // Bad import throws no exception due to ignore_errors value.
-        $loader->load('services4_bad_import.xml');
-    }
-
-    public function testLoadAnonymousServices()
-    {
-        $container = new ContainerBuilder();
-        $loader = new XmlFileLoader($container, new FileLocator(self::$fixturesPath.'/xml'));
-        $loader->load('services5.xml');
-        $services = $container->getDefinitions();
-        $this->assertCount(4, $services, '->load() attributes unique ids to anonymous services');
-
-        // anonymous service as an argument
-        $args = $services['foo']->getArguments();
-        $this->assertCount(1, $args, '->load() references anonymous services as "normal" ones');
-        $this->assertInstanceOf('Symfony\\Component\\DependencyInjection\\Reference', $args[0], '->load() converts anonymous services to references to "normal" services');
-        $this->assertTrue(isset($services[(string) $args[0]]), '->load() makes a reference to the created ones');
-        $inner = $services[(string) $args[0]];
-        $this->assertEquals('BarClass', $inner->getClass(), '->load() uses the same configuration as for the anonymous ones');
-
-        // inner anonymous services
-        $args = $inner->getArguments();
-        $this->assertCount(1, $args, '->load() references anonymous services as "normal" ones');
-        $this->assertInstanceOf('Symfony\\Component\\DependencyInjection\\Reference', $args[0], '->load() converts anonymous services to references to "normal" services');
-        $this->assertTrue(isset($services[(string) $args[0]]), '->load() makes a reference to the created ones');
-        $inner = $services[(string) $args[0]];
-        $this->assertEquals('BazClass', $inner->getClass(), '->load() uses the same configuration as for the anonymous ones');
-        $this->assertFalse($inner->isPublic());
-
-        // anonymous service as a property
-        $properties = $services['foo']->getProperties();
-        $property = $properties['p'];
-        $this->assertInstanceOf('Symfony\\Component\\DependencyInjection\\Reference', $property, '->load() converts anonymous services to references to "normal" services');
-        $this->assertTrue(isset($services[(string) $property]), '->load() makes a reference to the created ones');
-        $inner = $services[(string) $property];
-        $this->assertEquals('BazClass', $inner->getClass(), '->load() uses the same configuration as for the anonymous ones');
-    }
-
-    /**
-     * @group legacy
-     */
-    public function testLegacyLoadServices()
-    {
-        $container = new ContainerBuilder();
-        $loader = new XmlFileLoader($container, new FileLocator(self::$fixturesPath.'/xml'));
-        $loader->load('legacy-services6.xml');
-        $services = $container->getDefinitions();
-        $this->assertEquals('FooClass', $services['constructor']->getClass());
-        $this->assertEquals('getInstance', $services['constructor']->getFactoryMethod());
-        $this->assertNull($services['factory_service']->getClass());
-        $this->assertEquals('baz_factory', $services['factory_service']->getFactoryService());
-        $this->assertEquals('getInstance', $services['factory_service']->getFactoryMethod());
-        $this->assertTrue($services['request']->isSynthetic(), '->load() parses the synthetic flag');
-        $this->assertTrue($services['request']->isSynchronized(), '->load() parses the synchronized flag');
-        $this->assertTrue($services['request']->isLazy(), '->load() parses the lazy flag');
-        $this->assertNull($services['request']->getDecoratedService());
-    }
-
-    public function testLoadServices()
-    {
-        $container = new ContainerBuilder();
-        $loader = new XmlFileLoader($container, new FileLocator(self::$fixturesPath.'/xml'));
-        $loader->load('services6.xml');
-        $services = $container->getDefinitions();
-        $this->assertTrue(isset($services['foo']), '->load() parses <service> elements');
-        $this->assertInstanceOf('Symfony\\Component\\DependencyInjection\\Definition', $services['foo'], '->load() converts <service> element to Definition instances');
-        $this->assertEquals('FooClass', $services['foo']->getClass(), '->load() parses the class attribute');
-        $this->assertEquals('container', $services['scope.container']->getScope());
-        $this->assertEquals('custom', $services['scope.custom']->getScope());
-        $this->assertEquals('prototype', $services['scope.prototype']->getScope());
-        $this->assertEquals('%path%/foo.php', $services['file']->getFile(), '->load() parses the file tag');
-        $this->assertEquals(array('foo', new Reference('foo'), array(true, false)), $services['arguments']->getArguments(), '->load() parses the argument tags');
-        $this->assertEquals('sc_configure', $services['configurator1']->getConfigurator(), '->load() parses the configurator tag');
-        $this->assertEquals(array(new Reference('baz', ContainerInterface::EXCEPTION_ON_INVALID_REFERENCE, false), 'configure'), $services['configurator2']->getConfigurator(), '->load() parses the configurator tag');
-        $this->assertEquals(array('BazClass', 'configureStatic'), $services['configurator3']->getConfigurator(), '->load() parses the configurator tag');
-        $this->assertEquals(array(array('setBar', array()), array('setBar', array(new Expression('service("foo").foo() ~ (container.hasparameter("foo") ? parameter("foo") : "default")')))), $services['method_call1']->getMethodCalls(), '->load() parses the method_call tag');
-        $this->assertEquals(array(array('setBar', array('foo', new Reference('foo'), array(true, false)))), $services['method_call2']->getMethodCalls(), '->load() parses the method_call tag');
-        $this->assertEquals('factory', $services['new_factory1']->getFactory(), '->load() parses the factory tag');
-        $this->assertEquals(array(new Reference('baz', ContainerInterface::EXCEPTION_ON_INVALID_REFERENCE, false), 'getClass'), $services['new_factory2']->getFactory(), '->load() parses the factory tag');
-        $this->assertEquals(array('BazClass', 'getInstance'), $services['new_factory3']->getFactory(), '->load() parses the factory tag');
-
-        $aliases = $container->getAliases();
-        $this->assertTrue(isset($aliases['alias_for_foo']), '->load() parses <service> elements');
-        $this->assertEquals('foo', (string) $aliases['alias_for_foo'], '->load() parses aliases');
-        $this->assertTrue($aliases['alias_for_foo']->isPublic());
-        $this->assertTrue(isset($aliases['another_alias_for_foo']));
-        $this->assertEquals('foo', (string) $aliases['another_alias_for_foo']);
-        $this->assertFalse($aliases['another_alias_for_foo']->isPublic());
-
-        $this->assertEquals(array('decorated', null), $services['decorator_service']->getDecoratedService());
-        $this->assertEquals(array('decorated', 'decorated.pif-pouf'), $services['decorator_service_with_name']->getDecoratedService());
-    }
-
-    public function testParsesTags()
-    {
-        $container = new ContainerBuilder();
-        $loader = new XmlFileLoader($container, new FileLocator(self::$fixturesPath.'/xml'));
-        $loader->load('services10.xml');
-
-        $services = $container->findTaggedServiceIds('foo_tag');
-        $this->assertCount(1, $services);
-
-        foreach ($services as $id => $tagAttributes) {
-            foreach ($tagAttributes as $attributes) {
-                $this->assertArrayHasKey('other_option', $attributes);
-                $this->assertEquals('lorem', $attributes['other_option']);
-                $this->assertArrayHasKey('other-option', $attributes, 'unnormalized tag attributes should not be removed');
-
-                $this->assertEquals('ciz', $attributes['some_option'], 'no overriding should be done when normalizing');
-                $this->assertEquals('cat', $attributes['some-option']);
-
-                $this->assertArrayNotHasKey('an_other_option', $attributes, 'normalization should not be done when an underscore is already found');
-            }
-        }
-    }
-
-    public function testConvertDomElementToArray()
-    {
-        $doc = new \DOMDocument('1.0');
-        $doc->loadXML('<foo>bar</foo>');
-        $this->assertEquals('bar', XmlFileLoader::convertDomElementToArray($doc->documentElement), '::convertDomElementToArray() converts a \DomElement to an array');
-
-        $doc = new \DOMDocument('1.0');
-        $doc->loadXML('<foo foo="bar" />');
-        $this->assertEquals(array('foo' => 'bar'), XmlFileLoader::convertDomElementToArray($doc->documentElement), '::convertDomElementToArray() converts a \DomElement to an array');
-
-        $doc = new \DOMDocument('1.0');
-        $doc->loadXML('<foo><foo>bar</foo></foo>');
-        $this->assertEquals(array('foo' => 'bar'), XmlFileLoader::convertDomElementToArray($doc->documentElement), '::convertDomElementToArray() converts a \DomElement to an array');
-
-        $doc = new \DOMDocument('1.0');
-        $doc->loadXML('<foo><foo>bar<foo>bar</foo></foo></foo>');
-        $this->assertEquals(array('foo' => array('value' => 'bar', 'foo' => 'bar')), XmlFileLoader::convertDomElementToArray($doc->documentElement), '::convertDomElementToArray() converts a \DomElement to an array');
-
-        $doc = new \DOMDocument('1.0');
-        $doc->loadXML('<foo><foo></foo></foo>');
-        $this->assertEquals(array('foo' => null), XmlFileLoader::convertDomElementToArray($doc->documentElement), '::convertDomElementToArray() converts a \DomElement to an array');
-
-        $doc = new \DOMDocument('1.0');
-        $doc->loadXML('<foo><foo><!-- foo --></foo></foo>');
-        $this->assertEquals(array('foo' => null), XmlFileLoader::convertDomElementToArray($doc->documentElement), '::convertDomElementToArray() converts a \DomElement to an array');
-
-        $doc = new \DOMDocument('1.0');
-        $doc->loadXML('<foo><foo foo="bar"/><foo foo="bar"/></foo>');
-        $this->assertEquals(array('foo' => array(array('foo' => 'bar'), array('foo' => 'bar'))), XmlFileLoader::convertDomElementToArray($doc->documentElement), '::convertDomElementToArray() converts a \DomElement to an array');
-    }
-
-    public function testExtensions()
-    {
-        $container = new ContainerBuilder();
-        $container->registerExtension(new \ProjectExtension());
-        $container->registerExtension(new \ProjectWithXsdExtension());
-        $loader = new XmlFileLoader($container, new FileLocator(self::$fixturesPath.'/xml'));
-
-        // extension without an XSD
-        $loader->load('extensions/services1.xml');
-        $container->compile();
-        $services = $container->getDefinitions();
-        $parameters = $container->getParameterBag()->all();
-
-        $this->assertTrue(isset($services['project.service.bar']), '->load() parses extension elements');
-        $this->assertTrue(isset($parameters['project.parameter.bar']), '->load() parses extension elements');
-
-        $this->assertEquals('BAR', $services['project.service.foo']->getClass(), '->load() parses extension elements');
-        $this->assertEquals('BAR', $parameters['project.parameter.foo'], '->load() parses extension elements');
-
-        // extension with an XSD
-        $container = new ContainerBuilder();
-        $container->registerExtension(new \ProjectExtension());
-        $container->registerExtension(new \ProjectWithXsdExtension());
-        $loader = new XmlFileLoader($container, new FileLocator(self::$fixturesPath.'/xml'));
-        $loader->load('extensions/services2.xml');
-        $container->compile();
-        $services = $container->getDefinitions();
-        $parameters = $container->getParameterBag()->all();
-
-        $this->assertTrue(isset($services['project.service.bar']), '->load() parses extension elements');
-        $this->assertTrue(isset($parameters['project.parameter.bar']), '->load() parses extension elements');
-
-        $this->assertEquals('BAR', $services['project.service.foo']->getClass(), '->load() parses extension elements');
-        $this->assertEquals('BAR', $parameters['project.parameter.foo'], '->load() parses extension elements');
-
-        $container = new ContainerBuilder();
-        $container->registerExtension(new \ProjectExtension());
-        $container->registerExtension(new \ProjectWithXsdExtension());
-        $loader = new XmlFileLoader($container, new FileLocator(self::$fixturesPath.'/xml'));
-
-        // extension with an XSD (does not validate)
-        try {
-            $loader->load('extensions/services3.xml');
-            $this->fail('->load() throws an InvalidArgumentException if the configuration does not validate the XSD');
-        } catch (\Exception $e) {
-            $this->assertInstanceOf('Symfony\\Component\\DependencyInjection\\Exception\\InvalidArgumentException', $e, '->load() throws an InvalidArgumentException if the configuration does not validate the XSD');
-            $this->assertRegExp(sprintf('#^Unable to parse file ".+%s".$#', 'services3.xml'), $e->getMessage(), '->load() throws an InvalidArgumentException if the configuration does not validate the XSD');
-
-            $e = $e->getPrevious();
-            $this->assertInstanceOf('InvalidArgumentException', $e, '->load() throws an InvalidArgumentException if the configuration does not validate the XSD');
-            $this->assertContains('The attribute \'bar\' is not allowed', $e->getMessage(), '->load() throws an InvalidArgumentException if the configuration does not validate the XSD');
-        }
-
-        // non-registered extension
-        try {
-            $loader->load('extensions/services4.xml');
-            $this->fail('->load() throws an InvalidArgumentException if the tag is not valid');
-        } catch (\Exception $e) {
-            $this->assertInstanceOf('\InvalidArgumentException', $e, '->load() throws an InvalidArgumentException if the tag is not valid');
-            $this->assertStringStartsWith('There is no extension able to load the configuration for "project:bar" (in', $e->getMessage(), '->load() throws an InvalidArgumentException if the tag is not valid');
-        }
-    }
-
-    public function testExtensionInPhar()
-    {
-        if (extension_loaded('suhosin') && false === strpos(ini_get('suhosin.executor.include.whitelist'), 'phar')) {
-            $this->markTestSkipped('To run this test, add "phar" to the "suhosin.executor.include.whitelist" settings in your php.ini file.');
-        }
-
-        require_once self::$fixturesPath.'/includes/ProjectWithXsdExtensionInPhar.phar';
-
-        // extension with an XSD in PHAR archive
-        $container = new ContainerBuilder();
-        $container->registerExtension(new \ProjectWithXsdExtensionInPhar());
-        $loader = new XmlFileLoader($container, new FileLocator(self::$fixturesPath.'/xml'));
-        $loader->load('extensions/services6.xml');
-
-        // extension with an XSD in PHAR archive (does not validate)
-        try {
-            $loader->load('extensions/services7.xml');
-            $this->fail('->load() throws an InvalidArgumentException if the configuration does not validate the XSD');
-        } catch (\Exception $e) {
-            $this->assertInstanceOf('Symfony\\Component\\DependencyInjection\\Exception\\InvalidArgumentException', $e, '->load() throws an InvalidArgumentException if the configuration does not validate the XSD');
-            $this->assertRegExp(sprintf('#^Unable to parse file ".+%s".$#', 'services7.xml'), $e->getMessage(), '->load() throws an InvalidArgumentException if the configuration does not validate the XSD');
-
-            $e = $e->getPrevious();
-            $this->assertInstanceOf('InvalidArgumentException', $e, '->load() throws an InvalidArgumentException if the configuration does not validate the XSD');
-            $this->assertContains('The attribute \'bar\' is not allowed', $e->getMessage(), '->load() throws an InvalidArgumentException if the configuration does not validate the XSD');
-        }
-    }
-
-    /**
-     * @covers Symfony\Component\DependencyInjection\Loader\XmlFileLoader::supports
-     */
-    public function testSupports()
-    {
-        $loader = new XmlFileLoader(new ContainerBuilder(), new FileLocator());
-
-        $this->assertTrue($loader->supports('foo.xml'), '->supports() returns true if the resource is loadable');
-        $this->assertFalse($loader->supports('foo.foo'), '->supports() returns true if the resource is loadable');
-    }
-
-    public function testNoNamingConflictsForAnonymousServices()
-    {
-        $container = new ContainerBuilder();
-
-        $loader1 = new XmlFileLoader($container, new FileLocator(self::$fixturesPath.'/xml/extension1'));
-        $loader1->load('services.xml');
-        $services = $container->getDefinitions();
-        $this->assertCount(2, $services, '->load() attributes unique ids to anonymous services');
-        $loader2 = new XmlFileLoader($container, new FileLocator(self::$fixturesPath.'/xml/extension2'));
-        $loader2->load('services.xml');
-        $services = $container->getDefinitions();
-        $this->assertCount(4, $services, '->load() attributes unique ids to anonymous services');
-
-        $services = $container->getDefinitions();
-        $args1 = $services['extension1.foo']->getArguments();
-        $inner1 = $services[(string) $args1[0]];
-        $this->assertEquals('BarClass1', $inner1->getClass(), '->load() uses the same configuration as for the anonymous ones');
-        $args2 = $services['extension2.foo']->getArguments();
-        $inner2 = $services[(string) $args2[0]];
-        $this->assertEquals('BarClass2', $inner2->getClass(), '->load() uses the same configuration as for the anonymous ones');
-    }
-
-    public function testDocTypeIsNotAllowed()
-    {
-        $container = new ContainerBuilder();
-
-        $loader = new XmlFileLoader($container, new FileLocator(self::$fixturesPath.'/xml'));
-
-        // document types are not allowed.
-        try {
-            $loader->load('withdoctype.xml');
-            $this->fail('->load() throws an InvalidArgumentException if the configuration contains a document type');
-        } catch (\Exception $e) {
-            $this->assertInstanceOf('Symfony\\Component\\DependencyInjection\\Exception\\InvalidArgumentException', $e, '->load() throws an InvalidArgumentException if the configuration contains a document type');
-            $this->assertRegExp(sprintf('#^Unable to parse file ".+%s".$#', 'withdoctype.xml'), $e->getMessage(), '->load() throws an InvalidArgumentException if the configuration contains a document type');
-
-            $e = $e->getPrevious();
-            $this->assertInstanceOf('InvalidArgumentException', $e, '->load() throws an InvalidArgumentException if the configuration contains a document type');
-            $this->assertSame('Document types are not allowed.', $e->getMessage(), '->load() throws an InvalidArgumentException if the configuration contains a document type');
-        }
-    }
-
-    public function testXmlNamespaces()
-    {
-        $container = new ContainerBuilder();
-        $loader = new XmlFileLoader($container, new FileLocator(self::$fixturesPath.'/xml'));
-        $loader->load('namespaces.xml');
-        $services = $container->getDefinitions();
-
-        $this->assertTrue(isset($services['foo']), '->load() parses <srv:service> elements');
-        $this->assertEquals(1, count($services['foo']->getTag('foo.tag')), '->load parses <srv:tag> elements');
-        $this->assertEquals(array(array('setBar', array('foo'))), $services['foo']->getMethodCalls(), '->load() parses the <srv:call> tag');
-    }
-
-    public function testLoadIndexedArguments()
-    {
-        $container = new ContainerBuilder();
-        $loader = new XmlFileLoader($container, new FileLocator(self::$fixturesPath.'/xml'));
-        $loader->load('services14.xml');
-
-        $this->assertEquals(array('index_0' => 'app'), $container->findDefinition('logger')->getArguments());
-    }
-
-    public function testLoadInlinedServices()
-    {
-        $container = new ContainerBuilder();
-        $loader = new XmlFileLoader($container, new FileLocator(self::$fixturesPath.'/xml'));
-        $loader->load('services21.xml');
-
-        $foo = $container->getDefinition('foo');
-
-        $fooFactory = $foo->getFactory();
-        $this->assertInstanceOf('Symfony\Component\DependencyInjection\Definition', $fooFactory[0]);
-        $this->assertSame('FooFactory', $fooFactory[0]->getClass());
-        $this->assertSame('createFoo', $fooFactory[1]);
-
-        $fooFactoryFactory = $fooFactory[0]->getFactory();
-        $this->assertInstanceOf('Symfony\Component\DependencyInjection\Definition', $fooFactoryFactory[0]);
-        $this->assertSame('Foobar', $fooFactoryFactory[0]->getClass());
-        $this->assertSame('createFooFactory', $fooFactoryFactory[1]);
-
-        $fooConfigurator = $foo->getConfigurator();
-        $this->assertInstanceOf('Symfony\Component\DependencyInjection\Definition', $fooConfigurator[0]);
-        $this->assertSame('Bar', $fooConfigurator[0]->getClass());
-        $this->assertSame('configureFoo', $fooConfigurator[1]);
-
-        $barConfigurator = $fooConfigurator[0]->getConfigurator();
-        $this->assertInstanceOf('Symfony\Component\DependencyInjection\Definition', $barConfigurator[0]);
-        $this->assertSame('Baz', $barConfigurator[0]->getClass());
-        $this->assertSame('configureBar', $barConfigurator[1]);
-    }
-}
diff --git a/vendor/symfony/dependency-injection/Tests/Loader/YamlFileLoaderTest.php b/vendor/symfony/dependency-injection/Tests/Loader/YamlFileLoaderTest.php
deleted file mode 100644
index c94f40b..0000000
--- a/vendor/symfony/dependency-injection/Tests/Loader/YamlFileLoaderTest.php
+++ /dev/null
@@ -1,283 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\DependencyInjection\Tests\Loader;
-
-use Symfony\Component\DependencyInjection\ContainerBuilder;
-use Symfony\Component\DependencyInjection\Reference;
-use Symfony\Component\DependencyInjection\Loader\XmlFileLoader;
-use Symfony\Component\DependencyInjection\Loader\YamlFileLoader;
-use Symfony\Component\DependencyInjection\Loader\IniFileLoader;
-use Symfony\Component\DependencyInjection\Loader\PhpFileLoader;
-use Symfony\Component\Config\Loader\LoaderResolver;
-use Symfony\Component\Config\FileLocator;
-use Symfony\Component\ExpressionLanguage\Expression;
-
-class YamlFileLoaderTest extends \PHPUnit_Framework_TestCase
-{
-    protected static $fixturesPath;
-
-    public static function setUpBeforeClass()
-    {
-        self::$fixturesPath = realpath(__DIR__.'/../Fixtures/');
-        require_once self::$fixturesPath.'/includes/foo.php';
-        require_once self::$fixturesPath.'/includes/ProjectExtension.php';
-    }
-
-    public function testLoadFile()
-    {
-        $loader = new YamlFileLoader(new ContainerBuilder(), new FileLocator(self::$fixturesPath.'/ini'));
-        $r = new \ReflectionObject($loader);
-        $m = $r->getMethod('loadFile');
-        $m->setAccessible(true);
-
-        try {
-            $m->invoke($loader, 'foo.yml');
-            $this->fail('->load() throws an InvalidArgumentException if the loaded file does not exist');
-        } catch (\Exception $e) {
-            $this->assertInstanceOf('\InvalidArgumentException', $e, '->load() throws an InvalidArgumentException if the loaded file does not exist');
-            $this->assertEquals('The service file "foo.yml" is not valid.', $e->getMessage(), '->load() throws an InvalidArgumentException if the loaded file does not exist');
-        }
-
-        try {
-            $m->invoke($loader, 'parameters.ini');
-            $this->fail('->load() throws an InvalidArgumentException if the loaded file is not a valid YAML file');
-        } catch (\Exception $e) {
-            $this->assertInstanceOf('\InvalidArgumentException', $e, '->load() throws an InvalidArgumentException if the loaded file is not a valid YAML file');
-            $this->assertEquals('The service file "parameters.ini" is not valid.', $e->getMessage(), '->load() throws an InvalidArgumentException if the loaded file is not a valid YAML file');
-        }
-
-        $loader = new YamlFileLoader(new ContainerBuilder(), new FileLocator(self::$fixturesPath.'/yaml'));
-
-        foreach (array('nonvalid1', 'nonvalid2') as $fixture) {
-            try {
-                $m->invoke($loader, $fixture.'.yml');
-                $this->fail('->load() throws an InvalidArgumentException if the loaded file does not validate');
-            } catch (\Exception $e) {
-                $this->assertInstanceOf('\InvalidArgumentException', $e, '->load() throws an InvalidArgumentException if the loaded file does not validate');
-                $this->assertStringMatchesFormat('The service file "nonvalid%d.yml" is not valid.', $e->getMessage(), '->load() throws an InvalidArgumentException if the loaded file does not validate');
-            }
-        }
-    }
-
-    /**
-     * @dataProvider provideInvalidFiles
-     * @expectedException \Symfony\Component\DependencyInjection\Exception\InvalidArgumentException
-     */
-    public function testLoadInvalidFile($file)
-    {
-        $loader = new YamlFileLoader(new ContainerBuilder(), new FileLocator(self::$fixturesPath.'/yaml'));
-
-        $loader->load($file.'.yml');
-    }
-
-    public function provideInvalidFiles()
-    {
-        return array(
-            array('bad_parameters'),
-            array('bad_imports'),
-            array('bad_import'),
-            array('bad_services'),
-            array('bad_service'),
-            array('bad_calls'),
-            array('bad_format'),
-        );
-    }
-
-    public function testLoadParameters()
-    {
-        $container = new ContainerBuilder();
-        $loader = new YamlFileLoader($container, new FileLocator(self::$fixturesPath.'/yaml'));
-        $loader->load('services2.yml');
-        $this->assertEquals(array('foo' => 'bar', 'mixedcase' => array('MixedCaseKey' => 'value'), 'values' => array(true, false, 0, 1000.3), 'bar' => 'foo', 'escape' => '@escapeme', 'foo_bar' => new Reference('foo_bar')), $container->getParameterBag()->all(), '->load() converts YAML keys to lowercase');
-    }
-
-    public function testLoadImports()
-    {
-        $container = new ContainerBuilder();
-        $resolver = new LoaderResolver(array(
-            new IniFileLoader($container, new FileLocator(self::$fixturesPath.'/yaml')),
-            new XmlFileLoader($container, new FileLocator(self::$fixturesPath.'/yaml')),
-            new PhpFileLoader($container, new FileLocator(self::$fixturesPath.'/php')),
-            $loader = new YamlFileLoader($container, new FileLocator(self::$fixturesPath.'/yaml')),
-        ));
-        $loader->setResolver($resolver);
-        $loader->load('services4.yml');
-
-        $actual = $container->getParameterBag()->all();
-        $expected = array('foo' => 'bar', 'values' => array(true, false), 'bar' => '%foo%', 'escape' => '@escapeme', 'foo_bar' => new Reference('foo_bar'), 'mixedcase' => array('MixedCaseKey' => 'value'), 'imported_from_ini' => true, 'imported_from_xml' => true);
-        $this->assertEquals(array_keys($expected), array_keys($actual), '->load() imports and merges imported files');
-
-        // Bad import throws no exception due to ignore_errors value.
-        $loader->load('services4_bad_import.yml');
-    }
-
-    /**
-     * @group legacy
-     */
-    public function testLegacyLoadServices()
-    {
-        $container = new ContainerBuilder();
-        $loader = new YamlFileLoader($container, new FileLocator(self::$fixturesPath.'/yaml'));
-        $loader->load('legacy-services6.yml');
-        $services = $container->getDefinitions();
-        $this->assertEquals('FooClass', $services['constructor']->getClass());
-        $this->assertEquals('getInstance', $services['constructor']->getFactoryMethod());
-        $this->assertEquals('BazClass', $services['factory_service']->getClass());
-        $this->assertEquals('baz_factory', $services['factory_service']->getFactoryService());
-        $this->assertEquals('getInstance', $services['factory_service']->getFactoryMethod());
-        $this->assertTrue($services['request']->isSynthetic(), '->load() parses the synthetic flag');
-        $this->assertTrue($services['request']->isSynchronized(), '->load() parses the synchronized flag');
-        $this->assertTrue($services['request']->isLazy(), '->load() parses the lazy flag');
-        $this->assertNull($services['request']->getDecoratedService());
-    }
-
-    public function testLoadServices()
-    {
-        $container = new ContainerBuilder();
-        $loader = new YamlFileLoader($container, new FileLocator(self::$fixturesPath.'/yaml'));
-        $loader->load('services6.yml');
-        $services = $container->getDefinitions();
-        $this->assertTrue(isset($services['foo']), '->load() parses service elements');
-        $this->assertInstanceOf('Symfony\\Component\\DependencyInjection\\Definition', $services['foo'], '->load() converts service element to Definition instances');
-        $this->assertEquals('FooClass', $services['foo']->getClass(), '->load() parses the class attribute');
-        $this->assertEquals('container', $services['scope.container']->getScope());
-        $this->assertEquals('custom', $services['scope.custom']->getScope());
-        $this->assertEquals('prototype', $services['scope.prototype']->getScope());
-        $this->assertEquals('%path%/foo.php', $services['file']->getFile(), '->load() parses the file tag');
-        $this->assertEquals(array('foo', new Reference('foo'), array(true, false)), $services['arguments']->getArguments(), '->load() parses the argument tags');
-        $this->assertEquals('sc_configure', $services['configurator1']->getConfigurator(), '->load() parses the configurator tag');
-        $this->assertEquals(array(new Reference('baz'), 'configure'), $services['configurator2']->getConfigurator(), '->load() parses the configurator tag');
-        $this->assertEquals(array('BazClass', 'configureStatic'), $services['configurator3']->getConfigurator(), '->load() parses the configurator tag');
-        $this->assertEquals(array(array('setBar', array()), array('setBar', array()), array('setBar', array(new Expression('service("foo").foo() ~ (container.hasparameter("foo") ? parameter("foo") : "default")')))), $services['method_call1']->getMethodCalls(), '->load() parses the method_call tag');
-        $this->assertEquals(array(array('setBar', array('foo', new Reference('foo'), array(true, false)))), $services['method_call2']->getMethodCalls(), '->load() parses the method_call tag');
-        $this->assertEquals('factory', $services['new_factory1']->getFactory(), '->load() parses the factory tag');
-        $this->assertEquals(array(new Reference('baz'), 'getClass'), $services['new_factory2']->getFactory(), '->load() parses the factory tag');
-        $this->assertEquals(array('BazClass', 'getInstance'), $services['new_factory3']->getFactory(), '->load() parses the factory tag');
-
-        $aliases = $container->getAliases();
-        $this->assertTrue(isset($aliases['alias_for_foo']), '->load() parses aliases');
-        $this->assertEquals('foo', (string) $aliases['alias_for_foo'], '->load() parses aliases');
-        $this->assertTrue($aliases['alias_for_foo']->isPublic());
-        $this->assertTrue(isset($aliases['another_alias_for_foo']));
-        $this->assertEquals('foo', (string) $aliases['another_alias_for_foo']);
-        $this->assertFalse($aliases['another_alias_for_foo']->isPublic());
-
-        $this->assertEquals(array('decorated', null), $services['decorator_service']->getDecoratedService());
-        $this->assertEquals(array('decorated', 'decorated.pif-pouf'), $services['decorator_service_with_name']->getDecoratedService());
-    }
-
-    public function testLoadFactoryShortSyntax()
-    {
-        $container = new ContainerBuilder();
-        $loader = new YamlFileLoader($container, new FileLocator(self::$fixturesPath.'/yaml'));
-        $loader->load('services14.yml');
-        $services = $container->getDefinitions();
-
-        $this->assertEquals(array(new Reference('baz'), 'getClass'), $services['factory']->getFactory(), '->load() parses the factory tag with service:method');
-        $this->assertEquals(array('FooBacFactory', 'createFooBar'), $services['factory_with_static_call']->getFactory(), '->load() parses the factory tag with Class::method');
-    }
-
-    public function testExtensions()
-    {
-        $container = new ContainerBuilder();
-        $container->registerExtension(new \ProjectExtension());
-        $loader = new YamlFileLoader($container, new FileLocator(self::$fixturesPath.'/yaml'));
-        $loader->load('services10.yml');
-        $container->compile();
-        $services = $container->getDefinitions();
-        $parameters = $container->getParameterBag()->all();
-
-        $this->assertTrue(isset($services['project.service.bar']), '->load() parses extension elements');
-        $this->assertTrue(isset($parameters['project.parameter.bar']), '->load() parses extension elements');
-
-        $this->assertEquals('BAR', $services['project.service.foo']->getClass(), '->load() parses extension elements');
-        $this->assertEquals('BAR', $parameters['project.parameter.foo'], '->load() parses extension elements');
-
-        try {
-            $loader->load('services11.yml');
-            $this->fail('->load() throws an InvalidArgumentException if the tag is not valid');
-        } catch (\Exception $e) {
-            $this->assertInstanceOf('\InvalidArgumentException', $e, '->load() throws an InvalidArgumentException if the tag is not valid');
-            $this->assertStringStartsWith('There is no extension able to load the configuration for "foobarfoobar" (in', $e->getMessage(), '->load() throws an InvalidArgumentException if the tag is not valid');
-        }
-    }
-
-    /**
-     * @covers Symfony\Component\DependencyInjection\Loader\YamlFileLoader::supports
-     */
-    public function testSupports()
-    {
-        $loader = new YamlFileLoader(new ContainerBuilder(), new FileLocator());
-
-        $this->assertTrue($loader->supports('foo.yml'), '->supports() returns true if the resource is loadable');
-        $this->assertTrue($loader->supports('foo.yaml'), '->supports() returns true if the resource is loadable');
-        $this->assertFalse($loader->supports('foo.foo'), '->supports() returns true if the resource is loadable');
-    }
-
-    public function testNonArrayTagsThrowsException()
-    {
-        $loader = new YamlFileLoader(new ContainerBuilder(), new FileLocator(self::$fixturesPath.'/yaml'));
-        try {
-            $loader->load('badtag1.yml');
-            $this->fail('->load() should throw an exception when the tags key of a service is not an array');
-        } catch (\Exception $e) {
-            $this->assertInstanceOf('Symfony\Component\DependencyInjection\Exception\InvalidArgumentException', $e, '->load() throws an InvalidArgumentException if the tags key is not an array');
-            $this->assertStringStartsWith('Parameter "tags" must be an array for service', $e->getMessage(), '->load() throws an InvalidArgumentException if the tags key is not an array');
-        }
-    }
-
-    /**
-     * @expectedException \Symfony\Component\DependencyInjection\Exception\InvalidArgumentException
-     * @expectedExceptionMessage A "tags" entry must be an array for service
-     */
-    public function testNonArrayTagThrowsException()
-    {
-        $loader = new YamlFileLoader(new ContainerBuilder(), new FileLocator(self::$fixturesPath.'/yaml'));
-        $loader->load('badtag4.yml');
-    }
-
-    public function testTagWithoutNameThrowsException()
-    {
-        $loader = new YamlFileLoader(new ContainerBuilder(), new FileLocator(self::$fixturesPath.'/yaml'));
-        try {
-            $loader->load('badtag2.yml');
-            $this->fail('->load() should throw an exception when a tag is missing the name key');
-        } catch (\Exception $e) {
-            $this->assertInstanceOf('Symfony\Component\DependencyInjection\Exception\InvalidArgumentException', $e, '->load() throws an InvalidArgumentException if a tag is missing the name key');
-            $this->assertStringStartsWith('A "tags" entry is missing a "name" key for service ', $e->getMessage(), '->load() throws an InvalidArgumentException if a tag is missing the name key');
-        }
-    }
-
-    public function testTagWithAttributeArrayThrowsException()
-    {
-        $loader = new YamlFileLoader(new ContainerBuilder(), new FileLocator(self::$fixturesPath.'/yaml'));
-        try {
-            $loader->load('badtag3.yml');
-            $this->fail('->load() should throw an exception when a tag-attribute is not a scalar');
-        } catch (\Exception $e) {
-            $this->assertInstanceOf('Symfony\Component\DependencyInjection\Exception\InvalidArgumentException', $e, '->load() throws an InvalidArgumentException if a tag-attribute is not a scalar');
-            $this->assertStringStartsWith('A "tags" attribute must be of a scalar-type for service "foo_service", tag "foo", attribute "bar"', $e->getMessage(), '->load() throws an InvalidArgumentException if a tag-attribute is not a scalar');
-        }
-    }
-
-    public function testLoadYamlOnlyWithKeys()
-    {
-        $container = new ContainerBuilder();
-        $loader = new YamlFileLoader($container, new FileLocator(self::$fixturesPath.'/yaml'));
-        $loader->load('services21.yml');
-
-        $definition = $container->getDefinition('manager');
-        $this->assertEquals(array(array('setLogger', array(new Reference('logger'))), array('setClass', array('User'))), $definition->getMethodCalls());
-        $this->assertEquals(array(true), $definition->getArguments());
-        $this->assertEquals(array('manager' => array(array('alias' => 'user'))), $definition->getTags());
-    }
-}
diff --git a/vendor/symfony/dependency-injection/Tests/ParameterBag/FrozenParameterBagTest.php b/vendor/symfony/dependency-injection/Tests/ParameterBag/FrozenParameterBagTest.php
deleted file mode 100644
index 6d963dc..0000000
--- a/vendor/symfony/dependency-injection/Tests/ParameterBag/FrozenParameterBagTest.php
+++ /dev/null
@@ -1,69 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\DependencyInjection\Tests\ParameterBag;
-
-use Symfony\Component\DependencyInjection\ParameterBag\FrozenParameterBag;
-
-class FrozenParameterBagTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @covers Symfony\Component\DependencyInjection\ParameterBag\FrozenParameterBag::__construct
-     */
-    public function testConstructor()
-    {
-        $parameters = array(
-            'foo' => 'foo',
-            'bar' => 'bar',
-        );
-        $bag = new FrozenParameterBag($parameters);
-        $this->assertEquals($parameters, $bag->all(), '__construct() takes an array of parameters as its first argument');
-    }
-
-    /**
-     * @covers Symfony\Component\DependencyInjection\ParameterBag\FrozenParameterBag::clear
-     * @expectedException \LogicException
-     */
-    public function testClear()
-    {
-        $bag = new FrozenParameterBag(array());
-        $bag->clear();
-    }
-
-    /**
-     * @covers Symfony\Component\DependencyInjection\ParameterBag\FrozenParameterBag::set
-     * @expectedException \LogicException
-     */
-    public function testSet()
-    {
-        $bag = new FrozenParameterBag(array());
-        $bag->set('foo', 'bar');
-    }
-
-    /**
-     * @covers Symfony\Component\DependencyInjection\ParameterBag\FrozenParameterBag::add
-     * @expectedException \LogicException
-     */
-    public function testAdd()
-    {
-        $bag = new FrozenParameterBag(array());
-        $bag->add(array());
-    }
-
-    /**
-     * @expectedException \LogicException
-     */
-    public function testRemove()
-    {
-        $bag = new FrozenParameterBag(array('foo' => 'bar'));
-        $bag->remove('foo');
-    }
-}
diff --git a/vendor/symfony/dependency-injection/Tests/ParameterBag/ParameterBagTest.php b/vendor/symfony/dependency-injection/Tests/ParameterBag/ParameterBagTest.php
deleted file mode 100644
index e1f8169..0000000
--- a/vendor/symfony/dependency-injection/Tests/ParameterBag/ParameterBagTest.php
+++ /dev/null
@@ -1,279 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\DependencyInjection\Tests\ParameterBag;
-
-use Symfony\Component\DependencyInjection\ParameterBag\ParameterBag;
-use Symfony\Component\DependencyInjection\Exception\ParameterNotFoundException;
-use Symfony\Component\DependencyInjection\Exception\ParameterCircularReferenceException;
-use Symfony\Component\DependencyInjection\Exception\RuntimeException;
-
-class ParameterBagTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @covers Symfony\Component\DependencyInjection\ParameterBag\ParameterBag::__construct
-     */
-    public function testConstructor()
-    {
-        $bag = new ParameterBag($parameters = array(
-            'foo' => 'foo',
-            'bar' => 'bar',
-        ));
-        $this->assertEquals($parameters, $bag->all(), '__construct() takes an array of parameters as its first argument');
-    }
-
-    /**
-     * @covers Symfony\Component\DependencyInjection\ParameterBag\ParameterBag::clear
-     */
-    public function testClear()
-    {
-        $bag = new ParameterBag($parameters = array(
-            'foo' => 'foo',
-            'bar' => 'bar',
-        ));
-        $bag->clear();
-        $this->assertEquals(array(), $bag->all(), '->clear() removes all parameters');
-    }
-
-    /**
-     * @covers Symfony\Component\DependencyInjection\ParameterBag\ParameterBag::remove
-     */
-    public function testRemove()
-    {
-        $bag = new ParameterBag(array(
-            'foo' => 'foo',
-            'bar' => 'bar',
-        ));
-        $bag->remove('foo');
-        $this->assertEquals(array('bar' => 'bar'), $bag->all(), '->remove() removes a parameter');
-        $bag->remove('BAR');
-        $this->assertEquals(array(), $bag->all(), '->remove() converts key to lowercase before removing');
-    }
-
-    /**
-     * @covers Symfony\Component\DependencyInjection\ParameterBag\ParameterBag::get
-     * @covers Symfony\Component\DependencyInjection\ParameterBag\ParameterBag::set
-     */
-    public function testGetSet()
-    {
-        $bag = new ParameterBag(array('foo' => 'bar'));
-        $bag->set('bar', 'foo');
-        $this->assertEquals('foo', $bag->get('bar'), '->set() sets the value of a new parameter');
-
-        $bag->set('foo', 'baz');
-        $this->assertEquals('baz', $bag->get('foo'), '->set() overrides previously set parameter');
-
-        $bag->set('Foo', 'baz1');
-        $this->assertEquals('baz1', $bag->get('foo'), '->set() converts the key to lowercase');
-        $this->assertEquals('baz1', $bag->get('FOO'), '->get() converts the key to lowercase');
-
-        try {
-            $bag->get('baba');
-            $this->fail('->get() throws an Symfony\Component\DependencyInjection\Exception\ParameterNotFoundException if the key does not exist');
-        } catch (\Exception $e) {
-            $this->assertInstanceOf('Symfony\Component\DependencyInjection\Exception\ParameterNotFoundException', $e, '->get() throws an Symfony\Component\DependencyInjection\Exception\ParameterNotFoundException if the key does not exist');
-            $this->assertEquals('You have requested a non-existent parameter "baba".', $e->getMessage(), '->get() throws an Symfony\Component\DependencyInjection\Exception\ParameterNotFoundException if the key does not exist');
-        }
-    }
-
-    public function testGetThrowParameterNotFoundException()
-    {
-        $bag = new ParameterBag(array(
-            'foo' => 'foo',
-            'bar' => 'bar',
-            'baz' => 'baz',
-        ));
-
-        try {
-            $bag->get('foo1');
-            $this->fail('->get() throws an Symfony\Component\DependencyInjection\Exception\ParameterNotFoundException if the key does not exist');
-        } catch (\Exception $e) {
-            $this->assertInstanceOf('Symfony\Component\DependencyInjection\Exception\ParameterNotFoundException', $e, '->get() throws an Symfony\Component\DependencyInjection\Exception\ParameterNotFoundException if the key does not exist');
-            $this->assertEquals('You have requested a non-existent parameter "foo1". Did you mean this: "foo"?', $e->getMessage(), '->get() throws an Symfony\Component\DependencyInjection\Exception\ParameterNotFoundException with some advices');
-        }
-
-        try {
-            $bag->get('bag');
-            $this->fail('->get() throws an Symfony\Component\DependencyInjection\Exception\ParameterNotFoundException if the key does not exist');
-        } catch (\Exception $e) {
-            $this->assertInstanceOf('Symfony\Component\DependencyInjection\Exception\ParameterNotFoundException', $e, '->get() throws an Symfony\Component\DependencyInjection\Exception\ParameterNotFoundException if the key does not exist');
-            $this->assertEquals('You have requested a non-existent parameter "bag". Did you mean one of these: "bar", "baz"?', $e->getMessage(), '->get() throws an Symfony\Component\DependencyInjection\Exception\ParameterNotFoundException with some advices');
-        }
-
-        try {
-            $bag->get('');
-            $this->fail('->get() throws an Symfony\Component\DependencyInjection\Exception\ParameterNotFoundException if the key does not exist');
-        } catch (\Exception $e) {
-            $this->assertInstanceOf('Symfony\Component\DependencyInjection\Exception\ParameterNotFoundException', $e, '->get() throws an Symfony\Component\DependencyInjection\Exception\ParameterNotFoundException if the key does not exist');
-            $this->assertEquals('You have requested a non-existent parameter "".', $e->getMessage(), '->get() throws an Symfony\Component\DependencyInjection\Exception\ParameterNotFoundException with some advices');
-        }
-    }
-
-    /**
-     * @covers Symfony\Component\DependencyInjection\ParameterBag\ParameterBag::has
-     */
-    public function testHas()
-    {
-        $bag = new ParameterBag(array('foo' => 'bar'));
-        $this->assertTrue($bag->has('foo'), '->has() returns true if a parameter is defined');
-        $this->assertTrue($bag->has('Foo'), '->has() converts the key to lowercase');
-        $this->assertFalse($bag->has('bar'), '->has() returns false if a parameter is not defined');
-    }
-
-    /**
-     * @covers Symfony\Component\DependencyInjection\ParameterBag\ParameterBag::resolveValue
-     */
-    public function testResolveValue()
-    {
-        $bag = new ParameterBag(array());
-        $this->assertEquals('foo', $bag->resolveValue('foo'), '->resolveValue() returns its argument unmodified if no placeholders are found');
-
-        $bag = new ParameterBag(array('foo' => 'bar'));
-        $this->assertEquals('I\'m a bar', $bag->resolveValue('I\'m a %foo%'), '->resolveValue() replaces placeholders by their values');
-        $this->assertEquals(array('bar' => 'bar'), $bag->resolveValue(array('%foo%' => '%foo%')), '->resolveValue() replaces placeholders in keys and values of arrays');
-        $this->assertEquals(array('bar' => array('bar' => array('bar' => 'bar'))), $bag->resolveValue(array('%foo%' => array('%foo%' => array('%foo%' => '%foo%')))), '->resolveValue() replaces placeholders in nested arrays');
-        $this->assertEquals('I\'m a %%foo%%', $bag->resolveValue('I\'m a %%foo%%'), '->resolveValue() supports % escaping by doubling it');
-        $this->assertEquals('I\'m a bar %%foo bar', $bag->resolveValue('I\'m a %foo% %%foo %foo%'), '->resolveValue() supports % escaping by doubling it');
-        $this->assertEquals(array('foo' => array('bar' => array('ding' => 'I\'m a bar %%foo %%bar'))), $bag->resolveValue(array('foo' => array('bar' => array('ding' => 'I\'m a bar %%foo %%bar')))), '->resolveValue() supports % escaping by doubling it');
-
-        $bag = new ParameterBag(array('foo' => true));
-        $this->assertTrue($bag->resolveValue('%foo%'), '->resolveValue() replaces arguments that are just a placeholder by their value without casting them to strings');
-        $bag = new ParameterBag(array('foo' => null));
-        $this->assertNull($bag->resolveValue('%foo%'), '->resolveValue() replaces arguments that are just a placeholder by their value without casting them to strings');
-
-        $bag = new ParameterBag(array('foo' => 'bar', 'baz' => '%%%foo% %foo%%% %%foo%% %%%foo%%%'));
-        $this->assertEquals('%%bar bar%% %%foo%% %%bar%%', $bag->resolveValue('%baz%'), '->resolveValue() replaces params placed besides escaped %');
-
-        $bag = new ParameterBag(array('baz' => '%%s?%%s'));
-        $this->assertEquals('%%s?%%s', $bag->resolveValue('%baz%'), '->resolveValue() is not replacing greedily');
-
-        $bag = new ParameterBag(array());
-        try {
-            $bag->resolveValue('%foobar%');
-            $this->fail('->resolveValue() throws an InvalidArgumentException if a placeholder references a non-existent parameter');
-        } catch (ParameterNotFoundException $e) {
-            $this->assertEquals('You have requested a non-existent parameter "foobar".', $e->getMessage(), '->resolveValue() throws a ParameterNotFoundException if a placeholder references a non-existent parameter');
-        }
-
-        try {
-            $bag->resolveValue('foo %foobar% bar');
-            $this->fail('->resolveValue() throws a ParameterNotFoundException if a placeholder references a non-existent parameter');
-        } catch (ParameterNotFoundException $e) {
-            $this->assertEquals('You have requested a non-existent parameter "foobar".', $e->getMessage(), '->resolveValue() throws a ParameterNotFoundException if a placeholder references a non-existent parameter');
-        }
-
-        $bag = new ParameterBag(array('foo' => 'a %bar%', 'bar' => array()));
-        try {
-            $bag->resolveValue('%foo%');
-            $this->fail('->resolveValue() throws a RuntimeException when a parameter embeds another non-string parameter');
-        } catch (RuntimeException $e) {
-            $this->assertEquals('A string value must be composed of strings and/or numbers, but found parameter "bar" of type array inside string value "a %bar%".', $e->getMessage(), '->resolveValue() throws a RuntimeException when a parameter embeds another non-string parameter');
-        }
-
-        $bag = new ParameterBag(array('foo' => '%bar%', 'bar' => '%foobar%', 'foobar' => '%foo%'));
-        try {
-            $bag->resolveValue('%foo%');
-            $this->fail('->resolveValue() throws a ParameterCircularReferenceException when a parameter has a circular reference');
-        } catch (ParameterCircularReferenceException $e) {
-            $this->assertEquals('Circular reference detected for parameter "foo" ("foo" > "bar" > "foobar" > "foo").', $e->getMessage(), '->resolveValue() throws a ParameterCircularReferenceException when a parameter has a circular reference');
-        }
-
-        $bag = new ParameterBag(array('foo' => 'a %bar%', 'bar' => 'a %foobar%', 'foobar' => 'a %foo%'));
-        try {
-            $bag->resolveValue('%foo%');
-            $this->fail('->resolveValue() throws a ParameterCircularReferenceException when a parameter has a circular reference');
-        } catch (ParameterCircularReferenceException $e) {
-            $this->assertEquals('Circular reference detected for parameter "foo" ("foo" > "bar" > "foobar" > "foo").', $e->getMessage(), '->resolveValue() throws a ParameterCircularReferenceException when a parameter has a circular reference');
-        }
-
-        $bag = new ParameterBag(array('host' => 'foo.bar', 'port' => 1337));
-        $this->assertEquals('foo.bar:1337', $bag->resolveValue('%host%:%port%'));
-    }
-
-    /**
-     * @covers Symfony\Component\DependencyInjection\ParameterBag\ParameterBag::resolve
-     */
-    public function testResolveIndicatesWhyAParameterIsNeeded()
-    {
-        $bag = new ParameterBag(array('foo' => '%bar%'));
-
-        try {
-            $bag->resolve();
-        } catch (ParameterNotFoundException $e) {
-            $this->assertEquals('The parameter "foo" has a dependency on a non-existent parameter "bar".', $e->getMessage());
-        }
-
-        $bag = new ParameterBag(array('foo' => '%bar%'));
-
-        try {
-            $bag->resolve();
-        } catch (ParameterNotFoundException $e) {
-            $this->assertEquals('The parameter "foo" has a dependency on a non-existent parameter "bar".', $e->getMessage());
-        }
-    }
-
-    /**
-     * @covers Symfony\Component\DependencyInjection\ParameterBag\ParameterBag::resolve
-     */
-    public function testResolveUnescapesValue()
-    {
-        $bag = new ParameterBag(array(
-            'foo' => array('bar' => array('ding' => 'I\'m a bar %%foo %%bar')),
-            'bar' => 'I\'m a %%foo%%',
-        ));
-
-        $bag->resolve();
-
-        $this->assertEquals('I\'m a %foo%', $bag->get('bar'), '->resolveValue() supports % escaping by doubling it');
-        $this->assertEquals(array('bar' => array('ding' => 'I\'m a bar %foo %bar')), $bag->get('foo'), '->resolveValue() supports % escaping by doubling it');
-    }
-
-    /**
-     * @covers Symfony\Component\DependencyInjection\ParameterBag\ParameterBag::escapeValue
-     */
-    public function testEscapeValue()
-    {
-        $bag = new ParameterBag();
-
-        $bag->add(array(
-            'foo' => $bag->escapeValue(array('bar' => array('ding' => 'I\'m a bar %foo %bar', 'zero' => null))),
-            'bar' => $bag->escapeValue('I\'m a %foo%'),
-        ));
-
-        $this->assertEquals('I\'m a %%foo%%', $bag->get('bar'), '->escapeValue() escapes % by doubling it');
-        $this->assertEquals(array('bar' => array('ding' => 'I\'m a bar %%foo %%bar', 'zero' => null)), $bag->get('foo'), '->escapeValue() escapes % by doubling it');
-    }
-
-    /**
-     * @covers Symfony\Component\DependencyInjection\ParameterBag\ParameterBag::resolve
-     * @dataProvider stringsWithSpacesProvider
-     */
-    public function testResolveStringWithSpacesReturnsString($expected, $test, $description)
-    {
-        $bag = new ParameterBag(array('foo' => 'bar'));
-
-        try {
-            $this->assertEquals($expected, $bag->resolveString($test), $description);
-        } catch (ParameterNotFoundException $e) {
-            $this->fail(sprintf('%s - "%s"', $description, $expected));
-        }
-    }
-
-    public function stringsWithSpacesProvider()
-    {
-        return array(
-            array('bar', '%foo%', 'Parameters must be wrapped by %.'),
-            array('% foo %', '% foo %', 'Parameters should not have spaces.'),
-            array('{% set my_template = "foo" %}', '{% set my_template = "foo" %}', 'Twig-like strings are not parameters.'),
-            array('50% is less than 100%', '50% is less than 100%', 'Text between % signs is allowed, if there are spaces.'),
-        );
-    }
-}
diff --git a/vendor/symfony/dependency-injection/Tests/ParameterTest.php b/vendor/symfony/dependency-injection/Tests/ParameterTest.php
deleted file mode 100644
index bed188e..0000000
--- a/vendor/symfony/dependency-injection/Tests/ParameterTest.php
+++ /dev/null
@@ -1,26 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\DependencyInjection\Tests;
-
-use Symfony\Component\DependencyInjection\Parameter;
-
-class ParameterTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @covers Symfony\Component\DependencyInjection\Parameter::__construct
-     */
-    public function testConstructor()
-    {
-        $ref = new Parameter('foo');
-        $this->assertEquals('foo', (string) $ref, '__construct() sets the id of the parameter, which is used for the __toString() method');
-    }
-}
diff --git a/vendor/symfony/dependency-injection/Tests/ReferenceTest.php b/vendor/symfony/dependency-injection/Tests/ReferenceTest.php
deleted file mode 100644
index f14e99f..0000000
--- a/vendor/symfony/dependency-injection/Tests/ReferenceTest.php
+++ /dev/null
@@ -1,32 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\DependencyInjection\Tests;
-
-use Symfony\Component\DependencyInjection\Reference;
-
-class ReferenceTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @covers Symfony\Component\DependencyInjection\Reference::__construct
-     */
-    public function testConstructor()
-    {
-        $ref = new Reference('foo');
-        $this->assertEquals('foo', (string) $ref, '__construct() sets the id of the reference, which is used for the __toString() method');
-    }
-
-    public function testCaseInsensitive()
-    {
-        $ref = new Reference('FooBar');
-        $this->assertEquals('foobar', (string) $ref, 'the id is lowercased as the container is case insensitive');
-    }
-}
diff --git a/vendor/symfony/dom-crawler/Tests/CrawlerTest.php b/vendor/symfony/dom-crawler/Tests/CrawlerTest.php
deleted file mode 100755
index 4cfd06f..0000000
--- a/vendor/symfony/dom-crawler/Tests/CrawlerTest.php
+++ /dev/null
@@ -1,1084 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\DomCrawler\Tests;
-
-use Symfony\Component\CssSelector\CssSelector;
-use Symfony\Component\DomCrawler\Crawler;
-
-class CrawlerTest extends \PHPUnit_Framework_TestCase
-{
-    public function testConstructor()
-    {
-        $crawler = new Crawler();
-        $this->assertCount(0, $crawler, '__construct() returns an empty crawler');
-
-        $crawler = new Crawler(new \DOMNode());
-        $this->assertCount(1, $crawler, '__construct() takes a node as a first argument');
-    }
-
-    /**
-     * @covers Symfony\Component\DomCrawler\Crawler::add
-     */
-    public function testAdd()
-    {
-        $crawler = new Crawler();
-        $crawler->add($this->createDomDocument());
-        $this->assertEquals('foo', $crawler->filterXPath('//div')->attr('class'), '->add() adds nodes from a \DOMDocument');
-
-        $crawler = new Crawler();
-        $crawler->add($this->createNodeList());
-        $this->assertEquals('foo', $crawler->filterXPath('//div')->attr('class'), '->add() adds nodes from a \DOMNodeList');
-
-        foreach ($this->createNodeList() as $node) {
-            $list[] = $node;
-        }
-        $crawler = new Crawler();
-        $crawler->add($list);
-        $this->assertEquals('foo', $crawler->filterXPath('//div')->attr('class'), '->add() adds nodes from an array of nodes');
-
-        $crawler = new Crawler();
-        $crawler->add($this->createNodeList()->item(0));
-        $this->assertEquals('foo', $crawler->filterXPath('//div')->attr('class'), '->add() adds nodes from a \DOMElement');
-
-        $crawler = new Crawler();
-        $crawler->add('<html><body>Foo</body></html>');
-        $this->assertEquals('Foo', $crawler->filterXPath('//body')->text(), '->add() adds nodes from a string');
-    }
-
-    /**
-     * @expectedException \InvalidArgumentException
-     */
-    public function testAddInvalidNode()
-    {
-        $crawler = new Crawler();
-        $crawler->add(1);
-    }
-
-    /**
-     * @covers Symfony\Component\DomCrawler\Crawler::addHtmlContent
-     */
-    public function testAddHtmlContent()
-    {
-        $crawler = new Crawler();
-        $crawler->addHtmlContent('<html><div class="foo"></html>', 'UTF-8');
-
-        $this->assertEquals('foo', $crawler->filterXPath('//div')->attr('class'), '->addHtmlContent() adds nodes from an HTML string');
-
-        $crawler->addHtmlContent('<html><head><base href="http://symfony.com"></head><a href="/contact"></a></html>', 'UTF-8');
-
-        $this->assertEquals('http://symfony.com', $crawler->filterXPath('//base')->attr('href'), '->addHtmlContent() adds nodes from an HTML string');
-        $this->assertEquals('http://symfony.com/contact', $crawler->filterXPath('//a')->link()->getUri(), '->addHtmlContent() adds nodes from an HTML string');
-    }
-
-    /**
-     * @covers Symfony\Component\DomCrawler\Crawler::addHtmlContent
-     * @requires extension mbstring
-     */
-    public function testAddHtmlContentCharset()
-    {
-        $crawler = new Crawler();
-        $crawler->addHtmlContent('<html><div class="foo">Tiếng Việt</html>', 'UTF-8');
-
-        $this->assertEquals('Tiếng Việt', $crawler->filterXPath('//div')->text());
-    }
-
-    /**
-     * @covers Symfony\Component\DomCrawler\Crawler::addHtmlContent
-     */
-    public function testAddHtmlContentInvalidBaseTag()
-    {
-        $crawler = new Crawler(null, 'http://symfony.com');
-
-        $crawler->addHtmlContent('<html><head><base target="_top"></head><a href="/contact"></a></html>', 'UTF-8');
-
-        $this->assertEquals('http://symfony.com/contact', current($crawler->filterXPath('//a')->links())->getUri(), '->addHtmlContent() correctly handles a non-existent base tag href attribute');
-    }
-
-    /**
-     * @covers Symfony\Component\DomCrawler\Crawler::addHtmlContent
-     */
-    public function testAddHtmlContentUnsupportedCharset()
-    {
-        $crawler = new Crawler();
-        $crawler->addHtmlContent(file_get_contents(__DIR__.'/Fixtures/windows-1250.html'), 'Windows-1250');
-
-        $this->assertEquals('Žťčýů', $crawler->filterXPath('//p')->text());
-    }
-
-    /**
-     * @covers Symfony\Component\DomCrawler\Crawler::addHtmlContent
-     * @requires extension mbstring
-     */
-    public function testAddHtmlContentCharsetGbk()
-    {
-        $crawler = new Crawler();
-        //gbk encode of <html><p>中文</p></html>
-        $crawler->addHtmlContent(base64_decode('PGh0bWw+PHA+1tDOxDwvcD48L2h0bWw+'), 'gbk');
-
-        $this->assertEquals('中文', $crawler->filterXPath('//p')->text());
-    }
-
-    /**
-     * @covers Symfony\Component\DomCrawler\Crawler::addHtmlContent
-     */
-    public function testAddHtmlContentWithErrors()
-    {
-        $internalErrors = libxml_use_internal_errors(true);
-
-        $crawler = new Crawler();
-        $crawler->addHtmlContent(<<<EOF
-<!DOCTYPE html>
-<html>
-    <head>
-    </head>
-    <body>
-        <nav><a href="#"><a href="#"></nav>
-    </body>
-</html>
-EOF
-        , 'UTF-8');
-
-        $errors = libxml_get_errors();
-        $this->assertCount(1, $errors);
-        $this->assertEquals("Tag nav invalid\n", $errors[0]->message);
-
-        libxml_clear_errors();
-        libxml_use_internal_errors($internalErrors);
-    }
-
-    /**
-     * @covers Symfony\Component\DomCrawler\Crawler::addXmlContent
-     */
-    public function testAddXmlContent()
-    {
-        $crawler = new Crawler();
-        $crawler->addXmlContent('<html><div class="foo"></div></html>', 'UTF-8');
-
-        $this->assertEquals('foo', $crawler->filterXPath('//div')->attr('class'), '->addXmlContent() adds nodes from an XML string');
-    }
-
-    /**
-     * @covers Symfony\Component\DomCrawler\Crawler::addXmlContent
-     */
-    public function testAddXmlContentCharset()
-    {
-        $crawler = new Crawler();
-        $crawler->addXmlContent('<html><div class="foo">Tiếng Việt</div></html>', 'UTF-8');
-
-        $this->assertEquals('Tiếng Việt', $crawler->filterXPath('//div')->text());
-    }
-
-    /**
-     * @covers Symfony\Component\DomCrawler\Crawler::addXmlContent
-     */
-    public function testAddXmlContentWithErrors()
-    {
-        $internalErrors = libxml_use_internal_errors(true);
-
-        $crawler = new Crawler();
-        $crawler->addXmlContent(<<<EOF
-<!DOCTYPE html>
-<html>
-    <head>
-    </head>
-    <body>
-        <nav><a href="#"><a href="#"></nav>
-    </body>
-</html>
-EOF
-        , 'UTF-8');
-
-        $this->assertTrue(count(libxml_get_errors()) > 1);
-
-        libxml_clear_errors();
-        libxml_use_internal_errors($internalErrors);
-    }
-
-    /**
-     * @covers Symfony\Component\DomCrawler\Crawler::addContent
-     */
-    public function testAddContent()
-    {
-        $crawler = new Crawler();
-        $crawler->addContent('<html><div class="foo"></html>', 'text/html; charset=UTF-8');
-        $this->assertEquals('foo', $crawler->filterXPath('//div')->attr('class'), '->addContent() adds nodes from an HTML string');
-
-        $crawler = new Crawler();
-        $crawler->addContent('<html><div class="foo"></html>', 'text/html; charset=UTF-8; dir=RTL');
-        $this->assertEquals('foo', $crawler->filterXPath('//div')->attr('class'), '->addContent() adds nodes from an HTML string with extended content type');
-
-        $crawler = new Crawler();
-        $crawler->addContent('<html><div class="foo"></html>');
-        $this->assertEquals('foo', $crawler->filterXPath('//div')->attr('class'), '->addContent() uses text/html as the default type');
-
-        $crawler = new Crawler();
-        $crawler->addContent('<html><div class="foo"></div></html>', 'text/xml; charset=UTF-8');
-        $this->assertEquals('foo', $crawler->filterXPath('//div')->attr('class'), '->addContent() adds nodes from an XML string');
-
-        $crawler = new Crawler();
-        $crawler->addContent('<html><div class="foo"></div></html>', 'text/xml');
-        $this->assertEquals('foo', $crawler->filterXPath('//div')->attr('class'), '->addContent() adds nodes from an XML string');
-
-        $crawler = new Crawler();
-        $crawler->addContent('foo bar', 'text/plain');
-        $this->assertCount(0, $crawler, '->addContent() does nothing if the type is not (x|ht)ml');
-
-        $crawler = new Crawler();
-        $crawler->addContent('<html><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><span>中文</span></html>');
-        $this->assertEquals('中文', $crawler->filterXPath('//span')->text(), '->addContent() guess wrong charset');
-
-        $crawler = new Crawler();
-        $crawler->addContent(iconv('UTF-8', 'SJIS', '<html><head><meta charset="Shift_JIS"></head><body>日本語</body></html>'));
-        $this->assertEquals('日本語', $crawler->filterXPath('//body')->text(), '->addContent() can recognize "Shift_JIS" in html5 meta charset tag');
-    }
-
-    /**
-     * @covers Symfony\Component\DomCrawler\Crawler::addDocument
-     */
-    public function testAddDocument()
-    {
-        $crawler = new Crawler();
-        $crawler->addDocument($this->createDomDocument());
-
-        $this->assertEquals('foo', $crawler->filterXPath('//div')->attr('class'), '->addDocument() adds nodes from a \DOMDocument');
-    }
-
-    /**
-     * @covers Symfony\Component\DomCrawler\Crawler::addNodeList
-     */
-    public function testAddNodeList()
-    {
-        $crawler = new Crawler();
-        $crawler->addNodeList($this->createNodeList());
-
-        $this->assertEquals('foo', $crawler->filterXPath('//div')->attr('class'), '->addNodeList() adds nodes from a \DOMNodeList');
-    }
-
-    /**
-     * @covers Symfony\Component\DomCrawler\Crawler::addNodes
-     */
-    public function testAddNodes()
-    {
-        foreach ($this->createNodeList() as $node) {
-            $list[] = $node;
-        }
-
-        $crawler = new Crawler();
-        $crawler->addNodes($list);
-
-        $this->assertEquals('foo', $crawler->filterXPath('//div')->attr('class'), '->addNodes() adds nodes from an array of nodes');
-    }
-
-    /**
-     * @covers Symfony\Component\DomCrawler\Crawler::addNode
-     */
-    public function testAddNode()
-    {
-        $crawler = new Crawler();
-        $crawler->addNode($this->createNodeList()->item(0));
-
-        $this->assertEquals('foo', $crawler->filterXPath('//div')->attr('class'), '->addNode() adds nodes from a \DOMElement');
-    }
-
-    public function testClear()
-    {
-        $crawler = new Crawler(new \DOMNode());
-        $crawler->clear();
-        $this->assertCount(0, $crawler, '->clear() removes all the nodes from the crawler');
-    }
-
-    public function testEq()
-    {
-        $crawler = $this->createTestCrawler()->filterXPath('//li');
-        $this->assertNotSame($crawler, $crawler->eq(0), '->eq() returns a new instance of a crawler');
-        $this->assertInstanceOf('Symfony\\Component\\DomCrawler\\Crawler', $crawler, '->eq() returns a new instance of a crawler');
-
-        $this->assertEquals('Two', $crawler->eq(1)->text(), '->eq() returns the nth node of the list');
-        $this->assertCount(0, $crawler->eq(100), '->eq() returns an empty crawler if the nth node does not exist');
-    }
-
-    public function testEach()
-    {
-        $data = $this->createTestCrawler()->filterXPath('//ul[1]/li')->each(function ($node, $i) {
-            return $i.'-'.$node->text();
-        });
-
-        $this->assertEquals(array('0-One', '1-Two', '2-Three'), $data, '->each() executes an anonymous function on each node of the list');
-    }
-
-    public function testSlice()
-    {
-        $crawler = $this->createTestCrawler()->filterXPath('//ul[1]/li');
-        $this->assertNotSame($crawler->slice(), $crawler, '->slice() returns a new instance of a crawler');
-        $this->assertInstanceOf('Symfony\\Component\\DomCrawler\\Crawler', $crawler->slice(), '->slice() returns a new instance of a crawler');
-
-        $this->assertCount(3, $crawler->slice(), '->slice() does not slice the nodes in the list if any param is entered');
-        $this->assertCount(1, $crawler->slice(1, 1), '->slice() slices the nodes in the list');
-    }
-
-    public function testReduce()
-    {
-        $crawler = $this->createTestCrawler()->filterXPath('//ul[1]/li');
-        $nodes = $crawler->reduce(function ($node, $i) {
-            return $i !== 1;
-        });
-        $this->assertNotSame($nodes, $crawler, '->reduce() returns a new instance of a crawler');
-        $this->assertInstanceOf('Symfony\\Component\\DomCrawler\\Crawler', $nodes, '->reduce() returns a new instance of a crawler');
-
-        $this->assertCount(2, $nodes, '->reduce() filters the nodes in the list');
-    }
-
-    public function testAttr()
-    {
-        $this->assertEquals('first', $this->createTestCrawler()->filterXPath('//li')->attr('class'), '->attr() returns the attribute of the first element of the node list');
-
-        try {
-            $this->createTestCrawler()->filterXPath('//ol')->attr('class');
-            $this->fail('->attr() throws an \InvalidArgumentException if the node list is empty');
-        } catch (\InvalidArgumentException $e) {
-            $this->assertTrue(true, '->attr() throws an \InvalidArgumentException if the node list is empty');
-        }
-    }
-
-    public function testMissingAttrValueIsNull()
-    {
-        $crawler = new Crawler();
-        $crawler->addContent('<html><div non-empty-attr="sample value" empty-attr=""></div></html>', 'text/html; charset=UTF-8');
-        $div = $crawler->filterXPath('//div');
-
-        $this->assertEquals('sample value', $div->attr('non-empty-attr'), '->attr() reads non-empty attributes correctly');
-        $this->assertEquals('', $div->attr('empty-attr'), '->attr() reads empty attributes correctly');
-        $this->assertNull($div->attr('missing-attr'), '->attr() reads missing attributes correctly');
-    }
-
-    public function testNodeName()
-    {
-        $this->assertEquals('li', $this->createTestCrawler()->filterXPath('//li')->nodeName(), '->nodeName() returns the node name of the first element of the node list');
-
-        try {
-            $this->createTestCrawler()->filterXPath('//ol')->nodeName();
-            $this->fail('->nodeName() throws an \InvalidArgumentException if the node list is empty');
-        } catch (\InvalidArgumentException $e) {
-            $this->assertTrue(true, '->nodeName() throws an \InvalidArgumentException if the node list is empty');
-        }
-    }
-
-    public function testText()
-    {
-        $this->assertEquals('One', $this->createTestCrawler()->filterXPath('//li')->text(), '->text() returns the node value of the first element of the node list');
-
-        try {
-            $this->createTestCrawler()->filterXPath('//ol')->text();
-            $this->fail('->text() throws an \InvalidArgumentException if the node list is empty');
-        } catch (\InvalidArgumentException $e) {
-            $this->assertTrue(true, '->text() throws an \InvalidArgumentException if the node list is empty');
-        }
-    }
-
-    public function testHtml()
-    {
-        $this->assertEquals('<img alt="Bar">', $this->createTestCrawler()->filterXPath('//a[5]')->html());
-        $this->assertEquals('<input type="text" value="TextValue" name="TextName"><input type="submit" value="FooValue" name="FooName" id="FooId"><input type="button" value="BarValue" name="BarName" id="BarId"><button value="ButtonValue" name="ButtonName" id="ButtonId"></button>', trim($this->createTestCrawler()->filterXPath('//form[@id="FooFormId"]')->html()));
-
-        try {
-            $this->createTestCrawler()->filterXPath('//ol')->html();
-            $this->fail('->html() throws an \InvalidArgumentException if the node list is empty');
-        } catch (\InvalidArgumentException $e) {
-            $this->assertTrue(true, '->html() throws an \InvalidArgumentException if the node list is empty');
-        }
-    }
-
-    public function testExtract()
-    {
-        $crawler = $this->createTestCrawler()->filterXPath('//ul[1]/li');
-
-        $this->assertEquals(array('One', 'Two', 'Three'), $crawler->extract('_text'), '->extract() returns an array of extracted data from the node list');
-        $this->assertEquals(array(array('One', 'first'), array('Two', ''), array('Three', '')), $crawler->extract(array('_text', 'class')), '->extract() returns an array of extracted data from the node list');
-
-        $this->assertEquals(array(), $this->createTestCrawler()->filterXPath('//ol')->extract('_text'), '->extract() returns an empty array if the node list is empty');
-    }
-
-    public function testFilterXpathComplexQueries()
-    {
-        $crawler = $this->createTestCrawler()->filterXPath('//body');
-
-        $this->assertCount(0, $crawler->filterXPath('/input'));
-        $this->assertCount(0, $crawler->filterXPath('/body'));
-        $this->assertCount(1, $crawler->filterXPath('/_root/body'));
-        $this->assertCount(1, $crawler->filterXPath('./body'));
-        $this->assertCount(1, $crawler->filterXPath('.//body'));
-        $this->assertCount(5, $crawler->filterXPath('.//input'));
-        $this->assertCount(4, $crawler->filterXPath('//form')->filterXPath('//button | //input'));
-        $this->assertCount(1, $crawler->filterXPath('body'));
-        $this->assertCount(6, $crawler->filterXPath('//button | //input'));
-        $this->assertCount(1, $crawler->filterXPath('//body'));
-        $this->assertCount(1, $crawler->filterXPath('descendant-or-self::body'));
-        $this->assertCount(1, $crawler->filterXPath('//div[@id="parent"]')->filterXPath('./div'), 'A child selection finds only the current div');
-        $this->assertCount(3, $crawler->filterXPath('//div[@id="parent"]')->filterXPath('descendant::div'), 'A descendant selector matches the current div and its child');
-        $this->assertCount(3, $crawler->filterXPath('//div[@id="parent"]')->filterXPath('//div'), 'A descendant selector matches the current div and its child');
-        $this->assertCount(5, $crawler->filterXPath('(//a | //div)//img'));
-        $this->assertCount(7, $crawler->filterXPath('((//a | //div)//img | //ul)'));
-        $this->assertCount(7, $crawler->filterXPath('( ( //a | //div )//img | //ul )'));
-    }
-
-    /**
-     * @covers Symfony\Component\DomCrawler\Crawler::filterXPath
-     */
-    public function testFilterXPath()
-    {
-        $crawler = $this->createTestCrawler();
-        $this->assertNotSame($crawler, $crawler->filterXPath('//li'), '->filterXPath() returns a new instance of a crawler');
-        $this->assertInstanceOf('Symfony\\Component\\DomCrawler\\Crawler', $crawler, '->filterXPath() returns a new instance of a crawler');
-
-        $crawler = $this->createTestCrawler()->filterXPath('//ul');
-        $this->assertCount(6, $crawler->filterXPath('//li'), '->filterXPath() filters the node list with the XPath expression');
-
-        $crawler = $this->createTestCrawler();
-        $this->assertCount(3, $crawler->filterXPath('//body')->filterXPath('//button')->parents(), '->filterXpath() preserves parents when chained');
-    }
-
-    public function testFilterXPathWithDefaultNamespace()
-    {
-        $crawler = $this->createTestXmlCrawler()->filterXPath('//default:entry/default:id');
-        $this->assertCount(1, $crawler, '->filterXPath() automatically registers a namespace');
-        $this->assertSame('tag:youtube.com,2008:video:kgZRZmEc9j4', $crawler->text());
-    }
-
-    public function testFilterXPathWithCustomDefaultNamespace()
-    {
-        $crawler = $this->createTestXmlCrawler();
-        $crawler->setDefaultNamespacePrefix('x');
-        $crawler = $crawler->filterXPath('//x:entry/x:id');
-
-        $this->assertCount(1, $crawler, '->filterXPath() lets to override the default namespace prefix');
-        $this->assertSame('tag:youtube.com,2008:video:kgZRZmEc9j4', $crawler->text());
-    }
-
-    public function testFilterXPathWithNamespace()
-    {
-        $crawler = $this->createTestXmlCrawler()->filterXPath('//yt:accessControl');
-        $this->assertCount(2, $crawler, '->filterXPath() automatically registers a namespace');
-    }
-
-    public function testFilterXPathWithMultipleNamespaces()
-    {
-        $crawler = $this->createTestXmlCrawler()->filterXPath('//media:group/yt:aspectRatio');
-        $this->assertCount(1, $crawler, '->filterXPath() automatically registers multiple namespaces');
-        $this->assertSame('widescreen', $crawler->text());
-    }
-
-    public function testFilterXPathWithManuallyRegisteredNamespace()
-    {
-        $crawler = $this->createTestXmlCrawler();
-        $crawler->registerNamespace('m', 'http://search.yahoo.com/mrss/');
-
-        $crawler = $crawler->filterXPath('//m:group/yt:aspectRatio');
-        $this->assertCount(1, $crawler, '->filterXPath() uses manually registered namespace');
-        $this->assertSame('widescreen', $crawler->text());
-    }
-
-    public function testFilterXPathWithAnUrl()
-    {
-        $crawler = $this->createTestXmlCrawler();
-
-        $crawler = $crawler->filterXPath('//media:category[@scheme="http://gdata.youtube.com/schemas/2007/categories.cat"]');
-        $this->assertCount(1, $crawler);
-        $this->assertSame('Music', $crawler->text());
-    }
-
-    public function testFilterXPathWithFakeRoot()
-    {
-        $crawler = $this->createTestCrawler();
-        $this->assertCount(0, $crawler->filterXPath('.'), '->filterXPath() returns an empty result if the XPath references the fake root node');
-        $this->assertCount(0, $crawler->filterXPath('/_root'), '->filterXPath() returns an empty result if the XPath references the fake root node');
-        $this->assertCount(0, $crawler->filterXPath('self::*'), '->filterXPath() returns an empty result if the XPath references the fake root node');
-        $this->assertCount(0, $crawler->filterXPath('self::_root'), '->filterXPath() returns an empty result if the XPath references the fake root node');
-    }
-
-    public function testFilterXPathWithAncestorAxis()
-    {
-        $crawler = $this->createTestCrawler()->filterXPath('//form');
-
-        $this->assertCount(0, $crawler->filterXPath('ancestor::*'), 'The fake root node has no ancestor nodes');
-    }
-
-    public function testFilterXPathWithAncestorOrSelfAxis()
-    {
-        $crawler = $this->createTestCrawler()->filterXPath('//form');
-
-        $this->assertCount(0, $crawler->filterXPath('ancestor-or-self::*'), 'The fake root node has no ancestor nodes');
-    }
-
-    public function testFilterXPathWithAttributeAxis()
-    {
-        $crawler = $this->createTestCrawler()->filterXPath('//form');
-
-        $this->assertCount(0, $crawler->filterXPath('attribute::*'), 'The fake root node has no attribute nodes');
-    }
-
-    public function testFilterXPathWithAttributeAxisAfterElementAxis()
-    {
-        $this->assertCount(3, $this->createTestCrawler()->filterXPath('//form/button/attribute::*'), '->filterXPath() handles attribute axes properly when they are preceded by an element filtering axis');
-    }
-
-    public function testFilterXPathWithChildAxis()
-    {
-        $crawler = $this->createTestCrawler()->filterXPath('//div[@id="parent"]');
-
-        $this->assertCount(1, $crawler->filterXPath('child::div'), 'A child selection finds only the current div');
-    }
-
-    public function testFilterXPathWithFollowingAxis()
-    {
-        $crawler = $this->createTestCrawler()->filterXPath('//a');
-
-        $this->assertCount(0, $crawler->filterXPath('following::div'), 'The fake root node has no following nodes');
-    }
-
-    public function testFilterXPathWithFollowingSiblingAxis()
-    {
-        $crawler = $this->createTestCrawler()->filterXPath('//a');
-
-        $this->assertCount(0, $crawler->filterXPath('following-sibling::div'), 'The fake root node has no following nodes');
-    }
-
-    public function testFilterXPathWithNamespaceAxis()
-    {
-        $crawler = $this->createTestCrawler()->filterXPath('//button');
-
-        $this->assertCount(0, $crawler->filterXPath('namespace::*'), 'The fake root node has no namespace nodes');
-    }
-
-    public function testFilterXPathWithNamespaceAxisAfterElementAxis()
-    {
-        $crawler = $this->createTestCrawler()->filterXPath('//div[@id="parent"]/namespace::*');
-
-        $this->assertCount(0, $crawler->filterXPath('namespace::*'), 'Namespace axes cannot be requested');
-    }
-
-    public function testFilterXPathWithParentAxis()
-    {
-        $crawler = $this->createTestCrawler()->filterXPath('//button');
-
-        $this->assertCount(0, $crawler->filterXPath('parent::*'), 'The fake root node has no parent nodes');
-    }
-
-    public function testFilterXPathWithPrecedingAxis()
-    {
-        $crawler = $this->createTestCrawler()->filterXPath('//form');
-
-        $this->assertCount(0, $crawler->filterXPath('preceding::*'), 'The fake root node has no preceding nodes');
-    }
-
-    public function testFilterXPathWithPrecedingSiblingAxis()
-    {
-        $crawler = $this->createTestCrawler()->filterXPath('//form');
-
-        $this->assertCount(0, $crawler->filterXPath('preceding-sibling::*'), 'The fake root node has no preceding nodes');
-    }
-
-    public function testFilterXPathWithSelfAxes()
-    {
-        $crawler = $this->createTestCrawler()->filterXPath('//a');
-
-        $this->assertCount(0, $crawler->filterXPath('self::a'), 'The fake root node has no "real" element name');
-        $this->assertCount(0, $crawler->filterXPath('self::a/img'), 'The fake root node has no "real" element name');
-        $this->assertCount(9, $crawler->filterXPath('self::*/a'));
-    }
-
-    /**
-     * @covers Symfony\Component\DomCrawler\Crawler::filter
-     */
-    public function testFilter()
-    {
-        $crawler = $this->createTestCrawler();
-        $this->assertNotSame($crawler, $crawler->filter('li'), '->filter() returns a new instance of a crawler');
-        $this->assertInstanceOf('Symfony\\Component\\DomCrawler\\Crawler', $crawler, '->filter() returns a new instance of a crawler');
-
-        $crawler = $this->createTestCrawler()->filter('ul');
-
-        $this->assertCount(6, $crawler->filter('li'), '->filter() filters the node list with the CSS selector');
-    }
-
-    public function testFilterWithDefaultNamespace()
-    {
-        $crawler = $this->createTestXmlCrawler()->filter('default|entry default|id');
-        $this->assertCount(1, $crawler, '->filter() automatically registers namespaces');
-        $this->assertSame('tag:youtube.com,2008:video:kgZRZmEc9j4', $crawler->text());
-    }
-
-    public function testFilterWithNamespace()
-    {
-        CssSelector::disableHtmlExtension();
-
-        $crawler = $this->createTestXmlCrawler()->filter('yt|accessControl');
-        $this->assertCount(2, $crawler, '->filter() automatically registers namespaces');
-    }
-
-    public function testFilterWithMultipleNamespaces()
-    {
-        CssSelector::disableHtmlExtension();
-
-        $crawler = $this->createTestXmlCrawler()->filter('media|group yt|aspectRatio');
-        $this->assertCount(1, $crawler, '->filter() automatically registers namespaces');
-        $this->assertSame('widescreen', $crawler->text());
-    }
-
-    public function testFilterWithDefaultNamespaceOnly()
-    {
-        $crawler = new Crawler('<?xml version="1.0" encoding="UTF-8"?>
-            <urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
-                <url>
-                    <loc>http://localhost/foo</loc>
-                    <changefreq>weekly</changefreq>
-                    <priority>0.5</priority>
-                    <lastmod>2012-11-16</lastmod>
-               </url>
-               <url>
-                    <loc>http://localhost/bar</loc>
-                    <changefreq>weekly</changefreq>
-                    <priority>0.5</priority>
-                    <lastmod>2012-11-16</lastmod>
-                </url>
-            </urlset>
-        ');
-
-        $this->assertEquals(2, $crawler->filter('url')->count());
-    }
-
-    public function testSelectLink()
-    {
-        $crawler = $this->createTestCrawler();
-        $this->assertNotSame($crawler, $crawler->selectLink('Foo'), '->selectLink() returns a new instance of a crawler');
-        $this->assertInstanceOf('Symfony\\Component\\DomCrawler\\Crawler', $crawler, '->selectLink() returns a new instance of a crawler');
-
-        $this->assertCount(1, $crawler->selectLink('Fabien\'s Foo'), '->selectLink() selects links by the node values');
-        $this->assertCount(1, $crawler->selectLink('Fabien\'s Bar'), '->selectLink() selects links by the alt attribute of a clickable image');
-
-        $this->assertCount(2, $crawler->selectLink('Fabien"s Foo'), '->selectLink() selects links by the node values');
-        $this->assertCount(2, $crawler->selectLink('Fabien"s Bar'), '->selectLink() selects links by the alt attribute of a clickable image');
-
-        $this->assertCount(1, $crawler->selectLink('\' Fabien"s Foo'), '->selectLink() selects links by the node values');
-        $this->assertCount(1, $crawler->selectLink('\' Fabien"s Bar'), '->selectLink() selects links by the alt attribute of a clickable image');
-
-        $this->assertCount(4, $crawler->selectLink('Foo'), '->selectLink() selects links by the node values');
-        $this->assertCount(4, $crawler->selectLink('Bar'), '->selectLink() selects links by the node values');
-    }
-
-    public function testSelectButton()
-    {
-        $crawler = $this->createTestCrawler();
-        $this->assertNotSame($crawler, $crawler->selectButton('FooValue'), '->selectButton() returns a new instance of a crawler');
-        $this->assertInstanceOf('Symfony\\Component\\DomCrawler\\Crawler', $crawler, '->selectButton() returns a new instance of a crawler');
-
-        $this->assertEquals(1, $crawler->selectButton('FooValue')->count(), '->selectButton() selects buttons');
-        $this->assertEquals(1, $crawler->selectButton('FooName')->count(), '->selectButton() selects buttons');
-        $this->assertEquals(1, $crawler->selectButton('FooId')->count(), '->selectButton() selects buttons');
-
-        $this->assertEquals(1, $crawler->selectButton('BarValue')->count(), '->selectButton() selects buttons');
-        $this->assertEquals(1, $crawler->selectButton('BarName')->count(), '->selectButton() selects buttons');
-        $this->assertEquals(1, $crawler->selectButton('BarId')->count(), '->selectButton() selects buttons');
-
-        $this->assertEquals(1, $crawler->selectButton('FooBarValue')->count(), '->selectButton() selects buttons with form attribute too');
-        $this->assertEquals(1, $crawler->selectButton('FooBarName')->count(), '->selectButton() selects buttons with form attribute too');
-    }
-
-    public function testSelectButtonWithSingleQuotesInNameAttribute()
-    {
-        $html = <<<HTML
-<!DOCTYPE html>
-<html lang="en">
-<body>
-    <div id="action">
-        <a href="/index.php?r=site/login">Login</a>
-    </div>
-    <form id="login-form" action="/index.php?r=site/login" method="post">
-        <button type="submit" name="Click 'Here'">Submit</button>
-    </form>
-</body>
-</html>
-HTML;
-
-        $crawler = new Crawler($html);
-
-        $this->assertCount(1, $crawler->selectButton('Click \'Here\''));
-    }
-
-    public function testSelectButtonWithDoubleQuotesInNameAttribute()
-    {
-        $html = <<<HTML
-<!DOCTYPE html>
-<html lang="en">
-<body>
-    <div id="action">
-        <a href="/index.php?r=site/login">Login</a>
-    </div>
-    <form id="login-form" action="/index.php?r=site/login" method="post">
-        <button type="submit" name='Click "Here"'>Submit</button>
-    </form>
-</body>
-</html>
-HTML;
-
-        $crawler = new Crawler($html);
-
-        $this->assertCount(1, $crawler->selectButton('Click "Here"'));
-    }
-
-    public function testLink()
-    {
-        $crawler = $this->createTestCrawler('http://example.com/bar/')->selectLink('Foo');
-        $this->assertInstanceOf('Symfony\\Component\\DomCrawler\\Link', $crawler->link(), '->link() returns a Link instance');
-
-        $this->assertEquals('POST', $crawler->link('post')->getMethod(), '->link() takes a method as its argument');
-
-        $crawler = $this->createTestCrawler('http://example.com/bar')->selectLink('GetLink');
-        $this->assertEquals('http://example.com/bar?get=param', $crawler->link()->getUri(), '->link() returns a Link instance');
-
-        try {
-            $this->createTestCrawler()->filterXPath('//ol')->link();
-            $this->fail('->link() throws an \InvalidArgumentException if the node list is empty');
-        } catch (\InvalidArgumentException $e) {
-            $this->assertTrue(true, '->link() throws an \InvalidArgumentException if the node list is empty');
-        }
-    }
-
-    public function testSelectLinkAndLinkFiltered()
-    {
-        $html = <<<HTML
-<!DOCTYPE html>
-<html lang="en">
-<body>
-    <div id="action">
-        <a href="/index.php?r=site/login">Login</a>
-    </div>
-    <form id="login-form" action="/index.php?r=site/login" method="post">
-        <button type="submit">Submit</button>
-    </form>
-</body>
-</html>
-HTML;
-
-        $crawler = new Crawler($html);
-        $filtered = $crawler->filterXPath("descendant-or-self::*[@id = 'login-form']");
-
-        $this->assertCount(0, $filtered->selectLink('Login'));
-        $this->assertCount(1, $filtered->selectButton('Submit'));
-
-        $filtered = $crawler->filterXPath("descendant-or-self::*[@id = 'action']");
-
-        $this->assertCount(1, $filtered->selectLink('Login'));
-        $this->assertCount(0, $filtered->selectButton('Submit'));
-
-        $this->assertCount(1, $crawler->selectLink('Login')->selectLink('Login'));
-        $this->assertCount(1, $crawler->selectButton('Submit')->selectButton('Submit'));
-    }
-
-    public function testChaining()
-    {
-        $crawler = new Crawler('<div name="a"><div name="b"><div name="c"></div></div></div>');
-
-        $this->assertEquals('a', $crawler->filterXPath('//div')->filterXPath('div')->filterXPath('div')->attr('name'));
-    }
-
-    public function testLinks()
-    {
-        $crawler = $this->createTestCrawler('http://example.com/bar/')->selectLink('Foo');
-        $this->assertInternalType('array', $crawler->links(), '->links() returns an array');
-
-        $this->assertCount(4, $crawler->links(), '->links() returns an array');
-        $links = $crawler->links();
-        $this->assertInstanceOf('Symfony\\Component\\DomCrawler\\Link', $links[0], '->links() returns an array of Link instances');
-
-        $this->assertEquals(array(), $this->createTestCrawler()->filterXPath('//ol')->links(), '->links() returns an empty array if the node selection is empty');
-    }
-
-    public function testForm()
-    {
-        $testCrawler = $this->createTestCrawler('http://example.com/bar/');
-        $crawler = $testCrawler->selectButton('FooValue');
-        $crawler2 = $testCrawler->selectButton('FooBarValue');
-        $this->assertInstanceOf('Symfony\\Component\\DomCrawler\\Form', $crawler->form(), '->form() returns a Form instance');
-        $this->assertInstanceOf('Symfony\\Component\\DomCrawler\\Form', $crawler2->form(), '->form() returns a Form instance');
-
-        $this->assertEquals($crawler->form()->getFormNode()->getAttribute('id'), $crawler2->form()->getFormNode()->getAttribute('id'), '->form() works on elements with form attribute');
-
-        $this->assertEquals(array('FooName' => 'FooBar', 'TextName' => 'TextValue', 'FooTextName' => 'FooTextValue'), $crawler->form(array('FooName' => 'FooBar'))->getValues(), '->form() takes an array of values to submit as its first argument');
-        $this->assertEquals(array('FooName' => 'FooValue', 'TextName' => 'TextValue', 'FooTextName' => 'FooTextValue'), $crawler->form()->getValues(), '->getValues() returns correct form values');
-        $this->assertEquals(array('FooBarName' => 'FooBarValue', 'TextName' => 'TextValue', 'FooTextName' => 'FooTextValue'), $crawler2->form()->getValues(), '->getValues() returns correct form values');
-
-        try {
-            $this->createTestCrawler()->filterXPath('//ol')->form();
-            $this->fail('->form() throws an \InvalidArgumentException if the node list is empty');
-        } catch (\InvalidArgumentException $e) {
-            $this->assertTrue(true, '->form() throws an \InvalidArgumentException if the node list is empty');
-        }
-    }
-
-    public function testLast()
-    {
-        $crawler = $this->createTestCrawler()->filterXPath('//ul[1]/li');
-        $this->assertNotSame($crawler, $crawler->last(), '->last() returns a new instance of a crawler');
-        $this->assertInstanceOf('Symfony\\Component\\DomCrawler\\Crawler', $crawler, '->last() returns a new instance of a crawler');
-
-        $this->assertEquals('Three', $crawler->last()->text());
-    }
-
-    public function testFirst()
-    {
-        $crawler = $this->createTestCrawler()->filterXPath('//li');
-        $this->assertNotSame($crawler, $crawler->first(), '->first() returns a new instance of a crawler');
-        $this->assertInstanceOf('Symfony\\Component\\DomCrawler\\Crawler', $crawler, '->first() returns a new instance of a crawler');
-
-        $this->assertEquals('One', $crawler->first()->text());
-    }
-
-    public function testSiblings()
-    {
-        $crawler = $this->createTestCrawler()->filterXPath('//li')->eq(1);
-        $this->assertNotSame($crawler, $crawler->siblings(), '->siblings() returns a new instance of a crawler');
-        $this->assertInstanceOf('Symfony\\Component\\DomCrawler\\Crawler', $crawler, '->siblings() returns a new instance of a crawler');
-
-        $nodes = $crawler->siblings();
-        $this->assertEquals(2, $nodes->count());
-        $this->assertEquals('One', $nodes->eq(0)->text());
-        $this->assertEquals('Three', $nodes->eq(1)->text());
-
-        $nodes = $this->createTestCrawler()->filterXPath('//li')->eq(0)->siblings();
-        $this->assertEquals(2, $nodes->count());
-        $this->assertEquals('Two', $nodes->eq(0)->text());
-        $this->assertEquals('Three', $nodes->eq(1)->text());
-
-        try {
-            $this->createTestCrawler()->filterXPath('//ol')->siblings();
-            $this->fail('->siblings() throws an \InvalidArgumentException if the node list is empty');
-        } catch (\InvalidArgumentException $e) {
-            $this->assertTrue(true, '->siblings() throws an \InvalidArgumentException if the node list is empty');
-        }
-    }
-
-    public function testNextAll()
-    {
-        $crawler = $this->createTestCrawler()->filterXPath('//li')->eq(1);
-        $this->assertNotSame($crawler, $crawler->nextAll(), '->nextAll() returns a new instance of a crawler');
-        $this->assertInstanceOf('Symfony\\Component\\DomCrawler\\Crawler', $crawler, '->nextAll() returns a new instance of a crawler');
-
-        $nodes = $crawler->nextAll();
-        $this->assertEquals(1, $nodes->count());
-        $this->assertEquals('Three', $nodes->eq(0)->text());
-
-        try {
-            $this->createTestCrawler()->filterXPath('//ol')->nextAll();
-            $this->fail('->nextAll() throws an \InvalidArgumentException if the node list is empty');
-        } catch (\InvalidArgumentException $e) {
-            $this->assertTrue(true, '->nextAll() throws an \InvalidArgumentException if the node list is empty');
-        }
-    }
-
-    public function testPreviousAll()
-    {
-        $crawler = $this->createTestCrawler()->filterXPath('//li')->eq(2);
-        $this->assertNotSame($crawler, $crawler->previousAll(), '->previousAll() returns a new instance of a crawler');
-        $this->assertInstanceOf('Symfony\\Component\\DomCrawler\\Crawler', $crawler, '->previousAll() returns a new instance of a crawler');
-
-        $nodes = $crawler->previousAll();
-        $this->assertEquals(2, $nodes->count());
-        $this->assertEquals('Two', $nodes->eq(0)->text());
-
-        try {
-            $this->createTestCrawler()->filterXPath('//ol')->previousAll();
-            $this->fail('->previousAll() throws an \InvalidArgumentException if the node list is empty');
-        } catch (\InvalidArgumentException $e) {
-            $this->assertTrue(true, '->previousAll() throws an \InvalidArgumentException if the node list is empty');
-        }
-    }
-
-    public function testChildren()
-    {
-        $crawler = $this->createTestCrawler()->filterXPath('//ul');
-        $this->assertNotSame($crawler, $crawler->children(), '->children() returns a new instance of a crawler');
-        $this->assertInstanceOf('Symfony\\Component\\DomCrawler\\Crawler', $crawler, '->children() returns a new instance of a crawler');
-
-        $nodes = $crawler->children();
-        $this->assertEquals(3, $nodes->count());
-        $this->assertEquals('One', $nodes->eq(0)->text());
-        $this->assertEquals('Two', $nodes->eq(1)->text());
-        $this->assertEquals('Three', $nodes->eq(2)->text());
-
-        try {
-            $this->createTestCrawler()->filterXPath('//ol')->children();
-            $this->fail('->children() throws an \InvalidArgumentException if the node list is empty');
-        } catch (\InvalidArgumentException $e) {
-            $this->assertTrue(true, '->children() throws an \InvalidArgumentException if the node list is empty');
-        }
-
-        try {
-            $crawler = new Crawler('<p></p>');
-            $crawler->filter('p')->children();
-            $this->assertTrue(true, '->children() does not trigger a notice if the node has no children');
-        } catch (\PHPUnit_Framework_Error_Notice $e) {
-            $this->fail('->children() does not trigger a notice if the node has no children');
-        }
-    }
-
-    public function testParents()
-    {
-        $crawler = $this->createTestCrawler()->filterXPath('//li[1]');
-        $this->assertNotSame($crawler, $crawler->parents(), '->parents() returns a new instance of a crawler');
-        $this->assertInstanceOf('Symfony\\Component\\DomCrawler\\Crawler', $crawler, '->parents() returns a new instance of a crawler');
-
-        $nodes = $crawler->parents();
-        $this->assertEquals(3, $nodes->count());
-
-        $nodes = $this->createTestCrawler()->filterXPath('//html')->parents();
-        $this->assertEquals(0, $nodes->count());
-
-        try {
-            $this->createTestCrawler()->filterXPath('//ol')->parents();
-            $this->fail('->parents() throws an \InvalidArgumentException if the node list is empty');
-        } catch (\InvalidArgumentException $e) {
-            $this->assertTrue(true, '->parents() throws an \InvalidArgumentException if the node list is empty');
-        }
-    }
-
-    /**
-     * @dataProvider getBaseTagData
-     */
-    public function testBaseTag($baseValue, $linkValue, $expectedUri, $currentUri = null, $description = null)
-    {
-        $crawler = new Crawler('<html><base href="'.$baseValue.'"><a href="'.$linkValue.'"></a></html>', $currentUri);
-        $this->assertEquals($expectedUri, $crawler->filterXPath('//a')->link()->getUri(), $description);
-    }
-
-    public function getBaseTagData()
-    {
-        return array(
-            array('http://base.com', 'link', 'http://base.com/link'),
-            array('//base.com', 'link', 'https://base.com/link', 'https://domain.com', '<base> tag can use a schema-less URL'),
-            array('path/', 'link', 'https://domain.com/path/link', 'https://domain.com', '<base> tag can set a path'),
-            array('http://base.com', '#', 'http://base.com#', 'http://domain.com/path/link', '<base> tag does work with links to an anchor'),
-            array('http://base.com', '', 'http://base.com', 'http://domain.com/path/link', '<base> tag does work with empty links'),
-        );
-    }
-
-    /**
-     * @dataProvider getBaseTagWithFormData
-     */
-    public function testBaseTagWithForm($baseValue, $actionValue, $expectedUri, $currentUri = null, $description = null)
-    {
-        $crawler = new Crawler('<html><base href="'.$baseValue.'"><form method="post" action="'.$actionValue.'"><button type="submit" name="submit"/></form></html>', $currentUri);
-        $this->assertEquals($expectedUri, $crawler->filterXPath('//button')->form()->getUri(), $description);
-    }
-
-    public function getBaseTagWithFormData()
-    {
-        return array(
-            array('https://base.com/', 'link/', 'https://base.com/link/', 'https://base.com/link/', '<base> tag does work with a path and relative form action'),
-            array('/basepath', '/registration', 'http://domain.com/registration', 'http://domain.com/registration', '<base> tag does work with a path and form action'),
-            array('/basepath', '', 'http://domain.com/registration', 'http://domain.com/registration', '<base> tag does work with a path and empty form action'),
-            array('http://base.com/', '/registration', 'http://base.com/registration', 'http://domain.com/registration', '<base> tag does work with a URL and form action'),
-            array('http://base.com', '', 'http://domain.com/path/form', 'http://domain.com/path/form', '<base> tag does work with a URL and an empty form action'),
-            array('http://base.com/path', '/registration', 'http://base.com/registration', 'http://domain.com/path/form', '<base> tag does work with a URL and form action'),
-        );
-    }
-
-    public function testCountOfNestedElements()
-    {
-        $crawler = new Crawler('<html><body><ul><li>List item 1<ul><li>Sublist item 1</li><li>Sublist item 2</ul></li></ul></body></html>');
-
-        $this->assertCount(1, $crawler->filter('li:contains("List item 1")'));
-    }
-
-    public function createTestCrawler($uri = null)
-    {
-        $dom = new \DOMDocument();
-        $dom->loadHTML('
-            <html>
-                <body>
-                    <a href="foo">Foo</a>
-                    <a href="/foo">   Fabien\'s Foo   </a>
-                    <a href="/foo">Fabien"s Foo</a>
-                    <a href="/foo">\' Fabien"s Foo</a>
-
-                    <a href="/bar"><img alt="Bar"/></a>
-                    <a href="/bar"><img alt="   Fabien\'s Bar   "/></a>
-                    <a href="/bar"><img alt="Fabien&quot;s Bar"/></a>
-                    <a href="/bar"><img alt="\' Fabien&quot;s Bar"/></a>
-
-                    <a href="?get=param">GetLink</a>
-
-                    <form action="foo" id="FooFormId">
-                        <input type="text" value="TextValue" name="TextName" />
-                        <input type="submit" value="FooValue" name="FooName" id="FooId" />
-                        <input type="button" value="BarValue" name="BarName" id="BarId" />
-                        <button value="ButtonValue" name="ButtonName" id="ButtonId" />
-                    </form>
-
-                    <input type="submit" value="FooBarValue" name="FooBarName" form="FooFormId" />
-                    <input type="text" value="FooTextValue" name="FooTextName" form="FooFormId" />
-
-                    <ul class="first">
-                        <li class="first">One</li>
-                        <li>Two</li>
-                        <li>Three</li>
-                    </ul>
-                    <ul>
-                        <li>One Bis</li>
-                        <li>Two Bis</li>
-                        <li>Three Bis</li>
-                    </ul>
-                    <div id="parent">
-                        <div id="child"></div>
-                        <div id="child2" xmlns:foo="http://example.com"></div>
-                    </div>
-                    <div id="sibling"><img /></div>
-                </body>
-            </html>
-        ');
-
-        return new Crawler($dom, $uri);
-    }
-
-    protected function createTestXmlCrawler($uri = null)
-    {
-        $xml = '<?xml version="1.0" encoding="UTF-8"?>
-            <entry xmlns="http://www.w3.org/2005/Atom" xmlns:media="http://search.yahoo.com/mrss/" xmlns:yt="http://gdata.youtube.com/schemas/2007">
-                <id>tag:youtube.com,2008:video:kgZRZmEc9j4</id>
-                <yt:accessControl action="comment" permission="allowed"/>
-                <yt:accessControl action="videoRespond" permission="moderated"/>
-                <media:group>
-                    <media:title type="plain">Chordates - CrashCourse Biology #24</media:title>
-                    <yt:aspectRatio>widescreen</yt:aspectRatio>
-                </media:group>
-                <media:category label="Music" scheme="http://gdata.youtube.com/schemas/2007/categories.cat">Music</media:category>
-            </entry>';
-
-        return new Crawler($xml, $uri);
-    }
-
-    protected function createDomDocument()
-    {
-        $dom = new \DOMDocument();
-        $dom->loadXML('<html><div class="foo"></div></html>');
-
-        return $dom;
-    }
-
-    protected function createNodeList()
-    {
-        $dom = new \DOMDocument();
-        $dom->loadXML('<html><div class="foo"></div></html>');
-        $domxpath = new \DOMXPath($dom);
-
-        return $domxpath->query('//div');
-    }
-}
diff --git a/vendor/symfony/dom-crawler/Tests/Field/ChoiceFormFieldTest.php b/vendor/symfony/dom-crawler/Tests/Field/ChoiceFormFieldTest.php
deleted file mode 100644
index 9b31945..0000000
--- a/vendor/symfony/dom-crawler/Tests/Field/ChoiceFormFieldTest.php
+++ /dev/null
@@ -1,388 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\DomCrawler\Tests\Field;
-
-use Symfony\Component\DomCrawler\Field\ChoiceFormField;
-
-class ChoiceFormFieldTest extends FormFieldTestCase
-{
-    public function testInitialize()
-    {
-        $node = $this->createNode('textarea', '');
-        try {
-            $field = new ChoiceFormField($node);
-            $this->fail('->initialize() throws a \LogicException if the node is not an input or a select');
-        } catch (\LogicException $e) {
-            $this->assertTrue(true, '->initialize() throws a \LogicException if the node is not an input or a select');
-        }
-
-        $node = $this->createNode('input', '', array('type' => 'text'));
-        try {
-            $field = new ChoiceFormField($node);
-            $this->fail('->initialize() throws a \LogicException if the node is an input with a type different from checkbox or radio');
-        } catch (\LogicException $e) {
-            $this->assertTrue(true, '->initialize() throws a \LogicException if the node is an input with a type different from checkbox or radio');
-        }
-    }
-
-    public function testGetType()
-    {
-        $node = $this->createNode('input', '', array('type' => 'radio', 'name' => 'name', 'value' => 'foo'));
-        $field = new ChoiceFormField($node);
-
-        $this->assertEquals('radio', $field->getType(), '->getType() returns radio for radio buttons');
-
-        $node = $this->createNode('input', '', array('type' => 'checkbox', 'name' => 'name', 'value' => 'foo'));
-        $field = new ChoiceFormField($node);
-
-        $this->assertEquals('checkbox', $field->getType(), '->getType() returns radio for a checkbox');
-
-        $node = $this->createNode('select', '');
-        $field = new ChoiceFormField($node);
-
-        $this->assertEquals('select', $field->getType(), '->getType() returns radio for a select');
-    }
-
-    public function testIsMultiple()
-    {
-        $node = $this->createNode('input', '', array('type' => 'radio', 'name' => 'name', 'value' => 'foo'));
-        $field = new ChoiceFormField($node);
-
-        $this->assertFalse($field->isMultiple(), '->isMultiple() returns false for radio buttons');
-
-        $node = $this->createNode('input', '', array('type' => 'checkbox', 'name' => 'name', 'value' => 'foo'));
-        $field = new ChoiceFormField($node);
-
-        $this->assertFalse($field->isMultiple(), '->isMultiple() returns false for checkboxes');
-
-        $node = $this->createNode('select', '');
-        $field = new ChoiceFormField($node);
-
-        $this->assertFalse($field->isMultiple(), '->isMultiple() returns false for selects without the multiple attribute');
-
-        $node = $this->createNode('select', '', array('multiple' => 'multiple'));
-        $field = new ChoiceFormField($node);
-
-        $this->assertTrue($field->isMultiple(), '->isMultiple() returns true for selects with the multiple attribute');
-
-        $node = $this->createNode('select', '', array('multiple' => ''));
-        $field = new ChoiceFormField($node);
-
-        $this->assertTrue($field->isMultiple(), '->isMultiple() returns true for selects with an empty multiple attribute');
-    }
-
-    public function testSelects()
-    {
-        $node = $this->createSelectNode(array('foo' => false, 'bar' => false));
-        $field = new ChoiceFormField($node);
-
-        $this->assertTrue($field->hasValue(), '->hasValue() returns true for selects');
-        $this->assertEquals('foo', $field->getValue(), '->getValue() returns the first option if none are selected');
-        $this->assertFalse($field->isMultiple(), '->isMultiple() returns false when no multiple attribute is defined');
-
-        $node = $this->createSelectNode(array('foo' => false, 'bar' => true));
-        $field = new ChoiceFormField($node);
-
-        $this->assertEquals('bar', $field->getValue(), '->getValue() returns the selected option');
-
-        $field->setValue('foo');
-        $this->assertEquals('foo', $field->getValue(), '->setValue() changes the selected option');
-
-        try {
-            $field->setValue('foobar');
-            $this->fail('->setValue() throws an \InvalidArgumentException if the value is not one of the selected options');
-        } catch (\InvalidArgumentException $e) {
-            $this->assertTrue(true, '->setValue() throws an \InvalidArgumentException if the value is not one of the selected options');
-        }
-
-        try {
-            $field->setValue(array('foobar'));
-            $this->fail('->setValue() throws an \InvalidArgumentException if the value is an array');
-        } catch (\InvalidArgumentException $e) {
-            $this->assertTrue(true, '->setValue() throws an \InvalidArgumentException if the value is an array');
-        }
-    }
-
-    public function testSelectWithEmptyBooleanAttribute()
-    {
-        $node = $this->createSelectNode(array('foo' => false, 'bar' => true), array(), '');
-        $field = new ChoiceFormField($node);
-
-        $this->assertEquals('bar', $field->getValue());
-    }
-
-    public function testMultipleSelects()
-    {
-        $node = $this->createSelectNode(array('foo' => false, 'bar' => false), array('multiple' => 'multiple'));
-        $field = new ChoiceFormField($node);
-
-        $this->assertEquals(array(), $field->getValue(), '->setValue() returns an empty array if multiple is true and no option is selected');
-
-        $field->setValue('foo');
-        $this->assertEquals(array('foo'), $field->getValue(), '->setValue() returns an array of options if multiple is true');
-
-        $field->setValue('bar');
-        $this->assertEquals(array('bar'), $field->getValue(), '->setValue() returns an array of options if multiple is true');
-
-        $field->setValue(array('foo', 'bar'));
-        $this->assertEquals(array('foo', 'bar'), $field->getValue(), '->setValue() returns an array of options if multiple is true');
-
-        $node = $this->createSelectNode(array('foo' => true, 'bar' => true), array('multiple' => 'multiple'));
-        $field = new ChoiceFormField($node);
-
-        $this->assertEquals(array('foo', 'bar'), $field->getValue(), '->getValue() returns the selected options');
-
-        try {
-            $field->setValue(array('foobar'));
-            $this->fail('->setValue() throws an \InvalidArgumentException if the value is not one of the options');
-        } catch (\InvalidArgumentException $e) {
-            $this->assertTrue(true, '->setValue() throws an \InvalidArgumentException if the value is not one of the options');
-        }
-    }
-
-    public function testRadioButtons()
-    {
-        $node = $this->createNode('input', '', array('type' => 'radio', 'name' => 'name', 'value' => 'foo'));
-        $field = new ChoiceFormField($node);
-        $node = $this->createNode('input', '', array('type' => 'radio', 'name' => 'name', 'value' => 'bar'));
-        $field->addChoice($node);
-
-        $this->assertFalse($field->hasValue(), '->hasValue() returns false when no radio button is selected');
-        $this->assertNull($field->getValue(), '->getValue() returns null if no radio button is selected');
-        $this->assertFalse($field->isMultiple(), '->isMultiple() returns false for radio buttons');
-
-        $node = $this->createNode('input', '', array('type' => 'radio', 'name' => 'name', 'value' => 'foo'));
-        $field = new ChoiceFormField($node);
-        $node = $this->createNode('input', '', array('type' => 'radio', 'name' => 'name', 'value' => 'bar', 'checked' => 'checked'));
-        $field->addChoice($node);
-
-        $this->assertTrue($field->hasValue(), '->hasValue() returns true when a radio button is selected');
-        $this->assertEquals('bar', $field->getValue(), '->getValue() returns the value attribute of the selected radio button');
-
-        $field->setValue('foo');
-        $this->assertEquals('foo', $field->getValue(), '->setValue() changes the selected radio button');
-
-        try {
-            $field->setValue('foobar');
-            $this->fail('->setValue() throws an \InvalidArgumentException if the value is not one of the radio button values');
-        } catch (\InvalidArgumentException $e) {
-            $this->assertTrue(true, '->setValue() throws an \InvalidArgumentException if the value is not one of the radio button values');
-        }
-    }
-
-    public function testRadioButtonsWithEmptyBooleanAttribute()
-    {
-        $node = $this->createNode('input', '', array('type' => 'radio', 'name' => 'name', 'value' => 'foo'));
-        $field = new ChoiceFormField($node);
-        $node = $this->createNode('input', '', array('type' => 'radio', 'name' => 'name', 'value' => 'bar', 'checked' => ''));
-        $field->addChoice($node);
-
-        $this->assertTrue($field->hasValue(), '->hasValue() returns true when a radio button is selected');
-        $this->assertEquals('bar', $field->getValue(), '->getValue() returns the value attribute of the selected radio button');
-    }
-
-    public function testRadioButtonIsDisabled()
-    {
-        $node = $this->createNode('input', '', array('type' => 'radio', 'name' => 'name', 'value' => 'foo', 'disabled' => 'disabled'));
-        $field = new ChoiceFormField($node);
-        $node = $this->createNode('input', '', array('type' => 'radio', 'name' => 'name', 'value' => 'bar'));
-        $field->addChoice($node);
-        $node = $this->createNode('input', '', array('type' => 'radio', 'name' => 'name', 'value' => 'baz', 'disabled' => ''));
-        $field->addChoice($node);
-
-        $field->select('foo');
-        $this->assertEquals('foo', $field->getValue(), '->getValue() returns the value attribute of the selected radio button');
-        $this->assertTrue($field->isDisabled());
-
-        $field->select('bar');
-        $this->assertEquals('bar', $field->getValue(), '->getValue() returns the value attribute of the selected radio button');
-        $this->assertFalse($field->isDisabled());
-
-        $field->select('baz');
-        $this->assertEquals('baz', $field->getValue(), '->getValue() returns the value attribute of the selected radio button');
-        $this->assertTrue($field->isDisabled());
-    }
-
-    public function testCheckboxes()
-    {
-        $node = $this->createNode('input', '', array('type' => 'checkbox', 'name' => 'name'));
-        $field = new ChoiceFormField($node);
-
-        $this->assertFalse($field->hasValue(), '->hasValue() returns false when the checkbox is not checked');
-        $this->assertNull($field->getValue(), '->getValue() returns null if the checkbox is not checked');
-        $this->assertFalse($field->isMultiple(), '->hasValue() returns false for checkboxes');
-        try {
-            $field->addChoice(new \DOMElement('input'));
-            $this->fail('->addChoice() throws a \LogicException for checkboxes');
-        } catch (\LogicException $e) {
-            $this->assertTrue(true, '->initialize() throws a \LogicException for checkboxes');
-        }
-
-        $node = $this->createNode('input', '', array('type' => 'checkbox', 'name' => 'name', 'checked' => 'checked'));
-        $field = new ChoiceFormField($node);
-
-        $this->assertTrue($field->hasValue(), '->hasValue() returns true when the checkbox is checked');
-        $this->assertEquals('on', $field->getValue(), '->getValue() returns 1 if the checkbox is checked and has no value attribute');
-
-        $node = $this->createNode('input', '', array('type' => 'checkbox', 'name' => 'name', 'checked' => 'checked', 'value' => 'foo'));
-        $field = new ChoiceFormField($node);
-
-        $this->assertEquals('foo', $field->getValue(), '->getValue() returns the value attribute if the checkbox is checked');
-
-        $node = $this->createNode('input', '', array('type' => 'checkbox', 'name' => 'name', 'checked' => 'checked', 'value' => 'foo'));
-        $field = new ChoiceFormField($node);
-
-        $field->setValue(false);
-        $this->assertNull($field->getValue(), '->setValue() unchecks the checkbox is value is false');
-
-        $field->setValue(true);
-        $this->assertEquals('foo', $field->getValue(), '->setValue() checks the checkbox is value is true');
-
-        try {
-            $field->setValue('bar');
-            $this->fail('->setValue() throws an \InvalidArgumentException if the value is not one from the value attribute');
-        } catch (\InvalidArgumentException $e) {
-            $this->assertTrue(true, '->setValue() throws an \InvalidArgumentException if the value is not one from the value attribute');
-        }
-    }
-
-    public function testCheckboxWithEmptyBooleanAttribute()
-    {
-        $node = $this->createNode('input', '', array('type' => 'checkbox', 'name' => 'name', 'value' => 'foo', 'checked' => ''));
-        $field = new ChoiceFormField($node);
-
-        $this->assertTrue($field->hasValue(), '->hasValue() returns true when the checkbox is checked');
-        $this->assertEquals('foo', $field->getValue());
-    }
-
-    public function testTick()
-    {
-        $node = $this->createSelectNode(array('foo' => false, 'bar' => false));
-        $field = new ChoiceFormField($node);
-
-        try {
-            $field->tick();
-            $this->fail('->tick() throws a \LogicException for select boxes');
-        } catch (\LogicException $e) {
-            $this->assertTrue(true, '->tick() throws a \LogicException for select boxes');
-        }
-
-        $node = $this->createNode('input', '', array('type' => 'checkbox', 'name' => 'name'));
-        $field = new ChoiceFormField($node);
-        $field->tick();
-        $this->assertEquals('on', $field->getValue(), '->tick() ticks checkboxes');
-    }
-
-    public function testUntick()
-    {
-        $node = $this->createSelectNode(array('foo' => false, 'bar' => false));
-        $field = new ChoiceFormField($node);
-
-        try {
-            $field->untick();
-            $this->fail('->untick() throws a \LogicException for select boxes');
-        } catch (\LogicException $e) {
-            $this->assertTrue(true, '->untick() throws a \LogicException for select boxes');
-        }
-
-        $node = $this->createNode('input', '', array('type' => 'checkbox', 'name' => 'name', 'checked' => 'checked'));
-        $field = new ChoiceFormField($node);
-        $field->untick();
-        $this->assertNull($field->getValue(), '->untick() unticks checkboxes');
-    }
-
-    public function testSelect()
-    {
-        $node = $this->createNode('input', '', array('type' => 'checkbox', 'name' => 'name', 'checked' => 'checked'));
-        $field = new ChoiceFormField($node);
-        $field->select(true);
-        $this->assertEquals('on', $field->getValue(), '->select() changes the value of the field');
-        $field->select(false);
-        $this->assertNull($field->getValue(), '->select() changes the value of the field');
-
-        $node = $this->createSelectNode(array('foo' => false, 'bar' => false));
-        $field = new ChoiceFormField($node);
-        $field->select('foo');
-        $this->assertEquals('foo', $field->getValue(), '->select() changes the selected option');
-    }
-
-    public function testOptionWithNoValue()
-    {
-        $node = $this->createSelectNodeWithEmptyOption(array('foo' => false, 'bar' => false));
-        $field = new ChoiceFormField($node);
-        $this->assertEquals('foo', $field->getValue());
-
-        $node = $this->createSelectNodeWithEmptyOption(array('foo' => false, 'bar' => true));
-        $field = new ChoiceFormField($node);
-        $this->assertEquals('bar', $field->getValue());
-        $field->select('foo');
-        $this->assertEquals('foo', $field->getValue(), '->select() changes the selected option');
-    }
-
-    public function testDisableValidation()
-    {
-        $node = $this->createSelectNode(array('foo' => false, 'bar' => false));
-        $field = new ChoiceFormField($node);
-        $field->disableValidation();
-        $field->setValue('foobar');
-        $this->assertEquals('foobar', $field->getValue(), '->disableValidation() allows to set a value which is not in the selected options.');
-
-        $node = $this->createSelectNode(array('foo' => false, 'bar' => false), array('multiple' => 'multiple'));
-        $field = new ChoiceFormField($node);
-        $field->disableValidation();
-        $field->setValue(array('foobar'));
-        $this->assertEquals(array('foobar'), $field->getValue(), '->disableValidation() allows to set a value which is not in the selected options.');
-    }
-
-    protected function createSelectNode($options, $attributes = array(), $selectedAttrText = 'selected')
-    {
-        $document = new \DOMDocument();
-        $node = $document->createElement('select');
-
-        foreach ($attributes as $name => $value) {
-            $node->setAttribute($name, $value);
-        }
-        $node->setAttribute('name', 'name');
-
-        foreach ($options as $value => $selected) {
-            $option = $document->createElement('option', $value);
-            $option->setAttribute('value', $value);
-            if ($selected) {
-                $option->setAttribute('selected', $selectedAttrText);
-            }
-            $node->appendChild($option);
-        }
-
-        return $node;
-    }
-
-    protected function createSelectNodeWithEmptyOption($options, $attributes = array())
-    {
-        $document = new \DOMDocument();
-        $node = $document->createElement('select');
-
-        foreach ($attributes as $name => $value) {
-            $node->setAttribute($name, $value);
-        }
-        $node->setAttribute('name', 'name');
-
-        foreach ($options as $value => $selected) {
-            $option = $document->createElement('option', $value);
-            if ($selected) {
-                $option->setAttribute('selected', 'selected');
-            }
-            $node->appendChild($option);
-        }
-
-        return $node;
-    }
-}
diff --git a/vendor/symfony/dom-crawler/Tests/Field/FileFormFieldTest.php b/vendor/symfony/dom-crawler/Tests/Field/FileFormFieldTest.php
deleted file mode 100644
index 3ce49a4..0000000
--- a/vendor/symfony/dom-crawler/Tests/Field/FileFormFieldTest.php
+++ /dev/null
@@ -1,114 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\DomCrawler\Tests\Field;
-
-use Symfony\Component\DomCrawler\Field\FileFormField;
-
-class FileFormFieldTest extends FormFieldTestCase
-{
-    public function testInitialize()
-    {
-        $node = $this->createNode('input', '', array('type' => 'file'));
-        $field = new FileFormField($node);
-
-        $this->assertEquals(array('name' => '', 'type' => '', 'tmp_name' => '', 'error' => UPLOAD_ERR_NO_FILE, 'size' => 0), $field->getValue(), '->initialize() sets the value of the field to no file uploaded');
-
-        $node = $this->createNode('textarea', '');
-        try {
-            $field = new FileFormField($node);
-            $this->fail('->initialize() throws a \LogicException if the node is not an input field');
-        } catch (\LogicException $e) {
-            $this->assertTrue(true, '->initialize() throws a \LogicException if the node is not an input field');
-        }
-
-        $node = $this->createNode('input', '', array('type' => 'text'));
-        try {
-            $field = new FileFormField($node);
-            $this->fail('->initialize() throws a \LogicException if the node is not a file input field');
-        } catch (\LogicException $e) {
-            $this->assertTrue(true, '->initialize() throws a \LogicException if the node is not a file input field');
-        }
-    }
-
-    /**
-     * @dataProvider getSetValueMethods
-     */
-    public function testSetValue($method)
-    {
-        $node = $this->createNode('input', '', array('type' => 'file'));
-        $field = new FileFormField($node);
-
-        $field->$method(null);
-        $this->assertEquals(array('name' => '', 'type' => '', 'tmp_name' => '', 'error' => UPLOAD_ERR_NO_FILE, 'size' => 0), $field->getValue(), "->$method() clears the uploaded file if the value is null");
-
-        $field->$method(__FILE__);
-        $value = $field->getValue();
-
-        $this->assertEquals(basename(__FILE__), $value['name'], "->$method() sets the name of the file field");
-        $this->assertEquals('', $value['type'], "->$method() sets the type of the file field");
-        $this->assertInternalType('string', $value['tmp_name'], "->$method() sets the tmp_name of the file field");
-        $this->assertFileExists($value['tmp_name'], "->$method() creates a copy of the file at the tmp_name path");
-        $this->assertEquals(0, $value['error'], "->$method() sets the error of the file field");
-        $this->assertEquals(filesize(__FILE__), $value['size'], "->$method() sets the size of the file field");
-
-        $origInfo = pathinfo(__FILE__);
-        $tmpInfo = pathinfo($value['tmp_name']);
-        $this->assertEquals(
-            $origInfo['extension'],
-            $tmpInfo['extension'],
-            "->$method() keeps the same file extension in the tmp_name copy"
-        );
-
-        $field->$method(__DIR__.'/../Fixtures/no-extension');
-        $value = $field->getValue();
-
-        $this->assertArrayNotHasKey(
-            'extension',
-            pathinfo($value['tmp_name']),
-            "->$method() does not add a file extension in the tmp_name copy"
-        );
-    }
-
-    public function getSetValueMethods()
-    {
-        return array(
-            array('setValue'),
-            array('upload'),
-        );
-    }
-
-    public function testSetErrorCode()
-    {
-        $node = $this->createNode('input', '', array('type' => 'file'));
-        $field = new FileFormField($node);
-
-        $field->setErrorCode(UPLOAD_ERR_FORM_SIZE);
-        $value = $field->getValue();
-        $this->assertEquals(UPLOAD_ERR_FORM_SIZE, $value['error'], '->setErrorCode() sets the file input field error code');
-
-        try {
-            $field->setErrorCode('foobar');
-            $this->fail('->setErrorCode() throws a \InvalidArgumentException if the error code is not valid');
-        } catch (\InvalidArgumentException $e) {
-            $this->assertTrue(true, '->setErrorCode() throws a \InvalidArgumentException if the error code is not valid');
-        }
-    }
-
-    public function testSetRawFilePath()
-    {
-        $node = $this->createNode('input', '', array('type' => 'file'));
-        $field = new FileFormField($node);
-        $field->setFilePath(__FILE__);
-
-        $this->assertEquals(__FILE__, $field->getValue());
-    }
-}
diff --git a/vendor/symfony/dom-crawler/Tests/Field/FormFieldTest.php b/vendor/symfony/dom-crawler/Tests/Field/FormFieldTest.php
deleted file mode 100644
index 510f762..0000000
--- a/vendor/symfony/dom-crawler/Tests/Field/FormFieldTest.php
+++ /dev/null
@@ -1,38 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\DomCrawler\Tests\Field;
-
-use Symfony\Component\DomCrawler\Field\InputFormField;
-
-class FormFieldTest extends FormFieldTestCase
-{
-    public function testGetName()
-    {
-        $node = $this->createNode('input', '', array('type' => 'text', 'name' => 'name', 'value' => 'value'));
-        $field = new InputFormField($node);
-
-        $this->assertEquals('name', $field->getName(), '->getName() returns the name of the field');
-    }
-
-    public function testGetSetHasValue()
-    {
-        $node = $this->createNode('input', '', array('type' => 'text', 'name' => 'name', 'value' => 'value'));
-        $field = new InputFormField($node);
-
-        $this->assertEquals('value', $field->getValue(), '->getValue() returns the value of the field');
-
-        $field->setValue('foo');
-        $this->assertEquals('foo', $field->getValue(), '->setValue() sets the value of the field');
-
-        $this->assertTrue($field->hasValue(), '->hasValue() always returns true');
-    }
-}
diff --git a/vendor/symfony/dom-crawler/Tests/Field/FormFieldTestCase.php b/vendor/symfony/dom-crawler/Tests/Field/FormFieldTestCase.php
deleted file mode 100644
index 26b1b0e..0000000
--- a/vendor/symfony/dom-crawler/Tests/Field/FormFieldTestCase.php
+++ /dev/null
@@ -1,27 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\DomCrawler\Tests\Field;
-
-class FormFieldTestCase extends \PHPUnit_Framework_TestCase
-{
-    protected function createNode($tag, $value, $attributes = array())
-    {
-        $document = new \DOMDocument();
-        $node = $document->createElement($tag, $value);
-
-        foreach ($attributes as $name => $value) {
-            $node->setAttribute($name, $value);
-        }
-
-        return $node;
-    }
-}
diff --git a/vendor/symfony/dom-crawler/Tests/Field/InputFormFieldTest.php b/vendor/symfony/dom-crawler/Tests/Field/InputFormFieldTest.php
deleted file mode 100644
index 193d301..0000000
--- a/vendor/symfony/dom-crawler/Tests/Field/InputFormFieldTest.php
+++ /dev/null
@@ -1,49 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\DomCrawler\Tests\Field;
-
-use Symfony\Component\DomCrawler\Field\InputFormField;
-
-class InputFormFieldTest extends FormFieldTestCase
-{
-    public function testInitialize()
-    {
-        $node = $this->createNode('input', '', array('type' => 'text', 'name' => 'name', 'value' => 'value'));
-        $field = new InputFormField($node);
-
-        $this->assertEquals('value', $field->getValue(), '->initialize() sets the value of the field to the value attribute value');
-
-        $node = $this->createNode('textarea', '');
-        try {
-            $field = new InputFormField($node);
-            $this->fail('->initialize() throws a \LogicException if the node is not an input');
-        } catch (\LogicException $e) {
-            $this->assertTrue(true, '->initialize() throws a \LogicException if the node is not an input');
-        }
-
-        $node = $this->createNode('input', '', array('type' => 'checkbox'));
-        try {
-            $field = new InputFormField($node);
-            $this->fail('->initialize() throws a \LogicException if the node is a checkbox');
-        } catch (\LogicException $e) {
-            $this->assertTrue(true, '->initialize() throws a \LogicException if the node is a checkbox');
-        }
-
-        $node = $this->createNode('input', '', array('type' => 'file'));
-        try {
-            $field = new InputFormField($node);
-            $this->fail('->initialize() throws a \LogicException if the node is a file');
-        } catch (\LogicException $e) {
-            $this->assertTrue(true, '->initialize() throws a \LogicException if the node is a file');
-        }
-    }
-}
diff --git a/vendor/symfony/dom-crawler/Tests/Field/TextareaFormFieldTest.php b/vendor/symfony/dom-crawler/Tests/Field/TextareaFormFieldTest.php
deleted file mode 100644
index 5d4d003..0000000
--- a/vendor/symfony/dom-crawler/Tests/Field/TextareaFormFieldTest.php
+++ /dev/null
@@ -1,46 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\DomCrawler\Tests\Field;
-
-use Symfony\Component\DomCrawler\Field\TextareaFormField;
-
-class TextareaFormFieldTest extends FormFieldTestCase
-{
-    public function testInitialize()
-    {
-        $node = $this->createNode('textarea', 'foo bar');
-        $field = new TextareaFormField($node);
-
-        $this->assertEquals('foo bar', $field->getValue(), '->initialize() sets the value of the field to the textarea node value');
-
-        $node = $this->createNode('input', '');
-        try {
-            $field = new TextareaFormField($node);
-            $this->fail('->initialize() throws a \LogicException if the node is not a textarea');
-        } catch (\LogicException $e) {
-            $this->assertTrue(true, '->initialize() throws a \LogicException if the node is not a textarea');
-        }
-
-        // Ensure that valid HTML can be used on a textarea.
-        $node = $this->createNode('textarea', 'foo bar <h1>Baz</h1>');
-        $field = new TextareaFormField($node);
-
-        $this->assertEquals('foo bar <h1>Baz</h1>', $field->getValue(), '->initialize() sets the value of the field to the textarea node value');
-
-        // Ensure that we don't do any DOM manipulation/validation by passing in
-        // "invalid" HTML.
-        $node = $this->createNode('textarea', 'foo bar <h1>Baz</h2>');
-        $field = new TextareaFormField($node);
-
-        $this->assertEquals('foo bar <h1>Baz</h2>', $field->getValue(), '->initialize() sets the value of the field to the textarea node value');
-    }
-}
diff --git a/vendor/symfony/dom-crawler/Tests/Fixtures/no-extension b/vendor/symfony/dom-crawler/Tests/Fixtures/no-extension
deleted file mode 100644
index 345e6ae..0000000
--- a/vendor/symfony/dom-crawler/Tests/Fixtures/no-extension
+++ /dev/null
@@ -1 +0,0 @@
-Test
diff --git a/vendor/symfony/dom-crawler/Tests/Fixtures/windows-1250.html b/vendor/symfony/dom-crawler/Tests/Fixtures/windows-1250.html
deleted file mode 100644
index c26dc77..0000000
--- a/vendor/symfony/dom-crawler/Tests/Fixtures/windows-1250.html
+++ /dev/null
@@ -1,8 +0,0 @@
-<html>
-    <head>
-        <meta http-equiv="content-type" content="text/html;charset=windows-1250">
-    </head>
-    <body>
-        <p></p>
-    </body>
-</html>
diff --git a/vendor/symfony/dom-crawler/Tests/FormTest.php b/vendor/symfony/dom-crawler/Tests/FormTest.php
deleted file mode 100644
index 5bfbfb9..0000000
--- a/vendor/symfony/dom-crawler/Tests/FormTest.php
+++ /dev/null
@@ -1,973 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\DomCrawler\Tests;
-
-use Symfony\Component\DomCrawler\Form;
-use Symfony\Component\DomCrawler\FormFieldRegistry;
-use Symfony\Component\DomCrawler\Field;
-
-class FormTest extends \PHPUnit_Framework_TestCase
-{
-    public static function setUpBeforeClass()
-    {
-        // Ensure that the private helper class FormFieldRegistry is loaded
-        class_exists('Symfony\\Component\\DomCrawler\\Form');
-    }
-
-    public function testConstructorThrowsExceptionIfTheNodeHasNoFormAncestor()
-    {
-        $dom = new \DOMDocument();
-        $dom->loadHTML('
-            <html>
-                <input type="submit" />
-                <form>
-                    <input type="foo" />
-                </form>
-                <button />
-            </html>
-        ');
-
-        $nodes = $dom->getElementsByTagName('input');
-
-        try {
-            $form = new Form($nodes->item(0), 'http://example.com');
-            $this->fail('__construct() throws a \\LogicException if the node has no form ancestor');
-        } catch (\LogicException $e) {
-            $this->assertTrue(true, '__construct() throws a \\LogicException if the node has no form ancestor');
-        }
-
-        try {
-            $form = new Form($nodes->item(1), 'http://example.com');
-            $this->fail('__construct() throws a \\LogicException if the input type is not submit, button, or image');
-        } catch (\LogicException $e) {
-            $this->assertTrue(true, '__construct() throws a \\LogicException if the input type is not submit, button, or image');
-        }
-
-        $nodes = $dom->getElementsByTagName('button');
-
-        try {
-            $form = new Form($nodes->item(0), 'http://example.com');
-            $this->fail('__construct() throws a \\LogicException if the node has no form ancestor');
-        } catch (\LogicException $e) {
-            $this->assertTrue(true, '__construct() throws a \\LogicException if the node has no form ancestor');
-        }
-    }
-
-    /**
-     * __construct() should throw \\LogicException if the form attribute is invalid.
-     *
-     * @expectedException \LogicException
-     */
-    public function testConstructorThrowsExceptionIfNoRelatedForm()
-    {
-        $dom = new \DOMDocument();
-        $dom->loadHTML('
-            <html>
-                <form id="bar">
-                    <input type="submit" form="nonexistent" />
-                </form>
-                <input type="text" form="nonexistent" />
-                <button />
-            </html>
-        ');
-
-        $nodes = $dom->getElementsByTagName('input');
-
-        $form = new Form($nodes->item(0), 'http://example.com');
-        $form = new Form($nodes->item(1), 'http://example.com');
-    }
-
-    public function testConstructorLoadsOnlyFieldsOfTheRightForm()
-    {
-        $dom = $this->createTestMultipleForm();
-
-        $nodes = $dom->getElementsByTagName('form');
-        $buttonElements = $dom->getElementsByTagName('button');
-
-        $form = new Form($nodes->item(0), 'http://example.com');
-        $this->assertCount(3, $form->all());
-
-        $form = new Form($buttonElements->item(1), 'http://example.com');
-        $this->assertCount(5, $form->all());
-    }
-
-    public function testConstructorHandlesFormAttribute()
-    {
-        $dom = $this->createTestHtml5Form();
-
-        $inputElements = $dom->getElementsByTagName('input');
-        $buttonElements = $dom->getElementsByTagName('button');
-
-        // Tests if submit buttons are correctly assigned to forms
-        $form1 = new Form($buttonElements->item(1), 'http://example.com');
-        $this->assertSame($dom->getElementsByTagName('form')->item(0), $form1->getFormNode(), 'HTML5-compliant form attribute handled incorrectly');
-
-        $form1 = new Form($inputElements->item(3), 'http://example.com');
-        $this->assertSame($dom->getElementsByTagName('form')->item(0), $form1->getFormNode(), 'HTML5-compliant form attribute handled incorrectly');
-
-        $form2 = new Form($buttonElements->item(0), 'http://example.com');
-        $this->assertSame($dom->getElementsByTagName('form')->item(1), $form2->getFormNode(), 'HTML5-compliant form attribute handled incorrectly');
-    }
-
-    public function testConstructorHandlesFormValues()
-    {
-        $dom = $this->createTestHtml5Form();
-
-        $inputElements = $dom->getElementsByTagName('input');
-        $buttonElements = $dom->getElementsByTagName('button');
-
-        $form1 = new Form($inputElements->item(3), 'http://example.com');
-        $form2 = new Form($buttonElements->item(0), 'http://example.com');
-
-        // Tests if form values are correctly assigned to forms
-        $values1 = array(
-            'apples' => array('1', '2'),
-            'form_name' => 'form-1',
-            'button_1' => 'Capture fields',
-            'outer_field' => 'success',
-        );
-        $values2 = array(
-            'oranges' => array('1', '2', '3'),
-            'form_name' => 'form_2',
-            'button_2' => '',
-            'app_frontend_form_type_contact_form_type' => array('contactType' => '', 'firstName' => 'John'),
-        );
-
-        $this->assertEquals($values1, $form1->getPhpValues(), 'HTML5-compliant form attribute handled incorrectly');
-        $this->assertEquals($values2, $form2->getPhpValues(), 'HTML5-compliant form attribute handled incorrectly');
-    }
-
-    public function testMultiValuedFields()
-    {
-        $form = $this->createForm('<form>
-            <input type="text" name="foo[4]" value="foo" disabled="disabled" />
-            <input type="text" name="foo" value="foo" disabled="disabled" />
-            <input type="text" name="foo[2]" value="foo" disabled="disabled" />
-            <input type="text" name="foo[]" value="foo" disabled="disabled" />
-            <input type="text" name="bar[foo][]" value="foo" disabled="disabled" />
-            <input type="text" name="bar[foo][foobar]" value="foo" disabled="disabled" />
-            <input type="submit" />
-        </form>
-        ');
-
-        $this->assertEquals(
-            array_keys($form->all()),
-            array('foo[2]', 'foo[3]', 'bar[foo][0]', 'bar[foo][foobar]')
-        );
-
-        $this->assertEquals($form->get('foo[2]')->getValue(), 'foo');
-        $this->assertEquals($form->get('foo[3]')->getValue(), 'foo');
-        $this->assertEquals($form->get('bar[foo][0]')->getValue(), 'foo');
-        $this->assertEquals($form->get('bar[foo][foobar]')->getValue(), 'foo');
-
-        $form['foo[2]'] = 'bar';
-        $form['foo[3]'] = 'bar';
-
-        $this->assertEquals($form->get('foo[2]')->getValue(), 'bar');
-        $this->assertEquals($form->get('foo[3]')->getValue(), 'bar');
-
-        $form['bar'] = array('foo' => array('0' => 'bar', 'foobar' => 'foobar'));
-
-        $this->assertEquals($form->get('bar[foo][0]')->getValue(), 'bar');
-        $this->assertEquals($form->get('bar[foo][foobar]')->getValue(), 'foobar');
-    }
-
-    /**
-     * @dataProvider provideInitializeValues
-     */
-    public function testConstructor($message, $form, $values)
-    {
-        $form = $this->createForm('<form>'.$form.'</form>');
-        $this->assertEquals(
-            $values,
-            array_map(function ($field) {
-                    $class = get_class($field);
-
-                    return array(substr($class, strrpos($class, '\\') + 1), $field->getValue());
-                },
-                $form->all()
-            ),
-            '->getDefaultValues() '.$message
-        );
-    }
-
-    public function provideInitializeValues()
-    {
-        return array(
-            array(
-                'does not take into account input fields without a name attribute',
-                '<input type="text" value="foo" />
-                 <input type="submit" />',
-                array(),
-            ),
-            array(
-                'does not take into account input fields with an empty name attribute value',
-                '<input type="text" name="" value="foo" />
-                 <input type="submit" />',
-                array(),
-            ),
-            array(
-                'takes into account disabled input fields',
-                '<input type="text" name="foo" value="foo" disabled="disabled" />
-                 <input type="submit" />',
-                array('foo' => array('InputFormField', 'foo')),
-            ),
-            array(
-                'appends the submitted button value',
-                '<input type="submit" name="bar" value="bar" />',
-                array('bar' => array('InputFormField', 'bar')),
-            ),
-            array(
-                'appends the submitted button value for Button element',
-                '<button type="submit" name="bar" value="bar">Bar</button>',
-                array('bar' => array('InputFormField', 'bar')),
-            ),
-            array(
-                'appends the submitted button value but not other submit buttons',
-                '<input type="submit" name="bar" value="bar" />
-                 <input type="submit" name="foobar" value="foobar" />',
-                 array('foobar' => array('InputFormField', 'foobar')),
-            ),
-            array(
-                'turns an image input into x and y fields',
-                '<input type="image" name="bar" />',
-                array('bar.x' => array('InputFormField', '0'), 'bar.y' => array('InputFormField', '0')),
-            ),
-            array(
-                'returns textareas',
-                '<textarea name="foo">foo</textarea>
-                 <input type="submit" />',
-                 array('foo' => array('TextareaFormField', 'foo')),
-            ),
-            array(
-                'returns inputs',
-                '<input type="text" name="foo" value="foo" />
-                 <input type="submit" />',
-                 array('foo' => array('InputFormField', 'foo')),
-            ),
-            array(
-                'returns checkboxes',
-                '<input type="checkbox" name="foo" value="foo" checked="checked" />
-                 <input type="submit" />',
-                 array('foo' => array('ChoiceFormField', 'foo')),
-            ),
-            array(
-                'returns not-checked checkboxes',
-                '<input type="checkbox" name="foo" value="foo" />
-                 <input type="submit" />',
-                 array('foo' => array('ChoiceFormField', false)),
-            ),
-            array(
-                'returns radio buttons',
-                '<input type="radio" name="foo" value="foo" />
-                 <input type="radio" name="foo" value="bar" checked="bar" />
-                 <input type="submit" />',
-                 array('foo' => array('ChoiceFormField', 'bar')),
-            ),
-            array(
-                'returns file inputs',
-                '<input type="file" name="foo" />
-                 <input type="submit" />',
-                 array('foo' => array('FileFormField', array('name' => '', 'type' => '', 'tmp_name' => '', 'error' => 4, 'size' => 0))),
-            ),
-        );
-    }
-
-    public function testGetFormNode()
-    {
-        $dom = new \DOMDocument();
-        $dom->loadHTML('<html><form><input type="submit" /></form></html>');
-
-        $form = new Form($dom->getElementsByTagName('input')->item(0), 'http://example.com');
-
-        $this->assertSame($dom->getElementsByTagName('form')->item(0), $form->getFormNode(), '->getFormNode() returns the form node associated with this form');
-    }
-
-    public function testGetFormNodeFromNamedForm()
-    {
-        $dom = new \DOMDocument();
-        $dom->loadHTML('<html><form name="my_form"><input type="submit" /></form></html>');
-
-        $form = new Form($dom->getElementsByTagName('form')->item(0), 'http://example.com');
-
-        $this->assertSame($dom->getElementsByTagName('form')->item(0), $form->getFormNode(), '->getFormNode() returns the form node associated with this form');
-    }
-
-    public function testGetMethod()
-    {
-        $form = $this->createForm('<form><input type="submit" /></form>');
-        $this->assertEquals('GET', $form->getMethod(), '->getMethod() returns get if no method is defined');
-
-        $form = $this->createForm('<form method="post"><input type="submit" /></form>');
-        $this->assertEquals('POST', $form->getMethod(), '->getMethod() returns the method attribute value of the form');
-
-        $form = $this->createForm('<form method="post"><input type="submit" /></form>', 'put');
-        $this->assertEquals('PUT', $form->getMethod(), '->getMethod() returns the method defined in the constructor if provided');
-
-        $form = $this->createForm('<form method="post"><input type="submit" /></form>', 'delete');
-        $this->assertEquals('DELETE', $form->getMethod(), '->getMethod() returns the method defined in the constructor if provided');
-
-        $form = $this->createForm('<form method="post"><input type="submit" /></form>', 'patch');
-        $this->assertEquals('PATCH', $form->getMethod(), '->getMethod() returns the method defined in the constructor if provided');
-    }
-
-    public function testGetSetValue()
-    {
-        $form = $this->createForm('<form><input type="text" name="foo" value="foo" /><input type="submit" /></form>');
-
-        $this->assertEquals('foo', $form['foo']->getValue(), '->offsetGet() returns the value of a form field');
-
-        $form['foo'] = 'bar';
-
-        $this->assertEquals('bar', $form['foo']->getValue(), '->offsetSet() changes the value of a form field');
-
-        try {
-            $form['foobar'] = 'bar';
-            $this->fail('->offsetSet() throws an \InvalidArgumentException exception if the field does not exist');
-        } catch (\InvalidArgumentException $e) {
-            $this->assertTrue(true, '->offsetSet() throws an \InvalidArgumentException exception if the field does not exist');
-        }
-
-        try {
-            $form['foobar'];
-            $this->fail('->offsetSet() throws an \InvalidArgumentException exception if the field does not exist');
-        } catch (\InvalidArgumentException $e) {
-            $this->assertTrue(true, '->offsetSet() throws an \InvalidArgumentException exception if the field does not exist');
-        }
-    }
-
-    public function testSetValueOnMultiValuedFieldsWithMalformedName()
-    {
-        $form = $this->createForm('<form><input type="text" name="foo[bar]" value="bar" /><input type="text" name="foo[baz]" value="baz" /><input type="submit" /></form>');
-
-        try {
-            $form['foo[bar'] = 'bar';
-            $this->fail('->offsetSet() throws an \InvalidArgumentException exception if the name is malformed.');
-        } catch (\InvalidArgumentException $e) {
-            $this->assertTrue(true, '->offsetSet() throws an \InvalidArgumentException exception if the name is malformed.');
-        }
-    }
-
-    public function testDisableValidation()
-    {
-        $form = $this->createForm('<form>
-            <select name="foo[bar]">
-                <option value="bar">bar</option>
-            </select>
-            <select name="foo[baz]">
-                <option value="foo">foo</option>
-            </select>
-            <input type="submit" />
-        </form>');
-
-        $form->disableValidation();
-
-        $form['foo[bar]']->select('foo');
-        $form['foo[baz]']->select('bar');
-        $this->assertEquals('foo', $form['foo[bar]']->getValue(), '->disableValidation() disables validation of all ChoiceFormField.');
-        $this->assertEquals('bar', $form['foo[baz]']->getValue(), '->disableValidation() disables validation of all ChoiceFormField.');
-    }
-
-    public function testOffsetUnset()
-    {
-        $form = $this->createForm('<form><input type="text" name="foo" value="foo" /><input type="submit" /></form>');
-        unset($form['foo']);
-        $this->assertFalse(isset($form['foo']), '->offsetUnset() removes a field');
-    }
-
-    public function testOffsetExists()
-    {
-        $form = $this->createForm('<form><input type="text" name="foo" value="foo" /><input type="submit" /></form>');
-
-        $this->assertTrue(isset($form['foo']), '->offsetExists() return true if the field exists');
-        $this->assertFalse(isset($form['bar']), '->offsetExists() return false if the field does not exist');
-    }
-
-    public function testGetValues()
-    {
-        $form = $this->createForm('<form><input type="text" name="foo[bar]" value="foo" /><input type="text" name="bar" value="bar" /><select multiple="multiple" name="baz[]"></select><input type="submit" /></form>');
-        $this->assertEquals(array('foo[bar]' => 'foo', 'bar' => 'bar', 'baz' => array()), $form->getValues(), '->getValues() returns all form field values');
-
-        $form = $this->createForm('<form><input type="checkbox" name="foo" value="foo" /><input type="text" name="bar" value="bar" /><input type="submit" /></form>');
-        $this->assertEquals(array('bar' => 'bar'), $form->getValues(), '->getValues() does not include not-checked checkboxes');
-
-        $form = $this->createForm('<form><input type="file" name="foo" value="foo" /><input type="text" name="bar" value="bar" /><input type="submit" /></form>');
-        $this->assertEquals(array('bar' => 'bar'), $form->getValues(), '->getValues() does not include file input fields');
-
-        $form = $this->createForm('<form><input type="text" name="foo" value="foo" disabled="disabled" /><input type="text" name="bar" value="bar" /><input type="submit" /></form>');
-        $this->assertEquals(array('bar' => 'bar'), $form->getValues(), '->getValues() does not include disabled fields');
-    }
-
-    public function testSetValues()
-    {
-        $form = $this->createForm('<form><input type="checkbox" name="foo" value="foo" checked="checked" /><input type="text" name="bar" value="bar" /><input type="submit" /></form>');
-        $form->setValues(array('foo' => false, 'bar' => 'foo'));
-        $this->assertEquals(array('bar' => 'foo'), $form->getValues(), '->setValues() sets the values of fields');
-    }
-
-    public function testMultiselectSetValues()
-    {
-        $form = $this->createForm('<form><select multiple="multiple" name="multi"><option value="foo">foo</option><option value="bar">bar</option></select><input type="submit" /></form>');
-        $form->setValues(array('multi' => array('foo', 'bar')));
-        $this->assertEquals(array('multi' => array('foo', 'bar')), $form->getValues(), '->setValue() sets the values of select');
-    }
-
-    public function testGetPhpValues()
-    {
-        $form = $this->createForm('<form><input type="text" name="foo[bar]" value="foo" /><input type="text" name="bar" value="bar" /><input type="submit" /></form>');
-        $this->assertEquals(array('foo' => array('bar' => 'foo'), 'bar' => 'bar'), $form->getPhpValues(), '->getPhpValues() converts keys with [] to arrays');
-
-        $form = $this->createForm('<form><input type="text" name="fo.o[ba.r]" value="foo" /><input type="text" name="ba r" value="bar" /><input type="submit" /></form>');
-        $this->assertEquals(array('fo.o' => array('ba.r' => 'foo'), 'ba r' => 'bar'), $form->getPhpValues(), '->getPhpValues() preserves periods and spaces in names');
-
-        $form = $this->createForm('<form><input type="text" name="fo.o[ba.r][]" value="foo" /><input type="text" name="fo.o[ba.r][ba.z]" value="bar" /><input type="submit" /></form>');
-        $this->assertEquals(array('fo.o' => array('ba.r' => array('foo', 'ba.z' => 'bar'))), $form->getPhpValues(), '->getPhpValues() preserves periods and spaces in names recursively');
-
-        $form = $this->createForm('<form><input type="text" name="foo[bar]" value="foo" /><input type="text" name="bar" value="bar" /><select multiple="multiple" name="baz[]"></select><input type="submit" /></form>');
-        $this->assertEquals(array('foo' => array('bar' => 'foo'), 'bar' => 'bar'), $form->getPhpValues(), "->getPhpValues() doesn't return empty values");
-    }
-
-    public function testGetFiles()
-    {
-        $form = $this->createForm('<form><input type="file" name="foo[bar]" /><input type="text" name="bar" value="bar" /><input type="submit" /></form>');
-        $this->assertEquals(array(), $form->getFiles(), '->getFiles() returns an empty array if method is get');
-
-        $form = $this->createForm('<form method="post"><input type="file" name="foo[bar]" /><input type="text" name="bar" value="bar" /><input type="submit" /></form>');
-        $this->assertEquals(array('foo[bar]' => array('name' => '', 'type' => '', 'tmp_name' => '', 'error' => 4, 'size' => 0)), $form->getFiles(), '->getFiles() only returns file fields for POST');
-
-        $form = $this->createForm('<form method="post"><input type="file" name="foo[bar]" /><input type="text" name="bar" value="bar" /><input type="submit" /></form>', 'put');
-        $this->assertEquals(array('foo[bar]' => array('name' => '', 'type' => '', 'tmp_name' => '', 'error' => 4, 'size' => 0)), $form->getFiles(), '->getFiles() only returns file fields for PUT');
-
-        $form = $this->createForm('<form method="post"><input type="file" name="foo[bar]" /><input type="text" name="bar" value="bar" /><input type="submit" /></form>', 'delete');
-        $this->assertEquals(array('foo[bar]' => array('name' => '', 'type' => '', 'tmp_name' => '', 'error' => 4, 'size' => 0)), $form->getFiles(), '->getFiles() only returns file fields for DELETE');
-
-        $form = $this->createForm('<form method="post"><input type="file" name="foo[bar]" /><input type="text" name="bar" value="bar" /><input type="submit" /></form>', 'patch');
-        $this->assertEquals(array('foo[bar]' => array('name' => '', 'type' => '', 'tmp_name' => '', 'error' => 4, 'size' => 0)), $form->getFiles(), '->getFiles() only returns file fields for PATCH');
-
-        $form = $this->createForm('<form method="post"><input type="file" name="foo[bar]" disabled="disabled" /><input type="submit" /></form>');
-        $this->assertEquals(array(), $form->getFiles(), '->getFiles() does not include disabled file fields');
-    }
-
-    public function testGetPhpFiles()
-    {
-        $form = $this->createForm('<form method="post"><input type="file" name="foo[bar]" /><input type="text" name="bar" value="bar" /><input type="submit" /></form>');
-        $this->assertEquals(array('foo' => array('bar' => array('name' => '', 'type' => '', 'tmp_name' => '', 'error' => 4, 'size' => 0))), $form->getPhpFiles(), '->getPhpFiles() converts keys with [] to arrays');
-
-        $form = $this->createForm('<form method="post"><input type="file" name="f.o o[bar]" /><input type="text" name="bar" value="bar" /><input type="submit" /></form>');
-        $this->assertEquals(array('f.o o' => array('bar' => array('name' => '', 'type' => '', 'tmp_name' => '', 'error' => 4, 'size' => 0))), $form->getPhpFiles(), '->getPhpFiles() preserves periods and spaces in names');
-
-        $form = $this->createForm('<form method="post"><input type="file" name="f.o o[bar][ba.z]" /><input type="file" name="f.o o[bar][]" /><input type="text" name="bar" value="bar" /><input type="submit" /></form>');
-        $this->assertEquals(array('f.o o' => array('bar' => array('ba.z' => array('name' => '', 'type' => '', 'tmp_name' => '', 'error' => 4, 'size' => 0), array('name' => '', 'type' => '', 'tmp_name' => '', 'error' => 4, 'size' => 0)))), $form->getPhpFiles(), '->getPhpFiles() preserves periods and spaces in names recursively');
-    }
-
-    /**
-     * @dataProvider provideGetUriValues
-     */
-    public function testGetUri($message, $form, $values, $uri, $method = null)
-    {
-        $form = $this->createForm($form, $method);
-        $form->setValues($values);
-
-        $this->assertEquals('http://example.com'.$uri, $form->getUri(), '->getUri() '.$message);
-    }
-
-    public function testGetBaseUri()
-    {
-        $dom = new \DOMDocument();
-        $dom->loadHTML('<form method="post" action="foo.php"><input type="text" name="bar" value="bar" /><input type="submit" /></form>');
-
-        $nodes = $dom->getElementsByTagName('input');
-        $form = new Form($nodes->item($nodes->length - 1), 'http://www.foo.com/');
-        $this->assertEquals('http://www.foo.com/foo.php', $form->getUri());
-    }
-
-    public function testGetUriWithAnchor()
-    {
-        $form = $this->createForm('<form action="#foo"><input type="submit" /></form>', null, 'http://example.com/id/123');
-
-        $this->assertEquals('http://example.com/id/123#foo', $form->getUri());
-    }
-
-    public function testGetUriActionAbsolute()
-    {
-        $formHtml = '<form id="login_form" action="https://login.foo.com/login.php?login_attempt=1" method="POST"><input type="text" name="foo" value="foo" /><input type="submit" /></form>';
-
-        $form = $this->createForm($formHtml);
-        $this->assertEquals('https://login.foo.com/login.php?login_attempt=1', $form->getUri(), '->getUri() returns absolute URIs set in the action form');
-
-        $form = $this->createForm($formHtml, null, 'https://login.foo.com');
-        $this->assertEquals('https://login.foo.com/login.php?login_attempt=1', $form->getUri(), '->getUri() returns absolute URIs set in the action form');
-
-        $form = $this->createForm($formHtml, null, 'https://login.foo.com/bar/');
-        $this->assertEquals('https://login.foo.com/login.php?login_attempt=1', $form->getUri(), '->getUri() returns absolute URIs set in the action form');
-
-        // The action URI haven't the same domain Host have an another domain as Host
-        $form = $this->createForm($formHtml, null, 'https://www.foo.com');
-        $this->assertEquals('https://login.foo.com/login.php?login_attempt=1', $form->getUri(), '->getUri() returns absolute URIs set in the action form');
-
-        $form = $this->createForm($formHtml, null, 'https://www.foo.com/bar/');
-        $this->assertEquals('https://login.foo.com/login.php?login_attempt=1', $form->getUri(), '->getUri() returns absolute URIs set in the action form');
-    }
-
-    public function testGetUriAbsolute()
-    {
-        $form = $this->createForm('<form action="foo"><input type="submit" /></form>', null, 'http://localhost/foo/');
-        $this->assertEquals('http://localhost/foo/foo', $form->getUri(), '->getUri() returns absolute URIs');
-
-        $form = $this->createForm('<form action="/foo"><input type="submit" /></form>', null, 'http://localhost/foo/');
-        $this->assertEquals('http://localhost/foo', $form->getUri(), '->getUri() returns absolute URIs');
-    }
-
-    public function testGetUriWithOnlyQueryString()
-    {
-        $form = $this->createForm('<form action="?get=param"><input type="submit" /></form>', null, 'http://localhost/foo/bar');
-        $this->assertEquals('http://localhost/foo/bar?get=param', $form->getUri(), '->getUri() returns absolute URIs only if the host has been defined in the constructor');
-    }
-
-    public function testGetUriWithoutAction()
-    {
-        $form = $this->createForm('<form><input type="submit" /></form>', null, 'http://localhost/foo/bar');
-        $this->assertEquals('http://localhost/foo/bar', $form->getUri(), '->getUri() returns path if no action defined');
-    }
-
-    public function provideGetUriValues()
-    {
-        return array(
-            array(
-                'returns the URI of the form',
-                '<form action="/foo"><input type="submit" /></form>',
-                array(),
-                '/foo',
-            ),
-            array(
-                'appends the form values if the method is get',
-                '<form action="/foo"><input type="text" name="foo" value="foo" /><input type="submit" /></form>',
-                array(),
-                '/foo?foo=foo',
-            ),
-            array(
-                'appends the form values and merges the submitted values',
-                '<form action="/foo"><input type="text" name="foo" value="foo" /><input type="submit" /></form>',
-                array('foo' => 'bar'),
-                '/foo?foo=bar',
-            ),
-            array(
-                'does not append values if the method is post',
-                '<form action="/foo" method="post"><input type="text" name="foo" value="foo" /><input type="submit" /></form>',
-                array(),
-                '/foo',
-            ),
-            array(
-                'does not append values if the method is patch',
-                '<form action="/foo" method="post"><input type="text" name="foo" value="foo" /><input type="submit" /></form>',
-                array(),
-                '/foo',
-                'PUT',
-            ),
-            array(
-                'does not append values if the method is delete',
-                '<form action="/foo" method="post"><input type="text" name="foo" value="foo" /><input type="submit" /></form>',
-                array(),
-                '/foo',
-                'DELETE',
-            ),
-            array(
-                'does not append values if the method is put',
-                '<form action="/foo" method="post"><input type="text" name="foo" value="foo" /><input type="submit" /></form>',
-                array(),
-                '/foo',
-                'PATCH',
-            ),
-            array(
-                'appends the form values to an existing query string',
-                '<form action="/foo?bar=bar"><input type="text" name="foo" value="foo" /><input type="submit" /></form>',
-                array(),
-                '/foo?bar=bar&foo=foo',
-            ),
-            array(
-                'replaces query values with the form values',
-                '<form action="/foo?bar=bar"><input type="text" name="bar" value="foo" /><input type="submit" /></form>',
-                array(),
-                '/foo?bar=foo',
-            ),
-            array(
-                'returns an empty URI if the action is empty',
-                '<form><input type="submit" /></form>',
-                array(),
-                '/',
-            ),
-            array(
-                'appends the form values even if the action is empty',
-                '<form><input type="text" name="foo" value="foo" /><input type="submit" /></form>',
-                array(),
-                '/?foo=foo',
-            ),
-            array(
-                'chooses the path if the action attribute value is a sharp (#)',
-                '<form action="#" method="post"><input type="text" name="foo" value="foo" /><input type="submit" /></form>',
-                array(),
-                '/#',
-            ),
-        );
-    }
-
-    public function testHas()
-    {
-        $form = $this->createForm('<form method="post"><input type="text" name="bar" value="bar" /><input type="submit" /></form>');
-
-        $this->assertFalse($form->has('foo'), '->has() returns false if a field is not in the form');
-        $this->assertTrue($form->has('bar'), '->has() returns true if a field is in the form');
-    }
-
-    public function testRemove()
-    {
-        $form = $this->createForm('<form method="post"><input type="text" name="bar" value="bar" /><input type="submit" /></form>');
-        $form->remove('bar');
-        $this->assertFalse($form->has('bar'), '->remove() removes a field');
-    }
-
-    public function testGet()
-    {
-        $form = $this->createForm('<form method="post"><input type="text" name="bar" value="bar" /><input type="submit" /></form>');
-
-        $this->assertInstanceOf('Symfony\\Component\\DomCrawler\\Field\\InputFormField', $form->get('bar'), '->get() returns the field object associated with the given name');
-
-        try {
-            $form->get('foo');
-            $this->fail('->get() throws an \InvalidArgumentException if the field does not exist');
-        } catch (\InvalidArgumentException $e) {
-            $this->assertTrue(true, '->get() throws an \InvalidArgumentException if the field does not exist');
-        }
-    }
-
-    public function testAll()
-    {
-        $form = $this->createForm('<form method="post"><input type="text" name="bar" value="bar" /><input type="submit" /></form>');
-
-        $fields = $form->all();
-        $this->assertCount(1, $fields, '->all() return an array of form field objects');
-        $this->assertInstanceOf('Symfony\\Component\\DomCrawler\\Field\\InputFormField', $fields['bar'], '->all() return an array of form field objects');
-    }
-
-    public function testSubmitWithoutAFormButton()
-    {
-        $dom = new \DOMDocument();
-        $dom->loadHTML('
-            <html>
-                <form>
-                    <input type="foo" />
-                </form>
-            </html>
-        ');
-
-        $nodes = $dom->getElementsByTagName('form');
-        $form = new Form($nodes->item(0), 'http://example.com');
-        $this->assertSame($nodes->item(0), $form->getFormNode(), '->getFormNode() returns the form node associated with this form');
-    }
-
-    public function testTypeAttributeIsCaseInsensitive()
-    {
-        $form = $this->createForm('<form method="post"><input type="IMAGE" name="example" /></form>');
-        $this->assertTrue($form->has('example.x'), '->has() returns true if the image input was correctly turned into an x and a y fields');
-        $this->assertTrue($form->has('example.y'), '->has() returns true if the image input was correctly turned into an x and a y fields');
-    }
-
-    /**
-     * @expectedException \InvalidArgumentException
-     */
-    public function testFormFieldRegistryAddThrowAnExceptionWhenTheNameIsMalformed()
-    {
-        $registry = new FormFieldRegistry();
-        $registry->add($this->getFormFieldMock('[foo]'));
-    }
-
-    /**
-     * @expectedException \InvalidArgumentException
-     */
-    public function testFormFieldRegistryRemoveThrowAnExceptionWhenTheNameIsMalformed()
-    {
-        $registry = new FormFieldRegistry();
-        $registry->remove('[foo]');
-    }
-
-    /**
-     * @expectedException \InvalidArgumentException
-     */
-    public function testFormFieldRegistryGetThrowAnExceptionWhenTheNameIsMalformed()
-    {
-        $registry = new FormFieldRegistry();
-        $registry->get('[foo]');
-    }
-
-    /**
-     * @expectedException \InvalidArgumentException
-     */
-    public function testFormFieldRegistryGetThrowAnExceptionWhenTheFieldDoesNotExist()
-    {
-        $registry = new FormFieldRegistry();
-        $registry->get('foo');
-    }
-
-    /**
-     * @expectedException \InvalidArgumentException
-     */
-    public function testFormFieldRegistrySetThrowAnExceptionWhenTheNameIsMalformed()
-    {
-        $registry = new FormFieldRegistry();
-        $registry->set('[foo]', null);
-    }
-
-    /**
-     * @expectedException \InvalidArgumentException
-     */
-    public function testFormFieldRegistrySetThrowAnExceptionWhenTheFieldDoesNotExist()
-    {
-        $registry = new FormFieldRegistry();
-        $registry->set('foo', null);
-    }
-
-    public function testFormFieldRegistryHasReturnsTrueWhenTheFQNExists()
-    {
-        $registry = new FormFieldRegistry();
-        $registry->add($this->getFormFieldMock('foo[bar]'));
-
-        $this->assertTrue($registry->has('foo'));
-        $this->assertTrue($registry->has('foo[bar]'));
-        $this->assertFalse($registry->has('bar'));
-        $this->assertFalse($registry->has('foo[foo]'));
-    }
-
-    public function testFormRegistryFieldsCanBeRemoved()
-    {
-        $registry = new FormFieldRegistry();
-        $registry->add($this->getFormFieldMock('foo'));
-        $registry->remove('foo');
-        $this->assertFalse($registry->has('foo'));
-    }
-
-    public function testFormRegistrySupportsMultivaluedFields()
-    {
-        $registry = new FormFieldRegistry();
-        $registry->add($this->getFormFieldMock('foo[]'));
-        $registry->add($this->getFormFieldMock('foo[]'));
-        $registry->add($this->getFormFieldMock('bar[5]'));
-        $registry->add($this->getFormFieldMock('bar[]'));
-        $registry->add($this->getFormFieldMock('bar[baz]'));
-
-        $this->assertEquals(
-            array('foo[0]', 'foo[1]', 'bar[5]', 'bar[6]', 'bar[baz]'),
-            array_keys($registry->all())
-        );
-    }
-
-    public function testFormRegistrySetValues()
-    {
-        $registry = new FormFieldRegistry();
-        $registry->add($f2 = $this->getFormFieldMock('foo[2]'));
-        $registry->add($f3 = $this->getFormFieldMock('foo[3]'));
-        $registry->add($fbb = $this->getFormFieldMock('foo[bar][baz]'));
-
-        $f2
-            ->expects($this->exactly(2))
-            ->method('setValue')
-            ->with(2)
-        ;
-
-        $f3
-            ->expects($this->exactly(2))
-            ->method('setValue')
-            ->with(3)
-        ;
-
-        $fbb
-            ->expects($this->exactly(2))
-            ->method('setValue')
-            ->with('fbb')
-        ;
-
-        $registry->set('foo[2]', 2);
-        $registry->set('foo[3]', 3);
-        $registry->set('foo[bar][baz]', 'fbb');
-
-        $registry->set('foo', array(
-            2 => 2,
-            3 => 3,
-            'bar' => array(
-                'baz' => 'fbb',
-             ),
-        ));
-    }
-
-    /**
-     * @expectedException \InvalidArgumentException
-     * @expectedExceptionMessage Cannot set value on a compound field "foo[bar]".
-     */
-    public function testFormRegistrySetValueOnCompoundField()
-    {
-        $registry = new FormFieldRegistry();
-        $registry->add($this->getFormFieldMock('foo[bar][baz]'));
-
-        $registry->set('foo[bar]', 'fbb');
-    }
-
-    /**
-     * @expectedException \InvalidArgumentException
-     * @expectedExceptionMessage Unreachable field "0"
-     */
-    public function testFormRegistrySetArrayOnNotCompoundField()
-    {
-        $registry = new FormFieldRegistry();
-        $registry->add($this->getFormFieldMock('bar'));
-
-        $registry->set('bar', array('baz'));
-    }
-
-    public function testDifferentFieldTypesWithSameName()
-    {
-        $dom = new \DOMDocument();
-        $dom->loadHTML('
-            <html>
-                <body>
-                    <form action="/">
-                        <input type="hidden" name="option" value="default">
-                        <input type="radio" name="option" value="A">
-                        <input type="radio" name="option" value="B">
-                        <input type="hidden" name="settings[1]" value="0">
-                        <input type="checkbox" name="settings[1]" value="1" id="setting-1">
-                        <button>klickme</button>
-                    </form>
-                </body>
-            </html>
-        ');
-        $form = new Form($dom->getElementsByTagName('form')->item(0), 'http://example.com');
-
-        $this->assertInstanceOf('Symfony\Component\DomCrawler\Field\ChoiceFormField', $form->get('option'));
-    }
-
-    protected function getFormFieldMock($name, $value = null)
-    {
-        $field = $this
-            ->getMockBuilder('Symfony\\Component\\DomCrawler\\Field\\FormField')
-            ->setMethods(array('getName', 'getValue', 'setValue', 'initialize'))
-            ->disableOriginalConstructor()
-            ->getMock()
-        ;
-
-        $field
-            ->expects($this->any())
-            ->method('getName')
-            ->will($this->returnValue($name))
-        ;
-
-        $field
-            ->expects($this->any())
-            ->method('getValue')
-            ->will($this->returnValue($value))
-        ;
-
-        return $field;
-    }
-
-    protected function createForm($form, $method = null, $currentUri = null)
-    {
-        $dom = new \DOMDocument();
-        $dom->loadHTML('<html>'.$form.'</html>');
-
-        $xPath = new \DOMXPath($dom);
-        $nodes = $xPath->query('//input | //button');
-
-        if (null === $currentUri) {
-            $currentUri = 'http://example.com/';
-        }
-
-        return new Form($nodes->item($nodes->length - 1), $currentUri, $method);
-    }
-
-    protected function createTestHtml5Form()
-    {
-        $dom = new \DOMDocument();
-        $dom->loadHTML('
-        <html>
-            <h1>Hello form</h1>
-            <form id="form-1" action="" method="POST">
-                <div><input type="checkbox" name="apples[]" value="1" checked /></div>
-                <input form="form_2" type="checkbox" name="oranges[]" value="1" checked />
-                <div><label></label><input form="form-1" type="hidden" name="form_name" value="form-1" /></div>
-                <input form="form-1" type="submit" name="button_1" value="Capture fields" />
-                <button form="form_2" type="submit" name="button_2">Submit form_2</button>
-            </form>
-            <input form="form-1" type="checkbox" name="apples[]" value="2" checked />
-            <form id="form_2" action="" method="POST">
-                <div><div><input type="checkbox" name="oranges[]" value="2" checked />
-                <input type="checkbox" name="oranges[]" value="3" checked /></div></div>
-                <input form="form_2" type="hidden" name="form_name" value="form_2" />
-                <input form="form-1" type="hidden" name="outer_field" value="success" />
-                <button form="form-1" type="submit" name="button_3">Submit from outside the form</button>
-                <div>
-                    <label for="app_frontend_form_type_contact_form_type_contactType">Message subject</label>
-                    <div>
-                        <select name="app_frontend_form_type_contact_form_type[contactType]" id="app_frontend_form_type_contact_form_type_contactType"><option selected="selected" value="">Please select subject</option><option id="1">Test type</option></select>
-                    </div>
-                </div>
-                <div>
-                    <label for="app_frontend_form_type_contact_form_type_firstName">Firstname</label>
-                    <input type="text" name="app_frontend_form_type_contact_form_type[firstName]" value="John" id="app_frontend_form_type_contact_form_type_firstName"/>
-                </div>
-            </form>
-            <button />
-        </html>');
-
-        return $dom;
-    }
-
-    protected function createTestMultipleForm()
-    {
-        $dom = new \DOMDocument();
-        $dom->loadHTML('
-        <html>
-            <h1>Hello form</h1>
-            <form action="" method="POST">
-                <div><input type="checkbox" name="apples[]" value="1" checked /></div>
-                <input type="checkbox" name="oranges[]" value="1" checked />
-                <div><label></label><input type="hidden" name="form_name" value="form-1" /></div>
-                <input type="submit" name="button_1" value="Capture fields" />
-                <button type="submit" name="button_2">Submit form_2</button>
-            </form>
-            <form action="" method="POST">
-                <div><div><input type="checkbox" name="oranges[]" value="2" checked />
-                <input type="checkbox" name="oranges[]" value="3" checked /></div></div>
-                <input type="hidden" name="form_name" value="form_2" />
-                <input type="hidden" name="outer_field" value="success" />
-                <button type="submit" name="button_3">Submit from outside the form</button>
-            </form>
-            <button />
-        </html>');
-
-        return $dom;
-    }
-
-    public function testgetPhpValuesWithEmptyTextarea()
-    {
-        $dom = new \DOMDocument();
-        $dom->loadHTML('
-              <html>
-                  <form>
-                      <textarea name="example"></textarea>
-                  </form>
-              </html>
-          ');
-
-        $nodes = $dom->getElementsByTagName('form');
-        $form = new Form($nodes->item(0), 'http://example.com');
-        $this->assertEquals($form->getPhpValues(), array('example' => ''));
-    }
-}
diff --git a/vendor/symfony/dom-crawler/Tests/LinkTest.php b/vendor/symfony/dom-crawler/Tests/LinkTest.php
deleted file mode 100644
index 98a45a3..0000000
--- a/vendor/symfony/dom-crawler/Tests/LinkTest.php
+++ /dev/null
@@ -1,160 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\DomCrawler\Tests;
-
-use Symfony\Component\DomCrawler\Link;
-
-class LinkTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @expectedException \LogicException
-     */
-    public function testConstructorWithANonATag()
-    {
-        $dom = new \DOMDocument();
-        $dom->loadHTML('<html><div><div></html>');
-
-        new Link($dom->getElementsByTagName('div')->item(0), 'http://www.example.com/');
-    }
-
-    /**
-     * @expectedException \InvalidArgumentException
-     */
-    public function testConstructorWithAnInvalidCurrentUri()
-    {
-        $dom = new \DOMDocument();
-        $dom->loadHTML('<html><a href="/foo">foo</a></html>');
-
-        new Link($dom->getElementsByTagName('a')->item(0), 'example.com');
-    }
-
-    public function testGetNode()
-    {
-        $dom = new \DOMDocument();
-        $dom->loadHTML('<html><a href="/foo">foo</a></html>');
-
-        $node = $dom->getElementsByTagName('a')->item(0);
-        $link = new Link($node, 'http://example.com/');
-
-        $this->assertEquals($node, $link->getNode(), '->getNode() returns the node associated with the link');
-    }
-
-    public function testGetMethod()
-    {
-        $dom = new \DOMDocument();
-        $dom->loadHTML('<html><a href="/foo">foo</a></html>');
-
-        $node = $dom->getElementsByTagName('a')->item(0);
-        $link = new Link($node, 'http://example.com/');
-
-        $this->assertEquals('GET', $link->getMethod(), '->getMethod() returns the method of the link');
-
-        $link = new Link($node, 'http://example.com/', 'post');
-        $this->assertEquals('POST', $link->getMethod(), '->getMethod() returns the method of the link');
-    }
-
-    /**
-     * @dataProvider getGetUriTests
-     */
-    public function testGetUri($url, $currentUri, $expected)
-    {
-        $dom = new \DOMDocument();
-        $dom->loadHTML(sprintf('<html><a href="%s">foo</a></html>', $url));
-        $link = new Link($dom->getElementsByTagName('a')->item(0), $currentUri);
-
-        $this->assertEquals($expected, $link->getUri());
-    }
-
-    /**
-     * @dataProvider getGetUriTests
-     */
-    public function testGetUriOnArea($url, $currentUri, $expected)
-    {
-        $dom = new \DOMDocument();
-        $dom->loadHTML(sprintf('<html><map><area href="%s" /></map></html>', $url));
-        $link = new Link($dom->getElementsByTagName('area')->item(0), $currentUri);
-
-        $this->assertEquals($expected, $link->getUri());
-    }
-
-    /**
-     * @dataProvider getGetUriTests
-     */
-    public function testGetUriOnLink($url, $currentUri, $expected)
-    {
-        $dom = new \DOMDocument();
-        $dom->loadHTML(sprintf('<html><head><link href="%s" /></head></html>', $url));
-        $link = new Link($dom->getElementsByTagName('link')->item(0), $currentUri);
-
-        $this->assertEquals($expected, $link->getUri());
-    }
-
-    public function getGetUriTests()
-    {
-        return array(
-            array('/foo', 'http://localhost/bar/foo/', 'http://localhost/foo'),
-            array('/foo', 'http://localhost/bar/foo', 'http://localhost/foo'),
-            array('
-            /foo', 'http://localhost/bar/foo/', 'http://localhost/foo'),
-            array('/foo
-            ', 'http://localhost/bar/foo', 'http://localhost/foo'),
-
-            array('foo', 'http://localhost/bar/foo/', 'http://localhost/bar/foo/foo'),
-            array('foo', 'http://localhost/bar/foo', 'http://localhost/bar/foo'),
-
-            array('', 'http://localhost/bar/', 'http://localhost/bar/'),
-            array('#', 'http://localhost/bar/', 'http://localhost/bar/#'),
-            array('#bar', 'http://localhost/bar?a=b', 'http://localhost/bar?a=b#bar'),
-            array('#bar', 'http://localhost/bar/#foo', 'http://localhost/bar/#bar'),
-            array('?a=b', 'http://localhost/bar#foo', 'http://localhost/bar?a=b'),
-            array('?a=b', 'http://localhost/bar/', 'http://localhost/bar/?a=b'),
-
-            array('http://login.foo.com/foo', 'http://localhost/bar/', 'http://login.foo.com/foo'),
-            array('https://login.foo.com/foo', 'https://localhost/bar/', 'https://login.foo.com/foo'),
-            array('mailto:foo@bar.com', 'http://localhost/foo', 'mailto:foo@bar.com'),
-
-            // tests schema relative URL (issue #7169)
-            array('//login.foo.com/foo', 'http://localhost/bar/', 'http://login.foo.com/foo'),
-            array('//login.foo.com/foo', 'https://localhost/bar/', 'https://login.foo.com/foo'),
-
-            array('?foo=2', 'http://localhost?foo=1', 'http://localhost?foo=2'),
-            array('?foo=2', 'http://localhost/?foo=1', 'http://localhost/?foo=2'),
-            array('?foo=2', 'http://localhost/bar?foo=1', 'http://localhost/bar?foo=2'),
-            array('?foo=2', 'http://localhost/bar/?foo=1', 'http://localhost/bar/?foo=2'),
-            array('?bar=2', 'http://localhost?foo=1', 'http://localhost?bar=2'),
-
-            array('foo', 'http://login.foo.com/bar/baz?/query/string', 'http://login.foo.com/bar/foo'),
-
-            array('.', 'http://localhost/foo/bar/baz', 'http://localhost/foo/bar/'),
-            array('./', 'http://localhost/foo/bar/baz', 'http://localhost/foo/bar/'),
-            array('./foo', 'http://localhost/foo/bar/baz', 'http://localhost/foo/bar/foo'),
-            array('..', 'http://localhost/foo/bar/baz', 'http://localhost/foo/'),
-            array('../', 'http://localhost/foo/bar/baz', 'http://localhost/foo/'),
-            array('../foo', 'http://localhost/foo/bar/baz', 'http://localhost/foo/foo'),
-            array('../..', 'http://localhost/foo/bar/baz', 'http://localhost/'),
-            array('../../', 'http://localhost/foo/bar/baz', 'http://localhost/'),
-            array('../../foo', 'http://localhost/foo/bar/baz', 'http://localhost/foo'),
-            array('../../foo', 'http://localhost/bar/foo/', 'http://localhost/foo'),
-            array('../bar/../../foo', 'http://localhost/bar/foo/', 'http://localhost/foo'),
-            array('../bar/./../../foo', 'http://localhost/bar/foo/', 'http://localhost/foo'),
-            array('../../', 'http://localhost/', 'http://localhost/'),
-            array('../../', 'http://localhost', 'http://localhost/'),
-
-            array('/foo', 'http://localhost?bar=1', 'http://localhost/foo'),
-            array('/foo', 'http://localhost#bar', 'http://localhost/foo'),
-            array('/foo', 'file:///', 'file:///foo'),
-            array('/foo', 'file:///bar/baz', 'file:///foo'),
-            array('foo', 'file:///', 'file:///foo'),
-            array('foo', 'file:///bar/baz', 'file:///bar/foo'),
-        );
-    }
-}
diff --git a/vendor/symfony/event-dispatcher/Tests/AbstractEventDispatcherTest.php b/vendor/symfony/event-dispatcher/Tests/AbstractEventDispatcherTest.php
deleted file mode 100644
index 2e4c3fd..0000000
--- a/vendor/symfony/event-dispatcher/Tests/AbstractEventDispatcherTest.php
+++ /dev/null
@@ -1,382 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\EventDispatcher\Tests;
-
-use Symfony\Component\EventDispatcher\Event;
-use Symfony\Component\EventDispatcher\EventDispatcher;
-use Symfony\Component\EventDispatcher\EventSubscriberInterface;
-
-abstract class AbstractEventDispatcherTest extends \PHPUnit_Framework_TestCase
-{
-    /* Some pseudo events */
-    const preFoo = 'pre.foo';
-    const postFoo = 'post.foo';
-    const preBar = 'pre.bar';
-    const postBar = 'post.bar';
-
-    /**
-     * @var EventDispatcher
-     */
-    private $dispatcher;
-
-    private $listener;
-
-    protected function setUp()
-    {
-        $this->dispatcher = $this->createEventDispatcher();
-        $this->listener = new TestEventListener();
-    }
-
-    protected function tearDown()
-    {
-        $this->dispatcher = null;
-        $this->listener = null;
-    }
-
-    abstract protected function createEventDispatcher();
-
-    public function testInitialState()
-    {
-        $this->assertEquals(array(), $this->dispatcher->getListeners());
-        $this->assertFalse($this->dispatcher->hasListeners(self::preFoo));
-        $this->assertFalse($this->dispatcher->hasListeners(self::postFoo));
-    }
-
-    public function testAddListener()
-    {
-        $this->dispatcher->addListener('pre.foo', array($this->listener, 'preFoo'));
-        $this->dispatcher->addListener('post.foo', array($this->listener, 'postFoo'));
-        $this->assertTrue($this->dispatcher->hasListeners(self::preFoo));
-        $this->assertTrue($this->dispatcher->hasListeners(self::postFoo));
-        $this->assertCount(1, $this->dispatcher->getListeners(self::preFoo));
-        $this->assertCount(1, $this->dispatcher->getListeners(self::postFoo));
-        $this->assertCount(2, $this->dispatcher->getListeners());
-    }
-
-    public function testGetListenersSortsByPriority()
-    {
-        $listener1 = new TestEventListener();
-        $listener2 = new TestEventListener();
-        $listener3 = new TestEventListener();
-        $listener1->name = '1';
-        $listener2->name = '2';
-        $listener3->name = '3';
-
-        $this->dispatcher->addListener('pre.foo', array($listener1, 'preFoo'), -10);
-        $this->dispatcher->addListener('pre.foo', array($listener2, 'preFoo'), 10);
-        $this->dispatcher->addListener('pre.foo', array($listener3, 'preFoo'));
-
-        $expected = array(
-            array($listener2, 'preFoo'),
-            array($listener3, 'preFoo'),
-            array($listener1, 'preFoo'),
-        );
-
-        $this->assertSame($expected, $this->dispatcher->getListeners('pre.foo'));
-    }
-
-    public function testGetAllListenersSortsByPriority()
-    {
-        $listener1 = new TestEventListener();
-        $listener2 = new TestEventListener();
-        $listener3 = new TestEventListener();
-        $listener4 = new TestEventListener();
-        $listener5 = new TestEventListener();
-        $listener6 = new TestEventListener();
-
-        $this->dispatcher->addListener('pre.foo', $listener1, -10);
-        $this->dispatcher->addListener('pre.foo', $listener2);
-        $this->dispatcher->addListener('pre.foo', $listener3, 10);
-        $this->dispatcher->addListener('post.foo', $listener4, -10);
-        $this->dispatcher->addListener('post.foo', $listener5);
-        $this->dispatcher->addListener('post.foo', $listener6, 10);
-
-        $expected = array(
-            'pre.foo' => array($listener3, $listener2, $listener1),
-            'post.foo' => array($listener6, $listener5, $listener4),
-        );
-
-        $this->assertSame($expected, $this->dispatcher->getListeners());
-    }
-
-    public function testDispatch()
-    {
-        $this->dispatcher->addListener('pre.foo', array($this->listener, 'preFoo'));
-        $this->dispatcher->addListener('post.foo', array($this->listener, 'postFoo'));
-        $this->dispatcher->dispatch(self::preFoo);
-        $this->assertTrue($this->listener->preFooInvoked);
-        $this->assertFalse($this->listener->postFooInvoked);
-        $this->assertInstanceOf('Symfony\Component\EventDispatcher\Event', $this->dispatcher->dispatch('noevent'));
-        $this->assertInstanceOf('Symfony\Component\EventDispatcher\Event', $this->dispatcher->dispatch(self::preFoo));
-        $event = new Event();
-        $return = $this->dispatcher->dispatch(self::preFoo, $event);
-        $this->assertSame($event, $return);
-    }
-
-    /**
-     * @group legacy
-     */
-    public function testLegacyDispatch()
-    {
-        $event = new Event();
-        $return = $this->dispatcher->dispatch(self::preFoo, $event);
-        $this->assertEquals('pre.foo', $event->getName());
-    }
-
-    public function testDispatchForClosure()
-    {
-        $invoked = 0;
-        $listener = function () use (&$invoked) {
-            ++$invoked;
-        };
-        $this->dispatcher->addListener('pre.foo', $listener);
-        $this->dispatcher->addListener('post.foo', $listener);
-        $this->dispatcher->dispatch(self::preFoo);
-        $this->assertEquals(1, $invoked);
-    }
-
-    public function testStopEventPropagation()
-    {
-        $otherListener = new TestEventListener();
-
-        // postFoo() stops the propagation, so only one listener should
-        // be executed
-        // Manually set priority to enforce $this->listener to be called first
-        $this->dispatcher->addListener('post.foo', array($this->listener, 'postFoo'), 10);
-        $this->dispatcher->addListener('post.foo', array($otherListener, 'preFoo'));
-        $this->dispatcher->dispatch(self::postFoo);
-        $this->assertTrue($this->listener->postFooInvoked);
-        $this->assertFalse($otherListener->postFooInvoked);
-    }
-
-    public function testDispatchByPriority()
-    {
-        $invoked = array();
-        $listener1 = function () use (&$invoked) {
-            $invoked[] = '1';
-        };
-        $listener2 = function () use (&$invoked) {
-            $invoked[] = '2';
-        };
-        $listener3 = function () use (&$invoked) {
-            $invoked[] = '3';
-        };
-        $this->dispatcher->addListener('pre.foo', $listener1, -10);
-        $this->dispatcher->addListener('pre.foo', $listener2);
-        $this->dispatcher->addListener('pre.foo', $listener3, 10);
-        $this->dispatcher->dispatch(self::preFoo);
-        $this->assertEquals(array('3', '2', '1'), $invoked);
-    }
-
-    public function testRemoveListener()
-    {
-        $this->dispatcher->addListener('pre.bar', $this->listener);
-        $this->assertTrue($this->dispatcher->hasListeners(self::preBar));
-        $this->dispatcher->removeListener('pre.bar', $this->listener);
-        $this->assertFalse($this->dispatcher->hasListeners(self::preBar));
-        $this->dispatcher->removeListener('notExists', $this->listener);
-    }
-
-    public function testAddSubscriber()
-    {
-        $eventSubscriber = new TestEventSubscriber();
-        $this->dispatcher->addSubscriber($eventSubscriber);
-        $this->assertTrue($this->dispatcher->hasListeners(self::preFoo));
-        $this->assertTrue($this->dispatcher->hasListeners(self::postFoo));
-    }
-
-    public function testAddSubscriberWithPriorities()
-    {
-        $eventSubscriber = new TestEventSubscriber();
-        $this->dispatcher->addSubscriber($eventSubscriber);
-
-        $eventSubscriber = new TestEventSubscriberWithPriorities();
-        $this->dispatcher->addSubscriber($eventSubscriber);
-
-        $listeners = $this->dispatcher->getListeners('pre.foo');
-        $this->assertTrue($this->dispatcher->hasListeners(self::preFoo));
-        $this->assertCount(2, $listeners);
-        $this->assertInstanceOf('Symfony\Component\EventDispatcher\Tests\TestEventSubscriberWithPriorities', $listeners[0][0]);
-    }
-
-    public function testAddSubscriberWithMultipleListeners()
-    {
-        $eventSubscriber = new TestEventSubscriberWithMultipleListeners();
-        $this->dispatcher->addSubscriber($eventSubscriber);
-
-        $listeners = $this->dispatcher->getListeners('pre.foo');
-        $this->assertTrue($this->dispatcher->hasListeners(self::preFoo));
-        $this->assertCount(2, $listeners);
-        $this->assertEquals('preFoo2', $listeners[0][1]);
-    }
-
-    public function testRemoveSubscriber()
-    {
-        $eventSubscriber = new TestEventSubscriber();
-        $this->dispatcher->addSubscriber($eventSubscriber);
-        $this->assertTrue($this->dispatcher->hasListeners(self::preFoo));
-        $this->assertTrue($this->dispatcher->hasListeners(self::postFoo));
-        $this->dispatcher->removeSubscriber($eventSubscriber);
-        $this->assertFalse($this->dispatcher->hasListeners(self::preFoo));
-        $this->assertFalse($this->dispatcher->hasListeners(self::postFoo));
-    }
-
-    public function testRemoveSubscriberWithPriorities()
-    {
-        $eventSubscriber = new TestEventSubscriberWithPriorities();
-        $this->dispatcher->addSubscriber($eventSubscriber);
-        $this->assertTrue($this->dispatcher->hasListeners(self::preFoo));
-        $this->dispatcher->removeSubscriber($eventSubscriber);
-        $this->assertFalse($this->dispatcher->hasListeners(self::preFoo));
-    }
-
-    public function testRemoveSubscriberWithMultipleListeners()
-    {
-        $eventSubscriber = new TestEventSubscriberWithMultipleListeners();
-        $this->dispatcher->addSubscriber($eventSubscriber);
-        $this->assertTrue($this->dispatcher->hasListeners(self::preFoo));
-        $this->assertCount(2, $this->dispatcher->getListeners(self::preFoo));
-        $this->dispatcher->removeSubscriber($eventSubscriber);
-        $this->assertFalse($this->dispatcher->hasListeners(self::preFoo));
-    }
-
-    /**
-     * @group legacy
-     */
-    public function testLegacyEventReceivesTheDispatcherInstance()
-    {
-        $dispatcher = null;
-        $this->dispatcher->addListener('test', function ($event) use (&$dispatcher) {
-            $dispatcher = $event->getDispatcher();
-        });
-        $this->dispatcher->dispatch('test');
-        $this->assertSame($this->dispatcher, $dispatcher);
-    }
-
-    public function testEventReceivesTheDispatcherInstanceAsArgument()
-    {
-        $listener = new TestWithDispatcher();
-        $this->dispatcher->addListener('test', array($listener, 'foo'));
-        $this->assertNull($listener->name);
-        $this->assertNull($listener->dispatcher);
-        $this->dispatcher->dispatch('test');
-        $this->assertEquals('test', $listener->name);
-        $this->assertSame($this->dispatcher, $listener->dispatcher);
-    }
-
-    /**
-     * @see https://bugs.php.net/bug.php?id=62976
-     *
-     * This bug affects:
-     *  - The PHP 5.3 branch for versions < 5.3.18
-     *  - The PHP 5.4 branch for versions < 5.4.8
-     *  - The PHP 5.5 branch is not affected
-     */
-    public function testWorkaroundForPhpBug62976()
-    {
-        $dispatcher = $this->createEventDispatcher();
-        $dispatcher->addListener('bug.62976', new CallableClass());
-        $dispatcher->removeListener('bug.62976', function () {});
-        $this->assertTrue($dispatcher->hasListeners('bug.62976'));
-    }
-
-    public function testHasListenersWhenAddedCallbackListenerIsRemoved()
-    {
-        $listener = function () {};
-        $this->dispatcher->addListener('foo', $listener);
-        $this->dispatcher->removeListener('foo', $listener);
-        $this->assertFalse($this->dispatcher->hasListeners());
-    }
-
-    public function testGetListenersWhenAddedCallbackListenerIsRemoved()
-    {
-        $listener = function () {};
-        $this->dispatcher->addListener('foo', $listener);
-        $this->dispatcher->removeListener('foo', $listener);
-        $this->assertSame(array(), $this->dispatcher->getListeners());
-    }
-
-    public function testHasListenersWithoutEventsReturnsFalseAfterHasListenersWithEventHasBeenCalled()
-    {
-        $this->assertFalse($this->dispatcher->hasListeners('foo'));
-        $this->assertFalse($this->dispatcher->hasListeners());
-    }
-}
-
-class CallableClass
-{
-    public function __invoke()
-    {
-    }
-}
-
-class TestEventListener
-{
-    public $preFooInvoked = false;
-    public $postFooInvoked = false;
-
-    /* Listener methods */
-
-    public function preFoo(Event $e)
-    {
-        $this->preFooInvoked = true;
-    }
-
-    public function postFoo(Event $e)
-    {
-        $this->postFooInvoked = true;
-
-        $e->stopPropagation();
-    }
-}
-
-class TestWithDispatcher
-{
-    public $name;
-    public $dispatcher;
-
-    public function foo(Event $e, $name, $dispatcher)
-    {
-        $this->name = $name;
-        $this->dispatcher = $dispatcher;
-    }
-}
-
-class TestEventSubscriber implements EventSubscriberInterface
-{
-    public static function getSubscribedEvents()
-    {
-        return array('pre.foo' => 'preFoo', 'post.foo' => 'postFoo');
-    }
-}
-
-class TestEventSubscriberWithPriorities implements EventSubscriberInterface
-{
-    public static function getSubscribedEvents()
-    {
-        return array(
-            'pre.foo' => array('preFoo', 10),
-            'post.foo' => array('postFoo'),
-            );
-    }
-}
-
-class TestEventSubscriberWithMultipleListeners implements EventSubscriberInterface
-{
-    public static function getSubscribedEvents()
-    {
-        return array('pre.foo' => array(
-            array('preFoo1'),
-            array('preFoo2', 10),
-        ));
-    }
-}
diff --git a/vendor/symfony/event-dispatcher/Tests/ContainerAwareEventDispatcherTest.php b/vendor/symfony/event-dispatcher/Tests/ContainerAwareEventDispatcherTest.php
deleted file mode 100644
index 6f2fbcb..0000000
--- a/vendor/symfony/event-dispatcher/Tests/ContainerAwareEventDispatcherTest.php
+++ /dev/null
@@ -1,249 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\EventDispatcher\Tests;
-
-use Symfony\Component\DependencyInjection\Container;
-use Symfony\Component\DependencyInjection\Scope;
-use Symfony\Component\EventDispatcher\ContainerAwareEventDispatcher;
-use Symfony\Component\EventDispatcher\Event;
-use Symfony\Component\EventDispatcher\EventSubscriberInterface;
-
-class ContainerAwareEventDispatcherTest extends AbstractEventDispatcherTest
-{
-    protected function createEventDispatcher()
-    {
-        $container = new Container();
-
-        return new ContainerAwareEventDispatcher($container);
-    }
-
-    public function testAddAListenerService()
-    {
-        $event = new Event();
-
-        $service = $this->getMock('Symfony\Component\EventDispatcher\Tests\Service');
-
-        $service
-            ->expects($this->once())
-            ->method('onEvent')
-            ->with($event)
-        ;
-
-        $container = new Container();
-        $container->set('service.listener', $service);
-
-        $dispatcher = new ContainerAwareEventDispatcher($container);
-        $dispatcher->addListenerService('onEvent', array('service.listener', 'onEvent'));
-
-        $dispatcher->dispatch('onEvent', $event);
-    }
-
-    public function testAddASubscriberService()
-    {
-        $event = new Event();
-
-        $service = $this->getMock('Symfony\Component\EventDispatcher\Tests\SubscriberService');
-
-        $service
-            ->expects($this->once())
-            ->method('onEvent')
-            ->with($event)
-        ;
-
-        $container = new Container();
-        $container->set('service.subscriber', $service);
-
-        $dispatcher = new ContainerAwareEventDispatcher($container);
-        $dispatcher->addSubscriberService('service.subscriber', 'Symfony\Component\EventDispatcher\Tests\SubscriberService');
-
-        $dispatcher->dispatch('onEvent', $event);
-    }
-
-    public function testPreventDuplicateListenerService()
-    {
-        $event = new Event();
-
-        $service = $this->getMock('Symfony\Component\EventDispatcher\Tests\Service');
-
-        $service
-            ->expects($this->once())
-            ->method('onEvent')
-            ->with($event)
-        ;
-
-        $container = new Container();
-        $container->set('service.listener', $service);
-
-        $dispatcher = new ContainerAwareEventDispatcher($container);
-        $dispatcher->addListenerService('onEvent', array('service.listener', 'onEvent'), 5);
-        $dispatcher->addListenerService('onEvent', array('service.listener', 'onEvent'), 10);
-
-        $dispatcher->dispatch('onEvent', $event);
-    }
-
-    /**
-     * @expectedException \InvalidArgumentException
-     */
-    public function testTriggerAListenerServiceOutOfScope()
-    {
-        $service = $this->getMock('Symfony\Component\EventDispatcher\Tests\Service');
-
-        $scope = new Scope('scope');
-        $container = new Container();
-        $container->addScope($scope);
-        $container->enterScope('scope');
-
-        $container->set('service.listener', $service, 'scope');
-
-        $dispatcher = new ContainerAwareEventDispatcher($container);
-        $dispatcher->addListenerService('onEvent', array('service.listener', 'onEvent'));
-
-        $container->leaveScope('scope');
-        $dispatcher->dispatch('onEvent');
-    }
-
-    public function testReEnteringAScope()
-    {
-        $event = new Event();
-
-        $service1 = $this->getMock('Symfony\Component\EventDispatcher\Tests\Service');
-
-        $service1
-            ->expects($this->exactly(2))
-            ->method('onEvent')
-            ->with($event)
-        ;
-
-        $scope = new Scope('scope');
-        $container = new Container();
-        $container->addScope($scope);
-        $container->enterScope('scope');
-
-        $container->set('service.listener', $service1, 'scope');
-
-        $dispatcher = new ContainerAwareEventDispatcher($container);
-        $dispatcher->addListenerService('onEvent', array('service.listener', 'onEvent'));
-        $dispatcher->dispatch('onEvent', $event);
-
-        $service2 = $this->getMock('Symfony\Component\EventDispatcher\Tests\Service');
-
-        $service2
-            ->expects($this->once())
-            ->method('onEvent')
-            ->with($event)
-        ;
-
-        $container->enterScope('scope');
-        $container->set('service.listener', $service2, 'scope');
-
-        $dispatcher->dispatch('onEvent', $event);
-
-        $container->leaveScope('scope');
-
-        $dispatcher->dispatch('onEvent');
-    }
-
-    public function testHasListenersOnLazyLoad()
-    {
-        $event = new Event();
-
-        $service = $this->getMock('Symfony\Component\EventDispatcher\Tests\Service');
-
-        $container = new Container();
-        $container->set('service.listener', $service);
-
-        $dispatcher = new ContainerAwareEventDispatcher($container);
-        $dispatcher->addListenerService('onEvent', array('service.listener', 'onEvent'));
-
-        $event->setDispatcher($dispatcher);
-        $event->setName('onEvent');
-
-        $service
-            ->expects($this->once())
-            ->method('onEvent')
-            ->with($event)
-        ;
-
-        $this->assertTrue($dispatcher->hasListeners());
-
-        if ($dispatcher->hasListeners('onEvent')) {
-            $dispatcher->dispatch('onEvent');
-        }
-    }
-
-    public function testGetListenersOnLazyLoad()
-    {
-        $service = $this->getMock('Symfony\Component\EventDispatcher\Tests\Service');
-
-        $container = new Container();
-        $container->set('service.listener', $service);
-
-        $dispatcher = new ContainerAwareEventDispatcher($container);
-        $dispatcher->addListenerService('onEvent', array('service.listener', 'onEvent'));
-
-        $listeners = $dispatcher->getListeners();
-
-        $this->assertTrue(isset($listeners['onEvent']));
-
-        $this->assertCount(1, $dispatcher->getListeners('onEvent'));
-    }
-
-    public function testRemoveAfterDispatch()
-    {
-        $service = $this->getMock('Symfony\Component\EventDispatcher\Tests\Service');
-
-        $container = new Container();
-        $container->set('service.listener', $service);
-
-        $dispatcher = new ContainerAwareEventDispatcher($container);
-        $dispatcher->addListenerService('onEvent', array('service.listener', 'onEvent'));
-
-        $dispatcher->dispatch('onEvent', new Event());
-        $dispatcher->removeListener('onEvent', array($container->get('service.listener'), 'onEvent'));
-        $this->assertFalse($dispatcher->hasListeners('onEvent'));
-    }
-
-    public function testRemoveBeforeDispatch()
-    {
-        $service = $this->getMock('Symfony\Component\EventDispatcher\Tests\Service');
-
-        $container = new Container();
-        $container->set('service.listener', $service);
-
-        $dispatcher = new ContainerAwareEventDispatcher($container);
-        $dispatcher->addListenerService('onEvent', array('service.listener', 'onEvent'));
-
-        $dispatcher->removeListener('onEvent', array($container->get('service.listener'), 'onEvent'));
-        $this->assertFalse($dispatcher->hasListeners('onEvent'));
-    }
-}
-
-class Service
-{
-    public function onEvent(Event $e)
-    {
-    }
-}
-
-class SubscriberService implements EventSubscriberInterface
-{
-    public static function getSubscribedEvents()
-    {
-        return array(
-            'onEvent' => array('onEvent'),
-        );
-    }
-
-    public function onEvent(Event $e)
-    {
-    }
-}
diff --git a/vendor/symfony/event-dispatcher/Tests/Debug/TraceableEventDispatcherTest.php b/vendor/symfony/event-dispatcher/Tests/Debug/TraceableEventDispatcherTest.php
deleted file mode 100644
index 4aa6226..0000000
--- a/vendor/symfony/event-dispatcher/Tests/Debug/TraceableEventDispatcherTest.php
+++ /dev/null
@@ -1,199 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\EventDispatcher\Tests\Debug;
-
-use Symfony\Component\EventDispatcher\Debug\TraceableEventDispatcher;
-use Symfony\Component\EventDispatcher\EventDispatcherInterface;
-use Symfony\Component\EventDispatcher\EventSubscriberInterface;
-use Symfony\Component\EventDispatcher\EventDispatcher;
-use Symfony\Component\EventDispatcher\Event;
-use Symfony\Component\Stopwatch\Stopwatch;
-
-class TraceableEventDispatcherTest extends \PHPUnit_Framework_TestCase
-{
-    public function testAddRemoveListener()
-    {
-        $dispatcher = new EventDispatcher();
-        $tdispatcher = new TraceableEventDispatcher($dispatcher, new Stopwatch());
-
-        $tdispatcher->addListener('foo', $listener = function () {; });
-        $listeners = $dispatcher->getListeners('foo');
-        $this->assertCount(1, $listeners);
-        $this->assertSame($listener, $listeners[0]);
-
-        $tdispatcher->removeListener('foo', $listener);
-        $this->assertCount(0, $dispatcher->getListeners('foo'));
-    }
-
-    public function testGetListeners()
-    {
-        $dispatcher = new EventDispatcher();
-        $tdispatcher = new TraceableEventDispatcher($dispatcher, new Stopwatch());
-
-        $tdispatcher->addListener('foo', $listener = function () {; });
-        $this->assertSame($dispatcher->getListeners('foo'), $tdispatcher->getListeners('foo'));
-    }
-
-    public function testHasListeners()
-    {
-        $dispatcher = new EventDispatcher();
-        $tdispatcher = new TraceableEventDispatcher($dispatcher, new Stopwatch());
-
-        $this->assertFalse($dispatcher->hasListeners('foo'));
-        $this->assertFalse($tdispatcher->hasListeners('foo'));
-
-        $tdispatcher->addListener('foo', $listener = function () {; });
-        $this->assertTrue($dispatcher->hasListeners('foo'));
-        $this->assertTrue($tdispatcher->hasListeners('foo'));
-    }
-
-    public function testAddRemoveSubscriber()
-    {
-        $dispatcher = new EventDispatcher();
-        $tdispatcher = new TraceableEventDispatcher($dispatcher, new Stopwatch());
-
-        $subscriber = new EventSubscriber();
-
-        $tdispatcher->addSubscriber($subscriber);
-        $listeners = $dispatcher->getListeners('foo');
-        $this->assertCount(1, $listeners);
-        $this->assertSame(array($subscriber, 'call'), $listeners[0]);
-
-        $tdispatcher->removeSubscriber($subscriber);
-        $this->assertCount(0, $dispatcher->getListeners('foo'));
-    }
-
-    public function testGetCalledListeners()
-    {
-        $dispatcher = new EventDispatcher();
-        $tdispatcher = new TraceableEventDispatcher($dispatcher, new Stopwatch());
-        $tdispatcher->addListener('foo', $listener = function () {; });
-
-        $this->assertEquals(array(), $tdispatcher->getCalledListeners());
-        $this->assertEquals(array('foo.closure' => array('event' => 'foo', 'type' => 'Closure', 'pretty' => 'closure')), $tdispatcher->getNotCalledListeners());
-
-        $tdispatcher->dispatch('foo');
-
-        $this->assertEquals(array('foo.closure' => array('event' => 'foo', 'type' => 'Closure', 'pretty' => 'closure')), $tdispatcher->getCalledListeners());
-        $this->assertEquals(array(), $tdispatcher->getNotCalledListeners());
-    }
-
-    public function testGetCalledListenersNested()
-    {
-        $tdispatcher = null;
-        $dispatcher = new TraceableEventDispatcher(new EventDispatcher(), new Stopwatch());
-        $dispatcher->addListener('foo', function (Event $event, $eventName, $dispatcher) use (&$tdispatcher) {
-            $tdispatcher = $dispatcher;
-            $dispatcher->dispatch('bar');
-        });
-        $dispatcher->addListener('bar', function (Event $event) {});
-        $dispatcher->dispatch('foo');
-        $this->assertSame($dispatcher, $tdispatcher);
-        $this->assertCount(2, $dispatcher->getCalledListeners());
-    }
-
-    public function testLogger()
-    {
-        $logger = $this->getMock('Psr\Log\LoggerInterface');
-
-        $dispatcher = new EventDispatcher();
-        $tdispatcher = new TraceableEventDispatcher($dispatcher, new Stopwatch(), $logger);
-        $tdispatcher->addListener('foo', $listener1 = function () {; });
-        $tdispatcher->addListener('foo', $listener2 = function () {; });
-
-        $logger->expects($this->at(0))->method('debug')->with('Notified event "foo" to listener "closure".');
-        $logger->expects($this->at(1))->method('debug')->with('Notified event "foo" to listener "closure".');
-
-        $tdispatcher->dispatch('foo');
-    }
-
-    public function testLoggerWithStoppedEvent()
-    {
-        $logger = $this->getMock('Psr\Log\LoggerInterface');
-
-        $dispatcher = new EventDispatcher();
-        $tdispatcher = new TraceableEventDispatcher($dispatcher, new Stopwatch(), $logger);
-        $tdispatcher->addListener('foo', $listener1 = function (Event $event) { $event->stopPropagation(); });
-        $tdispatcher->addListener('foo', $listener2 = function () {; });
-
-        $logger->expects($this->at(0))->method('debug')->with('Notified event "foo" to listener "closure".');
-        $logger->expects($this->at(1))->method('debug')->with('Listener "closure" stopped propagation of the event "foo".');
-        $logger->expects($this->at(2))->method('debug')->with('Listener "closure" was not called for event "foo".');
-
-        $tdispatcher->dispatch('foo');
-    }
-
-    public function testDispatchCallListeners()
-    {
-        $called = array();
-
-        $dispatcher = new EventDispatcher();
-        $tdispatcher = new TraceableEventDispatcher($dispatcher, new Stopwatch());
-        $tdispatcher->addListener('foo', $listener1 = function () use (&$called) { $called[] = 'foo1'; });
-        $tdispatcher->addListener('foo', $listener2 = function () use (&$called) { $called[] = 'foo2'; });
-
-        $tdispatcher->dispatch('foo');
-
-        $this->assertEquals(array('foo1', 'foo2'), $called);
-    }
-
-    public function testDispatchNested()
-    {
-        $dispatcher = new TraceableEventDispatcher(new EventDispatcher(), new Stopwatch());
-        $loop = 1;
-        $dispatcher->addListener('foo', $listener1 = function () use ($dispatcher, &$loop) {
-            ++$loop;
-            if (2 == $loop) {
-                $dispatcher->dispatch('foo');
-            }
-        });
-
-        $dispatcher->dispatch('foo');
-    }
-
-    public function testDispatchReusedEventNested()
-    {
-        $nestedCall = false;
-        $dispatcher = new TraceableEventDispatcher(new EventDispatcher(), new Stopwatch());
-        $dispatcher->addListener('foo', function (Event $e) use ($dispatcher) {
-            $dispatcher->dispatch('bar', $e);
-        });
-        $dispatcher->addListener('bar', function (Event $e) use (&$nestedCall) {
-            $nestedCall = true;
-        });
-
-        $this->assertFalse($nestedCall);
-        $dispatcher->dispatch('foo');
-        $this->assertTrue($nestedCall);
-    }
-
-    public function testListenerCanRemoveItselfWhenExecuted()
-    {
-        $eventDispatcher = new TraceableEventDispatcher(new EventDispatcher(), new Stopwatch());
-        $listener1 = function ($event, $eventName, EventDispatcherInterface $dispatcher) use (&$listener1) {
-            $dispatcher->removeListener('foo', $listener1);
-        };
-        $eventDispatcher->addListener('foo', $listener1);
-        $eventDispatcher->addListener('foo', function () {});
-        $eventDispatcher->dispatch('foo');
-
-        $this->assertCount(1, $eventDispatcher->getListeners('foo'), 'expected listener1 to be removed');
-    }
-}
-
-class EventSubscriber implements EventSubscriberInterface
-{
-    public static function getSubscribedEvents()
-    {
-        return array('foo' => 'call');
-    }
-}
diff --git a/vendor/symfony/event-dispatcher/Tests/DependencyInjection/RegisterListenersPassTest.php b/vendor/symfony/event-dispatcher/Tests/DependencyInjection/RegisterListenersPassTest.php
deleted file mode 100644
index 0fdd637..0000000
--- a/vendor/symfony/event-dispatcher/Tests/DependencyInjection/RegisterListenersPassTest.php
+++ /dev/null
@@ -1,200 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\EventDispatcher\Tests\DependencyInjection;
-
-use Symfony\Component\DependencyInjection\ContainerBuilder;
-use Symfony\Component\EventDispatcher\DependencyInjection\RegisterListenersPass;
-
-class RegisterListenersPassTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * Tests that event subscribers not implementing EventSubscriberInterface
-     * trigger an exception.
-     *
-     * @expectedException \InvalidArgumentException
-     */
-    public function testEventSubscriberWithoutInterface()
-    {
-        // one service, not implementing any interface
-        $services = array(
-            'my_event_subscriber' => array(0 => array()),
-        );
-
-        $definition = $this->getMock('Symfony\Component\DependencyInjection\Definition');
-        $definition->expects($this->atLeastOnce())
-            ->method('isPublic')
-            ->will($this->returnValue(true));
-        $definition->expects($this->atLeastOnce())
-            ->method('getClass')
-            ->will($this->returnValue('stdClass'));
-
-        $builder = $this->getMock(
-            'Symfony\Component\DependencyInjection\ContainerBuilder',
-            array('hasDefinition', 'findTaggedServiceIds', 'getDefinition')
-        );
-        $builder->expects($this->any())
-            ->method('hasDefinition')
-            ->will($this->returnValue(true));
-
-        // We don't test kernel.event_listener here
-        $builder->expects($this->atLeastOnce())
-            ->method('findTaggedServiceIds')
-            ->will($this->onConsecutiveCalls(array(), $services));
-
-        $builder->expects($this->atLeastOnce())
-            ->method('getDefinition')
-            ->will($this->returnValue($definition));
-
-        $registerListenersPass = new RegisterListenersPass();
-        $registerListenersPass->process($builder);
-    }
-
-    public function testValidEventSubscriber()
-    {
-        $services = array(
-            'my_event_subscriber' => array(0 => array()),
-        );
-
-        $definition = $this->getMock('Symfony\Component\DependencyInjection\Definition');
-        $definition->expects($this->atLeastOnce())
-            ->method('isPublic')
-            ->will($this->returnValue(true));
-        $definition->expects($this->atLeastOnce())
-            ->method('getClass')
-            ->will($this->returnValue('Symfony\Component\EventDispatcher\Tests\DependencyInjection\SubscriberService'));
-
-        $builder = $this->getMock(
-            'Symfony\Component\DependencyInjection\ContainerBuilder',
-            array('hasDefinition', 'findTaggedServiceIds', 'getDefinition', 'findDefinition')
-        );
-        $builder->expects($this->any())
-            ->method('hasDefinition')
-            ->will($this->returnValue(true));
-
-        // We don't test kernel.event_listener here
-        $builder->expects($this->atLeastOnce())
-            ->method('findTaggedServiceIds')
-            ->will($this->onConsecutiveCalls(array(), $services));
-
-        $builder->expects($this->atLeastOnce())
-            ->method('getDefinition')
-            ->will($this->returnValue($definition));
-
-        $builder->expects($this->atLeastOnce())
-            ->method('findDefinition')
-            ->will($this->returnValue($definition));
-
-        $registerListenersPass = new RegisterListenersPass();
-        $registerListenersPass->process($builder);
-    }
-
-    /**
-     * @expectedException \InvalidArgumentException
-     * @expectedExceptionMessage The service "foo" must be public as event listeners are lazy-loaded.
-     */
-    public function testPrivateEventListener()
-    {
-        $container = new ContainerBuilder();
-        $container->register('foo', 'stdClass')->setPublic(false)->addTag('kernel.event_listener', array());
-        $container->register('event_dispatcher', 'stdClass');
-
-        $registerListenersPass = new RegisterListenersPass();
-        $registerListenersPass->process($container);
-    }
-
-    /**
-     * @expectedException \InvalidArgumentException
-     * @expectedExceptionMessage The service "foo" must be public as event subscribers are lazy-loaded.
-     */
-    public function testPrivateEventSubscriber()
-    {
-        $container = new ContainerBuilder();
-        $container->register('foo', 'stdClass')->setPublic(false)->addTag('kernel.event_subscriber', array());
-        $container->register('event_dispatcher', 'stdClass');
-
-        $registerListenersPass = new RegisterListenersPass();
-        $registerListenersPass->process($container);
-    }
-
-    /**
-     * @expectedException \InvalidArgumentException
-     * @expectedExceptionMessage The service "foo" must not be abstract as event listeners are lazy-loaded.
-     */
-    public function testAbstractEventListener()
-    {
-        $container = new ContainerBuilder();
-        $container->register('foo', 'stdClass')->setAbstract(true)->addTag('kernel.event_listener', array());
-        $container->register('event_dispatcher', 'stdClass');
-
-        $registerListenersPass = new RegisterListenersPass();
-        $registerListenersPass->process($container);
-    }
-
-    /**
-     * @expectedException \InvalidArgumentException
-     * @expectedExceptionMessage The service "foo" must not be abstract as event subscribers are lazy-loaded.
-     */
-    public function testAbstractEventSubscriber()
-    {
-        $container = new ContainerBuilder();
-        $container->register('foo', 'stdClass')->setAbstract(true)->addTag('kernel.event_subscriber', array());
-        $container->register('event_dispatcher', 'stdClass');
-
-        $registerListenersPass = new RegisterListenersPass();
-        $registerListenersPass->process($container);
-    }
-
-    public function testEventSubscriberResolvableClassName()
-    {
-        $container = new ContainerBuilder();
-
-        $container->setParameter('subscriber.class', 'Symfony\Component\EventDispatcher\Tests\DependencyInjection\SubscriberService');
-        $container->register('foo', '%subscriber.class%')->addTag('kernel.event_subscriber', array());
-        $container->register('event_dispatcher', 'stdClass');
-
-        $registerListenersPass = new RegisterListenersPass();
-        $registerListenersPass->process($container);
-
-        $definition = $container->getDefinition('event_dispatcher');
-        $expected_calls = array(
-            array(
-                'addSubscriberService',
-                array(
-                    'foo',
-                    'Symfony\Component\EventDispatcher\Tests\DependencyInjection\SubscriberService',
-                ),
-            ),
-        );
-        $this->assertSame($expected_calls, $definition->getMethodCalls());
-    }
-
-    /**
-     * @expectedException \InvalidArgumentException
-     * @expectedExceptionMessage You have requested a non-existent parameter "subscriber.class"
-     */
-    public function testEventSubscriberUnresolvableClassName()
-    {
-        $container = new ContainerBuilder();
-        $container->register('foo', '%subscriber.class%')->addTag('kernel.event_subscriber', array());
-        $container->register('event_dispatcher', 'stdClass');
-
-        $registerListenersPass = new RegisterListenersPass();
-        $registerListenersPass->process($container);
-    }
-}
-
-class SubscriberService implements \Symfony\Component\EventDispatcher\EventSubscriberInterface
-{
-    public static function getSubscribedEvents()
-    {
-    }
-}
diff --git a/vendor/symfony/event-dispatcher/Tests/EventDispatcherTest.php b/vendor/symfony/event-dispatcher/Tests/EventDispatcherTest.php
deleted file mode 100644
index 5faa5c8..0000000
--- a/vendor/symfony/event-dispatcher/Tests/EventDispatcherTest.php
+++ /dev/null
@@ -1,22 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\EventDispatcher\Tests;
-
-use Symfony\Component\EventDispatcher\EventDispatcher;
-
-class EventDispatcherTest extends AbstractEventDispatcherTest
-{
-    protected function createEventDispatcher()
-    {
-        return new EventDispatcher();
-    }
-}
diff --git a/vendor/symfony/event-dispatcher/Tests/EventTest.php b/vendor/symfony/event-dispatcher/Tests/EventTest.php
deleted file mode 100644
index 9a82267..0000000
--- a/vendor/symfony/event-dispatcher/Tests/EventTest.php
+++ /dev/null
@@ -1,96 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\EventDispatcher\Tests;
-
-use Symfony\Component\EventDispatcher\Event;
-use Symfony\Component\EventDispatcher\EventDispatcher;
-
-/**
- * Test class for Event.
- */
-class EventTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @var \Symfony\Component\EventDispatcher\Event
-     */
-    protected $event;
-
-    /**
-     * @var \Symfony\Component\EventDispatcher\EventDispatcher
-     */
-    protected $dispatcher;
-
-    /**
-     * Sets up the fixture, for example, opens a network connection.
-     * This method is called before a test is executed.
-     */
-    protected function setUp()
-    {
-        $this->event = new Event();
-        $this->dispatcher = new EventDispatcher();
-    }
-
-    /**
-     * Tears down the fixture, for example, closes a network connection.
-     * This method is called after a test is executed.
-     */
-    protected function tearDown()
-    {
-        $this->event = null;
-        $this->dispatcher = null;
-    }
-
-    public function testIsPropagationStopped()
-    {
-        $this->assertFalse($this->event->isPropagationStopped());
-    }
-
-    public function testStopPropagationAndIsPropagationStopped()
-    {
-        $this->event->stopPropagation();
-        $this->assertTrue($this->event->isPropagationStopped());
-    }
-
-    /**
-     * @group legacy
-     */
-    public function testLegacySetDispatcher()
-    {
-        $this->event->setDispatcher($this->dispatcher);
-        $this->assertSame($this->dispatcher, $this->event->getDispatcher());
-    }
-
-    /**
-     * @group legacy
-     */
-    public function testLegacyGetDispatcher()
-    {
-        $this->assertNull($this->event->getDispatcher());
-    }
-
-    /**
-     * @group legacy
-     */
-    public function testLegacyGetName()
-    {
-        $this->assertNull($this->event->getName());
-    }
-
-    /**
-     * @group legacy
-     */
-    public function testLegacySetName()
-    {
-        $this->event->setName('foo');
-        $this->assertEquals('foo', $this->event->getName());
-    }
-}
diff --git a/vendor/symfony/event-dispatcher/Tests/GenericEventTest.php b/vendor/symfony/event-dispatcher/Tests/GenericEventTest.php
deleted file mode 100644
index aebd82d..0000000
--- a/vendor/symfony/event-dispatcher/Tests/GenericEventTest.php
+++ /dev/null
@@ -1,139 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\EventDispatcher\Tests;
-
-use Symfony\Component\EventDispatcher\GenericEvent;
-
-/**
- * Test class for Event.
- */
-class GenericEventTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @var GenericEvent
-     */
-    private $event;
-
-    private $subject;
-
-    /**
-     * Prepares the environment before running a test.
-     */
-    protected function setUp()
-    {
-        parent::setUp();
-
-        $this->subject = new \stdClass();
-        $this->event = new GenericEvent($this->subject, array('name' => 'Event'));
-    }
-
-    /**
-     * Cleans up the environment after running a test.
-     */
-    protected function tearDown()
-    {
-        $this->subject = null;
-        $this->event = null;
-
-        parent::tearDown();
-    }
-
-    public function testConstruct()
-    {
-        $this->assertEquals($this->event, new GenericEvent($this->subject, array('name' => 'Event')));
-    }
-
-    /**
-     * Tests Event->getArgs().
-     */
-    public function testGetArguments()
-    {
-        // test getting all
-        $this->assertSame(array('name' => 'Event'), $this->event->getArguments());
-    }
-
-    public function testSetArguments()
-    {
-        $result = $this->event->setArguments(array('foo' => 'bar'));
-        $this->assertAttributeSame(array('foo' => 'bar'), 'arguments', $this->event);
-        $this->assertSame($this->event, $result);
-    }
-
-    public function testSetArgument()
-    {
-        $result = $this->event->setArgument('foo2', 'bar2');
-        $this->assertAttributeSame(array('name' => 'Event', 'foo2' => 'bar2'), 'arguments', $this->event);
-        $this->assertEquals($this->event, $result);
-    }
-
-    public function testGetArgument()
-    {
-        // test getting key
-        $this->assertEquals('Event', $this->event->getArgument('name'));
-    }
-
-    /**
-     * @expectedException \InvalidArgumentException
-     */
-    public function testGetArgException()
-    {
-        $this->event->getArgument('nameNotExist');
-    }
-
-    public function testOffsetGet()
-    {
-        // test getting key
-        $this->assertEquals('Event', $this->event['name']);
-
-        // test getting invalid arg
-        $this->setExpectedException('InvalidArgumentException');
-        $this->assertFalse($this->event['nameNotExist']);
-    }
-
-    public function testOffsetSet()
-    {
-        $this->event['foo2'] = 'bar2';
-        $this->assertAttributeSame(array('name' => 'Event', 'foo2' => 'bar2'), 'arguments', $this->event);
-    }
-
-    public function testOffsetUnset()
-    {
-        unset($this->event['name']);
-        $this->assertAttributeSame(array(), 'arguments', $this->event);
-    }
-
-    public function testOffsetIsset()
-    {
-        $this->assertTrue(isset($this->event['name']));
-        $this->assertFalse(isset($this->event['nameNotExist']));
-    }
-
-    public function testHasArgument()
-    {
-        $this->assertTrue($this->event->hasArgument('name'));
-        $this->assertFalse($this->event->hasArgument('nameNotExist'));
-    }
-
-    public function testGetSubject()
-    {
-        $this->assertSame($this->subject, $this->event->getSubject());
-    }
-
-    public function testHasIterator()
-    {
-        $data = array();
-        foreach ($this->event as $key => $value) {
-            $data[$key] = $value;
-        }
-        $this->assertEquals(array('name' => 'Event'), $data);
-    }
-}
diff --git a/vendor/symfony/event-dispatcher/Tests/ImmutableEventDispatcherTest.php b/vendor/symfony/event-dispatcher/Tests/ImmutableEventDispatcherTest.php
deleted file mode 100644
index 80a7e43..0000000
--- a/vendor/symfony/event-dispatcher/Tests/ImmutableEventDispatcherTest.php
+++ /dev/null
@@ -1,105 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\EventDispatcher\Tests;
-
-use Symfony\Component\EventDispatcher\Event;
-use Symfony\Component\EventDispatcher\ImmutableEventDispatcher;
-
-/**
- * @author Bernhard Schussek <bschussek@gmail.com>
- */
-class ImmutableEventDispatcherTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @var \PHPUnit_Framework_MockObject_MockObject
-     */
-    private $innerDispatcher;
-
-    /**
-     * @var ImmutableEventDispatcher
-     */
-    private $dispatcher;
-
-    protected function setUp()
-    {
-        $this->innerDispatcher = $this->getMock('Symfony\Component\EventDispatcher\EventDispatcherInterface');
-        $this->dispatcher = new ImmutableEventDispatcher($this->innerDispatcher);
-    }
-
-    public function testDispatchDelegates()
-    {
-        $event = new Event();
-
-        $this->innerDispatcher->expects($this->once())
-            ->method('dispatch')
-            ->with('event', $event)
-            ->will($this->returnValue('result'));
-
-        $this->assertSame('result', $this->dispatcher->dispatch('event', $event));
-    }
-
-    public function testGetListenersDelegates()
-    {
-        $this->innerDispatcher->expects($this->once())
-            ->method('getListeners')
-            ->with('event')
-            ->will($this->returnValue('result'));
-
-        $this->assertSame('result', $this->dispatcher->getListeners('event'));
-    }
-
-    public function testHasListenersDelegates()
-    {
-        $this->innerDispatcher->expects($this->once())
-            ->method('hasListeners')
-            ->with('event')
-            ->will($this->returnValue('result'));
-
-        $this->assertSame('result', $this->dispatcher->hasListeners('event'));
-    }
-
-    /**
-     * @expectedException \BadMethodCallException
-     */
-    public function testAddListenerDisallowed()
-    {
-        $this->dispatcher->addListener('event', function () { return 'foo'; });
-    }
-
-    /**
-     * @expectedException \BadMethodCallException
-     */
-    public function testAddSubscriberDisallowed()
-    {
-        $subscriber = $this->getMock('Symfony\Component\EventDispatcher\EventSubscriberInterface');
-
-        $this->dispatcher->addSubscriber($subscriber);
-    }
-
-    /**
-     * @expectedException \BadMethodCallException
-     */
-    public function testRemoveListenerDisallowed()
-    {
-        $this->dispatcher->removeListener('event', function () { return 'foo'; });
-    }
-
-    /**
-     * @expectedException \BadMethodCallException
-     */
-    public function testRemoveSubscriberDisallowed()
-    {
-        $subscriber = $this->getMock('Symfony\Component\EventDispatcher\EventSubscriberInterface');
-
-        $this->dispatcher->removeSubscriber($subscriber);
-    }
-}
diff --git a/vendor/symfony/http-foundation/Tests/AcceptHeaderItemTest.php b/vendor/symfony/http-foundation/Tests/AcceptHeaderItemTest.php
deleted file mode 100644
index e4f354f..0000000
--- a/vendor/symfony/http-foundation/Tests/AcceptHeaderItemTest.php
+++ /dev/null
@@ -1,112 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpFoundation\Tests;
-
-use Symfony\Component\HttpFoundation\AcceptHeaderItem;
-
-class AcceptHeaderItemTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @dataProvider provideFromStringData
-     */
-    public function testFromString($string, $value, array $attributes)
-    {
-        $item = AcceptHeaderItem::fromString($string);
-        $this->assertEquals($value, $item->getValue());
-        $this->assertEquals($attributes, $item->getAttributes());
-    }
-
-    public function provideFromStringData()
-    {
-        return array(
-            array(
-                'text/html',
-                'text/html', array(),
-            ),
-            array(
-                '"this;should,not=matter"',
-                'this;should,not=matter', array(),
-            ),
-            array(
-                "text/plain; charset=utf-8;param=\"this;should,not=matter\";\tfootnotes=true",
-                'text/plain', array('charset' => 'utf-8', 'param' => 'this;should,not=matter', 'footnotes' => 'true'),
-            ),
-            array(
-                '"this;should,not=matter";charset=utf-8',
-                'this;should,not=matter', array('charset' => 'utf-8'),
-            ),
-        );
-    }
-
-    /**
-     * @dataProvider provideToStringData
-     */
-    public function testToString($value, array $attributes, $string)
-    {
-        $item = new AcceptHeaderItem($value, $attributes);
-        $this->assertEquals($string, (string) $item);
-    }
-
-    public function provideToStringData()
-    {
-        return array(
-            array(
-                'text/html', array(),
-                'text/html',
-            ),
-            array(
-                'text/plain', array('charset' => 'utf-8', 'param' => 'this;should,not=matter', 'footnotes' => 'true'),
-                'text/plain;charset=utf-8;param="this;should,not=matter";footnotes=true',
-            ),
-        );
-    }
-
-    public function testValue()
-    {
-        $item = new AcceptHeaderItem('value', array());
-        $this->assertEquals('value', $item->getValue());
-
-        $item->setValue('new value');
-        $this->assertEquals('new value', $item->getValue());
-
-        $item->setValue(1);
-        $this->assertEquals('1', $item->getValue());
-    }
-
-    public function testQuality()
-    {
-        $item = new AcceptHeaderItem('value', array());
-        $this->assertEquals(1.0, $item->getQuality());
-
-        $item->setQuality(0.5);
-        $this->assertEquals(0.5, $item->getQuality());
-
-        $item->setAttribute('q', 0.75);
-        $this->assertEquals(0.75, $item->getQuality());
-        $this->assertFalse($item->hasAttribute('q'));
-    }
-
-    public function testAttribute()
-    {
-        $item = new AcceptHeaderItem('value', array());
-        $this->assertEquals(array(), $item->getAttributes());
-        $this->assertFalse($item->hasAttribute('test'));
-        $this->assertNull($item->getAttribute('test'));
-        $this->assertEquals('default', $item->getAttribute('test', 'default'));
-
-        $item->setAttribute('test', 'value');
-        $this->assertEquals(array('test' => 'value'), $item->getAttributes());
-        $this->assertTrue($item->hasAttribute('test'));
-        $this->assertEquals('value', $item->getAttribute('test'));
-        $this->assertEquals('value', $item->getAttribute('test', 'default'));
-    }
-}
diff --git a/vendor/symfony/http-foundation/Tests/AcceptHeaderTest.php b/vendor/symfony/http-foundation/Tests/AcceptHeaderTest.php
deleted file mode 100644
index 9b3b58e..0000000
--- a/vendor/symfony/http-foundation/Tests/AcceptHeaderTest.php
+++ /dev/null
@@ -1,102 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpFoundation\Tests;
-
-use Symfony\Component\HttpFoundation\AcceptHeader;
-use Symfony\Component\HttpFoundation\AcceptHeaderItem;
-
-class AcceptHeaderTest extends \PHPUnit_Framework_TestCase
-{
-    public function testFirst()
-    {
-        $header = AcceptHeader::fromString('text/plain; q=0.5, text/html, text/x-dvi; q=0.8, text/x-c');
-        $this->assertSame('text/html', $header->first()->getValue());
-    }
-
-    /**
-     * @dataProvider provideFromStringData
-     */
-    public function testFromString($string, array $items)
-    {
-        $header = AcceptHeader::fromString($string);
-        $parsed = array_values($header->all());
-        // reset index since the fixtures don't have them set
-        foreach ($parsed as $item) {
-            $item->setIndex(0);
-        }
-        $this->assertEquals($items, $parsed);
-    }
-
-    public function provideFromStringData()
-    {
-        return array(
-            array('', array()),
-            array('gzip', array(new AcceptHeaderItem('gzip'))),
-            array('gzip,deflate,sdch', array(new AcceptHeaderItem('gzip'), new AcceptHeaderItem('deflate'), new AcceptHeaderItem('sdch'))),
-            array("gzip, deflate\t,sdch", array(new AcceptHeaderItem('gzip'), new AcceptHeaderItem('deflate'), new AcceptHeaderItem('sdch'))),
-            array('"this;should,not=matter"', array(new AcceptHeaderItem('this;should,not=matter'))),
-        );
-    }
-
-    /**
-     * @dataProvider provideToStringData
-     */
-    public function testToString(array $items, $string)
-    {
-        $header = new AcceptHeader($items);
-        $this->assertEquals($string, (string) $header);
-    }
-
-    public function provideToStringData()
-    {
-        return array(
-            array(array(), ''),
-            array(array(new AcceptHeaderItem('gzip')), 'gzip'),
-            array(array(new AcceptHeaderItem('gzip'), new AcceptHeaderItem('deflate'), new AcceptHeaderItem('sdch')), 'gzip,deflate,sdch'),
-            array(array(new AcceptHeaderItem('this;should,not=matter')), 'this;should,not=matter'),
-        );
-    }
-
-    /**
-     * @dataProvider provideFilterData
-     */
-    public function testFilter($string, $filter, array $values)
-    {
-        $header = AcceptHeader::fromString($string)->filter($filter);
-        $this->assertEquals($values, array_keys($header->all()));
-    }
-
-    public function provideFilterData()
-    {
-        return array(
-            array('fr-FR,fr;q=0.8,en-US;q=0.6,en;q=0.4', '/fr.*/', array('fr-FR', 'fr')),
-        );
-    }
-
-    /**
-     * @dataProvider provideSortingData
-     */
-    public function testSorting($string, array $values)
-    {
-        $header = AcceptHeader::fromString($string);
-        $this->assertEquals($values, array_keys($header->all()));
-    }
-
-    public function provideSortingData()
-    {
-        return array(
-            'quality has priority' => array('*;q=0.3,ISO-8859-1,utf-8;q=0.7',  array('ISO-8859-1', 'utf-8', '*')),
-            'order matters when q is equal' => array('*;q=0.3,ISO-8859-1;q=0.7,utf-8;q=0.7',  array('ISO-8859-1', 'utf-8', '*')),
-            'order matters when q is equal2' => array('*;q=0.3,utf-8;q=0.7,ISO-8859-1;q=0.7',  array('utf-8', 'ISO-8859-1', '*')),
-        );
-    }
-}
diff --git a/vendor/symfony/http-foundation/Tests/ApacheRequestTest.php b/vendor/symfony/http-foundation/Tests/ApacheRequestTest.php
deleted file mode 100644
index 6845118..0000000
--- a/vendor/symfony/http-foundation/Tests/ApacheRequestTest.php
+++ /dev/null
@@ -1,92 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpFoundation\Tests;
-
-use Symfony\Component\HttpFoundation\ApacheRequest;
-
-class ApacheRequestTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @dataProvider provideServerVars
-     */
-    public function testUriMethods($server, $expectedRequestUri, $expectedBaseUrl, $expectedPathInfo)
-    {
-        $request = new ApacheRequest();
-        $request->server->replace($server);
-
-        $this->assertEquals($expectedRequestUri, $request->getRequestUri(), '->getRequestUri() is correct');
-        $this->assertEquals($expectedBaseUrl, $request->getBaseUrl(), '->getBaseUrl() is correct');
-        $this->assertEquals($expectedPathInfo, $request->getPathInfo(), '->getPathInfo() is correct');
-    }
-
-    public function provideServerVars()
-    {
-        return array(
-            array(
-                array(
-                    'REQUEST_URI' => '/foo/app_dev.php/bar',
-                    'SCRIPT_NAME' => '/foo/app_dev.php',
-                    'PATH_INFO' => '/bar',
-                ),
-                '/foo/app_dev.php/bar',
-                '/foo/app_dev.php',
-                '/bar',
-            ),
-            array(
-                array(
-                    'REQUEST_URI' => '/foo/bar',
-                    'SCRIPT_NAME' => '/foo/app_dev.php',
-                ),
-                '/foo/bar',
-                '/foo',
-                '/bar',
-            ),
-            array(
-                array(
-                    'REQUEST_URI' => '/app_dev.php/foo/bar',
-                    'SCRIPT_NAME' => '/app_dev.php',
-                    'PATH_INFO' => '/foo/bar',
-                ),
-                '/app_dev.php/foo/bar',
-                '/app_dev.php',
-                '/foo/bar',
-            ),
-            array(
-                array(
-                    'REQUEST_URI' => '/foo/bar',
-                    'SCRIPT_NAME' => '/app_dev.php',
-                ),
-                '/foo/bar',
-                '',
-                '/foo/bar',
-            ),
-            array(
-                array(
-                    'REQUEST_URI' => '/app_dev.php',
-                    'SCRIPT_NAME' => '/app_dev.php',
-                ),
-                '/app_dev.php',
-                '/app_dev.php',
-                '/',
-            ),
-            array(
-                array(
-                    'REQUEST_URI' => '/',
-                    'SCRIPT_NAME' => '/app_dev.php',
-                ),
-                '/',
-                '',
-                '/',
-            ),
-        );
-    }
-}
diff --git a/vendor/symfony/http-foundation/Tests/BinaryFileResponseTest.php b/vendor/symfony/http-foundation/Tests/BinaryFileResponseTest.php
deleted file mode 100644
index 550014d..0000000
--- a/vendor/symfony/http-foundation/Tests/BinaryFileResponseTest.php
+++ /dev/null
@@ -1,250 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpFoundation\Tests;
-
-use Symfony\Component\HttpFoundation\BinaryFileResponse;
-use Symfony\Component\HttpFoundation\Request;
-use Symfony\Component\HttpFoundation\ResponseHeaderBag;
-use Symfony\Component\HttpFoundation\Tests\File\FakeFile;
-
-class BinaryFileResponseTest extends ResponseTestCase
-{
-    public function testConstruction()
-    {
-        $file = __DIR__.'/../README.md';
-        $response = new BinaryFileResponse($file, 404, array('X-Header' => 'Foo'), true, null, true, true);
-        $this->assertEquals(404, $response->getStatusCode());
-        $this->assertEquals('Foo', $response->headers->get('X-Header'));
-        $this->assertTrue($response->headers->has('ETag'));
-        $this->assertTrue($response->headers->has('Last-Modified'));
-        $this->assertFalse($response->headers->has('Content-Disposition'));
-
-        $response = BinaryFileResponse::create($file, 404, array(), true, ResponseHeaderBag::DISPOSITION_INLINE);
-        $this->assertEquals(404, $response->getStatusCode());
-        $this->assertFalse($response->headers->has('ETag'));
-        $this->assertEquals('inline; filename="README.md"', $response->headers->get('Content-Disposition'));
-    }
-
-    /**
-     * @expectedException \LogicException
-     */
-    public function testSetContent()
-    {
-        $response = new BinaryFileResponse(__FILE__);
-        $response->setContent('foo');
-    }
-
-    public function testGetContent()
-    {
-        $response = new BinaryFileResponse(__FILE__);
-        $this->assertFalse($response->getContent());
-    }
-
-    /**
-     * @dataProvider provideRanges
-     */
-    public function testRequests($requestRange, $offset, $length, $responseRange)
-    {
-        $response = BinaryFileResponse::create(__DIR__.'/File/Fixtures/test.gif', 200, array('Content-Type' => 'application/octet-stream'))->setAutoEtag();
-
-        // do a request to get the ETag
-        $request = Request::create('/');
-        $response->prepare($request);
-        $etag = $response->headers->get('ETag');
-
-        // prepare a request for a range of the testing file
-        $request = Request::create('/');
-        $request->headers->set('If-Range', $etag);
-        $request->headers->set('Range', $requestRange);
-
-        $file = fopen(__DIR__.'/File/Fixtures/test.gif', 'r');
-        fseek($file, $offset);
-        $data = fread($file, $length);
-        fclose($file);
-
-        $this->expectOutputString($data);
-        $response = clone $response;
-        $response->prepare($request);
-        $response->sendContent();
-
-        $this->assertEquals(206, $response->getStatusCode());
-        $this->assertEquals($responseRange, $response->headers->get('Content-Range'));
-    }
-
-    public function provideRanges()
-    {
-        return array(
-            array('bytes=1-4', 1, 4, 'bytes 1-4/35'),
-            array('bytes=-5', 30, 5, 'bytes 30-34/35'),
-            array('bytes=30-', 30, 5, 'bytes 30-34/35'),
-            array('bytes=30-30', 30, 1, 'bytes 30-30/35'),
-            array('bytes=30-34', 30, 5, 'bytes 30-34/35'),
-        );
-    }
-
-    /**
-     * @dataProvider provideFullFileRanges
-     */
-    public function testFullFileRequests($requestRange)
-    {
-        $response = BinaryFileResponse::create(__DIR__.'/File/Fixtures/test.gif', 200, array('Content-Type' => 'application/octet-stream'))->setAutoEtag();
-
-        // prepare a request for a range of the testing file
-        $request = Request::create('/');
-        $request->headers->set('Range', $requestRange);
-
-        $file = fopen(__DIR__.'/File/Fixtures/test.gif', 'r');
-        $data = fread($file, 35);
-        fclose($file);
-
-        $this->expectOutputString($data);
-        $response = clone $response;
-        $response->prepare($request);
-        $response->sendContent();
-
-        $this->assertEquals(200, $response->getStatusCode());
-    }
-
-    public function provideFullFileRanges()
-    {
-        return array(
-            array('bytes=0-'),
-            array('bytes=0-34'),
-            array('bytes=-35'),
-            // Syntactical invalid range-request should also return the full resource
-            array('bytes=20-10'),
-            array('bytes=50-40'),
-        );
-    }
-
-    /**
-     * @dataProvider provideInvalidRanges
-     */
-    public function testInvalidRequests($requestRange)
-    {
-        $response = BinaryFileResponse::create(__DIR__.'/File/Fixtures/test.gif', 200, array('Content-Type' => 'application/octet-stream'))->setAutoEtag();
-
-        // prepare a request for a range of the testing file
-        $request = Request::create('/');
-        $request->headers->set('Range', $requestRange);
-
-        $response = clone $response;
-        $response->prepare($request);
-        $response->sendContent();
-
-        $this->assertEquals(416, $response->getStatusCode());
-        #$this->assertEquals('', $response->headers->get('Content-Range'));
-    }
-
-    public function provideInvalidRanges()
-    {
-        return array(
-            array('bytes=-40'),
-            array('bytes=30-40'),
-        );
-    }
-
-    public function testXSendfile()
-    {
-        $request = Request::create('/');
-        $request->headers->set('X-Sendfile-Type', 'X-Sendfile');
-
-        BinaryFileResponse::trustXSendfileTypeHeader();
-        $response = BinaryFileResponse::create(__DIR__.'/../README.md', 200, array('Content-Type' => 'application/octet-stream'));
-        $response->prepare($request);
-
-        $this->expectOutputString('');
-        $response->sendContent();
-
-        $this->assertContains('README.md', $response->headers->get('X-Sendfile'));
-    }
-
-    /**
-     * @dataProvider getSampleXAccelMappings
-     */
-    public function testXAccelMapping($realpath, $mapping, $virtual)
-    {
-        $request = Request::create('/');
-        $request->headers->set('X-Sendfile-Type', 'X-Accel-Redirect');
-        $request->headers->set('X-Accel-Mapping', $mapping);
-
-        $file = new FakeFile($realpath, __DIR__.'/File/Fixtures/test');
-
-        BinaryFileResponse::trustXSendfileTypeHeader();
-        $response = new BinaryFileResponse($file, 200, array('Content-Type' => 'application/octet-stream'));
-        $reflection = new \ReflectionObject($response);
-        $property = $reflection->getProperty('file');
-        $property->setAccessible(true);
-        $property->setValue($response, $file);
-
-        $response->prepare($request);
-        $this->assertEquals($virtual, $response->headers->get('X-Accel-Redirect'));
-    }
-
-    public function testDeleteFileAfterSend()
-    {
-        $request = Request::create('/');
-
-        $path = __DIR__.'/File/Fixtures/to_delete';
-        touch($path);
-        $realPath = realpath($path);
-        $this->assertFileExists($realPath);
-
-        $response = new BinaryFileResponse($realPath, 200, array('Content-Type' => 'application/octet-stream'));
-        $response->deleteFileAfterSend(true);
-
-        $response->prepare($request);
-        $response->sendContent();
-
-        $this->assertFileNotExists($path);
-    }
-
-    public function testAcceptRangeOnUnsafeMethods()
-    {
-        $request = Request::create('/', 'POST');
-        $response = BinaryFileResponse::create(__DIR__.'/File/Fixtures/test.gif', 200, array('Content-Type' => 'application/octet-stream'));
-        $response->prepare($request);
-
-        $this->assertEquals('none', $response->headers->get('Accept-Ranges'));
-    }
-
-    public function testAcceptRangeNotOverriden()
-    {
-        $request = Request::create('/', 'POST');
-        $response = BinaryFileResponse::create(__DIR__.'/File/Fixtures/test.gif', 200, array('Content-Type' => 'application/octet-stream'));
-        $response->headers->set('Accept-Ranges', 'foo');
-        $response->prepare($request);
-
-        $this->assertEquals('foo', $response->headers->get('Accept-Ranges'));
-    }
-
-    public function getSampleXAccelMappings()
-    {
-        return array(
-            array('/var/www/var/www/files/foo.txt', '/var/www/=/files/', '/files/var/www/files/foo.txt'),
-            array('/home/foo/bar.txt', '/var/www/=/files/,/home/foo/=/baz/', '/baz/bar.txt'),
-        );
-    }
-
-    protected function provideResponse()
-    {
-        return new BinaryFileResponse(__DIR__.'/../README.md', 200, array('Content-Type' => 'application/octet-stream'));
-    }
-
-    public static function tearDownAfterClass()
-    {
-        $path = __DIR__.'/../Fixtures/to_delete';
-        if (file_exists($path)) {
-            @unlink($path);
-        }
-    }
-}
diff --git a/vendor/symfony/http-foundation/Tests/ClockMock.php b/vendor/symfony/http-foundation/Tests/ClockMock.php
deleted file mode 100644
index aa954db..0000000
--- a/vendor/symfony/http-foundation/Tests/ClockMock.php
+++ /dev/null
@@ -1,39 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpFoundation;
-
-function time()
-{
-    return Tests\time();
-}
-
-namespace Symfony\Component\HttpFoundation\Tests;
-
-function with_clock_mock($enable = null)
-{
-    static $enabled;
-
-    if (null === $enable) {
-        return $enabled;
-    }
-
-    $enabled = $enable;
-}
-
-function time()
-{
-    if (!with_clock_mock()) {
-        return \time();
-    }
-
-    return $_SERVER['REQUEST_TIME'];
-}
diff --git a/vendor/symfony/http-foundation/Tests/CookieTest.php b/vendor/symfony/http-foundation/Tests/CookieTest.php
deleted file mode 100644
index 378e1c5..0000000
--- a/vendor/symfony/http-foundation/Tests/CookieTest.php
+++ /dev/null
@@ -1,157 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpFoundation\Tests;
-
-use Symfony\Component\HttpFoundation\Cookie;
-
-require_once __DIR__.'/ClockMock.php';
-
-/**
- * CookieTest.
- *
- * @author John Kary <john@johnkary.net>
- * @author Hugo Hamon <hugo.hamon@sensio.com>
- */
-class CookieTest extends \PHPUnit_Framework_TestCase
-{
-    protected function setUp()
-    {
-        with_clock_mock(true);
-    }
-
-    protected function tearDown()
-    {
-        with_clock_mock(false);
-    }
-
-    public function invalidNames()
-    {
-        return array(
-            array(''),
-            array(',MyName'),
-            array(';MyName'),
-            array(' MyName'),
-            array("\tMyName"),
-            array("\rMyName"),
-            array("\nMyName"),
-            array("\013MyName"),
-            array("\014MyName"),
-        );
-    }
-
-    /**
-     * @dataProvider invalidNames
-     * @expectedException \InvalidArgumentException
-     * @covers Symfony\Component\HttpFoundation\Cookie::__construct
-     */
-    public function testInstantiationThrowsExceptionIfCookieNameContainsInvalidCharacters($name)
-    {
-        new Cookie($name);
-    }
-
-    /**
-     * @expectedException \InvalidArgumentException
-     */
-    public function testInvalidExpiration()
-    {
-        $cookie = new Cookie('MyCookie', 'foo', 'bar');
-    }
-
-    /**
-     * @covers Symfony\Component\HttpFoundation\Cookie::getValue
-     */
-    public function testGetValue()
-    {
-        $value = 'MyValue';
-        $cookie = new Cookie('MyCookie', $value);
-
-        $this->assertSame($value, $cookie->getValue(), '->getValue() returns the proper value');
-    }
-
-    public function testGetPath()
-    {
-        $cookie = new Cookie('foo', 'bar');
-
-        $this->assertSame('/', $cookie->getPath(), '->getPath() returns / as the default path');
-    }
-
-    public function testGetExpiresTime()
-    {
-        $cookie = new Cookie('foo', 'bar', 3600);
-
-        $this->assertEquals(3600, $cookie->getExpiresTime(), '->getExpiresTime() returns the expire date');
-    }
-
-    public function testConstructorWithDateTime()
-    {
-        $expire = new \DateTime();
-        $cookie = new Cookie('foo', 'bar', $expire);
-
-        $this->assertEquals($expire->format('U'), $cookie->getExpiresTime(), '->getExpiresTime() returns the expire date');
-    }
-
-    public function testGetExpiresTimeWithStringValue()
-    {
-        $value = '+1 day';
-        $cookie = new Cookie('foo', 'bar', $value);
-        $expire = strtotime($value);
-
-        $this->assertEquals($expire, $cookie->getExpiresTime(), '->getExpiresTime() returns the expire date');
-    }
-
-    public function testGetDomain()
-    {
-        $cookie = new Cookie('foo', 'bar', 3600, '/', '.myfoodomain.com');
-
-        $this->assertEquals('.myfoodomain.com', $cookie->getDomain(), '->getDomain() returns the domain name on which the cookie is valid');
-    }
-
-    public function testIsSecure()
-    {
-        $cookie = new Cookie('foo', 'bar', 3600, '/', '.myfoodomain.com', true);
-
-        $this->assertTrue($cookie->isSecure(), '->isSecure() returns whether the cookie is transmitted over HTTPS');
-    }
-
-    public function testIsHttpOnly()
-    {
-        $cookie = new Cookie('foo', 'bar', 3600, '/', '.myfoodomain.com', false, true);
-
-        $this->assertTrue($cookie->isHttpOnly(), '->isHttpOnly() returns whether the cookie is only transmitted over HTTP');
-    }
-
-    public function testCookieIsNotCleared()
-    {
-        $cookie = new Cookie('foo', 'bar', time() + 3600 * 24);
-
-        $this->assertFalse($cookie->isCleared(), '->isCleared() returns false if the cookie did not expire yet');
-    }
-
-    public function testCookieIsCleared()
-    {
-        $cookie = new Cookie('foo', 'bar', time() - 20);
-
-        $this->assertTrue($cookie->isCleared(), '->isCleared() returns true if the cookie has expired');
-    }
-
-    public function testToString()
-    {
-        $cookie = new Cookie('foo', 'bar', strtotime('Fri, 20-May-2011 15:25:52 GMT'), '/', '.myfoodomain.com', true);
-        $this->assertEquals('foo=bar; expires=Fri, 20-May-2011 15:25:52 GMT; path=/; domain=.myfoodomain.com; secure; httponly', $cookie->__toString(), '->__toString() returns string representation of the cookie');
-
-        $cookie = new Cookie('foo', null, 1, '/admin/', '.myfoodomain.com');
-        $this->assertEquals('foo=deleted; expires='.gmdate('D, d-M-Y H:i:s T', time() - 31536001).'; path=/admin/; domain=.myfoodomain.com; httponly', $cookie->__toString(), '->__toString() returns string representation of a cleared cookie if value is NULL');
-
-        $cookie = new Cookie('foo', 'bar', 0, '/', '');
-        $this->assertEquals('foo=bar; path=/; httponly', $cookie->__toString());
-    }
-}
diff --git a/vendor/symfony/http-foundation/Tests/ExpressionRequestMatcherTest.php b/vendor/symfony/http-foundation/Tests/ExpressionRequestMatcherTest.php
deleted file mode 100644
index fda372f..0000000
--- a/vendor/symfony/http-foundation/Tests/ExpressionRequestMatcherTest.php
+++ /dev/null
@@ -1,68 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpFoundation\Tests;
-
-use Symfony\Component\ExpressionLanguage\ExpressionLanguage;
-use Symfony\Component\HttpFoundation\ExpressionRequestMatcher;
-use Symfony\Component\HttpFoundation\Request;
-
-class ExpressionRequestMatcherTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @expectedException \LogicException
-     */
-    public function testWhenNoExpressionIsSet()
-    {
-        $expressionRequestMatcher = new ExpressionRequestMatcher();
-        $expressionRequestMatcher->matches(new Request());
-    }
-
-    /**
-     * @dataProvider provideExpressions
-     */
-    public function testMatchesWhenParentMatchesIsTrue($expression, $expected)
-    {
-        $request = Request::create('/foo');
-        $expressionRequestMatcher = new ExpressionRequestMatcher();
-
-        $expressionRequestMatcher->setExpression(new ExpressionLanguage(), $expression);
-        $this->assertSame($expected, $expressionRequestMatcher->matches($request));
-    }
-
-    /**
-     * @dataProvider provideExpressions
-     */
-    public function testMatchesWhenParentMatchesIsFalse($expression)
-    {
-        $request = Request::create('/foo');
-        $request->attributes->set('foo', 'foo');
-        $expressionRequestMatcher = new ExpressionRequestMatcher();
-        $expressionRequestMatcher->matchAttribute('foo', 'bar');
-
-        $expressionRequestMatcher->setExpression(new ExpressionLanguage(), $expression);
-        $this->assertFalse($expressionRequestMatcher->matches($request));
-    }
-
-    public function provideExpressions()
-    {
-        return array(
-            array('request.getMethod() == method', true),
-            array('request.getPathInfo() == path', true),
-            array('request.getHost() == host', true),
-            array('request.getClientIp() == ip', true),
-            array('request.attributes.all() == attributes', true),
-            array('request.getMethod() == method && request.getPathInfo() == path && request.getHost() == host && request.getClientIp() == ip &&  request.attributes.all() == attributes', true),
-            array('request.getMethod() != method', false),
-            array('request.getMethod() != method && request.getPathInfo() == path && request.getHost() == host && request.getClientIp() == ip &&  request.attributes.all() == attributes', false),
-        );
-    }
-}
diff --git a/vendor/symfony/http-foundation/Tests/File/FakeFile.php b/vendor/symfony/http-foundation/Tests/File/FakeFile.php
deleted file mode 100644
index c415989..0000000
--- a/vendor/symfony/http-foundation/Tests/File/FakeFile.php
+++ /dev/null
@@ -1,45 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpFoundation\Tests\File;
-
-use Symfony\Component\HttpFoundation\File\File as OrigFile;
-
-class FakeFile extends OrigFile
-{
-    private $realpath;
-
-    public function __construct($realpath, $path)
-    {
-        $this->realpath = $realpath;
-        parent::__construct($path, false);
-    }
-
-    public function isReadable()
-    {
-        return true;
-    }
-
-    public function getRealpath()
-    {
-        return $this->realpath;
-    }
-
-    public function getSize()
-    {
-        return 42;
-    }
-
-    public function getMTime()
-    {
-        return time();
-    }
-}
diff --git a/vendor/symfony/http-foundation/Tests/File/FileTest.php b/vendor/symfony/http-foundation/Tests/File/FileTest.php
deleted file mode 100644
index d216eab..0000000
--- a/vendor/symfony/http-foundation/Tests/File/FileTest.php
+++ /dev/null
@@ -1,179 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpFoundation\Tests\File;
-
-use Symfony\Component\HttpFoundation\File\File;
-use Symfony\Component\HttpFoundation\File\MimeType\MimeTypeGuesser;
-
-class FileTest extends \PHPUnit_Framework_TestCase
-{
-    protected $file;
-
-    public function testGetMimeTypeUsesMimeTypeGuessers()
-    {
-        $file = new File(__DIR__.'/Fixtures/test.gif');
-        $guesser = $this->createMockGuesser($file->getPathname(), 'image/gif');
-
-        MimeTypeGuesser::getInstance()->register($guesser);
-
-        $this->assertEquals('image/gif', $file->getMimeType());
-    }
-
-    public function testGuessExtensionWithoutGuesser()
-    {
-        $file = new File(__DIR__.'/Fixtures/directory/.empty');
-
-        $this->assertNull($file->guessExtension());
-    }
-
-    public function testGuessExtensionIsBasedOnMimeType()
-    {
-        $file = new File(__DIR__.'/Fixtures/test');
-        $guesser = $this->createMockGuesser($file->getPathname(), 'image/gif');
-
-        MimeTypeGuesser::getInstance()->register($guesser);
-
-        $this->assertEquals('gif', $file->guessExtension());
-    }
-
-    /**
-     * @requires extension fileinfo
-     */
-    public function testGuessExtensionWithReset()
-    {
-        $file = new File(__DIR__.'/Fixtures/other-file.example');
-        $guesser = $this->createMockGuesser($file->getPathname(), 'image/gif');
-        MimeTypeGuesser::getInstance()->register($guesser);
-
-        $this->assertEquals('gif', $file->guessExtension());
-
-        MimeTypeGuesser::reset();
-
-        $this->assertNull($file->guessExtension());
-    }
-
-    public function testConstructWhenFileNotExists()
-    {
-        $this->setExpectedException('Symfony\Component\HttpFoundation\File\Exception\FileNotFoundException');
-
-        new File(__DIR__.'/Fixtures/not_here');
-    }
-
-    public function testMove()
-    {
-        $path = __DIR__.'/Fixtures/test.copy.gif';
-        $targetDir = __DIR__.'/Fixtures/directory';
-        $targetPath = $targetDir.'/test.copy.gif';
-        @unlink($path);
-        @unlink($targetPath);
-        copy(__DIR__.'/Fixtures/test.gif', $path);
-
-        $file = new File($path);
-        $movedFile = $file->move($targetDir);
-        $this->assertInstanceOf('Symfony\Component\HttpFoundation\File\File', $movedFile);
-
-        $this->assertTrue(file_exists($targetPath));
-        $this->assertFalse(file_exists($path));
-        $this->assertEquals(realpath($targetPath), $movedFile->getRealPath());
-
-        @unlink($targetPath);
-    }
-
-    public function testMoveWithNewName()
-    {
-        $path = __DIR__.'/Fixtures/test.copy.gif';
-        $targetDir = __DIR__.'/Fixtures/directory';
-        $targetPath = $targetDir.'/test.newname.gif';
-        @unlink($path);
-        @unlink($targetPath);
-        copy(__DIR__.'/Fixtures/test.gif', $path);
-
-        $file = new File($path);
-        $movedFile = $file->move($targetDir, 'test.newname.gif');
-
-        $this->assertTrue(file_exists($targetPath));
-        $this->assertFalse(file_exists($path));
-        $this->assertEquals(realpath($targetPath), $movedFile->getRealPath());
-
-        @unlink($targetPath);
-    }
-
-    public function getFilenameFixtures()
-    {
-        return array(
-            array('original.gif', 'original.gif'),
-            array('..\\..\\original.gif', 'original.gif'),
-            array('../../original.gif', 'original.gif'),
-            array('файлfile.gif', 'файлfile.gif'),
-            array('..\\..\\файлfile.gif', 'файлfile.gif'),
-            array('../../файлfile.gif', 'файлfile.gif'),
-        );
-    }
-
-    /**
-     * @dataProvider getFilenameFixtures
-     */
-    public function testMoveWithNonLatinName($filename, $sanitizedFilename)
-    {
-        $path = __DIR__.'/Fixtures/'.$sanitizedFilename;
-        $targetDir = __DIR__.'/Fixtures/directory/';
-        $targetPath = $targetDir.$sanitizedFilename;
-        @unlink($path);
-        @unlink($targetPath);
-        copy(__DIR__.'/Fixtures/test.gif', $path);
-
-        $file = new File($path);
-        $movedFile = $file->move($targetDir, $filename);
-        $this->assertInstanceOf('Symfony\Component\HttpFoundation\File\File', $movedFile);
-
-        $this->assertTrue(file_exists($targetPath));
-        $this->assertFalse(file_exists($path));
-        $this->assertEquals(realpath($targetPath), $movedFile->getRealPath());
-
-        @unlink($targetPath);
-    }
-
-    public function testMoveToAnUnexistentDirectory()
-    {
-        $sourcePath = __DIR__.'/Fixtures/test.copy.gif';
-        $targetDir = __DIR__.'/Fixtures/directory/sub';
-        $targetPath = $targetDir.'/test.copy.gif';
-        @unlink($sourcePath);
-        @unlink($targetPath);
-        @rmdir($targetDir);
-        copy(__DIR__.'/Fixtures/test.gif', $sourcePath);
-
-        $file = new File($sourcePath);
-        $movedFile = $file->move($targetDir);
-
-        $this->assertFileExists($targetPath);
-        $this->assertFileNotExists($sourcePath);
-        $this->assertEquals(realpath($targetPath), $movedFile->getRealPath());
-
-        @unlink($sourcePath);
-        @unlink($targetPath);
-        @rmdir($targetDir);
-    }
-
-    protected function createMockGuesser($path, $mimeType)
-    {
-        $guesser = $this->getMock('Symfony\Component\HttpFoundation\File\MimeType\MimeTypeGuesserInterface');
-        $guesser
-            ->expects($this->once())
-            ->method('guess')
-            ->with($this->equalTo($path))
-            ->will($this->returnValue($mimeType))
-        ;
-
-        return $guesser;
-    }
-}
diff --git a/vendor/symfony/http-foundation/Tests/File/Fixtures/.unknownextension b/vendor/symfony/http-foundation/Tests/File/Fixtures/.unknownextension
deleted file mode 100644
index 4d1ae35..0000000
--- a/vendor/symfony/http-foundation/Tests/File/Fixtures/.unknownextension
+++ /dev/null
@@ -1 +0,0 @@
-f
\ No newline at end of file
diff --git a/vendor/symfony/http-foundation/Tests/File/Fixtures/directory/.empty b/vendor/symfony/http-foundation/Tests/File/Fixtures/directory/.empty
deleted file mode 100644
index e69de29..0000000
diff --git a/vendor/symfony/http-foundation/Tests/File/Fixtures/other-file.example b/vendor/symfony/http-foundation/Tests/File/Fixtures/other-file.example
deleted file mode 100644
index e69de29..0000000
diff --git a/vendor/symfony/http-foundation/Tests/File/Fixtures/test b/vendor/symfony/http-foundation/Tests/File/Fixtures/test
deleted file mode 100644
index b636f4b..0000000
Binary files a/vendor/symfony/http-foundation/Tests/File/Fixtures/test and /dev/null differ
diff --git a/vendor/symfony/http-foundation/Tests/File/Fixtures/test.gif b/vendor/symfony/http-foundation/Tests/File/Fixtures/test.gif
deleted file mode 100644
index b636f4b..0000000
--- a/vendor/symfony/http-foundation/Tests/File/Fixtures/test.gif
+++ /dev/null
@@ -1 +0,0 @@
-GIF87a    ,       D ;
\ No newline at end of file
diff --git a/vendor/symfony/http-foundation/Tests/File/MimeType/MimeTypeTest.php b/vendor/symfony/http-foundation/Tests/File/MimeType/MimeTypeTest.php
deleted file mode 100644
index 1d5648e..0000000
--- a/vendor/symfony/http-foundation/Tests/File/MimeType/MimeTypeTest.php
+++ /dev/null
@@ -1,89 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpFoundation\Tests\File\MimeType;
-
-use Symfony\Component\HttpFoundation\File\MimeType\MimeTypeGuesser;
-use Symfony\Component\HttpFoundation\File\MimeType\FileBinaryMimeTypeGuesser;
-
-/**
- * @requires extension fileinfo
- */
-class MimeTypeTest extends \PHPUnit_Framework_TestCase
-{
-    protected $path;
-
-    public function testGuessImageWithoutExtension()
-    {
-        $this->assertEquals('image/gif', MimeTypeGuesser::getInstance()->guess(__DIR__.'/../Fixtures/test'));
-    }
-
-    public function testGuessImageWithDirectory()
-    {
-        $this->setExpectedException('Symfony\Component\HttpFoundation\File\Exception\FileNotFoundException');
-
-        MimeTypeGuesser::getInstance()->guess(__DIR__.'/../Fixtures/directory');
-    }
-
-    public function testGuessImageWithFileBinaryMimeTypeGuesser()
-    {
-        $guesser = MimeTypeGuesser::getInstance();
-        $guesser->register(new FileBinaryMimeTypeGuesser());
-        $this->assertEquals('image/gif', MimeTypeGuesser::getInstance()->guess(__DIR__.'/../Fixtures/test'));
-    }
-
-    public function testGuessImageWithKnownExtension()
-    {
-        $this->assertEquals('image/gif', MimeTypeGuesser::getInstance()->guess(__DIR__.'/../Fixtures/test.gif'));
-    }
-
-    public function testGuessFileWithUnknownExtension()
-    {
-        $this->assertEquals('application/octet-stream', MimeTypeGuesser::getInstance()->guess(__DIR__.'/../Fixtures/.unknownextension'));
-    }
-
-    public function testGuessWithIncorrectPath()
-    {
-        $this->setExpectedException('Symfony\Component\HttpFoundation\File\Exception\FileNotFoundException');
-        MimeTypeGuesser::getInstance()->guess(__DIR__.'/../Fixtures/not_here');
-    }
-
-    public function testGuessWithNonReadablePath()
-    {
-        if ('\\' === DIRECTORY_SEPARATOR) {
-            $this->markTestSkipped('Can not verify chmod operations on Windows');
-        }
-
-        if (!getenv('USER') || 'root' === getenv('USER')) {
-            $this->markTestSkipped('This test will fail if run under superuser');
-        }
-
-        $path = __DIR__.'/../Fixtures/to_delete';
-        touch($path);
-        @chmod($path, 0333);
-
-        if (substr(sprintf('%o', fileperms($path)), -4) == '0333') {
-            $this->setExpectedException('Symfony\Component\HttpFoundation\File\Exception\AccessDeniedException');
-            MimeTypeGuesser::getInstance()->guess($path);
-        } else {
-            $this->markTestSkipped('Can not verify chmod operations, change of file permissions failed');
-        }
-    }
-
-    public static function tearDownAfterClass()
-    {
-        $path = __DIR__.'/../Fixtures/to_delete';
-        if (file_exists($path)) {
-            @chmod($path, 0666);
-            @unlink($path);
-        }
-    }
-}
diff --git a/vendor/symfony/http-foundation/Tests/File/UploadedFileTest.php b/vendor/symfony/http-foundation/Tests/File/UploadedFileTest.php
deleted file mode 100644
index 5b48970..0000000
--- a/vendor/symfony/http-foundation/Tests/File/UploadedFileTest.php
+++ /dev/null
@@ -1,272 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpFoundation\Tests\File;
-
-use Symfony\Component\HttpFoundation\File\UploadedFile;
-
-class UploadedFileTest extends \PHPUnit_Framework_TestCase
-{
-    protected function setUp()
-    {
-        if (!ini_get('file_uploads')) {
-            $this->markTestSkipped('file_uploads is disabled in php.ini');
-        }
-    }
-
-    public function testConstructWhenFileNotExists()
-    {
-        $this->setExpectedException('Symfony\Component\HttpFoundation\File\Exception\FileNotFoundException');
-
-        new UploadedFile(
-            __DIR__.'/Fixtures/not_here',
-            'original.gif',
-            null
-        );
-    }
-
-    public function testFileUploadsWithNoMimeType()
-    {
-        $file = new UploadedFile(
-            __DIR__.'/Fixtures/test.gif',
-            'original.gif',
-            null,
-            filesize(__DIR__.'/Fixtures/test.gif'),
-            UPLOAD_ERR_OK
-        );
-
-        $this->assertEquals('application/octet-stream', $file->getClientMimeType());
-
-        if (extension_loaded('fileinfo')) {
-            $this->assertEquals('image/gif', $file->getMimeType());
-        }
-    }
-
-    public function testFileUploadsWithUnknownMimeType()
-    {
-        $file = new UploadedFile(
-            __DIR__.'/Fixtures/.unknownextension',
-            'original.gif',
-            null,
-            filesize(__DIR__.'/Fixtures/.unknownextension'),
-            UPLOAD_ERR_OK
-        );
-
-        $this->assertEquals('application/octet-stream', $file->getClientMimeType());
-    }
-
-    public function testGuessClientExtension()
-    {
-        $file = new UploadedFile(
-            __DIR__.'/Fixtures/test.gif',
-            'original.gif',
-            'image/gif',
-            filesize(__DIR__.'/Fixtures/test.gif'),
-            null
-        );
-
-        $this->assertEquals('gif', $file->guessClientExtension());
-    }
-
-    public function testGuessClientExtensionWithIncorrectMimeType()
-    {
-        $file = new UploadedFile(
-            __DIR__.'/Fixtures/test.gif',
-            'original.gif',
-            'image/jpeg',
-            filesize(__DIR__.'/Fixtures/test.gif'),
-            null
-        );
-
-        $this->assertEquals('jpeg', $file->guessClientExtension());
-    }
-
-    public function testErrorIsOkByDefault()
-    {
-        $file = new UploadedFile(
-            __DIR__.'/Fixtures/test.gif',
-            'original.gif',
-            'image/gif',
-            filesize(__DIR__.'/Fixtures/test.gif'),
-            null
-        );
-
-        $this->assertEquals(UPLOAD_ERR_OK, $file->getError());
-    }
-
-    public function testGetClientOriginalName()
-    {
-        $file = new UploadedFile(
-            __DIR__.'/Fixtures/test.gif',
-            'original.gif',
-            'image/gif',
-            filesize(__DIR__.'/Fixtures/test.gif'),
-            null
-        );
-
-        $this->assertEquals('original.gif', $file->getClientOriginalName());
-    }
-
-    public function testGetClientOriginalExtension()
-    {
-        $file = new UploadedFile(
-            __DIR__.'/Fixtures/test.gif',
-            'original.gif',
-            'image/gif',
-            filesize(__DIR__.'/Fixtures/test.gif'),
-            null
-        );
-
-        $this->assertEquals('gif', $file->getClientOriginalExtension());
-    }
-
-    /**
-     * @expectedException \Symfony\Component\HttpFoundation\File\Exception\FileException
-     */
-    public function testMoveLocalFileIsNotAllowed()
-    {
-        $file = new UploadedFile(
-            __DIR__.'/Fixtures/test.gif',
-            'original.gif',
-            'image/gif',
-            filesize(__DIR__.'/Fixtures/test.gif'),
-            UPLOAD_ERR_OK
-        );
-
-        $movedFile = $file->move(__DIR__.'/Fixtures/directory');
-    }
-
-    public function testMoveLocalFileIsAllowedInTestMode()
-    {
-        $path = __DIR__.'/Fixtures/test.copy.gif';
-        $targetDir = __DIR__.'/Fixtures/directory';
-        $targetPath = $targetDir.'/test.copy.gif';
-        @unlink($path);
-        @unlink($targetPath);
-        copy(__DIR__.'/Fixtures/test.gif', $path);
-
-        $file = new UploadedFile(
-            $path,
-            'original.gif',
-            'image/gif',
-            filesize($path),
-            UPLOAD_ERR_OK,
-            true
-        );
-
-        $movedFile = $file->move(__DIR__.'/Fixtures/directory');
-
-        $this->assertTrue(file_exists($targetPath));
-        $this->assertFalse(file_exists($path));
-        $this->assertEquals(realpath($targetPath), $movedFile->getRealPath());
-
-        @unlink($targetPath);
-    }
-
-    public function testGetClientOriginalNameSanitizeFilename()
-    {
-        $file = new UploadedFile(
-            __DIR__.'/Fixtures/test.gif',
-            '../../original.gif',
-            'image/gif',
-            filesize(__DIR__.'/Fixtures/test.gif'),
-            null
-        );
-
-        $this->assertEquals('original.gif', $file->getClientOriginalName());
-    }
-
-    public function testGetSize()
-    {
-        $file = new UploadedFile(
-            __DIR__.'/Fixtures/test.gif',
-            'original.gif',
-            'image/gif',
-            filesize(__DIR__.'/Fixtures/test.gif'),
-            null
-        );
-
-        $this->assertEquals(filesize(__DIR__.'/Fixtures/test.gif'), $file->getSize());
-
-        $file = new UploadedFile(
-            __DIR__.'/Fixtures/test',
-            'original.gif',
-            'image/gif'
-        );
-
-        $this->assertEquals(filesize(__DIR__.'/Fixtures/test'), $file->getSize());
-    }
-
-    public function testGetExtension()
-    {
-        $file = new UploadedFile(
-            __DIR__.'/Fixtures/test.gif',
-            'original.gif',
-            null
-        );
-
-        $this->assertEquals('gif', $file->getExtension());
-    }
-
-    public function testIsValid()
-    {
-        $file = new UploadedFile(
-            __DIR__.'/Fixtures/test.gif',
-            'original.gif',
-            null,
-            filesize(__DIR__.'/Fixtures/test.gif'),
-            UPLOAD_ERR_OK,
-            true
-        );
-
-        $this->assertTrue($file->isValid());
-    }
-
-    /**
-     * @dataProvider uploadedFileErrorProvider
-     */
-    public function testIsInvalidOnUploadError($error)
-    {
-        $file = new UploadedFile(
-            __DIR__.'/Fixtures/test.gif',
-            'original.gif',
-            null,
-            filesize(__DIR__.'/Fixtures/test.gif'),
-            $error
-        );
-
-        $this->assertFalse($file->isValid());
-    }
-
-    public function uploadedFileErrorProvider()
-    {
-        return array(
-            array(UPLOAD_ERR_INI_SIZE),
-            array(UPLOAD_ERR_FORM_SIZE),
-            array(UPLOAD_ERR_PARTIAL),
-            array(UPLOAD_ERR_NO_TMP_DIR),
-            array(UPLOAD_ERR_EXTENSION),
-        );
-    }
-
-    public function testIsInvalidIfNotHttpUpload()
-    {
-        $file = new UploadedFile(
-            __DIR__.'/Fixtures/test.gif',
-            'original.gif',
-            null,
-            filesize(__DIR__.'/Fixtures/test.gif'),
-            UPLOAD_ERR_OK
-        );
-
-        $this->assertFalse($file->isValid());
-    }
-}
diff --git a/vendor/symfony/http-foundation/Tests/FileBagTest.php b/vendor/symfony/http-foundation/Tests/FileBagTest.php
deleted file mode 100644
index 738604b..0000000
--- a/vendor/symfony/http-foundation/Tests/FileBagTest.php
+++ /dev/null
@@ -1,148 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpFoundation\Tests;
-
-use Symfony\Component\HttpFoundation\File\UploadedFile;
-use Symfony\Component\HttpFoundation\FileBag;
-
-/**
- * FileBagTest.
- *
- * @author Fabien Potencier <fabien@symfony.com>
- * @author Bulat Shakirzyanov <mallluhuct@gmail.com>
- */
-class FileBagTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @expectedException \InvalidArgumentException
-     */
-    public function testFileMustBeAnArrayOrUploadedFile()
-    {
-        new FileBag(array('file' => 'foo'));
-    }
-
-    public function testShouldConvertsUploadedFiles()
-    {
-        $tmpFile = $this->createTempFile();
-        $file = new UploadedFile($tmpFile, basename($tmpFile), 'text/plain', 100, 0);
-
-        $bag = new FileBag(array('file' => array(
-            'name' => basename($tmpFile),
-            'type' => 'text/plain',
-            'tmp_name' => $tmpFile,
-            'error' => 0,
-            'size' => 100,
-        )));
-
-        $this->assertEquals($file, $bag->get('file'));
-    }
-
-    public function testShouldSetEmptyUploadedFilesToNull()
-    {
-        $bag = new FileBag(array('file' => array(
-            'name' => '',
-            'type' => '',
-            'tmp_name' => '',
-            'error' => UPLOAD_ERR_NO_FILE,
-            'size' => 0,
-        )));
-
-        $this->assertNull($bag->get('file'));
-    }
-
-    public function testShouldConvertUploadedFilesWithPhpBug()
-    {
-        $tmpFile = $this->createTempFile();
-        $file = new UploadedFile($tmpFile, basename($tmpFile), 'text/plain', 100, 0);
-
-        $bag = new FileBag(array(
-            'child' => array(
-                'name' => array(
-                    'file' => basename($tmpFile),
-                ),
-                'type' => array(
-                    'file' => 'text/plain',
-                ),
-                'tmp_name' => array(
-                    'file' => $tmpFile,
-                ),
-                'error' => array(
-                    'file' => 0,
-                ),
-                'size' => array(
-                    'file' => 100,
-                ),
-            ),
-        ));
-
-        $files = $bag->all();
-        $this->assertEquals($file, $files['child']['file']);
-    }
-
-    public function testShouldConvertNestedUploadedFilesWithPhpBug()
-    {
-        $tmpFile = $this->createTempFile();
-        $file = new UploadedFile($tmpFile, basename($tmpFile), 'text/plain', 100, 0);
-
-        $bag = new FileBag(array(
-            'child' => array(
-                'name' => array(
-                    'sub' => array('file' => basename($tmpFile)),
-                ),
-                'type' => array(
-                    'sub' => array('file' => 'text/plain'),
-                ),
-                'tmp_name' => array(
-                    'sub' => array('file' => $tmpFile),
-                ),
-                'error' => array(
-                    'sub' => array('file' => 0),
-                ),
-                'size' => array(
-                    'sub' => array('file' => 100),
-                ),
-            ),
-        ));
-
-        $files = $bag->all();
-        $this->assertEquals($file, $files['child']['sub']['file']);
-    }
-
-    public function testShouldNotConvertNestedUploadedFiles()
-    {
-        $tmpFile = $this->createTempFile();
-        $file = new UploadedFile($tmpFile, basename($tmpFile), 'text/plain', 100, 0);
-        $bag = new FileBag(array('image' => array('file' => $file)));
-
-        $files = $bag->all();
-        $this->assertEquals($file, $files['image']['file']);
-    }
-
-    protected function createTempFile()
-    {
-        return tempnam(sys_get_temp_dir().'/form_test', 'FormTest');
-    }
-
-    protected function setUp()
-    {
-        mkdir(sys_get_temp_dir().'/form_test', 0777, true);
-    }
-
-    protected function tearDown()
-    {
-        foreach (glob(sys_get_temp_dir().'/form_test/*') as $file) {
-            unlink($file);
-        }
-
-        rmdir(sys_get_temp_dir().'/form_test');
-    }
-}
diff --git a/vendor/symfony/http-foundation/Tests/HeaderBagTest.php b/vendor/symfony/http-foundation/Tests/HeaderBagTest.php
deleted file mode 100644
index ada9ac0..0000000
--- a/vendor/symfony/http-foundation/Tests/HeaderBagTest.php
+++ /dev/null
@@ -1,216 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpFoundation\Tests;
-
-use Symfony\Component\HttpFoundation\HeaderBag;
-
-class HeaderBagTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @covers Symfony\Component\HttpFoundation\HeaderBag::__construct
-     */
-    public function testConstructor()
-    {
-        $bag = new HeaderBag(array('foo' => 'bar'));
-        $this->assertTrue($bag->has('foo'));
-    }
-
-    public function testToStringNull()
-    {
-        $bag = new HeaderBag();
-        $this->assertEquals('', $bag->__toString());
-    }
-
-    public function testToStringNotNull()
-    {
-        $bag = new HeaderBag(array('foo' => 'bar'));
-        $this->assertEquals("Foo: bar\r\n", $bag->__toString());
-    }
-
-    public function testKeys()
-    {
-        $bag = new HeaderBag(array('foo' => 'bar'));
-        $keys = $bag->keys();
-        $this->assertEquals('foo', $keys[0]);
-    }
-
-    public function testGetDate()
-    {
-        $bag = new HeaderBag(array('foo' => 'Tue, 4 Sep 2012 20:00:00 +0200'));
-        $headerDate = $bag->getDate('foo');
-        $this->assertInstanceOf('DateTime', $headerDate);
-    }
-
-    /**
-     * @expectedException \RuntimeException
-     */
-    public function testGetDateException()
-    {
-        $bag = new HeaderBag(array('foo' => 'Tue'));
-        $headerDate = $bag->getDate('foo');
-    }
-
-    public function testGetCacheControlHeader()
-    {
-        $bag = new HeaderBag();
-        $bag->addCacheControlDirective('public', '#a');
-        $this->assertTrue($bag->hasCacheControlDirective('public'));
-        $this->assertEquals('#a', $bag->getCacheControlDirective('public'));
-    }
-
-    /**
-     * @covers Symfony\Component\HttpFoundation\HeaderBag::all
-     */
-    public function testAll()
-    {
-        $bag = new HeaderBag(array('foo' => 'bar'));
-        $this->assertEquals(array('foo' => array('bar')), $bag->all(), '->all() gets all the input');
-
-        $bag = new HeaderBag(array('FOO' => 'BAR'));
-        $this->assertEquals(array('foo' => array('BAR')), $bag->all(), '->all() gets all the input key are lower case');
-    }
-
-    /**
-     * @covers Symfony\Component\HttpFoundation\HeaderBag::replace
-     */
-    public function testReplace()
-    {
-        $bag = new HeaderBag(array('foo' => 'bar'));
-
-        $bag->replace(array('NOPE' => 'BAR'));
-        $this->assertEquals(array('nope' => array('BAR')), $bag->all(), '->replace() replaces the input with the argument');
-        $this->assertFalse($bag->has('foo'), '->replace() overrides previously set the input');
-    }
-
-    /**
-     * @covers Symfony\Component\HttpFoundation\HeaderBag::get
-     */
-    public function testGet()
-    {
-        $bag = new HeaderBag(array('foo' => 'bar', 'fuzz' => 'bizz'));
-        $this->assertEquals('bar', $bag->get('foo'), '->get return current value');
-        $this->assertEquals('bar', $bag->get('FoO'), '->get key in case insensitive');
-        $this->assertEquals(array('bar'), $bag->get('foo', 'nope', false), '->get return the value as array');
-
-        // defaults
-        $this->assertNull($bag->get('none'), '->get unknown values returns null');
-        $this->assertEquals('default', $bag->get('none', 'default'), '->get unknown values returns default');
-        $this->assertEquals(array('default'), $bag->get('none', 'default', false), '->get unknown values returns default as array');
-
-        $bag->set('foo', 'bor', false);
-        $this->assertEquals('bar', $bag->get('foo'), '->get return first value');
-        $this->assertEquals(array('bar', 'bor'), $bag->get('foo', 'nope', false), '->get return all values as array');
-    }
-
-    public function testSetAssociativeArray()
-    {
-        $bag = new HeaderBag();
-        $bag->set('foo', array('bad-assoc-index' => 'value'));
-        $this->assertSame('value', $bag->get('foo'));
-        $this->assertEquals(array('value'), $bag->get('foo', 'nope', false), 'assoc indices of multi-valued headers are ignored');
-    }
-
-    /**
-     * @covers Symfony\Component\HttpFoundation\HeaderBag::contains
-     */
-    public function testContains()
-    {
-        $bag = new HeaderBag(array('foo' => 'bar', 'fuzz' => 'bizz'));
-        $this->assertTrue($bag->contains('foo', 'bar'), '->contains first value');
-        $this->assertTrue($bag->contains('fuzz', 'bizz'), '->contains second value');
-        $this->assertFalse($bag->contains('nope', 'nope'), '->contains unknown value');
-        $this->assertFalse($bag->contains('foo', 'nope'), '->contains unknown value');
-
-        // Multiple values
-        $bag->set('foo', 'bor', false);
-        $this->assertTrue($bag->contains('foo', 'bar'), '->contains first value');
-        $this->assertTrue($bag->contains('foo', 'bor'), '->contains second value');
-        $this->assertFalse($bag->contains('foo', 'nope'), '->contains unknown value');
-    }
-
-    public function testCacheControlDirectiveAccessors()
-    {
-        $bag = new HeaderBag();
-        $bag->addCacheControlDirective('public');
-
-        $this->assertTrue($bag->hasCacheControlDirective('public'));
-        $this->assertTrue($bag->getCacheControlDirective('public'));
-        $this->assertEquals('public', $bag->get('cache-control'));
-
-        $bag->addCacheControlDirective('max-age', 10);
-        $this->assertTrue($bag->hasCacheControlDirective('max-age'));
-        $this->assertEquals(10, $bag->getCacheControlDirective('max-age'));
-        $this->assertEquals('max-age=10, public', $bag->get('cache-control'));
-
-        $bag->removeCacheControlDirective('max-age');
-        $this->assertFalse($bag->hasCacheControlDirective('max-age'));
-    }
-
-    public function testCacheControlDirectiveParsing()
-    {
-        $bag = new HeaderBag(array('cache-control' => 'public, max-age=10'));
-        $this->assertTrue($bag->hasCacheControlDirective('public'));
-        $this->assertTrue($bag->getCacheControlDirective('public'));
-
-        $this->assertTrue($bag->hasCacheControlDirective('max-age'));
-        $this->assertEquals(10, $bag->getCacheControlDirective('max-age'));
-
-        $bag->addCacheControlDirective('s-maxage', 100);
-        $this->assertEquals('max-age=10, public, s-maxage=100', $bag->get('cache-control'));
-    }
-
-    public function testCacheControlDirectiveParsingQuotedZero()
-    {
-        $bag = new HeaderBag(array('cache-control' => 'max-age="0"'));
-        $this->assertTrue($bag->hasCacheControlDirective('max-age'));
-        $this->assertEquals(0, $bag->getCacheControlDirective('max-age'));
-    }
-
-    public function testCacheControlDirectiveOverrideWithReplace()
-    {
-        $bag = new HeaderBag(array('cache-control' => 'private, max-age=100'));
-        $bag->replace(array('cache-control' => 'public, max-age=10'));
-        $this->assertTrue($bag->hasCacheControlDirective('public'));
-        $this->assertTrue($bag->getCacheControlDirective('public'));
-
-        $this->assertTrue($bag->hasCacheControlDirective('max-age'));
-        $this->assertEquals(10, $bag->getCacheControlDirective('max-age'));
-    }
-
-    /**
-     * @covers Symfony\Component\HttpFoundation\HeaderBag::getIterator
-     */
-    public function testGetIterator()
-    {
-        $headers = array('foo' => 'bar', 'hello' => 'world', 'third' => 'charm');
-        $headerBag = new HeaderBag($headers);
-
-        $i = 0;
-        foreach ($headerBag as $key => $val) {
-            ++$i;
-            $this->assertEquals(array($headers[$key]), $val);
-        }
-
-        $this->assertEquals(count($headers), $i);
-    }
-
-    /**
-     * @covers Symfony\Component\HttpFoundation\HeaderBag::count
-     */
-    public function testCount()
-    {
-        $headers = array('foo' => 'bar', 'HELLO' => 'WORLD');
-        $headerBag = new HeaderBag($headers);
-
-        $this->assertEquals(count($headers), count($headerBag));
-    }
-}
diff --git a/vendor/symfony/http-foundation/Tests/IpUtilsTest.php b/vendor/symfony/http-foundation/Tests/IpUtilsTest.php
deleted file mode 100644
index 0002478..0000000
--- a/vendor/symfony/http-foundation/Tests/IpUtilsTest.php
+++ /dev/null
@@ -1,84 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpFoundation\Tests;
-
-use Symfony\Component\HttpFoundation\IpUtils;
-
-class IpUtilsTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @dataProvider testIpv4Provider
-     */
-    public function testIpv4($matches, $remoteAddr, $cidr)
-    {
-        $this->assertSame($matches, IpUtils::checkIp($remoteAddr, $cidr));
-    }
-
-    public function testIpv4Provider()
-    {
-        return array(
-            array(true, '192.168.1.1', '192.168.1.1'),
-            array(true, '192.168.1.1', '192.168.1.1/1'),
-            array(true, '192.168.1.1', '192.168.1.0/24'),
-            array(false, '192.168.1.1', '1.2.3.4/1'),
-            array(false, '192.168.1.1', '192.168.1/33'),
-            array(true, '192.168.1.1', array('1.2.3.4/1', '192.168.1.0/24')),
-            array(true, '192.168.1.1', array('192.168.1.0/24', '1.2.3.4/1')),
-            array(false, '192.168.1.1', array('1.2.3.4/1', '4.3.2.1/1')),
-            array(true, '1.2.3.4', '0.0.0.0/0'),
-            array(false, '1.2.3.4', '256.256.256/0'),
-            array(false, '1.2.3.4', '192.168.1.0/0'),
-        );
-    }
-
-    /**
-     * @dataProvider testIpv6Provider
-     */
-    public function testIpv6($matches, $remoteAddr, $cidr)
-    {
-        if (!defined('AF_INET6')) {
-            $this->markTestSkipped('Only works when PHP is compiled without the option "disable-ipv6".');
-        }
-
-        $this->assertSame($matches, IpUtils::checkIp($remoteAddr, $cidr));
-    }
-
-    public function testIpv6Provider()
-    {
-        return array(
-            array(true, '2a01:198:603:0:396e:4789:8e99:890f', '2a01:198:603:0::/65'),
-            array(false, '2a00:198:603:0:396e:4789:8e99:890f', '2a01:198:603:0::/65'),
-            array(false, '2a01:198:603:0:396e:4789:8e99:890f', '::1'),
-            array(true, '0:0:0:0:0:0:0:1', '::1'),
-            array(false, '0:0:603:0:396e:4789:8e99:0001', '::1'),
-            array(true, '2a01:198:603:0:396e:4789:8e99:890f', array('::1', '2a01:198:603:0::/65')),
-            array(true, '2a01:198:603:0:396e:4789:8e99:890f', array('2a01:198:603:0::/65', '::1')),
-            array(false, '2a01:198:603:0:396e:4789:8e99:890f', array('::1', '1a01:198:603:0::/65')),
-        );
-    }
-
-    /**
-     * @expectedException \RuntimeException
-     */
-    public function testAnIpv6WithOptionDisabledIpv6()
-    {
-        if (!extension_loaded('sockets')) {
-            $this->markTestSkipped('Only works when the socket extension is enabled');
-        }
-
-        if (defined('AF_INET6')) {
-            $this->markTestSkipped('Only works when PHP is compiled with the option "disable-ipv6".');
-        }
-
-        IpUtils::checkIp('2a01:198:603:0:396e:4789:8e99:890f', '2a01:198:603:0::/65');
-    }
-}
diff --git a/vendor/symfony/http-foundation/Tests/JsonResponseTest.php b/vendor/symfony/http-foundation/Tests/JsonResponseTest.php
deleted file mode 100644
index f1ea565..0000000
--- a/vendor/symfony/http-foundation/Tests/JsonResponseTest.php
+++ /dev/null
@@ -1,229 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpFoundation\Tests;
-
-use Symfony\Component\HttpFoundation\JsonResponse;
-
-class JsonResponseTest extends \PHPUnit_Framework_TestCase
-{
-    public function testConstructorEmptyCreatesJsonObject()
-    {
-        $response = new JsonResponse();
-        $this->assertSame('{}', $response->getContent());
-    }
-
-    public function testConstructorWithArrayCreatesJsonArray()
-    {
-        $response = new JsonResponse(array(0, 1, 2, 3));
-        $this->assertSame('[0,1,2,3]', $response->getContent());
-    }
-
-    public function testConstructorWithAssocArrayCreatesJsonObject()
-    {
-        $response = new JsonResponse(array('foo' => 'bar'));
-        $this->assertSame('{"foo":"bar"}', $response->getContent());
-    }
-
-    public function testConstructorWithSimpleTypes()
-    {
-        $response = new JsonResponse('foo');
-        $this->assertSame('"foo"', $response->getContent());
-
-        $response = new JsonResponse(0);
-        $this->assertSame('0', $response->getContent());
-
-        $response = new JsonResponse(0.1);
-        $this->assertSame('0.1', $response->getContent());
-
-        $response = new JsonResponse(true);
-        $this->assertSame('true', $response->getContent());
-    }
-
-    public function testConstructorWithCustomStatus()
-    {
-        $response = new JsonResponse(array(), 202);
-        $this->assertSame(202, $response->getStatusCode());
-    }
-
-    public function testConstructorAddsContentTypeHeader()
-    {
-        $response = new JsonResponse();
-        $this->assertSame('application/json', $response->headers->get('Content-Type'));
-    }
-
-    public function testConstructorWithCustomHeaders()
-    {
-        $response = new JsonResponse(array(), 200, array('ETag' => 'foo'));
-        $this->assertSame('application/json', $response->headers->get('Content-Type'));
-        $this->assertSame('foo', $response->headers->get('ETag'));
-    }
-
-    public function testConstructorWithCustomContentType()
-    {
-        $headers = array('Content-Type' => 'application/vnd.acme.blog-v1+json');
-
-        $response = new JsonResponse(array(), 200, $headers);
-        $this->assertSame('application/vnd.acme.blog-v1+json', $response->headers->get('Content-Type'));
-    }
-
-    public function testCreate()
-    {
-        $response = JsonResponse::create(array('foo' => 'bar'), 204);
-
-        $this->assertInstanceOf('Symfony\Component\HttpFoundation\JsonResponse', $response);
-        $this->assertEquals('{"foo":"bar"}', $response->getContent());
-        $this->assertEquals(204, $response->getStatusCode());
-    }
-
-    public function testStaticCreateEmptyJsonObject()
-    {
-        $response = JsonResponse::create();
-        $this->assertInstanceOf('Symfony\Component\HttpFoundation\JsonResponse', $response);
-        $this->assertSame('{}', $response->getContent());
-    }
-
-    public function testStaticCreateJsonArray()
-    {
-        $response = JsonResponse::create(array(0, 1, 2, 3));
-        $this->assertInstanceOf('Symfony\Component\HttpFoundation\JsonResponse', $response);
-        $this->assertSame('[0,1,2,3]', $response->getContent());
-    }
-
-    public function testStaticCreateJsonObject()
-    {
-        $response = JsonResponse::create(array('foo' => 'bar'));
-        $this->assertInstanceOf('Symfony\Component\HttpFoundation\JsonResponse', $response);
-        $this->assertSame('{"foo":"bar"}', $response->getContent());
-    }
-
-    public function testStaticCreateWithSimpleTypes()
-    {
-        $response = JsonResponse::create('foo');
-        $this->assertInstanceOf('Symfony\Component\HttpFoundation\JsonResponse', $response);
-        $this->assertSame('"foo"', $response->getContent());
-
-        $response = JsonResponse::create(0);
-        $this->assertInstanceOf('Symfony\Component\HttpFoundation\JsonResponse', $response);
-        $this->assertSame('0', $response->getContent());
-
-        $response = JsonResponse::create(0.1);
-        $this->assertInstanceOf('Symfony\Component\HttpFoundation\JsonResponse', $response);
-        $this->assertSame('0.1', $response->getContent());
-
-        $response = JsonResponse::create(true);
-        $this->assertInstanceOf('Symfony\Component\HttpFoundation\JsonResponse', $response);
-        $this->assertSame('true', $response->getContent());
-    }
-
-    public function testStaticCreateWithCustomStatus()
-    {
-        $response = JsonResponse::create(array(), 202);
-        $this->assertSame(202, $response->getStatusCode());
-    }
-
-    public function testStaticCreateAddsContentTypeHeader()
-    {
-        $response = JsonResponse::create();
-        $this->assertSame('application/json', $response->headers->get('Content-Type'));
-    }
-
-    public function testStaticCreateWithCustomHeaders()
-    {
-        $response = JsonResponse::create(array(), 200, array('ETag' => 'foo'));
-        $this->assertSame('application/json', $response->headers->get('Content-Type'));
-        $this->assertSame('foo', $response->headers->get('ETag'));
-    }
-
-    public function testStaticCreateWithCustomContentType()
-    {
-        $headers = array('Content-Type' => 'application/vnd.acme.blog-v1+json');
-
-        $response = JsonResponse::create(array(), 200, $headers);
-        $this->assertSame('application/vnd.acme.blog-v1+json', $response->headers->get('Content-Type'));
-    }
-
-    public function testSetCallback()
-    {
-        $response = JsonResponse::create(array('foo' => 'bar'))->setCallback('callback');
-
-        $this->assertEquals('/**/callback({"foo":"bar"});', $response->getContent());
-        $this->assertEquals('text/javascript', $response->headers->get('Content-Type'));
-    }
-
-    public function testJsonEncodeFlags()
-    {
-        $response = new JsonResponse('<>\'&"');
-
-        $this->assertEquals('"\u003C\u003E\u0027\u0026\u0022"', $response->getContent());
-    }
-
-    public function testGetEncodingOptions()
-    {
-        $response = new JsonResponse();
-
-        $this->assertEquals(JSON_HEX_TAG | JSON_HEX_APOS | JSON_HEX_AMP | JSON_HEX_QUOT, $response->getEncodingOptions());
-    }
-
-    public function testSetEncodingOptions()
-    {
-        $response = new JsonResponse();
-        $response->setData(array(array(1, 2, 3)));
-
-        $this->assertEquals('[[1,2,3]]', $response->getContent());
-
-        $response->setEncodingOptions(JSON_FORCE_OBJECT);
-
-        $this->assertEquals('{"0":{"0":1,"1":2,"2":3}}', $response->getContent());
-    }
-
-    /**
-     * @expectedException \InvalidArgumentException
-     */
-    public function testSetCallbackInvalidIdentifier()
-    {
-        $response = new JsonResponse('foo');
-        $response->setCallback('+invalid');
-    }
-
-    /**
-     * @expectedException \InvalidArgumentException
-     */
-    public function testSetContent()
-    {
-        JsonResponse::create("\xB1\x31");
-    }
-
-    /**
-     * @expectedException \Exception
-     * @expectedExceptionMessage This error is expected
-     */
-    public function testSetContentJsonSerializeError()
-    {
-        if (!interface_exists('JsonSerializable')) {
-            $this->markTestSkipped('Interface JsonSerializable is available in PHP 5.4+');
-        }
-
-        $serializable = new JsonSerializableObject();
-
-        JsonResponse::create($serializable);
-    }
-}
-
-if (interface_exists('JsonSerializable')) {
-    class JsonSerializableObject implements \JsonSerializable
-    {
-        public function jsonSerialize()
-        {
-            throw new \Exception('This error is expected');
-        }
-    }
-}
diff --git a/vendor/symfony/http-foundation/Tests/ParameterBagTest.php b/vendor/symfony/http-foundation/Tests/ParameterBagTest.php
deleted file mode 100644
index 16fedbf..0000000
--- a/vendor/symfony/http-foundation/Tests/ParameterBagTest.php
+++ /dev/null
@@ -1,266 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpFoundation\Tests;
-
-use Symfony\Component\HttpFoundation\ParameterBag;
-
-class ParameterBagTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @covers Symfony\Component\HttpFoundation\ParameterBag::__construct
-     */
-    public function testConstructor()
-    {
-        $this->testAll();
-    }
-
-    /**
-     * @covers Symfony\Component\HttpFoundation\ParameterBag::all
-     */
-    public function testAll()
-    {
-        $bag = new ParameterBag(array('foo' => 'bar'));
-        $this->assertEquals(array('foo' => 'bar'), $bag->all(), '->all() gets all the input');
-    }
-
-    public function testKeys()
-    {
-        $bag = new ParameterBag(array('foo' => 'bar'));
-        $this->assertEquals(array('foo'), $bag->keys());
-    }
-
-    public function testAdd()
-    {
-        $bag = new ParameterBag(array('foo' => 'bar'));
-        $bag->add(array('bar' => 'bas'));
-        $this->assertEquals(array('foo' => 'bar', 'bar' => 'bas'), $bag->all());
-    }
-
-    public function testRemove()
-    {
-        $bag = new ParameterBag(array('foo' => 'bar'));
-        $bag->add(array('bar' => 'bas'));
-        $this->assertEquals(array('foo' => 'bar', 'bar' => 'bas'), $bag->all());
-        $bag->remove('bar');
-        $this->assertEquals(array('foo' => 'bar'), $bag->all());
-    }
-
-    /**
-     * @covers Symfony\Component\HttpFoundation\ParameterBag::replace
-     */
-    public function testReplace()
-    {
-        $bag = new ParameterBag(array('foo' => 'bar'));
-
-        $bag->replace(array('FOO' => 'BAR'));
-        $this->assertEquals(array('FOO' => 'BAR'), $bag->all(), '->replace() replaces the input with the argument');
-        $this->assertFalse($bag->has('foo'), '->replace() overrides previously set the input');
-    }
-
-    /**
-     * @covers Symfony\Component\HttpFoundation\ParameterBag::get
-     */
-    public function testGet()
-    {
-        $bag = new ParameterBag(array('foo' => 'bar', 'null' => null));
-
-        $this->assertEquals('bar', $bag->get('foo'), '->get() gets the value of a parameter');
-        $this->assertEquals('default', $bag->get('unknown', 'default'), '->get() returns second argument as default if a parameter is not defined');
-        $this->assertNull($bag->get('null', 'default'), '->get() returns null if null is set');
-    }
-
-    public function testGetDoesNotUseDeepByDefault()
-    {
-        $bag = new ParameterBag(array('foo' => array('bar' => 'moo')));
-
-        $this->assertNull($bag->get('foo[bar]'));
-    }
-
-    /**
-     * @dataProvider getInvalidPaths
-     * @expectedException \InvalidArgumentException
-     */
-    public function testGetDeepWithInvalidPaths($path)
-    {
-        $bag = new ParameterBag(array('foo' => array('bar' => 'moo')));
-
-        $bag->get($path, null, true);
-    }
-
-    public function getInvalidPaths()
-    {
-        return array(
-            array('foo[['),
-            array('foo[d'),
-            array('foo[bar]]'),
-            array('foo[bar]d'),
-        );
-    }
-
-    public function testGetDeep()
-    {
-        $bag = new ParameterBag(array('foo' => array('bar' => array('moo' => 'boo'))));
-
-        $this->assertEquals(array('moo' => 'boo'), $bag->get('foo[bar]', null, true));
-        $this->assertEquals('boo', $bag->get('foo[bar][moo]', null, true));
-        $this->assertEquals('default', $bag->get('foo[bar][foo]', 'default', true));
-        $this->assertEquals('default', $bag->get('bar[moo][foo]', 'default', true));
-    }
-
-    /**
-     * @covers Symfony\Component\HttpFoundation\ParameterBag::set
-     */
-    public function testSet()
-    {
-        $bag = new ParameterBag(array());
-
-        $bag->set('foo', 'bar');
-        $this->assertEquals('bar', $bag->get('foo'), '->set() sets the value of parameter');
-
-        $bag->set('foo', 'baz');
-        $this->assertEquals('baz', $bag->get('foo'), '->set() overrides previously set parameter');
-    }
-
-    /**
-     * @covers Symfony\Component\HttpFoundation\ParameterBag::has
-     */
-    public function testHas()
-    {
-        $bag = new ParameterBag(array('foo' => 'bar'));
-
-        $this->assertTrue($bag->has('foo'), '->has() returns true if a parameter is defined');
-        $this->assertFalse($bag->has('unknown'), '->has() return false if a parameter is not defined');
-    }
-
-    /**
-     * @covers Symfony\Component\HttpFoundation\ParameterBag::getAlpha
-     */
-    public function testGetAlpha()
-    {
-        $bag = new ParameterBag(array('word' => 'foo_BAR_012'));
-
-        $this->assertEquals('fooBAR', $bag->getAlpha('word'), '->getAlpha() gets only alphabetic characters');
-        $this->assertEquals('', $bag->getAlpha('unknown'), '->getAlpha() returns empty string if a parameter is not defined');
-    }
-
-    /**
-     * @covers Symfony\Component\HttpFoundation\ParameterBag::getAlnum
-     */
-    public function testGetAlnum()
-    {
-        $bag = new ParameterBag(array('word' => 'foo_BAR_012'));
-
-        $this->assertEquals('fooBAR012', $bag->getAlnum('word'), '->getAlnum() gets only alphanumeric characters');
-        $this->assertEquals('', $bag->getAlnum('unknown'), '->getAlnum() returns empty string if a parameter is not defined');
-    }
-
-    /**
-     * @covers Symfony\Component\HttpFoundation\ParameterBag::getDigits
-     */
-    public function testGetDigits()
-    {
-        $bag = new ParameterBag(array('word' => 'foo_BAR_012'));
-
-        $this->assertEquals('012', $bag->getDigits('word'), '->getDigits() gets only digits as string');
-        $this->assertEquals('', $bag->getDigits('unknown'), '->getDigits() returns empty string if a parameter is not defined');
-    }
-
-    /**
-     * @covers Symfony\Component\HttpFoundation\ParameterBag::getInt
-     */
-    public function testGetInt()
-    {
-        $bag = new ParameterBag(array('digits' => '0123'));
-
-        $this->assertEquals(123, $bag->getInt('digits'), '->getInt() gets a value of parameter as integer');
-        $this->assertEquals(0, $bag->getInt('unknown'), '->getInt() returns zero if a parameter is not defined');
-    }
-
-    /**
-     * @covers Symfony\Component\HttpFoundation\ParameterBag::filter
-     */
-    public function testFilter()
-    {
-        $bag = new ParameterBag(array(
-            'digits' => '0123ab',
-            'email' => 'example@example.com',
-            'url' => 'http://example.com/foo',
-            'dec' => '256',
-            'hex' => '0x100',
-            'array' => array('bang'),
-            ));
-
-        $this->assertEmpty($bag->filter('nokey'), '->filter() should return empty by default if no key is found');
-
-        $this->assertEquals('0123', $bag->filter('digits', '', false, FILTER_SANITIZE_NUMBER_INT), '->filter() gets a value of parameter as integer filtering out invalid characters');
-
-        $this->assertEquals('example@example.com', $bag->filter('email', '', false, FILTER_VALIDATE_EMAIL), '->filter() gets a value of parameter as email');
-
-        $this->assertEquals('http://example.com/foo', $bag->filter('url', '', false, FILTER_VALIDATE_URL, array('flags' => FILTER_FLAG_PATH_REQUIRED)), '->filter() gets a value of parameter as URL with a path');
-
-        // This test is repeated for code-coverage
-        $this->assertEquals('http://example.com/foo', $bag->filter('url', '', false, FILTER_VALIDATE_URL, FILTER_FLAG_PATH_REQUIRED), '->filter() gets a value of parameter as URL with a path');
-
-        $this->assertFalse($bag->filter('dec', '', false, FILTER_VALIDATE_INT, array(
-            'flags' => FILTER_FLAG_ALLOW_HEX,
-            'options' => array('min_range' => 1, 'max_range' => 0xff),
-        )), '->filter() gets a value of parameter as integer between boundaries');
-
-        $this->assertFalse($bag->filter('hex', '', false, FILTER_VALIDATE_INT, array(
-            'flags' => FILTER_FLAG_ALLOW_HEX,
-            'options' => array('min_range' => 1, 'max_range' => 0xff),
-        )), '->filter() gets a value of parameter as integer between boundaries');
-
-        $this->assertEquals(array('bang'), $bag->filter('array', '', false), '->filter() gets a value of parameter as an array');
-    }
-
-    /**
-     * @covers Symfony\Component\HttpFoundation\ParameterBag::getIterator
-     */
-    public function testGetIterator()
-    {
-        $parameters = array('foo' => 'bar', 'hello' => 'world');
-        $bag = new ParameterBag($parameters);
-
-        $i = 0;
-        foreach ($bag as $key => $val) {
-            ++$i;
-            $this->assertEquals($parameters[$key], $val);
-        }
-
-        $this->assertEquals(count($parameters), $i);
-    }
-
-    /**
-     * @covers Symfony\Component\HttpFoundation\ParameterBag::count
-     */
-    public function testCount()
-    {
-        $parameters = array('foo' => 'bar', 'hello' => 'world');
-        $bag = new ParameterBag($parameters);
-
-        $this->assertEquals(count($parameters), count($bag));
-    }
-
-    /**
-     * @covers Symfony\Component\HttpFoundation\ParameterBag::getBoolean
-     */
-    public function testGetBoolean()
-    {
-        $parameters = array('string_true' => 'true', 'string_false' => 'false');
-        $bag = new ParameterBag($parameters);
-
-        $this->assertTrue($bag->getBoolean('string_true'), '->getBoolean() gets the string true as boolean true');
-        $this->assertFalse($bag->getBoolean('string_false'), '->getBoolean() gets the string false as boolean false');
-        $this->assertFalse($bag->getBoolean('unknown'), '->getBoolean() returns false if a parameter is not defined');
-    }
-}
diff --git a/vendor/symfony/http-foundation/Tests/RedirectResponseTest.php b/vendor/symfony/http-foundation/Tests/RedirectResponseTest.php
deleted file mode 100644
index 2a097d6..0000000
--- a/vendor/symfony/http-foundation/Tests/RedirectResponseTest.php
+++ /dev/null
@@ -1,83 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpFoundation\Tests;
-
-use Symfony\Component\HttpFoundation\RedirectResponse;
-
-class RedirectResponseTest extends \PHPUnit_Framework_TestCase
-{
-    public function testGenerateMetaRedirect()
-    {
-        $response = new RedirectResponse('foo.bar');
-
-        $this->assertEquals(1, preg_match(
-            '#<meta http-equiv="refresh" content="\d+;url=foo\.bar" />#',
-            preg_replace(array('/\s+/', '/\'/'), array(' ', '"'), $response->getContent())
-        ));
-    }
-
-    /**
-     * @expectedException \InvalidArgumentException
-     */
-    public function testRedirectResponseConstructorNullUrl()
-    {
-        $response = new RedirectResponse(null);
-    }
-
-    /**
-     * @expectedException \InvalidArgumentException
-     */
-    public function testRedirectResponseConstructorWrongStatusCode()
-    {
-        $response = new RedirectResponse('foo.bar', 404);
-    }
-
-    public function testGenerateLocationHeader()
-    {
-        $response = new RedirectResponse('foo.bar');
-
-        $this->assertTrue($response->headers->has('Location'));
-        $this->assertEquals('foo.bar', $response->headers->get('Location'));
-    }
-
-    public function testGetTargetUrl()
-    {
-        $response = new RedirectResponse('foo.bar');
-
-        $this->assertEquals('foo.bar', $response->getTargetUrl());
-    }
-
-    public function testSetTargetUrl()
-    {
-        $response = new RedirectResponse('foo.bar');
-        $response->setTargetUrl('baz.beep');
-
-        $this->assertEquals('baz.beep', $response->getTargetUrl());
-    }
-
-    /**
-     * @expectedException \InvalidArgumentException
-     */
-    public function testSetTargetUrlNull()
-    {
-        $response = new RedirectResponse('foo.bar');
-        $response->setTargetUrl(null);
-    }
-
-    public function testCreate()
-    {
-        $response = RedirectResponse::create('foo', 301);
-
-        $this->assertInstanceOf('Symfony\Component\HttpFoundation\RedirectResponse', $response);
-        $this->assertEquals(301, $response->getStatusCode());
-    }
-}
diff --git a/vendor/symfony/http-foundation/Tests/RequestMatcherTest.php b/vendor/symfony/http-foundation/Tests/RequestMatcherTest.php
deleted file mode 100644
index cee9bcc..0000000
--- a/vendor/symfony/http-foundation/Tests/RequestMatcherTest.php
+++ /dev/null
@@ -1,150 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpFoundation\Tests;
-
-use Symfony\Component\HttpFoundation\RequestMatcher;
-use Symfony\Component\HttpFoundation\Request;
-
-class RequestMatcherTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @dataProvider testMethodFixtures
-     */
-    public function testMethod($requestMethod, $matcherMethod, $isMatch)
-    {
-        $matcher = new RequestMatcher();
-        $matcher->matchMethod($matcherMethod);
-        $request = Request::create('', $requestMethod);
-        $this->assertSame($isMatch, $matcher->matches($request));
-
-        $matcher = new RequestMatcher(null, null, $matcherMethod);
-        $request = Request::create('', $requestMethod);
-        $this->assertSame($isMatch, $matcher->matches($request));
-    }
-
-    public function testMethodFixtures()
-    {
-        return array(
-            array('get', 'get', true),
-            array('get', array('get', 'post'), true),
-            array('get', 'post', false),
-            array('get', 'GET', true),
-            array('get', array('GET', 'POST'), true),
-            array('get', 'POST', false),
-        );
-    }
-
-    public function testScheme()
-    {
-        $httpRequest = $request = $request = Request::create('');
-        $httpsRequest = $request = $request = Request::create('', 'get', array(), array(), array(), array('HTTPS' => 'on'));
-
-        $matcher = new RequestMatcher();
-        $matcher->matchScheme('https');
-        $this->assertFalse($matcher->matches($httpRequest));
-        $this->assertTrue($matcher->matches($httpsRequest));
-
-        $matcher->matchScheme('http');
-        $this->assertFalse($matcher->matches($httpsRequest));
-        $this->assertTrue($matcher->matches($httpRequest));
-
-        $matcher = new RequestMatcher();
-        $this->assertTrue($matcher->matches($httpsRequest));
-        $this->assertTrue($matcher->matches($httpRequest));
-    }
-
-    /**
-     * @dataProvider testHostFixture
-     */
-    public function testHost($pattern, $isMatch)
-    {
-        $matcher = new RequestMatcher();
-        $request = Request::create('', 'get', array(), array(), array(), array('HTTP_HOST' => 'foo.example.com'));
-
-        $matcher->matchHost($pattern);
-        $this->assertSame($isMatch, $matcher->matches($request));
-
-        $matcher = new RequestMatcher(null, $pattern);
-        $this->assertSame($isMatch, $matcher->matches($request));
-    }
-
-    public function testHostFixture()
-    {
-        return array(
-            array('.*\.example\.com', true),
-            array('\.example\.com$', true),
-            array('^.*\.example\.com$', true),
-            array('.*\.sensio\.com', false),
-            array('.*\.example\.COM', true),
-            array('\.example\.COM$', true),
-            array('^.*\.example\.COM$', true),
-            array('.*\.sensio\.COM', false),
-        );
-    }
-
-    public function testPath()
-    {
-        $matcher = new RequestMatcher();
-
-        $request = Request::create('/admin/foo');
-
-        $matcher->matchPath('/admin/.*');
-        $this->assertTrue($matcher->matches($request));
-
-        $matcher->matchPath('/admin');
-        $this->assertTrue($matcher->matches($request));
-
-        $matcher->matchPath('^/admin/.*$');
-        $this->assertTrue($matcher->matches($request));
-
-        $matcher->matchMethod('/blog/.*');
-        $this->assertFalse($matcher->matches($request));
-    }
-
-    public function testPathWithLocaleIsNotSupported()
-    {
-        $matcher = new RequestMatcher();
-        $request = Request::create('/en/login');
-        $request->setLocale('en');
-
-        $matcher->matchPath('^/{_locale}/login$');
-        $this->assertFalse($matcher->matches($request));
-    }
-
-    public function testPathWithEncodedCharacters()
-    {
-        $matcher = new RequestMatcher();
-        $request = Request::create('/admin/fo%20o');
-        $matcher->matchPath('^/admin/fo o*$');
-        $this->assertTrue($matcher->matches($request));
-    }
-
-    public function testAttributes()
-    {
-        $matcher = new RequestMatcher();
-
-        $request = Request::create('/admin/foo');
-        $request->attributes->set('foo', 'foo_bar');
-
-        $matcher->matchAttribute('foo', 'foo_.*');
-        $this->assertTrue($matcher->matches($request));
-
-        $matcher->matchAttribute('foo', 'foo');
-        $this->assertTrue($matcher->matches($request));
-
-        $matcher->matchAttribute('foo', '^foo_bar$');
-        $this->assertTrue($matcher->matches($request));
-
-        $matcher->matchAttribute('foo', 'babar');
-        $this->assertFalse($matcher->matches($request));
-    }
-}
diff --git a/vendor/symfony/http-foundation/Tests/RequestStackTest.php b/vendor/symfony/http-foundation/Tests/RequestStackTest.php
deleted file mode 100644
index e26b806..0000000
--- a/vendor/symfony/http-foundation/Tests/RequestStackTest.php
+++ /dev/null
@@ -1,69 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpFoundation\Tests;
-
-use Symfony\Component\HttpFoundation\Request;
-use Symfony\Component\HttpFoundation\RequestStack;
-
-class RequestStackTest extends \PHPUnit_Framework_TestCase
-{
-    public function testGetCurrentRequest()
-    {
-        $requestStack = new RequestStack();
-        $this->assertNull($requestStack->getCurrentRequest());
-
-        $request = Request::create('/foo');
-
-        $requestStack->push($request);
-        $this->assertSame($request, $requestStack->getCurrentRequest());
-
-        $this->assertSame($request, $requestStack->pop());
-        $this->assertNull($requestStack->getCurrentRequest());
-
-        $this->assertNull($requestStack->pop());
-    }
-
-    public function testGetMasterRequest()
-    {
-        $requestStack = new RequestStack();
-        $this->assertNull($requestStack->getMasterRequest());
-
-        $masterRequest = Request::create('/foo');
-        $subRequest = Request::create('/bar');
-
-        $requestStack->push($masterRequest);
-        $requestStack->push($subRequest);
-
-        $this->assertSame($masterRequest, $requestStack->getMasterRequest());
-    }
-
-    public function testGetParentRequest()
-    {
-        $requestStack = new RequestStack();
-        $this->assertNull($requestStack->getParentRequest());
-
-        $masterRequest = Request::create('/foo');
-
-        $requestStack->push($masterRequest);
-        $this->assertNull($requestStack->getParentRequest());
-
-        $firstSubRequest = Request::create('/bar');
-
-        $requestStack->push($firstSubRequest);
-        $this->assertSame($masterRequest, $requestStack->getParentRequest());
-
-        $secondSubRequest = Request::create('/baz');
-
-        $requestStack->push($secondSubRequest);
-        $this->assertSame($firstSubRequest, $requestStack->getParentRequest());
-    }
-}
diff --git a/vendor/symfony/http-foundation/Tests/RequestTest.php b/vendor/symfony/http-foundation/Tests/RequestTest.php
deleted file mode 100644
index ca86abd..0000000
--- a/vendor/symfony/http-foundation/Tests/RequestTest.php
+++ /dev/null
@@ -1,1890 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpFoundation\Tests;
-
-use Symfony\Component\HttpFoundation\Session\Storage\MockArraySessionStorage;
-use Symfony\Component\HttpFoundation\Session\Session;
-use Symfony\Component\HttpFoundation\Request;
-
-class RequestTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @covers Symfony\Component\HttpFoundation\Request::__construct
-     */
-    public function testConstructor()
-    {
-        $this->testInitialize();
-    }
-
-    /**
-     * @covers Symfony\Component\HttpFoundation\Request::initialize
-     */
-    public function testInitialize()
-    {
-        $request = new Request();
-
-        $request->initialize(array('foo' => 'bar'));
-        $this->assertEquals('bar', $request->query->get('foo'), '->initialize() takes an array of query parameters as its first argument');
-
-        $request->initialize(array(), array('foo' => 'bar'));
-        $this->assertEquals('bar', $request->request->get('foo'), '->initialize() takes an array of request parameters as its second argument');
-
-        $request->initialize(array(), array(), array('foo' => 'bar'));
-        $this->assertEquals('bar', $request->attributes->get('foo'), '->initialize() takes an array of attributes as its third argument');
-
-        $request->initialize(array(), array(), array(), array(), array(), array('HTTP_FOO' => 'bar'));
-        $this->assertEquals('bar', $request->headers->get('FOO'), '->initialize() takes an array of HTTP headers as its sixth argument');
-    }
-
-    public function testGetLocale()
-    {
-        $request = new Request();
-        $request->setLocale('pl');
-        $locale = $request->getLocale();
-        $this->assertEquals('pl', $locale);
-    }
-
-    public function testGetUser()
-    {
-        $request = Request::create('http://user_test:password_test@test.com/');
-        $user = $request->getUser();
-
-        $this->assertEquals('user_test', $user);
-    }
-
-    public function testGetPassword()
-    {
-        $request = Request::create('http://user_test:password_test@test.com/');
-        $password = $request->getPassword();
-
-        $this->assertEquals('password_test', $password);
-    }
-
-    public function testIsNoCache()
-    {
-        $request = new Request();
-        $isNoCache = $request->isNoCache();
-
-        $this->assertFalse($isNoCache);
-    }
-
-    public function testGetContentType()
-    {
-        $request = new Request();
-        $contentType = $request->getContentType();
-
-        $this->assertNull($contentType);
-    }
-
-    public function testSetDefaultLocale()
-    {
-        $request = new Request();
-        $request->setDefaultLocale('pl');
-        $locale = $request->getLocale();
-
-        $this->assertEquals('pl', $locale);
-    }
-
-    /**
-     * @covers Symfony\Component\HttpFoundation\Request::create
-     */
-    public function testCreate()
-    {
-        $request = Request::create('http://test.com/foo?bar=baz');
-        $this->assertEquals('http://test.com/foo?bar=baz', $request->getUri());
-        $this->assertEquals('/foo', $request->getPathInfo());
-        $this->assertEquals('bar=baz', $request->getQueryString());
-        $this->assertEquals(80, $request->getPort());
-        $this->assertEquals('test.com', $request->getHttpHost());
-        $this->assertFalse($request->isSecure());
-
-        $request = Request::create('http://test.com/foo', 'GET', array('bar' => 'baz'));
-        $this->assertEquals('http://test.com/foo?bar=baz', $request->getUri());
-        $this->assertEquals('/foo', $request->getPathInfo());
-        $this->assertEquals('bar=baz', $request->getQueryString());
-        $this->assertEquals(80, $request->getPort());
-        $this->assertEquals('test.com', $request->getHttpHost());
-        $this->assertFalse($request->isSecure());
-
-        $request = Request::create('http://test.com/foo?bar=foo', 'GET', array('bar' => 'baz'));
-        $this->assertEquals('http://test.com/foo?bar=baz', $request->getUri());
-        $this->assertEquals('/foo', $request->getPathInfo());
-        $this->assertEquals('bar=baz', $request->getQueryString());
-        $this->assertEquals(80, $request->getPort());
-        $this->assertEquals('test.com', $request->getHttpHost());
-        $this->assertFalse($request->isSecure());
-
-        $request = Request::create('https://test.com/foo?bar=baz');
-        $this->assertEquals('https://test.com/foo?bar=baz', $request->getUri());
-        $this->assertEquals('/foo', $request->getPathInfo());
-        $this->assertEquals('bar=baz', $request->getQueryString());
-        $this->assertEquals(443, $request->getPort());
-        $this->assertEquals('test.com', $request->getHttpHost());
-        $this->assertTrue($request->isSecure());
-
-        $request = Request::create('test.com:90/foo');
-        $this->assertEquals('http://test.com:90/foo', $request->getUri());
-        $this->assertEquals('/foo', $request->getPathInfo());
-        $this->assertEquals('test.com', $request->getHost());
-        $this->assertEquals('test.com:90', $request->getHttpHost());
-        $this->assertEquals(90, $request->getPort());
-        $this->assertFalse($request->isSecure());
-
-        $request = Request::create('https://test.com:90/foo');
-        $this->assertEquals('https://test.com:90/foo', $request->getUri());
-        $this->assertEquals('/foo', $request->getPathInfo());
-        $this->assertEquals('test.com', $request->getHost());
-        $this->assertEquals('test.com:90', $request->getHttpHost());
-        $this->assertEquals(90, $request->getPort());
-        $this->assertTrue($request->isSecure());
-
-        $request = Request::create('https://127.0.0.1:90/foo');
-        $this->assertEquals('https://127.0.0.1:90/foo', $request->getUri());
-        $this->assertEquals('/foo', $request->getPathInfo());
-        $this->assertEquals('127.0.0.1', $request->getHost());
-        $this->assertEquals('127.0.0.1:90', $request->getHttpHost());
-        $this->assertEquals(90, $request->getPort());
-        $this->assertTrue($request->isSecure());
-
-        $request = Request::create('https://[::1]:90/foo');
-        $this->assertEquals('https://[::1]:90/foo', $request->getUri());
-        $this->assertEquals('/foo', $request->getPathInfo());
-        $this->assertEquals('[::1]', $request->getHost());
-        $this->assertEquals('[::1]:90', $request->getHttpHost());
-        $this->assertEquals(90, $request->getPort());
-        $this->assertTrue($request->isSecure());
-
-        $request = Request::create('https://[::1]/foo');
-        $this->assertEquals('https://[::1]/foo', $request->getUri());
-        $this->assertEquals('/foo', $request->getPathInfo());
-        $this->assertEquals('[::1]', $request->getHost());
-        $this->assertEquals('[::1]', $request->getHttpHost());
-        $this->assertEquals(443, $request->getPort());
-        $this->assertTrue($request->isSecure());
-
-        $json = '{"jsonrpc":"2.0","method":"echo","id":7,"params":["Hello World"]}';
-        $request = Request::create('http://example.com/jsonrpc', 'POST', array(), array(), array(), array(), $json);
-        $this->assertEquals($json, $request->getContent());
-        $this->assertFalse($request->isSecure());
-
-        $request = Request::create('http://test.com');
-        $this->assertEquals('http://test.com/', $request->getUri());
-        $this->assertEquals('/', $request->getPathInfo());
-        $this->assertEquals('', $request->getQueryString());
-        $this->assertEquals(80, $request->getPort());
-        $this->assertEquals('test.com', $request->getHttpHost());
-        $this->assertFalse($request->isSecure());
-
-        $request = Request::create('http://test.com?test=1');
-        $this->assertEquals('http://test.com/?test=1', $request->getUri());
-        $this->assertEquals('/', $request->getPathInfo());
-        $this->assertEquals('test=1', $request->getQueryString());
-        $this->assertEquals(80, $request->getPort());
-        $this->assertEquals('test.com', $request->getHttpHost());
-        $this->assertFalse($request->isSecure());
-
-        $request = Request::create('http://test.com:90/?test=1');
-        $this->assertEquals('http://test.com:90/?test=1', $request->getUri());
-        $this->assertEquals('/', $request->getPathInfo());
-        $this->assertEquals('test=1', $request->getQueryString());
-        $this->assertEquals(90, $request->getPort());
-        $this->assertEquals('test.com:90', $request->getHttpHost());
-        $this->assertFalse($request->isSecure());
-
-        $request = Request::create('http://username:password@test.com');
-        $this->assertEquals('http://test.com/', $request->getUri());
-        $this->assertEquals('/', $request->getPathInfo());
-        $this->assertEquals('', $request->getQueryString());
-        $this->assertEquals(80, $request->getPort());
-        $this->assertEquals('test.com', $request->getHttpHost());
-        $this->assertEquals('username', $request->getUser());
-        $this->assertEquals('password', $request->getPassword());
-        $this->assertFalse($request->isSecure());
-
-        $request = Request::create('http://username@test.com');
-        $this->assertEquals('http://test.com/', $request->getUri());
-        $this->assertEquals('/', $request->getPathInfo());
-        $this->assertEquals('', $request->getQueryString());
-        $this->assertEquals(80, $request->getPort());
-        $this->assertEquals('test.com', $request->getHttpHost());
-        $this->assertEquals('username', $request->getUser());
-        $this->assertSame('', $request->getPassword());
-        $this->assertFalse($request->isSecure());
-
-        $request = Request::create('http://test.com/?foo');
-        $this->assertEquals('/?foo', $request->getRequestUri());
-        $this->assertEquals(array('foo' => ''), $request->query->all());
-
-        ## assume rewrite rule: (.*) --> app/app.php ; app/ is a symlink to a symfony web/ directory
-        $request = Request::create('http://test.com/apparthotel-1234', 'GET', array(), array(), array(),
-            array(
-                'DOCUMENT_ROOT' => '/var/www/www.test.com',
-                'SCRIPT_FILENAME' => '/var/www/www.test.com/app/app.php',
-                'SCRIPT_NAME' => '/app/app.php',
-                'PHP_SELF' => '/app/app.php/apparthotel-1234',
-            ));
-        $this->assertEquals('http://test.com/apparthotel-1234', $request->getUri());
-        $this->assertEquals('/apparthotel-1234', $request->getPathInfo());
-        $this->assertEquals('', $request->getQueryString());
-        $this->assertEquals(80, $request->getPort());
-        $this->assertEquals('test.com', $request->getHttpHost());
-        $this->assertFalse($request->isSecure());
-    }
-
-    /**
-     * @covers Symfony\Component\HttpFoundation\Request::create
-     */
-    public function testCreateCheckPrecedence()
-    {
-        // server is used by default
-        $request = Request::create('/', 'DELETE', array(), array(), array(), array(
-            'HTTP_HOST' => 'example.com',
-            'HTTPS' => 'on',
-            'SERVER_PORT' => 443,
-            'PHP_AUTH_USER' => 'fabien',
-            'PHP_AUTH_PW' => 'pa$$',
-            'QUERY_STRING' => 'foo=bar',
-            'CONTENT_TYPE' => 'application/json',
-        ));
-        $this->assertEquals('example.com', $request->getHost());
-        $this->assertEquals(443, $request->getPort());
-        $this->assertTrue($request->isSecure());
-        $this->assertEquals('fabien', $request->getUser());
-        $this->assertEquals('pa$$', $request->getPassword());
-        $this->assertEquals('', $request->getQueryString());
-        $this->assertEquals('application/json', $request->headers->get('CONTENT_TYPE'));
-
-        // URI has precedence over server
-        $request = Request::create('http://thomas:pokemon@example.net:8080/?foo=bar', 'GET', array(), array(), array(), array(
-            'HTTP_HOST' => 'example.com',
-            'HTTPS' => 'on',
-            'SERVER_PORT' => 443,
-        ));
-        $this->assertEquals('example.net', $request->getHost());
-        $this->assertEquals(8080, $request->getPort());
-        $this->assertFalse($request->isSecure());
-        $this->assertEquals('thomas', $request->getUser());
-        $this->assertEquals('pokemon', $request->getPassword());
-        $this->assertEquals('foo=bar', $request->getQueryString());
-    }
-
-    public function testDuplicate()
-    {
-        $request = new Request(array('foo' => 'bar'), array('foo' => 'bar'), array('foo' => 'bar'), array(), array(), array('HTTP_FOO' => 'bar'));
-        $dup = $request->duplicate();
-
-        $this->assertEquals($request->query->all(), $dup->query->all(), '->duplicate() duplicates a request an copy the current query parameters');
-        $this->assertEquals($request->request->all(), $dup->request->all(), '->duplicate() duplicates a request an copy the current request parameters');
-        $this->assertEquals($request->attributes->all(), $dup->attributes->all(), '->duplicate() duplicates a request an copy the current attributes');
-        $this->assertEquals($request->headers->all(), $dup->headers->all(), '->duplicate() duplicates a request an copy the current HTTP headers');
-
-        $dup = $request->duplicate(array('foo' => 'foobar'), array('foo' => 'foobar'), array('foo' => 'foobar'), array(), array(), array('HTTP_FOO' => 'foobar'));
-
-        $this->assertEquals(array('foo' => 'foobar'), $dup->query->all(), '->duplicate() overrides the query parameters if provided');
-        $this->assertEquals(array('foo' => 'foobar'), $dup->request->all(), '->duplicate() overrides the request parameters if provided');
-        $this->assertEquals(array('foo' => 'foobar'), $dup->attributes->all(), '->duplicate() overrides the attributes if provided');
-        $this->assertEquals(array('foo' => array('foobar')), $dup->headers->all(), '->duplicate() overrides the HTTP header if provided');
-    }
-
-    public function testDuplicateWithFormat()
-    {
-        $request = new Request(array(), array(), array('_format' => 'json'));
-        $dup = $request->duplicate();
-
-        $this->assertEquals('json', $dup->getRequestFormat());
-        $this->assertEquals('json', $dup->attributes->get('_format'));
-
-        $request = new Request();
-        $request->setRequestFormat('xml');
-        $dup = $request->duplicate();
-
-        $this->assertEquals('xml', $dup->getRequestFormat());
-    }
-
-    /**
-     * @covers Symfony\Component\HttpFoundation\Request::getFormat
-     * @covers Symfony\Component\HttpFoundation\Request::setFormat
-     * @dataProvider getFormatToMimeTypeMapProvider
-     */
-    public function testGetFormatFromMimeType($format, $mimeTypes)
-    {
-        $request = new Request();
-        foreach ($mimeTypes as $mime) {
-            $this->assertEquals($format, $request->getFormat($mime));
-        }
-        $request->setFormat($format, $mimeTypes);
-        foreach ($mimeTypes as $mime) {
-            $this->assertEquals($format, $request->getFormat($mime));
-        }
-    }
-
-    /**
-     * @covers Symfony\Component\HttpFoundation\Request::getFormat
-     */
-    public function testGetFormatFromMimeTypeWithParameters()
-    {
-        $request = new Request();
-        $this->assertEquals('json', $request->getFormat('application/json; charset=utf-8'));
-    }
-
-    /**
-     * @covers Symfony\Component\HttpFoundation\Request::getMimeType
-     * @dataProvider getFormatToMimeTypeMapProvider
-     */
-    public function testGetMimeTypeFromFormat($format, $mimeTypes)
-    {
-        if (null !== $format) {
-            $request = new Request();
-            $this->assertEquals($mimeTypes[0], $request->getMimeType($format));
-        }
-    }
-
-    public function getFormatToMimeTypeMapProvider()
-    {
-        return array(
-            array(null, array(null, 'unexistent-mime-type')),
-            array('txt', array('text/plain')),
-            array('js', array('application/javascript', 'application/x-javascript', 'text/javascript')),
-            array('css', array('text/css')),
-            array('json', array('application/json', 'application/x-json')),
-            array('xml', array('text/xml', 'application/xml', 'application/x-xml')),
-            array('rdf', array('application/rdf+xml')),
-            array('atom',array('application/atom+xml')),
-        );
-    }
-
-    /**
-     * @covers Symfony\Component\HttpFoundation\Request::getUri
-     */
-    public function testGetUri()
-    {
-        $server = array();
-
-        // Standard Request on non default PORT
-        // http://host:8080/index.php/path/info?query=string
-
-        $server['HTTP_HOST'] = 'host:8080';
-        $server['SERVER_NAME'] = 'servername';
-        $server['SERVER_PORT'] = '8080';
-
-        $server['QUERY_STRING'] = 'query=string';
-        $server['REQUEST_URI'] = '/index.php/path/info?query=string';
-        $server['SCRIPT_NAME'] = '/index.php';
-        $server['PATH_INFO'] = '/path/info';
-        $server['PATH_TRANSLATED'] = 'redirect:/index.php/path/info';
-        $server['PHP_SELF'] = '/index_dev.php/path/info';
-        $server['SCRIPT_FILENAME'] = '/some/where/index.php';
-
-        $request = new Request();
-
-        $request->initialize(array(), array(), array(), array(), array(), $server);
-
-        $this->assertEquals('http://host:8080/index.php/path/info?query=string', $request->getUri(), '->getUri() with non default port');
-
-        // Use std port number
-        $server['HTTP_HOST'] = 'host';
-        $server['SERVER_NAME'] = 'servername';
-        $server['SERVER_PORT'] = '80';
-
-        $request->initialize(array(), array(), array(), array(), array(), $server);
-
-        $this->assertEquals('http://host/index.php/path/info?query=string', $request->getUri(), '->getUri() with default port');
-
-        // Without HOST HEADER
-        unset($server['HTTP_HOST']);
-        $server['SERVER_NAME'] = 'servername';
-        $server['SERVER_PORT'] = '80';
-
-        $request->initialize(array(), array(), array(), array(), array(), $server);
-
-        $this->assertEquals('http://servername/index.php/path/info?query=string', $request->getUri(), '->getUri() with default port without HOST_HEADER');
-
-        // Request with URL REWRITING (hide index.php)
-        //   RewriteCond %{REQUEST_FILENAME} !-f
-        //   RewriteRule ^(.*)$ index.php [QSA,L]
-        // http://host:8080/path/info?query=string
-        $server = array();
-        $server['HTTP_HOST'] = 'host:8080';
-        $server['SERVER_NAME'] = 'servername';
-        $server['SERVER_PORT'] = '8080';
-
-        $server['REDIRECT_QUERY_STRING'] = 'query=string';
-        $server['REDIRECT_URL'] = '/path/info';
-        $server['SCRIPT_NAME'] = '/index.php';
-        $server['QUERY_STRING'] = 'query=string';
-        $server['REQUEST_URI'] = '/path/info?toto=test&1=1';
-        $server['SCRIPT_NAME'] = '/index.php';
-        $server['PHP_SELF'] = '/index.php';
-        $server['SCRIPT_FILENAME'] = '/some/where/index.php';
-
-        $request->initialize(array(), array(), array(), array(), array(), $server);
-        $this->assertEquals('http://host:8080/path/info?query=string', $request->getUri(), '->getUri() with rewrite');
-
-        // Use std port number
-        //  http://host/path/info?query=string
-        $server['HTTP_HOST'] = 'host';
-        $server['SERVER_NAME'] = 'servername';
-        $server['SERVER_PORT'] = '80';
-
-        $request->initialize(array(), array(), array(), array(), array(), $server);
-
-        $this->assertEquals('http://host/path/info?query=string', $request->getUri(), '->getUri() with rewrite and default port');
-
-        // Without HOST HEADER
-        unset($server['HTTP_HOST']);
-        $server['SERVER_NAME'] = 'servername';
-        $server['SERVER_PORT'] = '80';
-
-        $request->initialize(array(), array(), array(), array(), array(), $server);
-
-        $this->assertEquals('http://servername/path/info?query=string', $request->getUri(), '->getUri() with rewrite, default port without HOST_HEADER');
-
-        // With encoded characters
-
-        $server = array(
-            'HTTP_HOST' => 'host:8080',
-            'SERVER_NAME' => 'servername',
-            'SERVER_PORT' => '8080',
-            'QUERY_STRING' => 'query=string',
-            'REQUEST_URI' => '/ba%20se/index_dev.php/foo%20bar/in+fo?query=string',
-            'SCRIPT_NAME' => '/ba se/index_dev.php',
-            'PATH_TRANSLATED' => 'redirect:/index.php/foo bar/in+fo',
-            'PHP_SELF' => '/ba se/index_dev.php/path/info',
-            'SCRIPT_FILENAME' => '/some/where/ba se/index_dev.php',
-        );
-
-        $request->initialize(array(), array(), array(), array(), array(), $server);
-
-        $this->assertEquals(
-            'http://host:8080/ba%20se/index_dev.php/foo%20bar/in+fo?query=string',
-            $request->getUri()
-        );
-
-        // with user info
-
-        $server['PHP_AUTH_USER'] = 'fabien';
-        $request->initialize(array(), array(), array(), array(), array(), $server);
-        $this->assertEquals('http://host:8080/ba%20se/index_dev.php/foo%20bar/in+fo?query=string', $request->getUri());
-
-        $server['PHP_AUTH_PW'] = 'symfony';
-        $request->initialize(array(), array(), array(), array(), array(), $server);
-        $this->assertEquals('http://host:8080/ba%20se/index_dev.php/foo%20bar/in+fo?query=string', $request->getUri());
-    }
-
-    /**
-     * @covers Symfony\Component\HttpFoundation\Request::getUriForPath
-     */
-    public function testGetUriForPath()
-    {
-        $request = Request::create('http://test.com/foo?bar=baz');
-        $this->assertEquals('http://test.com/some/path', $request->getUriForPath('/some/path'));
-
-        $request = Request::create('http://test.com:90/foo?bar=baz');
-        $this->assertEquals('http://test.com:90/some/path', $request->getUriForPath('/some/path'));
-
-        $request = Request::create('https://test.com/foo?bar=baz');
-        $this->assertEquals('https://test.com/some/path', $request->getUriForPath('/some/path'));
-
-        $request = Request::create('https://test.com:90/foo?bar=baz');
-        $this->assertEquals('https://test.com:90/some/path', $request->getUriForPath('/some/path'));
-
-        $server = array();
-
-        // Standard Request on non default PORT
-        // http://host:8080/index.php/path/info?query=string
-
-        $server['HTTP_HOST'] = 'host:8080';
-        $server['SERVER_NAME'] = 'servername';
-        $server['SERVER_PORT'] = '8080';
-
-        $server['QUERY_STRING'] = 'query=string';
-        $server['REQUEST_URI'] = '/index.php/path/info?query=string';
-        $server['SCRIPT_NAME'] = '/index.php';
-        $server['PATH_INFO'] = '/path/info';
-        $server['PATH_TRANSLATED'] = 'redirect:/index.php/path/info';
-        $server['PHP_SELF'] = '/index_dev.php/path/info';
-        $server['SCRIPT_FILENAME'] = '/some/where/index.php';
-
-        $request = new Request();
-
-        $request->initialize(array(), array(), array(), array(), array(), $server);
-
-        $this->assertEquals('http://host:8080/index.php/some/path', $request->getUriForPath('/some/path'), '->getUriForPath() with non default port');
-
-        // Use std port number
-        $server['HTTP_HOST'] = 'host';
-        $server['SERVER_NAME'] = 'servername';
-        $server['SERVER_PORT'] = '80';
-
-        $request->initialize(array(), array(), array(), array(), array(), $server);
-
-        $this->assertEquals('http://host/index.php/some/path', $request->getUriForPath('/some/path'), '->getUriForPath() with default port');
-
-        // Without HOST HEADER
-        unset($server['HTTP_HOST']);
-        $server['SERVER_NAME'] = 'servername';
-        $server['SERVER_PORT'] = '80';
-
-        $request->initialize(array(), array(), array(), array(), array(), $server);
-
-        $this->assertEquals('http://servername/index.php/some/path', $request->getUriForPath('/some/path'), '->getUriForPath() with default port without HOST_HEADER');
-
-        // Request with URL REWRITING (hide index.php)
-        //   RewriteCond %{REQUEST_FILENAME} !-f
-        //   RewriteRule ^(.*)$ index.php [QSA,L]
-        // http://host:8080/path/info?query=string
-        $server = array();
-        $server['HTTP_HOST'] = 'host:8080';
-        $server['SERVER_NAME'] = 'servername';
-        $server['SERVER_PORT'] = '8080';
-
-        $server['REDIRECT_QUERY_STRING'] = 'query=string';
-        $server['REDIRECT_URL'] = '/path/info';
-        $server['SCRIPT_NAME'] = '/index.php';
-        $server['QUERY_STRING'] = 'query=string';
-        $server['REQUEST_URI'] = '/path/info?toto=test&1=1';
-        $server['SCRIPT_NAME'] = '/index.php';
-        $server['PHP_SELF'] = '/index.php';
-        $server['SCRIPT_FILENAME'] = '/some/where/index.php';
-
-        $request->initialize(array(), array(), array(), array(), array(), $server);
-        $this->assertEquals('http://host:8080/some/path', $request->getUriForPath('/some/path'), '->getUri() with rewrite');
-
-        // Use std port number
-        //  http://host/path/info?query=string
-        $server['HTTP_HOST'] = 'host';
-        $server['SERVER_NAME'] = 'servername';
-        $server['SERVER_PORT'] = '80';
-
-        $request->initialize(array(), array(), array(), array(), array(), $server);
-
-        $this->assertEquals('http://host/some/path', $request->getUriForPath('/some/path'), '->getUriForPath() with rewrite and default port');
-
-        // Without HOST HEADER
-        unset($server['HTTP_HOST']);
-        $server['SERVER_NAME'] = 'servername';
-        $server['SERVER_PORT'] = '80';
-
-        $request->initialize(array(), array(), array(), array(), array(), $server);
-
-        $this->assertEquals('http://servername/some/path', $request->getUriForPath('/some/path'), '->getUriForPath() with rewrite, default port without HOST_HEADER');
-        $this->assertEquals('servername', $request->getHttpHost());
-
-        // with user info
-
-        $server['PHP_AUTH_USER'] = 'fabien';
-        $request->initialize(array(), array(), array(), array(), array(), $server);
-        $this->assertEquals('http://servername/some/path', $request->getUriForPath('/some/path'));
-
-        $server['PHP_AUTH_PW'] = 'symfony';
-        $request->initialize(array(), array(), array(), array(), array(), $server);
-        $this->assertEquals('http://servername/some/path', $request->getUriForPath('/some/path'));
-    }
-
-    /**
-     * @dataProvider getRelativeUriForPathData()
-     */
-    public function testGetRelativeUriForPath($expected, $pathinfo, $path)
-    {
-        $this->assertEquals($expected, Request::create($pathinfo)->getRelativeUriForPath($path));
-    }
-
-    public function getRelativeUriForPathData()
-    {
-        return array(
-            array('me.png', '/foo', '/me.png'),
-            array('../me.png', '/foo/bar', '/me.png'),
-            array('me.png', '/foo/bar', '/foo/me.png'),
-            array('../baz/me.png', '/foo/bar/b', '/foo/baz/me.png'),
-            array('../../fooz/baz/me.png', '/foo/bar/b', '/fooz/baz/me.png'),
-            array('baz/me.png', '/foo/bar/b', 'baz/me.png'),
-        );
-    }
-
-    /**
-     * @covers Symfony\Component\HttpFoundation\Request::getUserInfo
-     */
-    public function testGetUserInfo()
-    {
-        $request = new Request();
-
-        $server['PHP_AUTH_USER'] = 'fabien';
-        $request->initialize(array(), array(), array(), array(), array(), $server);
-        $this->assertEquals('fabien', $request->getUserInfo());
-
-        $server['PHP_AUTH_USER'] = '0';
-        $request->initialize(array(), array(), array(), array(), array(), $server);
-        $this->assertEquals('0', $request->getUserInfo());
-
-        $server['PHP_AUTH_PW'] = '0';
-        $request->initialize(array(), array(), array(), array(), array(), $server);
-        $this->assertEquals('0:0', $request->getUserInfo());
-    }
-
-    /**
-     * @covers Symfony\Component\HttpFoundation\Request::getSchemeAndHttpHost
-     */
-    public function testGetSchemeAndHttpHost()
-    {
-        $request = new Request();
-
-        $server = array();
-        $server['SERVER_NAME'] = 'servername';
-        $server['SERVER_PORT'] = '90';
-        $request->initialize(array(), array(), array(), array(), array(), $server);
-        $this->assertEquals('http://servername:90', $request->getSchemeAndHttpHost());
-
-        $server['PHP_AUTH_USER'] = 'fabien';
-        $request->initialize(array(), array(), array(), array(), array(), $server);
-        $this->assertEquals('http://servername:90', $request->getSchemeAndHttpHost());
-
-        $server['PHP_AUTH_USER'] = '0';
-        $request->initialize(array(), array(), array(), array(), array(), $server);
-        $this->assertEquals('http://servername:90', $request->getSchemeAndHttpHost());
-
-        $server['PHP_AUTH_PW'] = '0';
-        $request->initialize(array(), array(), array(), array(), array(), $server);
-        $this->assertEquals('http://servername:90', $request->getSchemeAndHttpHost());
-    }
-
-    /**
-     * @covers Symfony\Component\HttpFoundation\Request::getQueryString
-     * @covers Symfony\Component\HttpFoundation\Request::normalizeQueryString
-     * @dataProvider getQueryStringNormalizationData
-     */
-    public function testGetQueryString($query, $expectedQuery, $msg)
-    {
-        $request = new Request();
-
-        $request->server->set('QUERY_STRING', $query);
-        $this->assertSame($expectedQuery, $request->getQueryString(), $msg);
-    }
-
-    public function getQueryStringNormalizationData()
-    {
-        return array(
-            array('foo', 'foo', 'works with valueless parameters'),
-            array('foo=', 'foo=', 'includes a dangling equal sign'),
-            array('bar=&foo=bar', 'bar=&foo=bar', '->works with empty parameters'),
-            array('foo=bar&bar=', 'bar=&foo=bar', 'sorts keys alphabetically'),
-
-            // GET parameters, that are submitted from a HTML form, encode spaces as "+" by default (as defined in enctype application/x-www-form-urlencoded).
-            // PHP also converts "+" to spaces when filling the global _GET or when using the function parse_str.
-            array('him=John%20Doe&her=Jane+Doe', 'her=Jane%20Doe&him=John%20Doe', 'normalizes spaces in both encodings "%20" and "+"'),
-
-            array('foo[]=1&foo[]=2', 'foo%5B%5D=1&foo%5B%5D=2', 'allows array notation'),
-            array('foo=1&foo=2', 'foo=1&foo=2', 'allows repeated parameters'),
-            array('pa%3Dram=foo%26bar%3Dbaz&test=test', 'pa%3Dram=foo%26bar%3Dbaz&test=test', 'works with encoded delimiters'),
-            array('0', '0', 'allows "0"'),
-            array('Jane Doe&John%20Doe', 'Jane%20Doe&John%20Doe', 'normalizes encoding in keys'),
-            array('her=Jane Doe&him=John%20Doe', 'her=Jane%20Doe&him=John%20Doe', 'normalizes encoding in values'),
-            array('foo=bar&&&test&&', 'foo=bar&test', 'removes unneeded delimiters'),
-            array('formula=e=m*c^2', 'formula=e%3Dm%2Ac%5E2', 'correctly treats only the first "=" as delimiter and the next as value'),
-
-            // Ignore pairs with empty key, even if there was a value, e.g. "=value", as such nameless values cannot be retrieved anyway.
-            // PHP also does not include them when building _GET.
-            array('foo=bar&=a=b&=x=y', 'foo=bar', 'removes params with empty key'),
-        );
-    }
-
-    public function testGetQueryStringReturnsNull()
-    {
-        $request = new Request();
-
-        $this->assertNull($request->getQueryString(), '->getQueryString() returns null for non-existent query string');
-
-        $request->server->set('QUERY_STRING', '');
-        $this->assertNull($request->getQueryString(), '->getQueryString() returns null for empty query string');
-    }
-
-    public function testGetHost()
-    {
-        $request = new Request();
-
-        $request->initialize(array('foo' => 'bar'));
-        $this->assertEquals('', $request->getHost(), '->getHost() return empty string if not initialized');
-
-        $request->initialize(array(), array(), array(), array(), array(), array('HTTP_HOST' => 'www.example.com'));
-        $this->assertEquals('www.example.com', $request->getHost(), '->getHost() from Host Header');
-
-        // Host header with port number
-        $request->initialize(array(), array(), array(), array(), array(), array('HTTP_HOST' => 'www.example.com:8080'));
-        $this->assertEquals('www.example.com', $request->getHost(), '->getHost() from Host Header with port number');
-
-        // Server values
-        $request->initialize(array(), array(), array(), array(), array(), array('SERVER_NAME' => 'www.example.com'));
-        $this->assertEquals('www.example.com', $request->getHost(), '->getHost() from server name');
-
-        $request->initialize(array(), array(), array(), array(), array(), array('SERVER_NAME' => 'www.example.com', 'HTTP_HOST' => 'www.host.com'));
-        $this->assertEquals('www.host.com', $request->getHost(), '->getHost() value from Host header has priority over SERVER_NAME ');
-    }
-
-    public function testGetPort()
-    {
-        $request = Request::create('http://example.com', 'GET', array(), array(), array(), array(
-            'HTTP_X_FORWARDED_PROTO' => 'https',
-            'HTTP_X_FORWARDED_PORT' => '443',
-        ));
-        $port = $request->getPort();
-
-        $this->assertEquals(80, $port, 'Without trusted proxies FORWARDED_PROTO and FORWARDED_PORT are ignored.');
-
-        Request::setTrustedProxies(array('1.1.1.1'));
-        $request = Request::create('http://example.com', 'GET', array(), array(), array(), array(
-            'HTTP_X_FORWARDED_PROTO' => 'https',
-            'HTTP_X_FORWARDED_PORT' => '8443',
-        ));
-        $this->assertEquals(80, $request->getPort(), 'With PROTO and PORT on untrusted connection server value takes precedence.');
-        $request->server->set('REMOTE_ADDR', '1.1.1.1');
-        $this->assertEquals(8443, $request->getPort(), 'With PROTO and PORT set PORT takes precedence.');
-
-        $request = Request::create('http://example.com', 'GET', array(), array(), array(), array(
-            'HTTP_X_FORWARDED_PROTO' => 'https',
-        ));
-        $this->assertEquals(80, $request->getPort(), 'With only PROTO set getPort() ignores trusted headers on untrusted connection.');
-        $request->server->set('REMOTE_ADDR', '1.1.1.1');
-        $this->assertEquals(443, $request->getPort(), 'With only PROTO set getPort() defaults to 443.');
-
-        $request = Request::create('http://example.com', 'GET', array(), array(), array(), array(
-            'HTTP_X_FORWARDED_PROTO' => 'http',
-        ));
-        $this->assertEquals(80, $request->getPort(), 'If X_FORWARDED_PROTO is set to HTTP getPort() ignores trusted headers on untrusted connection.');
-        $request->server->set('REMOTE_ADDR', '1.1.1.1');
-        $this->assertEquals(80, $request->getPort(), 'If X_FORWARDED_PROTO is set to HTTP getPort() returns port of the original request.');
-
-        $request = Request::create('http://example.com', 'GET', array(), array(), array(), array(
-            'HTTP_X_FORWARDED_PROTO' => 'On',
-        ));
-        $this->assertEquals(80, $request->getPort(), 'With only PROTO set and value is On, getPort() ignores trusted headers on untrusted connection.');
-        $request->server->set('REMOTE_ADDR', '1.1.1.1');
-        $this->assertEquals(443, $request->getPort(), 'With only PROTO set and value is On, getPort() defaults to 443.');
-
-        $request = Request::create('http://example.com', 'GET', array(), array(), array(), array(
-            'HTTP_X_FORWARDED_PROTO' => '1',
-        ));
-        $this->assertEquals(80, $request->getPort(), 'With only PROTO set and value is 1, getPort() ignores trusted headers on untrusted connection.');
-        $request->server->set('REMOTE_ADDR', '1.1.1.1');
-        $this->assertEquals(443, $request->getPort(), 'With only PROTO set and value is 1, getPort() defaults to 443.');
-
-        $request = Request::create('http://example.com', 'GET', array(), array(), array(), array(
-            'HTTP_X_FORWARDED_PROTO' => 'something-else',
-        ));
-        $port = $request->getPort();
-        $this->assertEquals(80, $port, 'With only PROTO set and value is not recognized, getPort() defaults to 80.');
-
-        Request::setTrustedProxies(array());
-    }
-
-    /**
-     * @expectedException \RuntimeException
-     */
-    public function testGetHostWithFakeHttpHostValue()
-    {
-        $request = new Request();
-        $request->initialize(array(), array(), array(), array(), array(), array('HTTP_HOST' => 'www.host.com?query=string'));
-        $request->getHost();
-    }
-
-    /**
-     * @covers Symfony\Component\HttpFoundation\Request::setMethod
-     * @covers Symfony\Component\HttpFoundation\Request::getMethod
-     */
-    public function testGetSetMethod()
-    {
-        $request = new Request();
-
-        $this->assertEquals('GET', $request->getMethod(), '->getMethod() returns GET if no method is defined');
-
-        $request->setMethod('get');
-        $this->assertEquals('GET', $request->getMethod(), '->getMethod() returns an uppercased string');
-
-        $request->setMethod('PURGE');
-        $this->assertEquals('PURGE', $request->getMethod(), '->getMethod() returns the method even if it is not a standard one');
-
-        $request->setMethod('POST');
-        $this->assertEquals('POST', $request->getMethod(), '->getMethod() returns the method POST if no _method is defined');
-
-        $request->setMethod('POST');
-        $request->request->set('_method', 'purge');
-        $this->assertEquals('POST', $request->getMethod(), '->getMethod() does not return the method from _method if defined and POST but support not enabled');
-
-        $request = new Request();
-        $request->setMethod('POST');
-        $request->request->set('_method', 'purge');
-
-        $this->assertFalse(Request::getHttpMethodParameterOverride(), 'httpMethodParameterOverride should be disabled by default');
-
-        Request::enableHttpMethodParameterOverride();
-
-        $this->assertTrue(Request::getHttpMethodParameterOverride(), 'httpMethodParameterOverride should be enabled now but it is not');
-
-        $this->assertEquals('PURGE', $request->getMethod(), '->getMethod() returns the method from _method if defined and POST');
-        $this->disableHttpMethodParameterOverride();
-
-        $request = new Request();
-        $request->setMethod('POST');
-        $request->query->set('_method', 'purge');
-        $this->assertEquals('POST', $request->getMethod(), '->getMethod() does not return the method from _method if defined and POST but support not enabled');
-
-        $request = new Request();
-        $request->setMethod('POST');
-        $request->query->set('_method', 'purge');
-        Request::enableHttpMethodParameterOverride();
-        $this->assertEquals('PURGE', $request->getMethod(), '->getMethod() returns the method from _method if defined and POST');
-        $this->disableHttpMethodParameterOverride();
-
-        $request = new Request();
-        $request->setMethod('POST');
-        $request->headers->set('X-HTTP-METHOD-OVERRIDE', 'delete');
-        $this->assertEquals('DELETE', $request->getMethod(), '->getMethod() returns the method from X-HTTP-Method-Override even though _method is set if defined and POST');
-
-        $request = new Request();
-        $request->setMethod('POST');
-        $request->headers->set('X-HTTP-METHOD-OVERRIDE', 'delete');
-        $this->assertEquals('DELETE', $request->getMethod(), '->getMethod() returns the method from X-HTTP-Method-Override if defined and POST');
-    }
-
-    /**
-     * @dataProvider testGetClientIpsProvider
-     */
-    public function testGetClientIp($expected, $remoteAddr, $httpForwardedFor, $trustedProxies)
-    {
-        $request = $this->getRequestInstanceForClientIpTests($remoteAddr, $httpForwardedFor, $trustedProxies);
-
-        $this->assertEquals($expected[0], $request->getClientIp());
-
-        Request::setTrustedProxies(array());
-    }
-
-    /**
-     * @dataProvider testGetClientIpsProvider
-     */
-    public function testGetClientIps($expected, $remoteAddr, $httpForwardedFor, $trustedProxies)
-    {
-        $request = $this->getRequestInstanceForClientIpTests($remoteAddr, $httpForwardedFor, $trustedProxies);
-
-        $this->assertEquals($expected, $request->getClientIps());
-
-        Request::setTrustedProxies(array());
-    }
-
-    /**
-     * @dataProvider testGetClientIpsForwardedProvider
-     */
-    public function testGetClientIpsForwarded($expected, $remoteAddr, $httpForwarded, $trustedProxies)
-    {
-        $request = $this->getRequestInstanceForClientIpsForwardedTests($remoteAddr, $httpForwarded, $trustedProxies);
-
-        $this->assertEquals($expected, $request->getClientIps());
-
-        Request::setTrustedProxies(array());
-    }
-
-    public function testGetClientIpsForwardedProvider()
-    {
-        //              $expected                                  $remoteAddr  $httpForwarded                                       $trustedProxies
-        return array(
-            array(array('127.0.0.1'),                              '127.0.0.1', 'for="_gazonk"',                                      null),
-            array(array('_gazonk'),                                '127.0.0.1', 'for="_gazonk"',                                      array('127.0.0.1')),
-            array(array('88.88.88.88'),                            '127.0.0.1', 'for="88.88.88.88:80"',                               array('127.0.0.1')),
-            array(array('192.0.2.60'),                             '::1',       'for=192.0.2.60;proto=http;by=203.0.113.43',          array('::1')),
-            array(array('2620:0:1cfe:face:b00c::3', '192.0.2.43'), '::1',       'for=192.0.2.43, for=2620:0:1cfe:face:b00c::3',       array('::1')),
-            array(array('2001:db8:cafe::17'),                      '::1',       'for="[2001:db8:cafe::17]:4711',                      array('::1')),
-        );
-    }
-
-    public function testGetClientIpsProvider()
-    {
-        //        $expected                   $remoteAddr                $httpForwardedFor            $trustedProxies
-        return array(
-            // simple IPv4
-            array(array('88.88.88.88'),              '88.88.88.88',              null,                        null),
-            // trust the IPv4 remote addr
-            array(array('88.88.88.88'),              '88.88.88.88',              null,                        array('88.88.88.88')),
-
-            // simple IPv6
-            array(array('::1'),                      '::1',                      null,                        null),
-            // trust the IPv6 remote addr
-            array(array('::1'),                      '::1',                      null,                        array('::1')),
-
-            // forwarded for with remote IPv4 addr not trusted
-            array(array('127.0.0.1'),                '127.0.0.1',                '88.88.88.88',               null),
-            // forwarded for with remote IPv4 addr trusted
-            array(array('88.88.88.88'),              '127.0.0.1',                '88.88.88.88',               array('127.0.0.1')),
-            // forwarded for with remote IPv4 and all FF addrs trusted
-            array(array('88.88.88.88'),              '127.0.0.1',                '88.88.88.88',               array('127.0.0.1', '88.88.88.88')),
-            // forwarded for with remote IPv4 range trusted
-            array(array('88.88.88.88'),              '123.45.67.89',             '88.88.88.88',               array('123.45.67.0/24')),
-
-            // forwarded for with remote IPv6 addr not trusted
-            array(array('1620:0:1cfe:face:b00c::3'), '1620:0:1cfe:face:b00c::3', '2620:0:1cfe:face:b00c::3',  null),
-            // forwarded for with remote IPv6 addr trusted
-            array(array('2620:0:1cfe:face:b00c::3'), '1620:0:1cfe:face:b00c::3', '2620:0:1cfe:face:b00c::3',  array('1620:0:1cfe:face:b00c::3')),
-            // forwarded for with remote IPv6 range trusted
-            array(array('88.88.88.88'),              '2a01:198:603:0:396e:4789:8e99:890f', '88.88.88.88',     array('2a01:198:603:0::/65')),
-
-            // multiple forwarded for with remote IPv4 addr trusted
-            array(array('88.88.88.88', '87.65.43.21', '127.0.0.1'), '123.45.67.89', '127.0.0.1, 87.65.43.21, 88.88.88.88', array('123.45.67.89')),
-            // multiple forwarded for with remote IPv4 addr and some reverse proxies trusted
-            array(array('87.65.43.21', '127.0.0.1'), '123.45.67.89',             '127.0.0.1, 87.65.43.21, 88.88.88.88', array('123.45.67.89', '88.88.88.88')),
-            // multiple forwarded for with remote IPv4 addr and some reverse proxies trusted but in the middle
-            array(array('88.88.88.88', '127.0.0.1'), '123.45.67.89',             '127.0.0.1, 87.65.43.21, 88.88.88.88', array('123.45.67.89', '87.65.43.21')),
-            // multiple forwarded for with remote IPv4 addr and all reverse proxies trusted
-            array(array('127.0.0.1'),                '123.45.67.89',             '127.0.0.1, 87.65.43.21, 88.88.88.88', array('123.45.67.89', '87.65.43.21', '88.88.88.88', '127.0.0.1')),
-
-            // multiple forwarded for with remote IPv6 addr trusted
-            array(array('2620:0:1cfe:face:b00c::3', '3620:0:1cfe:face:b00c::3'), '1620:0:1cfe:face:b00c::3', '3620:0:1cfe:face:b00c::3,2620:0:1cfe:face:b00c::3', array('1620:0:1cfe:face:b00c::3')),
-            // multiple forwarded for with remote IPv6 addr and some reverse proxies trusted
-            array(array('3620:0:1cfe:face:b00c::3'), '1620:0:1cfe:face:b00c::3', '3620:0:1cfe:face:b00c::3,2620:0:1cfe:face:b00c::3', array('1620:0:1cfe:face:b00c::3', '2620:0:1cfe:face:b00c::3')),
-            // multiple forwarded for with remote IPv4 addr and some reverse proxies trusted but in the middle
-            array(array('2620:0:1cfe:face:b00c::3', '4620:0:1cfe:face:b00c::3'), '1620:0:1cfe:face:b00c::3', '4620:0:1cfe:face:b00c::3,3620:0:1cfe:face:b00c::3,2620:0:1cfe:face:b00c::3', array('1620:0:1cfe:face:b00c::3', '3620:0:1cfe:face:b00c::3')),
-
-            // client IP with port
-            array(array('88.88.88.88'), '127.0.0.1', '88.88.88.88:12345, 127.0.0.1', array('127.0.0.1')),
-        );
-    }
-
-    public function testGetContentWorksTwiceInDefaultMode()
-    {
-        $req = new Request();
-        $this->assertEquals('', $req->getContent());
-        $this->assertEquals('', $req->getContent());
-    }
-
-    public function testGetContentReturnsResource()
-    {
-        $req = new Request();
-        $retval = $req->getContent(true);
-        $this->assertInternalType('resource', $retval);
-        $this->assertEquals('', fread($retval, 1));
-        $this->assertTrue(feof($retval));
-    }
-
-    public function testGetContentReturnsResourceWhenContentSetInConstructor()
-    {
-        $req = new Request(array(), array(), array(), array(), array(), array(), 'MyContent');
-        $resource = $req->getContent(true);
-
-        $this->assertTrue(is_resource($resource));
-        $this->assertEquals('MyContent', stream_get_contents($resource));
-    }
-
-    public function testContentAsResource()
-    {
-        $resource = fopen('php://memory', 'r+');
-        fwrite($resource, 'My other content');
-        rewind($resource);
-
-        $req = new Request(array(), array(), array(), array(), array(), array(), $resource);
-        $this->assertEquals('My other content', stream_get_contents($req->getContent(true)));
-        $this->assertEquals('My other content', $req->getContent());
-    }
-
-    /**
-     * @expectedException \LogicException
-     * @dataProvider getContentCantBeCalledTwiceWithResourcesProvider
-     */
-    public function testGetContentCantBeCalledTwiceWithResources($first, $second)
-    {
-        if (PHP_VERSION_ID >= 50600) {
-            $this->markTestSkipped('PHP >= 5.6 allows to open php://input several times.');
-        }
-
-        $req = new Request();
-        $req->getContent($first);
-        $req->getContent($second);
-    }
-
-    /**
-     * @dataProvider getContentCantBeCalledTwiceWithResourcesProvider
-     */
-    public function testGetContentCanBeCalledTwiceWithResources($first, $second)
-    {
-        if (PHP_VERSION_ID < 50600) {
-            $this->markTestSkipped('PHP < 5.6 does not allow to open php://input several times.');
-        }
-
-        $req = new Request();
-        $a = $req->getContent($first);
-        $b = $req->getContent($second);
-
-        if ($first) {
-            $a = stream_get_contents($a);
-        }
-
-        if ($second) {
-            $b = stream_get_contents($b);
-        }
-
-        $this->assertEquals($a, $b);
-    }
-
-    public function getContentCantBeCalledTwiceWithResourcesProvider()
-    {
-        return array(
-            'Resource then fetch' => array(true, false),
-            'Resource then resource' => array(true, true),
-        );
-    }
-
-    public function provideOverloadedMethods()
-    {
-        return array(
-            array('PUT'),
-            array('DELETE'),
-            array('PATCH'),
-            array('put'),
-            array('delete'),
-            array('patch'),
-
-        );
-    }
-
-    /**
-     * @dataProvider provideOverloadedMethods
-     */
-    public function testCreateFromGlobals($method)
-    {
-        $normalizedMethod = strtoupper($method);
-
-        $_GET['foo1'] = 'bar1';
-        $_POST['foo2'] = 'bar2';
-        $_COOKIE['foo3'] = 'bar3';
-        $_FILES['foo4'] = array('bar4');
-        $_SERVER['foo5'] = 'bar5';
-
-        $request = Request::createFromGlobals();
-        $this->assertEquals('bar1', $request->query->get('foo1'), '::fromGlobals() uses values from $_GET');
-        $this->assertEquals('bar2', $request->request->get('foo2'), '::fromGlobals() uses values from $_POST');
-        $this->assertEquals('bar3', $request->cookies->get('foo3'), '::fromGlobals() uses values from $_COOKIE');
-        $this->assertEquals(array('bar4'), $request->files->get('foo4'), '::fromGlobals() uses values from $_FILES');
-        $this->assertEquals('bar5', $request->server->get('foo5'), '::fromGlobals() uses values from $_SERVER');
-
-        unset($_GET['foo1'], $_POST['foo2'], $_COOKIE['foo3'], $_FILES['foo4'], $_SERVER['foo5']);
-
-        $_SERVER['REQUEST_METHOD'] = $method;
-        $_SERVER['CONTENT_TYPE'] = 'application/x-www-form-urlencoded';
-        $request = RequestContentProxy::createFromGlobals();
-        $this->assertEquals($normalizedMethod, $request->getMethod());
-        $this->assertEquals('mycontent', $request->request->get('content'));
-
-        unset($_SERVER['REQUEST_METHOD'], $_SERVER['CONTENT_TYPE']);
-
-        Request::createFromGlobals();
-        Request::enableHttpMethodParameterOverride();
-        $_POST['_method'] = $method;
-        $_POST['foo6'] = 'bar6';
-        $_SERVER['REQUEST_METHOD'] = 'PoSt';
-        $request = Request::createFromGlobals();
-        $this->assertEquals($normalizedMethod, $request->getMethod());
-        $this->assertEquals('POST', $request->getRealMethod());
-        $this->assertEquals('bar6', $request->request->get('foo6'));
-
-        unset($_POST['_method'], $_POST['foo6'], $_SERVER['REQUEST_METHOD']);
-        $this->disableHttpMethodParameterOverride();
-    }
-
-    public function testOverrideGlobals()
-    {
-        $request = new Request();
-        $request->initialize(array('foo' => 'bar'));
-
-        // as the Request::overrideGlobals really work, it erase $_SERVER, so we must backup it
-        $server = $_SERVER;
-
-        $request->overrideGlobals();
-
-        $this->assertEquals(array('foo' => 'bar'), $_GET);
-
-        $request->initialize(array(), array('foo' => 'bar'));
-        $request->overrideGlobals();
-
-        $this->assertEquals(array('foo' => 'bar'), $_POST);
-
-        $this->assertArrayNotHasKey('HTTP_X_FORWARDED_PROTO', $_SERVER);
-
-        $request->headers->set('X_FORWARDED_PROTO', 'https');
-
-        Request::setTrustedProxies(array('1.1.1.1'));
-        $this->assertFalse($request->isSecure());
-        $request->server->set('REMOTE_ADDR', '1.1.1.1');
-        $this->assertTrue($request->isSecure());
-        Request::setTrustedProxies(array());
-
-        $request->overrideGlobals();
-
-        $this->assertArrayHasKey('HTTP_X_FORWARDED_PROTO', $_SERVER);
-
-        $request->headers->set('CONTENT_TYPE', 'multipart/form-data');
-        $request->headers->set('CONTENT_LENGTH', 12345);
-
-        $request->overrideGlobals();
-
-        $this->assertArrayHasKey('CONTENT_TYPE', $_SERVER);
-        $this->assertArrayHasKey('CONTENT_LENGTH', $_SERVER);
-
-        $request->initialize(array('foo' => 'bar', 'baz' => 'foo'));
-        $request->query->remove('baz');
-
-        $request->overrideGlobals();
-
-        $this->assertEquals(array('foo' => 'bar'), $_GET);
-        $this->assertEquals('foo=bar', $_SERVER['QUERY_STRING']);
-        $this->assertEquals('foo=bar', $request->server->get('QUERY_STRING'));
-
-        // restore initial $_SERVER array
-        $_SERVER = $server;
-    }
-
-    public function testGetScriptName()
-    {
-        $request = new Request();
-        $this->assertEquals('', $request->getScriptName());
-
-        $server = array();
-        $server['SCRIPT_NAME'] = '/index.php';
-
-        $request->initialize(array(), array(), array(), array(), array(), $server);
-
-        $this->assertEquals('/index.php', $request->getScriptName());
-
-        $server = array();
-        $server['ORIG_SCRIPT_NAME'] = '/frontend.php';
-        $request->initialize(array(), array(), array(), array(), array(), $server);
-
-        $this->assertEquals('/frontend.php', $request->getScriptName());
-
-        $server = array();
-        $server['SCRIPT_NAME'] = '/index.php';
-        $server['ORIG_SCRIPT_NAME'] = '/frontend.php';
-        $request->initialize(array(), array(), array(), array(), array(), $server);
-
-        $this->assertEquals('/index.php', $request->getScriptName());
-    }
-
-    public function testGetBasePath()
-    {
-        $request = new Request();
-        $this->assertEquals('', $request->getBasePath());
-
-        $server = array();
-        $server['SCRIPT_FILENAME'] = '/some/where/index.php';
-        $request->initialize(array(), array(), array(), array(), array(), $server);
-        $this->assertEquals('', $request->getBasePath());
-
-        $server = array();
-        $server['SCRIPT_FILENAME'] = '/some/where/index.php';
-        $server['SCRIPT_NAME'] = '/index.php';
-        $request->initialize(array(), array(), array(), array(), array(), $server);
-
-        $this->assertEquals('', $request->getBasePath());
-
-        $server = array();
-        $server['SCRIPT_FILENAME'] = '/some/where/index.php';
-        $server['PHP_SELF'] = '/index.php';
-        $request->initialize(array(), array(), array(), array(), array(), $server);
-
-        $this->assertEquals('', $request->getBasePath());
-
-        $server = array();
-        $server['SCRIPT_FILENAME'] = '/some/where/index.php';
-        $server['ORIG_SCRIPT_NAME'] = '/index.php';
-        $request->initialize(array(), array(), array(), array(), array(), $server);
-
-        $this->assertEquals('', $request->getBasePath());
-    }
-
-    public function testGetPathInfo()
-    {
-        $request = new Request();
-        $this->assertEquals('/', $request->getPathInfo());
-
-        $server = array();
-        $server['REQUEST_URI'] = '/path/info';
-        $request->initialize(array(), array(), array(), array(), array(), $server);
-
-        $this->assertEquals('/path/info', $request->getPathInfo());
-
-        $server = array();
-        $server['REQUEST_URI'] = '/path%20test/info';
-        $request->initialize(array(), array(), array(), array(), array(), $server);
-
-        $this->assertEquals('/path%20test/info', $request->getPathInfo());
-    }
-
-    public function testGetPreferredLanguage()
-    {
-        $request = new Request();
-        $this->assertNull($request->getPreferredLanguage());
-        $this->assertNull($request->getPreferredLanguage(array()));
-        $this->assertEquals('fr', $request->getPreferredLanguage(array('fr')));
-        $this->assertEquals('fr', $request->getPreferredLanguage(array('fr', 'en')));
-        $this->assertEquals('en', $request->getPreferredLanguage(array('en', 'fr')));
-        $this->assertEquals('fr-ch', $request->getPreferredLanguage(array('fr-ch', 'fr-fr')));
-
-        $request = new Request();
-        $request->headers->set('Accept-language', 'zh, en-us; q=0.8, en; q=0.6');
-        $this->assertEquals('en', $request->getPreferredLanguage(array('en', 'en-us')));
-
-        $request = new Request();
-        $request->headers->set('Accept-language', 'zh, en-us; q=0.8, en; q=0.6');
-        $this->assertEquals('en', $request->getPreferredLanguage(array('fr', 'en')));
-
-        $request = new Request();
-        $request->headers->set('Accept-language', 'zh, en-us; q=0.8');
-        $this->assertEquals('en', $request->getPreferredLanguage(array('fr', 'en')));
-
-        $request = new Request();
-        $request->headers->set('Accept-language', 'zh, en-us; q=0.8, fr-fr; q=0.6, fr; q=0.5');
-        $this->assertEquals('en', $request->getPreferredLanguage(array('fr', 'en')));
-    }
-
-    public function testIsXmlHttpRequest()
-    {
-        $request = new Request();
-        $this->assertFalse($request->isXmlHttpRequest());
-
-        $request->headers->set('X-Requested-With', 'XMLHttpRequest');
-        $this->assertTrue($request->isXmlHttpRequest());
-
-        $request->headers->remove('X-Requested-With');
-        $this->assertFalse($request->isXmlHttpRequest());
-    }
-
-    public function testIntlLocale()
-    {
-        if (!extension_loaded('intl')) {
-            $this->markTestSkipped('The intl extension is needed to run this test.');
-        }
-
-        $request = new Request();
-
-        $request->setDefaultLocale('fr');
-        $this->assertEquals('fr', $request->getLocale());
-        $this->assertEquals('fr', \Locale::getDefault());
-
-        $request->setLocale('en');
-        $this->assertEquals('en', $request->getLocale());
-        $this->assertEquals('en', \Locale::getDefault());
-
-        $request->setDefaultLocale('de');
-        $this->assertEquals('en', $request->getLocale());
-        $this->assertEquals('en', \Locale::getDefault());
-    }
-
-    public function testGetCharsets()
-    {
-        $request = new Request();
-        $this->assertEquals(array(), $request->getCharsets());
-        $request->headers->set('Accept-Charset', 'ISO-8859-1, US-ASCII, UTF-8; q=0.8, ISO-10646-UCS-2; q=0.6');
-        $this->assertEquals(array(), $request->getCharsets()); // testing caching
-
-        $request = new Request();
-        $request->headers->set('Accept-Charset', 'ISO-8859-1, US-ASCII, UTF-8; q=0.8, ISO-10646-UCS-2; q=0.6');
-        $this->assertEquals(array('ISO-8859-1', 'US-ASCII', 'UTF-8', 'ISO-10646-UCS-2'), $request->getCharsets());
-
-        $request = new Request();
-        $request->headers->set('Accept-Charset', 'ISO-8859-1,utf-8;q=0.7,*;q=0.7');
-        $this->assertEquals(array('ISO-8859-1', 'utf-8', '*'), $request->getCharsets());
-    }
-
-    public function testGetEncodings()
-    {
-        $request = new Request();
-        $this->assertEquals(array(), $request->getEncodings());
-        $request->headers->set('Accept-Encoding', 'gzip,deflate,sdch');
-        $this->assertEquals(array(), $request->getEncodings()); // testing caching
-
-        $request = new Request();
-        $request->headers->set('Accept-Encoding', 'gzip,deflate,sdch');
-        $this->assertEquals(array('gzip', 'deflate', 'sdch'), $request->getEncodings());
-
-        $request = new Request();
-        $request->headers->set('Accept-Encoding', 'gzip;q=0.4,deflate;q=0.9,compress;q=0.7');
-        $this->assertEquals(array('deflate', 'compress', 'gzip'), $request->getEncodings());
-    }
-
-    public function testGetAcceptableContentTypes()
-    {
-        $request = new Request();
-        $this->assertEquals(array(), $request->getAcceptableContentTypes());
-        $request->headers->set('Accept', 'application/vnd.wap.wmlscriptc, text/vnd.wap.wml, application/vnd.wap.xhtml+xml, application/xhtml+xml, text/html, multipart/mixed, */*');
-        $this->assertEquals(array(), $request->getAcceptableContentTypes()); // testing caching
-
-        $request = new Request();
-        $request->headers->set('Accept', 'application/vnd.wap.wmlscriptc, text/vnd.wap.wml, application/vnd.wap.xhtml+xml, application/xhtml+xml, text/html, multipart/mixed, */*');
-        $this->assertEquals(array('application/vnd.wap.wmlscriptc', 'text/vnd.wap.wml', 'application/vnd.wap.xhtml+xml', 'application/xhtml+xml', 'text/html', 'multipart/mixed', '*/*'), $request->getAcceptableContentTypes());
-    }
-
-    public function testGetLanguages()
-    {
-        $request = new Request();
-        $this->assertEquals(array(), $request->getLanguages());
-
-        $request = new Request();
-        $request->headers->set('Accept-language', 'zh, en-us; q=0.8, en; q=0.6');
-        $this->assertEquals(array('zh', 'en_US', 'en'), $request->getLanguages());
-        $this->assertEquals(array('zh', 'en_US', 'en'), $request->getLanguages());
-
-        $request = new Request();
-        $request->headers->set('Accept-language', 'zh, en-us; q=0.6, en; q=0.8');
-        $this->assertEquals(array('zh', 'en', 'en_US'), $request->getLanguages()); // Test out of order qvalues
-
-        $request = new Request();
-        $request->headers->set('Accept-language', 'zh, en, en-us');
-        $this->assertEquals(array('zh', 'en', 'en_US'), $request->getLanguages()); // Test equal weighting without qvalues
-
-        $request = new Request();
-        $request->headers->set('Accept-language', 'zh; q=0.6, en, en-us; q=0.6');
-        $this->assertEquals(array('en', 'zh', 'en_US'), $request->getLanguages()); // Test equal weighting with qvalues
-
-        $request = new Request();
-        $request->headers->set('Accept-language', 'zh, i-cherokee; q=0.6');
-        $this->assertEquals(array('zh', 'cherokee'), $request->getLanguages());
-    }
-
-    public function testGetRequestFormat()
-    {
-        $request = new Request();
-        $this->assertEquals('html', $request->getRequestFormat());
-
-        $request = new Request();
-        $this->assertNull($request->getRequestFormat(null));
-
-        $request = new Request();
-        $this->assertNull($request->setRequestFormat('foo'));
-        $this->assertEquals('foo', $request->getRequestFormat(null));
-    }
-
-    public function testHasSession()
-    {
-        $request = new Request();
-
-        $this->assertFalse($request->hasSession());
-        $request->setSession(new Session(new MockArraySessionStorage()));
-        $this->assertTrue($request->hasSession());
-    }
-
-    public function testGetSession()
-    {
-        $request = new Request();
-
-        $request->setSession(new Session(new MockArraySessionStorage()));
-        $this->assertTrue($request->hasSession());
-
-        $session = $request->getSession();
-        $this->assertObjectHasAttribute('storage', $session);
-        $this->assertObjectHasAttribute('flashName', $session);
-        $this->assertObjectHasAttribute('attributeName', $session);
-    }
-
-    public function testHasPreviousSession()
-    {
-        $request = new Request();
-
-        $this->assertFalse($request->hasPreviousSession());
-        $request->cookies->set('MOCKSESSID', 'foo');
-        $this->assertFalse($request->hasPreviousSession());
-        $request->setSession(new Session(new MockArraySessionStorage()));
-        $this->assertTrue($request->hasPreviousSession());
-    }
-
-    public function testToString()
-    {
-        $request = new Request();
-
-        $request->headers->set('Accept-language', 'zh, en-us; q=0.8, en; q=0.6');
-
-        $this->assertContains('Accept-Language: zh, en-us; q=0.8, en; q=0.6', $request->__toString());
-    }
-
-    public function testIsMethod()
-    {
-        $request = new Request();
-        $request->setMethod('POST');
-        $this->assertTrue($request->isMethod('POST'));
-        $this->assertTrue($request->isMethod('post'));
-        $this->assertFalse($request->isMethod('GET'));
-        $this->assertFalse($request->isMethod('get'));
-
-        $request->setMethod('GET');
-        $this->assertTrue($request->isMethod('GET'));
-        $this->assertTrue($request->isMethod('get'));
-        $this->assertFalse($request->isMethod('POST'));
-        $this->assertFalse($request->isMethod('post'));
-    }
-
-    /**
-     * @dataProvider getBaseUrlData
-     */
-    public function testGetBaseUrl($uri, $server, $expectedBaseUrl, $expectedPathInfo)
-    {
-        $request = Request::create($uri, 'GET', array(), array(), array(), $server);
-
-        $this->assertSame($expectedBaseUrl, $request->getBaseUrl(), 'baseUrl');
-        $this->assertSame($expectedPathInfo, $request->getPathInfo(), 'pathInfo');
-    }
-
-    public function getBaseUrlData()
-    {
-        return array(
-            array(
-                '/fruit/strawberry/1234index.php/blah',
-                array(
-                    'SCRIPT_FILENAME' => 'E:/Sites/cc-new/public_html/fruit/index.php',
-                    'SCRIPT_NAME' => '/fruit/index.php',
-                    'PHP_SELF' => '/fruit/index.php',
-                ),
-                '/fruit',
-                '/strawberry/1234index.php/blah',
-            ),
-            array(
-                '/fruit/strawberry/1234index.php/blah',
-                array(
-                    'SCRIPT_FILENAME' => 'E:/Sites/cc-new/public_html/index.php',
-                    'SCRIPT_NAME' => '/index.php',
-                    'PHP_SELF' => '/index.php',
-                ),
-                '',
-                '/fruit/strawberry/1234index.php/blah',
-            ),
-            array(
-                '/foo%20bar/',
-                array(
-                    'SCRIPT_FILENAME' => '/home/John Doe/public_html/foo bar/app.php',
-                    'SCRIPT_NAME' => '/foo bar/app.php',
-                    'PHP_SELF' => '/foo bar/app.php',
-                ),
-                '/foo%20bar',
-                '/',
-            ),
-            array(
-                '/foo%20bar/home',
-                array(
-                    'SCRIPT_FILENAME' => '/home/John Doe/public_html/foo bar/app.php',
-                    'SCRIPT_NAME' => '/foo bar/app.php',
-                    'PHP_SELF' => '/foo bar/app.php',
-                ),
-                '/foo%20bar',
-                '/home',
-            ),
-            array(
-                '/foo%20bar/app.php/home',
-                array(
-                    'SCRIPT_FILENAME' => '/home/John Doe/public_html/foo bar/app.php',
-                    'SCRIPT_NAME' => '/foo bar/app.php',
-                    'PHP_SELF' => '/foo bar/app.php',
-                ),
-                '/foo%20bar/app.php',
-                '/home',
-            ),
-            array(
-                '/foo%20bar/app.php/home%3Dbaz',
-                array(
-                    'SCRIPT_FILENAME' => '/home/John Doe/public_html/foo bar/app.php',
-                    'SCRIPT_NAME' => '/foo bar/app.php',
-                    'PHP_SELF' => '/foo bar/app.php',
-                ),
-                '/foo%20bar/app.php',
-                '/home%3Dbaz',
-            ),
-            array(
-                '/foo/bar+baz',
-                array(
-                    'SCRIPT_FILENAME' => '/home/John Doe/public_html/foo/app.php',
-                    'SCRIPT_NAME' => '/foo/app.php',
-                    'PHP_SELF' => '/foo/app.php',
-                ),
-                '/foo',
-                '/bar+baz',
-            ),
-        );
-    }
-
-    /**
-     * @dataProvider urlencodedStringPrefixData
-     */
-    public function testUrlencodedStringPrefix($string, $prefix, $expect)
-    {
-        $request = new Request();
-
-        $me = new \ReflectionMethod($request, 'getUrlencodedPrefix');
-        $me->setAccessible(true);
-
-        $this->assertSame($expect, $me->invoke($request, $string, $prefix));
-    }
-
-    public function urlencodedStringPrefixData()
-    {
-        return array(
-            array('foo', 'foo', 'foo'),
-            array('fo%6f', 'foo', 'fo%6f'),
-            array('foo/bar', 'foo', 'foo'),
-            array('fo%6f/bar', 'foo', 'fo%6f'),
-            array('f%6f%6f/bar', 'foo', 'f%6f%6f'),
-            array('%66%6F%6F/bar', 'foo', '%66%6F%6F'),
-            array('fo+o/bar', 'fo+o', 'fo+o'),
-            array('fo%2Bo/bar', 'fo+o', 'fo%2Bo'),
-        );
-    }
-
-    private function disableHttpMethodParameterOverride()
-    {
-        $class = new \ReflectionClass('Symfony\\Component\\HttpFoundation\\Request');
-        $property = $class->getProperty('httpMethodParameterOverride');
-        $property->setAccessible(true);
-        $property->setValue(false);
-    }
-
-    private function getRequestInstanceForClientIpTests($remoteAddr, $httpForwardedFor, $trustedProxies)
-    {
-        $request = new Request();
-
-        $server = array('REMOTE_ADDR' => $remoteAddr);
-        if (null !== $httpForwardedFor) {
-            $server['HTTP_X_FORWARDED_FOR'] = $httpForwardedFor;
-        }
-
-        if ($trustedProxies) {
-            Request::setTrustedProxies($trustedProxies);
-        }
-
-        $request->initialize(array(), array(), array(), array(), array(), $server);
-
-        return $request;
-    }
-
-    private function getRequestInstanceForClientIpsForwardedTests($remoteAddr, $httpForwarded, $trustedProxies)
-    {
-        $request = new Request();
-
-        $server = array('REMOTE_ADDR' => $remoteAddr);
-
-        if (null !== $httpForwarded) {
-            $server['HTTP_FORWARDED'] = $httpForwarded;
-        }
-
-        if ($trustedProxies) {
-            Request::setTrustedProxies($trustedProxies);
-        }
-
-        $request->initialize(array(), array(), array(), array(), array(), $server);
-
-        return $request;
-    }
-
-    public function testTrustedProxies()
-    {
-        $request = Request::create('http://example.com/');
-        $request->server->set('REMOTE_ADDR', '3.3.3.3');
-        $request->headers->set('X_FORWARDED_FOR', '1.1.1.1, 2.2.2.2');
-        $request->headers->set('X_FORWARDED_HOST', 'foo.example.com, real.example.com:8080');
-        $request->headers->set('X_FORWARDED_PROTO', 'https');
-        $request->headers->set('X_FORWARDED_PORT', 443);
-        $request->headers->set('X_MY_FOR', '3.3.3.3, 4.4.4.4');
-        $request->headers->set('X_MY_HOST', 'my.example.com');
-        $request->headers->set('X_MY_PROTO', 'http');
-        $request->headers->set('X_MY_PORT', 81);
-
-        // no trusted proxies
-        $this->assertEquals('3.3.3.3', $request->getClientIp());
-        $this->assertEquals('example.com', $request->getHost());
-        $this->assertEquals(80, $request->getPort());
-        $this->assertFalse($request->isSecure());
-
-        // disabling proxy trusting
-        Request::setTrustedProxies(array());
-        $this->assertEquals('3.3.3.3', $request->getClientIp());
-        $this->assertEquals('example.com', $request->getHost());
-        $this->assertEquals(80, $request->getPort());
-        $this->assertFalse($request->isSecure());
-
-        // trusted proxy via setTrustedProxies()
-        Request::setTrustedProxies(array('3.3.3.3', '2.2.2.2'));
-        $this->assertEquals('1.1.1.1', $request->getClientIp());
-        $this->assertEquals('real.example.com', $request->getHost());
-        $this->assertEquals(443, $request->getPort());
-        $this->assertTrue($request->isSecure());
-
-        // trusted proxy via setTrustedProxies()
-        Request::setTrustedProxies(array('3.3.3.4', '2.2.2.2'));
-        $this->assertEquals('3.3.3.3', $request->getClientIp());
-        $this->assertEquals('example.com', $request->getHost());
-        $this->assertEquals(80, $request->getPort());
-        $this->assertFalse($request->isSecure());
-
-        // check various X_FORWARDED_PROTO header values
-        Request::setTrustedProxies(array('3.3.3.3', '2.2.2.2'));
-        $request->headers->set('X_FORWARDED_PROTO', 'ssl');
-        $this->assertTrue($request->isSecure());
-
-        $request->headers->set('X_FORWARDED_PROTO', 'https, http');
-        $this->assertTrue($request->isSecure());
-
-        // custom header names
-        Request::setTrustedHeaderName(Request::HEADER_CLIENT_IP, 'X_MY_FOR');
-        Request::setTrustedHeaderName(Request::HEADER_CLIENT_HOST, 'X_MY_HOST');
-        Request::setTrustedHeaderName(Request::HEADER_CLIENT_PORT, 'X_MY_PORT');
-        Request::setTrustedHeaderName(Request::HEADER_CLIENT_PROTO, 'X_MY_PROTO');
-        $this->assertEquals('4.4.4.4', $request->getClientIp());
-        $this->assertEquals('my.example.com', $request->getHost());
-        $this->assertEquals(81, $request->getPort());
-        $this->assertFalse($request->isSecure());
-
-        // disabling via empty header names
-        Request::setTrustedHeaderName(Request::HEADER_CLIENT_IP, null);
-        Request::setTrustedHeaderName(Request::HEADER_CLIENT_HOST, null);
-        Request::setTrustedHeaderName(Request::HEADER_CLIENT_PORT, null);
-        Request::setTrustedHeaderName(Request::HEADER_CLIENT_PROTO, null);
-        $this->assertEquals('3.3.3.3', $request->getClientIp());
-        $this->assertEquals('example.com', $request->getHost());
-        $this->assertEquals(80, $request->getPort());
-        $this->assertFalse($request->isSecure());
-
-        // reset
-        Request::setTrustedProxies(array());
-        Request::setTrustedHeaderName(Request::HEADER_CLIENT_IP, 'X_FORWARDED_FOR');
-        Request::setTrustedHeaderName(Request::HEADER_CLIENT_HOST, 'X_FORWARDED_HOST');
-        Request::setTrustedHeaderName(Request::HEADER_CLIENT_PORT, 'X_FORWARDED_PORT');
-        Request::setTrustedHeaderName(Request::HEADER_CLIENT_PROTO, 'X_FORWARDED_PROTO');
-    }
-
-    /**
-     * @expectedException \InvalidArgumentException
-     */
-    public function testSetTrustedProxiesInvalidHeaderName()
-    {
-        Request::create('http://example.com/');
-        Request::setTrustedHeaderName('bogus name', 'X_MY_FOR');
-    }
-
-    /**
-     * @expectedException \InvalidArgumentException
-     */
-    public function testGetTrustedProxiesInvalidHeaderName()
-    {
-        Request::create('http://example.com/');
-        Request::getTrustedHeaderName('bogus name');
-    }
-
-    /**
-     * @dataProvider iisRequestUriProvider
-     */
-    public function testIISRequestUri($headers, $server, $expectedRequestUri)
-    {
-        $request = new Request();
-        $request->headers->replace($headers);
-        $request->server->replace($server);
-
-        $this->assertEquals($expectedRequestUri, $request->getRequestUri(), '->getRequestUri() is correct');
-
-        $subRequestUri = '/bar/foo';
-        $subRequest = Request::create($subRequestUri, 'get', array(), array(), array(), $request->server->all());
-        $this->assertEquals($subRequestUri, $subRequest->getRequestUri(), '->getRequestUri() is correct in sub request');
-    }
-
-    public function iisRequestUriProvider()
-    {
-        return array(
-            array(
-                array(
-                    'X_ORIGINAL_URL' => '/foo/bar',
-                ),
-                array(),
-                '/foo/bar',
-            ),
-            array(
-                array(
-                    'X_REWRITE_URL' => '/foo/bar',
-                ),
-                array(),
-                '/foo/bar',
-            ),
-            array(
-                array(),
-                array(
-                    'IIS_WasUrlRewritten' => '1',
-                    'UNENCODED_URL' => '/foo/bar',
-                ),
-                '/foo/bar',
-            ),
-            array(
-                array(
-                    'X_ORIGINAL_URL' => '/foo/bar',
-                ),
-                array(
-                    'HTTP_X_ORIGINAL_URL' => '/foo/bar',
-                ),
-                '/foo/bar',
-            ),
-            array(
-                array(
-                    'X_ORIGINAL_URL' => '/foo/bar',
-                ),
-                array(
-                    'IIS_WasUrlRewritten' => '1',
-                    'UNENCODED_URL' => '/foo/bar',
-                ),
-                '/foo/bar',
-            ),
-            array(
-                array(
-                    'X_ORIGINAL_URL' => '/foo/bar',
-                ),
-                array(
-                    'HTTP_X_ORIGINAL_URL' => '/foo/bar',
-                    'IIS_WasUrlRewritten' => '1',
-                    'UNENCODED_URL' => '/foo/bar',
-                ),
-                '/foo/bar',
-            ),
-            array(
-                array(),
-                array(
-                    'ORIG_PATH_INFO' => '/foo/bar',
-                ),
-                '/foo/bar',
-            ),
-            array(
-                array(),
-                array(
-                    'ORIG_PATH_INFO' => '/foo/bar',
-                    'QUERY_STRING' => 'foo=bar',
-                ),
-                '/foo/bar?foo=bar',
-            ),
-        );
-    }
-
-    public function testTrustedHosts()
-    {
-        // create a request
-        $request = Request::create('/');
-
-        // no trusted host set -> no host check
-        $request->headers->set('host', 'evil.com');
-        $this->assertEquals('evil.com', $request->getHost());
-
-        // add a trusted domain and all its subdomains
-        Request::setTrustedHosts(array('^([a-z]{9}\.)?trusted\.com$'));
-
-        // untrusted host
-        $request->headers->set('host', 'evil.com');
-        try {
-            $request->getHost();
-            $this->fail('Request::getHost() should throw an exception when host is not trusted.');
-        } catch (\UnexpectedValueException $e) {
-            $this->assertEquals('Untrusted Host "evil.com"', $e->getMessage());
-        }
-
-        // trusted hosts
-        $request->headers->set('host', 'trusted.com');
-        $this->assertEquals('trusted.com', $request->getHost());
-        $this->assertEquals(80, $request->getPort());
-
-        $request->server->set('HTTPS', true);
-        $request->headers->set('host', 'trusted.com');
-        $this->assertEquals('trusted.com', $request->getHost());
-        $this->assertEquals(443, $request->getPort());
-        $request->server->set('HTTPS', false);
-
-        $request->headers->set('host', 'trusted.com:8000');
-        $this->assertEquals('trusted.com', $request->getHost());
-        $this->assertEquals(8000, $request->getPort());
-
-        $request->headers->set('host', 'subdomain.trusted.com');
-        $this->assertEquals('subdomain.trusted.com', $request->getHost());
-
-        // reset request for following tests
-        Request::setTrustedHosts(array());
-    }
-
-    public function testFactory()
-    {
-        Request::setFactory(function (array $query = array(), array $request = array(), array $attributes = array(), array $cookies = array(), array $files = array(), array $server = array(), $content = null) {
-            return new NewRequest();
-        });
-
-        $this->assertEquals('foo', Request::create('/')->getFoo());
-
-        Request::setFactory(null);
-    }
-
-    /**
-     * @dataProvider getLongHostNames
-     */
-    public function testVeryLongHosts($host)
-    {
-        $start = microtime(true);
-
-        $request = Request::create('/');
-        $request->headers->set('host', $host);
-        $this->assertEquals($host, $request->getHost());
-        $this->assertLessThan(1, microtime(true) - $start);
-    }
-
-    /**
-     * @dataProvider getHostValidities
-     */
-    public function testHostValidity($host, $isValid, $expectedHost = null, $expectedPort = null)
-    {
-        $request = Request::create('/');
-        $request->headers->set('host', $host);
-
-        if ($isValid) {
-            $this->assertSame($expectedHost ?: $host, $request->getHost());
-            if ($expectedPort) {
-                $this->assertSame($expectedPort, $request->getPort());
-            }
-        } else {
-            $this->setExpectedException('UnexpectedValueException', 'Invalid Host');
-            $request->getHost();
-        }
-    }
-
-    public function getHostValidities()
-    {
-        return array(
-            array('.a', false),
-            array('a..', false),
-            array('a.', true),
-            array("\xE9", false),
-            array('[::1]', true),
-            array('[::1]:80', true, '[::1]', 80),
-            array(str_repeat('.', 101), false),
-        );
-    }
-
-    public function getLongHostNames()
-    {
-        return array(
-            array('a'.str_repeat('.a', 40000)),
-            array(str_repeat(':', 101)),
-        );
-    }
-}
-
-class RequestContentProxy extends Request
-{
-    public function getContent($asResource = false)
-    {
-        return http_build_query(array('_method' => 'PUT', 'content' => 'mycontent'));
-    }
-}
-
-class NewRequest extends Request
-{
-    public function getFoo()
-    {
-        return 'foo';
-    }
-}
diff --git a/vendor/symfony/http-foundation/Tests/ResponseHeaderBagTest.php b/vendor/symfony/http-foundation/Tests/ResponseHeaderBagTest.php
deleted file mode 100644
index 09aac42..0000000
--- a/vendor/symfony/http-foundation/Tests/ResponseHeaderBagTest.php
+++ /dev/null
@@ -1,307 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpFoundation\Tests;
-
-use Symfony\Component\HttpFoundation\ResponseHeaderBag;
-use Symfony\Component\HttpFoundation\Cookie;
-
-require_once __DIR__.'/ClockMock.php';
-
-class ResponseHeaderBagTest extends \PHPUnit_Framework_TestCase
-{
-    protected function setUp()
-    {
-        with_clock_mock(true);
-    }
-
-    protected function tearDown()
-    {
-        with_clock_mock(false);
-    }
-
-    /**
-     * @covers Symfony\Component\HttpFoundation\ResponseHeaderBag::allPreserveCase
-     * @dataProvider provideAllPreserveCase
-     */
-    public function testAllPreserveCase($headers, $expected)
-    {
-        $bag = new ResponseHeaderBag($headers);
-
-        $this->assertEquals($expected, $bag->allPreserveCase(), '->allPreserveCase() gets all input keys in original case');
-    }
-
-    public function provideAllPreserveCase()
-    {
-        return array(
-            array(
-                array('fOo' => 'BAR'),
-                array('fOo' => array('BAR'), 'Cache-Control' => array('no-cache')),
-            ),
-            array(
-                array('ETag' => 'xyzzy'),
-                array('ETag' => array('xyzzy'), 'Cache-Control' => array('private, must-revalidate')),
-            ),
-            array(
-                array('Content-MD5' => 'Q2hlY2sgSW50ZWdyaXR5IQ=='),
-                array('Content-MD5' => array('Q2hlY2sgSW50ZWdyaXR5IQ=='), 'Cache-Control' => array('no-cache')),
-            ),
-            array(
-                array('P3P' => 'CP="CAO PSA OUR"'),
-                array('P3P' => array('CP="CAO PSA OUR"'), 'Cache-Control' => array('no-cache')),
-            ),
-            array(
-                array('WWW-Authenticate' => 'Basic realm="WallyWorld"'),
-                array('WWW-Authenticate' => array('Basic realm="WallyWorld"'), 'Cache-Control' => array('no-cache')),
-            ),
-            array(
-                array('X-UA-Compatible' => 'IE=edge,chrome=1'),
-                array('X-UA-Compatible' => array('IE=edge,chrome=1'), 'Cache-Control' => array('no-cache')),
-            ),
-            array(
-                array('X-XSS-Protection' => '1; mode=block'),
-                array('X-XSS-Protection' => array('1; mode=block'), 'Cache-Control' => array('no-cache')),
-            ),
-        );
-    }
-
-    public function testCacheControlHeader()
-    {
-        $bag = new ResponseHeaderBag(array());
-        $this->assertEquals('no-cache', $bag->get('Cache-Control'));
-        $this->assertTrue($bag->hasCacheControlDirective('no-cache'));
-
-        $bag = new ResponseHeaderBag(array('Cache-Control' => 'public'));
-        $this->assertEquals('public', $bag->get('Cache-Control'));
-        $this->assertTrue($bag->hasCacheControlDirective('public'));
-
-        $bag = new ResponseHeaderBag(array('ETag' => 'abcde'));
-        $this->assertEquals('private, must-revalidate', $bag->get('Cache-Control'));
-        $this->assertTrue($bag->hasCacheControlDirective('private'));
-        $this->assertTrue($bag->hasCacheControlDirective('must-revalidate'));
-        $this->assertFalse($bag->hasCacheControlDirective('max-age'));
-
-        $bag = new ResponseHeaderBag(array('Expires' => 'Wed, 16 Feb 2011 14:17:43 GMT'));
-        $this->assertEquals('private, must-revalidate', $bag->get('Cache-Control'));
-
-        $bag = new ResponseHeaderBag(array(
-            'Expires' => 'Wed, 16 Feb 2011 14:17:43 GMT',
-            'Cache-Control' => 'max-age=3600',
-        ));
-        $this->assertEquals('max-age=3600, private', $bag->get('Cache-Control'));
-
-        $bag = new ResponseHeaderBag(array('Last-Modified' => 'abcde'));
-        $this->assertEquals('private, must-revalidate', $bag->get('Cache-Control'));
-
-        $bag = new ResponseHeaderBag(array('Etag' => 'abcde', 'Last-Modified' => 'abcde'));
-        $this->assertEquals('private, must-revalidate', $bag->get('Cache-Control'));
-
-        $bag = new ResponseHeaderBag(array('cache-control' => 'max-age=100'));
-        $this->assertEquals('max-age=100, private', $bag->get('Cache-Control'));
-
-        $bag = new ResponseHeaderBag(array('cache-control' => 's-maxage=100'));
-        $this->assertEquals('s-maxage=100', $bag->get('Cache-Control'));
-
-        $bag = new ResponseHeaderBag(array('cache-control' => 'private, max-age=100'));
-        $this->assertEquals('max-age=100, private', $bag->get('Cache-Control'));
-
-        $bag = new ResponseHeaderBag(array('cache-control' => 'public, max-age=100'));
-        $this->assertEquals('max-age=100, public', $bag->get('Cache-Control'));
-
-        $bag = new ResponseHeaderBag();
-        $bag->set('Last-Modified', 'abcde');
-        $this->assertEquals('private, must-revalidate', $bag->get('Cache-Control'));
-    }
-
-    public function testToStringIncludesCookieHeaders()
-    {
-        $bag = new ResponseHeaderBag(array());
-        $bag->setCookie(new Cookie('foo', 'bar'));
-
-        $this->assertContains('Set-Cookie: foo=bar; path=/; httponly', explode("\r\n", $bag->__toString()));
-
-        $bag->clearCookie('foo');
-
-        $this->assertRegExp('#^Set-Cookie: foo=deleted; expires='.gmdate('D, d-M-Y H:i:s T', time() - 31536001).'; path=/; httponly#m', $bag->__toString());
-    }
-
-    public function testClearCookieSecureNotHttpOnly()
-    {
-        $bag = new ResponseHeaderBag(array());
-
-        $bag->clearCookie('foo', '/', null, true, false);
-
-        $this->assertRegExp('#^Set-Cookie: foo=deleted; expires='.gmdate('D, d-M-Y H:i:s T', time() - 31536001).'; path=/; secure#m', $bag->__toString());
-    }
-
-    public function testReplace()
-    {
-        $bag = new ResponseHeaderBag(array());
-        $this->assertEquals('no-cache', $bag->get('Cache-Control'));
-        $this->assertTrue($bag->hasCacheControlDirective('no-cache'));
-
-        $bag->replace(array('Cache-Control' => 'public'));
-        $this->assertEquals('public', $bag->get('Cache-Control'));
-        $this->assertTrue($bag->hasCacheControlDirective('public'));
-    }
-
-    public function testReplaceWithRemove()
-    {
-        $bag = new ResponseHeaderBag(array());
-        $this->assertEquals('no-cache', $bag->get('Cache-Control'));
-        $this->assertTrue($bag->hasCacheControlDirective('no-cache'));
-
-        $bag->remove('Cache-Control');
-        $bag->replace(array());
-        $this->assertEquals('no-cache', $bag->get('Cache-Control'));
-        $this->assertTrue($bag->hasCacheControlDirective('no-cache'));
-    }
-
-    public function testCookiesWithSameNames()
-    {
-        $bag = new ResponseHeaderBag();
-        $bag->setCookie(new Cookie('foo', 'bar', 0, '/path/foo', 'foo.bar'));
-        $bag->setCookie(new Cookie('foo', 'bar', 0, '/path/bar', 'foo.bar'));
-        $bag->setCookie(new Cookie('foo', 'bar', 0, '/path/bar', 'bar.foo'));
-        $bag->setCookie(new Cookie('foo', 'bar'));
-
-        $this->assertCount(4, $bag->getCookies());
-
-        $headers = explode("\r\n", $bag->__toString());
-        $this->assertContains('Set-Cookie: foo=bar; path=/path/foo; domain=foo.bar; httponly', $headers);
-        $this->assertContains('Set-Cookie: foo=bar; path=/path/foo; domain=foo.bar; httponly', $headers);
-        $this->assertContains('Set-Cookie: foo=bar; path=/path/bar; domain=bar.foo; httponly', $headers);
-        $this->assertContains('Set-Cookie: foo=bar; path=/; httponly', $headers);
-
-        $cookies = $bag->getCookies(ResponseHeaderBag::COOKIES_ARRAY);
-        $this->assertTrue(isset($cookies['foo.bar']['/path/foo']['foo']));
-        $this->assertTrue(isset($cookies['foo.bar']['/path/bar']['foo']));
-        $this->assertTrue(isset($cookies['bar.foo']['/path/bar']['foo']));
-        $this->assertTrue(isset($cookies['']['/']['foo']));
-    }
-
-    public function testRemoveCookie()
-    {
-        $bag = new ResponseHeaderBag();
-        $bag->setCookie(new Cookie('foo', 'bar', 0, '/path/foo', 'foo.bar'));
-        $bag->setCookie(new Cookie('bar', 'foo', 0, '/path/bar', 'foo.bar'));
-
-        $cookies = $bag->getCookies(ResponseHeaderBag::COOKIES_ARRAY);
-        $this->assertTrue(isset($cookies['foo.bar']['/path/foo']));
-
-        $bag->removeCookie('foo', '/path/foo', 'foo.bar');
-
-        $cookies = $bag->getCookies(ResponseHeaderBag::COOKIES_ARRAY);
-        $this->assertFalse(isset($cookies['foo.bar']['/path/foo']));
-
-        $bag->removeCookie('bar', '/path/bar', 'foo.bar');
-
-        $cookies = $bag->getCookies(ResponseHeaderBag::COOKIES_ARRAY);
-        $this->assertFalse(isset($cookies['foo.bar']));
-    }
-
-    public function testRemoveCookieWithNullRemove()
-    {
-        $bag = new ResponseHeaderBag();
-        $bag->setCookie(new Cookie('foo', 'bar', 0));
-        $bag->setCookie(new Cookie('bar', 'foo', 0));
-
-        $cookies = $bag->getCookies(ResponseHeaderBag::COOKIES_ARRAY);
-        $this->assertTrue(isset($cookies['']['/']));
-
-        $bag->removeCookie('foo', null);
-        $cookies = $bag->getCookies(ResponseHeaderBag::COOKIES_ARRAY);
-        $this->assertFalse(isset($cookies['']['/']['foo']));
-
-        $bag->removeCookie('bar', null);
-        $cookies = $bag->getCookies(ResponseHeaderBag::COOKIES_ARRAY);
-        $this->assertFalse(isset($cookies['']['/']['bar']));
-    }
-
-    /**
-     * @expectedException \InvalidArgumentException
-     */
-    public function testGetCookiesWithInvalidArgument()
-    {
-        $bag = new ResponseHeaderBag();
-
-        $cookies = $bag->getCookies('invalid_argument');
-    }
-
-    /**
-     * @expectedException \InvalidArgumentException
-     */
-    public function testMakeDispositionInvalidDisposition()
-    {
-        $headers = new ResponseHeaderBag();
-
-        $headers->makeDisposition('invalid', 'foo.html');
-    }
-
-    /**
-     * @dataProvider provideMakeDisposition
-     */
-    public function testMakeDisposition($disposition, $filename, $filenameFallback, $expected)
-    {
-        $headers = new ResponseHeaderBag();
-
-        $this->assertEquals($expected, $headers->makeDisposition($disposition, $filename, $filenameFallback));
-    }
-
-    public function testToStringDoesntMessUpHeaders()
-    {
-        $headers = new ResponseHeaderBag();
-
-        $headers->set('Location', 'http://www.symfony.com');
-        $headers->set('Content-type', 'text/html');
-
-        (string) $headers;
-
-        $allHeaders = $headers->allPreserveCase();
-        $this->assertEquals(array('http://www.symfony.com'), $allHeaders['Location']);
-        $this->assertEquals(array('text/html'), $allHeaders['Content-type']);
-    }
-
-    public function provideMakeDisposition()
-    {
-        return array(
-            array('attachment', 'foo.html', 'foo.html', 'attachment; filename="foo.html"'),
-            array('attachment', 'foo.html', '', 'attachment; filename="foo.html"'),
-            array('attachment', 'foo bar.html', '', 'attachment; filename="foo bar.html"'),
-            array('attachment', 'foo "bar".html', '', 'attachment; filename="foo \\"bar\\".html"'),
-            array('attachment', 'foo%20bar.html', 'foo bar.html', 'attachment; filename="foo bar.html"; filename*=utf-8\'\'foo%2520bar.html'),
-            array('attachment', 'föö.html', 'foo.html', 'attachment; filename="foo.html"; filename*=utf-8\'\'f%C3%B6%C3%B6.html'),
-        );
-    }
-
-    /**
-     * @dataProvider provideMakeDispositionFail
-     * @expectedException \InvalidArgumentException
-     */
-    public function testMakeDispositionFail($disposition, $filename)
-    {
-        $headers = new ResponseHeaderBag();
-
-        $headers->makeDisposition($disposition, $filename);
-    }
-
-    public function provideMakeDispositionFail()
-    {
-        return array(
-            array('attachment', 'foo%20bar.html'),
-            array('attachment', 'foo/bar.html'),
-            array('attachment', '/foo.html'),
-            array('attachment', 'foo\bar.html'),
-            array('attachment', '\foo.html'),
-            array('attachment', 'föö.html'),
-        );
-    }
-}
diff --git a/vendor/symfony/http-foundation/Tests/ResponseTest.php b/vendor/symfony/http-foundation/Tests/ResponseTest.php
deleted file mode 100644
index 02a62ac..0000000
--- a/vendor/symfony/http-foundation/Tests/ResponseTest.php
+++ /dev/null
@@ -1,890 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpFoundation\Tests;
-
-use Symfony\Component\HttpFoundation\Request;
-use Symfony\Component\HttpFoundation\Response;
-
-class ResponseTest extends ResponseTestCase
-{
-    public function testCreate()
-    {
-        $response = Response::create('foo', 301, array('Foo' => 'bar'));
-
-        $this->assertInstanceOf('Symfony\Component\HttpFoundation\Response', $response);
-        $this->assertEquals(301, $response->getStatusCode());
-        $this->assertEquals('bar', $response->headers->get('foo'));
-    }
-
-    public function testToString()
-    {
-        $response = new Response();
-        $response = explode("\r\n", $response);
-        $this->assertEquals('HTTP/1.0 200 OK', $response[0]);
-        $this->assertEquals('Cache-Control: no-cache', $response[1]);
-    }
-
-    public function testClone()
-    {
-        $response = new Response();
-        $responseClone = clone $response;
-        $this->assertEquals($response, $responseClone);
-    }
-
-    public function testSendHeaders()
-    {
-        $response = new Response();
-        $headers = $response->sendHeaders();
-        $this->assertObjectHasAttribute('headers', $headers);
-        $this->assertObjectHasAttribute('content', $headers);
-        $this->assertObjectHasAttribute('version', $headers);
-        $this->assertObjectHasAttribute('statusCode', $headers);
-        $this->assertObjectHasAttribute('statusText', $headers);
-        $this->assertObjectHasAttribute('charset', $headers);
-    }
-
-    public function testSend()
-    {
-        $response = new Response();
-        $responseSend = $response->send();
-        $this->assertObjectHasAttribute('headers', $responseSend);
-        $this->assertObjectHasAttribute('content', $responseSend);
-        $this->assertObjectHasAttribute('version', $responseSend);
-        $this->assertObjectHasAttribute('statusCode', $responseSend);
-        $this->assertObjectHasAttribute('statusText', $responseSend);
-        $this->assertObjectHasAttribute('charset', $responseSend);
-    }
-
-    public function testGetCharset()
-    {
-        $response = new Response();
-        $charsetOrigin = 'UTF-8';
-        $response->setCharset($charsetOrigin);
-        $charset = $response->getCharset();
-        $this->assertEquals($charsetOrigin, $charset);
-    }
-
-    public function testIsCacheable()
-    {
-        $response = new Response();
-        $this->assertFalse($response->isCacheable());
-    }
-
-    public function testIsCacheableWithErrorCode()
-    {
-        $response = new Response('', 500);
-        $this->assertFalse($response->isCacheable());
-    }
-
-    public function testIsCacheableWithNoStoreDirective()
-    {
-        $response = new Response();
-        $response->headers->set('cache-control', 'private');
-        $this->assertFalse($response->isCacheable());
-    }
-
-    public function testIsCacheableWithSetTtl()
-    {
-        $response = new Response();
-        $response->setTtl(10);
-        $this->assertTrue($response->isCacheable());
-    }
-
-    public function testMustRevalidate()
-    {
-        $response = new Response();
-        $this->assertFalse($response->mustRevalidate());
-    }
-
-    public function testMustRevalidateWithMustRevalidateCacheControlHeader()
-    {
-        $response = new Response();
-        $response->headers->set('cache-control', 'must-revalidate');
-
-        $this->assertTrue($response->mustRevalidate());
-    }
-
-    public function testMustRevalidateWithProxyRevalidateCacheControlHeader()
-    {
-        $response = new Response();
-        $response->headers->set('cache-control', 'proxy-revalidate');
-
-        $this->assertTrue($response->mustRevalidate());
-    }
-
-    public function testSetNotModified()
-    {
-        $response = new Response();
-        $modified = $response->setNotModified();
-        $this->assertObjectHasAttribute('headers', $modified);
-        $this->assertObjectHasAttribute('content', $modified);
-        $this->assertObjectHasAttribute('version', $modified);
-        $this->assertObjectHasAttribute('statusCode', $modified);
-        $this->assertObjectHasAttribute('statusText', $modified);
-        $this->assertObjectHasAttribute('charset', $modified);
-        $this->assertEquals(304, $modified->getStatusCode());
-    }
-
-    public function testIsSuccessful()
-    {
-        $response = new Response();
-        $this->assertTrue($response->isSuccessful());
-    }
-
-    public function testIsNotModified()
-    {
-        $response = new Response();
-        $modified = $response->isNotModified(new Request());
-        $this->assertFalse($modified);
-    }
-
-    public function testIsNotModifiedNotSafe()
-    {
-        $request = Request::create('/homepage', 'POST');
-
-        $response = new Response();
-        $this->assertFalse($response->isNotModified($request));
-    }
-
-    public function testIsNotModifiedLastModified()
-    {
-        $before = 'Sun, 25 Aug 2013 18:32:31 GMT';
-        $modified = 'Sun, 25 Aug 2013 18:33:31 GMT';
-        $after = 'Sun, 25 Aug 2013 19:33:31 GMT';
-
-        $request = new Request();
-        $request->headers->set('If-Modified-Since', $modified);
-
-        $response = new Response();
-
-        $response->headers->set('Last-Modified', $modified);
-        $this->assertTrue($response->isNotModified($request));
-
-        $response->headers->set('Last-Modified', $before);
-        $this->assertTrue($response->isNotModified($request));
-
-        $response->headers->set('Last-Modified', $after);
-        $this->assertFalse($response->isNotModified($request));
-
-        $response->headers->set('Last-Modified', '');
-        $this->assertFalse($response->isNotModified($request));
-    }
-
-    public function testIsNotModifiedEtag()
-    {
-        $etagOne = 'randomly_generated_etag';
-        $etagTwo = 'randomly_generated_etag_2';
-
-        $request = new Request();
-        $request->headers->set('if_none_match', sprintf('%s, %s, %s', $etagOne, $etagTwo, 'etagThree'));
-
-        $response = new Response();
-
-        $response->headers->set('ETag', $etagOne);
-        $this->assertTrue($response->isNotModified($request));
-
-        $response->headers->set('ETag', $etagTwo);
-        $this->assertTrue($response->isNotModified($request));
-
-        $response->headers->set('ETag', '');
-        $this->assertFalse($response->isNotModified($request));
-    }
-
-    public function testIsNotModifiedLastModifiedAndEtag()
-    {
-        $before = 'Sun, 25 Aug 2013 18:32:31 GMT';
-        $modified = 'Sun, 25 Aug 2013 18:33:31 GMT';
-        $after = 'Sun, 25 Aug 2013 19:33:31 GMT';
-        $etag = 'randomly_generated_etag';
-
-        $request = new Request();
-        $request->headers->set('if_none_match', sprintf('%s, %s', $etag, 'etagThree'));
-        $request->headers->set('If-Modified-Since', $modified);
-
-        $response = new Response();
-
-        $response->headers->set('ETag', $etag);
-        $response->headers->set('Last-Modified', $after);
-        $this->assertFalse($response->isNotModified($request));
-
-        $response->headers->set('ETag', 'non-existent-etag');
-        $response->headers->set('Last-Modified', $before);
-        $this->assertFalse($response->isNotModified($request));
-
-        $response->headers->set('ETag', $etag);
-        $response->headers->set('Last-Modified', $modified);
-        $this->assertTrue($response->isNotModified($request));
-    }
-
-    public function testIsNotModifiedIfModifiedSinceAndEtagWithoutLastModified()
-    {
-        $modified = 'Sun, 25 Aug 2013 18:33:31 GMT';
-        $etag = 'randomly_generated_etag';
-
-        $request = new Request();
-        $request->headers->set('if_none_match', sprintf('%s, %s', $etag, 'etagThree'));
-        $request->headers->set('If-Modified-Since', $modified);
-
-        $response = new Response();
-
-        $response->headers->set('ETag', $etag);
-        $this->assertTrue($response->isNotModified($request));
-
-        $response->headers->set('ETag', 'non-existent-etag');
-        $this->assertFalse($response->isNotModified($request));
-    }
-
-    public function testIsValidateable()
-    {
-        $response = new Response('', 200, array('Last-Modified' => $this->createDateTimeOneHourAgo()->format(DATE_RFC2822)));
-        $this->assertTrue($response->isValidateable(), '->isValidateable() returns true if Last-Modified is present');
-
-        $response = new Response('', 200, array('ETag' => '"12345"'));
-        $this->assertTrue($response->isValidateable(), '->isValidateable() returns true if ETag is present');
-
-        $response = new Response();
-        $this->assertFalse($response->isValidateable(), '->isValidateable() returns false when no validator is present');
-    }
-
-    public function testGetDate()
-    {
-        $oneHourAgo = $this->createDateTimeOneHourAgo();
-        $response = new Response('', 200, array('Date' => $oneHourAgo->format(DATE_RFC2822)));
-        $this->assertEquals(0, $oneHourAgo->diff($response->getDate())->format('%s'), '->getDate() returns the Date header if present');
-
-        $response = new Response();
-        $date = $response->getDate();
-        $this->assertLessThan(1, $date->diff(new \DateTime(), true)->format('%s'), '->getDate() returns the current Date if no Date header present');
-
-        $response = new Response('', 200, array('Date' => $this->createDateTimeOneHourAgo()->format(DATE_RFC2822)));
-        $now = $this->createDateTimeNow();
-        $response->headers->set('Date', $now->format(DATE_RFC2822));
-        $this->assertLessThanOrEqual(1, $now->diff($response->getDate())->format('%s'), '->getDate() returns the date when the header has been modified');
-
-        $response = new Response('', 200);
-        $response->headers->remove('Date');
-        $this->assertInstanceOf('\DateTime', $response->getDate());
-    }
-
-    public function testGetMaxAge()
-    {
-        $response = new Response();
-        $response->headers->set('Cache-Control', 's-maxage=600, max-age=0');
-        $this->assertEquals(600, $response->getMaxAge(), '->getMaxAge() uses s-maxage cache control directive when present');
-
-        $response = new Response();
-        $response->headers->set('Cache-Control', 'max-age=600');
-        $this->assertEquals(600, $response->getMaxAge(), '->getMaxAge() falls back to max-age when no s-maxage directive present');
-
-        $response = new Response();
-        $response->headers->set('Cache-Control', 'must-revalidate');
-        $response->headers->set('Expires', $this->createDateTimeOneHourLater()->format(DATE_RFC2822));
-        $this->assertLessThanOrEqual(1, $response->getMaxAge() - 3600, '->getMaxAge() falls back to Expires when no max-age or s-maxage directive present');
-
-        $response = new Response();
-        $response->headers->set('Cache-Control', 'must-revalidate');
-        $response->headers->set('Expires', -1);
-        $this->assertEquals('Sat, 01 Jan 00 00:00:00 +0000', $response->getExpires()->format(DATE_RFC822));
-
-        $response = new Response();
-        $this->assertNull($response->getMaxAge(), '->getMaxAge() returns null if no freshness information available');
-    }
-
-    public function testSetSharedMaxAge()
-    {
-        $response = new Response();
-        $response->setSharedMaxAge(20);
-
-        $cacheControl = $response->headers->get('Cache-Control');
-        $this->assertEquals('public, s-maxage=20', $cacheControl);
-    }
-
-    public function testIsPrivate()
-    {
-        $response = new Response();
-        $response->headers->set('Cache-Control', 'max-age=100');
-        $response->setPrivate();
-        $this->assertEquals(100, $response->headers->getCacheControlDirective('max-age'), '->isPrivate() adds the private Cache-Control directive when set to true');
-        $this->assertTrue($response->headers->getCacheControlDirective('private'), '->isPrivate() adds the private Cache-Control directive when set to true');
-
-        $response = new Response();
-        $response->headers->set('Cache-Control', 'public, max-age=100');
-        $response->setPrivate();
-        $this->assertEquals(100, $response->headers->getCacheControlDirective('max-age'), '->isPrivate() adds the private Cache-Control directive when set to true');
-        $this->assertTrue($response->headers->getCacheControlDirective('private'), '->isPrivate() adds the private Cache-Control directive when set to true');
-        $this->assertFalse($response->headers->hasCacheControlDirective('public'), '->isPrivate() removes the public Cache-Control directive');
-    }
-
-    public function testExpire()
-    {
-        $response = new Response();
-        $response->headers->set('Cache-Control', 'max-age=100');
-        $response->expire();
-        $this->assertEquals(100, $response->headers->get('Age'), '->expire() sets the Age to max-age when present');
-
-        $response = new Response();
-        $response->headers->set('Cache-Control', 'max-age=100, s-maxage=500');
-        $response->expire();
-        $this->assertEquals(500, $response->headers->get('Age'), '->expire() sets the Age to s-maxage when both max-age and s-maxage are present');
-
-        $response = new Response();
-        $response->headers->set('Cache-Control', 'max-age=5, s-maxage=500');
-        $response->headers->set('Age', '1000');
-        $response->expire();
-        $this->assertEquals(1000, $response->headers->get('Age'), '->expire() does nothing when the response is already stale/expired');
-
-        $response = new Response();
-        $response->expire();
-        $this->assertFalse($response->headers->has('Age'), '->expire() does nothing when the response does not include freshness information');
-
-        $response = new Response();
-        $response->headers->set('Expires', -1);
-        $response->expire();
-        $this->assertNull($response->headers->get('Age'), '->expire() does not set the Age when the response is expired');
-    }
-
-    public function testGetTtl()
-    {
-        $response = new Response();
-        $this->assertNull($response->getTtl(), '->getTtl() returns null when no Expires or Cache-Control headers are present');
-
-        $response = new Response();
-        $response->headers->set('Expires', $this->createDateTimeOneHourLater()->format(DATE_RFC2822));
-        $this->assertLessThanOrEqual(1, 3600 - $response->getTtl(), '->getTtl() uses the Expires header when no max-age is present');
-
-        $response = new Response();
-        $response->headers->set('Expires', $this->createDateTimeOneHourAgo()->format(DATE_RFC2822));
-        $this->assertLessThan(0, $response->getTtl(), '->getTtl() returns negative values when Expires is in past');
-
-        $response = new Response();
-        $response->headers->set('Expires', $response->getDate()->format(DATE_RFC2822));
-        $response->headers->set('Age', 0);
-        $this->assertSame(0, $response->getTtl(), '->getTtl() correctly handles zero');
-
-        $response = new Response();
-        $response->headers->set('Cache-Control', 'max-age=60');
-        $this->assertLessThan(1, 60 - $response->getTtl(), '->getTtl() uses Cache-Control max-age when present');
-    }
-
-    public function testSetClientTtl()
-    {
-        $response = new Response();
-        $response->setClientTtl(10);
-
-        $this->assertEquals($response->getMaxAge(), $response->getAge() + 10);
-    }
-
-    public function testGetSetProtocolVersion()
-    {
-        $response = new Response();
-
-        $this->assertEquals('1.0', $response->getProtocolVersion());
-
-        $response->setProtocolVersion('1.1');
-
-        $this->assertEquals('1.1', $response->getProtocolVersion());
-    }
-
-    public function testGetVary()
-    {
-        $response = new Response();
-        $this->assertEquals(array(), $response->getVary(), '->getVary() returns an empty array if no Vary header is present');
-
-        $response = new Response();
-        $response->headers->set('Vary', 'Accept-Language');
-        $this->assertEquals(array('Accept-Language'), $response->getVary(), '->getVary() parses a single header name value');
-
-        $response = new Response();
-        $response->headers->set('Vary', 'Accept-Language User-Agent    X-Foo');
-        $this->assertEquals(array('Accept-Language', 'User-Agent', 'X-Foo'), $response->getVary(), '->getVary() parses multiple header name values separated by spaces');
-
-        $response = new Response();
-        $response->headers->set('Vary', 'Accept-Language,User-Agent,    X-Foo');
-        $this->assertEquals(array('Accept-Language', 'User-Agent', 'X-Foo'), $response->getVary(), '->getVary() parses multiple header name values separated by commas');
-
-        $vary = array('Accept-Language', 'User-Agent', 'X-foo');
-
-        $response = new Response();
-        $response->headers->set('Vary', $vary);
-        $this->assertEquals($vary, $response->getVary(), '->getVary() parses multiple header name values in arrays');
-
-        $response = new Response();
-        $response->headers->set('Vary', 'Accept-Language, User-Agent, X-foo');
-        $this->assertEquals($vary, $response->getVary(), '->getVary() parses multiple header name values in arrays');
-    }
-
-    public function testSetVary()
-    {
-        $response = new Response();
-        $response->setVary('Accept-Language');
-        $this->assertEquals(array('Accept-Language'), $response->getVary());
-
-        $response->setVary('Accept-Language, User-Agent');
-        $this->assertEquals(array('Accept-Language', 'User-Agent'), $response->getVary(), '->setVary() replace the vary header by default');
-
-        $response->setVary('X-Foo', false);
-        $this->assertEquals(array('Accept-Language', 'User-Agent', 'X-Foo'), $response->getVary(), '->setVary() doesn\'t wipe out earlier Vary headers if replace is set to false');
-    }
-
-    public function testDefaultContentType()
-    {
-        $headerMock = $this->getMock('Symfony\Component\HttpFoundation\ResponseHeaderBag', array('set'));
-        $headerMock->expects($this->at(0))
-            ->method('set')
-            ->with('Content-Type', 'text/html');
-        $headerMock->expects($this->at(1))
-            ->method('set')
-            ->with('Content-Type', 'text/html; charset=UTF-8');
-
-        $response = new Response('foo');
-        $response->headers = $headerMock;
-
-        $response->prepare(new Request());
-    }
-
-    public function testContentTypeCharset()
-    {
-        $response = new Response();
-        $response->headers->set('Content-Type', 'text/css');
-
-        // force fixContentType() to be called
-        $response->prepare(new Request());
-
-        $this->assertEquals('text/css; charset=UTF-8', $response->headers->get('Content-Type'));
-    }
-
-    public function testPrepareDoesNothingIfContentTypeIsSet()
-    {
-        $response = new Response('foo');
-        $response->headers->set('Content-Type', 'text/plain');
-
-        $response->prepare(new Request());
-
-        $this->assertEquals('text/plain; charset=UTF-8', $response->headers->get('content-type'));
-    }
-
-    public function testPrepareDoesNothingIfRequestFormatIsNotDefined()
-    {
-        $response = new Response('foo');
-
-        $response->prepare(new Request());
-
-        $this->assertEquals('text/html; charset=UTF-8', $response->headers->get('content-type'));
-    }
-
-    public function testPrepareSetContentType()
-    {
-        $response = new Response('foo');
-        $request = Request::create('/');
-        $request->setRequestFormat('json');
-
-        $response->prepare($request);
-
-        $this->assertEquals('application/json', $response->headers->get('content-type'));
-    }
-
-    public function testPrepareRemovesContentForHeadRequests()
-    {
-        $response = new Response('foo');
-        $request = Request::create('/', 'HEAD');
-
-        $length = 12345;
-        $response->headers->set('Content-Length', $length);
-        $response->prepare($request);
-
-        $this->assertEquals('', $response->getContent());
-        $this->assertEquals($length, $response->headers->get('Content-Length'), 'Content-Length should be as if it was GET; see RFC2616 14.13');
-    }
-
-    public function testPrepareRemovesContentForInformationalResponse()
-    {
-        $response = new Response('foo');
-        $request = Request::create('/');
-
-        $response->setContent('content');
-        $response->setStatusCode(101);
-        $response->prepare($request);
-        $this->assertEquals('', $response->getContent());
-        $this->assertFalse($response->headers->has('Content-Type'));
-        $this->assertFalse($response->headers->has('Content-Type'));
-
-        $response->setContent('content');
-        $response->setStatusCode(304);
-        $response->prepare($request);
-        $this->assertEquals('', $response->getContent());
-        $this->assertFalse($response->headers->has('Content-Type'));
-        $this->assertFalse($response->headers->has('Content-Length'));
-    }
-
-    public function testPrepareRemovesContentLength()
-    {
-        $response = new Response('foo');
-        $request = Request::create('/');
-
-        $response->headers->set('Content-Length', 12345);
-        $response->prepare($request);
-        $this->assertEquals(12345, $response->headers->get('Content-Length'));
-
-        $response->headers->set('Transfer-Encoding', 'chunked');
-        $response->prepare($request);
-        $this->assertFalse($response->headers->has('Content-Length'));
-    }
-
-    public function testPrepareSetsPragmaOnHttp10Only()
-    {
-        $request = Request::create('/', 'GET');
-        $request->server->set('SERVER_PROTOCOL', 'HTTP/1.0');
-
-        $response = new Response('foo');
-        $response->prepare($request);
-        $this->assertEquals('no-cache', $response->headers->get('pragma'));
-        $this->assertEquals('-1', $response->headers->get('expires'));
-
-        $request->server->set('SERVER_PROTOCOL', 'HTTP/1.1');
-        $response = new Response('foo');
-        $response->prepare($request);
-        $this->assertFalse($response->headers->has('pragma'));
-        $this->assertFalse($response->headers->has('expires'));
-    }
-
-    public function testSetCache()
-    {
-        $response = new Response();
-        //array('etag', 'last_modified', 'max_age', 's_maxage', 'private', 'public')
-        try {
-            $response->setCache(array('wrong option' => 'value'));
-            $this->fail('->setCache() throws an InvalidArgumentException if an option is not supported');
-        } catch (\Exception $e) {
-            $this->assertInstanceOf('InvalidArgumentException', $e, '->setCache() throws an InvalidArgumentException if an option is not supported');
-            $this->assertContains('"wrong option"', $e->getMessage());
-        }
-
-        $options = array('etag' => '"whatever"');
-        $response->setCache($options);
-        $this->assertEquals($response->getEtag(), '"whatever"');
-
-        $now = new \DateTime();
-        $options = array('last_modified' => $now);
-        $response->setCache($options);
-        $this->assertEquals($response->getLastModified()->getTimestamp(), $now->getTimestamp());
-
-        $options = array('max_age' => 100);
-        $response->setCache($options);
-        $this->assertEquals($response->getMaxAge(), 100);
-
-        $options = array('s_maxage' => 200);
-        $response->setCache($options);
-        $this->assertEquals($response->getMaxAge(), 200);
-
-        $this->assertTrue($response->headers->hasCacheControlDirective('public'));
-        $this->assertFalse($response->headers->hasCacheControlDirective('private'));
-
-        $response->setCache(array('public' => true));
-        $this->assertTrue($response->headers->hasCacheControlDirective('public'));
-        $this->assertFalse($response->headers->hasCacheControlDirective('private'));
-
-        $response->setCache(array('public' => false));
-        $this->assertFalse($response->headers->hasCacheControlDirective('public'));
-        $this->assertTrue($response->headers->hasCacheControlDirective('private'));
-
-        $response->setCache(array('private' => true));
-        $this->assertFalse($response->headers->hasCacheControlDirective('public'));
-        $this->assertTrue($response->headers->hasCacheControlDirective('private'));
-
-        $response->setCache(array('private' => false));
-        $this->assertTrue($response->headers->hasCacheControlDirective('public'));
-        $this->assertFalse($response->headers->hasCacheControlDirective('private'));
-    }
-
-    public function testSendContent()
-    {
-        $response = new Response('test response rendering', 200);
-
-        ob_start();
-        $response->sendContent();
-        $string = ob_get_clean();
-        $this->assertContains('test response rendering', $string);
-    }
-
-    public function testSetPublic()
-    {
-        $response = new Response();
-        $response->setPublic();
-
-        $this->assertTrue($response->headers->hasCacheControlDirective('public'));
-        $this->assertFalse($response->headers->hasCacheControlDirective('private'));
-    }
-
-    public function testSetExpires()
-    {
-        $response = new Response();
-        $response->setExpires(null);
-
-        $this->assertNull($response->getExpires(), '->setExpires() remove the header when passed null');
-
-        $now = new \DateTime();
-        $response->setExpires($now);
-
-        $this->assertEquals($response->getExpires()->getTimestamp(), $now->getTimestamp());
-    }
-
-    public function testSetLastModified()
-    {
-        $response = new Response();
-        $response->setLastModified(new \DateTime());
-        $this->assertNotNull($response->getLastModified());
-
-        $response->setLastModified(null);
-        $this->assertNull($response->getLastModified());
-    }
-
-    public function testIsInvalid()
-    {
-        $response = new Response();
-
-        try {
-            $response->setStatusCode(99);
-            $this->fail();
-        } catch (\InvalidArgumentException $e) {
-            $this->assertTrue($response->isInvalid());
-        }
-
-        try {
-            $response->setStatusCode(650);
-            $this->fail();
-        } catch (\InvalidArgumentException $e) {
-            $this->assertTrue($response->isInvalid());
-        }
-
-        $response = new Response('', 200);
-        $this->assertFalse($response->isInvalid());
-    }
-
-    /**
-     * @dataProvider getStatusCodeFixtures
-     */
-    public function testSetStatusCode($code, $text, $expectedText)
-    {
-        $response = new Response();
-
-        $response->setStatusCode($code, $text);
-
-        $statusText = new \ReflectionProperty($response, 'statusText');
-        $statusText->setAccessible(true);
-
-        $this->assertEquals($expectedText, $statusText->getValue($response));
-    }
-
-    public function getStatusCodeFixtures()
-    {
-        return array(
-            array('200', null, 'OK'),
-            array('200', false, ''),
-            array('200', 'foo', 'foo'),
-            array('199', null, ''),
-            array('199', false, ''),
-            array('199', 'foo', 'foo'),
-        );
-    }
-
-    public function testIsInformational()
-    {
-        $response = new Response('', 100);
-        $this->assertTrue($response->isInformational());
-
-        $response = new Response('', 200);
-        $this->assertFalse($response->isInformational());
-    }
-
-    public function testIsRedirectRedirection()
-    {
-        foreach (array(301, 302, 303, 307) as $code) {
-            $response = new Response('', $code);
-            $this->assertTrue($response->isRedirection());
-            $this->assertTrue($response->isRedirect());
-        }
-
-        $response = new Response('', 304);
-        $this->assertTrue($response->isRedirection());
-        $this->assertFalse($response->isRedirect());
-
-        $response = new Response('', 200);
-        $this->assertFalse($response->isRedirection());
-        $this->assertFalse($response->isRedirect());
-
-        $response = new Response('', 404);
-        $this->assertFalse($response->isRedirection());
-        $this->assertFalse($response->isRedirect());
-
-        $response = new Response('', 301, array('Location' => '/good-uri'));
-        $this->assertFalse($response->isRedirect('/bad-uri'));
-        $this->assertTrue($response->isRedirect('/good-uri'));
-    }
-
-    public function testIsNotFound()
-    {
-        $response = new Response('', 404);
-        $this->assertTrue($response->isNotFound());
-
-        $response = new Response('', 200);
-        $this->assertFalse($response->isNotFound());
-    }
-
-    public function testIsEmpty()
-    {
-        foreach (array(204, 304) as $code) {
-            $response = new Response('', $code);
-            $this->assertTrue($response->isEmpty());
-        }
-
-        $response = new Response('', 200);
-        $this->assertFalse($response->isEmpty());
-    }
-
-    public function testIsForbidden()
-    {
-        $response = new Response('', 403);
-        $this->assertTrue($response->isForbidden());
-
-        $response = new Response('', 200);
-        $this->assertFalse($response->isForbidden());
-    }
-
-    public function testIsOk()
-    {
-        $response = new Response('', 200);
-        $this->assertTrue($response->isOk());
-
-        $response = new Response('', 404);
-        $this->assertFalse($response->isOk());
-    }
-
-    public function testIsServerOrClientError()
-    {
-        $response = new Response('', 404);
-        $this->assertTrue($response->isClientError());
-        $this->assertFalse($response->isServerError());
-
-        $response = new Response('', 500);
-        $this->assertFalse($response->isClientError());
-        $this->assertTrue($response->isServerError());
-    }
-
-    public function testHasVary()
-    {
-        $response = new Response();
-        $this->assertFalse($response->hasVary());
-
-        $response->setVary('User-Agent');
-        $this->assertTrue($response->hasVary());
-    }
-
-    public function testSetEtag()
-    {
-        $response = new Response('', 200, array('ETag' => '"12345"'));
-        $response->setEtag();
-
-        $this->assertNull($response->headers->get('Etag'), '->setEtag() removes Etags when call with null');
-    }
-
-    /**
-     * @dataProvider validContentProvider
-     */
-    public function testSetContent($content)
-    {
-        $response = new Response();
-        $response->setContent($content);
-        $this->assertEquals((string) $content, $response->getContent());
-    }
-
-    /**
-     * @expectedException \UnexpectedValueException
-     * @dataProvider invalidContentProvider
-     */
-    public function testSetContentInvalid($content)
-    {
-        $response = new Response();
-        $response->setContent($content);
-    }
-
-    public function testSettersAreChainable()
-    {
-        $response = new Response();
-
-        $setters = array(
-            'setProtocolVersion' => '1.0',
-            'setCharset' => 'UTF-8',
-            'setPublic' => null,
-            'setPrivate' => null,
-            'setDate' => new \DateTime(),
-            'expire' => null,
-            'setMaxAge' => 1,
-            'setSharedMaxAge' => 1,
-            'setTtl' => 1,
-            'setClientTtl' => 1,
-        );
-
-        foreach ($setters as $setter => $arg) {
-            $this->assertEquals($response, $response->{$setter}($arg));
-        }
-    }
-
-    public function validContentProvider()
-    {
-        return array(
-            'obj' => array(new StringableObject()),
-            'string' => array('Foo'),
-            'int' => array(2),
-        );
-    }
-
-    public function invalidContentProvider()
-    {
-        return array(
-            'obj' => array(new \stdClass()),
-            'array' => array(array()),
-            'bool' => array(true, '1'),
-        );
-    }
-
-    protected function createDateTimeOneHourAgo()
-    {
-        $date = new \DateTime();
-
-        return $date->sub(new \DateInterval('PT1H'));
-    }
-
-    protected function createDateTimeOneHourLater()
-    {
-        $date = new \DateTime();
-
-        return $date->add(new \DateInterval('PT1H'));
-    }
-
-    protected function createDateTimeNow()
-    {
-        return new \DateTime();
-    }
-
-    protected function provideResponse()
-    {
-        return new Response();
-    }
-}
-
-class StringableObject
-{
-    public function __toString()
-    {
-        return 'Foo';
-    }
-}
diff --git a/vendor/symfony/http-foundation/Tests/ResponseTestCase.php b/vendor/symfony/http-foundation/Tests/ResponseTestCase.php
deleted file mode 100644
index 94c770a..0000000
--- a/vendor/symfony/http-foundation/Tests/ResponseTestCase.php
+++ /dev/null
@@ -1,88 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpFoundation\Tests;
-
-use Symfony\Component\HttpFoundation\Request;
-
-abstract class ResponseTestCase extends \PHPUnit_Framework_TestCase
-{
-    public function testNoCacheControlHeaderOnAttachmentUsingHTTPSAndMSIE()
-    {
-        // Check for HTTPS and IE 8
-        $request = new Request();
-        $request->server->set('HTTPS', true);
-        $request->server->set('HTTP_USER_AGENT', 'Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.0; Trident/4.0)');
-
-        $response = $this->provideResponse();
-        $response->headers->set('Content-Disposition', 'attachment; filename="fname.ext"');
-        $response->prepare($request);
-
-        $this->assertFalse($response->headers->has('Cache-Control'));
-
-        // Check for IE 10 and HTTPS
-        $request->server->set('HTTP_USER_AGENT', 'Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; WOW64; Trident/6.0)');
-
-        $response = $this->provideResponse();
-        $response->headers->set('Content-Disposition', 'attachment; filename="fname.ext"');
-        $response->prepare($request);
-
-        $this->assertTrue($response->headers->has('Cache-Control'));
-
-        // Check for IE 9 and HTTPS
-        $request->server->set('HTTP_USER_AGENT', 'Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 7.1; Trident/5.0)');
-
-        $response = $this->provideResponse();
-        $response->headers->set('Content-Disposition', 'attachment; filename="fname.ext"');
-        $response->prepare($request);
-
-        $this->assertTrue($response->headers->has('Cache-Control'));
-
-        // Check for IE 9 and HTTP
-        $request->server->set('HTTPS', false);
-
-        $response = $this->provideResponse();
-        $response->headers->set('Content-Disposition', 'attachment; filename="fname.ext"');
-        $response->prepare($request);
-
-        $this->assertTrue($response->headers->has('Cache-Control'));
-
-        // Check for IE 8 and HTTP
-        $request->server->set('HTTP_USER_AGENT', 'Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.0; Trident/4.0)');
-
-        $response = $this->provideResponse();
-        $response->headers->set('Content-Disposition', 'attachment; filename="fname.ext"');
-        $response->prepare($request);
-
-        $this->assertTrue($response->headers->has('Cache-Control'));
-
-        // Check for non-IE and HTTPS
-        $request->server->set('HTTPS', true);
-        $request->server->set('HTTP_USER_AGENT', 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.60 Safari/537.17');
-
-        $response = $this->provideResponse();
-        $response->headers->set('Content-Disposition', 'attachment; filename="fname.ext"');
-        $response->prepare($request);
-
-        $this->assertTrue($response->headers->has('Cache-Control'));
-
-        // Check for non-IE and HTTP
-        $request->server->set('HTTPS', false);
-
-        $response = $this->provideResponse();
-        $response->headers->set('Content-Disposition', 'attachment; filename="fname.ext"');
-        $response->prepare($request);
-
-        $this->assertTrue($response->headers->has('Cache-Control'));
-    }
-
-    abstract protected function provideResponse();
-}
diff --git a/vendor/symfony/http-foundation/Tests/ServerBagTest.php b/vendor/symfony/http-foundation/Tests/ServerBagTest.php
deleted file mode 100644
index 20773c4..0000000
--- a/vendor/symfony/http-foundation/Tests/ServerBagTest.php
+++ /dev/null
@@ -1,154 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpFoundation\Tests;
-
-use Symfony\Component\HttpFoundation\ServerBag;
-
-/**
- * ServerBagTest.
- *
- * @author Bulat Shakirzyanov <mallluhuct@gmail.com>
- */
-class ServerBagTest extends \PHPUnit_Framework_TestCase
-{
-    public function testShouldExtractHeadersFromServerArray()
-    {
-        $server = array(
-            'SOME_SERVER_VARIABLE' => 'value',
-            'SOME_SERVER_VARIABLE2' => 'value',
-            'ROOT' => 'value',
-            'HTTP_CONTENT_TYPE' => 'text/html',
-            'HTTP_CONTENT_LENGTH' => '0',
-            'HTTP_ETAG' => 'asdf',
-            'PHP_AUTH_USER' => 'foo',
-            'PHP_AUTH_PW' => 'bar',
-        );
-
-        $bag = new ServerBag($server);
-
-        $this->assertEquals(array(
-            'CONTENT_TYPE' => 'text/html',
-            'CONTENT_LENGTH' => '0',
-            'ETAG' => 'asdf',
-            'AUTHORIZATION' => 'Basic '.base64_encode('foo:bar'),
-            'PHP_AUTH_USER' => 'foo',
-            'PHP_AUTH_PW' => 'bar',
-        ), $bag->getHeaders());
-    }
-
-    public function testHttpPasswordIsOptional()
-    {
-        $bag = new ServerBag(array('PHP_AUTH_USER' => 'foo'));
-
-        $this->assertEquals(array(
-            'AUTHORIZATION' => 'Basic '.base64_encode('foo:'),
-            'PHP_AUTH_USER' => 'foo',
-            'PHP_AUTH_PW' => '',
-        ), $bag->getHeaders());
-    }
-
-    public function testHttpBasicAuthWithPhpCgi()
-    {
-        $bag = new ServerBag(array('HTTP_AUTHORIZATION' => 'Basic '.base64_encode('foo:bar')));
-
-        $this->assertEquals(array(
-            'AUTHORIZATION' => 'Basic '.base64_encode('foo:bar'),
-            'PHP_AUTH_USER' => 'foo',
-            'PHP_AUTH_PW' => 'bar',
-        ), $bag->getHeaders());
-    }
-
-    public function testHttpBasicAuthWithPhpCgiBogus()
-    {
-        $bag = new ServerBag(array('HTTP_AUTHORIZATION' => 'Basic_'.base64_encode('foo:bar')));
-
-        // Username and passwords should not be set as the header is bogus
-        $headers = $bag->getHeaders();
-        $this->assertFalse(isset($headers['PHP_AUTH_USER']));
-        $this->assertFalse(isset($headers['PHP_AUTH_PW']));
-    }
-
-    public function testHttpBasicAuthWithPhpCgiRedirect()
-    {
-        $bag = new ServerBag(array('REDIRECT_HTTP_AUTHORIZATION' => 'Basic '.base64_encode('username:pass:word')));
-
-        $this->assertEquals(array(
-            'AUTHORIZATION' => 'Basic '.base64_encode('username:pass:word'),
-            'PHP_AUTH_USER' => 'username',
-            'PHP_AUTH_PW' => 'pass:word',
-        ), $bag->getHeaders());
-    }
-
-    public function testHttpBasicAuthWithPhpCgiEmptyPassword()
-    {
-        $bag = new ServerBag(array('HTTP_AUTHORIZATION' => 'Basic '.base64_encode('foo:')));
-
-        $this->assertEquals(array(
-            'AUTHORIZATION' => 'Basic '.base64_encode('foo:'),
-            'PHP_AUTH_USER' => 'foo',
-            'PHP_AUTH_PW' => '',
-        ), $bag->getHeaders());
-    }
-
-    public function testHttpDigestAuthWithPhpCgi()
-    {
-        $digest = 'Digest username="foo", realm="acme", nonce="'.md5('secret').'", uri="/protected, qop="auth"';
-        $bag = new ServerBag(array('HTTP_AUTHORIZATION' => $digest));
-
-        $this->assertEquals(array(
-            'AUTHORIZATION' => $digest,
-            'PHP_AUTH_DIGEST' => $digest,
-        ), $bag->getHeaders());
-    }
-
-    public function testHttpDigestAuthWithPhpCgiBogus()
-    {
-        $digest = 'Digest_username="foo", realm="acme", nonce="'.md5('secret').'", uri="/protected, qop="auth"';
-        $bag = new ServerBag(array('HTTP_AUTHORIZATION' => $digest));
-
-        // Username and passwords should not be set as the header is bogus
-        $headers = $bag->getHeaders();
-        $this->assertFalse(isset($headers['PHP_AUTH_USER']));
-        $this->assertFalse(isset($headers['PHP_AUTH_PW']));
-    }
-
-    public function testHttpDigestAuthWithPhpCgiRedirect()
-    {
-        $digest = 'Digest username="foo", realm="acme", nonce="'.md5('secret').'", uri="/protected, qop="auth"';
-        $bag = new ServerBag(array('REDIRECT_HTTP_AUTHORIZATION' => $digest));
-
-        $this->assertEquals(array(
-            'AUTHORIZATION' => $digest,
-            'PHP_AUTH_DIGEST' => $digest,
-        ), $bag->getHeaders());
-    }
-
-    public function testOAuthBearerAuth()
-    {
-        $headerContent = 'Bearer L-yLEOr9zhmUYRkzN1jwwxwQ-PBNiKDc8dgfB4hTfvo';
-        $bag = new ServerBag(array('HTTP_AUTHORIZATION' => $headerContent));
-
-        $this->assertEquals(array(
-            'AUTHORIZATION' => $headerContent,
-        ), $bag->getHeaders());
-    }
-
-    public function testOAuthBearerAuthWithRedirect()
-    {
-        $headerContent = 'Bearer L-yLEOr9zhmUYRkzN1jwwxwQ-PBNiKDc8dgfB4hTfvo';
-        $bag = new ServerBag(array('REDIRECT_HTTP_AUTHORIZATION' => $headerContent));
-
-        $this->assertEquals(array(
-            'AUTHORIZATION' => $headerContent,
-        ), $bag->getHeaders());
-    }
-}
diff --git a/vendor/symfony/http-foundation/Tests/Session/Attribute/AttributeBagTest.php b/vendor/symfony/http-foundation/Tests/Session/Attribute/AttributeBagTest.php
deleted file mode 100644
index 5515003..0000000
--- a/vendor/symfony/http-foundation/Tests/Session/Attribute/AttributeBagTest.php
+++ /dev/null
@@ -1,193 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpFoundation\Tests\Session\Attribute;
-
-use Symfony\Component\HttpFoundation\Session\Attribute\AttributeBag;
-
-/**
- * Tests AttributeBag.
- *
- * @author Drak <drak@zikula.org>
- */
-class AttributeBagTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @var array
-     */
-    private $array;
-
-    /**
-     * @var AttributeBag
-     */
-    private $bag;
-
-    protected function setUp()
-    {
-        $this->array = array(
-            'hello' => 'world',
-            'always' => 'be happy',
-            'user.login' => 'drak',
-            'csrf.token' => array(
-                'a' => '1234',
-                'b' => '4321',
-            ),
-            'category' => array(
-                'fishing' => array(
-                    'first' => 'cod',
-                    'second' => 'sole',),
-                ),
-        );
-        $this->bag = new AttributeBag('_sf2');
-        $this->bag->initialize($this->array);
-    }
-
-    protected function tearDown()
-    {
-        $this->bag = null;
-        $this->array = array();
-    }
-
-    public function testInitialize()
-    {
-        $bag = new AttributeBag();
-        $bag->initialize($this->array);
-        $this->assertEquals($this->array, $bag->all());
-        $array = array('should' => 'change');
-        $bag->initialize($array);
-        $this->assertEquals($array, $bag->all());
-    }
-
-    public function testGetStorageKey()
-    {
-        $this->assertEquals('_sf2', $this->bag->getStorageKey());
-        $attributeBag = new AttributeBag('test');
-        $this->assertEquals('test', $attributeBag->getStorageKey());
-    }
-
-    public function testGetSetName()
-    {
-        $this->assertEquals('attributes', $this->bag->getName());
-        $this->bag->setName('foo');
-        $this->assertEquals('foo', $this->bag->getName());
-    }
-
-    /**
-     * @dataProvider attributesProvider
-     */
-    public function testHas($key, $value, $exists)
-    {
-        $this->assertEquals($exists, $this->bag->has($key));
-    }
-
-    /**
-     * @dataProvider attributesProvider
-     */
-    public function testGet($key, $value, $expected)
-    {
-        $this->assertEquals($value, $this->bag->get($key));
-    }
-
-    public function testGetDefaults()
-    {
-        $this->assertNull($this->bag->get('user2.login'));
-        $this->assertEquals('default', $this->bag->get('user2.login', 'default'));
-    }
-
-    /**
-     * @dataProvider attributesProvider
-     */
-    public function testSet($key, $value, $expected)
-    {
-        $this->bag->set($key, $value);
-        $this->assertEquals($value, $this->bag->get($key));
-    }
-
-    public function testAll()
-    {
-        $this->assertEquals($this->array, $this->bag->all());
-
-        $this->bag->set('hello', 'fabien');
-        $array = $this->array;
-        $array['hello'] = 'fabien';
-        $this->assertEquals($array, $this->bag->all());
-    }
-
-    public function testReplace()
-    {
-        $array = array();
-        $array['name'] = 'jack';
-        $array['foo.bar'] = 'beep';
-        $this->bag->replace($array);
-        $this->assertEquals($array, $this->bag->all());
-        $this->assertNull($this->bag->get('hello'));
-        $this->assertNull($this->bag->get('always'));
-        $this->assertNull($this->bag->get('user.login'));
-    }
-
-    public function testRemove()
-    {
-        $this->assertEquals('world', $this->bag->get('hello'));
-        $this->bag->remove('hello');
-        $this->assertNull($this->bag->get('hello'));
-
-        $this->assertEquals('be happy', $this->bag->get('always'));
-        $this->bag->remove('always');
-        $this->assertNull($this->bag->get('always'));
-
-        $this->assertEquals('drak', $this->bag->get('user.login'));
-        $this->bag->remove('user.login');
-        $this->assertNull($this->bag->get('user.login'));
-    }
-
-    public function testClear()
-    {
-        $this->bag->clear();
-        $this->assertEquals(array(), $this->bag->all());
-    }
-
-    public function attributesProvider()
-    {
-        return array(
-            array('hello', 'world', true),
-            array('always', 'be happy', true),
-            array('user.login', 'drak', true),
-            array('csrf.token', array('a' => '1234', 'b' => '4321'), true),
-            array('category', array('fishing' => array('first' => 'cod', 'second' => 'sole')), true),
-            array('user2.login', null, false),
-            array('never', null, false),
-            array('bye', null, false),
-            array('bye/for/now', null, false),
-        );
-    }
-
-    /**
-     * @covers Symfony\Component\HttpFoundation\Session\Attribute\AttributeBag::getIterator
-     */
-    public function testGetIterator()
-    {
-        $i = 0;
-        foreach ($this->bag as $key => $val) {
-            $this->assertEquals($this->array[$key], $val);
-            ++$i;
-        }
-
-        $this->assertEquals(count($this->array), $i);
-    }
-
-    /**
-     * @covers Symfony\Component\HttpFoundation\Session\Attribute\AttributeBag::count
-     */
-    public function testCount()
-    {
-        $this->assertEquals(count($this->array), count($this->bag));
-    }
-}
diff --git a/vendor/symfony/http-foundation/Tests/Session/Attribute/NamespacedAttributeBagTest.php b/vendor/symfony/http-foundation/Tests/Session/Attribute/NamespacedAttributeBagTest.php
deleted file mode 100644
index b8261da..0000000
--- a/vendor/symfony/http-foundation/Tests/Session/Attribute/NamespacedAttributeBagTest.php
+++ /dev/null
@@ -1,183 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpFoundation\Tests\Session\Attribute;
-
-use Symfony\Component\HttpFoundation\Session\Attribute\NamespacedAttributeBag;
-
-/**
- * Tests NamespacedAttributeBag.
- *
- * @author Drak <drak@zikula.org>
- */
-class NamespacedAttributeBagTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @var array
-     */
-    private $array;
-
-    /**
-     * @var NamespacedAttributeBag
-     */
-    private $bag;
-
-    protected function setUp()
-    {
-        $this->array = array(
-            'hello' => 'world',
-            'always' => 'be happy',
-            'user.login' => 'drak',
-            'csrf.token' => array(
-                'a' => '1234',
-                'b' => '4321',
-            ),
-            'category' => array(
-                'fishing' => array(
-                    'first' => 'cod',
-                    'second' => 'sole',),
-                ),
-        );
-        $this->bag = new NamespacedAttributeBag('_sf2', '/');
-        $this->bag->initialize($this->array);
-    }
-
-    protected function tearDown()
-    {
-        $this->bag = null;
-        $this->array = array();
-    }
-
-    public function testInitialize()
-    {
-        $bag = new NamespacedAttributeBag();
-        $bag->initialize($this->array);
-        $this->assertEquals($this->array, $this->bag->all());
-        $array = array('should' => 'not stick');
-        $bag->initialize($array);
-
-        // should have remained the same
-        $this->assertEquals($this->array, $this->bag->all());
-    }
-
-    public function testGetStorageKey()
-    {
-        $this->assertEquals('_sf2', $this->bag->getStorageKey());
-        $attributeBag = new NamespacedAttributeBag('test');
-        $this->assertEquals('test', $attributeBag->getStorageKey());
-    }
-
-    /**
-     * @dataProvider attributesProvider
-     */
-    public function testHas($key, $value, $exists)
-    {
-        $this->assertEquals($exists, $this->bag->has($key));
-    }
-
-    /**
-     * @dataProvider attributesProvider
-     */
-    public function testGet($key, $value, $expected)
-    {
-        $this->assertEquals($value, $this->bag->get($key));
-    }
-
-    public function testGetDefaults()
-    {
-        $this->assertNull($this->bag->get('user2.login'));
-        $this->assertEquals('default', $this->bag->get('user2.login', 'default'));
-    }
-
-    /**
-     * @dataProvider attributesProvider
-     */
-    public function testSet($key, $value, $expected)
-    {
-        $this->bag->set($key, $value);
-        $this->assertEquals($value, $this->bag->get($key));
-    }
-
-    public function testAll()
-    {
-        $this->assertEquals($this->array, $this->bag->all());
-
-        $this->bag->set('hello', 'fabien');
-        $array = $this->array;
-        $array['hello'] = 'fabien';
-        $this->assertEquals($array, $this->bag->all());
-    }
-
-    public function testReplace()
-    {
-        $array = array();
-        $array['name'] = 'jack';
-        $array['foo.bar'] = 'beep';
-        $this->bag->replace($array);
-        $this->assertEquals($array, $this->bag->all());
-        $this->assertNull($this->bag->get('hello'));
-        $this->assertNull($this->bag->get('always'));
-        $this->assertNull($this->bag->get('user.login'));
-    }
-
-    public function testRemove()
-    {
-        $this->assertEquals('world', $this->bag->get('hello'));
-        $this->bag->remove('hello');
-        $this->assertNull($this->bag->get('hello'));
-
-        $this->assertEquals('be happy', $this->bag->get('always'));
-        $this->bag->remove('always');
-        $this->assertNull($this->bag->get('always'));
-
-        $this->assertEquals('drak', $this->bag->get('user.login'));
-        $this->bag->remove('user.login');
-        $this->assertNull($this->bag->get('user.login'));
-    }
-
-    public function testRemoveExistingNamespacedAttribute()
-    {
-        $this->assertSame('cod', $this->bag->remove('category/fishing/first'));
-    }
-
-    public function testRemoveNonexistingNamespacedAttribute()
-    {
-        $this->assertNull($this->bag->remove('foo/bar/baz'));
-    }
-
-    public function testClear()
-    {
-        $this->bag->clear();
-        $this->assertEquals(array(), $this->bag->all());
-    }
-
-    public function attributesProvider()
-    {
-        return array(
-            array('hello', 'world', true),
-            array('always', 'be happy', true),
-            array('user.login', 'drak', true),
-            array('csrf.token', array('a' => '1234', 'b' => '4321'), true),
-            array('csrf.token/a', '1234', true),
-            array('csrf.token/b', '4321', true),
-            array('category', array('fishing' => array('first' => 'cod', 'second' => 'sole')), true),
-            array('category/fishing', array('first' => 'cod', 'second' => 'sole'), true),
-            array('category/fishing/missing/first', null, false),
-            array('category/fishing/first', 'cod', true),
-            array('category/fishing/second', 'sole', true),
-            array('category/fishing/missing/second', null, false),
-            array('user2.login', null, false),
-            array('never', null, false),
-            array('bye', null, false),
-            array('bye/for/now', null, false),
-        );
-    }
-}
diff --git a/vendor/symfony/http-foundation/Tests/Session/Flash/AutoExpireFlashBagTest.php b/vendor/symfony/http-foundation/Tests/Session/Flash/AutoExpireFlashBagTest.php
deleted file mode 100644
index 852158f..0000000
--- a/vendor/symfony/http-foundation/Tests/Session/Flash/AutoExpireFlashBagTest.php
+++ /dev/null
@@ -1,155 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpFoundation\Tests\Session\Flash;
-
-use Symfony\Component\HttpFoundation\Session\Flash\AutoExpireFlashBag as FlashBag;
-
-/**
- * AutoExpireFlashBagTest.
- *
- * @author Drak <drak@zikula.org>
- */
-class AutoExpireFlashBagTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @var \Symfony\Component\HttpFoundation\Session\Flash\AutoExpireFlashBag
-     */
-    private $bag;
-
-    /**
-     * @var array
-     */
-    protected $array = array();
-
-    protected function setUp()
-    {
-        parent::setUp();
-        $this->bag = new FlashBag();
-        $this->array = array('new' => array('notice' => array('A previous flash message')));
-        $this->bag->initialize($this->array);
-    }
-
-    protected function tearDown()
-    {
-        $this->bag = null;
-        parent::tearDown();
-    }
-
-    public function testInitialize()
-    {
-        $bag = new FlashBag();
-        $array = array('new' => array('notice' => array('A previous flash message')));
-        $bag->initialize($array);
-        $this->assertEquals(array('A previous flash message'), $bag->peek('notice'));
-        $array = array('new' => array(
-                'notice' => array('Something else'),
-                'error' => array('a'),
-            ));
-        $bag->initialize($array);
-        $this->assertEquals(array('Something else'), $bag->peek('notice'));
-        $this->assertEquals(array('a'), $bag->peek('error'));
-    }
-
-    public function testGetStorageKey()
-    {
-        $this->assertEquals('_sf2_flashes', $this->bag->getStorageKey());
-        $attributeBag = new FlashBag('test');
-        $this->assertEquals('test', $attributeBag->getStorageKey());
-    }
-
-    public function testGetSetName()
-    {
-        $this->assertEquals('flashes', $this->bag->getName());
-        $this->bag->setName('foo');
-        $this->assertEquals('foo', $this->bag->getName());
-    }
-
-    public function testPeek()
-    {
-        $this->assertEquals(array(), $this->bag->peek('non_existing'));
-        $this->assertEquals(array('default'), $this->bag->peek('non_existing', array('default')));
-        $this->assertEquals(array('A previous flash message'), $this->bag->peek('notice'));
-        $this->assertEquals(array('A previous flash message'), $this->bag->peek('notice'));
-    }
-
-    public function testSet()
-    {
-        $this->bag->set('notice', 'Foo');
-        $this->assertEquals(array('A previous flash message'), $this->bag->peek('notice'));
-    }
-
-    public function testHas()
-    {
-        $this->assertFalse($this->bag->has('nothing'));
-        $this->assertTrue($this->bag->has('notice'));
-    }
-
-    public function testKeys()
-    {
-        $this->assertEquals(array('notice'), $this->bag->keys());
-    }
-
-    public function testPeekAll()
-    {
-        $array = array(
-            'new' => array(
-                'notice' => 'Foo',
-                'error' => 'Bar',
-            ),
-        );
-
-        $this->bag->initialize($array);
-        $this->assertEquals(array(
-            'notice' => 'Foo',
-            'error' => 'Bar',
-            ), $this->bag->peekAll()
-        );
-
-        $this->assertEquals(array(
-            'notice' => 'Foo',
-            'error' => 'Bar',
-            ), $this->bag->peekAll()
-        );
-    }
-
-    public function testGet()
-    {
-        $this->assertEquals(array(), $this->bag->get('non_existing'));
-        $this->assertEquals(array('default'), $this->bag->get('non_existing', array('default')));
-        $this->assertEquals(array('A previous flash message'), $this->bag->get('notice'));
-        $this->assertEquals(array(), $this->bag->get('notice'));
-    }
-
-    public function testSetAll()
-    {
-        $this->bag->setAll(array('a' => 'first', 'b' => 'second'));
-        $this->assertFalse($this->bag->has('a'));
-        $this->assertFalse($this->bag->has('b'));
-    }
-
-    public function testAll()
-    {
-        $this->bag->set('notice', 'Foo');
-        $this->bag->set('error', 'Bar');
-        $this->assertEquals(array(
-            'notice' => array('A previous flash message'),
-            ), $this->bag->all()
-        );
-
-        $this->assertEquals(array(), $this->bag->all());
-    }
-
-    public function testClear()
-    {
-        $this->assertEquals(array('notice' => array('A previous flash message')), $this->bag->clear());
-    }
-}
diff --git a/vendor/symfony/http-foundation/Tests/Session/Flash/FlashBagTest.php b/vendor/symfony/http-foundation/Tests/Session/Flash/FlashBagTest.php
deleted file mode 100644
index 44ad61b..0000000
--- a/vendor/symfony/http-foundation/Tests/Session/Flash/FlashBagTest.php
+++ /dev/null
@@ -1,155 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpFoundation\Tests\Session\Flash;
-
-use Symfony\Component\HttpFoundation\Session\Flash\FlashBag;
-
-/**
- * FlashBagTest.
- *
- * @author Drak <drak@zikula.org>
- */
-class FlashBagTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @var \Symfony\Component\HttpFoundation\Session\Flash\FlashBagInterface
-     */
-    private $bag;
-
-    /**
-     * @var array
-     */
-    protected $array = array();
-
-    protected function setUp()
-    {
-        parent::setUp();
-        $this->bag = new FlashBag();
-        $this->array = array('notice' => array('A previous flash message'));
-        $this->bag->initialize($this->array);
-    }
-
-    protected function tearDown()
-    {
-        $this->bag = null;
-        parent::tearDown();
-    }
-
-    public function testInitialize()
-    {
-        $bag = new FlashBag();
-        $bag->initialize($this->array);
-        $this->assertEquals($this->array, $bag->peekAll());
-        $array = array('should' => array('change'));
-        $bag->initialize($array);
-        $this->assertEquals($array, $bag->peekAll());
-    }
-
-    public function testGetStorageKey()
-    {
-        $this->assertEquals('_sf2_flashes', $this->bag->getStorageKey());
-        $attributeBag = new FlashBag('test');
-        $this->assertEquals('test', $attributeBag->getStorageKey());
-    }
-
-    public function testGetSetName()
-    {
-        $this->assertEquals('flashes', $this->bag->getName());
-        $this->bag->setName('foo');
-        $this->assertEquals('foo', $this->bag->getName());
-    }
-
-    public function testPeek()
-    {
-        $this->assertEquals(array(), $this->bag->peek('non_existing'));
-        $this->assertEquals(array('default'), $this->bag->peek('not_existing', array('default')));
-        $this->assertEquals(array('A previous flash message'), $this->bag->peek('notice'));
-        $this->assertEquals(array('A previous flash message'), $this->bag->peek('notice'));
-    }
-
-    public function testGet()
-    {
-        $this->assertEquals(array(), $this->bag->get('non_existing'));
-        $this->assertEquals(array('default'), $this->bag->get('not_existing', array('default')));
-        $this->assertEquals(array('A previous flash message'), $this->bag->get('notice'));
-        $this->assertEquals(array(), $this->bag->get('notice'));
-    }
-
-    public function testAll()
-    {
-        $this->bag->set('notice', 'Foo');
-        $this->bag->set('error', 'Bar');
-        $this->assertEquals(array(
-            'notice' => array('Foo'),
-            'error' => array('Bar'), ), $this->bag->all()
-        );
-
-        $this->assertEquals(array(), $this->bag->all());
-    }
-
-    public function testSet()
-    {
-        $this->bag->set('notice', 'Foo');
-        $this->bag->set('notice', 'Bar');
-        $this->assertEquals(array('Bar'), $this->bag->peek('notice'));
-    }
-
-    public function testHas()
-    {
-        $this->assertFalse($this->bag->has('nothing'));
-        $this->assertTrue($this->bag->has('notice'));
-    }
-
-    public function testKeys()
-    {
-        $this->assertEquals(array('notice'), $this->bag->keys());
-    }
-
-    public function testPeekAll()
-    {
-        $this->bag->set('notice', 'Foo');
-        $this->bag->set('error', 'Bar');
-        $this->assertEquals(array(
-            'notice' => array('Foo'),
-            'error' => array('Bar'),
-            ), $this->bag->peekAll()
-        );
-        $this->assertTrue($this->bag->has('notice'));
-        $this->assertTrue($this->bag->has('error'));
-        $this->assertEquals(array(
-            'notice' => array('Foo'),
-            'error' => array('Bar'),
-            ), $this->bag->peekAll()
-        );
-    }
-
-    /**
-     * @covers Symfony\Component\HttpFoundation\Session\Flash\FlashBag::getIterator
-     * @group legacy
-     */
-    public function testLegacyGetIterator()
-    {
-        $flashes = array('hello' => 'world', 'beep' => 'boop', 'notice' => 'nope');
-        foreach ($flashes as $key => $val) {
-            $this->bag->set($key, $val);
-        }
-
-        $i = 0;
-        foreach ($this->bag as $key => $val) {
-            $this->assertEquals(array($flashes[$key]), $val);
-            ++$i;
-        }
-
-        $this->assertEquals(count($flashes), $i);
-        $this->assertCount(0, $this->bag->all());
-    }
-}
diff --git a/vendor/symfony/http-foundation/Tests/Session/SessionTest.php b/vendor/symfony/http-foundation/Tests/Session/SessionTest.php
deleted file mode 100644
index 385df1e..0000000
--- a/vendor/symfony/http-foundation/Tests/Session/SessionTest.php
+++ /dev/null
@@ -1,227 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpFoundation\Tests\Session;
-
-use Symfony\Component\HttpFoundation\Session\Session;
-use Symfony\Component\HttpFoundation\Session\Flash\FlashBag;
-use Symfony\Component\HttpFoundation\Session\Attribute\AttributeBag;
-use Symfony\Component\HttpFoundation\Session\Storage\MockArraySessionStorage;
-
-/**
- * SessionTest.
- *
- * @author Fabien Potencier <fabien@symfony.com>
- * @author Robert Schönthal <seroscho@googlemail.com>
- * @author Drak <drak@zikula.org>
- */
-class SessionTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @var \Symfony\Component\HttpFoundation\Session\Storage\SessionStorageInterface
-     */
-    protected $storage;
-
-    /**
-     * @var \Symfony\Component\HttpFoundation\Session\SessionInterface
-     */
-    protected $session;
-
-    protected function setUp()
-    {
-        $this->storage = new MockArraySessionStorage();
-        $this->session = new Session($this->storage, new AttributeBag(), new FlashBag());
-    }
-
-    protected function tearDown()
-    {
-        $this->storage = null;
-        $this->session = null;
-    }
-
-    public function testStart()
-    {
-        $this->assertEquals('', $this->session->getId());
-        $this->assertTrue($this->session->start());
-        $this->assertNotEquals('', $this->session->getId());
-    }
-
-    public function testIsStarted()
-    {
-        $this->assertFalse($this->session->isStarted());
-        $this->session->start();
-        $this->assertTrue($this->session->isStarted());
-    }
-
-    public function testSetId()
-    {
-        $this->assertEquals('', $this->session->getId());
-        $this->session->setId('0123456789abcdef');
-        $this->session->start();
-        $this->assertEquals('0123456789abcdef', $this->session->getId());
-    }
-
-    public function testSetName()
-    {
-        $this->assertEquals('MOCKSESSID', $this->session->getName());
-        $this->session->setName('session.test.com');
-        $this->session->start();
-        $this->assertEquals('session.test.com', $this->session->getName());
-    }
-
-    public function testGet()
-    {
-        // tests defaults
-        $this->assertNull($this->session->get('foo'));
-        $this->assertEquals(1, $this->session->get('foo', 1));
-    }
-
-    /**
-     * @dataProvider setProvider
-     */
-    public function testSet($key, $value)
-    {
-        $this->session->set($key, $value);
-        $this->assertEquals($value, $this->session->get($key));
-    }
-
-    /**
-     * @dataProvider setProvider
-     */
-    public function testHas($key, $value)
-    {
-        $this->session->set($key, $value);
-        $this->assertTrue($this->session->has($key));
-        $this->assertFalse($this->session->has($key.'non_value'));
-    }
-
-    public function testReplace()
-    {
-        $this->session->replace(array('happiness' => 'be good', 'symfony' => 'awesome'));
-        $this->assertEquals(array('happiness' => 'be good', 'symfony' => 'awesome'), $this->session->all());
-        $this->session->replace(array());
-        $this->assertEquals(array(), $this->session->all());
-    }
-
-    /**
-     * @dataProvider setProvider
-     */
-    public function testAll($key, $value, $result)
-    {
-        $this->session->set($key, $value);
-        $this->assertEquals($result, $this->session->all());
-    }
-
-    /**
-     * @dataProvider setProvider
-     */
-    public function testClear($key, $value)
-    {
-        $this->session->set('hi', 'fabien');
-        $this->session->set($key, $value);
-        $this->session->clear();
-        $this->assertEquals(array(), $this->session->all());
-    }
-
-    public function setProvider()
-    {
-        return array(
-            array('foo', 'bar', array('foo' => 'bar')),
-            array('foo.bar', 'too much beer', array('foo.bar' => 'too much beer')),
-            array('great', 'symfony is great', array('great' => 'symfony is great')),
-        );
-    }
-
-    /**
-     * @dataProvider setProvider
-     */
-    public function testRemove($key, $value)
-    {
-        $this->session->set('hi.world', 'have a nice day');
-        $this->session->set($key, $value);
-        $this->session->remove($key);
-        $this->assertEquals(array('hi.world' => 'have a nice day'), $this->session->all());
-    }
-
-    public function testInvalidate()
-    {
-        $this->session->set('invalidate', 123);
-        $this->session->invalidate();
-        $this->assertEquals(array(), $this->session->all());
-    }
-
-    public function testMigrate()
-    {
-        $this->session->set('migrate', 321);
-        $this->session->migrate();
-        $this->assertEquals(321, $this->session->get('migrate'));
-    }
-
-    public function testMigrateDestroy()
-    {
-        $this->session->set('migrate', 333);
-        $this->session->migrate(true);
-        $this->assertEquals(333, $this->session->get('migrate'));
-    }
-
-    public function testSave()
-    {
-        $this->session->start();
-        $this->session->save();
-    }
-
-    public function testGetId()
-    {
-        $this->assertEquals('', $this->session->getId());
-        $this->session->start();
-        $this->assertNotEquals('', $this->session->getId());
-    }
-
-    public function testGetFlashBag()
-    {
-        $this->assertInstanceOf('Symfony\\Component\\HttpFoundation\\Session\\Flash\\FlashBagInterface', $this->session->getFlashBag());
-    }
-
-    /**
-     * @covers Symfony\Component\HttpFoundation\Session\Session::getIterator
-     */
-    public function testGetIterator()
-    {
-        $attributes = array('hello' => 'world', 'symfony' => 'rocks');
-        foreach ($attributes as $key => $val) {
-            $this->session->set($key, $val);
-        }
-
-        $i = 0;
-        foreach ($this->session as $key => $val) {
-            $this->assertEquals($attributes[$key], $val);
-            ++$i;
-        }
-
-        $this->assertEquals(count($attributes), $i);
-    }
-
-    /**
-     * @covers \Symfony\Component\HttpFoundation\Session\Session::count
-     */
-    public function testGetCount()
-    {
-        $this->session->set('hello', 'world');
-        $this->session->set('symfony', 'rocks');
-
-        $this->assertCount(2, $this->session);
-    }
-
-    public function testGetMeta()
-    {
-        $this->assertInstanceOf('Symfony\Component\HttpFoundation\Session\Storage\MetadataBag', $this->session->getMetadataBag());
-    }
-}
diff --git a/vendor/symfony/http-foundation/Tests/Session/Storage/Handler/LegacyPdoSessionHandlerTest.php b/vendor/symfony/http-foundation/Tests/Session/Storage/Handler/LegacyPdoSessionHandlerTest.php
deleted file mode 100644
index 7a1e491..0000000
--- a/vendor/symfony/http-foundation/Tests/Session/Storage/Handler/LegacyPdoSessionHandlerTest.php
+++ /dev/null
@@ -1,114 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpFoundation\Tests\Session\Storage\Handler;
-
-use Symfony\Component\HttpFoundation\Session\Storage\Handler\LegacyPdoSessionHandler;
-
-/**
- * @group legacy
- */
-class LegacyPdoSessionHandlerTest extends \PHPUnit_Framework_TestCase
-{
-    private $pdo;
-
-    protected function setUp()
-    {
-        if (!class_exists('PDO') || !in_array('sqlite', \PDO::getAvailableDrivers())) {
-            $this->markTestSkipped('This test requires SQLite support in your environment');
-        }
-
-        $this->pdo = new \PDO('sqlite::memory:');
-        $this->pdo->setAttribute(\PDO::ATTR_ERRMODE, \PDO::ERRMODE_EXCEPTION);
-        $sql = 'CREATE TABLE sessions (sess_id VARCHAR(128) PRIMARY KEY, sess_data TEXT, sess_time INTEGER)';
-        $this->pdo->exec($sql);
-    }
-
-    public function testIncompleteOptions()
-    {
-        $this->setExpectedException('InvalidArgumentException');
-        $storage = new LegacyPdoSessionHandler($this->pdo, array());
-    }
-
-    public function testWrongPdoErrMode()
-    {
-        $pdo = new \PDO('sqlite::memory:');
-        $pdo->setAttribute(\PDO::ATTR_ERRMODE, \PDO::ERRMODE_SILENT);
-        $pdo->exec('CREATE TABLE sessions (sess_id VARCHAR(128) PRIMARY KEY, sess_data TEXT, sess_time INTEGER)');
-
-        $this->setExpectedException('InvalidArgumentException');
-        $storage = new LegacyPdoSessionHandler($pdo, array('db_table' => 'sessions'));
-    }
-
-    public function testWrongTableOptionsWrite()
-    {
-        $storage = new LegacyPdoSessionHandler($this->pdo, array('db_table' => 'bad_name'));
-        $this->setExpectedException('RuntimeException');
-        $storage->write('foo', 'bar');
-    }
-
-    public function testWrongTableOptionsRead()
-    {
-        $storage = new LegacyPdoSessionHandler($this->pdo, array('db_table' => 'bad_name'));
-        $this->setExpectedException('RuntimeException');
-        $storage->read('foo', 'bar');
-    }
-
-    public function testWriteRead()
-    {
-        $storage = new LegacyPdoSessionHandler($this->pdo, array('db_table' => 'sessions'));
-        $storage->write('foo', 'bar');
-        $this->assertEquals('bar', $storage->read('foo'), 'written value can be read back correctly');
-    }
-
-    public function testMultipleInstances()
-    {
-        $storage1 = new LegacyPdoSessionHandler($this->pdo, array('db_table' => 'sessions'));
-        $storage1->write('foo', 'bar');
-
-        $storage2 = new LegacyPdoSessionHandler($this->pdo, array('db_table' => 'sessions'));
-        $this->assertEquals('bar', $storage2->read('foo'), 'values persist between instances');
-    }
-
-    public function testSessionDestroy()
-    {
-        $storage = new LegacyPdoSessionHandler($this->pdo, array('db_table' => 'sessions'));
-        $storage->write('foo', 'bar');
-        $this->assertCount(1, $this->pdo->query('SELECT * FROM sessions')->fetchAll());
-
-        $storage->destroy('foo');
-
-        $this->assertCount(0, $this->pdo->query('SELECT * FROM sessions')->fetchAll());
-    }
-
-    public function testSessionGC()
-    {
-        $storage = new LegacyPdoSessionHandler($this->pdo, array('db_table' => 'sessions'));
-
-        $storage->write('foo', 'bar');
-        $storage->write('baz', 'bar');
-
-        $this->assertCount(2, $this->pdo->query('SELECT * FROM sessions')->fetchAll());
-
-        $storage->gc(-1);
-        $this->assertCount(0, $this->pdo->query('SELECT * FROM sessions')->fetchAll());
-    }
-
-    public function testGetConnection()
-    {
-        $storage = new LegacyPdoSessionHandler($this->pdo, array('db_table' => 'sessions'), array());
-
-        $method = new \ReflectionMethod($storage, 'getConnection');
-        $method->setAccessible(true);
-
-        $this->assertInstanceOf('\PDO', $method->invoke($storage));
-    }
-}
diff --git a/vendor/symfony/http-foundation/Tests/Session/Storage/Handler/MemcacheSessionHandlerTest.php b/vendor/symfony/http-foundation/Tests/Session/Storage/Handler/MemcacheSessionHandlerTest.php
deleted file mode 100644
index 8d38ab3..0000000
--- a/vendor/symfony/http-foundation/Tests/Session/Storage/Handler/MemcacheSessionHandlerTest.php
+++ /dev/null
@@ -1,132 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpFoundation\Tests\Session\Storage\Handler;
-
-use Symfony\Component\HttpFoundation\Session\Storage\Handler\MemcacheSessionHandler;
-
-class MemcacheSessionHandlerTest extends \PHPUnit_Framework_TestCase
-{
-    const PREFIX = 'prefix_';
-    const TTL = 1000;
-    /**
-     * @var MemcacheSessionHandler
-     */
-    protected $storage;
-
-    protected $memcache;
-
-    protected function setUp()
-    {
-        if (!class_exists('Memcache')) {
-            $this->markTestSkipped('Skipped tests Memcache class is not present');
-        }
-
-        $this->memcache = $this->getMock('Memcache');
-        $this->storage = new MemcacheSessionHandler(
-            $this->memcache,
-            array('prefix' => self::PREFIX, 'expiretime' => self::TTL)
-        );
-    }
-
-    protected function tearDown()
-    {
-        $this->memcache = null;
-        $this->storage = null;
-    }
-
-    public function testOpenSession()
-    {
-        $this->assertTrue($this->storage->open('', ''));
-    }
-
-    public function testCloseSession()
-    {
-        $this->memcache
-            ->expects($this->once())
-            ->method('close')
-            ->will($this->returnValue(true))
-        ;
-
-        $this->assertTrue($this->storage->close());
-    }
-
-    public function testReadSession()
-    {
-        $this->memcache
-            ->expects($this->once())
-            ->method('get')
-            ->with(self::PREFIX.'id')
-        ;
-
-        $this->assertEquals('', $this->storage->read('id'));
-    }
-
-    public function testWriteSession()
-    {
-        $this->memcache
-            ->expects($this->once())
-            ->method('set')
-            ->with(self::PREFIX.'id', 'data', 0, $this->equalTo(time() + self::TTL, 2))
-            ->will($this->returnValue(true))
-        ;
-
-        $this->assertTrue($this->storage->write('id', 'data'));
-    }
-
-    public function testDestroySession()
-    {
-        $this->memcache
-            ->expects($this->once())
-            ->method('delete')
-            ->with(self::PREFIX.'id')
-            ->will($this->returnValue(true))
-        ;
-
-        $this->assertTrue($this->storage->destroy('id'));
-    }
-
-    public function testGcSession()
-    {
-        $this->assertTrue($this->storage->gc(123));
-    }
-
-    /**
-     * @dataProvider getOptionFixtures
-     */
-    public function testSupportedOptions($options, $supported)
-    {
-        try {
-            new MemcacheSessionHandler($this->memcache, $options);
-            $this->assertTrue($supported);
-        } catch (\InvalidArgumentException $e) {
-            $this->assertFalse($supported);
-        }
-    }
-
-    public function getOptionFixtures()
-    {
-        return array(
-            array(array('prefix' => 'session'), true),
-            array(array('expiretime' => 100), true),
-            array(array('prefix' => 'session', 'expiretime' => 200), true),
-            array(array('expiretime' => 100, 'foo' => 'bar'), false),
-        );
-    }
-
-    public function testGetConnection()
-    {
-        $method = new \ReflectionMethod($this->storage, 'getMemcache');
-        $method->setAccessible(true);
-
-        $this->assertInstanceOf('\Memcache', $method->invoke($this->storage));
-    }
-}
diff --git a/vendor/symfony/http-foundation/Tests/Session/Storage/Handler/MemcachedSessionHandlerTest.php b/vendor/symfony/http-foundation/Tests/Session/Storage/Handler/MemcachedSessionHandlerTest.php
deleted file mode 100644
index a7e5908..0000000
--- a/vendor/symfony/http-foundation/Tests/Session/Storage/Handler/MemcachedSessionHandlerTest.php
+++ /dev/null
@@ -1,131 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpFoundation\Tests\Session\Storage\Handler;
-
-use Symfony\Component\HttpFoundation\Session\Storage\Handler\MemcachedSessionHandler;
-
-class MemcachedSessionHandlerTest extends \PHPUnit_Framework_TestCase
-{
-    const PREFIX = 'prefix_';
-    const TTL = 1000;
-
-    /**
-     * @var MemcachedSessionHandler
-     */
-    protected $storage;
-
-    protected $memcached;
-
-    protected function setUp()
-    {
-        if (!class_exists('Memcached')) {
-            $this->markTestSkipped('Skipped tests Memcached class is not present');
-        }
-
-        if (version_compare(phpversion('memcached'), '2.2.0', '>=')) {
-            $this->markTestSkipped('Tests can only be run with memcached extension 2.1.0 or lower');
-        }
-
-        $this->memcached = $this->getMock('Memcached');
-        $this->storage = new MemcachedSessionHandler(
-            $this->memcached,
-            array('prefix' => self::PREFIX, 'expiretime' => self::TTL)
-        );
-    }
-
-    protected function tearDown()
-    {
-        $this->memcached = null;
-        $this->storage = null;
-    }
-
-    public function testOpenSession()
-    {
-        $this->assertTrue($this->storage->open('', ''));
-    }
-
-    public function testCloseSession()
-    {
-        $this->assertTrue($this->storage->close());
-    }
-
-    public function testReadSession()
-    {
-        $this->memcached
-            ->expects($this->once())
-            ->method('get')
-            ->with(self::PREFIX.'id')
-        ;
-
-        $this->assertEquals('', $this->storage->read('id'));
-    }
-
-    public function testWriteSession()
-    {
-        $this->memcached
-            ->expects($this->once())
-            ->method('set')
-            ->with(self::PREFIX.'id', 'data', $this->equalTo(time() + self::TTL, 2))
-            ->will($this->returnValue(true))
-        ;
-
-        $this->assertTrue($this->storage->write('id', 'data'));
-    }
-
-    public function testDestroySession()
-    {
-        $this->memcached
-            ->expects($this->once())
-            ->method('delete')
-            ->with(self::PREFIX.'id')
-            ->will($this->returnValue(true))
-        ;
-
-        $this->assertTrue($this->storage->destroy('id'));
-    }
-
-    public function testGcSession()
-    {
-        $this->assertTrue($this->storage->gc(123));
-    }
-
-    /**
-     * @dataProvider getOptionFixtures
-     */
-    public function testSupportedOptions($options, $supported)
-    {
-        try {
-            new MemcachedSessionHandler($this->memcached, $options);
-            $this->assertTrue($supported);
-        } catch (\InvalidArgumentException $e) {
-            $this->assertFalse($supported);
-        }
-    }
-
-    public function getOptionFixtures()
-    {
-        return array(
-            array(array('prefix' => 'session'), true),
-            array(array('expiretime' => 100), true),
-            array(array('prefix' => 'session', 'expiretime' => 200), true),
-            array(array('expiretime' => 100, 'foo' => 'bar'), false),
-        );
-    }
-
-    public function testGetConnection()
-    {
-        $method = new \ReflectionMethod($this->storage, 'getMemcached');
-        $method->setAccessible(true);
-
-        $this->assertInstanceOf('\Memcached', $method->invoke($this->storage));
-    }
-}
diff --git a/vendor/symfony/http-foundation/Tests/Session/Storage/Handler/MongoDbSessionHandlerTest.php b/vendor/symfony/http-foundation/Tests/Session/Storage/Handler/MongoDbSessionHandlerTest.php
deleted file mode 100644
index 0bc012a..0000000
--- a/vendor/symfony/http-foundation/Tests/Session/Storage/Handler/MongoDbSessionHandlerTest.php
+++ /dev/null
@@ -1,255 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpFoundation\Tests\Session\Storage\Handler;
-
-use Symfony\Component\HttpFoundation\Session\Storage\Handler\MongoDbSessionHandler;
-
-/**
- * @author Markus Bachmann <markus.bachmann@bachi.biz>
- */
-class MongoDbSessionHandlerTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @var \PHPUnit_Framework_MockObject_MockObject
-     */
-    private $mongo;
-    private $storage;
-    public $options;
-
-    protected function setUp()
-    {
-        if (!extension_loaded('mongo')) {
-            $this->markTestSkipped('MongoDbSessionHandler requires the PHP "mongo" extension.');
-        }
-
-        $mongoClass = version_compare(phpversion('mongo'), '1.3.0', '<') ? 'Mongo' : 'MongoClient';
-
-        $this->mongo = $this->getMockBuilder($mongoClass)
-            ->getMock();
-
-        $this->options = array(
-            'id_field' => '_id',
-            'data_field' => 'data',
-            'time_field' => 'time',
-            'expiry_field' => 'expires_at',
-            'database' => 'sf2-test',
-            'collection' => 'session-test',
-        );
-
-        $this->storage = new MongoDbSessionHandler($this->mongo, $this->options);
-    }
-
-    /**
-     * @expectedException \InvalidArgumentException
-     */
-    public function testConstructorShouldThrowExceptionForInvalidMongo()
-    {
-        new MongoDbSessionHandler(new \stdClass(), $this->options);
-    }
-
-    /**
-     * @expectedException \InvalidArgumentException
-     */
-    public function testConstructorShouldThrowExceptionForMissingOptions()
-    {
-        new MongoDbSessionHandler($this->mongo, array());
-    }
-
-    public function testOpenMethodAlwaysReturnTrue()
-    {
-        $this->assertTrue($this->storage->open('test', 'test'), 'The "open" method should always return true');
-    }
-
-    public function testCloseMethodAlwaysReturnTrue()
-    {
-        $this->assertTrue($this->storage->close(), 'The "close" method should always return true');
-    }
-
-    public function testRead()
-    {
-        $collection = $this->createMongoCollectionMock();
-
-        $this->mongo->expects($this->once())
-            ->method('selectCollection')
-            ->with($this->options['database'], $this->options['collection'])
-            ->will($this->returnValue($collection));
-
-        $that = $this;
-
-        // defining the timeout before the actual method call
-        // allows to test for "greater than" values in the $criteria
-        $testTimeout = time() + 1;
-
-        $collection->expects($this->once())
-            ->method('findOne')
-            ->will($this->returnCallback(function ($criteria) use ($that, $testTimeout) {
-                $that->assertArrayHasKey($that->options['id_field'], $criteria);
-                $that->assertEquals($criteria[$that->options['id_field']], 'foo');
-
-                $that->assertArrayHasKey($that->options['expiry_field'], $criteria);
-                $that->assertArrayHasKey('$gte', $criteria[$that->options['expiry_field']]);
-                $that->assertInstanceOf('MongoDate', $criteria[$that->options['expiry_field']]['$gte']);
-                $that->assertGreaterThanOrEqual($criteria[$that->options['expiry_field']]['$gte']->sec, $testTimeout);
-
-                return array(
-                    $that->options['id_field'] => 'foo',
-                    $that->options['data_field'] => new \MongoBinData('bar', \MongoBinData::BYTE_ARRAY),
-                    $that->options['id_field'] => new \MongoDate(),
-                );
-            }));
-
-        $this->assertEquals('bar', $this->storage->read('foo'));
-    }
-
-    public function testWrite()
-    {
-        $collection = $this->createMongoCollectionMock();
-
-        $this->mongo->expects($this->once())
-            ->method('selectCollection')
-            ->with($this->options['database'], $this->options['collection'])
-            ->will($this->returnValue($collection));
-
-        $that = $this;
-        $data = array();
-
-        $collection->expects($this->once())
-            ->method('update')
-            ->will($this->returnCallback(function ($criteria, $updateData, $options) use ($that, &$data) {
-                $that->assertEquals(array($that->options['id_field'] => 'foo'), $criteria);
-                $that->assertEquals(array('upsert' => true, 'multiple' => false), $options);
-
-                $data = $updateData['$set'];
-            }));
-
-        $expectedExpiry = time() + (int) ini_get('session.gc_maxlifetime');
-        $this->assertTrue($this->storage->write('foo', 'bar'));
-
-        $this->assertEquals('bar', $data[$this->options['data_field']]->bin);
-        $that->assertInstanceOf('MongoDate', $data[$this->options['time_field']]);
-        $this->assertInstanceOf('MongoDate', $data[$this->options['expiry_field']]);
-        $this->assertGreaterThanOrEqual($expectedExpiry, $data[$this->options['expiry_field']]->sec);
-    }
-
-    public function testWriteWhenUsingExpiresField()
-    {
-        $this->options = array(
-            'id_field' => '_id',
-            'data_field' => 'data',
-            'time_field' => 'time',
-            'database' => 'sf2-test',
-            'collection' => 'session-test',
-            'expiry_field' => 'expiresAt',
-        );
-
-        $this->storage = new MongoDbSessionHandler($this->mongo, $this->options);
-
-        $collection = $this->createMongoCollectionMock();
-
-        $this->mongo->expects($this->once())
-            ->method('selectCollection')
-            ->with($this->options['database'], $this->options['collection'])
-            ->will($this->returnValue($collection));
-
-        $that = $this;
-        $data = array();
-
-        $collection->expects($this->once())
-            ->method('update')
-            ->will($this->returnCallback(function ($criteria, $updateData, $options) use ($that, &$data) {
-                $that->assertEquals(array($that->options['id_field'] => 'foo'), $criteria);
-                $that->assertEquals(array('upsert' => true, 'multiple' => false), $options);
-
-                $data = $updateData['$set'];
-            }));
-
-        $this->assertTrue($this->storage->write('foo', 'bar'));
-
-        $this->assertEquals('bar', $data[$this->options['data_field']]->bin);
-        $that->assertInstanceOf('MongoDate', $data[$this->options['time_field']]);
-        $that->assertInstanceOf('MongoDate', $data[$this->options['expiry_field']]);
-    }
-
-    public function testReplaceSessionData()
-    {
-        $collection = $this->createMongoCollectionMock();
-
-        $this->mongo->expects($this->once())
-            ->method('selectCollection')
-            ->with($this->options['database'], $this->options['collection'])
-            ->will($this->returnValue($collection));
-
-        $data = array();
-
-        $collection->expects($this->exactly(2))
-            ->method('update')
-            ->will($this->returnCallback(function ($criteria, $updateData, $options) use (&$data) {
-                $data = $updateData;
-            }));
-
-        $this->storage->write('foo', 'bar');
-        $this->storage->write('foo', 'foobar');
-
-        $this->assertEquals('foobar', $data['$set'][$this->options['data_field']]->bin);
-    }
-
-    public function testDestroy()
-    {
-        $collection = $this->createMongoCollectionMock();
-
-        $this->mongo->expects($this->once())
-            ->method('selectCollection')
-            ->with($this->options['database'], $this->options['collection'])
-            ->will($this->returnValue($collection));
-
-        $collection->expects($this->once())
-            ->method('remove')
-            ->with(array($this->options['id_field'] => 'foo'));
-
-        $this->assertTrue($this->storage->destroy('foo'));
-    }
-
-    public function testGc()
-    {
-        $collection = $this->createMongoCollectionMock();
-
-        $this->mongo->expects($this->once())
-            ->method('selectCollection')
-            ->with($this->options['database'], $this->options['collection'])
-            ->will($this->returnValue($collection));
-
-        $that = $this;
-
-        $collection->expects($this->once())
-            ->method('remove')
-            ->will($this->returnCallback(function ($criteria) use ($that) {
-                $that->assertInstanceOf('MongoDate', $criteria[$that->options['expiry_field']]['$lt']);
-                $that->assertGreaterThanOrEqual(time() - 1, $criteria[$that->options['expiry_field']]['$lt']->sec);
-            }));
-
-        $this->assertTrue($this->storage->gc(1));
-    }
-
-    private function createMongoCollectionMock()
-    {
-        $mongoClient = $this->getMockBuilder('MongoClient')
-            ->getMock();
-        $mongoDb = $this->getMockBuilder('MongoDB')
-            ->setConstructorArgs(array($mongoClient, 'database-name'))
-            ->getMock();
-        $collection = $this->getMockBuilder('MongoCollection')
-            ->setConstructorArgs(array($mongoDb, 'collection-name'))
-            ->getMock();
-
-        return $collection;
-    }
-}
diff --git a/vendor/symfony/http-foundation/Tests/Session/Storage/Handler/NativeFileSessionHandlerTest.php b/vendor/symfony/http-foundation/Tests/Session/Storage/Handler/NativeFileSessionHandlerTest.php
deleted file mode 100644
index ab848b6..0000000
--- a/vendor/symfony/http-foundation/Tests/Session/Storage/Handler/NativeFileSessionHandlerTest.php
+++ /dev/null
@@ -1,81 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpFoundation\Tests\Session\Storage\Handler;
-
-use Symfony\Component\HttpFoundation\Session\Storage\Handler\NativeFileSessionHandler;
-use Symfony\Component\HttpFoundation\Session\Storage\NativeSessionStorage;
-
-/**
- * Test class for NativeFileSessionHandler.
- *
- * @author Drak <drak@zikula.org>
- *
- * @runTestsInSeparateProcesses
- * @preserveGlobalState disabled
- */
-class NativeFileSessionHandlerTest extends \PHPUnit_Framework_TestCase
-{
-    public function testConstruct()
-    {
-        $storage = new NativeSessionStorage(array('name' => 'TESTING'), new NativeFileSessionHandler(sys_get_temp_dir()));
-
-        if (PHP_VERSION_ID < 50400) {
-            $this->assertEquals('files', $storage->getSaveHandler()->getSaveHandlerName());
-            $this->assertEquals('files', ini_get('session.save_handler'));
-        } else {
-            $this->assertEquals('files', $storage->getSaveHandler()->getSaveHandlerName());
-            $this->assertEquals('user', ini_get('session.save_handler'));
-        }
-
-        $this->assertEquals(sys_get_temp_dir(), ini_get('session.save_path'));
-        $this->assertEquals('TESTING', ini_get('session.name'));
-    }
-
-    /**
-     * @dataProvider savePathDataProvider
-     */
-    public function testConstructSavePath($savePath, $expectedSavePath, $path)
-    {
-        $handler = new NativeFileSessionHandler($savePath);
-        $this->assertEquals($expectedSavePath, ini_get('session.save_path'));
-        $this->assertTrue(is_dir(realpath($path)));
-
-        rmdir($path);
-    }
-
-    public function savePathDataProvider()
-    {
-        $base = sys_get_temp_dir();
-
-        return array(
-            array("$base/foo", "$base/foo", "$base/foo"),
-            array("5;$base/foo", "5;$base/foo", "$base/foo"),
-            array("5;0600;$base/foo", "5;0600;$base/foo", "$base/foo"),
-        );
-    }
-
-    /**
-     * @expectedException \InvalidArgumentException
-     */
-    public function testConstructException()
-    {
-        $handler = new NativeFileSessionHandler('something;invalid;with;too-many-args');
-    }
-
-    public function testConstructDefault()
-    {
-        $path = ini_get('session.save_path');
-        $storage = new NativeSessionStorage(array('name' => 'TESTING'), new NativeFileSessionHandler());
-
-        $this->assertEquals($path, ini_get('session.save_path'));
-    }
-}
diff --git a/vendor/symfony/http-foundation/Tests/Session/Storage/Handler/NativeSessionHandlerTest.php b/vendor/symfony/http-foundation/Tests/Session/Storage/Handler/NativeSessionHandlerTest.php
deleted file mode 100644
index 3437cf0..0000000
--- a/vendor/symfony/http-foundation/Tests/Session/Storage/Handler/NativeSessionHandlerTest.php
+++ /dev/null
@@ -1,40 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpFoundation\Tests\Session\Storage\Handler;
-
-use Symfony\Component\HttpFoundation\Session\Storage\Handler\NativeSessionHandler;
-
-/**
- * Test class for NativeSessionHandler.
- *
- * @author Drak <drak@zikula.org>
- *
- * @runTestsInSeparateProcesses
- * @preserveGlobalState disabled
- */
-class NativeSessionHandlerTest extends \PHPUnit_Framework_TestCase
-{
-    public function testConstruct()
-    {
-        $handler = new NativeSessionHandler();
-
-        // note for PHPUnit optimisers - the use of assertTrue/False
-        // here is deliberate since the tests do not require the classes to exist - drak
-        if (PHP_VERSION_ID < 50400) {
-            $this->assertFalse($handler instanceof \SessionHandler);
-            $this->assertTrue($handler instanceof NativeSessionHandler);
-        } else {
-            $this->assertTrue($handler instanceof \SessionHandler);
-            $this->assertTrue($handler instanceof NativeSessionHandler);
-        }
-    }
-}
diff --git a/vendor/symfony/http-foundation/Tests/Session/Storage/Handler/NullSessionHandlerTest.php b/vendor/symfony/http-foundation/Tests/Session/Storage/Handler/NullSessionHandlerTest.php
deleted file mode 100644
index 35823d6..0000000
--- a/vendor/symfony/http-foundation/Tests/Session/Storage/Handler/NullSessionHandlerTest.php
+++ /dev/null
@@ -1,58 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpFoundation\Tests\Session\Storage\Handler;
-
-use Symfony\Component\HttpFoundation\Session\Storage\Handler\NullSessionHandler;
-use Symfony\Component\HttpFoundation\Session\Storage\NativeSessionStorage;
-use Symfony\Component\HttpFoundation\Session\Session;
-
-/**
- * Test class for NullSessionHandler.
- *
- * @author Drak <drak@zikula.org>
- *
- * @runTestsInSeparateProcesses
- * @preserveGlobalState disabled
- */
-class NullSessionHandlerTest extends \PHPUnit_Framework_TestCase
-{
-    public function testSaveHandlers()
-    {
-        $storage = $this->getStorage();
-        $this->assertEquals('user', ini_get('session.save_handler'));
-    }
-
-    public function testSession()
-    {
-        session_id('nullsessionstorage');
-        $storage = $this->getStorage();
-        $session = new Session($storage);
-        $this->assertNull($session->get('something'));
-        $session->set('something', 'unique');
-        $this->assertEquals('unique', $session->get('something'));
-    }
-
-    public function testNothingIsPersisted()
-    {
-        session_id('nullsessionstorage');
-        $storage = $this->getStorage();
-        $session = new Session($storage);
-        $session->start();
-        $this->assertEquals('nullsessionstorage', $session->getId());
-        $this->assertNull($session->get('something'));
-    }
-
-    public function getStorage()
-    {
-        return new NativeSessionStorage(array(), new NullSessionHandler());
-    }
-}
diff --git a/vendor/symfony/http-foundation/Tests/Session/Storage/Handler/PdoSessionHandlerTest.php b/vendor/symfony/http-foundation/Tests/Session/Storage/Handler/PdoSessionHandlerTest.php
deleted file mode 100644
index a6cde72..0000000
--- a/vendor/symfony/http-foundation/Tests/Session/Storage/Handler/PdoSessionHandlerTest.php
+++ /dev/null
@@ -1,359 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpFoundation\Tests\Session\Storage\Handler;
-
-use Symfony\Component\HttpFoundation\Session\Storage\Handler\PdoSessionHandler;
-
-class PdoSessionHandlerTest extends \PHPUnit_Framework_TestCase
-{
-    private $dbFile;
-
-    protected function setUp()
-    {
-        if (!class_exists('PDO') || !in_array('sqlite', \PDO::getAvailableDrivers())) {
-            $this->markTestSkipped('This test requires SQLite support in your environment');
-        }
-    }
-
-    protected function tearDown()
-    {
-        // make sure the temporary database file is deleted when it has been created (even when a test fails)
-        if ($this->dbFile) {
-            @unlink($this->dbFile);
-        }
-    }
-
-    protected function getPersistentSqliteDsn()
-    {
-        $this->dbFile = tempnam(sys_get_temp_dir(), 'sf2_sqlite_sessions');
-
-        return 'sqlite:'.$this->dbFile;
-    }
-
-    protected function getMemorySqlitePdo()
-    {
-        $pdo = new \PDO('sqlite::memory:');
-        $pdo->setAttribute(\PDO::ATTR_ERRMODE, \PDO::ERRMODE_EXCEPTION);
-        $storage = new PdoSessionHandler($pdo);
-        $storage->createTable();
-
-        return $pdo;
-    }
-
-    /**
-     * @expectedException \InvalidArgumentException
-     */
-    public function testWrongPdoErrMode()
-    {
-        $pdo = $this->getMemorySqlitePdo();
-        $pdo->setAttribute(\PDO::ATTR_ERRMODE, \PDO::ERRMODE_SILENT);
-
-        $storage = new PdoSessionHandler($pdo);
-    }
-
-    /**
-     * @expectedException \RuntimeException
-     */
-    public function testInexistentTable()
-    {
-        $storage = new PdoSessionHandler($this->getMemorySqlitePdo(), array('db_table' => 'inexistent_table'));
-        $storage->open('', 'sid');
-        $storage->read('id');
-        $storage->write('id', 'data');
-        $storage->close();
-    }
-
-    /**
-     * @expectedException \RuntimeException
-     */
-    public function testCreateTableTwice()
-    {
-        $storage = new PdoSessionHandler($this->getMemorySqlitePdo());
-        $storage->createTable();
-    }
-
-    public function testWithLazyDsnConnection()
-    {
-        $dsn = $this->getPersistentSqliteDsn();
-
-        $storage = new PdoSessionHandler($dsn);
-        $storage->createTable();
-        $storage->open('', 'sid');
-        $data = $storage->read('id');
-        $storage->write('id', 'data');
-        $storage->close();
-        $this->assertSame('', $data, 'New session returns empty string data');
-
-        $storage->open('', 'sid');
-        $data = $storage->read('id');
-        $storage->close();
-        $this->assertSame('data', $data, 'Written value can be read back correctly');
-    }
-
-    public function testWithLazySavePathConnection()
-    {
-        $dsn = $this->getPersistentSqliteDsn();
-
-        // Open is called with what ini_set('session.save_path', $dsn) would mean
-        $storage = new PdoSessionHandler(null);
-        $storage->open($dsn, 'sid');
-        $storage->createTable();
-        $data = $storage->read('id');
-        $storage->write('id', 'data');
-        $storage->close();
-        $this->assertSame('', $data, 'New session returns empty string data');
-
-        $storage->open($dsn, 'sid');
-        $data = $storage->read('id');
-        $storage->close();
-        $this->assertSame('data', $data, 'Written value can be read back correctly');
-    }
-
-    public function testReadWriteReadWithNullByte()
-    {
-        $sessionData = 'da'."\0".'ta';
-
-        $storage = new PdoSessionHandler($this->getMemorySqlitePdo());
-        $storage->open('', 'sid');
-        $readData = $storage->read('id');
-        $storage->write('id', $sessionData);
-        $storage->close();
-        $this->assertSame('', $readData, 'New session returns empty string data');
-
-        $storage->open('', 'sid');
-        $readData = $storage->read('id');
-        $storage->close();
-        $this->assertSame($sessionData, $readData, 'Written value can be read back correctly');
-    }
-
-    public function testReadConvertsStreamToString()
-    {
-        $pdo = new MockPdo('pgsql');
-        $pdo->prepareResult = $this->getMock('PDOStatement');
-
-        $content = 'foobar';
-        $stream = $this->createStream($content);
-
-        $pdo->prepareResult->expects($this->once())->method('fetchAll')
-            ->will($this->returnValue(array(array($stream, 42, time()))));
-
-        $storage = new PdoSessionHandler($pdo);
-        $result = $storage->read('foo');
-
-        $this->assertSame($content, $result);
-    }
-
-    public function testReadLockedConvertsStreamToString()
-    {
-        $pdo = new MockPdo('pgsql');
-        $selectStmt = $this->getMock('PDOStatement');
-        $insertStmt = $this->getMock('PDOStatement');
-
-        $pdo->prepareResult = function ($statement) use ($selectStmt, $insertStmt) {
-            return 0 === strpos($statement, 'INSERT') ? $insertStmt : $selectStmt;
-        };
-
-        $content = 'foobar';
-        $stream = $this->createStream($content);
-        $exception = null;
-
-        $selectStmt->expects($this->atLeast(2))->method('fetchAll')
-            ->will($this->returnCallback(function () use (&$exception, $stream) {
-                return $exception ? array(array($stream, 42, time())) : array();
-            }));
-
-        $insertStmt->expects($this->once())->method('execute')
-            ->will($this->returnCallback(function () use (&$exception) {
-                throw $exception = new \PDOException('', '23');
-            }));
-
-        $storage = new PdoSessionHandler($pdo);
-        $result = $storage->read('foo');
-
-        $this->assertSame($content, $result);
-    }
-
-    public function testReadingRequiresExactlySameId()
-    {
-        $storage = new PdoSessionHandler($this->getMemorySqlitePdo());
-        $storage->open('', 'sid');
-        $storage->write('id', 'data');
-        $storage->write('test', 'data');
-        $storage->write('space ', 'data');
-        $storage->close();
-
-        $storage->open('', 'sid');
-        $readDataCaseSensitive = $storage->read('ID');
-        $readDataNoCharFolding = $storage->read('tést');
-        $readDataKeepSpace = $storage->read('space ');
-        $readDataExtraSpace = $storage->read('space  ');
-        $storage->close();
-
-        $this->assertSame('', $readDataCaseSensitive, 'Retrieval by ID should be case-sensitive (collation setting)');
-        $this->assertSame('', $readDataNoCharFolding, 'Retrieval by ID should not do character folding (collation setting)');
-        $this->assertSame('data', $readDataKeepSpace, 'Retrieval by ID requires spaces as-is');
-        $this->assertSame('', $readDataExtraSpace, 'Retrieval by ID requires spaces as-is');
-    }
-
-    /**
-     * Simulates session_regenerate_id(true) which will require an INSERT or UPDATE (replace).
-     */
-    public function testWriteDifferentSessionIdThanRead()
-    {
-        $storage = new PdoSessionHandler($this->getMemorySqlitePdo());
-        $storage->open('', 'sid');
-        $storage->read('id');
-        $storage->destroy('id');
-        $storage->write('new_id', 'data_of_new_session_id');
-        $storage->close();
-
-        $storage->open('', 'sid');
-        $data = $storage->read('new_id');
-        $storage->close();
-
-        $this->assertSame('data_of_new_session_id', $data, 'Data of regenerated session id is available');
-    }
-
-    public function testWrongUsageStillWorks()
-    {
-        // wrong method sequence that should no happen, but still works
-        $storage = new PdoSessionHandler($this->getMemorySqlitePdo());
-        $storage->write('id', 'data');
-        $storage->write('other_id', 'other_data');
-        $storage->destroy('inexistent');
-        $storage->open('', 'sid');
-        $data = $storage->read('id');
-        $otherData = $storage->read('other_id');
-        $storage->close();
-
-        $this->assertSame('data', $data);
-        $this->assertSame('other_data', $otherData);
-    }
-
-    public function testSessionDestroy()
-    {
-        $pdo = $this->getMemorySqlitePdo();
-        $storage = new PdoSessionHandler($pdo);
-
-        $storage->open('', 'sid');
-        $storage->read('id');
-        $storage->write('id', 'data');
-        $storage->close();
-        $this->assertEquals(1, $pdo->query('SELECT COUNT(*) FROM sessions')->fetchColumn());
-
-        $storage->open('', 'sid');
-        $storage->read('id');
-        $storage->destroy('id');
-        $storage->close();
-        $this->assertEquals(0, $pdo->query('SELECT COUNT(*) FROM sessions')->fetchColumn());
-
-        $storage->open('', 'sid');
-        $data = $storage->read('id');
-        $storage->close();
-        $this->assertSame('', $data, 'Destroyed session returns empty string');
-    }
-
-    public function testSessionGC()
-    {
-        $previousLifeTime = ini_set('session.gc_maxlifetime', 1000);
-        $pdo = $this->getMemorySqlitePdo();
-        $storage = new PdoSessionHandler($pdo);
-
-        $storage->open('', 'sid');
-        $storage->read('id');
-        $storage->write('id', 'data');
-        $storage->close();
-
-        $storage->open('', 'sid');
-        $storage->read('gc_id');
-        ini_set('session.gc_maxlifetime', -1); // test that you can set lifetime of a session after it has been read
-        $storage->write('gc_id', 'data');
-        $storage->close();
-        $this->assertEquals(2, $pdo->query('SELECT COUNT(*) FROM sessions')->fetchColumn(), 'No session pruned because gc not called');
-
-        $storage->open('', 'sid');
-        $data = $storage->read('gc_id');
-        $storage->gc(-1);
-        $storage->close();
-
-        ini_set('session.gc_maxlifetime', $previousLifeTime);
-
-        $this->assertSame('', $data, 'Session already considered garbage, so not returning data even if it is not pruned yet');
-        $this->assertEquals(1, $pdo->query('SELECT COUNT(*) FROM sessions')->fetchColumn(), 'Expired session is pruned');
-    }
-
-    public function testGetConnection()
-    {
-        $storage = new PdoSessionHandler($this->getMemorySqlitePdo());
-
-        $method = new \ReflectionMethod($storage, 'getConnection');
-        $method->setAccessible(true);
-
-        $this->assertInstanceOf('\PDO', $method->invoke($storage));
-    }
-
-    public function testGetConnectionConnectsIfNeeded()
-    {
-        $storage = new PdoSessionHandler('sqlite::memory:');
-
-        $method = new \ReflectionMethod($storage, 'getConnection');
-        $method->setAccessible(true);
-
-        $this->assertInstanceOf('\PDO', $method->invoke($storage));
-    }
-
-    private function createStream($content)
-    {
-        $stream = tmpfile();
-        fwrite($stream, $content);
-        fseek($stream, 0);
-
-        return $stream;
-    }
-}
-
-class MockPdo extends \PDO
-{
-    public $prepareResult;
-    private $driverName;
-    private $errorMode;
-
-    public function __construct($driverName = null, $errorMode = null)
-    {
-        $this->driverName = $driverName;
-        $this->errorMode = null !== $errorMode ?: \PDO::ERRMODE_EXCEPTION;
-    }
-
-    public function getAttribute($attribute)
-    {
-        if (\PDO::ATTR_ERRMODE === $attribute) {
-            return $this->errorMode;
-        }
-
-        if (\PDO::ATTR_DRIVER_NAME === $attribute) {
-            return $this->driverName;
-        }
-
-        return parent::getAttribute($attribute);
-    }
-
-    public function prepare($statement, $driverOptions = array())
-    {
-        return is_callable($this->prepareResult)
-            ? call_user_func($this->prepareResult, $statement, $driverOptions)
-            : $this->prepareResult;
-    }
-
-    public function beginTransaction()
-    {
-    }
-}
diff --git a/vendor/symfony/http-foundation/Tests/Session/Storage/Handler/WriteCheckSessionHandlerTest.php b/vendor/symfony/http-foundation/Tests/Session/Storage/Handler/WriteCheckSessionHandlerTest.php
deleted file mode 100644
index 069c887..0000000
--- a/vendor/symfony/http-foundation/Tests/Session/Storage/Handler/WriteCheckSessionHandlerTest.php
+++ /dev/null
@@ -1,94 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpFoundation\Tests\Session\Storage\Handler;
-
-use Symfony\Component\HttpFoundation\Session\Storage\Handler\WriteCheckSessionHandler;
-
-/**
- * @author Adrien Brault <adrien.brault@gmail.com>
- */
-class WriteCheckSessionHandlerTest extends \PHPUnit_Framework_TestCase
-{
-    public function test()
-    {
-        $wrappedSessionHandlerMock = $this->getMock('SessionHandlerInterface');
-        $writeCheckSessionHandler = new WriteCheckSessionHandler($wrappedSessionHandlerMock);
-
-        $wrappedSessionHandlerMock
-            ->expects($this->once())
-            ->method('close')
-            ->with()
-            ->will($this->returnValue(true))
-        ;
-
-        $this->assertTrue($writeCheckSessionHandler->close());
-    }
-
-    public function testWrite()
-    {
-        $wrappedSessionHandlerMock = $this->getMock('SessionHandlerInterface');
-        $writeCheckSessionHandler = new WriteCheckSessionHandler($wrappedSessionHandlerMock);
-
-        $wrappedSessionHandlerMock
-            ->expects($this->once())
-            ->method('write')
-            ->with('foo', 'bar')
-            ->will($this->returnValue(true))
-        ;
-
-        $this->assertTrue($writeCheckSessionHandler->write('foo', 'bar'));
-    }
-
-    public function testSkippedWrite()
-    {
-        $wrappedSessionHandlerMock = $this->getMock('SessionHandlerInterface');
-        $writeCheckSessionHandler = new WriteCheckSessionHandler($wrappedSessionHandlerMock);
-
-        $wrappedSessionHandlerMock
-            ->expects($this->once())
-            ->method('read')
-            ->with('foo')
-            ->will($this->returnValue('bar'))
-        ;
-
-        $wrappedSessionHandlerMock
-            ->expects($this->never())
-            ->method('write')
-        ;
-
-        $this->assertEquals('bar', $writeCheckSessionHandler->read('foo'));
-        $this->assertTrue($writeCheckSessionHandler->write('foo', 'bar'));
-    }
-
-    public function testNonSkippedWrite()
-    {
-        $wrappedSessionHandlerMock = $this->getMock('SessionHandlerInterface');
-        $writeCheckSessionHandler = new WriteCheckSessionHandler($wrappedSessionHandlerMock);
-
-        $wrappedSessionHandlerMock
-            ->expects($this->once())
-            ->method('read')
-            ->with('foo')
-            ->will($this->returnValue('bar'))
-        ;
-
-        $wrappedSessionHandlerMock
-            ->expects($this->once())
-            ->method('write')
-            ->with('foo', 'baZZZ')
-            ->will($this->returnValue(true))
-        ;
-
-        $this->assertEquals('bar', $writeCheckSessionHandler->read('foo'));
-        $this->assertTrue($writeCheckSessionHandler->write('foo', 'baZZZ'));
-    }
-}
diff --git a/vendor/symfony/http-foundation/Tests/Session/Storage/MetadataBagTest.php b/vendor/symfony/http-foundation/Tests/Session/Storage/MetadataBagTest.php
deleted file mode 100644
index fb632a8..0000000
--- a/vendor/symfony/http-foundation/Tests/Session/Storage/MetadataBagTest.php
+++ /dev/null
@@ -1,134 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpFoundation\Tests\Session\Storage;
-
-use Symfony\Component\HttpFoundation\Session\Storage\MetadataBag;
-
-/**
- * Test class for MetadataBag.
- */
-class MetadataBagTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @var MetadataBag
-     */
-    protected $bag;
-
-    /**
-     * @var array
-     */
-    protected $array = array();
-
-    protected function setUp()
-    {
-        $this->bag = new MetadataBag();
-        $this->array = array(MetadataBag::CREATED => 1234567, MetadataBag::UPDATED => 12345678, MetadataBag::LIFETIME => 0);
-        $this->bag->initialize($this->array);
-    }
-
-    protected function tearDown()
-    {
-        $this->array = array();
-        $this->bag = null;
-    }
-
-    public function testInitialize()
-    {
-        $sessionMetadata = array();
-
-        $bag1 = new MetadataBag();
-        $bag1->initialize($sessionMetadata);
-        $this->assertGreaterThanOrEqual(time(), $bag1->getCreated());
-        $this->assertEquals($bag1->getCreated(), $bag1->getLastUsed());
-
-        sleep(1);
-        $bag2 = new MetadataBag();
-        $bag2->initialize($sessionMetadata);
-        $this->assertEquals($bag1->getCreated(), $bag2->getCreated());
-        $this->assertEquals($bag1->getLastUsed(), $bag2->getLastUsed());
-        $this->assertEquals($bag2->getCreated(), $bag2->getLastUsed());
-
-        sleep(1);
-        $bag3 = new MetadataBag();
-        $bag3->initialize($sessionMetadata);
-        $this->assertEquals($bag1->getCreated(), $bag3->getCreated());
-        $this->assertGreaterThan($bag2->getLastUsed(), $bag3->getLastUsed());
-        $this->assertNotEquals($bag3->getCreated(), $bag3->getLastUsed());
-    }
-
-    public function testGetSetName()
-    {
-        $this->assertEquals('__metadata', $this->bag->getName());
-        $this->bag->setName('foo');
-        $this->assertEquals('foo', $this->bag->getName());
-    }
-
-    public function testGetStorageKey()
-    {
-        $this->assertEquals('_sf2_meta', $this->bag->getStorageKey());
-    }
-
-    public function testGetLifetime()
-    {
-        $bag = new MetadataBag();
-        $array = array(MetadataBag::CREATED => 1234567, MetadataBag::UPDATED => 12345678, MetadataBag::LIFETIME => 1000);
-        $bag->initialize($array);
-        $this->assertEquals(1000, $bag->getLifetime());
-    }
-
-    public function testGetCreated()
-    {
-        $this->assertEquals(1234567, $this->bag->getCreated());
-    }
-
-    public function testGetLastUsed()
-    {
-        $this->assertLessThanOrEqual(time(), $this->bag->getLastUsed());
-    }
-
-    public function testClear()
-    {
-        $this->bag->clear();
-    }
-
-    public function testSkipLastUsedUpdate()
-    {
-        $bag = new MetadataBag('', 30);
-        $timeStamp = time();
-
-        $created = $timeStamp - 15;
-        $sessionMetadata = array(
-            MetadataBag::CREATED => $created,
-            MetadataBag::UPDATED => $created,
-            MetadataBag::LIFETIME => 1000,
-        );
-        $bag->initialize($sessionMetadata);
-
-        $this->assertEquals($created, $sessionMetadata[MetadataBag::UPDATED]);
-    }
-
-    public function testDoesNotSkipLastUsedUpdate()
-    {
-        $bag = new MetadataBag('', 30);
-        $timeStamp = time();
-
-        $created = $timeStamp - 45;
-        $sessionMetadata = array(
-            MetadataBag::CREATED => $created,
-            MetadataBag::UPDATED => $created,
-            MetadataBag::LIFETIME => 1000,
-        );
-        $bag->initialize($sessionMetadata);
-
-        $this->assertEquals($timeStamp, $sessionMetadata[MetadataBag::UPDATED]);
-    }
-}
diff --git a/vendor/symfony/http-foundation/Tests/Session/Storage/MockArraySessionStorageTest.php b/vendor/symfony/http-foundation/Tests/Session/Storage/MockArraySessionStorageTest.php
deleted file mode 100644
index c56ea4a..0000000
--- a/vendor/symfony/http-foundation/Tests/Session/Storage/MockArraySessionStorageTest.php
+++ /dev/null
@@ -1,106 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpFoundation\Tests\Session\Storage;
-
-use Symfony\Component\HttpFoundation\Session\Storage\MockArraySessionStorage;
-use Symfony\Component\HttpFoundation\Session\Attribute\AttributeBag;
-use Symfony\Component\HttpFoundation\Session\Flash\FlashBag;
-
-/**
- * Test class for MockArraySessionStorage.
- *
- * @author Drak <drak@zikula.org>
- */
-class MockArraySessionStorageTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @var MockArraySessionStorage
-     */
-    private $storage;
-
-    /**
-     * @var AttributeBag
-     */
-    private $attributes;
-
-    /**
-     * @var FlashBag
-     */
-    private $flashes;
-
-    private $data;
-
-    protected function setUp()
-    {
-        $this->attributes = new AttributeBag();
-        $this->flashes = new FlashBag();
-
-        $this->data = array(
-            $this->attributes->getStorageKey() => array('foo' => 'bar'),
-            $this->flashes->getStorageKey() => array('notice' => 'hello'),
-            );
-
-        $this->storage = new MockArraySessionStorage();
-        $this->storage->registerBag($this->flashes);
-        $this->storage->registerBag($this->attributes);
-        $this->storage->setSessionData($this->data);
-    }
-
-    protected function tearDown()
-    {
-        $this->data = null;
-        $this->flashes = null;
-        $this->attributes = null;
-        $this->storage = null;
-    }
-
-    public function testStart()
-    {
-        $this->assertEquals('', $this->storage->getId());
-        $this->storage->start();
-        $id = $this->storage->getId();
-        $this->assertNotEquals('', $id);
-        $this->storage->start();
-        $this->assertEquals($id, $this->storage->getId());
-    }
-
-    public function testRegenerate()
-    {
-        $this->storage->start();
-        $id = $this->storage->getId();
-        $this->storage->regenerate();
-        $this->assertNotEquals($id, $this->storage->getId());
-        $this->assertEquals(array('foo' => 'bar'), $this->storage->getBag('attributes')->all());
-        $this->assertEquals(array('notice' => 'hello'), $this->storage->getBag('flashes')->peekAll());
-
-        $id = $this->storage->getId();
-        $this->storage->regenerate(true);
-        $this->assertNotEquals($id, $this->storage->getId());
-        $this->assertEquals(array('foo' => 'bar'), $this->storage->getBag('attributes')->all());
-        $this->assertEquals(array('notice' => 'hello'), $this->storage->getBag('flashes')->peekAll());
-    }
-
-    public function testGetId()
-    {
-        $this->assertEquals('', $this->storage->getId());
-        $this->storage->start();
-        $this->assertNotEquals('', $this->storage->getId());
-    }
-
-    /**
-     * @expectedException \RuntimeException
-     */
-    public function testUnstartedSave()
-    {
-        $this->storage->save();
-    }
-}
diff --git a/vendor/symfony/http-foundation/Tests/Session/Storage/MockFileSessionStorageTest.php b/vendor/symfony/http-foundation/Tests/Session/Storage/MockFileSessionStorageTest.php
deleted file mode 100644
index 54321ea..0000000
--- a/vendor/symfony/http-foundation/Tests/Session/Storage/MockFileSessionStorageTest.php
+++ /dev/null
@@ -1,126 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpFoundation\Tests\Session\Storage;
-
-use Symfony\Component\HttpFoundation\Session\Storage\MockFileSessionStorage;
-use Symfony\Component\HttpFoundation\Session\Flash\FlashBag;
-use Symfony\Component\HttpFoundation\Session\Attribute\AttributeBag;
-
-/**
- * Test class for MockFileSessionStorage.
- *
- * @author Drak <drak@zikula.org>
- */
-class MockFileSessionStorageTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @var string
-     */
-    private $sessionDir;
-
-    /**
-     * @var MockFileSessionStorage
-     */
-    protected $storage;
-
-    protected function setUp()
-    {
-        $this->sessionDir = sys_get_temp_dir().'/sf2test';
-        $this->storage = $this->getStorage();
-    }
-
-    protected function tearDown()
-    {
-        $this->sessionDir = null;
-        $this->storage = null;
-        array_map('unlink', glob($this->sessionDir.'/*.session'));
-        if (is_dir($this->sessionDir)) {
-            rmdir($this->sessionDir);
-        }
-    }
-
-    public function testStart()
-    {
-        $this->assertEquals('', $this->storage->getId());
-        $this->assertTrue($this->storage->start());
-        $id = $this->storage->getId();
-        $this->assertNotEquals('', $this->storage->getId());
-        $this->assertTrue($this->storage->start());
-        $this->assertEquals($id, $this->storage->getId());
-    }
-
-    public function testRegenerate()
-    {
-        $this->storage->start();
-        $this->storage->getBag('attributes')->set('regenerate', 1234);
-        $this->storage->regenerate();
-        $this->assertEquals(1234, $this->storage->getBag('attributes')->get('regenerate'));
-        $this->storage->regenerate(true);
-        $this->assertEquals(1234, $this->storage->getBag('attributes')->get('regenerate'));
-    }
-
-    public function testGetId()
-    {
-        $this->assertEquals('', $this->storage->getId());
-        $this->storage->start();
-        $this->assertNotEquals('', $this->storage->getId());
-    }
-
-    public function testSave()
-    {
-        $this->storage->start();
-        $id = $this->storage->getId();
-        $this->assertNotEquals('108', $this->storage->getBag('attributes')->get('new'));
-        $this->assertFalse($this->storage->getBag('flashes')->has('newkey'));
-        $this->storage->getBag('attributes')->set('new', '108');
-        $this->storage->getBag('flashes')->set('newkey', 'test');
-        $this->storage->save();
-
-        $storage = $this->getStorage();
-        $storage->setId($id);
-        $storage->start();
-        $this->assertEquals('108', $storage->getBag('attributes')->get('new'));
-        $this->assertTrue($storage->getBag('flashes')->has('newkey'));
-        $this->assertEquals(array('test'), $storage->getBag('flashes')->peek('newkey'));
-    }
-
-    public function testMultipleInstances()
-    {
-        $storage1 = $this->getStorage();
-        $storage1->start();
-        $storage1->getBag('attributes')->set('foo', 'bar');
-        $storage1->save();
-
-        $storage2 = $this->getStorage();
-        $storage2->setId($storage1->getId());
-        $storage2->start();
-        $this->assertEquals('bar', $storage2->getBag('attributes')->get('foo'), 'values persist between instances');
-    }
-
-    /**
-     * @expectedException \RuntimeException
-     */
-    public function testSaveWithoutStart()
-    {
-        $storage1 = $this->getStorage();
-        $storage1->save();
-    }
-
-    private function getStorage()
-    {
-        $storage = new MockFileSessionStorage($this->sessionDir);
-        $storage->registerBag(new FlashBag());
-        $storage->registerBag(new AttributeBag());
-
-        return $storage;
-    }
-}
diff --git a/vendor/symfony/http-foundation/Tests/Session/Storage/NativeSessionStorageTest.php b/vendor/symfony/http-foundation/Tests/Session/Storage/NativeSessionStorageTest.php
deleted file mode 100644
index c8743ab..0000000
--- a/vendor/symfony/http-foundation/Tests/Session/Storage/NativeSessionStorageTest.php
+++ /dev/null
@@ -1,258 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpFoundation\Tests\Session\Storage;
-
-use Symfony\Component\HttpFoundation\Session\Attribute\AttributeBag;
-use Symfony\Component\HttpFoundation\Session\Flash\FlashBag;
-use Symfony\Component\HttpFoundation\Session\Storage\Handler\NativeSessionHandler;
-use Symfony\Component\HttpFoundation\Session\Storage\Handler\NullSessionHandler;
-use Symfony\Component\HttpFoundation\Session\Storage\NativeSessionStorage;
-use Symfony\Component\HttpFoundation\Session\Storage\Proxy\NativeProxy;
-use Symfony\Component\HttpFoundation\Session\Storage\Proxy\SessionHandlerProxy;
-
-/**
- * Test class for NativeSessionStorage.
- *
- * @author Drak <drak@zikula.org>
- *
- * These tests require separate processes.
- *
- * @runTestsInSeparateProcesses
- * @preserveGlobalState disabled
- */
-class NativeSessionStorageTest extends \PHPUnit_Framework_TestCase
-{
-    private $savePath;
-
-    protected function setUp()
-    {
-        $this->iniSet('session.save_handler', 'files');
-        $this->iniSet('session.save_path', $this->savePath = sys_get_temp_dir().'/sf2test');
-        if (!is_dir($this->savePath)) {
-            mkdir($this->savePath);
-        }
-    }
-
-    protected function tearDown()
-    {
-        session_write_close();
-        array_map('unlink', glob($this->savePath.'/*'));
-        if (is_dir($this->savePath)) {
-            rmdir($this->savePath);
-        }
-
-        $this->savePath = null;
-    }
-
-    /**
-     * @param array $options
-     *
-     * @return NativeSessionStorage
-     */
-    protected function getStorage(array $options = array())
-    {
-        $storage = new NativeSessionStorage($options);
-        $storage->registerBag(new AttributeBag());
-
-        return $storage;
-    }
-
-    public function testBag()
-    {
-        $storage = $this->getStorage();
-        $bag = new FlashBag();
-        $storage->registerBag($bag);
-        $this->assertSame($bag, $storage->getBag($bag->getName()));
-    }
-
-    /**
-     * @expectedException \InvalidArgumentException
-     */
-    public function testRegisterBagException()
-    {
-        $storage = $this->getStorage();
-        $storage->getBag('non_existing');
-    }
-
-    public function testGetId()
-    {
-        $storage = $this->getStorage();
-        $this->assertSame('', $storage->getId(), 'Empty ID before starting session');
-
-        $storage->start();
-        $id = $storage->getId();
-        $this->assertInternalType('string', $id);
-        $this->assertNotSame('', $id);
-
-        $storage->save();
-        $this->assertSame($id, $storage->getId(), 'ID stays after saving session');
-    }
-
-    public function testRegenerate()
-    {
-        $storage = $this->getStorage();
-        $storage->start();
-        $id = $storage->getId();
-        $storage->getBag('attributes')->set('lucky', 7);
-        $storage->regenerate();
-        $this->assertNotEquals($id, $storage->getId());
-        $this->assertEquals(7, $storage->getBag('attributes')->get('lucky'));
-    }
-
-    public function testRegenerateDestroy()
-    {
-        $storage = $this->getStorage();
-        $storage->start();
-        $id = $storage->getId();
-        $storage->getBag('attributes')->set('legs', 11);
-        $storage->regenerate(true);
-        $this->assertNotEquals($id, $storage->getId());
-        $this->assertEquals(11, $storage->getBag('attributes')->get('legs'));
-    }
-
-    public function testSessionGlobalIsUpToDateAfterIdRegeneration()
-    {
-        $storage = $this->getStorage();
-        $storage->start();
-        $storage->getBag('attributes')->set('lucky', 7);
-        $storage->regenerate();
-        $storage->getBag('attributes')->set('lucky', 42);
-
-        $this->assertEquals(42, $_SESSION['_sf2_attributes']['lucky']);
-    }
-
-    public function testDefaultSessionCacheLimiter()
-    {
-        $this->iniSet('session.cache_limiter', 'nocache');
-
-        $storage = new NativeSessionStorage();
-        $this->assertEquals('', ini_get('session.cache_limiter'));
-    }
-
-    public function testExplicitSessionCacheLimiter()
-    {
-        $this->iniSet('session.cache_limiter', 'nocache');
-
-        $storage = new NativeSessionStorage(array('cache_limiter' => 'public'));
-        $this->assertEquals('public', ini_get('session.cache_limiter'));
-    }
-
-    public function testCookieOptions()
-    {
-        $options = array(
-            'cookie_lifetime' => 123456,
-            'cookie_path' => '/my/cookie/path',
-            'cookie_domain' => 'symfony.example.com',
-            'cookie_secure' => true,
-            'cookie_httponly' => false,
-        );
-
-        $this->getStorage($options);
-        $temp = session_get_cookie_params();
-        $gco = array();
-
-        foreach ($temp as $key => $value) {
-            $gco['cookie_'.$key] = $value;
-        }
-
-        $this->assertEquals($options, $gco);
-    }
-
-    /**
-     * @expectedException \InvalidArgumentException
-     */
-    public function testSetSaveHandlerException()
-    {
-        $storage = $this->getStorage();
-        $storage->setSaveHandler(new \stdClass());
-    }
-
-    public function testSetSaveHandler53()
-    {
-        if (PHP_VERSION_ID >= 50400) {
-            $this->markTestSkipped('Test skipped, for PHP 5.3 only.');
-        }
-
-        $this->iniSet('session.save_handler', 'files');
-        $storage = $this->getStorage();
-        $storage->setSaveHandler();
-        $this->assertInstanceOf('Symfony\Component\HttpFoundation\Session\Storage\Proxy\NativeProxy', $storage->getSaveHandler());
-        $storage->setSaveHandler(null);
-        $this->assertInstanceOf('Symfony\Component\HttpFoundation\Session\Storage\Proxy\NativeProxy', $storage->getSaveHandler());
-        $storage->setSaveHandler(new NativeSessionHandler());
-        $this->assertInstanceOf('Symfony\Component\HttpFoundation\Session\Storage\Proxy\NativeProxy', $storage->getSaveHandler());
-        $storage->setSaveHandler(new SessionHandlerProxy(new NullSessionHandler()));
-        $this->assertInstanceOf('Symfony\Component\HttpFoundation\Session\Storage\Proxy\SessionHandlerProxy', $storage->getSaveHandler());
-        $storage->setSaveHandler(new NullSessionHandler());
-        $this->assertInstanceOf('Symfony\Component\HttpFoundation\Session\Storage\Proxy\SessionHandlerProxy', $storage->getSaveHandler());
-        $storage->setSaveHandler(new NativeProxy());
-        $this->assertInstanceOf('Symfony\Component\HttpFoundation\Session\Storage\Proxy\NativeProxy', $storage->getSaveHandler());
-    }
-
-    public function testSetSaveHandler54()
-    {
-        if (PHP_VERSION_ID < 50400) {
-            $this->markTestSkipped('Test skipped, for PHP 5.4 only.');
-        }
-
-        $this->iniSet('session.save_handler', 'files');
-        $storage = $this->getStorage();
-        $storage->setSaveHandler();
-        $this->assertInstanceOf('Symfony\Component\HttpFoundation\Session\Storage\Proxy\SessionHandlerProxy', $storage->getSaveHandler());
-        $storage->setSaveHandler(null);
-        $this->assertInstanceOf('Symfony\Component\HttpFoundation\Session\Storage\Proxy\SessionHandlerProxy', $storage->getSaveHandler());
-        $storage->setSaveHandler(new SessionHandlerProxy(new NativeSessionHandler()));
-        $this->assertInstanceOf('Symfony\Component\HttpFoundation\Session\Storage\Proxy\SessionHandlerProxy', $storage->getSaveHandler());
-        $storage->setSaveHandler(new NativeSessionHandler());
-        $this->assertInstanceOf('Symfony\Component\HttpFoundation\Session\Storage\Proxy\SessionHandlerProxy', $storage->getSaveHandler());
-        $storage->setSaveHandler(new SessionHandlerProxy(new NullSessionHandler()));
-        $this->assertInstanceOf('Symfony\Component\HttpFoundation\Session\Storage\Proxy\SessionHandlerProxy', $storage->getSaveHandler());
-        $storage->setSaveHandler(new NullSessionHandler());
-        $this->assertInstanceOf('Symfony\Component\HttpFoundation\Session\Storage\Proxy\SessionHandlerProxy', $storage->getSaveHandler());
-    }
-
-    /**
-     * @expectedException \RuntimeException
-     */
-    public function testStartedOutside()
-    {
-        $storage = $this->getStorage();
-
-        $this->assertFalse($storage->getSaveHandler()->isActive());
-        $this->assertFalse($storage->isStarted());
-
-        session_start();
-        $this->assertTrue(isset($_SESSION));
-        if (PHP_VERSION_ID >= 50400) {
-            // this only works in PHP >= 5.4 where session_status is available
-            $this->assertTrue($storage->getSaveHandler()->isActive());
-        }
-        // PHP session might have started, but the storage driver has not, so false is correct here
-        $this->assertFalse($storage->isStarted());
-
-        $key = $storage->getMetadataBag()->getStorageKey();
-        $this->assertFalse(isset($_SESSION[$key]));
-        $storage->start();
-    }
-
-    public function testRestart()
-    {
-        $storage = $this->getStorage();
-        $storage->start();
-        $id = $storage->getId();
-        $storage->getBag('attributes')->set('lucky', 7);
-        $storage->save();
-        $storage->start();
-        $this->assertSame($id, $storage->getId(), 'Same session ID after restarting');
-        $this->assertSame(7, $storage->getBag('attributes')->get('lucky'), 'Data still available');
-    }
-}
diff --git a/vendor/symfony/http-foundation/Tests/Session/Storage/PhpBridgeSessionStorageTest.php b/vendor/symfony/http-foundation/Tests/Session/Storage/PhpBridgeSessionStorageTest.php
deleted file mode 100644
index 07d560f..0000000
--- a/vendor/symfony/http-foundation/Tests/Session/Storage/PhpBridgeSessionStorageTest.php
+++ /dev/null
@@ -1,123 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpFoundation\Tests\Session\Storage;
-
-use Symfony\Component\HttpFoundation\Session\Storage\PhpBridgeSessionStorage;
-use Symfony\Component\HttpFoundation\Session\Attribute\AttributeBag;
-
-/**
- * Test class for PhpSessionStorage.
- *
- * @author Drak <drak@zikula.org>
- *
- * These tests require separate processes.
- *
- * @runTestsInSeparateProcesses
- * @preserveGlobalState disabled
- */
-class PhpBridgeSessionStorageTest extends \PHPUnit_Framework_TestCase
-{
-    private $savePath;
-
-    protected function setUp()
-    {
-        $this->iniSet('session.save_handler', 'files');
-        $this->iniSet('session.save_path', $this->savePath = sys_get_temp_dir().'/sf2test');
-        if (!is_dir($this->savePath)) {
-            mkdir($this->savePath);
-        }
-    }
-
-    protected function tearDown()
-    {
-        session_write_close();
-        array_map('unlink', glob($this->savePath.'/*'));
-        if (is_dir($this->savePath)) {
-            rmdir($this->savePath);
-        }
-
-        $this->savePath = null;
-    }
-
-    /**
-     * @return PhpBridgeSessionStorage
-     */
-    protected function getStorage()
-    {
-        $storage = new PhpBridgeSessionStorage();
-        $storage->registerBag(new AttributeBag());
-
-        return $storage;
-    }
-
-    public function testPhpSession53()
-    {
-        if (PHP_VERSION_ID >= 50400) {
-            $this->markTestSkipped('Test skipped, for PHP 5.3 only.');
-        }
-
-        $storage = $this->getStorage();
-
-        $this->assertFalse(isset($_SESSION));
-        $this->assertFalse($storage->getSaveHandler()->isActive());
-
-        session_start();
-        $this->assertTrue(isset($_SESSION));
-        // in PHP 5.3 we cannot reliably tell if a session has started
-        $this->assertFalse($storage->getSaveHandler()->isActive());
-        // PHP session might have started, but the storage driver has not, so false is correct here
-        $this->assertFalse($storage->isStarted());
-
-        $key = $storage->getMetadataBag()->getStorageKey();
-        $this->assertFalse(isset($_SESSION[$key]));
-        $storage->start();
-        $this->assertTrue(isset($_SESSION[$key]));
-    }
-
-    public function testPhpSession54()
-    {
-        if (PHP_VERSION_ID < 50400) {
-            $this->markTestSkipped('Test skipped, for PHP 5.4 only.');
-        }
-
-        $storage = $this->getStorage();
-
-        $this->assertFalse($storage->getSaveHandler()->isActive());
-        $this->assertFalse($storage->isStarted());
-
-        session_start();
-        $this->assertTrue(isset($_SESSION));
-        // in PHP 5.4 we can reliably detect a session started
-        $this->assertTrue($storage->getSaveHandler()->isActive());
-        // PHP session might have started, but the storage driver has not, so false is correct here
-        $this->assertFalse($storage->isStarted());
-
-        $key = $storage->getMetadataBag()->getStorageKey();
-        $this->assertFalse(isset($_SESSION[$key]));
-        $storage->start();
-        $this->assertTrue(isset($_SESSION[$key]));
-    }
-
-    public function testClear()
-    {
-        $storage = $this->getStorage();
-        session_start();
-        $_SESSION['drak'] = 'loves symfony';
-        $storage->getBag('attributes')->set('symfony', 'greatness');
-        $key = $storage->getBag('attributes')->getStorageKey();
-        $this->assertEquals($_SESSION[$key], array('symfony' => 'greatness'));
-        $this->assertEquals($_SESSION['drak'], 'loves symfony');
-        $storage->clear();
-        $this->assertEquals($_SESSION[$key], array());
-        $this->assertEquals($_SESSION['drak'], 'loves symfony');
-    }
-}
diff --git a/vendor/symfony/http-foundation/Tests/Session/Storage/Proxy/AbstractProxyTest.php b/vendor/symfony/http-foundation/Tests/Session/Storage/Proxy/AbstractProxyTest.php
deleted file mode 100644
index ee476a8..0000000
--- a/vendor/symfony/http-foundation/Tests/Session/Storage/Proxy/AbstractProxyTest.php
+++ /dev/null
@@ -1,217 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpFoundation\Tests\Session\Storage\Proxy;
-
-use Symfony\Component\HttpFoundation\Session\Storage\Proxy\AbstractProxy;
-
-// Note until PHPUnit_Mock_Objects 1.2 is released you cannot mock abstracts due to
-// https://github.com/sebastianbergmann/phpunit-mock-objects/issues/73
-class ConcreteProxy extends AbstractProxy
-{
-}
-
-class ConcreteSessionHandlerInterfaceProxy extends AbstractProxy implements \SessionHandlerInterface
-{
-    public function open($savePath, $sessionName)
-    {
-    }
-
-    public function close()
-    {
-    }
-
-    public function read($id)
-    {
-    }
-
-    public function write($id, $data)
-    {
-    }
-
-    public function destroy($id)
-    {
-    }
-
-    public function gc($maxlifetime)
-    {
-    }
-}
-
-/**
- * Test class for AbstractProxy.
- *
- * @author Drak <drak@zikula.org>
- */
-class AbstractProxyTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @var AbstractProxy
-     */
-    protected $proxy;
-
-    protected function setUp()
-    {
-        $this->proxy = new ConcreteProxy();
-    }
-
-    protected function tearDown()
-    {
-        $this->proxy = null;
-    }
-
-    public function testGetSaveHandlerName()
-    {
-        $this->assertNull($this->proxy->getSaveHandlerName());
-    }
-
-    public function testIsSessionHandlerInterface()
-    {
-        $this->assertFalse($this->proxy->isSessionHandlerInterface());
-        $sh = new ConcreteSessionHandlerInterfaceProxy();
-        $this->assertTrue($sh->isSessionHandlerInterface());
-    }
-
-    public function testIsWrapper()
-    {
-        $this->assertFalse($this->proxy->isWrapper());
-    }
-
-    public function testIsActivePhp53()
-    {
-        if (PHP_VERSION_ID >= 50400) {
-            $this->markTestSkipped('Test skipped, for PHP 5.3 only.');
-        }
-
-        $this->assertFalse($this->proxy->isActive());
-    }
-
-    /**
-     * @runInSeparateProcess
-     * @preserveGlobalState disabled
-     */
-    public function testIsActivePhp54()
-    {
-        if (PHP_VERSION_ID < 50400) {
-            $this->markTestSkipped('Test skipped, for PHP 5.4 only.');
-        }
-
-        $this->assertFalse($this->proxy->isActive());
-        session_start();
-        $this->assertTrue($this->proxy->isActive());
-    }
-
-    public function testSetActivePhp53()
-    {
-        if (PHP_VERSION_ID >= 50400) {
-            $this->markTestSkipped('Test skipped, for PHP 5.3 only.');
-        }
-
-        $this->proxy->setActive(true);
-        $this->assertTrue($this->proxy->isActive());
-        $this->proxy->setActive(false);
-        $this->assertFalse($this->proxy->isActive());
-    }
-
-    /**
-     * @runInSeparateProcess
-     * @preserveGlobalState disabled
-     * @expectedException \LogicException
-     */
-    public function testSetActivePhp54()
-    {
-        if (PHP_VERSION_ID < 50400) {
-            $this->markTestSkipped('Test skipped, for PHP 5.4 only.');
-        }
-
-        $this->proxy->setActive(true);
-    }
-
-    /**
-     * @runInSeparateProcess
-     * @preserveGlobalState disabled
-     */
-    public function testName()
-    {
-        $this->assertEquals(session_name(), $this->proxy->getName());
-        $this->proxy->setName('foo');
-        $this->assertEquals('foo', $this->proxy->getName());
-        $this->assertEquals(session_name(), $this->proxy->getName());
-    }
-
-    /**
-     * @expectedException \LogicException
-     */
-    public function testNameExceptionPhp53()
-    {
-        if (PHP_VERSION_ID >= 50400) {
-            $this->markTestSkipped('Test skipped, for PHP 5.3 only.');
-        }
-
-        $this->proxy->setActive(true);
-        $this->proxy->setName('foo');
-    }
-
-    /**
-     * @runInSeparateProcess
-     * @preserveGlobalState disabled
-     * @expectedException \LogicException
-     */
-    public function testNameExceptionPhp54()
-    {
-        if (PHP_VERSION_ID < 50400) {
-            $this->markTestSkipped('Test skipped, for PHP 5.4 only.');
-        }
-
-        session_start();
-        $this->proxy->setName('foo');
-    }
-
-    /**
-     * @runInSeparateProcess
-     * @preserveGlobalState disabled
-     */
-    public function testId()
-    {
-        $this->assertEquals(session_id(), $this->proxy->getId());
-        $this->proxy->setId('foo');
-        $this->assertEquals('foo', $this->proxy->getId());
-        $this->assertEquals(session_id(), $this->proxy->getId());
-    }
-
-    /**
-     * @expectedException \LogicException
-     */
-    public function testIdExceptionPhp53()
-    {
-        if (PHP_VERSION_ID >= 50400) {
-            $this->markTestSkipped('Test skipped, for PHP 5.3 only.');
-        }
-
-        $this->proxy->setActive(true);
-        $this->proxy->setId('foo');
-    }
-
-    /**
-     * @runInSeparateProcess
-     * @preserveGlobalState disabled
-     * @expectedException \LogicException
-     */
-    public function testIdExceptionPhp54()
-    {
-        if (PHP_VERSION_ID < 50400) {
-            $this->markTestSkipped('Test skipped, for PHP 5.4 only.');
-        }
-
-        session_start();
-        $this->proxy->setId('foo');
-    }
-}
diff --git a/vendor/symfony/http-foundation/Tests/Session/Storage/Proxy/NativeProxyTest.php b/vendor/symfony/http-foundation/Tests/Session/Storage/Proxy/NativeProxyTest.php
deleted file mode 100644
index e9184ce..0000000
--- a/vendor/symfony/http-foundation/Tests/Session/Storage/Proxy/NativeProxyTest.php
+++ /dev/null
@@ -1,35 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpFoundation\Tests\Session\Storage\Proxy;
-
-use Symfony\Component\HttpFoundation\Session\Storage\Proxy\NativeProxy;
-
-/**
- * Test class for NativeProxy.
- *
- * @author Drak <drak@zikula.org>
- */
-class NativeProxyTest extends \PHPUnit_Framework_TestCase
-{
-    public function testIsWrapper()
-    {
-        $proxy = new NativeProxy();
-        $this->assertFalse($proxy->isWrapper());
-    }
-
-    public function testGetSaveHandlerName()
-    {
-        $name = ini_get('session.save_handler');
-        $proxy = new NativeProxy();
-        $this->assertEquals($name, $proxy->getSaveHandlerName());
-    }
-}
diff --git a/vendor/symfony/http-foundation/Tests/Session/Storage/Proxy/SessionHandlerProxyTest.php b/vendor/symfony/http-foundation/Tests/Session/Storage/Proxy/SessionHandlerProxyTest.php
deleted file mode 100644
index d2775a8..0000000
--- a/vendor/symfony/http-foundation/Tests/Session/Storage/Proxy/SessionHandlerProxyTest.php
+++ /dev/null
@@ -1,127 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpFoundation\Tests\Session\Storage\Proxy;
-
-use Symfony\Component\HttpFoundation\Session\Storage\Proxy\SessionHandlerProxy;
-
-/**
- * Tests for SessionHandlerProxy class.
- *
- * @author Drak <drak@zikula.org>
- *
- * @runTestsInSeparateProcesses
- * @preserveGlobalState disabled
- */
-class SessionHandlerProxyTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @var \PHPUnit_Framework_MockObject_Matcher
-     */
-    private $mock;
-
-    /**
-     * @var SessionHandlerProxy
-     */
-    private $proxy;
-
-    protected function setUp()
-    {
-        $this->mock = $this->getMock('SessionHandlerInterface');
-        $this->proxy = new SessionHandlerProxy($this->mock);
-    }
-
-    protected function tearDown()
-    {
-        $this->mock = null;
-        $this->proxy = null;
-    }
-
-    public function testOpen()
-    {
-        $this->mock->expects($this->once())
-            ->method('open')
-            ->will($this->returnValue(true));
-
-        $this->assertFalse($this->proxy->isActive());
-        $this->proxy->open('name', 'id');
-        if (PHP_VERSION_ID < 50400) {
-            $this->assertTrue($this->proxy->isActive());
-        } else {
-            $this->assertFalse($this->proxy->isActive());
-        }
-    }
-
-    public function testOpenFalse()
-    {
-        $this->mock->expects($this->once())
-            ->method('open')
-            ->will($this->returnValue(false));
-
-        $this->assertFalse($this->proxy->isActive());
-        $this->proxy->open('name', 'id');
-        $this->assertFalse($this->proxy->isActive());
-    }
-
-    public function testClose()
-    {
-        $this->mock->expects($this->once())
-            ->method('close')
-            ->will($this->returnValue(true));
-
-        $this->assertFalse($this->proxy->isActive());
-        $this->proxy->close();
-        $this->assertFalse($this->proxy->isActive());
-    }
-
-    public function testCloseFalse()
-    {
-        $this->mock->expects($this->once())
-            ->method('close')
-            ->will($this->returnValue(false));
-
-        $this->assertFalse($this->proxy->isActive());
-        $this->proxy->close();
-        $this->assertFalse($this->proxy->isActive());
-    }
-
-    public function testRead()
-    {
-        $this->mock->expects($this->once())
-            ->method('read');
-
-        $this->proxy->read('id');
-    }
-
-    public function testWrite()
-    {
-        $this->mock->expects($this->once())
-            ->method('write');
-
-        $this->proxy->write('id', 'data');
-    }
-
-    public function testDestroy()
-    {
-        $this->mock->expects($this->once())
-            ->method('destroy');
-
-        $this->proxy->destroy('id');
-    }
-
-    public function testGc()
-    {
-        $this->mock->expects($this->once())
-            ->method('gc');
-
-        $this->proxy->gc(86400);
-    }
-}
diff --git a/vendor/symfony/http-foundation/Tests/StreamedResponseTest.php b/vendor/symfony/http-foundation/Tests/StreamedResponseTest.php
deleted file mode 100644
index 940f17c..0000000
--- a/vendor/symfony/http-foundation/Tests/StreamedResponseTest.php
+++ /dev/null
@@ -1,121 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpFoundation\Tests;
-
-use Symfony\Component\HttpFoundation\Request;
-use Symfony\Component\HttpFoundation\StreamedResponse;
-
-class StreamedResponseTest extends \PHPUnit_Framework_TestCase
-{
-    public function testConstructor()
-    {
-        $response = new StreamedResponse(function () { echo 'foo'; }, 404, array('Content-Type' => 'text/plain'));
-
-        $this->assertEquals(404, $response->getStatusCode());
-        $this->assertEquals('text/plain', $response->headers->get('Content-Type'));
-    }
-
-    public function testPrepareWith11Protocol()
-    {
-        $response = new StreamedResponse(function () { echo 'foo'; });
-        $request = Request::create('/');
-        $request->server->set('SERVER_PROTOCOL', 'HTTP/1.1');
-
-        $response->prepare($request);
-
-        $this->assertEquals('1.1', $response->getProtocolVersion());
-        $this->assertNotEquals('chunked', $response->headers->get('Transfer-Encoding'), 'Apache assumes responses with a Transfer-Encoding header set to chunked to already be encoded.');
-    }
-
-    public function testPrepareWith10Protocol()
-    {
-        $response = new StreamedResponse(function () { echo 'foo'; });
-        $request = Request::create('/');
-        $request->server->set('SERVER_PROTOCOL', 'HTTP/1.0');
-
-        $response->prepare($request);
-
-        $this->assertEquals('1.0', $response->getProtocolVersion());
-        $this->assertNull($response->headers->get('Transfer-Encoding'));
-    }
-
-    public function testPrepareWithHeadRequest()
-    {
-        $response = new StreamedResponse(function () { echo 'foo'; });
-        $request = Request::create('/', 'HEAD');
-
-        $response->prepare($request);
-    }
-
-    public function testPrepareWithCacheHeaders()
-    {
-        $response = new StreamedResponse(function () { echo 'foo'; }, 200, array('Cache-Control' => 'max-age=600, public'));
-        $request = Request::create('/', 'GET');
-
-        $response->prepare($request);
-        $this->assertEquals('max-age=600, public', $response->headers->get('Cache-Control'));
-    }
-
-    public function testSendContent()
-    {
-        $called = 0;
-
-        $response = new StreamedResponse(function () use (&$called) { ++$called; });
-
-        $response->sendContent();
-        $this->assertEquals(1, $called);
-
-        $response->sendContent();
-        $this->assertEquals(1, $called);
-    }
-
-    /**
-     * @expectedException \LogicException
-     */
-    public function testSendContentWithNonCallable()
-    {
-        $response = new StreamedResponse(null);
-        $response->sendContent();
-    }
-
-    /**
-     * @expectedException \LogicException
-     */
-    public function testSetCallbackNonCallable()
-    {
-        $response = new StreamedResponse(null);
-        $response->setCallback(null);
-    }
-
-    /**
-     * @expectedException \LogicException
-     */
-    public function testSetContent()
-    {
-        $response = new StreamedResponse(function () { echo 'foo'; });
-        $response->setContent('foo');
-    }
-
-    public function testGetContent()
-    {
-        $response = new StreamedResponse(function () { echo 'foo'; });
-        $this->assertFalse($response->getContent());
-    }
-
-    public function testCreate()
-    {
-        $response = StreamedResponse::create(function () {}, 204);
-
-        $this->assertInstanceOf('Symfony\Component\HttpFoundation\StreamedResponse', $response);
-        $this->assertEquals(204, $response->getStatusCode());
-    }
-}
diff --git a/vendor/symfony/http-kernel/Tests/Bundle/BundleTest.php b/vendor/symfony/http-kernel/Tests/Bundle/BundleTest.php
deleted file mode 100644
index c9059a7..0000000
--- a/vendor/symfony/http-kernel/Tests/Bundle/BundleTest.php
+++ /dev/null
@@ -1,44 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien.potencier@symfony-project.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpKernel\Tests\Bundle;
-
-use Symfony\Component\HttpKernel\Tests\Fixtures\ExtensionNotValidBundle\ExtensionNotValidBundle;
-use Symfony\Component\HttpKernel\Tests\Fixtures\ExtensionPresentBundle\ExtensionPresentBundle;
-use Symfony\Component\HttpKernel\Tests\Fixtures\ExtensionAbsentBundle\ExtensionAbsentBundle;
-use Symfony\Component\HttpKernel\Tests\Fixtures\ExtensionPresentBundle\Command\FooCommand;
-
-class BundleTest extends \PHPUnit_Framework_TestCase
-{
-    public function testRegisterCommands()
-    {
-        $cmd = new FooCommand();
-        $app = $this->getMock('Symfony\Component\Console\Application');
-        $app->expects($this->once())->method('add')->with($this->equalTo($cmd));
-
-        $bundle = new ExtensionPresentBundle();
-        $bundle->registerCommands($app);
-
-        $bundle2 = new ExtensionAbsentBundle();
-
-        $this->assertNull($bundle2->registerCommands($app));
-    }
-
-    /**
-     * @expectedException \LogicException
-     * @expectedExceptionMessage must implement Symfony\Component\DependencyInjection\Extension\ExtensionInterface
-     */
-    public function testGetContainerExtensionWithInvalidClass()
-    {
-        $bundle = new ExtensionNotValidBundle();
-        $bundle->getContainerExtension();
-    }
-}
diff --git a/vendor/symfony/http-kernel/Tests/CacheClearer/ChainCacheClearerTest.php b/vendor/symfony/http-kernel/Tests/CacheClearer/ChainCacheClearerTest.php
deleted file mode 100644
index b54d169..0000000
--- a/vendor/symfony/http-kernel/Tests/CacheClearer/ChainCacheClearerTest.php
+++ /dev/null
@@ -1,57 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpKernel\Tests\CacheClearer;
-
-use Symfony\Component\HttpKernel\CacheClearer\ChainCacheClearer;
-
-class ChainCacheClearerTest extends \PHPUnit_Framework_TestCase
-{
-    protected static $cacheDir;
-
-    public static function setUpBeforeClass()
-    {
-        self::$cacheDir = tempnam(sys_get_temp_dir(), 'sf2_cache_clearer_dir');
-    }
-
-    public static function tearDownAfterClass()
-    {
-        @unlink(self::$cacheDir);
-    }
-
-    public function testInjectClearersInConstructor()
-    {
-        $clearer = $this->getMockClearer();
-        $clearer
-            ->expects($this->once())
-            ->method('clear');
-
-        $chainClearer = new ChainCacheClearer(array($clearer));
-        $chainClearer->clear(self::$cacheDir);
-    }
-
-    public function testInjectClearerUsingAdd()
-    {
-        $clearer = $this->getMockClearer();
-        $clearer
-            ->expects($this->once())
-            ->method('clear');
-
-        $chainClearer = new ChainCacheClearer();
-        $chainClearer->add($clearer);
-        $chainClearer->clear(self::$cacheDir);
-    }
-
-    protected function getMockClearer()
-    {
-        return $this->getMock('Symfony\Component\HttpKernel\CacheClearer\CacheClearerInterface');
-    }
-}
diff --git a/vendor/symfony/http-kernel/Tests/CacheWarmer/CacheWarmerAggregateTest.php b/vendor/symfony/http-kernel/Tests/CacheWarmer/CacheWarmerAggregateTest.php
deleted file mode 100644
index e78c8d1..0000000
--- a/vendor/symfony/http-kernel/Tests/CacheWarmer/CacheWarmerAggregateTest.php
+++ /dev/null
@@ -1,100 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpKernel\Tests\CacheWarmer;
-
-use Symfony\Component\HttpKernel\CacheWarmer\CacheWarmerAggregate;
-
-class CacheWarmerAggregateTest extends \PHPUnit_Framework_TestCase
-{
-    protected static $cacheDir;
-
-    public static function setUpBeforeClass()
-    {
-        self::$cacheDir = tempnam(sys_get_temp_dir(), 'sf2_cache_warmer_dir');
-    }
-
-    public static function tearDownAfterClass()
-    {
-        @unlink(self::$cacheDir);
-    }
-
-    public function testInjectWarmersUsingConstructor()
-    {
-        $warmer = $this->getCacheWarmerMock();
-        $warmer
-            ->expects($this->once())
-            ->method('warmUp');
-        $aggregate = new CacheWarmerAggregate(array($warmer));
-        $aggregate->warmUp(self::$cacheDir);
-    }
-
-    public function testInjectWarmersUsingAdd()
-    {
-        $warmer = $this->getCacheWarmerMock();
-        $warmer
-            ->expects($this->once())
-            ->method('warmUp');
-        $aggregate = new CacheWarmerAggregate();
-        $aggregate->add($warmer);
-        $aggregate->warmUp(self::$cacheDir);
-    }
-
-    public function testInjectWarmersUsingSetWarmers()
-    {
-        $warmer = $this->getCacheWarmerMock();
-        $warmer
-            ->expects($this->once())
-            ->method('warmUp');
-        $aggregate = new CacheWarmerAggregate();
-        $aggregate->setWarmers(array($warmer));
-        $aggregate->warmUp(self::$cacheDir);
-    }
-
-    public function testWarmupDoesCallWarmupOnOptionalWarmersWhenEnableOptionalWarmersIsEnabled()
-    {
-        $warmer = $this->getCacheWarmerMock();
-        $warmer
-            ->expects($this->never())
-            ->method('isOptional');
-        $warmer
-            ->expects($this->once())
-            ->method('warmUp');
-
-        $aggregate = new CacheWarmerAggregate(array($warmer));
-        $aggregate->enableOptionalWarmers();
-        $aggregate->warmUp(self::$cacheDir);
-    }
-
-    public function testWarmupDoesNotCallWarmupOnOptionalWarmersWhenEnableOptionalWarmersIsNotEnabled()
-    {
-        $warmer = $this->getCacheWarmerMock();
-        $warmer
-            ->expects($this->once())
-            ->method('isOptional')
-            ->will($this->returnValue(true));
-        $warmer
-            ->expects($this->never())
-            ->method('warmUp');
-
-        $aggregate = new CacheWarmerAggregate(array($warmer));
-        $aggregate->warmUp(self::$cacheDir);
-    }
-
-    protected function getCacheWarmerMock()
-    {
-        $warmer = $this->getMockBuilder('Symfony\Component\HttpKernel\CacheWarmer\CacheWarmerInterface')
-            ->disableOriginalConstructor()
-            ->getMock();
-
-        return $warmer;
-    }
-}
diff --git a/vendor/symfony/http-kernel/Tests/CacheWarmer/CacheWarmerTest.php b/vendor/symfony/http-kernel/Tests/CacheWarmer/CacheWarmerTest.php
deleted file mode 100644
index f0ab05d..0000000
--- a/vendor/symfony/http-kernel/Tests/CacheWarmer/CacheWarmerTest.php
+++ /dev/null
@@ -1,67 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpKernel\Tests\CacheWarmer;
-
-use Symfony\Component\HttpKernel\CacheWarmer\CacheWarmer;
-
-class CacheWarmerTest extends \PHPUnit_Framework_TestCase
-{
-    protected static $cacheFile;
-
-    public static function setUpBeforeClass()
-    {
-        self::$cacheFile = tempnam(sys_get_temp_dir(), 'sf2_cache_warmer_dir');
-    }
-
-    public static function tearDownAfterClass()
-    {
-        @unlink(self::$cacheFile);
-    }
-
-    public function testWriteCacheFileCreatesTheFile()
-    {
-        $warmer = new TestCacheWarmer(self::$cacheFile);
-        $warmer->warmUp(dirname(self::$cacheFile));
-
-        $this->assertTrue(file_exists(self::$cacheFile));
-    }
-
-    /**
-     * @expectedException \RuntimeException
-     */
-    public function testWriteNonWritableCacheFileThrowsARuntimeException()
-    {
-        $nonWritableFile = '/this/file/is/very/probably/not/writable';
-        $warmer = new TestCacheWarmer($nonWritableFile);
-        $warmer->warmUp(dirname($nonWritableFile));
-    }
-}
-
-class TestCacheWarmer extends CacheWarmer
-{
-    protected $file;
-
-    public function __construct($file)
-    {
-        $this->file = $file;
-    }
-
-    public function warmUp($cacheDir)
-    {
-        $this->writeCacheFile($this->file, 'content');
-    }
-
-    public function isOptional()
-    {
-        return false;
-    }
-}
diff --git a/vendor/symfony/http-kernel/Tests/ClientTest.php b/vendor/symfony/http-kernel/Tests/ClientTest.php
deleted file mode 100644
index b5d2c9c..0000000
--- a/vendor/symfony/http-kernel/Tests/ClientTest.php
+++ /dev/null
@@ -1,179 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpKernel\Tests;
-
-use Symfony\Component\HttpKernel\Client;
-use Symfony\Component\HttpFoundation\Response;
-use Symfony\Component\HttpFoundation\StreamedResponse;
-use Symfony\Component\HttpFoundation\Cookie;
-use Symfony\Component\HttpFoundation\File\UploadedFile;
-use Symfony\Component\HttpKernel\Tests\Fixtures\TestClient;
-
-class ClientTest extends \PHPUnit_Framework_TestCase
-{
-    public function testDoRequest()
-    {
-        $client = new Client(new TestHttpKernel());
-
-        $client->request('GET', '/');
-        $this->assertEquals('Request: /', $client->getResponse()->getContent(), '->doRequest() uses the request handler to make the request');
-        $this->assertInstanceOf('Symfony\Component\BrowserKit\Request', $client->getInternalRequest());
-        $this->assertInstanceOf('Symfony\Component\HttpFoundation\Request', $client->getRequest());
-        $this->assertInstanceOf('Symfony\Component\BrowserKit\Response', $client->getInternalResponse());
-        $this->assertInstanceOf('Symfony\Component\HttpFoundation\Response', $client->getResponse());
-
-        $client->request('GET', 'http://www.example.com/');
-        $this->assertEquals('Request: /', $client->getResponse()->getContent(), '->doRequest() uses the request handler to make the request');
-        $this->assertEquals('www.example.com', $client->getRequest()->getHost(), '->doRequest() uses the request handler to make the request');
-
-        $client->request('GET', 'http://www.example.com/?parameter=http://google.com');
-        $this->assertEquals('http://www.example.com/?parameter='.urlencode('http://google.com'), $client->getRequest()->getUri(), '->doRequest() uses the request handler to make the request');
-    }
-
-    public function testGetScript()
-    {
-        $client = new TestClient(new TestHttpKernel());
-        $client->insulate();
-        $client->request('GET', '/');
-
-        $this->assertEquals('Request: /', $client->getResponse()->getContent(), '->getScript() returns a script that uses the request handler to make the request');
-    }
-
-    public function testFilterResponseConvertsCookies()
-    {
-        $client = new Client(new TestHttpKernel());
-
-        $r = new \ReflectionObject($client);
-        $m = $r->getMethod('filterResponse');
-        $m->setAccessible(true);
-
-        $expected = array(
-            'foo=bar; expires=Sun, 15 Feb 2009 20:00:00 GMT; domain=http://example.com; path=/foo; secure; httponly',
-            'foo1=bar1; expires=Sun, 15 Feb 2009 20:00:00 GMT; domain=http://example.com; path=/foo; secure; httponly',
-        );
-
-        $response = new Response();
-        $response->headers->setCookie(new Cookie('foo', 'bar', \DateTime::createFromFormat('j-M-Y H:i:s T', '15-Feb-2009 20:00:00 GMT')->format('U'), '/foo', 'http://example.com', true, true));
-        $domResponse = $m->invoke($client, $response);
-        $this->assertEquals($expected[0], $domResponse->getHeader('Set-Cookie'));
-
-        $response = new Response();
-        $response->headers->setCookie(new Cookie('foo', 'bar', \DateTime::createFromFormat('j-M-Y H:i:s T', '15-Feb-2009 20:00:00 GMT')->format('U'), '/foo', 'http://example.com', true, true));
-        $response->headers->setCookie(new Cookie('foo1', 'bar1', \DateTime::createFromFormat('j-M-Y H:i:s T', '15-Feb-2009 20:00:00 GMT')->format('U'), '/foo', 'http://example.com', true, true));
-        $domResponse = $m->invoke($client, $response);
-        $this->assertEquals($expected[0], $domResponse->getHeader('Set-Cookie'));
-        $this->assertEquals($expected, $domResponse->getHeader('Set-Cookie', false));
-    }
-
-    public function testFilterResponseSupportsStreamedResponses()
-    {
-        $client = new Client(new TestHttpKernel());
-
-        $r = new \ReflectionObject($client);
-        $m = $r->getMethod('filterResponse');
-        $m->setAccessible(true);
-
-        $response = new StreamedResponse(function () {
-            echo 'foo';
-        });
-
-        $domResponse = $m->invoke($client, $response);
-        $this->assertEquals('foo', $domResponse->getContent());
-    }
-
-    public function testUploadedFile()
-    {
-        $source = tempnam(sys_get_temp_dir(), 'source');
-        $target = sys_get_temp_dir().'/sf.moved.file';
-        @unlink($target);
-
-        $kernel = new TestHttpKernel();
-        $client = new Client($kernel);
-
-        $files = array(
-            array('tmp_name' => $source, 'name' => 'original', 'type' => 'mime/original', 'size' => 123, 'error' => UPLOAD_ERR_OK),
-            new UploadedFile($source, 'original', 'mime/original', 123, UPLOAD_ERR_OK, true),
-        );
-
-        $file = null;
-        foreach ($files as $file) {
-            $client->request('POST', '/', array(), array('foo' => $file));
-
-            $files = $client->getRequest()->files->all();
-
-            $this->assertCount(1, $files);
-
-            $file = $files['foo'];
-
-            $this->assertEquals('original', $file->getClientOriginalName());
-            $this->assertEquals('mime/original', $file->getClientMimeType());
-            $this->assertEquals('123', $file->getClientSize());
-            $this->assertTrue($file->isValid());
-        }
-
-        $file->move(dirname($target), basename($target));
-
-        $this->assertFileExists($target);
-        unlink($target);
-    }
-
-    public function testUploadedFileWhenNoFileSelected()
-    {
-        $kernel = new TestHttpKernel();
-        $client = new Client($kernel);
-
-        $file = array('tmp_name' => '', 'name' => '', 'type' => '', 'size' => 0, 'error' => UPLOAD_ERR_NO_FILE);
-
-        $client->request('POST', '/', array(), array('foo' => $file));
-
-        $files = $client->getRequest()->files->all();
-
-        $this->assertCount(1, $files);
-        $this->assertNull($files['foo']);
-    }
-
-    public function testUploadedFileWhenSizeExceedsUploadMaxFileSize()
-    {
-        $source = tempnam(sys_get_temp_dir(), 'source');
-
-        $kernel = new TestHttpKernel();
-        $client = new Client($kernel);
-
-        $file = $this
-            ->getMockBuilder('Symfony\Component\HttpFoundation\File\UploadedFile')
-            ->setConstructorArgs(array($source, 'original', 'mime/original', 123, UPLOAD_ERR_OK, true))
-            ->setMethods(array('getSize'))
-            ->getMock()
-        ;
-
-        $file->expects($this->once())
-            ->method('getSize')
-            ->will($this->returnValue(INF))
-        ;
-
-        $client->request('POST', '/', array(), array($file));
-
-        $files = $client->getRequest()->files->all();
-
-        $this->assertCount(1, $files);
-
-        $file = $files[0];
-
-        $this->assertFalse($file->isValid());
-        $this->assertEquals(UPLOAD_ERR_INI_SIZE, $file->getError());
-        $this->assertEquals('mime/original', $file->getClientMimeType());
-        $this->assertEquals('original', $file->getClientOriginalName());
-        $this->assertEquals(0, $file->getClientSize());
-
-        unlink($source);
-    }
-}
diff --git a/vendor/symfony/http-kernel/Tests/Config/EnvParametersResourceTest.php b/vendor/symfony/http-kernel/Tests/Config/EnvParametersResourceTest.php
deleted file mode 100644
index ee5ecce..0000000
--- a/vendor/symfony/http-kernel/Tests/Config/EnvParametersResourceTest.php
+++ /dev/null
@@ -1,106 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpKernel\Tests\Config;
-
-use Symfony\Component\HttpKernel\Config\EnvParametersResource;
-
-class EnvParametersResourceTest extends \PHPUnit_Framework_TestCase
-{
-    protected $prefix = '__DUMMY_';
-    protected $initialEnv;
-    protected $resource;
-
-    protected function setUp()
-    {
-        $this->initialEnv = array(
-            $this->prefix.'1' => 'foo',
-            $this->prefix.'2' => 'bar',
-        );
-
-        foreach ($this->initialEnv as $key => $value) {
-            $_SERVER[$key] = $value;
-        }
-
-        $this->resource = new EnvParametersResource($this->prefix);
-    }
-
-    protected function tearDown()
-    {
-        foreach ($_SERVER as $key => $value) {
-            if (0 === strpos($key, $this->prefix)) {
-                unset($_SERVER[$key]);
-            }
-        }
-    }
-
-    public function testGetResource()
-    {
-        $this->assertSame(
-            array('prefix' => $this->prefix, 'variables' => $this->initialEnv),
-            $this->resource->getResource(),
-            '->getResource() returns the resource'
-        );
-    }
-
-    public function testToString()
-    {
-        $this->assertSame(
-            serialize(array('prefix' => $this->prefix, 'variables' => $this->initialEnv)),
-            (string) $this->resource
-        );
-    }
-
-    public function testIsFreshNotChanged()
-    {
-        $this->assertTrue(
-            $this->resource->isFresh(time()),
-            '->isFresh() returns true if the variables have not changed'
-        );
-    }
-
-    public function testIsFreshValueChanged()
-    {
-        reset($this->initialEnv);
-        $_SERVER[key($this->initialEnv)] = 'baz';
-
-        $this->assertFalse(
-            $this->resource->isFresh(time()),
-            '->isFresh() returns false if a variable has been changed'
-        );
-    }
-
-    public function testIsFreshValueRemoved()
-    {
-        reset($this->initialEnv);
-        unset($_SERVER[key($this->initialEnv)]);
-
-        $this->assertFalse(
-            $this->resource->isFresh(time()),
-            '->isFresh() returns false if a variable has been removed'
-        );
-    }
-
-    public function testIsFreshValueAdded()
-    {
-        $_SERVER[$this->prefix.'3'] = 'foo';
-
-        $this->assertFalse(
-            $this->resource->isFresh(time()),
-            '->isFresh() returns false if a variable has been added'
-        );
-    }
-
-    public function testSerializeUnserialize()
-    {
-        $this->assertEquals($this->resource, unserialize(serialize($this->resource)));
-    }
-}
diff --git a/vendor/symfony/http-kernel/Tests/Config/FileLocatorTest.php b/vendor/symfony/http-kernel/Tests/Config/FileLocatorTest.php
deleted file mode 100644
index be59486..0000000
--- a/vendor/symfony/http-kernel/Tests/Config/FileLocatorTest.php
+++ /dev/null
@@ -1,47 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpKernel\Tests\Config;
-
-use Symfony\Component\HttpKernel\Config\FileLocator;
-
-class FileLocatorTest extends \PHPUnit_Framework_TestCase
-{
-    public function testLocate()
-    {
-        $kernel = $this->getMock('Symfony\Component\HttpKernel\KernelInterface');
-        $kernel
-            ->expects($this->atLeastOnce())
-            ->method('locateResource')
-            ->with('@BundleName/some/path', null, true)
-            ->will($this->returnValue('/bundle-name/some/path'));
-        $locator = new FileLocator($kernel);
-        $this->assertEquals('/bundle-name/some/path', $locator->locate('@BundleName/some/path'));
-
-        $kernel
-            ->expects($this->never())
-            ->method('locateResource');
-        $this->setExpectedException('LogicException');
-        $locator->locate('/some/path');
-    }
-
-    public function testLocateWithGlobalResourcePath()
-    {
-        $kernel = $this->getMock('Symfony\Component\HttpKernel\KernelInterface');
-        $kernel
-            ->expects($this->atLeastOnce())
-            ->method('locateResource')
-            ->with('@BundleName/some/path', '/global/resource/path', false);
-
-        $locator = new FileLocator($kernel, '/global/resource/path');
-        $locator->locate('@BundleName/some/path', null, false);
-    }
-}
diff --git a/vendor/symfony/http-kernel/Tests/Controller/ControllerResolverTest.php b/vendor/symfony/http-kernel/Tests/Controller/ControllerResolverTest.php
deleted file mode 100644
index 32db4e4..0000000
--- a/vendor/symfony/http-kernel/Tests/Controller/ControllerResolverTest.php
+++ /dev/null
@@ -1,242 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpKernel\Tests\Controller;
-
-use Psr\Log\LoggerInterface;
-use Symfony\Component\HttpKernel\Controller\ControllerResolver;
-use Symfony\Component\HttpFoundation\Request;
-
-class ControllerResolverTest extends \PHPUnit_Framework_TestCase
-{
-    public function testGetControllerWithoutControllerParameter()
-    {
-        $logger = $this->getMock('Psr\Log\LoggerInterface');
-        $logger->expects($this->once())->method('warning')->with('Unable to look for the controller as the "_controller" parameter is missing.');
-        $resolver = $this->createControllerResolver($logger);
-
-        $request = Request::create('/');
-        $this->assertFalse($resolver->getController($request), '->getController() returns false when the request has no _controller attribute');
-    }
-
-    public function testGetControllerWithLambda()
-    {
-        $resolver = $this->createControllerResolver();
-
-        $request = Request::create('/');
-        $request->attributes->set('_controller', $lambda = function () {});
-        $controller = $resolver->getController($request);
-        $this->assertSame($lambda, $controller);
-    }
-
-    public function testGetControllerWithObjectAndInvokeMethod()
-    {
-        $resolver = $this->createControllerResolver();
-
-        $request = Request::create('/');
-        $request->attributes->set('_controller', $this);
-        $controller = $resolver->getController($request);
-        $this->assertSame($this, $controller);
-    }
-
-    public function testGetControllerWithObjectAndMethod()
-    {
-        $resolver = $this->createControllerResolver();
-
-        $request = Request::create('/');
-        $request->attributes->set('_controller', array($this, 'controllerMethod1'));
-        $controller = $resolver->getController($request);
-        $this->assertSame(array($this, 'controllerMethod1'), $controller);
-    }
-
-    public function testGetControllerWithClassAndMethod()
-    {
-        $resolver = $this->createControllerResolver();
-
-        $request = Request::create('/');
-        $request->attributes->set('_controller', array('Symfony\Component\HttpKernel\Tests\Controller\ControllerResolverTest', 'controllerMethod4'));
-        $controller = $resolver->getController($request);
-        $this->assertSame(array('Symfony\Component\HttpKernel\Tests\Controller\ControllerResolverTest', 'controllerMethod4'), $controller);
-    }
-
-    public function testGetControllerWithObjectAndMethodAsString()
-    {
-        $resolver = $this->createControllerResolver();
-
-        $request = Request::create('/');
-        $request->attributes->set('_controller', 'Symfony\Component\HttpKernel\Tests\Controller\ControllerResolverTest::controllerMethod1');
-        $controller = $resolver->getController($request);
-        $this->assertInstanceOf('Symfony\Component\HttpKernel\Tests\Controller\ControllerResolverTest', $controller[0], '->getController() returns a PHP callable');
-    }
-
-    public function testGetControllerWithClassAndInvokeMethod()
-    {
-        $resolver = $this->createControllerResolver();
-
-        $request = Request::create('/');
-        $request->attributes->set('_controller', 'Symfony\Component\HttpKernel\Tests\Controller\ControllerResolverTest');
-        $controller = $resolver->getController($request);
-        $this->assertInstanceOf('Symfony\Component\HttpKernel\Tests\Controller\ControllerResolverTest', $controller);
-    }
-
-    /**
-     * @expectedException \InvalidArgumentException
-     */
-    public function testGetControllerOnObjectWithoutInvokeMethod()
-    {
-        $resolver = $this->createControllerResolver();
-
-        $request = Request::create('/');
-        $request->attributes->set('_controller', new \stdClass());
-        $resolver->getController($request);
-    }
-
-    public function testGetControllerWithFunction()
-    {
-        $resolver = $this->createControllerResolver();
-
-        $request = Request::create('/');
-        $request->attributes->set('_controller', 'Symfony\Component\HttpKernel\Tests\Controller\some_controller_function');
-        $controller = $resolver->getController($request);
-        $this->assertSame('Symfony\Component\HttpKernel\Tests\Controller\some_controller_function', $controller);
-    }
-
-    /**
-     * @dataProvider      getUndefinedControllers
-     * @expectedException \InvalidArgumentException
-     */
-    public function testGetControllerOnNonUndefinedFunction($controller)
-    {
-        $resolver = $this->createControllerResolver();
-
-        $request = Request::create('/');
-        $request->attributes->set('_controller', $controller);
-        $resolver->getController($request);
-    }
-
-    public function getUndefinedControllers()
-    {
-        return array(
-            array('foo'),
-            array('foo::bar'),
-            array('stdClass'),
-            array('Symfony\Component\HttpKernel\Tests\Controller\ControllerResolverTest::bar'),
-        );
-    }
-
-    public function testGetArguments()
-    {
-        $resolver = $this->createControllerResolver();
-
-        $request = Request::create('/');
-        $controller = array(new self(), 'testGetArguments');
-        $this->assertEquals(array(), $resolver->getArguments($request, $controller), '->getArguments() returns an empty array if the method takes no arguments');
-
-        $request = Request::create('/');
-        $request->attributes->set('foo', 'foo');
-        $controller = array(new self(), 'controllerMethod1');
-        $this->assertEquals(array('foo'), $resolver->getArguments($request, $controller), '->getArguments() returns an array of arguments for the controller method');
-
-        $request = Request::create('/');
-        $request->attributes->set('foo', 'foo');
-        $controller = array(new self(), 'controllerMethod2');
-        $this->assertEquals(array('foo', null), $resolver->getArguments($request, $controller), '->getArguments() uses default values if present');
-
-        $request->attributes->set('bar', 'bar');
-        $this->assertEquals(array('foo', 'bar'), $resolver->getArguments($request, $controller), '->getArguments() overrides default values if provided in the request attributes');
-
-        $request = Request::create('/');
-        $request->attributes->set('foo', 'foo');
-        $controller = function ($foo) {};
-        $this->assertEquals(array('foo'), $resolver->getArguments($request, $controller));
-
-        $request = Request::create('/');
-        $request->attributes->set('foo', 'foo');
-        $controller = function ($foo, $bar = 'bar') {};
-        $this->assertEquals(array('foo', 'bar'), $resolver->getArguments($request, $controller));
-
-        $request = Request::create('/');
-        $request->attributes->set('foo', 'foo');
-        $controller = new self();
-        $this->assertEquals(array('foo', null), $resolver->getArguments($request, $controller));
-        $request->attributes->set('bar', 'bar');
-        $this->assertEquals(array('foo', 'bar'), $resolver->getArguments($request, $controller));
-
-        $request = Request::create('/');
-        $request->attributes->set('foo', 'foo');
-        $request->attributes->set('foobar', 'foobar');
-        $controller = 'Symfony\Component\HttpKernel\Tests\Controller\some_controller_function';
-        $this->assertEquals(array('foo', 'foobar'), $resolver->getArguments($request, $controller));
-
-        $request = Request::create('/');
-        $request->attributes->set('foo', 'foo');
-        $request->attributes->set('foobar', 'foobar');
-        $controller = array(new self(), 'controllerMethod3');
-
-        if (PHP_VERSION_ID === 50316) {
-            $this->markTestSkipped('PHP 5.3.16 has a major bug in the Reflection sub-system');
-        } else {
-            try {
-                $resolver->getArguments($request, $controller);
-                $this->fail('->getArguments() throws a \RuntimeException exception if it cannot determine the argument value');
-            } catch (\Exception $e) {
-                $this->assertInstanceOf('\RuntimeException', $e, '->getArguments() throws a \RuntimeException exception if it cannot determine the argument value');
-            }
-        }
-
-        $request = Request::create('/');
-        $controller = array(new self(), 'controllerMethod5');
-        $this->assertEquals(array($request), $resolver->getArguments($request, $controller), '->getArguments() injects the request');
-    }
-
-    public function testCreateControllerCanReturnAnyCallable()
-    {
-        $mock = $this->getMock('Symfony\Component\HttpKernel\Controller\ControllerResolver', array('createController'));
-        $mock->expects($this->once())->method('createController')->will($this->returnValue('Symfony\Component\HttpKernel\Tests\Controller\some_controller_function'));
-
-        $request = Request::create('/');
-        $request->attributes->set('_controller', 'foobar');
-        $mock->getController($request);
-    }
-
-    protected function createControllerResolver(LoggerInterface $logger = null)
-    {
-        return new ControllerResolver($logger);
-    }
-
-    public function __invoke($foo, $bar = null)
-    {
-    }
-
-    public function controllerMethod1($foo)
-    {
-    }
-
-    protected function controllerMethod2($foo, $bar = null)
-    {
-    }
-
-    protected function controllerMethod3($foo, $bar = null, $foobar)
-    {
-    }
-
-    protected static function controllerMethod4()
-    {
-    }
-
-    protected function controllerMethod5(Request $request)
-    {
-    }
-}
-
-function some_controller_function($foo, $foobar)
-{
-}
diff --git a/vendor/symfony/http-kernel/Tests/DataCollector/ConfigDataCollectorTest.php b/vendor/symfony/http-kernel/Tests/DataCollector/ConfigDataCollectorTest.php
deleted file mode 100644
index 4a0dc26..0000000
--- a/vendor/symfony/http-kernel/Tests/DataCollector/ConfigDataCollectorTest.php
+++ /dev/null
@@ -1,81 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpKernel\Tests\DataCollector;
-
-use Symfony\Component\HttpKernel\DataCollector\ConfigDataCollector;
-use Symfony\Component\HttpKernel\Kernel;
-use Symfony\Component\Config\Loader\LoaderInterface;
-use Symfony\Component\HttpFoundation\Request;
-use Symfony\Component\HttpFoundation\Response;
-
-class ConfigDataCollectorTest extends \PHPUnit_Framework_TestCase
-{
-    public function testCollect()
-    {
-        $kernel = new KernelForTest('test', true);
-        $c = new ConfigDataCollector();
-        $c->setCacheVersionInfo(false);
-        $c->setKernel($kernel);
-        $c->collect(new Request(), new Response());
-
-        $this->assertSame('test', $c->getEnv());
-        $this->assertTrue($c->isDebug());
-        $this->assertSame('config', $c->getName());
-        $this->assertSame('testkernel', $c->getAppName());
-        $this->assertSame(PHP_VERSION, $c->getPhpVersion());
-        $this->assertSame(Kernel::VERSION, $c->getSymfonyVersion());
-        $this->assertNull($c->getToken());
-
-        // if else clause because we don't know it
-        if (extension_loaded('xdebug')) {
-            $this->assertTrue($c->hasXDebug());
-        } else {
-            $this->assertFalse($c->hasXDebug());
-        }
-
-        // if else clause because we don't know it
-        if (((extension_loaded('eaccelerator') && ini_get('eaccelerator.enable'))
-                ||
-                (extension_loaded('apc') && ini_get('apc.enabled'))
-                ||
-                (extension_loaded('Zend OPcache') && ini_get('opcache.enable'))
-                ||
-                (extension_loaded('xcache') && ini_get('xcache.cacher'))
-                ||
-                (extension_loaded('wincache') && ini_get('wincache.ocenabled')))) {
-            $this->assertTrue($c->hasAccelerator());
-        } else {
-            $this->assertFalse($c->hasAccelerator());
-        }
-    }
-}
-
-class KernelForTest extends Kernel
-{
-    public function getName()
-    {
-        return 'testkernel';
-    }
-
-    public function registerBundles()
-    {
-    }
-
-    public function getBundles()
-    {
-        return array();
-    }
-
-    public function registerContainerConfiguration(LoaderInterface $loader)
-    {
-    }
-}
diff --git a/vendor/symfony/http-kernel/Tests/DataCollector/DumpDataCollectorTest.php b/vendor/symfony/http-kernel/Tests/DataCollector/DumpDataCollectorTest.php
deleted file mode 100644
index e9b8433..0000000
--- a/vendor/symfony/http-kernel/Tests/DataCollector/DumpDataCollectorTest.php
+++ /dev/null
@@ -1,138 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpKernel\Tests\DataCollector;
-
-use Symfony\Component\HttpKernel\DataCollector\DumpDataCollector;
-use Symfony\Component\HttpFoundation\Request;
-use Symfony\Component\HttpFoundation\Response;
-use Symfony\Component\VarDumper\Cloner\Data;
-
-/**
- * @author Nicolas Grekas <p@tchwork.com>
- */
-class DumpDataCollectorTest extends \PHPUnit_Framework_TestCase
-{
-    public function testDump()
-    {
-        $data = new Data(array(array(123)));
-
-        $collector = new DumpDataCollector();
-
-        $this->assertSame('dump', $collector->getName());
-
-        $collector->dump($data);
-        $line = __LINE__ - 1;
-        $this->assertSame(1, $collector->getDumpsCount());
-
-        $dump = $collector->getDumps('html');
-        $this->assertTrue(isset($dump[0]['data']));
-        $dump[0]['data'] = preg_replace('/^.*?<pre/', '<pre', $dump[0]['data']);
-        $dump[0]['data'] = preg_replace('/sf-dump-\d+/', 'sf-dump', $dump[0]['data']);
-
-        $xDump = array(
-            array(
-                'data' => "<pre class=sf-dump id=sf-dump data-indent-pad=\"  \"><span class=sf-dump-num>123</span>\n</pre><script>Sfdump(\"sf-dump\")</script>\n",
-                'name' => 'DumpDataCollectorTest.php',
-                'file' => __FILE__,
-                'line' => $line,
-                'fileExcerpt' => false,
-            ),
-        );
-        $this->assertSame($xDump, $dump);
-
-        $this->assertStringMatchesFormat(
-            'a:1:{i:0;a:5:{s:4:"data";O:39:"Symfony\Component\VarDumper\Cloner\Data":4:{s:45:"Symfony\Component\VarDumper\Cloner\Datadata";a:1:{i:0;a:1:{i:0;i:123;}}s:49:"Symfony\Component\VarDumper\Cloner\DatamaxDepth";i:%i;s:57:"Symfony\Component\VarDumper\Cloner\DatamaxItemsPerDepth";i:%i;s:54:"Symfony\Component\VarDumper\Cloner\DatauseRefHandles";i:%i;}s:4:"name";s:25:"DumpDataCollectorTest.php";s:4:"file";s:%a',
-            str_replace("\0", '', $collector->serialize())
-        );
-
-        $this->assertSame(0, $collector->getDumpsCount());
-        $this->assertSame('a:0:{}', $collector->serialize());
-    }
-
-    public function testCollectDefault()
-    {
-        $data = new Data(array(array(123)));
-
-        $collector = new DumpDataCollector();
-
-        $collector->dump($data);
-        $line = __LINE__ - 1;
-
-        ob_start();
-        $collector->collect(new Request(), new Response());
-        $output = ob_get_clean();
-
-        if (PHP_VERSION_ID >= 50400) {
-            $this->assertSame("DumpDataCollectorTest.php on line {$line}:\n123\n", $output);
-        } else {
-            $this->assertSame("\"DumpDataCollectorTest.php on line {$line}:\"\n123\n", $output);
-        }
-        $this->assertSame(1, $collector->getDumpsCount());
-        $collector->serialize();
-    }
-
-    public function testCollectHtml()
-    {
-        $data = new Data(array(array(123)));
-
-        $collector = new DumpDataCollector(null, 'test://%f:%l');
-
-        $collector->dump($data);
-        $line = __LINE__ - 1;
-        $file = __FILE__;
-        if (PHP_VERSION_ID >= 50400) {
-            $xOutput = <<<EOTXT
- <pre class=sf-dump id=sf-dump data-indent-pad="  "><a href="test://{$file}:{$line}" title="{$file}"><span class=sf-dump-meta>DumpDataCollectorTest.php</span></a> on line <span class=sf-dump-meta>{$line}</span>:
-<span class=sf-dump-num>123</span>
-</pre>
-
-EOTXT;
-        } else {
-            $len = strlen("DumpDataCollectorTest.php on line {$line}:");
-            $xOutput = <<<EOTXT
- <pre class=sf-dump id=sf-dump data-indent-pad="  ">"<span class=sf-dump-str title="{$len} characters">DumpDataCollectorTest.php on line {$line}:</span>"
-</pre>
-<pre class=sf-dump id=sf-dump data-indent-pad="  "><span class=sf-dump-num>123</span>
-</pre>
-
-EOTXT;
-        }
-
-        ob_start();
-        $response = new Response();
-        $response->headers->set('Content-Type', 'text/html');
-        $collector->collect(new Request(), $response);
-        $output = ob_get_clean();
-        $output = preg_replace('#<(script|style).*?</\1>#s', '', $output);
-        $output = preg_replace('/sf-dump-\d+/', 'sf-dump', $output);
-
-        $this->assertSame($xOutput, $output);
-        $this->assertSame(1, $collector->getDumpsCount());
-        $collector->serialize();
-    }
-
-    public function testFlush()
-    {
-        $data = new Data(array(array(456)));
-        $collector = new DumpDataCollector();
-        $collector->dump($data);
-        $line = __LINE__ - 1;
-
-        ob_start();
-        $collector = null;
-        if (PHP_VERSION_ID >= 50400) {
-            $this->assertSame("DumpDataCollectorTest.php on line {$line}:\n456\n", ob_get_clean());
-        } else {
-            $this->assertSame("\"DumpDataCollectorTest.php on line {$line}:\"\n456\n", ob_get_clean());
-        }
-    }
-}
diff --git a/vendor/symfony/http-kernel/Tests/DataCollector/ExceptionDataCollectorTest.php b/vendor/symfony/http-kernel/Tests/DataCollector/ExceptionDataCollectorTest.php
deleted file mode 100644
index 6c71f4c..0000000
--- a/vendor/symfony/http-kernel/Tests/DataCollector/ExceptionDataCollectorTest.php
+++ /dev/null
@@ -1,39 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpKernel\Tests\DataCollector;
-
-use Symfony\Component\Debug\Exception\FlattenException;
-use Symfony\Component\HttpKernel\DataCollector\ExceptionDataCollector;
-use Symfony\Component\HttpFoundation\Request;
-use Symfony\Component\HttpFoundation\Response;
-
-class ExceptionDataCollectorTest extends \PHPUnit_Framework_TestCase
-{
-    public function testCollect()
-    {
-        $e = new \Exception('foo', 500);
-        $c = new ExceptionDataCollector();
-        $flattened = FlattenException::create($e);
-        $trace = $flattened->getTrace();
-
-        $this->assertFalse($c->hasException());
-
-        $c->collect(new Request(), new Response(), $e);
-
-        $this->assertTrue($c->hasException());
-        $this->assertEquals($flattened, $c->getException());
-        $this->assertSame('foo', $c->getMessage());
-        $this->assertSame(500, $c->getCode());
-        $this->assertSame('exception', $c->getName());
-        $this->assertSame($trace, $c->getTrace());
-    }
-}
diff --git a/vendor/symfony/http-kernel/Tests/DataCollector/LoggerDataCollectorTest.php b/vendor/symfony/http-kernel/Tests/DataCollector/LoggerDataCollectorTest.php
deleted file mode 100644
index dd1608c..0000000
--- a/vendor/symfony/http-kernel/Tests/DataCollector/LoggerDataCollectorTest.php
+++ /dev/null
@@ -1,95 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpKernel\Tests\DataCollector;
-
-use Symfony\Component\HttpKernel\DataCollector\LoggerDataCollector;
-
-class LoggerDataCollectorTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @dataProvider getCollectTestData
-     */
-    public function testCollect($nb, $logs, $expectedLogs, $expectedDeprecationCount, $expectedScreamCount, $expectedPriorities = null)
-    {
-        $logger = $this->getMock('Symfony\Component\HttpKernel\Log\DebugLoggerInterface');
-        $logger->expects($this->once())->method('countErrors')->will($this->returnValue($nb));
-        $logger->expects($this->exactly(2))->method('getLogs')->will($this->returnValue($logs));
-
-        $c = new LoggerDataCollector($logger);
-        $c->lateCollect();
-
-        $this->assertSame('logger', $c->getName());
-        $this->assertSame($nb, $c->countErrors());
-        $this->assertSame($expectedLogs ?: $logs, $c->getLogs());
-        $this->assertSame($expectedDeprecationCount, $c->countDeprecations());
-        $this->assertSame($expectedScreamCount, $c->countScreams());
-
-        if (isset($expectedPriorities)) {
-            $this->assertSame($expectedPriorities, $c->getPriorities());
-        }
-    }
-
-    public function getCollectTestData()
-    {
-        return array(
-            array(
-                1,
-                array(array('message' => 'foo', 'context' => array(), 'priority' => 100, 'priorityName' => 'DEBUG')),
-                null,
-                0,
-                0,
-            ),
-            array(
-                1,
-                array(array('message' => 'foo', 'context' => array('foo' => fopen(__FILE__, 'r')), 'priority' => 100, 'priorityName' => 'DEBUG')),
-                array(array('message' => 'foo', 'context' => array('foo' => 'Resource(stream)'), 'priority' => 100, 'priorityName' => 'DEBUG')),
-                0,
-                0,
-            ),
-            array(
-                1,
-                array(array('message' => 'foo', 'context' => array('foo' => new \stdClass()), 'priority' => 100, 'priorityName' => 'DEBUG')),
-                array(array('message' => 'foo', 'context' => array('foo' => 'Object(stdClass)'), 'priority' => 100, 'priorityName' => 'DEBUG')),
-                0,
-                0,
-            ),
-            array(
-                1,
-                array(
-                    array('message' => 'foo', 'context' => array('type' => E_DEPRECATED, 'level' => E_ALL), 'priority' => 100, 'priorityName' => 'DEBUG'),
-                    array('message' => 'foo2', 'context' => array('type' => E_USER_DEPRECATED, 'level' => E_ALL), 'priority' => 100, 'priorityName' => 'DEBUG'),
-                ),
-                null,
-                2,
-                0,
-                array(100 => array('count' => 2, 'name' => 'DEBUG')),
-            ),
-            array(
-                1,
-                array(array('message' => 'foo3', 'context' => array('type' => E_USER_WARNING, 'level' => 0, 'file' => __FILE__, 'line' => 123), 'priority' => 100, 'priorityName' => 'DEBUG')),
-                array(array('message' => 'foo3', 'context' => array('type' => E_USER_WARNING, 'level' => 0, 'file' => __FILE__, 'line' => 123, 'scream' => true), 'priority' => 100, 'priorityName' => 'DEBUG')),
-                0,
-                1,
-            ),
-            array(
-                1,
-                array(
-                    array('message' => 'foo3', 'context' => array('type' => E_USER_WARNING, 'level' => 0, 'file' => __FILE__, 'line' => 123), 'priority' => 100, 'priorityName' => 'DEBUG'),
-                    array('message' => 'foo3', 'context' => array('type' => E_USER_WARNING, 'level' => -1, 'file' => __FILE__, 'line' => 123), 'priority' => 100, 'priorityName' => 'DEBUG'),
-                ),
-                array(array('message' => 'foo3', 'context' => array('type' => E_USER_WARNING, 'level' => -1, 'file' => __FILE__, 'line' => 123, 'errorCount' => 2), 'priority' => 100, 'priorityName' => 'DEBUG')),
-                0,
-                1,
-            ),
-        );
-    }
-}
diff --git a/vendor/symfony/http-kernel/Tests/DataCollector/MemoryDataCollectorTest.php b/vendor/symfony/http-kernel/Tests/DataCollector/MemoryDataCollectorTest.php
deleted file mode 100644
index 340b428..0000000
--- a/vendor/symfony/http-kernel/Tests/DataCollector/MemoryDataCollectorTest.php
+++ /dev/null
@@ -1,58 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpKernel\Tests\DataCollector;
-
-use Symfony\Component\HttpKernel\DataCollector\MemoryDataCollector;
-use Symfony\Component\HttpFoundation\Request;
-use Symfony\Component\HttpFoundation\Response;
-
-class MemoryDataCollectorTest extends \PHPUnit_Framework_TestCase
-{
-    public function testCollect()
-    {
-        $collector = new MemoryDataCollector();
-        $collector->collect(new Request(), new Response());
-
-        $this->assertInternalType('integer', $collector->getMemory());
-        $this->assertInternalType('integer', $collector->getMemoryLimit());
-        $this->assertSame('memory', $collector->getName());
-    }
-
-    /** @dataProvider getBytesConversionTestData */
-    public function testBytesConversion($limit, $bytes)
-    {
-        $collector = new MemoryDataCollector();
-        $method = new \ReflectionMethod($collector, 'convertToBytes');
-        $method->setAccessible(true);
-        $this->assertEquals($bytes, $method->invoke($collector, $limit));
-    }
-
-    public function getBytesConversionTestData()
-    {
-        return array(
-            array('2k', 2048),
-            array('2 k', 2048),
-            array('8m', 8 * 1024 * 1024),
-            array('+2 k', 2048),
-            array('+2???k', 2048),
-            array('0x10', 16),
-            array('0xf', 15),
-            array('010', 8),
-            array('+0x10 k', 16 * 1024),
-            array('1g', 1024 * 1024 * 1024),
-            array('1G', 1024 * 1024 * 1024),
-            array('-1', -1),
-            array('0', 0),
-            array('2mk', 2048), // the unit must be the last char, so in this case 'k', not 'm'
-        );
-    }
-}
diff --git a/vendor/symfony/http-kernel/Tests/DataCollector/RequestDataCollectorTest.php b/vendor/symfony/http-kernel/Tests/DataCollector/RequestDataCollectorTest.php
deleted file mode 100644
index 2eb1c41..0000000
--- a/vendor/symfony/http-kernel/Tests/DataCollector/RequestDataCollectorTest.php
+++ /dev/null
@@ -1,222 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpKernel\Tests\DataCollector;
-
-use Symfony\Component\HttpKernel\HttpKernel;
-use Symfony\Component\HttpKernel\HttpKernelInterface;
-use Symfony\Component\HttpKernel\DataCollector\RequestDataCollector;
-use Symfony\Component\HttpKernel\Event\FilterControllerEvent;
-use Symfony\Component\HttpFoundation\Request;
-use Symfony\Component\HttpFoundation\Response;
-use Symfony\Component\HttpFoundation\Cookie;
-use Symfony\Component\EventDispatcher\EventDispatcher;
-
-class RequestDataCollectorTest extends \PHPUnit_Framework_TestCase
-{
-    public function testCollect()
-    {
-        $c = new RequestDataCollector();
-
-        $c->collect($this->createRequest(), $this->createResponse());
-
-        $attributes = $c->getRequestAttributes();
-
-        $this->assertSame('request', $c->getName());
-        $this->assertInstanceOf('Symfony\Component\HttpFoundation\HeaderBag', $c->getRequestHeaders());
-        $this->assertInstanceOf('Symfony\Component\HttpFoundation\ParameterBag', $c->getRequestServer());
-        $this->assertInstanceOf('Symfony\Component\HttpFoundation\ParameterBag', $c->getRequestCookies());
-        $this->assertInstanceOf('Symfony\Component\HttpFoundation\ParameterBag', $attributes);
-        $this->assertInstanceOf('Symfony\Component\HttpFoundation\ParameterBag', $c->getRequestRequest());
-        $this->assertInstanceOf('Symfony\Component\HttpFoundation\ParameterBag', $c->getRequestQuery());
-        $this->assertSame('html', $c->getFormat());
-        $this->assertSame('foobar', $c->getRoute());
-        $this->assertSame(array('name' => 'foo'), $c->getRouteParams());
-        $this->assertSame(array(), $c->getSessionAttributes());
-        $this->assertSame('en', $c->getLocale());
-        $this->assertRegExp('/Resource\(stream#\d+\)/', $attributes->get('resource'));
-        $this->assertSame('Object(stdClass)', $attributes->get('object'));
-
-        $this->assertInstanceOf('Symfony\Component\HttpFoundation\HeaderBag', $c->getResponseHeaders());
-        $this->assertSame('OK', $c->getStatusText());
-        $this->assertSame(200, $c->getStatusCode());
-        $this->assertSame('application/json', $c->getContentType());
-    }
-
-    /**
-     * Test various types of controller callables.
-     */
-    public function testControllerInspection()
-    {
-        // make sure we always match the line number
-        $r1 = new \ReflectionMethod($this, 'testControllerInspection');
-        $r2 = new \ReflectionMethod($this, 'staticControllerMethod');
-        $r3 = new \ReflectionClass($this);
-        // test name, callable, expected
-        $controllerTests = array(
-            array(
-                '"Regular" callable',
-                array($this, 'testControllerInspection'),
-                array(
-                    'class' => 'Symfony\Component\HttpKernel\Tests\DataCollector\RequestDataCollectorTest',
-                    'method' => 'testControllerInspection',
-                    'file' => __FILE__,
-                    'line' => $r1->getStartLine(),
-                ),
-            ),
-
-            array(
-                'Closure',
-                function () { return 'foo'; },
-                array(
-                    'class' => __NAMESPACE__.'\{closure}',
-                    'method' => null,
-                    'file' => __FILE__,
-                    'line' => __LINE__ - 5,
-                ),
-            ),
-
-            array(
-                'Static callback as string',
-                'Symfony\Component\HttpKernel\Tests\DataCollector\RequestDataCollectorTest::staticControllerMethod',
-                'Symfony\Component\HttpKernel\Tests\DataCollector\RequestDataCollectorTest::staticControllerMethod',
-            ),
-
-            array(
-                'Static callable with instance',
-                array($this, 'staticControllerMethod'),
-                array(
-                    'class' => 'Symfony\Component\HttpKernel\Tests\DataCollector\RequestDataCollectorTest',
-                    'method' => 'staticControllerMethod',
-                    'file' => __FILE__,
-                    'line' => $r2->getStartLine(),
-                ),
-            ),
-
-            array(
-                'Static callable with class name',
-                array('Symfony\Component\HttpKernel\Tests\DataCollector\RequestDataCollectorTest', 'staticControllerMethod'),
-                array(
-                    'class' => 'Symfony\Component\HttpKernel\Tests\DataCollector\RequestDataCollectorTest',
-                    'method' => 'staticControllerMethod',
-                    'file' => __FILE__,
-                    'line' => $r2->getStartLine(),
-                ),
-            ),
-
-            array(
-                'Callable with instance depending on __call()',
-                array($this, 'magicMethod'),
-                array(
-                    'class' => 'Symfony\Component\HttpKernel\Tests\DataCollector\RequestDataCollectorTest',
-                    'method' => 'magicMethod',
-                    'file' => 'n/a',
-                    'line' => 'n/a',
-                ),
-            ),
-
-            array(
-                'Callable with class name depending on __callStatic()',
-                array('Symfony\Component\HttpKernel\Tests\DataCollector\RequestDataCollectorTest', 'magicMethod'),
-                array(
-                    'class' => 'Symfony\Component\HttpKernel\Tests\DataCollector\RequestDataCollectorTest',
-                    'method' => 'magicMethod',
-                    'file' => 'n/a',
-                    'line' => 'n/a',
-                ),
-            ),
-
-            array(
-                'Invokable controller',
-                $this,
-                array(
-                    'class' => 'Symfony\Component\HttpKernel\Tests\DataCollector\RequestDataCollectorTest',
-                    'method' => null,
-                    'file' => __FILE__,
-                    'line' => $r3->getStartLine(),
-                ),
-            ),
-        );
-
-        $c = new RequestDataCollector();
-        $request = $this->createRequest();
-        $response = $this->createResponse();
-        foreach ($controllerTests as $controllerTest) {
-            $this->injectController($c, $controllerTest[1], $request);
-            $c->collect($request, $response);
-            $this->assertSame($controllerTest[2], $c->getController(), sprintf('Testing: %s', $controllerTest[0]));
-        }
-    }
-
-    protected function createRequest()
-    {
-        $request = Request::create('http://test.com/foo?bar=baz');
-        $request->attributes->set('foo', 'bar');
-        $request->attributes->set('_route', 'foobar');
-        $request->attributes->set('_route_params', array('name' => 'foo'));
-        $request->attributes->set('resource', fopen(__FILE__, 'r'));
-        $request->attributes->set('object', new \stdClass());
-
-        return $request;
-    }
-
-    protected function createResponse()
-    {
-        $response = new Response();
-        $response->setStatusCode(200);
-        $response->headers->set('Content-Type', 'application/json');
-        $response->headers->setCookie(new Cookie('foo', 'bar', 1, '/foo', 'localhost', true, true));
-        $response->headers->setCookie(new Cookie('bar', 'foo', new \DateTime('@946684800')));
-        $response->headers->setCookie(new Cookie('bazz', 'foo', '2000-12-12'));
-
-        return $response;
-    }
-
-    /**
-     * Inject the given controller callable into the data collector.
-     */
-    protected function injectController($collector, $controller, $request)
-    {
-        $resolver = $this->getMock('Symfony\\Component\\HttpKernel\\Controller\\ControllerResolverInterface');
-        $httpKernel = new HttpKernel(new EventDispatcher(), $resolver);
-        $event = new FilterControllerEvent($httpKernel, $controller, $request, HttpKernelInterface::MASTER_REQUEST);
-        $collector->onKernelController($event);
-    }
-
-    /**
-     * Dummy method used as controller callable.
-     */
-    public static function staticControllerMethod()
-    {
-        throw new \LogicException('Unexpected method call');
-    }
-
-    /**
-     * Magic method to allow non existing methods to be called and delegated.
-     */
-    public function __call($method, $args)
-    {
-        throw new \LogicException('Unexpected method call');
-    }
-
-    /**
-     * Magic method to allow non existing methods to be called and delegated.
-     */
-    public static function __callStatic($method, $args)
-    {
-        throw new \LogicException('Unexpected method call');
-    }
-
-    public function __invoke()
-    {
-        throw new \LogicException('Unexpected method call');
-    }
-}
diff --git a/vendor/symfony/http-kernel/Tests/DataCollector/TimeDataCollectorTest.php b/vendor/symfony/http-kernel/Tests/DataCollector/TimeDataCollectorTest.php
deleted file mode 100644
index b5d64bf..0000000
--- a/vendor/symfony/http-kernel/Tests/DataCollector/TimeDataCollectorTest.php
+++ /dev/null
@@ -1,51 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpKernel\Tests\DataCollector;
-
-use Symfony\Component\HttpKernel\DataCollector\TimeDataCollector;
-use Symfony\Component\HttpFoundation\Request;
-use Symfony\Component\HttpFoundation\Response;
-
-class TimeDataCollectorTest extends \PHPUnit_Framework_TestCase
-{
-    public function testCollect()
-    {
-        $c = new TimeDataCollector();
-
-        $request = new Request();
-        $request->server->set('REQUEST_TIME', 1);
-
-        $c->collect($request, new Response());
-
-        $this->assertEquals(1000, $c->getStartTime());
-
-        $request->server->set('REQUEST_TIME_FLOAT', 2);
-
-        $c->collect($request, new Response());
-
-        $this->assertEquals(2000, $c->getStartTime());
-
-        $request = new Request();
-        $c->collect($request, new Response());
-        $this->assertEquals(0, $c->getStartTime());
-
-        $kernel = $this->getMock('Symfony\Component\HttpKernel\KernelInterface');
-        $kernel->expects($this->once())->method('getStartTime')->will($this->returnValue(123456));
-
-        $c = new TimeDataCollector($kernel);
-        $request = new Request();
-        $request->server->set('REQUEST_TIME', 1);
-
-        $c->collect($request, new Response());
-        $this->assertEquals(123456000, $c->getStartTime());
-    }
-}
diff --git a/vendor/symfony/http-kernel/Tests/DataCollector/Util/ValueExporterTest.php b/vendor/symfony/http-kernel/Tests/DataCollector/Util/ValueExporterTest.php
deleted file mode 100644
index 8d3ddb4..0000000
--- a/vendor/symfony/http-kernel/Tests/DataCollector/Util/ValueExporterTest.php
+++ /dev/null
@@ -1,43 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpKernel\Tests\DataCollector\Util;
-
-use Symfony\Component\HttpKernel\DataCollector\Util\ValueExporter;
-
-class ValueExporterTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @var ValueExporter
-     */
-    private $valueExporter;
-
-    protected function setUp()
-    {
-        $this->valueExporter = new ValueExporter();
-    }
-
-    public function testDateTime()
-    {
-        $dateTime = new \DateTime('2014-06-10 07:35:40', new \DateTimeZone('UTC'));
-        $this->assertSame('Object(DateTime) - 2014-06-10T07:35:40+0000', $this->valueExporter->exportValue($dateTime));
-    }
-
-    public function testDateTimeImmutable()
-    {
-        if (!class_exists('DateTimeImmutable', false)) {
-            $this->markTestSkipped('Test skipped, class DateTimeImmutable does not exist.');
-        }
-
-        $dateTime = new \DateTimeImmutable('2014-06-10 07:35:40', new \DateTimeZone('UTC'));
-        $this->assertSame('Object(DateTimeImmutable) - 2014-06-10T07:35:40+0000', $this->valueExporter->exportValue($dateTime));
-    }
-}
diff --git a/vendor/symfony/http-kernel/Tests/Debug/TraceableEventDispatcherTest.php b/vendor/symfony/http-kernel/Tests/Debug/TraceableEventDispatcherTest.php
deleted file mode 100644
index f64d724..0000000
--- a/vendor/symfony/http-kernel/Tests/Debug/TraceableEventDispatcherTest.php
+++ /dev/null
@@ -1,117 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpKernel\Tests\Debug;
-
-use Symfony\Component\EventDispatcher\EventDispatcher;
-use Symfony\Component\HttpKernel\Debug\TraceableEventDispatcher;
-use Symfony\Component\HttpKernel\HttpKernel;
-use Symfony\Component\HttpFoundation\Request;
-use Symfony\Component\HttpFoundation\Response;
-use Symfony\Component\Stopwatch\Stopwatch;
-
-class TraceableEventDispatcherTest extends \PHPUnit_Framework_TestCase
-{
-    public function testStopwatchSections()
-    {
-        $dispatcher = new TraceableEventDispatcher(new EventDispatcher(), $stopwatch = new Stopwatch());
-        $kernel = $this->getHttpKernel($dispatcher, function () { return new Response(); });
-        $request = Request::create('/');
-        $response = $kernel->handle($request);
-        $kernel->terminate($request, $response);
-
-        $events = $stopwatch->getSectionEvents($response->headers->get('X-Debug-Token'));
-        $this->assertEquals(array(
-            '__section__',
-            'kernel.request',
-            'kernel.controller',
-            'controller',
-            'kernel.response',
-            'kernel.terminate',
-        ), array_keys($events));
-    }
-
-    public function testStopwatchCheckControllerOnRequestEvent()
-    {
-        $stopwatch = $this->getMockBuilder('Symfony\Component\Stopwatch\Stopwatch')
-            ->setMethods(array('isStarted'))
-            ->getMock();
-        $stopwatch->expects($this->once())
-            ->method('isStarted')
-            ->will($this->returnValue(false));
-
-        $dispatcher = new TraceableEventDispatcher(new EventDispatcher(), $stopwatch);
-
-        $kernel = $this->getHttpKernel($dispatcher, function () { return new Response(); });
-        $request = Request::create('/');
-        $kernel->handle($request);
-    }
-
-    public function testStopwatchStopControllerOnRequestEvent()
-    {
-        $stopwatch = $this->getMockBuilder('Symfony\Component\Stopwatch\Stopwatch')
-            ->setMethods(array('isStarted', 'stop', 'stopSection'))
-            ->getMock();
-        $stopwatch->expects($this->once())
-            ->method('isStarted')
-            ->will($this->returnValue(true));
-        $stopwatch->expects($this->once())
-            ->method('stop');
-        $stopwatch->expects($this->once())
-            ->method('stopSection');
-
-        $dispatcher = new TraceableEventDispatcher(new EventDispatcher(), $stopwatch);
-
-        $kernel = $this->getHttpKernel($dispatcher, function () { return new Response(); });
-        $request = Request::create('/');
-        $kernel->handle($request);
-    }
-
-    public function testAddListenerNested()
-    {
-        $called1 = false;
-        $called2 = false;
-        $dispatcher = new TraceableEventDispatcher(new EventDispatcher(), new Stopwatch());
-        $dispatcher->addListener('my-event', function () use ($dispatcher, &$called1, &$called2) {
-            $called1 = true;
-            $dispatcher->addListener('my-event', function () use (&$called2) {
-                $called2 = true;
-            });
-        });
-        $dispatcher->dispatch('my-event');
-        $this->assertTrue($called1);
-        $this->assertFalse($called2);
-        $dispatcher->dispatch('my-event');
-        $this->assertTrue($called2);
-    }
-
-    public function testListenerCanRemoveItselfWhenExecuted()
-    {
-        $eventDispatcher = new TraceableEventDispatcher(new EventDispatcher(), new Stopwatch());
-        $listener1 = function () use ($eventDispatcher, &$listener1) {
-            $eventDispatcher->removeListener('foo', $listener1);
-        };
-        $eventDispatcher->addListener('foo', $listener1);
-        $eventDispatcher->addListener('foo', function () {});
-        $eventDispatcher->dispatch('foo');
-
-        $this->assertCount(1, $eventDispatcher->getListeners('foo'), 'expected listener1 to be removed');
-    }
-
-    protected function getHttpKernel($dispatcher, $controller)
-    {
-        $resolver = $this->getMock('Symfony\Component\HttpKernel\Controller\ControllerResolverInterface');
-        $resolver->expects($this->once())->method('getController')->will($this->returnValue($controller));
-        $resolver->expects($this->once())->method('getArguments')->will($this->returnValue(array()));
-
-        return new HttpKernel($dispatcher, $resolver);
-    }
-}
diff --git a/vendor/symfony/http-kernel/Tests/DependencyInjection/ContainerAwareHttpKernelTest.php b/vendor/symfony/http-kernel/Tests/DependencyInjection/ContainerAwareHttpKernelTest.php
deleted file mode 100644
index c32f5bb..0000000
--- a/vendor/symfony/http-kernel/Tests/DependencyInjection/ContainerAwareHttpKernelTest.php
+++ /dev/null
@@ -1,168 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpKernel\Tests\DependencyInjection;
-
-use Symfony\Component\HttpKernel\HttpKernelInterface;
-use Symfony\Component\HttpKernel\DependencyInjection\ContainerAwareHttpKernel;
-use Symfony\Component\HttpFoundation\RequestStack;
-use Symfony\Component\HttpFoundation\Response;
-use Symfony\Component\HttpFoundation\Request;
-use Symfony\Component\EventDispatcher\EventDispatcher;
-
-/**
- * @group legacy
- */
-class ContainerAwareHttpKernelTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @dataProvider getProviderTypes
-     */
-    public function testHandle($type)
-    {
-        $request = new Request();
-        $expected = new Response();
-        $controller = function () use ($expected) {
-            return $expected;
-        };
-
-        $container = $this->getMock('Symfony\Component\DependencyInjection\ContainerInterface');
-        $this
-            ->expectsEnterScopeOnce($container)
-            ->expectsLeaveScopeOnce($container)
-            ->expectsSetRequestWithAt($container, $request, 3)
-            ->expectsSetRequestWithAt($container, null, 4)
-        ;
-
-        $dispatcher = new EventDispatcher();
-        $resolver = $this->getResolverMockFor($controller, $request);
-        $stack = new RequestStack();
-        $kernel = new ContainerAwareHttpKernel($dispatcher, $container, $resolver, $stack);
-
-        $actual = $kernel->handle($request, $type);
-
-        $this->assertSame($expected, $actual, '->handle() returns the response');
-    }
-
-    /**
-     * @dataProvider getProviderTypes
-     */
-    public function testVerifyRequestStackPushPopDuringHandle($type)
-    {
-        $request = new Request();
-        $expected = new Response();
-        $controller = function () use ($expected) {
-            return $expected;
-        };
-
-        $stack = $this->getMock('Symfony\Component\HttpFoundation\RequestStack', array('push', 'pop'));
-        $stack->expects($this->at(0))->method('push')->with($this->equalTo($request));
-        $stack->expects($this->at(1))->method('pop');
-
-        $container = $this->getMock('Symfony\Component\DependencyInjection\ContainerInterface');
-        $dispatcher = new EventDispatcher();
-        $resolver = $this->getResolverMockFor($controller, $request);
-        $kernel = new ContainerAwareHttpKernel($dispatcher, $container, $resolver, $stack);
-
-        $kernel->handle($request, $type);
-    }
-
-    /**
-     * @dataProvider getProviderTypes
-     */
-    public function testHandleRestoresThePreviousRequestOnException($type)
-    {
-        $request = new Request();
-        $expected = new \Exception();
-        $controller = function () use ($expected) {
-            throw $expected;
-        };
-
-        $container = $this->getMock('Symfony\Component\DependencyInjection\ContainerInterface');
-        $this
-            ->expectsEnterScopeOnce($container)
-            ->expectsLeaveScopeOnce($container)
-            ->expectsSetRequestWithAt($container, $request, 3)
-            ->expectsSetRequestWithAt($container, null, 4)
-        ;
-
-        $dispatcher = new EventDispatcher();
-        $resolver = $this->getMock('Symfony\\Component\\HttpKernel\\Controller\\ControllerResolverInterface');
-        $resolver = $this->getResolverMockFor($controller, $request);
-        $stack = new RequestStack();
-        $kernel = new ContainerAwareHttpKernel($dispatcher, $container, $resolver, $stack);
-
-        try {
-            $kernel->handle($request, $type);
-            $this->fail('->handle() suppresses the controller exception');
-        } catch (\PHPUnit_Framework_Exception $e) {
-            throw $e;
-        } catch (\Exception $e) {
-            $this->assertSame($expected, $e, '->handle() throws the controller exception');
-        }
-    }
-
-    public function getProviderTypes()
-    {
-        return array(
-            array(HttpKernelInterface::MASTER_REQUEST),
-            array(HttpKernelInterface::SUB_REQUEST),
-        );
-    }
-
-    private function getResolverMockFor($controller, $request)
-    {
-        $resolver = $this->getMock('Symfony\\Component\\HttpKernel\\Controller\\ControllerResolverInterface');
-        $resolver->expects($this->once())
-            ->method('getController')
-            ->with($request)
-            ->will($this->returnValue($controller));
-        $resolver->expects($this->once())
-            ->method('getArguments')
-            ->with($request, $controller)
-            ->will($this->returnValue(array()));
-
-        return $resolver;
-    }
-
-    private function expectsSetRequestWithAt($container, $with, $at)
-    {
-        $container
-            ->expects($this->at($at))
-            ->method('set')
-            ->with($this->equalTo('request'), $this->equalTo($with), $this->equalTo('request'))
-        ;
-
-        return $this;
-    }
-
-    private function expectsEnterScopeOnce($container)
-    {
-        $container
-            ->expects($this->once())
-            ->method('enterScope')
-            ->with($this->equalTo('request'))
-        ;
-
-        return $this;
-    }
-
-    private function expectsLeaveScopeOnce($container)
-    {
-        $container
-            ->expects($this->once())
-            ->method('leaveScope')
-            ->with($this->equalTo('request'))
-        ;
-
-        return $this;
-    }
-}
diff --git a/vendor/symfony/http-kernel/Tests/DependencyInjection/FragmentRendererPassTest.php b/vendor/symfony/http-kernel/Tests/DependencyInjection/FragmentRendererPassTest.php
deleted file mode 100644
index 3e2bfd0..0000000
--- a/vendor/symfony/http-kernel/Tests/DependencyInjection/FragmentRendererPassTest.php
+++ /dev/null
@@ -1,160 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpKernel\Tests\DependencyInjection;
-
-use Symfony\Component\DependencyInjection\Reference;
-use Symfony\Component\HttpFoundation\Request;
-use Symfony\Component\HttpKernel\DependencyInjection\FragmentRendererPass;
-use Symfony\Component\HttpKernel\Fragment\FragmentRendererInterface;
-
-class FragmentRendererPassTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @group legacy
-     */
-    public function testLegacyFragmentRedererWithoutAlias()
-    {
-        // no alias
-        $services = array(
-            'my_content_renderer' => array(array()),
-        );
-
-        $renderer = $this->getMock('Symfony\Component\DependencyInjection\Definition');
-        $renderer
-            ->expects($this->once())
-            ->method('addMethodCall')
-            ->with('addRenderer', array(new Reference('my_content_renderer')))
-        ;
-
-        $definition = $this->getMock('Symfony\Component\DependencyInjection\Definition');
-        $definition->expects($this->atLeastOnce())
-            ->method('getClass')
-            ->will($this->returnValue('Symfony\Component\HttpKernel\Tests\DependencyInjection\RendererService'));
-        $definition
-            ->expects($this->once())
-            ->method('isPublic')
-            ->will($this->returnValue(true))
-        ;
-
-        $builder = $this->getMock(
-            'Symfony\Component\DependencyInjection\ContainerBuilder',
-            array('hasDefinition', 'findTaggedServiceIds', 'getDefinition')
-        );
-        $builder->expects($this->any())
-            ->method('hasDefinition')
-            ->will($this->returnValue(true));
-
-        // We don't test kernel.fragment_renderer here
-        $builder->expects($this->atLeastOnce())
-            ->method('findTaggedServiceIds')
-            ->will($this->returnValue($services));
-
-        $builder->expects($this->atLeastOnce())
-            ->method('getDefinition')
-            ->will($this->onConsecutiveCalls($renderer, $definition));
-
-        $pass = new FragmentRendererPass();
-        $pass->process($builder);
-    }
-
-    /**
-     * Tests that content rendering not implementing FragmentRendererInterface
-     * trigger an exception.
-     *
-     * @expectedException \InvalidArgumentException
-     */
-    public function testContentRendererWithoutInterface()
-    {
-        // one service, not implementing any interface
-        $services = array(
-            'my_content_renderer' => array(array('alias' => 'foo')),
-        );
-
-        $definition = $this->getMock('Symfony\Component\DependencyInjection\Definition');
-
-        $builder = $this->getMock(
-            'Symfony\Component\DependencyInjection\ContainerBuilder',
-            array('hasDefinition', 'findTaggedServiceIds', 'getDefinition')
-        );
-        $builder->expects($this->any())
-            ->method('hasDefinition')
-            ->will($this->returnValue(true));
-
-        // We don't test kernel.fragment_renderer here
-        $builder->expects($this->atLeastOnce())
-            ->method('findTaggedServiceIds')
-            ->will($this->returnValue($services));
-
-        $builder->expects($this->atLeastOnce())
-            ->method('getDefinition')
-            ->will($this->returnValue($definition));
-
-        $pass = new FragmentRendererPass();
-        $pass->process($builder);
-    }
-
-    public function testValidContentRenderer()
-    {
-        $services = array(
-            'my_content_renderer' => array(array('alias' => 'foo')),
-        );
-
-        $renderer = $this->getMock('Symfony\Component\DependencyInjection\Definition');
-        $renderer
-            ->expects($this->once())
-            ->method('addMethodCall')
-            ->with('addRendererService', array('foo', 'my_content_renderer'))
-        ;
-
-        $definition = $this->getMock('Symfony\Component\DependencyInjection\Definition');
-        $definition->expects($this->atLeastOnce())
-            ->method('getClass')
-            ->will($this->returnValue('Symfony\Component\HttpKernel\Tests\DependencyInjection\RendererService'));
-        $definition
-            ->expects($this->once())
-            ->method('isPublic')
-            ->will($this->returnValue(true))
-        ;
-
-        $builder = $this->getMock(
-            'Symfony\Component\DependencyInjection\ContainerBuilder',
-            array('hasDefinition', 'findTaggedServiceIds', 'getDefinition')
-        );
-        $builder->expects($this->any())
-            ->method('hasDefinition')
-            ->will($this->returnValue(true));
-
-        // We don't test kernel.fragment_renderer here
-        $builder->expects($this->atLeastOnce())
-            ->method('findTaggedServiceIds')
-            ->will($this->returnValue($services));
-
-        $builder->expects($this->atLeastOnce())
-            ->method('getDefinition')
-            ->will($this->onConsecutiveCalls($renderer, $definition));
-
-        $pass = new FragmentRendererPass();
-        $pass->process($builder);
-    }
-}
-
-class RendererService implements FragmentRendererInterface
-{
-    public function render($uri, Request $request = null, array $options = array())
-    {
-    }
-
-    public function getName()
-    {
-        return 'test';
-    }
-}
diff --git a/vendor/symfony/http-kernel/Tests/DependencyInjection/LazyLoadingFragmentHandlerTest.php b/vendor/symfony/http-kernel/Tests/DependencyInjection/LazyLoadingFragmentHandlerTest.php
deleted file mode 100644
index 581db45..0000000
--- a/vendor/symfony/http-kernel/Tests/DependencyInjection/LazyLoadingFragmentHandlerTest.php
+++ /dev/null
@@ -1,40 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpKernel\Tests\DependencyInjection;
-
-use Symfony\Component\HttpKernel\DependencyInjection\LazyLoadingFragmentHandler;
-use Symfony\Component\HttpFoundation\Request;
-use Symfony\Component\HttpFoundation\Response;
-
-class LazyLoadingFragmentHandlerTest extends \PHPUnit_Framework_TestCase
-{
-    public function test()
-    {
-        $renderer = $this->getMock('Symfony\Component\HttpKernel\Fragment\FragmentRendererInterface');
-        $renderer->expects($this->once())->method('getName')->will($this->returnValue('foo'));
-        $renderer->expects($this->any())->method('render')->will($this->returnValue(new Response()));
-
-        $requestStack = $this->getMock('Symfony\Component\HttpFoundation\RequestStack');
-        $requestStack->expects($this->any())->method('getCurrentRequest')->will($this->returnValue(Request::create('/')));
-
-        $container = $this->getMock('Symfony\Component\DependencyInjection\ContainerInterface');
-        $container->expects($this->once())->method('get')->will($this->returnValue($renderer));
-
-        $handler = new LazyLoadingFragmentHandler($container, false, $requestStack);
-        $handler->addRendererService('foo', 'foo');
-
-        $handler->render('/foo', 'foo');
-
-        // second call should not lazy-load anymore (see once() above on the get() method)
-        $handler->render('/foo', 'foo');
-    }
-}
diff --git a/vendor/symfony/http-kernel/Tests/DependencyInjection/MergeExtensionConfigurationPassTest.php b/vendor/symfony/http-kernel/Tests/DependencyInjection/MergeExtensionConfigurationPassTest.php
deleted file mode 100644
index 3426f6f..0000000
--- a/vendor/symfony/http-kernel/Tests/DependencyInjection/MergeExtensionConfigurationPassTest.php
+++ /dev/null
@@ -1,57 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpKernel\Tests\DependencyInjection;
-
-use Symfony\Component\HttpKernel\DependencyInjection\MergeExtensionConfigurationPass;
-
-class MergeExtensionConfigurationPassTest extends \PHPUnit_Framework_TestCase
-{
-    public function testAutoloadMainExtension()
-    {
-        $container = $this->getMock(
-            'Symfony\\Component\\DependencyInjection\\ContainerBuilder',
-            array('getExtensionConfig', 'loadFromExtension', 'getParameterBag')
-        );
-        $params = $this->getMock('Symfony\\Component\\DependencyInjection\\ParameterBag\\ParameterBag');
-
-        $container->expects($this->at(0))
-            ->method('getExtensionConfig')
-            ->with('loaded')
-            ->will($this->returnValue(array(array())));
-        $container->expects($this->at(1))
-            ->method('getExtensionConfig')
-            ->with('notloaded')
-            ->will($this->returnValue(array()));
-        $container->expects($this->once())
-            ->method('loadFromExtension')
-            ->with('notloaded', array());
-
-        $container->expects($this->any())
-            ->method('getParameterBag')
-            ->will($this->returnValue($params));
-        $params->expects($this->any())
-            ->method('all')
-            ->will($this->returnValue(array()));
-        $container->expects($this->any())
-            ->method('getDefinitions')
-            ->will($this->returnValue(array()));
-        $container->expects($this->any())
-            ->method('getAliases')
-            ->will($this->returnValue(array()));
-        $container->expects($this->any())
-            ->method('getExtensions')
-            ->will($this->returnValue(array()));
-
-        $configPass = new MergeExtensionConfigurationPass(array('loaded', 'notloaded'));
-        $configPass->process($container);
-    }
-}
diff --git a/vendor/symfony/http-kernel/Tests/EventListener/AddRequestFormatsListenerTest.php b/vendor/symfony/http-kernel/Tests/EventListener/AddRequestFormatsListenerTest.php
deleted file mode 100644
index 3a82ce0..0000000
--- a/vendor/symfony/http-kernel/Tests/EventListener/AddRequestFormatsListenerTest.php
+++ /dev/null
@@ -1,83 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpKernel\Tests\EventListener;
-
-use Symfony\Component\HttpKernel\EventListener\AddRequestFormatsListener;
-use Symfony\Component\HttpFoundation\Request;
-use Symfony\Component\HttpKernel\KernelEvents;
-
-/**
- * Test AddRequestFormatsListener class.
- *
- * @author Gildas Quemener <gildas.quemener@gmail.com>
- */
-class AddRequestFormatsListenerTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @var AddRequestFormatsListener
-     */
-    private $listener;
-
-    protected function setUp()
-    {
-        $this->listener = new AddRequestFormatsListener(array('csv' => array('text/csv', 'text/plain')));
-    }
-
-    protected function tearDown()
-    {
-        $this->listener = null;
-    }
-
-    public function testIsAnEventSubscriber()
-    {
-        $this->assertInstanceOf('Symfony\Component\EventDispatcher\EventSubscriberInterface', $this->listener);
-    }
-
-    public function testRegisteredEvent()
-    {
-        $this->assertEquals(
-            array(KernelEvents::REQUEST => 'onKernelRequest'),
-            AddRequestFormatsListener::getSubscribedEvents()
-        );
-    }
-
-    public function testSetAdditionalFormats()
-    {
-        $request = $this->getRequestMock();
-        $event = $this->getGetResponseEventMock($request);
-
-        $request->expects($this->once())
-            ->method('setFormat')
-            ->with('csv', array('text/csv', 'text/plain'));
-
-        $this->listener->onKernelRequest($event);
-    }
-
-    protected function getRequestMock()
-    {
-        return $this->getMock('Symfony\Component\HttpFoundation\Request');
-    }
-
-    protected function getGetResponseEventMock(Request $request)
-    {
-        $event = $this
-            ->getMockBuilder('Symfony\Component\HttpKernel\Event\GetResponseEvent')
-            ->disableOriginalConstructor()
-            ->getMock();
-
-        $event->expects($this->any())
-            ->method('getRequest')
-            ->will($this->returnValue($request));
-
-        return $event;
-    }
-}
diff --git a/vendor/symfony/http-kernel/Tests/EventListener/DebugHandlersListenerTest.php b/vendor/symfony/http-kernel/Tests/EventListener/DebugHandlersListenerTest.php
deleted file mode 100644
index 4584a48..0000000
--- a/vendor/symfony/http-kernel/Tests/EventListener/DebugHandlersListenerTest.php
+++ /dev/null
@@ -1,106 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpKernel\Tests\EventListener;
-
-use Psr\Log\LogLevel;
-use Symfony\Component\Console\Event\ConsoleEvent;
-use Symfony\Component\Console\Command\Command;
-use Symfony\Component\Console\ConsoleEvents;
-use Symfony\Component\Console\Helper\HelperSet;
-use Symfony\Component\Console\Input\ArgvInput;
-use Symfony\Component\Console\Output\ConsoleOutput;
-use Symfony\Component\Debug\ErrorHandler;
-use Symfony\Component\Debug\ExceptionHandler;
-use Symfony\Component\EventDispatcher\EventDispatcher;
-use Symfony\Component\HttpKernel\EventListener\DebugHandlersListener;
-use Symfony\Component\HttpKernel\KernelEvents;
-
-/**
- * DebugHandlersListenerTest.
- *
- * @author Nicolas Grekas <p@tchwork.com>
- */
-class DebugHandlersListenerTest extends \PHPUnit_Framework_TestCase
-{
-    public function testConfigure()
-    {
-        $logger = $this->getMock('Psr\Log\LoggerInterface');
-        $userHandler = function () {};
-        $listener = new DebugHandlersListener($userHandler, $logger);
-        $xHandler = new ExceptionHandler();
-        $eHandler = new ErrorHandler();
-        $eHandler->setExceptionHandler(array($xHandler, 'handle'));
-
-        $exception = null;
-        set_error_handler(array($eHandler, 'handleError'));
-        set_exception_handler(array($eHandler, 'handleException'));
-        try {
-            $listener->configure();
-        } catch (\Exception $exception) {
-        }
-        restore_exception_handler();
-        restore_error_handler();
-
-        if (null !== $exception) {
-            throw $exception;
-        }
-
-        $this->assertSame($userHandler, $xHandler->setHandler('var_dump'));
-
-        $loggers = $eHandler->setLoggers(array());
-
-        $this->assertArrayHasKey(E_DEPRECATED, $loggers);
-        $this->assertSame(array($logger, LogLevel::INFO), $loggers[E_DEPRECATED]);
-    }
-
-    public function testConsoleEvent()
-    {
-        $dispatcher = new EventDispatcher();
-        $listener = new DebugHandlersListener(null);
-        $app = $this->getMock('Symfony\Component\Console\Application');
-        $app->expects($this->once())->method('getHelperSet')->will($this->returnValue(new HelperSet()));
-        $command = new Command(__FUNCTION__);
-        $command->setApplication($app);
-        $event = new ConsoleEvent($command, new ArgvInput(), new ConsoleOutput());
-
-        $dispatcher->addSubscriber($listener);
-
-        $xListeners = array(
-            KernelEvents::REQUEST => array(array($listener, 'configure')),
-            ConsoleEvents::COMMAND => array(array($listener, 'configure')),
-        );
-        $this->assertSame($xListeners, $dispatcher->getListeners());
-
-        $exception = null;
-        $eHandler = new ErrorHandler();
-        set_error_handler(array($eHandler, 'handleError'));
-        set_exception_handler(array($eHandler, 'handleException'));
-        try {
-            $dispatcher->dispatch(ConsoleEvents::COMMAND, $event);
-        } catch (\Exception $exception) {
-        }
-        restore_exception_handler();
-        restore_error_handler();
-
-        if (null !== $exception) {
-            throw $exception;
-        }
-
-        $xHandler = $eHandler->setExceptionHandler('var_dump');
-        $this->assertInstanceOf('Closure', $xHandler);
-
-        $app->expects($this->once())
-            ->method('renderException');
-
-        $xHandler(new \Exception());
-    }
-}
diff --git a/vendor/symfony/http-kernel/Tests/EventListener/DumpListenerTest.php b/vendor/symfony/http-kernel/Tests/EventListener/DumpListenerTest.php
deleted file mode 100644
index 9bbdade..0000000
--- a/vendor/symfony/http-kernel/Tests/EventListener/DumpListenerTest.php
+++ /dev/null
@@ -1,82 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpKernel\Tests\EventListener;
-
-use Symfony\Component\HttpKernel\EventListener\DumpListener;
-use Symfony\Component\HttpKernel\KernelEvents;
-use Symfony\Component\VarDumper\Cloner\ClonerInterface;
-use Symfony\Component\VarDumper\Cloner\Data;
-use Symfony\Component\VarDumper\Dumper\DataDumperInterface;
-use Symfony\Component\VarDumper\VarDumper;
-
-/**
- * DumpListenerTest.
- *
- * @author Nicolas Grekas <p@tchwork.com>
- */
-class DumpListenerTest extends \PHPUnit_Framework_TestCase
-{
-    public function testSubscribedEvents()
-    {
-        $this->assertSame(
-            array(KernelEvents::REQUEST => array('configure', 1024)),
-            DumpListener::getSubscribedEvents()
-        );
-    }
-
-    public function testConfigure()
-    {
-        $prevDumper = VarDumper::setHandler('var_dump');
-        VarDumper::setHandler($prevDumper);
-
-        $cloner = new MockCloner();
-        $dumper = new MockDumper();
-
-        ob_start();
-        $exception = null;
-        $listener = new DumpListener($cloner, $dumper);
-
-        try {
-            $listener->configure();
-
-            VarDumper::dump('foo');
-            VarDumper::dump('bar');
-
-            $this->assertSame('+foo-+bar-', ob_get_clean());
-        } catch (\Exception $exception) {
-        }
-
-        VarDumper::setHandler($prevDumper);
-
-        if (null !== $exception) {
-            throw $exception;
-        }
-    }
-}
-
-class MockCloner implements ClonerInterface
-{
-    public function cloneVar($var)
-    {
-        return new Data(array($var.'-'));
-    }
-}
-
-class MockDumper implements DataDumperInterface
-{
-    public function dump(Data $data)
-    {
-        $rawData = $data->getRawData();
-
-        echo '+'.$rawData[0];
-    }
-}
diff --git a/vendor/symfony/http-kernel/Tests/EventListener/ExceptionListenerTest.php b/vendor/symfony/http-kernel/Tests/EventListener/ExceptionListenerTest.php
deleted file mode 100644
index 8fb00f5..0000000
--- a/vendor/symfony/http-kernel/Tests/EventListener/ExceptionListenerTest.php
+++ /dev/null
@@ -1,146 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpKernel\Tests\EventListener;
-
-use Symfony\Component\HttpKernel\HttpKernelInterface;
-use Symfony\Component\HttpKernel\EventListener\ExceptionListener;
-use Symfony\Component\HttpKernel\Log\DebugLoggerInterface;
-use Symfony\Component\HttpKernel\Event\GetResponseForExceptionEvent;
-use Symfony\Component\HttpFoundation\Request;
-use Symfony\Component\HttpFoundation\Response;
-use Symfony\Component\HttpKernel\Tests\Logger;
-
-/**
- * ExceptionListenerTest.
- *
- * @author Robert Schönthal <seroscho@googlemail.com>
- */
-class ExceptionListenerTest extends \PHPUnit_Framework_TestCase
-{
-    public function testConstruct()
-    {
-        $logger = new TestLogger();
-        $l = new ExceptionListener('foo', $logger);
-
-        $_logger = new \ReflectionProperty(get_class($l), 'logger');
-        $_logger->setAccessible(true);
-        $_controller = new \ReflectionProperty(get_class($l), 'controller');
-        $_controller->setAccessible(true);
-
-        $this->assertSame($logger, $_logger->getValue($l));
-        $this->assertSame('foo', $_controller->getValue($l));
-    }
-
-    /**
-     * @dataProvider provider
-     */
-    public function testHandleWithoutLogger($event, $event2)
-    {
-        $this->iniSet('error_log', file_exists('/dev/null') ? '/dev/null' : 'nul');
-
-        $l = new ExceptionListener('foo');
-        $l->onKernelException($event);
-
-        $this->assertEquals(new Response('foo'), $event->getResponse());
-
-        try {
-            $l->onKernelException($event2);
-            $this->fail('RuntimeException expected');
-        } catch (\RuntimeException $e) {
-            $this->assertSame('bar', $e->getMessage());
-            $this->assertSame('foo', $e->getPrevious()->getMessage());
-        }
-    }
-
-    /**
-     * @dataProvider provider
-     */
-    public function testHandleWithLogger($event, $event2)
-    {
-        $logger = new TestLogger();
-
-        $l = new ExceptionListener('foo', $logger);
-        $l->onKernelException($event);
-
-        $this->assertEquals(new Response('foo'), $event->getResponse());
-
-        try {
-            $l->onKernelException($event2);
-            $this->fail('RuntimeException expected');
-        } catch (\RuntimeException $e) {
-            $this->assertSame('bar', $e->getMessage());
-            $this->assertSame('foo', $e->getPrevious()->getMessage());
-        }
-
-        $this->assertEquals(3, $logger->countErrors());
-        $this->assertCount(3, $logger->getLogs('critical'));
-    }
-
-    public function provider()
-    {
-        if (!class_exists('Symfony\Component\HttpFoundation\Request')) {
-            return array(array(null, null));
-        }
-
-        $request = new Request();
-        $exception = new \Exception('foo');
-        $event = new GetResponseForExceptionEvent(new TestKernel(), $request, 'foo', $exception);
-        $event2 = new GetResponseForExceptionEvent(new TestKernelThatThrowsException(), $request, 'foo', $exception);
-
-        return array(
-            array($event, $event2),
-        );
-    }
-
-    public function testSubRequestFormat()
-    {
-        $listener = new ExceptionListener('foo', $this->getMock('Psr\Log\LoggerInterface'));
-
-        $kernel = $this->getMock('Symfony\Component\HttpKernel\HttpKernelInterface');
-        $kernel->expects($this->once())->method('handle')->will($this->returnCallback(function (Request $request) {
-            return new Response($request->getRequestFormat());
-        }));
-
-        $request = Request::create('/');
-        $request->setRequestFormat('xml');
-
-        $event = new GetResponseForExceptionEvent($kernel, $request, 'foo', new \Exception('foo'));
-        $listener->onKernelException($event);
-
-        $response = $event->getResponse();
-        $this->assertEquals('xml', $response->getContent());
-    }
-}
-
-class TestLogger extends Logger implements DebugLoggerInterface
-{
-    public function countErrors()
-    {
-        return count($this->logs['critical']);
-    }
-}
-
-class TestKernel implements HttpKernelInterface
-{
-    public function handle(Request $request, $type = self::MASTER_REQUEST, $catch = true)
-    {
-        return new Response('foo');
-    }
-}
-
-class TestKernelThatThrowsException implements HttpKernelInterface
-{
-    public function handle(Request $request, $type = self::MASTER_REQUEST, $catch = true)
-    {
-        throw new \RuntimeException('bar');
-    }
-}
diff --git a/vendor/symfony/http-kernel/Tests/EventListener/FragmentListenerTest.php b/vendor/symfony/http-kernel/Tests/EventListener/FragmentListenerTest.php
deleted file mode 100644
index fd5d63b..0000000
--- a/vendor/symfony/http-kernel/Tests/EventListener/FragmentListenerTest.php
+++ /dev/null
@@ -1,96 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpKernel\Tests\EventListener;
-
-use Symfony\Component\HttpKernel\EventListener\FragmentListener;
-use Symfony\Component\HttpFoundation\Request;
-use Symfony\Component\HttpKernel\HttpKernelInterface;
-use Symfony\Component\HttpKernel\Event\GetResponseEvent;
-use Symfony\Component\HttpKernel\UriSigner;
-
-class FragmentListenerTest extends \PHPUnit_Framework_TestCase
-{
-    public function testOnlyTriggeredOnFragmentRoute()
-    {
-        $request = Request::create('http://example.com/foo?_path=foo%3Dbar%26_controller%3Dfoo');
-
-        $listener = new FragmentListener(new UriSigner('foo'));
-        $event = $this->createGetResponseEvent($request);
-
-        $expected = $request->attributes->all();
-
-        $listener->onKernelRequest($event);
-
-        $this->assertEquals($expected, $request->attributes->all());
-        $this->assertTrue($request->query->has('_path'));
-    }
-
-    public function testOnlyTriggeredIfControllerWasNotDefinedYet()
-    {
-        $request = Request::create('http://example.com/_fragment?_path=foo%3Dbar%26_controller%3Dfoo');
-        $request->attributes->set('_controller', 'bar');
-
-        $listener = new FragmentListener(new UriSigner('foo'));
-        $event = $this->createGetResponseEvent($request, HttpKernelInterface::SUB_REQUEST);
-
-        $expected = $request->attributes->all();
-
-        $listener->onKernelRequest($event);
-
-        $this->assertEquals($expected, $request->attributes->all());
-    }
-
-    /**
-     * @expectedException \Symfony\Component\HttpKernel\Exception\AccessDeniedHttpException
-     */
-    public function testAccessDeniedWithNonSafeMethods()
-    {
-        $request = Request::create('http://example.com/_fragment', 'POST');
-
-        $listener = new FragmentListener(new UriSigner('foo'));
-        $event = $this->createGetResponseEvent($request);
-
-        $listener->onKernelRequest($event);
-    }
-
-    /**
-     * @expectedException \Symfony\Component\HttpKernel\Exception\AccessDeniedHttpException
-     */
-    public function testAccessDeniedWithWrongSignature()
-    {
-        $request = Request::create('http://example.com/_fragment', 'GET', array(), array(), array(), array('REMOTE_ADDR' => '10.0.0.1'));
-
-        $listener = new FragmentListener(new UriSigner('foo'));
-        $event = $this->createGetResponseEvent($request);
-
-        $listener->onKernelRequest($event);
-    }
-
-    public function testWithSignature()
-    {
-        $signer = new UriSigner('foo');
-        $request = Request::create($signer->sign('http://example.com/_fragment?_path=foo%3Dbar%26_controller%3Dfoo'), 'GET', array(), array(), array(), array('REMOTE_ADDR' => '10.0.0.1'));
-
-        $listener = new FragmentListener($signer);
-        $event = $this->createGetResponseEvent($request);
-
-        $listener->onKernelRequest($event);
-
-        $this->assertEquals(array('foo' => 'bar', '_controller' => 'foo'), $request->attributes->get('_route_params'));
-        $this->assertFalse($request->query->has('_path'));
-    }
-
-    private function createGetResponseEvent(Request $request, $requestType = HttpKernelInterface::MASTER_REQUEST)
-    {
-        return new GetResponseEvent($this->getMock('Symfony\Component\HttpKernel\HttpKernelInterface'), $request, $requestType);
-    }
-}
diff --git a/vendor/symfony/http-kernel/Tests/EventListener/LocaleListenerTest.php b/vendor/symfony/http-kernel/Tests/EventListener/LocaleListenerTest.php
deleted file mode 100644
index ecc4eb0..0000000
--- a/vendor/symfony/http-kernel/Tests/EventListener/LocaleListenerTest.php
+++ /dev/null
@@ -1,103 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpKernel\Tests\EventListener;
-
-use Symfony\Component\HttpFoundation\RequestStack;
-use Symfony\Component\HttpFoundation\Request;
-use Symfony\Component\HttpKernel\EventListener\LocaleListener;
-use Symfony\Component\HttpKernel\HttpKernelInterface;
-use Symfony\Component\HttpKernel\Event\GetResponseEvent;
-
-class LocaleListenerTest extends \PHPUnit_Framework_TestCase
-{
-    private $requestStack;
-
-    protected function setUp()
-    {
-        $this->requestStack = $this->getMock('Symfony\Component\HttpFoundation\RequestStack', array(), array(), '', false);
-    }
-
-    public function testDefaultLocaleWithoutSession()
-    {
-        $listener = new LocaleListener('fr', null, $this->requestStack);
-        $event = $this->getEvent($request = Request::create('/'));
-
-        $listener->onKernelRequest($event);
-        $this->assertEquals('fr', $request->getLocale());
-    }
-
-    public function testLocaleFromRequestAttribute()
-    {
-        $request = Request::create('/');
-        session_name('foo');
-        $request->cookies->set('foo', 'value');
-
-        $request->attributes->set('_locale', 'es');
-        $listener = new LocaleListener('fr', null, $this->requestStack);
-        $event = $this->getEvent($request);
-
-        $listener->onKernelRequest($event);
-        $this->assertEquals('es', $request->getLocale());
-    }
-
-    public function testLocaleSetForRoutingContext()
-    {
-        // the request context is updated
-        $context = $this->getMock('Symfony\Component\Routing\RequestContext');
-        $context->expects($this->once())->method('setParameter')->with('_locale', 'es');
-
-        $router = $this->getMock('Symfony\Component\Routing\Router', array('getContext'), array(), '', false);
-        $router->expects($this->once())->method('getContext')->will($this->returnValue($context));
-
-        $request = Request::create('/');
-
-        $request->attributes->set('_locale', 'es');
-        $listener = new LocaleListener('fr', $router, $this->requestStack);
-        $listener->onKernelRequest($this->getEvent($request));
-    }
-
-    public function testRouterResetWithParentRequestOnKernelFinishRequest()
-    {
-        // the request context is updated
-        $context = $this->getMock('Symfony\Component\Routing\RequestContext');
-        $context->expects($this->once())->method('setParameter')->with('_locale', 'es');
-
-        $router = $this->getMock('Symfony\Component\Routing\Router', array('getContext'), array(), '', false);
-        $router->expects($this->once())->method('getContext')->will($this->returnValue($context));
-
-        $parentRequest = Request::create('/');
-        $parentRequest->setLocale('es');
-
-        $this->requestStack->expects($this->once())->method('getParentRequest')->will($this->returnValue($parentRequest));
-
-        $event = $this->getMock('Symfony\Component\HttpKernel\Event\FinishRequestEvent', array(), array(), '', false);
-
-        $listener = new LocaleListener('fr', $router, $this->requestStack);
-        $listener->onKernelFinishRequest($event);
-    }
-
-    public function testRequestLocaleIsNotOverridden()
-    {
-        $request = Request::create('/');
-        $request->setLocale('de');
-        $listener = new LocaleListener('fr', null, $this->requestStack);
-        $event = $this->getEvent($request);
-
-        $listener->onKernelRequest($event);
-        $this->assertEquals('de', $request->getLocale());
-    }
-
-    private function getEvent(Request $request)
-    {
-        return new GetResponseEvent($this->getMock('Symfony\Component\HttpKernel\HttpKernelInterface'), $request, HttpKernelInterface::MASTER_REQUEST);
-    }
-}
diff --git a/vendor/symfony/http-kernel/Tests/EventListener/ProfilerListenerTest.php b/vendor/symfony/http-kernel/Tests/EventListener/ProfilerListenerTest.php
deleted file mode 100644
index 261b7fa..0000000
--- a/vendor/symfony/http-kernel/Tests/EventListener/ProfilerListenerTest.php
+++ /dev/null
@@ -1,105 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpKernel\Tests\EventListener;
-
-use Symfony\Component\HttpFoundation\RequestStack;
-use Symfony\Component\HttpKernel\EventListener\ProfilerListener;
-use Symfony\Component\HttpKernel\Event\FilterResponseEvent;
-use Symfony\Component\HttpKernel\Event\GetResponseEvent;
-use Symfony\Component\HttpKernel\Event\GetResponseForExceptionEvent;
-use Symfony\Component\HttpKernel\Event\PostResponseEvent;
-use Symfony\Component\HttpKernel\Exception\HttpException;
-use Symfony\Component\HttpKernel\Kernel;
-
-class ProfilerListenerTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * Test to ensure BC without RequestStack.
-     *
-     * @group legacy
-     */
-    public function testLegacyEventsWithoutRequestStack()
-    {
-        $profile = $this->getMockBuilder('Symfony\Component\HttpKernel\Profiler\Profile')
-            ->disableOriginalConstructor()
-            ->getMock();
-
-        $profiler = $this->getMockBuilder('Symfony\Component\HttpKernel\Profiler\Profiler')
-            ->disableOriginalConstructor()
-            ->getMock();
-        $profiler->expects($this->once())
-            ->method('collect')
-            ->will($this->returnValue($profile));
-
-        $kernel = $this->getMock('Symfony\Component\HttpKernel\HttpKernelInterface');
-
-        $request = $this->getMockBuilder('Symfony\Component\HttpFoundation\Request')
-            ->disableOriginalConstructor()
-            ->getMock();
-
-        $response = $this->getMockBuilder('Symfony\Component\HttpFoundation\Response')
-            ->disableOriginalConstructor()
-            ->getMock();
-
-        $listener = new ProfilerListener($profiler);
-        $listener->onKernelRequest(new GetResponseEvent($kernel, $request, Kernel::MASTER_REQUEST));
-        $listener->onKernelResponse(new FilterResponseEvent($kernel, $request, Kernel::MASTER_REQUEST, $response));
-        $listener->onKernelTerminate(new PostResponseEvent($kernel, $request, $response));
-    }
-
-    /**
-     * Test a master and sub request with an exception and `onlyException` profiler option enabled.
-     */
-    public function testKernelTerminate()
-    {
-        $profile = $this->getMockBuilder('Symfony\Component\HttpKernel\Profiler\Profile')
-            ->disableOriginalConstructor()
-            ->getMock();
-
-        $profiler = $this->getMockBuilder('Symfony\Component\HttpKernel\Profiler\Profiler')
-            ->disableOriginalConstructor()
-            ->getMock();
-
-        $profiler->expects($this->once())
-            ->method('collect')
-            ->will($this->returnValue($profile));
-
-        $kernel = $this->getMock('Symfony\Component\HttpKernel\HttpKernelInterface');
-
-        $masterRequest = $this->getMockBuilder('Symfony\Component\HttpFoundation\Request')
-            ->disableOriginalConstructor()
-            ->getMock();
-
-        $subRequest = $this->getMockBuilder('Symfony\Component\HttpFoundation\Request')
-            ->disableOriginalConstructor()
-            ->getMock();
-
-        $response = $this->getMockBuilder('Symfony\Component\HttpFoundation\Response')
-            ->disableOriginalConstructor()
-            ->getMock();
-
-        $requestStack = new RequestStack();
-        $requestStack->push($masterRequest);
-
-        $onlyException = true;
-        $listener = new ProfilerListener($profiler, null, $onlyException, false, $requestStack);
-
-        // master request
-        $listener->onKernelResponse(new FilterResponseEvent($kernel, $masterRequest, Kernel::MASTER_REQUEST, $response));
-
-        // sub request
-        $listener->onKernelException(new GetResponseForExceptionEvent($kernel, $subRequest, Kernel::SUB_REQUEST, new HttpException(404)));
-        $listener->onKernelResponse(new FilterResponseEvent($kernel, $subRequest, Kernel::SUB_REQUEST, $response));
-
-        $listener->onKernelTerminate(new PostResponseEvent($kernel, $masterRequest, $response));
-    }
-}
diff --git a/vendor/symfony/http-kernel/Tests/EventListener/ResponseListenerTest.php b/vendor/symfony/http-kernel/Tests/EventListener/ResponseListenerTest.php
deleted file mode 100644
index 821688e..0000000
--- a/vendor/symfony/http-kernel/Tests/EventListener/ResponseListenerTest.php
+++ /dev/null
@@ -1,94 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpKernel\Tests\EventListener;
-
-use Symfony\Component\HttpKernel\EventListener\ResponseListener;
-use Symfony\Component\HttpFoundation\Request;
-use Symfony\Component\HttpFoundation\Response;
-use Symfony\Component\HttpKernel\HttpKernelInterface;
-use Symfony\Component\HttpKernel\Event\FilterResponseEvent;
-use Symfony\Component\HttpKernel\KernelEvents;
-use Symfony\Component\EventDispatcher\EventDispatcher;
-
-class ResponseListenerTest extends \PHPUnit_Framework_TestCase
-{
-    private $dispatcher;
-
-    private $kernel;
-
-    protected function setUp()
-    {
-        $this->dispatcher = new EventDispatcher();
-        $listener = new ResponseListener('UTF-8');
-        $this->dispatcher->addListener(KernelEvents::RESPONSE, array($listener, 'onKernelResponse'));
-
-        $this->kernel = $this->getMock('Symfony\Component\HttpKernel\HttpKernelInterface');
-    }
-
-    protected function tearDown()
-    {
-        $this->dispatcher = null;
-        $this->kernel = null;
-    }
-
-    public function testFilterDoesNothingForSubRequests()
-    {
-        $response = new Response('foo');
-
-        $event = new FilterResponseEvent($this->kernel, new Request(), HttpKernelInterface::SUB_REQUEST, $response);
-        $this->dispatcher->dispatch(KernelEvents::RESPONSE, $event);
-
-        $this->assertEquals('', $event->getResponse()->headers->get('content-type'));
-    }
-
-    public function testFilterSetsNonDefaultCharsetIfNotOverridden()
-    {
-        $listener = new ResponseListener('ISO-8859-15');
-        $this->dispatcher->addListener(KernelEvents::RESPONSE, array($listener, 'onKernelResponse'), 1);
-
-        $response = new Response('foo');
-
-        $event = new FilterResponseEvent($this->kernel, Request::create('/'), HttpKernelInterface::MASTER_REQUEST, $response);
-        $this->dispatcher->dispatch(KernelEvents::RESPONSE, $event);
-
-        $this->assertEquals('ISO-8859-15', $response->getCharset());
-    }
-
-    public function testFilterDoesNothingIfCharsetIsOverridden()
-    {
-        $listener = new ResponseListener('ISO-8859-15');
-        $this->dispatcher->addListener(KernelEvents::RESPONSE, array($listener, 'onKernelResponse'), 1);
-
-        $response = new Response('foo');
-        $response->setCharset('ISO-8859-1');
-
-        $event = new FilterResponseEvent($this->kernel, Request::create('/'), HttpKernelInterface::MASTER_REQUEST, $response);
-        $this->dispatcher->dispatch(KernelEvents::RESPONSE, $event);
-
-        $this->assertEquals('ISO-8859-1', $response->getCharset());
-    }
-
-    public function testFiltersSetsNonDefaultCharsetIfNotOverriddenOnNonTextContentType()
-    {
-        $listener = new ResponseListener('ISO-8859-15');
-        $this->dispatcher->addListener(KernelEvents::RESPONSE, array($listener, 'onKernelResponse'), 1);
-
-        $response = new Response('foo');
-        $request = Request::create('/');
-        $request->setRequestFormat('application/json');
-
-        $event = new FilterResponseEvent($this->kernel, $request, HttpKernelInterface::MASTER_REQUEST, $response);
-        $this->dispatcher->dispatch(KernelEvents::RESPONSE, $event);
-
-        $this->assertEquals('ISO-8859-15', $response->getCharset());
-    }
-}
diff --git a/vendor/symfony/http-kernel/Tests/EventListener/RouterListenerTest.php b/vendor/symfony/http-kernel/Tests/EventListener/RouterListenerTest.php
deleted file mode 100644
index 245b53a..0000000
--- a/vendor/symfony/http-kernel/Tests/EventListener/RouterListenerTest.php
+++ /dev/null
@@ -1,161 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpKernel\Tests\EventListener;
-
-use Symfony\Component\HttpFoundation\RequestStack;
-use Symfony\Component\HttpFoundation\Request;
-use Symfony\Component\HttpKernel\EventListener\RouterListener;
-use Symfony\Component\HttpKernel\HttpKernelInterface;
-use Symfony\Component\HttpKernel\Event\GetResponseEvent;
-use Symfony\Component\Routing\RequestContext;
-
-class RouterListenerTest extends \PHPUnit_Framework_TestCase
-{
-    private $requestStack;
-
-    protected function setUp()
-    {
-        $this->requestStack = $this->getMock('Symfony\Component\HttpFoundation\RequestStack', array(), array(), '', false);
-    }
-
-    /**
-     * @dataProvider getPortData
-     */
-    public function testPort($defaultHttpPort, $defaultHttpsPort, $uri, $expectedHttpPort, $expectedHttpsPort)
-    {
-        $urlMatcher = $this->getMockBuilder('Symfony\Component\Routing\Matcher\UrlMatcherInterface')
-                             ->disableOriginalConstructor()
-                             ->getMock();
-        $context = new RequestContext();
-        $context->setHttpPort($defaultHttpPort);
-        $context->setHttpsPort($defaultHttpsPort);
-        $urlMatcher->expects($this->any())
-                     ->method('getContext')
-                     ->will($this->returnValue($context));
-
-        $listener = new RouterListener($urlMatcher, null, null, $this->requestStack);
-        $event = $this->createGetResponseEventForUri($uri);
-        $listener->onKernelRequest($event);
-
-        $this->assertEquals($expectedHttpPort, $context->getHttpPort());
-        $this->assertEquals($expectedHttpsPort, $context->getHttpsPort());
-        $this->assertEquals(0 === strpos($uri, 'https') ? 'https' : 'http', $context->getScheme());
-    }
-
-    public function getPortData()
-    {
-        return array(
-            array(80, 443, 'http://localhost/', 80, 443),
-            array(80, 443, 'http://localhost:90/', 90, 443),
-            array(80, 443, 'https://localhost/', 80, 443),
-            array(80, 443, 'https://localhost:90/', 80, 90),
-        );
-    }
-
-    /**
-     * @param string $uri
-     *
-     * @return GetResponseEvent
-     */
-    private function createGetResponseEventForUri($uri)
-    {
-        $kernel = $this->getMock('Symfony\Component\HttpKernel\HttpKernelInterface');
-        $request = Request::create($uri);
-        $request->attributes->set('_controller', null); // Prevents going in to routing process
-
-        return new GetResponseEvent($kernel, $request, HttpKernelInterface::MASTER_REQUEST);
-    }
-
-    /**
-     * @expectedException \InvalidArgumentException
-     */
-    public function testInvalidMatcher()
-    {
-        new RouterListener(new \stdClass(), null, null, $this->requestStack);
-    }
-
-    public function testRequestMatcher()
-    {
-        $kernel = $this->getMock('Symfony\Component\HttpKernel\HttpKernelInterface');
-        $request = Request::create('http://localhost/');
-        $event = new GetResponseEvent($kernel, $request, HttpKernelInterface::MASTER_REQUEST);
-
-        $requestMatcher = $this->getMock('Symfony\Component\Routing\Matcher\RequestMatcherInterface');
-        $requestMatcher->expects($this->once())
-                       ->method('matchRequest')
-                       ->with($this->isInstanceOf('Symfony\Component\HttpFoundation\Request'))
-                       ->will($this->returnValue(array()));
-
-        $listener = new RouterListener($requestMatcher, new RequestContext(), null, $this->requestStack);
-        $listener->onKernelRequest($event);
-    }
-
-    public function testSubRequestWithDifferentMethod()
-    {
-        $kernel = $this->getMock('Symfony\Component\HttpKernel\HttpKernelInterface');
-        $request = Request::create('http://localhost/', 'post');
-        $event = new GetResponseEvent($kernel, $request, HttpKernelInterface::MASTER_REQUEST);
-
-        $requestMatcher = $this->getMock('Symfony\Component\Routing\Matcher\RequestMatcherInterface');
-        $requestMatcher->expects($this->any())
-                       ->method('matchRequest')
-                       ->with($this->isInstanceOf('Symfony\Component\HttpFoundation\Request'))
-                       ->will($this->returnValue(array()));
-
-        $context = new RequestContext();
-        $requestMatcher->expects($this->any())
-                       ->method('getContext')
-                       ->will($this->returnValue($context));
-
-        $listener = new RouterListener($requestMatcher, new RequestContext(), null, $this->requestStack);
-        $listener->onKernelRequest($event);
-
-        // sub-request with another HTTP method
-        $kernel = $this->getMock('Symfony\Component\HttpKernel\HttpKernelInterface');
-        $request = Request::create('http://localhost/', 'get');
-        $event = new GetResponseEvent($kernel, $request, HttpKernelInterface::SUB_REQUEST);
-
-        $listener->onKernelRequest($event);
-
-        $this->assertEquals('GET', $context->getMethod());
-    }
-
-    /**
-     * @dataProvider getLoggingParameterData
-     */
-    public function testLoggingParameter($parameter, $log)
-    {
-        $requestMatcher = $this->getMock('Symfony\Component\Routing\Matcher\RequestMatcherInterface');
-        $requestMatcher->expects($this->once())
-          ->method('matchRequest')
-          ->will($this->returnValue($parameter));
-
-        $logger = $this->getMock('Psr\Log\LoggerInterface');
-        $logger->expects($this->once())
-          ->method('info')
-          ->with($this->equalTo($log));
-
-        $kernel = $this->getMock('Symfony\Component\HttpKernel\HttpKernelInterface');
-        $request = Request::create('http://localhost/');
-
-        $listener = new RouterListener($requestMatcher, new RequestContext(), $logger, $this->requestStack);
-        $listener->onKernelRequest(new GetResponseEvent($kernel, $request, HttpKernelInterface::MASTER_REQUEST));
-    }
-
-    public function getLoggingParameterData()
-    {
-        return array(
-            array(array('_route' => 'foo'), 'Matched route "foo".'),
-            array(array(), 'Matched route "n/a".'),
-        );
-    }
-}
diff --git a/vendor/symfony/http-kernel/Tests/EventListener/SurrogateListenerTest.php b/vendor/symfony/http-kernel/Tests/EventListener/SurrogateListenerTest.php
deleted file mode 100644
index 1a0acf9..0000000
--- a/vendor/symfony/http-kernel/Tests/EventListener/SurrogateListenerTest.php
+++ /dev/null
@@ -1,66 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpKernel\Tests\EventListener;
-
-use Symfony\Component\HttpKernel\HttpCache\Esi;
-use Symfony\Component\HttpKernel\EventListener\SurrogateListener;
-use Symfony\Component\HttpKernel\Event\FilterResponseEvent;
-use Symfony\Component\HttpKernel\KernelEvents;
-use Symfony\Component\HttpKernel\HttpKernelInterface;
-use Symfony\Component\HttpFoundation\Response;
-use Symfony\Component\HttpFoundation\Request;
-use Symfony\Component\EventDispatcher\EventDispatcher;
-
-class SurrogateListenerTest extends \PHPUnit_Framework_TestCase
-{
-    public function testFilterDoesNothingForSubRequests()
-    {
-        $dispatcher = new EventDispatcher();
-        $kernel = $this->getMock('Symfony\Component\HttpKernel\HttpKernelInterface');
-        $response = new Response('foo <esi:include src="" />');
-        $listener = new SurrogateListener(new Esi());
-
-        $dispatcher->addListener(KernelEvents::RESPONSE, array($listener, 'onKernelResponse'));
-        $event = new FilterResponseEvent($kernel, new Request(), HttpKernelInterface::SUB_REQUEST, $response);
-        $dispatcher->dispatch(KernelEvents::RESPONSE, $event);
-
-        $this->assertEquals('', $event->getResponse()->headers->get('Surrogate-Control'));
-    }
-
-    public function testFilterWhenThereIsSomeEsiIncludes()
-    {
-        $dispatcher = new EventDispatcher();
-        $kernel = $this->getMock('Symfony\Component\HttpKernel\HttpKernelInterface');
-        $response = new Response('foo <esi:include src="" />');
-        $listener = new SurrogateListener(new Esi());
-
-        $dispatcher->addListener(KernelEvents::RESPONSE, array($listener, 'onKernelResponse'));
-        $event = new FilterResponseEvent($kernel, new Request(), HttpKernelInterface::MASTER_REQUEST, $response);
-        $dispatcher->dispatch(KernelEvents::RESPONSE, $event);
-
-        $this->assertEquals('content="ESI/1.0"', $event->getResponse()->headers->get('Surrogate-Control'));
-    }
-
-    public function testFilterWhenThereIsNoEsiIncludes()
-    {
-        $dispatcher = new EventDispatcher();
-        $kernel = $this->getMock('Symfony\Component\HttpKernel\HttpKernelInterface');
-        $response = new Response('foo');
-        $listener = new SurrogateListener(new Esi());
-
-        $dispatcher->addListener(KernelEvents::RESPONSE, array($listener, 'onKernelResponse'));
-        $event = new FilterResponseEvent($kernel, new Request(), HttpKernelInterface::MASTER_REQUEST, $response);
-        $dispatcher->dispatch(KernelEvents::RESPONSE, $event);
-
-        $this->assertEquals('', $event->getResponse()->headers->get('Surrogate-Control'));
-    }
-}
diff --git a/vendor/symfony/http-kernel/Tests/EventListener/TestSessionListenerTest.php b/vendor/symfony/http-kernel/Tests/EventListener/TestSessionListenerTest.php
deleted file mode 100644
index cbaaf5f..0000000
--- a/vendor/symfony/http-kernel/Tests/EventListener/TestSessionListenerTest.php
+++ /dev/null
@@ -1,132 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpKernel\Tests\EventListener;
-
-use Symfony\Component\HttpFoundation\Response;
-use Symfony\Component\HttpFoundation\Request;
-use Symfony\Component\HttpKernel\HttpKernelInterface;
-use Symfony\Component\HttpKernel\Event\FilterResponseEvent;
-use Symfony\Component\HttpFoundation\Session\SessionInterface;
-
-/**
- * SessionListenerTest.
- *
- * Tests SessionListener.
- *
- * @author Bulat Shakirzyanov <mallluhuct@gmail.com>
- */
-class TestSessionListenerTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @var TestSessionListener
-     */
-    private $listener;
-
-    /**
-     * @var SessionInterface
-     */
-    private $session;
-
-    protected function setUp()
-    {
-        $this->listener = $this->getMockForAbstractClass('Symfony\Component\HttpKernel\EventListener\TestSessionListener');
-        $this->session = $this->getSession();
-    }
-
-    public function testShouldSaveMasterRequestSession()
-    {
-        $this->sessionHasBeenStarted();
-        $this->sessionMustBeSaved();
-
-        $this->filterResponse(new Request());
-    }
-
-    public function testShouldNotSaveSubRequestSession()
-    {
-        $this->sessionMustNotBeSaved();
-
-        $this->filterResponse(new Request(), HttpKernelInterface::SUB_REQUEST);
-    }
-
-    public function testDoesNotDeleteCookieIfUsingSessionLifetime()
-    {
-        $this->sessionHasBeenStarted();
-
-        $params = session_get_cookie_params();
-        session_set_cookie_params(0, $params['path'], $params['domain'], $params['secure'], $params['httponly']);
-
-        $response = $this->filterResponse(new Request(), HttpKernelInterface::MASTER_REQUEST);
-        $cookies = $response->headers->getCookies();
-
-        $this->assertEquals(0, reset($cookies)->getExpiresTime());
-    }
-
-    public function testUnstartedSessionIsNotSave()
-    {
-        $this->sessionHasNotBeenStarted();
-        $this->sessionMustNotBeSaved();
-
-        $this->filterResponse(new Request());
-    }
-
-    private function filterResponse(Request $request, $type = HttpKernelInterface::MASTER_REQUEST)
-    {
-        $request->setSession($this->session);
-        $response = new Response();
-        $kernel = $this->getMock('Symfony\Component\HttpKernel\HttpKernelInterface');
-        $event = new FilterResponseEvent($kernel, $request, $type, $response);
-
-        $this->listener->onKernelResponse($event);
-
-        $this->assertSame($response, $event->getResponse());
-
-        return $response;
-    }
-
-    private function sessionMustNotBeSaved()
-    {
-        $this->session->expects($this->never())
-            ->method('save');
-    }
-
-    private function sessionMustBeSaved()
-    {
-        $this->session->expects($this->once())
-            ->method('save');
-    }
-
-    private function sessionHasBeenStarted()
-    {
-        $this->session->expects($this->once())
-            ->method('isStarted')
-            ->will($this->returnValue(true));
-    }
-
-    private function sessionHasNotBeenStarted()
-    {
-        $this->session->expects($this->once())
-            ->method('isStarted')
-            ->will($this->returnValue(false));
-    }
-
-    private function getSession()
-    {
-        $mock = $this->getMockBuilder('Symfony\Component\HttpFoundation\Session\Session')
-            ->disableOriginalConstructor()
-            ->getMock();
-
-        // set return value for getName()
-        $mock->expects($this->any())->method('getName')->will($this->returnValue('MOCKSESSID'));
-
-        return $mock;
-    }
-}
diff --git a/vendor/symfony/http-kernel/Tests/EventListener/TranslatorListenerTest.php b/vendor/symfony/http-kernel/Tests/EventListener/TranslatorListenerTest.php
deleted file mode 100644
index c37d647..0000000
--- a/vendor/symfony/http-kernel/Tests/EventListener/TranslatorListenerTest.php
+++ /dev/null
@@ -1,117 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpKernel\Tests\EventListener;
-
-use Symfony\Component\HttpFoundation\Request;
-use Symfony\Component\HttpKernel\Event\FinishRequestEvent;
-use Symfony\Component\HttpKernel\Event\GetResponseEvent;
-use Symfony\Component\HttpKernel\EventListener\TranslatorListener;
-use Symfony\Component\HttpKernel\HttpKernelInterface;
-
-class TranslatorListenerTest extends \PHPUnit_Framework_TestCase
-{
-    private $listener;
-    private $translator;
-    private $requestStack;
-
-    protected function setUp()
-    {
-        $this->translator = $this->getMock('Symfony\Component\Translation\TranslatorInterface');
-        $this->requestStack = $this->getMock('Symfony\Component\HttpFoundation\RequestStack');
-        $this->listener = new TranslatorListener($this->translator, $this->requestStack);
-    }
-
-    public function testLocaleIsSetInOnKernelRequest()
-    {
-        $this->translator
-            ->expects($this->once())
-            ->method('setLocale')
-            ->with($this->equalTo('fr'));
-
-        $event = new GetResponseEvent($this->createHttpKernel(), $this->createRequest('fr'), HttpKernelInterface::MASTER_REQUEST);
-        $this->listener->onKernelRequest($event);
-    }
-
-    public function testDefaultLocaleIsUsedOnExceptionsInOnKernelRequest()
-    {
-        $this->translator
-            ->expects($this->at(0))
-            ->method('setLocale')
-            ->will($this->throwException(new \InvalidArgumentException()));
-        $this->translator
-            ->expects($this->at(1))
-            ->method('setLocale')
-            ->with($this->equalTo('en'));
-
-        $event = new GetResponseEvent($this->createHttpKernel(), $this->createRequest('fr'), HttpKernelInterface::MASTER_REQUEST);
-        $this->listener->onKernelRequest($event);
-    }
-
-    public function testLocaleIsSetInOnKernelFinishRequestWhenParentRequestExists()
-    {
-        $this->translator
-            ->expects($this->once())
-            ->method('setLocale')
-            ->with($this->equalTo('fr'));
-
-        $this->setMasterRequest($this->createRequest('fr'));
-        $event = new FinishRequestEvent($this->createHttpKernel(), $this->createRequest('de'), HttpKernelInterface::SUB_REQUEST);
-        $this->listener->onKernelFinishRequest($event);
-    }
-
-    public function testLocaleIsNotSetInOnKernelFinishRequestWhenParentRequestDoesNotExist()
-    {
-        $this->translator
-            ->expects($this->never())
-            ->method('setLocale');
-
-        $event = new FinishRequestEvent($this->createHttpKernel(), $this->createRequest('de'), HttpKernelInterface::SUB_REQUEST);
-        $this->listener->onKernelFinishRequest($event);
-    }
-
-    public function testDefaultLocaleIsUsedOnExceptionsInOnKernelFinishRequest()
-    {
-        $this->translator
-            ->expects($this->at(0))
-            ->method('setLocale')
-            ->will($this->throwException(new \InvalidArgumentException()));
-        $this->translator
-            ->expects($this->at(1))
-            ->method('setLocale')
-            ->with($this->equalTo('en'));
-
-        $this->setMasterRequest($this->createRequest('fr'));
-        $event = new FinishRequestEvent($this->createHttpKernel(), $this->createRequest('de'), HttpKernelInterface::SUB_REQUEST);
-        $this->listener->onKernelFinishRequest($event);
-    }
-
-    private function createHttpKernel()
-    {
-        return $this->getMock('Symfony\Component\HttpKernel\HttpKernelInterface');
-    }
-
-    private function createRequest($locale)
-    {
-        $request = new Request();
-        $request->setLocale($locale);
-
-        return $request;
-    }
-
-    private function setMasterRequest($request)
-    {
-        $this->requestStack
-            ->expects($this->any())
-            ->method('getParentRequest')
-            ->will($this->returnValue($request));
-    }
-}
diff --git a/vendor/symfony/http-kernel/Tests/Fixtures/BaseBundle/Resources/foo.txt b/vendor/symfony/http-kernel/Tests/Fixtures/BaseBundle/Resources/foo.txt
deleted file mode 100644
index e69de29..0000000
diff --git a/vendor/symfony/http-kernel/Tests/Fixtures/BaseBundle/Resources/hide.txt b/vendor/symfony/http-kernel/Tests/Fixtures/BaseBundle/Resources/hide.txt
deleted file mode 100644
index e69de29..0000000
diff --git a/vendor/symfony/http-kernel/Tests/Fixtures/Bundle1Bundle/Resources/foo.txt b/vendor/symfony/http-kernel/Tests/Fixtures/Bundle1Bundle/Resources/foo.txt
deleted file mode 100644
index e69de29..0000000
diff --git a/vendor/symfony/http-kernel/Tests/Fixtures/Bundle1Bundle/bar.txt b/vendor/symfony/http-kernel/Tests/Fixtures/Bundle1Bundle/bar.txt
deleted file mode 100644
index e69de29..0000000
diff --git a/vendor/symfony/http-kernel/Tests/Fixtures/Bundle1Bundle/foo.txt b/vendor/symfony/http-kernel/Tests/Fixtures/Bundle1Bundle/foo.txt
deleted file mode 100644
index e69de29..0000000
diff --git a/vendor/symfony/http-kernel/Tests/Fixtures/Bundle2Bundle/foo.txt b/vendor/symfony/http-kernel/Tests/Fixtures/Bundle2Bundle/foo.txt
deleted file mode 100644
index e69de29..0000000
diff --git a/vendor/symfony/http-kernel/Tests/Fixtures/ChildBundle/Resources/foo.txt b/vendor/symfony/http-kernel/Tests/Fixtures/ChildBundle/Resources/foo.txt
deleted file mode 100644
index e69de29..0000000
diff --git a/vendor/symfony/http-kernel/Tests/Fixtures/ChildBundle/Resources/hide.txt b/vendor/symfony/http-kernel/Tests/Fixtures/ChildBundle/Resources/hide.txt
deleted file mode 100644
index e69de29..0000000
diff --git a/vendor/symfony/http-kernel/Tests/Fixtures/ExtensionAbsentBundle/ExtensionAbsentBundle.php b/vendor/symfony/http-kernel/Tests/Fixtures/ExtensionAbsentBundle/ExtensionAbsentBundle.php
deleted file mode 100644
index c8bfd36..0000000
--- a/vendor/symfony/http-kernel/Tests/Fixtures/ExtensionAbsentBundle/ExtensionAbsentBundle.php
+++ /dev/null
@@ -1,18 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpKernel\Tests\Fixtures\ExtensionAbsentBundle;
-
-use Symfony\Component\HttpKernel\Bundle\Bundle;
-
-class ExtensionAbsentBundle extends Bundle
-{
-}
diff --git a/vendor/symfony/http-kernel/Tests/Fixtures/ExtensionLoadedBundle/DependencyInjection/ExtensionLoadedExtension.php b/vendor/symfony/http-kernel/Tests/Fixtures/ExtensionLoadedBundle/DependencyInjection/ExtensionLoadedExtension.php
deleted file mode 100644
index 3b31781..0000000
--- a/vendor/symfony/http-kernel/Tests/Fixtures/ExtensionLoadedBundle/DependencyInjection/ExtensionLoadedExtension.php
+++ /dev/null
@@ -1,22 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpKernel\Tests\Fixtures\ExtensionLoadedBundle\DependencyInjection;
-
-use Symfony\Component\DependencyInjection\ContainerBuilder;
-use Symfony\Component\HttpKernel\DependencyInjection\Extension;
-
-class ExtensionLoadedExtension extends Extension
-{
-    public function load(array $configs, ContainerBuilder $container)
-    {
-    }
-}
diff --git a/vendor/symfony/http-kernel/Tests/Fixtures/ExtensionLoadedBundle/ExtensionLoadedBundle.php b/vendor/symfony/http-kernel/Tests/Fixtures/ExtensionLoadedBundle/ExtensionLoadedBundle.php
deleted file mode 100644
index 3af81cb..0000000
--- a/vendor/symfony/http-kernel/Tests/Fixtures/ExtensionLoadedBundle/ExtensionLoadedBundle.php
+++ /dev/null
@@ -1,18 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpKernel\Tests\Fixtures\ExtensionLoadedBundle;
-
-use Symfony\Component\HttpKernel\Bundle\Bundle;
-
-class ExtensionLoadedBundle extends Bundle
-{
-}
diff --git a/vendor/symfony/http-kernel/Tests/Fixtures/ExtensionNotValidBundle/DependencyInjection/ExtensionNotValidExtension.php b/vendor/symfony/http-kernel/Tests/Fixtures/ExtensionNotValidBundle/DependencyInjection/ExtensionNotValidExtension.php
deleted file mode 100644
index 0fd6431..0000000
--- a/vendor/symfony/http-kernel/Tests/Fixtures/ExtensionNotValidBundle/DependencyInjection/ExtensionNotValidExtension.php
+++ /dev/null
@@ -1,20 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpKernel\Tests\Fixtures\ExtensionNotValidBundle\DependencyInjection;
-
-class ExtensionNotValidExtension
-{
-    public function getAlias()
-    {
-        return 'extension_not_valid';
-    }
-}
diff --git a/vendor/symfony/http-kernel/Tests/Fixtures/ExtensionNotValidBundle/ExtensionNotValidBundle.php b/vendor/symfony/http-kernel/Tests/Fixtures/ExtensionNotValidBundle/ExtensionNotValidBundle.php
deleted file mode 100644
index 34e2920..0000000
--- a/vendor/symfony/http-kernel/Tests/Fixtures/ExtensionNotValidBundle/ExtensionNotValidBundle.php
+++ /dev/null
@@ -1,18 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpKernel\Tests\Fixtures\ExtensionNotValidBundle;
-
-use Symfony\Component\HttpKernel\Bundle\Bundle;
-
-class ExtensionNotValidBundle extends Bundle
-{
-}
diff --git a/vendor/symfony/http-kernel/Tests/Fixtures/ExtensionPresentBundle/Command/BarCommand.php b/vendor/symfony/http-kernel/Tests/Fixtures/ExtensionPresentBundle/Command/BarCommand.php
deleted file mode 100644
index f3fd14b..0000000
--- a/vendor/symfony/http-kernel/Tests/Fixtures/ExtensionPresentBundle/Command/BarCommand.php
+++ /dev/null
@@ -1,18 +0,0 @@
-<?php
-
-namespace Symfony\Component\HttpKernel\Tests\Fixtures\ExtensionPresentBundle\Command;
-
-use Symfony\Component\Console\Command\Command;
-use Symfony\Component\HttpKernel\Bundle;
-
-/**
- * This command has a required parameter on the constructor and will be ignored by the default Bundle implementation.
- *
- * @see Bundle::registerCommands()
- */
-class BarCommand extends Command
-{
-    public function __construct($example, $name = 'bar')
-    {
-    }
-}
diff --git a/vendor/symfony/http-kernel/Tests/Fixtures/ExtensionPresentBundle/Command/FooCommand.php b/vendor/symfony/http-kernel/Tests/Fixtures/ExtensionPresentBundle/Command/FooCommand.php
deleted file mode 100644
index c6570aa..0000000
--- a/vendor/symfony/http-kernel/Tests/Fixtures/ExtensionPresentBundle/Command/FooCommand.php
+++ /dev/null
@@ -1,22 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien.potencier@symfony-project.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpKernel\Tests\Fixtures\ExtensionPresentBundle\Command;
-
-use Symfony\Component\Console\Command\Command;
-
-class FooCommand extends Command
-{
-    protected function configure()
-    {
-        $this->setName('foo');
-    }
-}
diff --git a/vendor/symfony/http-kernel/Tests/Fixtures/ExtensionPresentBundle/DependencyInjection/ExtensionPresentExtension.php b/vendor/symfony/http-kernel/Tests/Fixtures/ExtensionPresentBundle/DependencyInjection/ExtensionPresentExtension.php
deleted file mode 100644
index e42f816..0000000
--- a/vendor/symfony/http-kernel/Tests/Fixtures/ExtensionPresentBundle/DependencyInjection/ExtensionPresentExtension.php
+++ /dev/null
@@ -1,22 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpKernel\Tests\Fixtures\ExtensionPresentBundle\DependencyInjection;
-
-use Symfony\Component\DependencyInjection\ContainerBuilder;
-use Symfony\Component\HttpKernel\DependencyInjection\Extension;
-
-class ExtensionPresentExtension extends Extension
-{
-    public function load(array $configs, ContainerBuilder $container)
-    {
-    }
-}
diff --git a/vendor/symfony/http-kernel/Tests/Fixtures/ExtensionPresentBundle/ExtensionPresentBundle.php b/vendor/symfony/http-kernel/Tests/Fixtures/ExtensionPresentBundle/ExtensionPresentBundle.php
deleted file mode 100644
index 36a7ad4..0000000
--- a/vendor/symfony/http-kernel/Tests/Fixtures/ExtensionPresentBundle/ExtensionPresentBundle.php
+++ /dev/null
@@ -1,18 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpKernel\Tests\Fixtures\ExtensionPresentBundle;
-
-use Symfony\Component\HttpKernel\Bundle\Bundle;
-
-class ExtensionPresentBundle extends Bundle
-{
-}
diff --git a/vendor/symfony/http-kernel/Tests/Fixtures/FooBarBundle.php b/vendor/symfony/http-kernel/Tests/Fixtures/FooBarBundle.php
deleted file mode 100644
index f940f83..0000000
--- a/vendor/symfony/http-kernel/Tests/Fixtures/FooBarBundle.php
+++ /dev/null
@@ -1,19 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpKernel\Tests\Fixtures;
-
-use Symfony\Component\HttpKernel\Bundle\Bundle;
-
-class FooBarBundle extends Bundle
-{
-    // We need a full namespaced bundle instance to test isClassInActiveBundle
-}
diff --git a/vendor/symfony/http-kernel/Tests/Fixtures/KernelForOverrideName.php b/vendor/symfony/http-kernel/Tests/Fixtures/KernelForOverrideName.php
deleted file mode 100644
index a1102ab..0000000
--- a/vendor/symfony/http-kernel/Tests/Fixtures/KernelForOverrideName.php
+++ /dev/null
@@ -1,28 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpKernel\Tests\Fixtures;
-
-use Symfony\Component\HttpKernel\Kernel;
-use Symfony\Component\Config\Loader\LoaderInterface;
-
-class KernelForOverrideName extends Kernel
-{
-    protected $name = 'overridden';
-
-    public function registerBundles()
-    {
-    }
-
-    public function registerContainerConfiguration(LoaderInterface $loader)
-    {
-    }
-}
diff --git a/vendor/symfony/http-kernel/Tests/Fixtures/KernelForTest.php b/vendor/symfony/http-kernel/Tests/Fixtures/KernelForTest.php
deleted file mode 100644
index 5fd61bb..0000000
--- a/vendor/symfony/http-kernel/Tests/Fixtures/KernelForTest.php
+++ /dev/null
@@ -1,37 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpKernel\Tests\Fixtures;
-
-use Symfony\Component\HttpKernel\Kernel;
-use Symfony\Component\Config\Loader\LoaderInterface;
-
-class KernelForTest extends Kernel
-{
-    public function getBundleMap()
-    {
-        return $this->bundleMap;
-    }
-
-    public function registerBundles()
-    {
-        return array();
-    }
-
-    public function registerContainerConfiguration(LoaderInterface $loader)
-    {
-    }
-
-    public function isBooted()
-    {
-        return $this->booted;
-    }
-}
diff --git a/vendor/symfony/http-kernel/Tests/Fixtures/Resources/BaseBundle/hide.txt b/vendor/symfony/http-kernel/Tests/Fixtures/Resources/BaseBundle/hide.txt
deleted file mode 100644
index e69de29..0000000
diff --git a/vendor/symfony/http-kernel/Tests/Fixtures/Resources/Bundle1Bundle/foo.txt b/vendor/symfony/http-kernel/Tests/Fixtures/Resources/Bundle1Bundle/foo.txt
deleted file mode 100644
index e69de29..0000000
diff --git a/vendor/symfony/http-kernel/Tests/Fixtures/Resources/ChildBundle/foo.txt b/vendor/symfony/http-kernel/Tests/Fixtures/Resources/ChildBundle/foo.txt
deleted file mode 100644
index e69de29..0000000
diff --git a/vendor/symfony/http-kernel/Tests/Fixtures/Resources/FooBundle/foo.txt b/vendor/symfony/http-kernel/Tests/Fixtures/Resources/FooBundle/foo.txt
deleted file mode 100644
index e69de29..0000000
diff --git a/vendor/symfony/http-kernel/Tests/Fixtures/TestClient.php b/vendor/symfony/http-kernel/Tests/Fixtures/TestClient.php
deleted file mode 100644
index e7d60cf..0000000
--- a/vendor/symfony/http-kernel/Tests/Fixtures/TestClient.php
+++ /dev/null
@@ -1,31 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpKernel\Tests\Fixtures;
-
-use Symfony\Component\HttpKernel\Client;
-
-class TestClient extends Client
-{
-    protected function getScript($request)
-    {
-        $script = parent::getScript($request);
-
-        $autoload = file_exists(__DIR__.'/../../vendor/autoload.php')
-            ? __DIR__.'/../../vendor/autoload.php'
-            : __DIR__.'/../../../../../../vendor/autoload.php'
-        ;
-
-        $script = preg_replace('/(\->register\(\);)/', "$0\nrequire_once '$autoload';\n", $script);
-
-        return $script;
-    }
-}
diff --git a/vendor/symfony/http-kernel/Tests/Fixtures/TestEventDispatcher.php b/vendor/symfony/http-kernel/Tests/Fixtures/TestEventDispatcher.php
deleted file mode 100644
index da7ef5b..0000000
--- a/vendor/symfony/http-kernel/Tests/Fixtures/TestEventDispatcher.php
+++ /dev/null
@@ -1,28 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpKernel\Tests\Fixtures;
-
-use Symfony\Component\EventDispatcher\Debug\TraceableEventDispatcherInterface;
-use Symfony\Component\EventDispatcher\EventDispatcher;
-
-class TestEventDispatcher extends EventDispatcher implements TraceableEventDispatcherInterface
-{
-    public function getCalledListeners()
-    {
-        return array('foo');
-    }
-
-    public function getNotCalledListeners()
-    {
-        return array('bar');
-    }
-}
diff --git a/vendor/symfony/http-kernel/Tests/Fragment/EsiFragmentRendererTest.php b/vendor/symfony/http-kernel/Tests/Fragment/EsiFragmentRendererTest.php
deleted file mode 100644
index 90768f9..0000000
--- a/vendor/symfony/http-kernel/Tests/Fragment/EsiFragmentRendererTest.php
+++ /dev/null
@@ -1,103 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpKernel\Tests\Fragment;
-
-use Symfony\Component\HttpKernel\Controller\ControllerReference;
-use Symfony\Component\HttpKernel\Fragment\EsiFragmentRenderer;
-use Symfony\Component\HttpKernel\HttpCache\Esi;
-use Symfony\Component\HttpFoundation\Request;
-use Symfony\Component\HttpKernel\UriSigner;
-
-class EsiFragmentRendererTest extends \PHPUnit_Framework_TestCase
-{
-    public function testRenderFallbackToInlineStrategyIfNoRequest()
-    {
-        $strategy = new EsiFragmentRenderer(new Esi(), $this->getInlineStrategy(true));
-        $strategy->render('/', Request::create('/'));
-    }
-
-    public function testRenderFallbackToInlineStrategyIfEsiNotSupported()
-    {
-        $strategy = new EsiFragmentRenderer(new Esi(), $this->getInlineStrategy(true));
-        $strategy->render('/', Request::create('/'));
-    }
-
-    public function testRender()
-    {
-        $strategy = new EsiFragmentRenderer(new Esi(), $this->getInlineStrategy());
-
-        $request = Request::create('/');
-        $request->setLocale('fr');
-        $request->headers->set('Surrogate-Capability', 'ESI/1.0');
-
-        $this->assertEquals('<esi:include src="/" />', $strategy->render('/', $request)->getContent());
-        $this->assertEquals("<esi:comment text=\"This is a comment\" />\n<esi:include src=\"/\" />", $strategy->render('/', $request, array('comment' => 'This is a comment'))->getContent());
-        $this->assertEquals('<esi:include src="/" alt="foo" />', $strategy->render('/', $request, array('alt' => 'foo'))->getContent());
-    }
-
-    public function testRenderControllerReference()
-    {
-        $signer = new UriSigner('foo');
-        $strategy = new EsiFragmentRenderer(new Esi(), $this->getInlineStrategy(), $signer);
-
-        $request = Request::create('/');
-        $request->setLocale('fr');
-        $request->headers->set('Surrogate-Capability', 'ESI/1.0');
-
-        $reference = new ControllerReference('main_controller', array(), array());
-        $altReference = new ControllerReference('alt_controller', array(), array());
-
-        $this->assertEquals(
-            '<esi:include src="/_fragment?_path=_format%3Dhtml%26_locale%3Dfr%26_controller%3Dmain_controller&_hash=Jz1P8NErmhKTeI6onI1EdAXTB85359MY3RIk5mSJ60w%3D" alt="/_fragment?_path=_format%3Dhtml%26_locale%3Dfr%26_controller%3Dalt_controller&_hash=iPJEdRoUpGrM1ztqByiorpfMPtiW%2FOWwdH1DBUXHhEc%3D" />',
-            $strategy->render($reference, $request, array('alt' => $altReference))->getContent()
-        );
-    }
-
-    /**
-     * @expectedException \LogicException
-     */
-    public function testRenderControllerReferenceWithoutSignerThrowsException()
-    {
-        $strategy = new EsiFragmentRenderer(new Esi(), $this->getInlineStrategy());
-
-        $request = Request::create('/');
-        $request->setLocale('fr');
-        $request->headers->set('Surrogate-Capability', 'ESI/1.0');
-
-        $strategy->render(new ControllerReference('main_controller'), $request);
-    }
-
-    /**
-     * @expectedException \LogicException
-     */
-    public function testRenderAltControllerReferenceWithoutSignerThrowsException()
-    {
-        $strategy = new EsiFragmentRenderer(new Esi(), $this->getInlineStrategy());
-
-        $request = Request::create('/');
-        $request->setLocale('fr');
-        $request->headers->set('Surrogate-Capability', 'ESI/1.0');
-
-        $strategy->render('/', $request, array('alt' => new ControllerReference('alt_controller')));
-    }
-
-    private function getInlineStrategy($called = false)
-    {
-        $inline = $this->getMockBuilder('Symfony\Component\HttpKernel\Fragment\InlineFragmentRenderer')->disableOriginalConstructor()->getMock();
-
-        if ($called) {
-            $inline->expects($this->once())->method('render');
-        }
-
-        return $inline;
-    }
-}
diff --git a/vendor/symfony/http-kernel/Tests/Fragment/FragmentHandlerTest.php b/vendor/symfony/http-kernel/Tests/Fragment/FragmentHandlerTest.php
deleted file mode 100644
index b2903b8..0000000
--- a/vendor/symfony/http-kernel/Tests/Fragment/FragmentHandlerTest.php
+++ /dev/null
@@ -1,95 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpKernel\Tests\Fragment;
-
-use Symfony\Component\HttpKernel\Fragment\FragmentHandler;
-use Symfony\Component\HttpFoundation\Request;
-use Symfony\Component\HttpFoundation\Response;
-
-class FragmentHandlerTest extends \PHPUnit_Framework_TestCase
-{
-    private $requestStack;
-
-    protected function setUp()
-    {
-        $this->requestStack = $this->getMockBuilder('Symfony\\Component\\HttpFoundation\\RequestStack')
-            ->disableOriginalConstructor()
-            ->getMock()
-        ;
-        $this->requestStack
-            ->expects($this->any())
-            ->method('getCurrentRequest')
-            ->will($this->returnValue(Request::create('/')))
-        ;
-    }
-
-    /**
-     * @expectedException \InvalidArgumentException
-     */
-    public function testRenderWhenRendererDoesNotExist()
-    {
-        $handler = new FragmentHandler(array(), null, $this->requestStack);
-        $handler->render('/', 'foo');
-    }
-
-    /**
-     * @expectedException \InvalidArgumentException
-     */
-    public function testRenderWithUnknownRenderer()
-    {
-        $handler = $this->getHandler($this->returnValue(new Response('foo')));
-
-        $handler->render('/', 'bar');
-    }
-
-    /**
-     * @expectedException \RuntimeException
-     * @expectedExceptionMessage Error when rendering "http://localhost/" (Status code is 404).
-     */
-    public function testDeliverWithUnsuccessfulResponse()
-    {
-        $handler = $this->getHandler($this->returnValue(new Response('foo', 404)));
-
-        $handler->render('/', 'foo');
-    }
-
-    public function testRender()
-    {
-        $handler = $this->getHandler($this->returnValue(new Response('foo')), array('/', Request::create('/'), array('foo' => 'foo', 'ignore_errors' => true)));
-
-        $this->assertEquals('foo', $handler->render('/', 'foo', array('foo' => 'foo')));
-    }
-
-    protected function getHandler($returnValue, $arguments = array())
-    {
-        $renderer = $this->getMock('Symfony\Component\HttpKernel\Fragment\FragmentRendererInterface');
-        $renderer
-            ->expects($this->any())
-            ->method('getName')
-            ->will($this->returnValue('foo'))
-        ;
-        $e = $renderer
-            ->expects($this->any())
-            ->method('render')
-            ->will($returnValue)
-        ;
-
-        if ($arguments) {
-            call_user_func_array(array($e, 'with'), $arguments);
-        }
-
-        $handler = new FragmentHandler(array(), null, $this->requestStack);
-        $handler->addRenderer($renderer);
-
-        return $handler;
-    }
-}
diff --git a/vendor/symfony/http-kernel/Tests/Fragment/HIncludeFragmentRendererTest.php b/vendor/symfony/http-kernel/Tests/Fragment/HIncludeFragmentRendererTest.php
deleted file mode 100644
index 2f266db..0000000
--- a/vendor/symfony/http-kernel/Tests/Fragment/HIncludeFragmentRendererTest.php
+++ /dev/null
@@ -1,88 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpKernel\Tests\Fragment;
-
-use Symfony\Component\HttpKernel\Controller\ControllerReference;
-use Symfony\Component\HttpKernel\Fragment\HIncludeFragmentRenderer;
-use Symfony\Component\HttpKernel\UriSigner;
-use Symfony\Component\HttpFoundation\Request;
-
-class HIncludeFragmentRendererTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @expectedException \LogicException
-     */
-    public function testRenderExceptionWhenControllerAndNoSigner()
-    {
-        $strategy = new HIncludeFragmentRenderer();
-        $strategy->render(new ControllerReference('main_controller', array(), array()), Request::create('/'));
-    }
-
-    public function testRenderWithControllerAndSigner()
-    {
-        $strategy = new HIncludeFragmentRenderer(null, new UriSigner('foo'));
-
-        $this->assertEquals('<hx:include src="/_fragment?_path=_format%3Dhtml%26_locale%3Den%26_controller%3Dmain_controller&amp;_hash=BP%2BOzCD5MRUI%2BHJpgPDOmoju00FnzLhP3TGcSHbbBLs%3D"></hx:include>', $strategy->render(new ControllerReference('main_controller', array(), array()), Request::create('/'))->getContent());
-    }
-
-    public function testRenderWithUri()
-    {
-        $strategy = new HIncludeFragmentRenderer();
-        $this->assertEquals('<hx:include src="/foo"></hx:include>', $strategy->render('/foo', Request::create('/'))->getContent());
-
-        $strategy = new HIncludeFragmentRenderer(null, new UriSigner('foo'));
-        $this->assertEquals('<hx:include src="/foo"></hx:include>', $strategy->render('/foo', Request::create('/'))->getContent());
-    }
-
-    public function testRenderWithDefault()
-    {
-        // only default
-        $strategy = new HIncludeFragmentRenderer();
-        $this->assertEquals('<hx:include src="/foo">default</hx:include>', $strategy->render('/foo', Request::create('/'), array('default' => 'default'))->getContent());
-
-        // only global default
-        $strategy = new HIncludeFragmentRenderer(null, null, 'global_default');
-        $this->assertEquals('<hx:include src="/foo">global_default</hx:include>', $strategy->render('/foo', Request::create('/'), array())->getContent());
-
-        // global default and default
-        $strategy = new HIncludeFragmentRenderer(null, null, 'global_default');
-        $this->assertEquals('<hx:include src="/foo">default</hx:include>', $strategy->render('/foo', Request::create('/'), array('default' => 'default'))->getContent());
-    }
-
-    public function testRenderWithAttributesOptions()
-    {
-        // with id
-        $strategy = new HIncludeFragmentRenderer();
-        $this->assertEquals('<hx:include src="/foo" id="bar">default</hx:include>', $strategy->render('/foo', Request::create('/'), array('default' => 'default', 'id' => 'bar'))->getContent());
-
-        // with attributes
-        $strategy = new HIncludeFragmentRenderer();
-        $this->assertEquals('<hx:include src="/foo" p1="v1" p2="v2">default</hx:include>', $strategy->render('/foo', Request::create('/'), array('default' => 'default', 'attributes' => array('p1' => 'v1', 'p2' => 'v2')))->getContent());
-
-        // with id & attributes
-        $strategy = new HIncludeFragmentRenderer();
-        $this->assertEquals('<hx:include src="/foo" p1="v1" p2="v2" id="bar">default</hx:include>', $strategy->render('/foo', Request::create('/'), array('default' => 'default', 'id' => 'bar', 'attributes' => array('p1' => 'v1', 'p2' => 'v2')))->getContent());
-    }
-
-    public function testRenderWithDefaultText()
-    {
-        $engine = $this->getMock('Symfony\\Component\\Templating\\EngineInterface');
-        $engine->expects($this->once())
-            ->method('exists')
-            ->with('default')
-            ->will($this->throwException(new \InvalidArgumentException()));
-
-        // only default
-        $strategy = new HIncludeFragmentRenderer($engine);
-        $this->assertEquals('<hx:include src="/foo">default</hx:include>', $strategy->render('/foo', Request::create('/'), array('default' => 'default'))->getContent());
-    }
-}
diff --git a/vendor/symfony/http-kernel/Tests/Fragment/InlineFragmentRendererTest.php b/vendor/symfony/http-kernel/Tests/Fragment/InlineFragmentRendererTest.php
deleted file mode 100644
index 4e487a4..0000000
--- a/vendor/symfony/http-kernel/Tests/Fragment/InlineFragmentRendererTest.php
+++ /dev/null
@@ -1,210 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpKernel\Tests\Fragment;
-
-use Symfony\Component\HttpKernel\Controller\ControllerReference;
-use Symfony\Component\HttpKernel\HttpKernel;
-use Symfony\Component\HttpKernel\Fragment\InlineFragmentRenderer;
-use Symfony\Component\HttpKernel\KernelEvents;
-use Symfony\Component\HttpFoundation\Request;
-use Symfony\Component\HttpFoundation\Response;
-use Symfony\Component\EventDispatcher\EventDispatcher;
-
-class InlineFragmentRendererTest extends \PHPUnit_Framework_TestCase
-{
-    public function testRender()
-    {
-        $strategy = new InlineFragmentRenderer($this->getKernel($this->returnValue(new Response('foo'))));
-
-        $this->assertEquals('foo', $strategy->render('/', Request::create('/'))->getContent());
-    }
-
-    public function testRenderWithControllerReference()
-    {
-        $strategy = new InlineFragmentRenderer($this->getKernel($this->returnValue(new Response('foo'))));
-
-        $this->assertEquals('foo', $strategy->render(new ControllerReference('main_controller', array(), array()), Request::create('/'))->getContent());
-    }
-
-    public function testRenderWithObjectsAsAttributes()
-    {
-        $object = new \stdClass();
-
-        $subRequest = Request::create('/_fragment?_path=_format%3Dhtml%26_locale%3Den%26_controller%3Dmain_controller');
-        $subRequest->attributes->replace(array('object' => $object, '_format' => 'html', '_controller' => 'main_controller', '_locale' => 'en'));
-        $subRequest->headers->set('x-forwarded-for', array('127.0.0.1'));
-        $subRequest->server->set('HTTP_X_FORWARDED_FOR', '127.0.0.1');
-
-        $strategy = new InlineFragmentRenderer($this->getKernelExpectingRequest($subRequest));
-
-        $strategy->render(new ControllerReference('main_controller', array('object' => $object), array()), Request::create('/'));
-    }
-
-    public function testRenderWithObjectsAsAttributesPassedAsObjectsInTheController()
-    {
-        $resolver = $this->getMock('Symfony\\Component\\HttpKernel\\Controller\\ControllerResolver', array('getController'));
-        $resolver
-            ->expects($this->once())
-            ->method('getController')
-            ->will($this->returnValue(function (\stdClass $object, Bar $object1) {
-                return new Response($object1->getBar());
-            }))
-        ;
-
-        $kernel = new HttpKernel(new EventDispatcher(), $resolver);
-        $renderer = new InlineFragmentRenderer($kernel);
-
-        $response = $renderer->render(new ControllerReference('main_controller', array('object' => new \stdClass(), 'object1' => new Bar()), array()), Request::create('/'));
-        $this->assertEquals('bar', $response->getContent());
-    }
-
-    public function testRenderWithTrustedHeaderDisabled()
-    {
-        $trustedHeaderName = Request::getTrustedHeaderName(Request::HEADER_CLIENT_IP);
-
-        Request::setTrustedHeaderName(Request::HEADER_CLIENT_IP, '');
-
-        $strategy = new InlineFragmentRenderer($this->getKernelExpectingRequest(Request::create('/')));
-        $strategy->render('/', Request::create('/'));
-
-        Request::setTrustedHeaderName(Request::HEADER_CLIENT_IP, $trustedHeaderName);
-    }
-
-    /**
-     * @expectedException \RuntimeException
-     */
-    public function testRenderExceptionNoIgnoreErrors()
-    {
-        $dispatcher = $this->getMock('Symfony\Component\EventDispatcher\EventDispatcherInterface');
-        $dispatcher->expects($this->never())->method('dispatch');
-
-        $strategy = new InlineFragmentRenderer($this->getKernel($this->throwException(new \RuntimeException('foo'))), $dispatcher);
-
-        $this->assertEquals('foo', $strategy->render('/', Request::create('/'))->getContent());
-    }
-
-    public function testRenderExceptionIgnoreErrors()
-    {
-        $dispatcher = $this->getMock('Symfony\Component\EventDispatcher\EventDispatcherInterface');
-        $dispatcher->expects($this->once())->method('dispatch')->with(KernelEvents::EXCEPTION);
-
-        $strategy = new InlineFragmentRenderer($this->getKernel($this->throwException(new \RuntimeException('foo'))), $dispatcher);
-
-        $this->assertEmpty($strategy->render('/', Request::create('/'), array('ignore_errors' => true))->getContent());
-    }
-
-    public function testRenderExceptionIgnoreErrorsWithAlt()
-    {
-        $strategy = new InlineFragmentRenderer($this->getKernel($this->onConsecutiveCalls(
-            $this->throwException(new \RuntimeException('foo')),
-            $this->returnValue(new Response('bar'))
-        )));
-
-        $this->assertEquals('bar', $strategy->render('/', Request::create('/'), array('ignore_errors' => true, 'alt' => '/foo'))->getContent());
-    }
-
-    private function getKernel($returnValue)
-    {
-        $kernel = $this->getMock('Symfony\Component\HttpKernel\HttpKernelInterface');
-        $kernel
-            ->expects($this->any())
-            ->method('handle')
-            ->will($returnValue)
-        ;
-
-        return $kernel;
-    }
-
-    /**
-     * Creates a Kernel expecting a request equals to $request
-     * Allows delta in comparison in case REQUEST_TIME changed by 1 second.
-     */
-    private function getKernelExpectingRequest(Request $request)
-    {
-        $kernel = $this->getMock('Symfony\Component\HttpKernel\HttpKernelInterface');
-        $kernel
-            ->expects($this->any())
-            ->method('handle')
-            ->with($this->equalTo($request, 1))
-        ;
-
-        return $kernel;
-    }
-
-    public function testExceptionInSubRequestsDoesNotMangleOutputBuffers()
-    {
-        $resolver = $this->getMock('Symfony\\Component\\HttpKernel\\Controller\\ControllerResolverInterface');
-        $resolver
-            ->expects($this->once())
-            ->method('getController')
-            ->will($this->returnValue(function () {
-                ob_start();
-                echo 'bar';
-                throw new \RuntimeException();
-            }))
-        ;
-        $resolver
-            ->expects($this->once())
-            ->method('getArguments')
-            ->will($this->returnValue(array()))
-        ;
-
-        $kernel = new HttpKernel(new EventDispatcher(), $resolver);
-        $renderer = new InlineFragmentRenderer($kernel);
-
-        // simulate a main request with output buffering
-        ob_start();
-        echo 'Foo';
-
-        // simulate a sub-request with output buffering and an exception
-        $renderer->render('/', Request::create('/'), array('ignore_errors' => true));
-
-        $this->assertEquals('Foo', ob_get_clean());
-    }
-
-    public function testESIHeaderIsKeptInSubrequest()
-    {
-        $expectedSubRequest = Request::create('/');
-        $expectedSubRequest->headers->set('Surrogate-Capability', 'abc="ESI/1.0"');
-
-        if (Request::getTrustedHeaderName(Request::HEADER_CLIENT_IP)) {
-            $expectedSubRequest->headers->set('x-forwarded-for', array('127.0.0.1'));
-            $expectedSubRequest->server->set('HTTP_X_FORWARDED_FOR', '127.0.0.1');
-        }
-
-        $strategy = new InlineFragmentRenderer($this->getKernelExpectingRequest($expectedSubRequest));
-
-        $request = Request::create('/');
-        $request->headers->set('Surrogate-Capability', 'abc="ESI/1.0"');
-        $strategy->render('/', $request);
-    }
-
-    public function testESIHeaderIsKeptInSubrequestWithTrustedHeaderDisabled()
-    {
-        $trustedHeaderName = Request::getTrustedHeaderName(Request::HEADER_CLIENT_IP);
-        Request::setTrustedHeaderName(Request::HEADER_CLIENT_IP, '');
-
-        $this->testESIHeaderIsKeptInSubrequest();
-
-        Request::setTrustedHeaderName(Request::HEADER_CLIENT_IP, $trustedHeaderName);
-    }
-}
-
-class Bar
-{
-    public $bar = 'bar';
-
-    public function getBar()
-    {
-        return $this->bar;
-    }
-}
diff --git a/vendor/symfony/http-kernel/Tests/Fragment/RoutableFragmentRendererTest.php b/vendor/symfony/http-kernel/Tests/Fragment/RoutableFragmentRendererTest.php
deleted file mode 100644
index 1b5f471..0000000
--- a/vendor/symfony/http-kernel/Tests/Fragment/RoutableFragmentRendererTest.php
+++ /dev/null
@@ -1,93 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpKernel\Tests\Fragment;
-
-use Symfony\Component\HttpFoundation\Request;
-use Symfony\Component\HttpKernel\Controller\ControllerReference;
-
-class RoutableFragmentRendererTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @dataProvider getGenerateFragmentUriData
-     */
-    public function testGenerateFragmentUri($uri, $controller)
-    {
-        $this->assertEquals($uri, $this->callGenerateFragmentUriMethod($controller, Request::create('/')));
-    }
-
-    /**
-     * @dataProvider getGenerateFragmentUriData
-     */
-    public function testGenerateAbsoluteFragmentUri($uri, $controller)
-    {
-        $this->assertEquals('http://localhost'.$uri, $this->callGenerateFragmentUriMethod($controller, Request::create('/'), true));
-    }
-
-    public function getGenerateFragmentUriData()
-    {
-        return array(
-            array('/_fragment?_path=_format%3Dhtml%26_locale%3Den%26_controller%3Dcontroller', new ControllerReference('controller', array(), array())),
-            array('/_fragment?_path=_format%3Dxml%26_locale%3Den%26_controller%3Dcontroller', new ControllerReference('controller', array('_format' => 'xml'), array())),
-            array('/_fragment?_path=foo%3Dfoo%26_format%3Djson%26_locale%3Den%26_controller%3Dcontroller', new ControllerReference('controller', array('foo' => 'foo', '_format' => 'json'), array())),
-            array('/_fragment?bar=bar&_path=foo%3Dfoo%26_format%3Dhtml%26_locale%3Den%26_controller%3Dcontroller', new ControllerReference('controller', array('foo' => 'foo'), array('bar' => 'bar'))),
-            array('/_fragment?foo=foo&_path=_format%3Dhtml%26_locale%3Den%26_controller%3Dcontroller', new ControllerReference('controller', array(), array('foo' => 'foo'))),
-            array('/_fragment?_path=foo%255B0%255D%3Dfoo%26foo%255B1%255D%3Dbar%26_format%3Dhtml%26_locale%3Den%26_controller%3Dcontroller', new ControllerReference('controller', array('foo' => array('foo', 'bar')), array())),
-        );
-    }
-
-    public function testGenerateFragmentUriWithARequest()
-    {
-        $request = Request::create('/');
-        $request->attributes->set('_format', 'json');
-        $request->setLocale('fr');
-        $controller = new ControllerReference('controller', array(), array());
-
-        $this->assertEquals('/_fragment?_path=_format%3Djson%26_locale%3Dfr%26_controller%3Dcontroller', $this->callGenerateFragmentUriMethod($controller, $request));
-    }
-
-    /**
-     * @expectedException \LogicException
-     * @dataProvider      getGenerateFragmentUriDataWithNonScalar
-     */
-    public function testGenerateFragmentUriWithNonScalar($controller)
-    {
-        $this->callGenerateFragmentUriMethod($controller, Request::create('/'));
-    }
-
-    public function getGenerateFragmentUriDataWithNonScalar()
-    {
-        return array(
-            array(new ControllerReference('controller', array('foo' => new Foo(), 'bar' => 'bar'), array())),
-            array(new ControllerReference('controller', array('foo' => array('foo' => 'foo'), 'bar' => array('bar' => new Foo())), array())),
-        );
-    }
-
-    private function callGenerateFragmentUriMethod(ControllerReference $reference, Request $request, $absolute = false)
-    {
-        $renderer = $this->getMockForAbstractClass('Symfony\Component\HttpKernel\Fragment\RoutableFragmentRenderer');
-        $r = new \ReflectionObject($renderer);
-        $m = $r->getMethod('generateFragmentUri');
-        $m->setAccessible(true);
-
-        return $m->invoke($renderer, $reference, $request, $absolute);
-    }
-}
-
-class Foo
-{
-    public $foo;
-
-    public function getFoo()
-    {
-        return $this->foo;
-    }
-}
diff --git a/vendor/symfony/http-kernel/Tests/HttpCache/EsiTest.php b/vendor/symfony/http-kernel/Tests/HttpCache/EsiTest.php
deleted file mode 100644
index 0d52ce8..0000000
--- a/vendor/symfony/http-kernel/Tests/HttpCache/EsiTest.php
+++ /dev/null
@@ -1,247 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpKernel\Tests\HttpCache;
-
-use Symfony\Component\HttpKernel\HttpCache\Esi;
-use Symfony\Component\HttpFoundation\Request;
-use Symfony\Component\HttpFoundation\Response;
-
-class EsiTest extends \PHPUnit_Framework_TestCase
-{
-    public function testHasSurrogateEsiCapability()
-    {
-        $esi = new Esi();
-
-        $request = Request::create('/');
-        $request->headers->set('Surrogate-Capability', 'abc="ESI/1.0"');
-        $this->assertTrue($esi->hasSurrogateCapability($request));
-
-        $request = Request::create('/');
-        $request->headers->set('Surrogate-Capability', 'foobar');
-        $this->assertFalse($esi->hasSurrogateCapability($request));
-
-        $request = Request::create('/');
-        $this->assertFalse($esi->hasSurrogateCapability($request));
-    }
-
-    public function testAddSurrogateEsiCapability()
-    {
-        $esi = new Esi();
-
-        $request = Request::create('/');
-        $esi->addSurrogateCapability($request);
-        $this->assertEquals('symfony2="ESI/1.0"', $request->headers->get('Surrogate-Capability'));
-
-        $esi->addSurrogateCapability($request);
-        $this->assertEquals('symfony2="ESI/1.0", symfony2="ESI/1.0"', $request->headers->get('Surrogate-Capability'));
-    }
-
-    public function testAddSurrogateControl()
-    {
-        $esi = new Esi();
-
-        $response = new Response('foo <esi:include src="" />');
-        $esi->addSurrogateControl($response);
-        $this->assertEquals('content="ESI/1.0"', $response->headers->get('Surrogate-Control'));
-
-        $response = new Response('foo');
-        $esi->addSurrogateControl($response);
-        $this->assertEquals('', $response->headers->get('Surrogate-Control'));
-    }
-
-    public function testNeedsEsiParsing()
-    {
-        $esi = new Esi();
-
-        $response = new Response();
-        $response->headers->set('Surrogate-Control', 'content="ESI/1.0"');
-        $this->assertTrue($esi->needsParsing($response));
-
-        $response = new Response();
-        $this->assertFalse($esi->needsParsing($response));
-    }
-
-    public function testRenderIncludeTag()
-    {
-        $esi = new Esi();
-
-        $this->assertEquals('<esi:include src="/" onerror="continue" alt="/alt" />', $esi->renderIncludeTag('/', '/alt', true));
-        $this->assertEquals('<esi:include src="/" alt="/alt" />', $esi->renderIncludeTag('/', '/alt', false));
-        $this->assertEquals('<esi:include src="/" onerror="continue" />', $esi->renderIncludeTag('/'));
-        $this->assertEquals('<esi:comment text="some comment" />'."\n".'<esi:include src="/" onerror="continue" alt="/alt" />', $esi->renderIncludeTag('/', '/alt', true, 'some comment'));
-    }
-
-    public function testProcessDoesNothingIfContentTypeIsNotHtml()
-    {
-        $esi = new Esi();
-
-        $request = Request::create('/');
-        $response = new Response();
-        $response->headers->set('Content-Type', 'text/plain');
-        $esi->process($request, $response);
-
-        $this->assertFalse($response->headers->has('x-body-eval'));
-    }
-
-    public function testMultilineEsiRemoveTagsAreRemoved()
-    {
-        $esi = new Esi();
-
-        $request = Request::create('/');
-        $response = new Response('<esi:remove> <a href="http://www.example.com">www.example.com</a> </esi:remove> Keep this'."<esi:remove>\n <a>www.example.com</a> </esi:remove> And this");
-        $esi->process($request, $response);
-
-        $this->assertEquals(' Keep this And this', $response->getContent());
-    }
-
-    public function testCommentTagsAreRemoved()
-    {
-        $esi = new Esi();
-
-        $request = Request::create('/');
-        $response = new Response('<esi:comment text="some comment &gt;" /> Keep this');
-        $esi->process($request, $response);
-
-        $this->assertEquals(' Keep this', $response->getContent());
-    }
-
-    public function testProcess()
-    {
-        $esi = new Esi();
-
-        $request = Request::create('/');
-        $response = new Response('foo <esi:comment text="some comment" /><esi:include src="..." alt="alt" onerror="continue" />');
-        $esi->process($request, $response);
-
-        $this->assertEquals('foo <?php echo $this->surrogate->handle($this, \'...\', \'alt\', true) ?>'."\n", $response->getContent());
-        $this->assertEquals('ESI', $response->headers->get('x-body-eval'));
-
-        $response = new Response('foo <esi:comment text="some comment" /><esi:include src="foo\'" alt="bar\'" onerror="continue" />');
-        $esi->process($request, $response);
-
-        $this->assertEquals('foo <?php echo $this->surrogate->handle($this, \'foo\\\'\', \'bar\\\'\', true) ?>'."\n", $response->getContent());
-
-        $response = new Response('foo <esi:include src="..." />');
-        $esi->process($request, $response);
-
-        $this->assertEquals('foo <?php echo $this->surrogate->handle($this, \'...\', \'\', false) ?>'."\n", $response->getContent());
-
-        $response = new Response('foo <esi:include src="..."></esi:include>');
-        $esi->process($request, $response);
-
-        $this->assertEquals('foo <?php echo $this->surrogate->handle($this, \'...\', \'\', false) ?>'."\n", $response->getContent());
-    }
-
-    public function testProcessEscapesPhpTags()
-    {
-        $esi = new Esi();
-
-        $request = Request::create('/');
-        $response = new Response('<?php <? <% <script language=php>');
-        $esi->process($request, $response);
-
-        $this->assertEquals('<?php echo "<?"; ?>php <?php echo "<?"; ?> <?php echo "<%"; ?> <?php echo "<s"; ?>cript language=php>', $response->getContent());
-    }
-
-    /**
-     * @expectedException \RuntimeException
-     */
-    public function testProcessWhenNoSrcInAnEsi()
-    {
-        $esi = new Esi();
-
-        $request = Request::create('/');
-        $response = new Response('foo <esi:include />');
-        $esi->process($request, $response);
-    }
-
-    public function testProcessRemoveSurrogateControlHeader()
-    {
-        $esi = new Esi();
-
-        $request = Request::create('/');
-        $response = new Response('foo <esi:include src="..." />');
-        $response->headers->set('Surrogate-Control', 'content="ESI/1.0"');
-        $esi->process($request, $response);
-        $this->assertEquals('ESI', $response->headers->get('x-body-eval'));
-
-        $response->headers->set('Surrogate-Control', 'no-store, content="ESI/1.0"');
-        $esi->process($request, $response);
-        $this->assertEquals('ESI', $response->headers->get('x-body-eval'));
-        $this->assertEquals('no-store', $response->headers->get('surrogate-control'));
-
-        $response->headers->set('Surrogate-Control', 'content="ESI/1.0", no-store');
-        $esi->process($request, $response);
-        $this->assertEquals('ESI', $response->headers->get('x-body-eval'));
-        $this->assertEquals('no-store', $response->headers->get('surrogate-control'));
-    }
-
-    public function testHandle()
-    {
-        $esi = new Esi();
-        $cache = $this->getCache(Request::create('/'), new Response('foo'));
-        $this->assertEquals('foo', $esi->handle($cache, '/', '/alt', true));
-    }
-
-    /**
-     * @expectedException \RuntimeException
-     */
-    public function testHandleWhenResponseIsNot200()
-    {
-        $esi = new Esi();
-        $response = new Response('foo');
-        $response->setStatusCode(404);
-        $cache = $this->getCache(Request::create('/'), $response);
-        $esi->handle($cache, '/', '/alt', false);
-    }
-
-    public function testHandleWhenResponseIsNot200AndErrorsAreIgnored()
-    {
-        $esi = new Esi();
-        $response = new Response('foo');
-        $response->setStatusCode(404);
-        $cache = $this->getCache(Request::create('/'), $response);
-        $this->assertEquals('', $esi->handle($cache, '/', '/alt', true));
-    }
-
-    public function testHandleWhenResponseIsNot200AndAltIsPresent()
-    {
-        $esi = new Esi();
-        $response1 = new Response('foo');
-        $response1->setStatusCode(404);
-        $response2 = new Response('bar');
-        $cache = $this->getCache(Request::create('/'), array($response1, $response2));
-        $this->assertEquals('bar', $esi->handle($cache, '/', '/alt', false));
-    }
-
-    protected function getCache($request, $response)
-    {
-        $cache = $this->getMock('Symfony\Component\HttpKernel\HttpCache\HttpCache', array('getRequest', 'handle'), array(), '', false);
-        $cache->expects($this->any())
-              ->method('getRequest')
-              ->will($this->returnValue($request))
-        ;
-        if (is_array($response)) {
-            $cache->expects($this->any())
-                  ->method('handle')
-                  ->will(call_user_func_array(array($this, 'onConsecutiveCalls'), $response))
-            ;
-        } else {
-            $cache->expects($this->any())
-                  ->method('handle')
-                  ->will($this->returnValue($response))
-            ;
-        }
-
-        return $cache;
-    }
-}
diff --git a/vendor/symfony/http-kernel/Tests/HttpCache/HttpCacheTest.php b/vendor/symfony/http-kernel/Tests/HttpCache/HttpCacheTest.php
deleted file mode 100644
index 97fde8d..0000000
--- a/vendor/symfony/http-kernel/Tests/HttpCache/HttpCacheTest.php
+++ /dev/null
@@ -1,1225 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpKernel\Tests\HttpCache;
-
-use Symfony\Component\HttpKernel\HttpCache\HttpCache;
-use Symfony\Component\HttpFoundation\Request;
-use Symfony\Component\HttpFoundation\Response;
-
-class HttpCacheTest extends HttpCacheTestCase
-{
-    public function testTerminateDelegatesTerminationOnlyForTerminableInterface()
-    {
-        $storeMock = $this->getMockBuilder('Symfony\\Component\\HttpKernel\\HttpCache\\StoreInterface')
-            ->disableOriginalConstructor()
-            ->getMock();
-
-        // does not implement TerminableInterface
-        $kernelMock = $this->getMockBuilder('Symfony\\Component\\HttpKernel\\HttpKernelInterface')
-            ->disableOriginalConstructor()
-            ->getMock();
-
-        $kernelMock->expects($this->never())
-            ->method('terminate');
-
-        $kernel = new HttpCache($kernelMock, $storeMock);
-        $kernel->terminate(Request::create('/'), new Response());
-
-        // implements TerminableInterface
-        $kernelMock = $this->getMockBuilder('Symfony\\Component\\HttpKernel\\Kernel')
-            ->disableOriginalConstructor()
-            ->setMethods(array('terminate', 'registerBundles', 'registerContainerConfiguration'))
-            ->getMock();
-
-        $kernelMock->expects($this->once())
-            ->method('terminate');
-
-        $kernel = new HttpCache($kernelMock, $storeMock);
-        $kernel->terminate(Request::create('/'), new Response());
-    }
-
-    public function testPassesOnNonGetHeadRequests()
-    {
-        $this->setNextResponse(200);
-        $this->request('POST', '/');
-        $this->assertHttpKernelIsCalled();
-        $this->assertResponseOk();
-        $this->assertTraceContains('pass');
-        $this->assertFalse($this->response->headers->has('Age'));
-    }
-
-    public function testInvalidatesOnPostPutDeleteRequests()
-    {
-        foreach (array('post', 'put', 'delete') as $method) {
-            $this->setNextResponse(200);
-            $this->request($method, '/');
-
-            $this->assertHttpKernelIsCalled();
-            $this->assertResponseOk();
-            $this->assertTraceContains('invalidate');
-            $this->assertTraceContains('pass');
-        }
-    }
-
-    public function testDoesNotCacheWithAuthorizationRequestHeaderAndNonPublicResponse()
-    {
-        $this->setNextResponse(200, array('ETag' => '"Foo"'));
-        $this->request('GET', '/', array('HTTP_AUTHORIZATION' => 'basic foobarbaz'));
-
-        $this->assertHttpKernelIsCalled();
-        $this->assertResponseOk();
-        $this->assertEquals('private', $this->response->headers->get('Cache-Control'));
-
-        $this->assertTraceContains('miss');
-        $this->assertTraceNotContains('store');
-        $this->assertFalse($this->response->headers->has('Age'));
-    }
-
-    public function testDoesCacheWithAuthorizationRequestHeaderAndPublicResponse()
-    {
-        $this->setNextResponse(200, array('Cache-Control' => 'public', 'ETag' => '"Foo"'));
-        $this->request('GET', '/', array('HTTP_AUTHORIZATION' => 'basic foobarbaz'));
-
-        $this->assertHttpKernelIsCalled();
-        $this->assertResponseOk();
-        $this->assertTraceContains('miss');
-        $this->assertTraceContains('store');
-        $this->assertTrue($this->response->headers->has('Age'));
-        $this->assertEquals('public', $this->response->headers->get('Cache-Control'));
-    }
-
-    public function testDoesNotCacheWithCookieHeaderAndNonPublicResponse()
-    {
-        $this->setNextResponse(200, array('ETag' => '"Foo"'));
-        $this->request('GET', '/', array(), array('foo' => 'bar'));
-
-        $this->assertHttpKernelIsCalled();
-        $this->assertResponseOk();
-        $this->assertEquals('private', $this->response->headers->get('Cache-Control'));
-        $this->assertTraceContains('miss');
-        $this->assertTraceNotContains('store');
-        $this->assertFalse($this->response->headers->has('Age'));
-    }
-
-    public function testDoesNotCacheRequestsWithACookieHeader()
-    {
-        $this->setNextResponse(200);
-        $this->request('GET', '/', array(), array('foo' => 'bar'));
-
-        $this->assertHttpKernelIsCalled();
-        $this->assertResponseOk();
-        $this->assertEquals('private', $this->response->headers->get('Cache-Control'));
-        $this->assertTraceContains('miss');
-        $this->assertTraceNotContains('store');
-        $this->assertFalse($this->response->headers->has('Age'));
-    }
-
-    public function testRespondsWith304WhenIfModifiedSinceMatchesLastModified()
-    {
-        $time = new \DateTime();
-
-        $this->setNextResponse(200, array('Cache-Control' => 'public', 'Last-Modified' => $time->format(DATE_RFC2822), 'Content-Type' => 'text/plain'), 'Hello World');
-        $this->request('GET', '/', array('HTTP_IF_MODIFIED_SINCE' => $time->format(DATE_RFC2822)));
-
-        $this->assertHttpKernelIsCalled();
-        $this->assertEquals(304, $this->response->getStatusCode());
-        $this->assertEquals('', $this->response->headers->get('Content-Type'));
-        $this->assertEmpty($this->response->getContent());
-        $this->assertTraceContains('miss');
-        $this->assertTraceContains('store');
-    }
-
-    public function testRespondsWith304WhenIfNoneMatchMatchesETag()
-    {
-        $this->setNextResponse(200, array('Cache-Control' => 'public', 'ETag' => '12345', 'Content-Type' => 'text/plain'), 'Hello World');
-        $this->request('GET', '/', array('HTTP_IF_NONE_MATCH' => '12345'));
-
-        $this->assertHttpKernelIsCalled();
-        $this->assertEquals(304, $this->response->getStatusCode());
-        $this->assertEquals('', $this->response->headers->get('Content-Type'));
-        $this->assertTrue($this->response->headers->has('ETag'));
-        $this->assertEmpty($this->response->getContent());
-        $this->assertTraceContains('miss');
-        $this->assertTraceContains('store');
-    }
-
-    public function testRespondsWith304OnlyIfIfNoneMatchAndIfModifiedSinceBothMatch()
-    {
-        $time = new \DateTime();
-
-        $this->setNextResponse(200, array(), '', function ($request, $response) use ($time) {
-            $response->setStatusCode(200);
-            $response->headers->set('ETag', '12345');
-            $response->headers->set('Last-Modified', $time->format(DATE_RFC2822));
-            $response->headers->set('Content-Type', 'text/plain');
-            $response->setContent('Hello World');
-        });
-
-        // only ETag matches
-        $t = \DateTime::createFromFormat('U', time() - 3600);
-        $this->request('GET', '/', array('HTTP_IF_NONE_MATCH' => '12345', 'HTTP_IF_MODIFIED_SINCE' => $t->format(DATE_RFC2822)));
-        $this->assertHttpKernelIsCalled();
-        $this->assertEquals(200, $this->response->getStatusCode());
-
-        // only Last-Modified matches
-        $this->request('GET', '/', array('HTTP_IF_NONE_MATCH' => '1234', 'HTTP_IF_MODIFIED_SINCE' => $time->format(DATE_RFC2822)));
-        $this->assertHttpKernelIsCalled();
-        $this->assertEquals(200, $this->response->getStatusCode());
-
-        // Both matches
-        $this->request('GET', '/', array('HTTP_IF_NONE_MATCH' => '12345', 'HTTP_IF_MODIFIED_SINCE' => $time->format(DATE_RFC2822)));
-        $this->assertHttpKernelIsCalled();
-        $this->assertEquals(304, $this->response->getStatusCode());
-    }
-
-    public function testValidatesPrivateResponsesCachedOnTheClient()
-    {
-        $this->setNextResponse(200, array(), '', function ($request, $response) {
-            $etags = preg_split('/\s*,\s*/', $request->headers->get('IF_NONE_MATCH'));
-            if ($request->cookies->has('authenticated')) {
-                $response->headers->set('Cache-Control', 'private, no-store');
-                $response->setETag('"private tag"');
-                if (in_array('"private tag"', $etags)) {
-                    $response->setStatusCode(304);
-                } else {
-                    $response->setStatusCode(200);
-                    $response->headers->set('Content-Type', 'text/plain');
-                    $response->setContent('private data');
-                }
-            } else {
-                $response->headers->set('Cache-Control', 'public');
-                $response->setETag('"public tag"');
-                if (in_array('"public tag"', $etags)) {
-                    $response->setStatusCode(304);
-                } else {
-                    $response->setStatusCode(200);
-                    $response->headers->set('Content-Type', 'text/plain');
-                    $response->setContent('public data');
-                }
-            }
-        });
-
-        $this->request('GET', '/');
-        $this->assertHttpKernelIsCalled();
-        $this->assertEquals(200, $this->response->getStatusCode());
-        $this->assertEquals('"public tag"', $this->response->headers->get('ETag'));
-        $this->assertEquals('public data', $this->response->getContent());
-        $this->assertTraceContains('miss');
-        $this->assertTraceContains('store');
-
-        $this->request('GET', '/', array(), array('authenticated' => ''));
-        $this->assertHttpKernelIsCalled();
-        $this->assertEquals(200, $this->response->getStatusCode());
-        $this->assertEquals('"private tag"', $this->response->headers->get('ETag'));
-        $this->assertEquals('private data', $this->response->getContent());
-        $this->assertTraceContains('stale');
-        $this->assertTraceContains('invalid');
-        $this->assertTraceNotContains('store');
-    }
-
-    public function testStoresResponsesWhenNoCacheRequestDirectivePresent()
-    {
-        $time = \DateTime::createFromFormat('U', time() + 5);
-
-        $this->setNextResponse(200, array('Cache-Control' => 'public', 'Expires' => $time->format(DATE_RFC2822)));
-        $this->request('GET', '/', array('HTTP_CACHE_CONTROL' => 'no-cache'));
-
-        $this->assertHttpKernelIsCalled();
-        $this->assertTraceContains('store');
-        $this->assertTrue($this->response->headers->has('Age'));
-    }
-
-    public function testReloadsResponsesWhenCacheHitsButNoCacheRequestDirectivePresentWhenAllowReloadIsSetTrue()
-    {
-        $count = 0;
-
-        $this->setNextResponse(200, array('Cache-Control' => 'public, max-age=10000'), '', function ($request, $response) use (&$count) {
-            ++$count;
-            $response->setContent(1 == $count ? 'Hello World' : 'Goodbye World');
-        });
-
-        $this->request('GET', '/');
-        $this->assertEquals(200, $this->response->getStatusCode());
-        $this->assertEquals('Hello World', $this->response->getContent());
-        $this->assertTraceContains('store');
-
-        $this->request('GET', '/');
-        $this->assertEquals(200, $this->response->getStatusCode());
-        $this->assertEquals('Hello World', $this->response->getContent());
-        $this->assertTraceContains('fresh');
-
-        $this->cacheConfig['allow_reload'] = true;
-        $this->request('GET', '/', array('HTTP_CACHE_CONTROL' => 'no-cache'));
-        $this->assertEquals(200, $this->response->getStatusCode());
-        $this->assertEquals('Goodbye World', $this->response->getContent());
-        $this->assertTraceContains('reload');
-        $this->assertTraceContains('store');
-    }
-
-    public function testDoesNotReloadResponsesWhenAllowReloadIsSetFalseDefault()
-    {
-        $count = 0;
-
-        $this->setNextResponse(200, array('Cache-Control' => 'public, max-age=10000'), '', function ($request, $response) use (&$count) {
-            ++$count;
-            $response->setContent(1 == $count ? 'Hello World' : 'Goodbye World');
-        });
-
-        $this->request('GET', '/');
-        $this->assertEquals(200, $this->response->getStatusCode());
-        $this->assertEquals('Hello World', $this->response->getContent());
-        $this->assertTraceContains('store');
-
-        $this->request('GET', '/');
-        $this->assertEquals(200, $this->response->getStatusCode());
-        $this->assertEquals('Hello World', $this->response->getContent());
-        $this->assertTraceContains('fresh');
-
-        $this->cacheConfig['allow_reload'] = false;
-        $this->request('GET', '/', array('HTTP_CACHE_CONTROL' => 'no-cache'));
-        $this->assertEquals(200, $this->response->getStatusCode());
-        $this->assertEquals('Hello World', $this->response->getContent());
-        $this->assertTraceNotContains('reload');
-
-        $this->request('GET', '/', array('HTTP_CACHE_CONTROL' => 'no-cache'));
-        $this->assertEquals(200, $this->response->getStatusCode());
-        $this->assertEquals('Hello World', $this->response->getContent());
-        $this->assertTraceNotContains('reload');
-    }
-
-    public function testRevalidatesFreshCacheEntryWhenMaxAgeRequestDirectiveIsExceededWhenAllowRevalidateOptionIsSetTrue()
-    {
-        $count = 0;
-
-        $this->setNextResponse(200, array(), '', function ($request, $response) use (&$count) {
-            ++$count;
-            $response->headers->set('Cache-Control', 'public, max-age=10000');
-            $response->setETag($count);
-            $response->setContent(1 == $count ? 'Hello World' : 'Goodbye World');
-        });
-
-        $this->request('GET', '/');
-        $this->assertEquals(200, $this->response->getStatusCode());
-        $this->assertEquals('Hello World', $this->response->getContent());
-        $this->assertTraceContains('store');
-
-        $this->request('GET', '/');
-        $this->assertEquals(200, $this->response->getStatusCode());
-        $this->assertEquals('Hello World', $this->response->getContent());
-        $this->assertTraceContains('fresh');
-
-        $this->cacheConfig['allow_revalidate'] = true;
-        $this->request('GET', '/', array('HTTP_CACHE_CONTROL' => 'max-age=0'));
-        $this->assertEquals(200, $this->response->getStatusCode());
-        $this->assertEquals('Goodbye World', $this->response->getContent());
-        $this->assertTraceContains('stale');
-        $this->assertTraceContains('invalid');
-        $this->assertTraceContains('store');
-    }
-
-    public function testDoesNotRevalidateFreshCacheEntryWhenEnableRevalidateOptionIsSetFalseDefault()
-    {
-        $count = 0;
-
-        $this->setNextResponse(200, array(), '', function ($request, $response) use (&$count) {
-            ++$count;
-            $response->headers->set('Cache-Control', 'public, max-age=10000');
-            $response->setETag($count);
-            $response->setContent(1 == $count ? 'Hello World' : 'Goodbye World');
-        });
-
-        $this->request('GET', '/');
-        $this->assertEquals(200, $this->response->getStatusCode());
-        $this->assertEquals('Hello World', $this->response->getContent());
-        $this->assertTraceContains('store');
-
-        $this->request('GET', '/');
-        $this->assertEquals(200, $this->response->getStatusCode());
-        $this->assertEquals('Hello World', $this->response->getContent());
-        $this->assertTraceContains('fresh');
-
-        $this->cacheConfig['allow_revalidate'] = false;
-        $this->request('GET', '/', array('HTTP_CACHE_CONTROL' => 'max-age=0'));
-        $this->assertEquals(200, $this->response->getStatusCode());
-        $this->assertEquals('Hello World', $this->response->getContent());
-        $this->assertTraceNotContains('stale');
-        $this->assertTraceNotContains('invalid');
-        $this->assertTraceContains('fresh');
-
-        $this->request('GET', '/', array('HTTP_CACHE_CONTROL' => 'max-age=0'));
-        $this->assertEquals(200, $this->response->getStatusCode());
-        $this->assertEquals('Hello World', $this->response->getContent());
-        $this->assertTraceNotContains('stale');
-        $this->assertTraceNotContains('invalid');
-        $this->assertTraceContains('fresh');
-    }
-
-    public function testFetchesResponseFromBackendWhenCacheMisses()
-    {
-        $time = \DateTime::createFromFormat('U', time() + 5);
-        $this->setNextResponse(200, array('Cache-Control' => 'public', 'Expires' => $time->format(DATE_RFC2822)));
-
-        $this->request('GET', '/');
-        $this->assertEquals(200, $this->response->getStatusCode());
-        $this->assertTraceContains('miss');
-        $this->assertTrue($this->response->headers->has('Age'));
-    }
-
-    public function testDoesNotCacheSomeStatusCodeResponses()
-    {
-        foreach (array_merge(range(201, 202), range(204, 206), range(303, 305), range(400, 403), range(405, 409), range(411, 417), range(500, 505)) as $code) {
-            $time = \DateTime::createFromFormat('U', time() + 5);
-            $this->setNextResponse($code, array('Expires' => $time->format(DATE_RFC2822)));
-
-            $this->request('GET', '/');
-            $this->assertEquals($code, $this->response->getStatusCode());
-            $this->assertTraceNotContains('store');
-            $this->assertFalse($this->response->headers->has('Age'));
-        }
-    }
-
-    public function testDoesNotCacheResponsesWithExplicitNoStoreDirective()
-    {
-        $time = \DateTime::createFromFormat('U', time() + 5);
-        $this->setNextResponse(200, array('Expires' => $time->format(DATE_RFC2822), 'Cache-Control' => 'no-store'));
-
-        $this->request('GET', '/');
-        $this->assertTraceNotContains('store');
-        $this->assertFalse($this->response->headers->has('Age'));
-    }
-
-    public function testDoesNotCacheResponsesWithoutFreshnessInformationOrAValidator()
-    {
-        $this->setNextResponse();
-
-        $this->request('GET', '/');
-        $this->assertEquals(200, $this->response->getStatusCode());
-        $this->assertTraceNotContains('store');
-    }
-
-    public function testCachesResponsesWithExplicitNoCacheDirective()
-    {
-        $time = \DateTime::createFromFormat('U', time() + 5);
-        $this->setNextResponse(200, array('Expires' => $time->format(DATE_RFC2822), 'Cache-Control' => 'public, no-cache'));
-
-        $this->request('GET', '/');
-        $this->assertTraceContains('store');
-        $this->assertTrue($this->response->headers->has('Age'));
-    }
-
-    public function testCachesResponsesWithAnExpirationHeader()
-    {
-        $time = \DateTime::createFromFormat('U', time() + 5);
-        $this->setNextResponse(200, array('Cache-Control' => 'public', 'Expires' => $time->format(DATE_RFC2822)));
-
-        $this->request('GET', '/');
-        $this->assertEquals(200, $this->response->getStatusCode());
-        $this->assertEquals('Hello World', $this->response->getContent());
-        $this->assertNotNull($this->response->headers->get('Date'));
-        $this->assertNotNull($this->response->headers->get('X-Content-Digest'));
-        $this->assertTraceContains('miss');
-        $this->assertTraceContains('store');
-
-        $values = $this->getMetaStorageValues();
-        $this->assertCount(1, $values);
-    }
-
-    public function testCachesResponsesWithAMaxAgeDirective()
-    {
-        $this->setNextResponse(200, array('Cache-Control' => 'public, max-age=5'));
-
-        $this->request('GET', '/');
-        $this->assertEquals(200, $this->response->getStatusCode());
-        $this->assertEquals('Hello World', $this->response->getContent());
-        $this->assertNotNull($this->response->headers->get('Date'));
-        $this->assertNotNull($this->response->headers->get('X-Content-Digest'));
-        $this->assertTraceContains('miss');
-        $this->assertTraceContains('store');
-
-        $values = $this->getMetaStorageValues();
-        $this->assertCount(1, $values);
-    }
-
-    public function testCachesResponsesWithASMaxAgeDirective()
-    {
-        $this->setNextResponse(200, array('Cache-Control' => 's-maxage=5'));
-
-        $this->request('GET', '/');
-        $this->assertEquals(200, $this->response->getStatusCode());
-        $this->assertEquals('Hello World', $this->response->getContent());
-        $this->assertNotNull($this->response->headers->get('Date'));
-        $this->assertNotNull($this->response->headers->get('X-Content-Digest'));
-        $this->assertTraceContains('miss');
-        $this->assertTraceContains('store');
-
-        $values = $this->getMetaStorageValues();
-        $this->assertCount(1, $values);
-    }
-
-    public function testCachesResponsesWithALastModifiedValidatorButNoFreshnessInformation()
-    {
-        $time = \DateTime::createFromFormat('U', time());
-        $this->setNextResponse(200, array('Cache-Control' => 'public', 'Last-Modified' => $time->format(DATE_RFC2822)));
-
-        $this->request('GET', '/');
-        $this->assertEquals(200, $this->response->getStatusCode());
-        $this->assertEquals('Hello World', $this->response->getContent());
-        $this->assertTraceContains('miss');
-        $this->assertTraceContains('store');
-    }
-
-    public function testCachesResponsesWithAnETagValidatorButNoFreshnessInformation()
-    {
-        $this->setNextResponse(200, array('Cache-Control' => 'public', 'ETag' => '"123456"'));
-
-        $this->request('GET', '/');
-        $this->assertEquals(200, $this->response->getStatusCode());
-        $this->assertEquals('Hello World', $this->response->getContent());
-        $this->assertTraceContains('miss');
-        $this->assertTraceContains('store');
-    }
-
-    public function testHitsCachedResponsesWithExpiresHeader()
-    {
-        $time1 = \DateTime::createFromFormat('U', time() - 5);
-        $time2 = \DateTime::createFromFormat('U', time() + 5);
-        $this->setNextResponse(200, array('Cache-Control' => 'public', 'Date' => $time1->format(DATE_RFC2822), 'Expires' => $time2->format(DATE_RFC2822)));
-
-        $this->request('GET', '/');
-        $this->assertHttpKernelIsCalled();
-        $this->assertEquals(200, $this->response->getStatusCode());
-        $this->assertNotNull($this->response->headers->get('Date'));
-        $this->assertTraceContains('miss');
-        $this->assertTraceContains('store');
-        $this->assertEquals('Hello World', $this->response->getContent());
-
-        $this->request('GET', '/');
-        $this->assertHttpKernelIsNotCalled();
-        $this->assertEquals(200, $this->response->getStatusCode());
-        $this->assertTrue(strtotime($this->responses[0]->headers->get('Date')) - strtotime($this->response->headers->get('Date')) < 2);
-        $this->assertTrue($this->response->headers->get('Age') > 0);
-        $this->assertNotNull($this->response->headers->get('X-Content-Digest'));
-        $this->assertTraceContains('fresh');
-        $this->assertTraceNotContains('store');
-        $this->assertEquals('Hello World', $this->response->getContent());
-    }
-
-    public function testHitsCachedResponseWithMaxAgeDirective()
-    {
-        $time = \DateTime::createFromFormat('U', time() - 5);
-        $this->setNextResponse(200, array('Date' => $time->format(DATE_RFC2822), 'Cache-Control' => 'public, max-age=10'));
-
-        $this->request('GET', '/');
-        $this->assertHttpKernelIsCalled();
-        $this->assertEquals(200, $this->response->getStatusCode());
-        $this->assertNotNull($this->response->headers->get('Date'));
-        $this->assertTraceContains('miss');
-        $this->assertTraceContains('store');
-        $this->assertEquals('Hello World', $this->response->getContent());
-
-        $this->request('GET', '/');
-        $this->assertHttpKernelIsNotCalled();
-        $this->assertEquals(200, $this->response->getStatusCode());
-        $this->assertTrue(strtotime($this->responses[0]->headers->get('Date')) - strtotime($this->response->headers->get('Date')) < 2);
-        $this->assertTrue($this->response->headers->get('Age') > 0);
-        $this->assertNotNull($this->response->headers->get('X-Content-Digest'));
-        $this->assertTraceContains('fresh');
-        $this->assertTraceNotContains('store');
-        $this->assertEquals('Hello World', $this->response->getContent());
-    }
-
-    public function testHitsCachedResponseWithSMaxAgeDirective()
-    {
-        $time = \DateTime::createFromFormat('U', time() - 5);
-        $this->setNextResponse(200, array('Date' => $time->format(DATE_RFC2822), 'Cache-Control' => 's-maxage=10, max-age=0'));
-
-        $this->request('GET', '/');
-        $this->assertHttpKernelIsCalled();
-        $this->assertEquals(200, $this->response->getStatusCode());
-        $this->assertNotNull($this->response->headers->get('Date'));
-        $this->assertTraceContains('miss');
-        $this->assertTraceContains('store');
-        $this->assertEquals('Hello World', $this->response->getContent());
-
-        $this->request('GET', '/');
-        $this->assertHttpKernelIsNotCalled();
-        $this->assertEquals(200, $this->response->getStatusCode());
-        $this->assertTrue(strtotime($this->responses[0]->headers->get('Date')) - strtotime($this->response->headers->get('Date')) < 2);
-        $this->assertTrue($this->response->headers->get('Age') > 0);
-        $this->assertNotNull($this->response->headers->get('X-Content-Digest'));
-        $this->assertTraceContains('fresh');
-        $this->assertTraceNotContains('store');
-        $this->assertEquals('Hello World', $this->response->getContent());
-    }
-
-    public function testAssignsDefaultTtlWhenResponseHasNoFreshnessInformation()
-    {
-        $this->setNextResponse();
-
-        $this->cacheConfig['default_ttl'] = 10;
-        $this->request('GET', '/');
-        $this->assertHttpKernelIsCalled();
-        $this->assertTraceContains('miss');
-        $this->assertTraceContains('store');
-        $this->assertEquals('Hello World', $this->response->getContent());
-        $this->assertRegExp('/s-maxage=10/', $this->response->headers->get('Cache-Control'));
-
-        $this->cacheConfig['default_ttl'] = 10;
-        $this->request('GET', '/');
-        $this->assertHttpKernelIsNotCalled();
-        $this->assertEquals(200, $this->response->getStatusCode());
-        $this->assertTraceContains('fresh');
-        $this->assertTraceNotContains('store');
-        $this->assertEquals('Hello World', $this->response->getContent());
-        $this->assertRegExp('/s-maxage=10/', $this->response->headers->get('Cache-Control'));
-    }
-
-    public function testAssignsDefaultTtlWhenResponseHasNoFreshnessInformationAndAfterTtlWasExpired()
-    {
-        $this->setNextResponse();
-
-        $this->cacheConfig['default_ttl'] = 2;
-        $this->request('GET', '/');
-        $this->assertHttpKernelIsCalled();
-        $this->assertTraceContains('miss');
-        $this->assertTraceContains('store');
-        $this->assertEquals('Hello World', $this->response->getContent());
-        $this->assertRegExp('/s-maxage=(?:2|3)/', $this->response->headers->get('Cache-Control'));
-
-        $this->request('GET', '/');
-        $this->assertHttpKernelIsNotCalled();
-        $this->assertEquals(200, $this->response->getStatusCode());
-        $this->assertTraceContains('fresh');
-        $this->assertTraceNotContains('store');
-        $this->assertEquals('Hello World', $this->response->getContent());
-        $this->assertRegExp('/s-maxage=2/', $this->response->headers->get('Cache-Control'));
-
-        // expires the cache
-        $values = $this->getMetaStorageValues();
-        $this->assertCount(1, $values);
-        $tmp = unserialize($values[0]);
-        $tmp[0][1]['date'] = \DateTime::createFromFormat('U', time() - 5)->format(DATE_RFC2822);
-        $r = new \ReflectionObject($this->store);
-        $m = $r->getMethod('save');
-        $m->setAccessible(true);
-        $m->invoke($this->store, 'md'.hash('sha256', 'http://localhost/'), serialize($tmp));
-
-        $this->request('GET', '/');
-        $this->assertHttpKernelIsCalled();
-        $this->assertEquals(200, $this->response->getStatusCode());
-        $this->assertTraceContains('stale');
-        $this->assertTraceContains('invalid');
-        $this->assertTraceContains('store');
-        $this->assertEquals('Hello World', $this->response->getContent());
-        $this->assertRegExp('/s-maxage=2/', $this->response->headers->get('Cache-Control'));
-
-        $this->setNextResponse();
-
-        $this->request('GET', '/');
-        $this->assertHttpKernelIsNotCalled();
-        $this->assertEquals(200, $this->response->getStatusCode());
-        $this->assertTraceContains('fresh');
-        $this->assertTraceNotContains('store');
-        $this->assertEquals('Hello World', $this->response->getContent());
-        $this->assertRegExp('/s-maxage=2/', $this->response->headers->get('Cache-Control'));
-    }
-
-    public function testAssignsDefaultTtlWhenResponseHasNoFreshnessInformationAndAfterTtlWasExpiredWithStatus304()
-    {
-        $this->setNextResponse();
-
-        $this->cacheConfig['default_ttl'] = 2;
-        $this->request('GET', '/');
-        $this->assertHttpKernelIsCalled();
-        $this->assertTraceContains('miss');
-        $this->assertTraceContains('store');
-        $this->assertEquals('Hello World', $this->response->getContent());
-        $this->assertRegExp('/s-maxage=2/', $this->response->headers->get('Cache-Control'));
-
-        $this->request('GET', '/');
-        $this->assertHttpKernelIsNotCalled();
-        $this->assertEquals(200, $this->response->getStatusCode());
-        $this->assertTraceContains('fresh');
-        $this->assertTraceNotContains('store');
-        $this->assertEquals('Hello World', $this->response->getContent());
-
-        // expires the cache
-        $values = $this->getMetaStorageValues();
-        $this->assertCount(1, $values);
-        $tmp = unserialize($values[0]);
-        $tmp[0][1]['date'] = \DateTime::createFromFormat('U', time() - 5)->format(DATE_RFC2822);
-        $r = new \ReflectionObject($this->store);
-        $m = $r->getMethod('save');
-        $m->setAccessible(true);
-        $m->invoke($this->store, 'md'.hash('sha256', 'http://localhost/'), serialize($tmp));
-
-        $this->request('GET', '/');
-        $this->assertHttpKernelIsCalled();
-        $this->assertEquals(200, $this->response->getStatusCode());
-        $this->assertTraceContains('stale');
-        $this->assertTraceContains('valid');
-        $this->assertTraceContains('store');
-        $this->assertTraceNotContains('miss');
-        $this->assertEquals('Hello World', $this->response->getContent());
-        $this->assertRegExp('/s-maxage=2/', $this->response->headers->get('Cache-Control'));
-
-        $this->request('GET', '/');
-        $this->assertHttpKernelIsNotCalled();
-        $this->assertEquals(200, $this->response->getStatusCode());
-        $this->assertTraceContains('fresh');
-        $this->assertTraceNotContains('store');
-        $this->assertEquals('Hello World', $this->response->getContent());
-        $this->assertRegExp('/s-maxage=2/', $this->response->headers->get('Cache-Control'));
-    }
-
-    public function testDoesNotAssignDefaultTtlWhenResponseHasMustRevalidateDirective()
-    {
-        $this->setNextResponse(200, array('Cache-Control' => 'must-revalidate'));
-
-        $this->cacheConfig['default_ttl'] = 10;
-        $this->request('GET', '/');
-        $this->assertHttpKernelIsCalled();
-        $this->assertEquals(200, $this->response->getStatusCode());
-        $this->assertTraceContains('miss');
-        $this->assertTraceNotContains('store');
-        $this->assertNotRegExp('/s-maxage/', $this->response->headers->get('Cache-Control'));
-        $this->assertEquals('Hello World', $this->response->getContent());
-    }
-
-    public function testFetchesFullResponseWhenCacheStaleAndNoValidatorsPresent()
-    {
-        $time = \DateTime::createFromFormat('U', time() + 5);
-        $this->setNextResponse(200, array('Cache-Control' => 'public', 'Expires' => $time->format(DATE_RFC2822)));
-
-        // build initial request
-        $this->request('GET', '/');
-        $this->assertHttpKernelIsCalled();
-        $this->assertEquals(200, $this->response->getStatusCode());
-        $this->assertNotNull($this->response->headers->get('Date'));
-        $this->assertNotNull($this->response->headers->get('X-Content-Digest'));
-        $this->assertNotNull($this->response->headers->get('Age'));
-        $this->assertTraceContains('miss');
-        $this->assertTraceContains('store');
-        $this->assertEquals('Hello World', $this->response->getContent());
-
-        # go in and play around with the cached metadata directly ...
-        $values = $this->getMetaStorageValues();
-        $this->assertCount(1, $values);
-        $tmp = unserialize($values[0]);
-        $time = \DateTime::createFromFormat('U', time());
-        $tmp[0][1]['expires'] = $time->format(DATE_RFC2822);
-        $r = new \ReflectionObject($this->store);
-        $m = $r->getMethod('save');
-        $m->setAccessible(true);
-        $m->invoke($this->store, 'md'.hash('sha256', 'http://localhost/'), serialize($tmp));
-
-        // build subsequent request; should be found but miss due to freshness
-        $this->request('GET', '/');
-        $this->assertHttpKernelIsCalled();
-        $this->assertEquals(200, $this->response->getStatusCode());
-        $this->assertTrue($this->response->headers->get('Age') <= 1);
-        $this->assertNotNull($this->response->headers->get('X-Content-Digest'));
-        $this->assertTraceContains('stale');
-        $this->assertTraceNotContains('fresh');
-        $this->assertTraceNotContains('miss');
-        $this->assertTraceContains('store');
-        $this->assertEquals('Hello World', $this->response->getContent());
-    }
-
-    public function testValidatesCachedResponsesWithLastModifiedAndNoFreshnessInformation()
-    {
-        $time = \DateTime::createFromFormat('U', time());
-        $this->setNextResponse(200, array(), 'Hello World', function ($request, $response) use ($time) {
-            $response->headers->set('Cache-Control', 'public');
-            $response->headers->set('Last-Modified', $time->format(DATE_RFC2822));
-            if ($time->format(DATE_RFC2822) == $request->headers->get('IF_MODIFIED_SINCE')) {
-                $response->setStatusCode(304);
-                $response->setContent('');
-            }
-        });
-
-        // build initial request
-        $this->request('GET', '/');
-        $this->assertHttpKernelIsCalled();
-        $this->assertEquals(200, $this->response->getStatusCode());
-        $this->assertNotNull($this->response->headers->get('Last-Modified'));
-        $this->assertNotNull($this->response->headers->get('X-Content-Digest'));
-        $this->assertEquals('Hello World', $this->response->getContent());
-        $this->assertTraceContains('miss');
-        $this->assertTraceContains('store');
-        $this->assertTraceNotContains('stale');
-
-        // build subsequent request; should be found but miss due to freshness
-        $this->request('GET', '/');
-        $this->assertHttpKernelIsCalled();
-        $this->assertEquals(200, $this->response->getStatusCode());
-        $this->assertNotNull($this->response->headers->get('Last-Modified'));
-        $this->assertNotNull($this->response->headers->get('X-Content-Digest'));
-        $this->assertTrue($this->response->headers->get('Age') <= 1);
-        $this->assertEquals('Hello World', $this->response->getContent());
-        $this->assertTraceContains('stale');
-        $this->assertTraceContains('valid');
-        $this->assertTraceContains('store');
-        $this->assertTraceNotContains('miss');
-    }
-
-    public function testValidatesCachedResponsesWithETagAndNoFreshnessInformation()
-    {
-        $this->setNextResponse(200, array(), 'Hello World', function ($request, $response) {
-            $response->headers->set('Cache-Control', 'public');
-            $response->headers->set('ETag', '"12345"');
-            if ($response->getETag() == $request->headers->get('IF_NONE_MATCH')) {
-                $response->setStatusCode(304);
-                $response->setContent('');
-            }
-        });
-
-        // build initial request
-        $this->request('GET', '/');
-        $this->assertHttpKernelIsCalled();
-        $this->assertEquals(200, $this->response->getStatusCode());
-        $this->assertNotNull($this->response->headers->get('ETag'));
-        $this->assertNotNull($this->response->headers->get('X-Content-Digest'));
-        $this->assertEquals('Hello World', $this->response->getContent());
-        $this->assertTraceContains('miss');
-        $this->assertTraceContains('store');
-
-        // build subsequent request; should be found but miss due to freshness
-        $this->request('GET', '/');
-        $this->assertHttpKernelIsCalled();
-        $this->assertEquals(200, $this->response->getStatusCode());
-        $this->assertNotNull($this->response->headers->get('ETag'));
-        $this->assertNotNull($this->response->headers->get('X-Content-Digest'));
-        $this->assertTrue($this->response->headers->get('Age') <= 1);
-        $this->assertEquals('Hello World', $this->response->getContent());
-        $this->assertTraceContains('stale');
-        $this->assertTraceContains('valid');
-        $this->assertTraceContains('store');
-        $this->assertTraceNotContains('miss');
-    }
-
-    public function testReplacesCachedResponsesWhenValidationResultsInNon304Response()
-    {
-        $time = \DateTime::createFromFormat('U', time());
-        $count = 0;
-        $this->setNextResponse(200, array(), 'Hello World', function ($request, $response) use ($time, &$count) {
-            $response->headers->set('Last-Modified', $time->format(DATE_RFC2822));
-            $response->headers->set('Cache-Control', 'public');
-            switch (++$count) {
-                case 1:
-                    $response->setContent('first response');
-                    break;
-                case 2:
-                    $response->setContent('second response');
-                    break;
-                case 3:
-                    $response->setContent('');
-                    $response->setStatusCode(304);
-                    break;
-            }
-        });
-
-        // first request should fetch from backend and store in cache
-        $this->request('GET', '/');
-        $this->assertEquals(200, $this->response->getStatusCode());
-        $this->assertEquals('first response', $this->response->getContent());
-
-        // second request is validated, is invalid, and replaces cached entry
-        $this->request('GET', '/');
-        $this->assertEquals(200, $this->response->getStatusCode());
-        $this->assertEquals('second response', $this->response->getContent());
-
-        // third response is validated, valid, and returns cached entry
-        $this->request('GET', '/');
-        $this->assertEquals(200, $this->response->getStatusCode());
-        $this->assertEquals('second response', $this->response->getContent());
-
-        $this->assertEquals(3, $count);
-    }
-
-    public function testPassesHeadRequestsThroughDirectlyOnPass()
-    {
-        $that = $this;
-        $this->setNextResponse(200, array(), 'Hello World', function ($request, $response) use ($that) {
-            $response->setContent('');
-            $response->setStatusCode(200);
-            $that->assertEquals('HEAD', $request->getMethod());
-        });
-
-        $this->request('HEAD', '/', array('HTTP_EXPECT' => 'something ...'));
-        $this->assertHttpKernelIsCalled();
-        $this->assertEquals('', $this->response->getContent());
-    }
-
-    public function testUsesCacheToRespondToHeadRequestsWhenFresh()
-    {
-        $that = $this;
-        $this->setNextResponse(200, array(), 'Hello World', function ($request, $response) use ($that) {
-            $response->headers->set('Cache-Control', 'public, max-age=10');
-            $response->setContent('Hello World');
-            $response->setStatusCode(200);
-            $that->assertNotEquals('HEAD', $request->getMethod());
-        });
-
-        $this->request('GET', '/');
-        $this->assertHttpKernelIsCalled();
-        $this->assertEquals('Hello World', $this->response->getContent());
-
-        $this->request('HEAD', '/');
-        $this->assertHttpKernelIsNotCalled();
-        $this->assertEquals(200, $this->response->getStatusCode());
-        $this->assertEquals('', $this->response->getContent());
-        $this->assertEquals(strlen('Hello World'), $this->response->headers->get('Content-Length'));
-    }
-
-    public function testSendsNoContentWhenFresh()
-    {
-        $time = \DateTime::createFromFormat('U', time());
-        $that = $this;
-        $this->setNextResponse(200, array(), 'Hello World', function ($request, $response) use ($that, $time) {
-            $response->headers->set('Cache-Control', 'public, max-age=10');
-            $response->headers->set('Last-Modified', $time->format(DATE_RFC2822));
-        });
-
-        $this->request('GET', '/');
-        $this->assertHttpKernelIsCalled();
-        $this->assertEquals('Hello World', $this->response->getContent());
-
-        $this->request('GET', '/', array('HTTP_IF_MODIFIED_SINCE' => $time->format(DATE_RFC2822)));
-        $this->assertHttpKernelIsNotCalled();
-        $this->assertEquals(304, $this->response->getStatusCode());
-        $this->assertEquals('', $this->response->getContent());
-    }
-
-    public function testInvalidatesCachedResponsesOnPost()
-    {
-        $this->setNextResponse(200, array(), 'Hello World', function ($request, $response) {
-            if ('GET' == $request->getMethod()) {
-                $response->setStatusCode(200);
-                $response->headers->set('Cache-Control', 'public, max-age=500');
-                $response->setContent('Hello World');
-            } elseif ('POST' == $request->getMethod()) {
-                $response->setStatusCode(303);
-                $response->headers->set('Location', '/');
-                $response->headers->remove('Cache-Control');
-                $response->setContent('');
-            }
-        });
-
-        // build initial request to enter into the cache
-        $this->request('GET', '/');
-        $this->assertHttpKernelIsCalled();
-        $this->assertEquals(200, $this->response->getStatusCode());
-        $this->assertEquals('Hello World', $this->response->getContent());
-        $this->assertTraceContains('miss');
-        $this->assertTraceContains('store');
-
-        // make sure it is valid
-        $this->request('GET', '/');
-        $this->assertHttpKernelIsNotCalled();
-        $this->assertEquals(200, $this->response->getStatusCode());
-        $this->assertEquals('Hello World', $this->response->getContent());
-        $this->assertTraceContains('fresh');
-
-        // now POST to same URL
-        $this->request('POST', '/helloworld');
-        $this->assertHttpKernelIsCalled();
-        $this->assertEquals('/', $this->response->headers->get('Location'));
-        $this->assertTraceContains('invalidate');
-        $this->assertTraceContains('pass');
-        $this->assertEquals('', $this->response->getContent());
-
-        // now make sure it was actually invalidated
-        $this->request('GET', '/');
-        $this->assertHttpKernelIsCalled();
-        $this->assertEquals(200, $this->response->getStatusCode());
-        $this->assertEquals('Hello World', $this->response->getContent());
-        $this->assertTraceContains('stale');
-        $this->assertTraceContains('invalid');
-        $this->assertTraceContains('store');
-    }
-
-    public function testServesFromCacheWhenHeadersMatch()
-    {
-        $count = 0;
-        $this->setNextResponse(200, array('Cache-Control' => 'max-age=10000'), '', function ($request, $response) use (&$count) {
-            $response->headers->set('Vary', 'Accept User-Agent Foo');
-            $response->headers->set('Cache-Control', 'public, max-age=10');
-            $response->headers->set('X-Response-Count', ++$count);
-            $response->setContent($request->headers->get('USER_AGENT'));
-        });
-
-        $this->request('GET', '/', array('HTTP_ACCEPT' => 'text/html', 'HTTP_USER_AGENT' => 'Bob/1.0'));
-        $this->assertEquals(200, $this->response->getStatusCode());
-        $this->assertEquals('Bob/1.0', $this->response->getContent());
-        $this->assertTraceContains('miss');
-        $this->assertTraceContains('store');
-
-        $this->request('GET', '/', array('HTTP_ACCEPT' => 'text/html', 'HTTP_USER_AGENT' => 'Bob/1.0'));
-        $this->assertEquals(200, $this->response->getStatusCode());
-        $this->assertEquals('Bob/1.0', $this->response->getContent());
-        $this->assertTraceContains('fresh');
-        $this->assertTraceNotContains('store');
-        $this->assertNotNull($this->response->headers->get('X-Content-Digest'));
-    }
-
-    public function testStoresMultipleResponsesWhenHeadersDiffer()
-    {
-        $count = 0;
-        $this->setNextResponse(200, array('Cache-Control' => 'max-age=10000'), '', function ($request, $response) use (&$count) {
-            $response->headers->set('Vary', 'Accept User-Agent Foo');
-            $response->headers->set('Cache-Control', 'public, max-age=10');
-            $response->headers->set('X-Response-Count', ++$count);
-            $response->setContent($request->headers->get('USER_AGENT'));
-        });
-
-        $this->request('GET', '/', array('HTTP_ACCEPT' => 'text/html', 'HTTP_USER_AGENT' => 'Bob/1.0'));
-        $this->assertEquals(200, $this->response->getStatusCode());
-        $this->assertEquals('Bob/1.0', $this->response->getContent());
-        $this->assertEquals(1, $this->response->headers->get('X-Response-Count'));
-
-        $this->request('GET', '/', array('HTTP_ACCEPT' => 'text/html', 'HTTP_USER_AGENT' => 'Bob/2.0'));
-        $this->assertEquals(200, $this->response->getStatusCode());
-        $this->assertTraceContains('miss');
-        $this->assertTraceContains('store');
-        $this->assertEquals('Bob/2.0', $this->response->getContent());
-        $this->assertEquals(2, $this->response->headers->get('X-Response-Count'));
-
-        $this->request('GET', '/', array('HTTP_ACCEPT' => 'text/html', 'HTTP_USER_AGENT' => 'Bob/1.0'));
-        $this->assertTraceContains('fresh');
-        $this->assertEquals('Bob/1.0', $this->response->getContent());
-        $this->assertEquals(1, $this->response->headers->get('X-Response-Count'));
-
-        $this->request('GET', '/', array('HTTP_ACCEPT' => 'text/html', 'HTTP_USER_AGENT' => 'Bob/2.0'));
-        $this->assertTraceContains('fresh');
-        $this->assertEquals('Bob/2.0', $this->response->getContent());
-        $this->assertEquals(2, $this->response->headers->get('X-Response-Count'));
-
-        $this->request('GET', '/', array('HTTP_USER_AGENT' => 'Bob/2.0'));
-        $this->assertTraceContains('miss');
-        $this->assertEquals('Bob/2.0', $this->response->getContent());
-        $this->assertEquals(3, $this->response->headers->get('X-Response-Count'));
-    }
-
-    public function testShouldCatchExceptions()
-    {
-        $this->catchExceptions();
-
-        $this->setNextResponse();
-        $this->request('GET', '/');
-
-        $this->assertExceptionsAreCaught();
-    }
-
-    public function testShouldCatchExceptionsWhenReloadingAndNoCacheRequest()
-    {
-        $this->catchExceptions();
-
-        $this->setNextResponse();
-        $this->cacheConfig['allow_reload'] = true;
-        $this->request('GET', '/', array(), array(), false, array('Pragma' => 'no-cache'));
-
-        $this->assertExceptionsAreCaught();
-    }
-
-    public function testShouldNotCatchExceptions()
-    {
-        $this->catchExceptions(false);
-
-        $this->setNextResponse();
-        $this->request('GET', '/');
-
-        $this->assertExceptionsAreNotCaught();
-    }
-
-    public function testEsiCacheSendsTheLowestTtl()
-    {
-        $responses = array(
-            array(
-                'status' => 200,
-                'body' => '<esi:include src="/foo" /> <esi:include src="/bar" />',
-                'headers' => array(
-                    'Cache-Control' => 's-maxage=300',
-                    'Surrogate-Control' => 'content="ESI/1.0"',
-                ),
-            ),
-            array(
-                'status' => 200,
-                'body' => 'Hello World!',
-                'headers' => array('Cache-Control' => 's-maxage=300'),
-            ),
-            array(
-                'status' => 200,
-                'body' => 'My name is Bobby.',
-                'headers' => array('Cache-Control' => 's-maxage=100'),
-            ),
-        );
-
-        $this->setNextResponses($responses);
-
-        $this->request('GET', '/', array(), array(), true);
-        $this->assertEquals('Hello World! My name is Bobby.', $this->response->getContent());
-
-        // check for 100 or 99 as the test can be executed after a second change
-        $this->assertTrue(in_array($this->response->getTtl(), array(99, 100)));
-    }
-
-    public function testEsiCacheForceValidation()
-    {
-        $responses = array(
-            array(
-                'status' => 200,
-                'body' => '<esi:include src="/foo" /> <esi:include src="/bar" />',
-                'headers' => array(
-                    'Cache-Control' => 's-maxage=300',
-                    'Surrogate-Control' => 'content="ESI/1.0"',
-                ),
-            ),
-            array(
-                'status' => 200,
-                'body' => 'Hello World!',
-                'headers' => array('ETag' => 'foobar'),
-            ),
-            array(
-                'status' => 200,
-                'body' => 'My name is Bobby.',
-                'headers' => array('Cache-Control' => 's-maxage=100'),
-            ),
-        );
-
-        $this->setNextResponses($responses);
-
-        $this->request('GET', '/', array(), array(), true);
-        $this->assertEquals('Hello World! My name is Bobby.', $this->response->getContent());
-        $this->assertNull($this->response->getTtl());
-        $this->assertTrue($this->response->mustRevalidate());
-        $this->assertTrue($this->response->headers->hasCacheControlDirective('private'));
-        $this->assertTrue($this->response->headers->hasCacheControlDirective('no-cache'));
-    }
-
-    public function testEsiRecalculateContentLengthHeader()
-    {
-        $responses = array(
-            array(
-                'status' => 200,
-                'body' => '<esi:include src="/foo" />',
-                'headers' => array(
-                    'Content-Length' => 26,
-                    'Cache-Control' => 's-maxage=300',
-                    'Surrogate-Control' => 'content="ESI/1.0"',
-                ),
-            ),
-            array(
-                'status' => 200,
-                'body' => 'Hello World!',
-                'headers' => array(),
-            ),
-        );
-
-        $this->setNextResponses($responses);
-
-        $this->request('GET', '/', array(), array(), true);
-        $this->assertEquals('Hello World!', $this->response->getContent());
-        $this->assertEquals(12, $this->response->headers->get('Content-Length'));
-    }
-
-    public function testClientIpIsAlwaysLocalhostForForwardedRequests()
-    {
-        $this->setNextResponse();
-        $this->request('GET', '/', array('REMOTE_ADDR' => '10.0.0.1'));
-
-        $this->assertEquals('127.0.0.1', $this->kernel->getBackendRequest()->server->get('REMOTE_ADDR'));
-    }
-
-    /**
-     * @dataProvider getTrustedProxyData
-     */
-    public function testHttpCacheIsSetAsATrustedProxy(array $existing, array $expected)
-    {
-        Request::setTrustedProxies($existing);
-
-        $this->setNextResponse();
-        $this->request('GET', '/', array('REMOTE_ADDR' => '10.0.0.1'));
-
-        $this->assertEquals($expected, Request::getTrustedProxies());
-    }
-
-    public function getTrustedProxyData()
-    {
-        return array(
-            array(array(), array('127.0.0.1')),
-            array(array('10.0.0.2'), array('10.0.0.2', '127.0.0.1')),
-            array(array('10.0.0.2', '127.0.0.1'), array('10.0.0.2', '127.0.0.1')),
-        );
-    }
-
-    /**
-     * @dataProvider getXForwardedForData
-     */
-    public function testXForwarderForHeaderForForwardedRequests($xForwardedFor, $expected)
-    {
-        $this->setNextResponse();
-        $server = array('REMOTE_ADDR' => '10.0.0.1');
-        if (false !== $xForwardedFor) {
-            $server['HTTP_X_FORWARDED_FOR'] = $xForwardedFor;
-        }
-        $this->request('GET', '/', $server);
-
-        $this->assertEquals($expected, $this->kernel->getBackendRequest()->headers->get('X-Forwarded-For'));
-    }
-
-    public function getXForwardedForData()
-    {
-        return array(
-            array(false, '10.0.0.1'),
-            array('10.0.0.2', '10.0.0.2, 10.0.0.1'),
-            array('10.0.0.2, 10.0.0.3', '10.0.0.2, 10.0.0.3, 10.0.0.1'),
-        );
-    }
-
-    public function testXForwarderForHeaderForPassRequests()
-    {
-        $this->setNextResponse();
-        $server = array('REMOTE_ADDR' => '10.0.0.1');
-        $this->request('POST', '/', $server);
-
-        $this->assertEquals('10.0.0.1', $this->kernel->getBackendRequest()->headers->get('X-Forwarded-For'));
-    }
-
-    public function testEsiCacheRemoveValidationHeadersIfEmbeddedResponses()
-    {
-        $time = new \DateTime();
-
-        $responses = array(
-            array(
-                'status' => 200,
-                'body' => '<esi:include src="/hey" />',
-                'headers' => array(
-                    'Surrogate-Control' => 'content="ESI/1.0"',
-                    'ETag' => 'hey',
-                    'Last-Modified' => $time->format(DATE_RFC2822),
-                ),
-            ),
-            array(
-                'status' => 200,
-                'body' => 'Hey!',
-                'headers' => array(),
-            ),
-        );
-
-        $this->setNextResponses($responses);
-
-        $this->request('GET', '/', array(), array(), true);
-        $this->assertNull($this->response->getETag());
-        $this->assertNull($this->response->getLastModified());
-    }
-}
diff --git a/vendor/symfony/http-kernel/Tests/HttpCache/HttpCacheTestCase.php b/vendor/symfony/http-kernel/Tests/HttpCache/HttpCacheTestCase.php
deleted file mode 100644
index 766e2b1..0000000
--- a/vendor/symfony/http-kernel/Tests/HttpCache/HttpCacheTestCase.php
+++ /dev/null
@@ -1,176 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpKernel\Tests\HttpCache;
-
-use Symfony\Component\HttpFoundation\Request;
-use Symfony\Component\HttpKernel\HttpCache\Esi;
-use Symfony\Component\HttpKernel\HttpCache\HttpCache;
-use Symfony\Component\HttpKernel\HttpCache\Store;
-use Symfony\Component\HttpKernel\HttpKernelInterface;
-
-class HttpCacheTestCase extends \PHPUnit_Framework_TestCase
-{
-    protected $kernel;
-    protected $cache;
-    protected $caches;
-    protected $cacheConfig;
-    protected $request;
-    protected $response;
-    protected $responses;
-    protected $catch;
-    protected $esi;
-
-    protected function setUp()
-    {
-        $this->kernel = null;
-
-        $this->cache = null;
-        $this->esi = null;
-        $this->caches = array();
-        $this->cacheConfig = array();
-
-        $this->request = null;
-        $this->response = null;
-        $this->responses = array();
-
-        $this->catch = false;
-
-        $this->clearDirectory(sys_get_temp_dir().'/http_cache');
-    }
-
-    protected function tearDown()
-    {
-        $this->kernel = null;
-        $this->cache = null;
-        $this->caches = null;
-        $this->request = null;
-        $this->response = null;
-        $this->responses = null;
-        $this->cacheConfig = null;
-        $this->catch = null;
-        $this->esi = null;
-
-        $this->clearDirectory(sys_get_temp_dir().'/http_cache');
-    }
-
-    public function assertHttpKernelIsCalled()
-    {
-        $this->assertTrue($this->kernel->hasBeenCalled());
-    }
-
-    public function assertHttpKernelIsNotCalled()
-    {
-        $this->assertFalse($this->kernel->hasBeenCalled());
-    }
-
-    public function assertResponseOk()
-    {
-        $this->assertEquals(200, $this->response->getStatusCode());
-    }
-
-    public function assertTraceContains($trace)
-    {
-        $traces = $this->cache->getTraces();
-        $traces = current($traces);
-
-        $this->assertRegExp('/'.$trace.'/', implode(', ', $traces));
-    }
-
-    public function assertTraceNotContains($trace)
-    {
-        $traces = $this->cache->getTraces();
-        $traces = current($traces);
-
-        $this->assertNotRegExp('/'.$trace.'/', implode(', ', $traces));
-    }
-
-    public function assertExceptionsAreCaught()
-    {
-        $this->assertTrue($this->kernel->isCatchingExceptions());
-    }
-
-    public function assertExceptionsAreNotCaught()
-    {
-        $this->assertFalse($this->kernel->isCatchingExceptions());
-    }
-
-    public function request($method, $uri = '/', $server = array(), $cookies = array(), $esi = false, $headers = array())
-    {
-        if (null === $this->kernel) {
-            throw new \LogicException('You must call setNextResponse() before calling request().');
-        }
-
-        $this->kernel->reset();
-
-        $this->store = new Store(sys_get_temp_dir().'/http_cache');
-
-        $this->cacheConfig['debug'] = true;
-
-        $this->esi = $esi ? new Esi() : null;
-        $this->cache = new HttpCache($this->kernel, $this->store, $this->esi, $this->cacheConfig);
-        $this->request = Request::create($uri, $method, array(), $cookies, array(), $server);
-        $this->request->headers->add($headers);
-
-        $this->response = $this->cache->handle($this->request, HttpKernelInterface::MASTER_REQUEST, $this->catch);
-
-        $this->responses[] = $this->response;
-    }
-
-    public function getMetaStorageValues()
-    {
-        $values = array();
-        foreach (new \RecursiveIteratorIterator(new \RecursiveDirectoryIterator(sys_get_temp_dir().'/http_cache/md', \RecursiveDirectoryIterator::SKIP_DOTS), \RecursiveIteratorIterator::LEAVES_ONLY) as $file) {
-            $values[] = file_get_contents($file);
-        }
-
-        return $values;
-    }
-
-    // A basic response with 200 status code and a tiny body.
-    public function setNextResponse($statusCode = 200, array $headers = array(), $body = 'Hello World', \Closure $customizer = null)
-    {
-        $this->kernel = new TestHttpKernel($body, $statusCode, $headers, $customizer);
-    }
-
-    public function setNextResponses($responses)
-    {
-        $this->kernel = new TestMultipleHttpKernel($responses);
-    }
-
-    public function catchExceptions($catch = true)
-    {
-        $this->catch = $catch;
-    }
-
-    public static function clearDirectory($directory)
-    {
-        if (!is_dir($directory)) {
-            return;
-        }
-
-        $fp = opendir($directory);
-        while (false !== $file = readdir($fp)) {
-            if (!in_array($file, array('.', '..'))) {
-                if (is_link($directory.'/'.$file)) {
-                    unlink($directory.'/'.$file);
-                } elseif (is_dir($directory.'/'.$file)) {
-                    self::clearDirectory($directory.'/'.$file);
-                    rmdir($directory.'/'.$file);
-                } else {
-                    unlink($directory.'/'.$file);
-                }
-            }
-        }
-
-        closedir($fp);
-    }
-}
diff --git a/vendor/symfony/http-kernel/Tests/HttpCache/SsiTest.php b/vendor/symfony/http-kernel/Tests/HttpCache/SsiTest.php
deleted file mode 100644
index 07b70dc..0000000
--- a/vendor/symfony/http-kernel/Tests/HttpCache/SsiTest.php
+++ /dev/null
@@ -1,214 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpKernel\Tests\HttpCache;
-
-use Symfony\Component\HttpFoundation\Request;
-use Symfony\Component\HttpFoundation\Response;
-use Symfony\Component\HttpKernel\HttpCache\Ssi;
-
-class SsiTest extends \PHPUnit_Framework_TestCase
-{
-    public function testHasSurrogateSsiCapability()
-    {
-        $ssi = new Ssi();
-
-        $request = Request::create('/');
-        $request->headers->set('Surrogate-Capability', 'abc="SSI/1.0"');
-        $this->assertTrue($ssi->hasSurrogateCapability($request));
-
-        $request = Request::create('/');
-        $request->headers->set('Surrogate-Capability', 'foobar');
-        $this->assertFalse($ssi->hasSurrogateCapability($request));
-
-        $request = Request::create('/');
-        $this->assertFalse($ssi->hasSurrogateCapability($request));
-    }
-
-    public function testAddSurrogateSsiCapability()
-    {
-        $ssi = new Ssi();
-
-        $request = Request::create('/');
-        $ssi->addSurrogateCapability($request);
-        $this->assertEquals('symfony2="SSI/1.0"', $request->headers->get('Surrogate-Capability'));
-
-        $ssi->addSurrogateCapability($request);
-        $this->assertEquals('symfony2="SSI/1.0", symfony2="SSI/1.0"', $request->headers->get('Surrogate-Capability'));
-    }
-
-    public function testAddSurrogateControl()
-    {
-        $ssi = new Ssi();
-
-        $response = new Response('foo <!--#include virtual="" -->');
-        $ssi->addSurrogateControl($response);
-        $this->assertEquals('content="SSI/1.0"', $response->headers->get('Surrogate-Control'));
-
-        $response = new Response('foo');
-        $ssi->addSurrogateControl($response);
-        $this->assertEquals('', $response->headers->get('Surrogate-Control'));
-    }
-
-    public function testNeedsSsiParsing()
-    {
-        $ssi = new Ssi();
-
-        $response = new Response();
-        $response->headers->set('Surrogate-Control', 'content="SSI/1.0"');
-        $this->assertTrue($ssi->needsParsing($response));
-
-        $response = new Response();
-        $this->assertFalse($ssi->needsParsing($response));
-    }
-
-    public function testRenderIncludeTag()
-    {
-        $ssi = new Ssi();
-
-        $this->assertEquals('<!--#include virtual="/" -->', $ssi->renderIncludeTag('/', '/alt', true));
-        $this->assertEquals('<!--#include virtual="/" -->', $ssi->renderIncludeTag('/', '/alt', false));
-        $this->assertEquals('<!--#include virtual="/" -->', $ssi->renderIncludeTag('/'));
-    }
-
-    public function testProcessDoesNothingIfContentTypeIsNotHtml()
-    {
-        $ssi = new Ssi();
-
-        $request = Request::create('/');
-        $response = new Response();
-        $response->headers->set('Content-Type', 'text/plain');
-        $ssi->process($request, $response);
-
-        $this->assertFalse($response->headers->has('x-body-eval'));
-    }
-
-    public function testProcess()
-    {
-        $ssi = new Ssi();
-
-        $request = Request::create('/');
-        $response = new Response('foo <!--#include virtual="..." -->');
-        $ssi->process($request, $response);
-
-        $this->assertEquals('foo <?php echo $this->surrogate->handle($this, \'...\', \'\', false) ?>'."\n", $response->getContent());
-        $this->assertEquals('SSI', $response->headers->get('x-body-eval'));
-
-        $response = new Response('foo <!--#include virtual="foo\'" -->');
-        $ssi->process($request, $response);
-
-        $this->assertEquals("foo <?php echo \$this->surrogate->handle(\$this, 'foo\\'', '', false) ?>"."\n", $response->getContent());
-    }
-
-    public function testProcessEscapesPhpTags()
-    {
-        $ssi = new Ssi();
-
-        $request = Request::create('/');
-        $response = new Response('<?php <? <% <script language=php>');
-        $ssi->process($request, $response);
-
-        $this->assertEquals('<?php echo "<?"; ?>php <?php echo "<?"; ?> <?php echo "<%"; ?> <?php echo "<s"; ?>cript language=php>', $response->getContent());
-    }
-
-    /**
-     * @expectedException \RuntimeException
-     */
-    public function testProcessWhenNoSrcInAnSsi()
-    {
-        $ssi = new Ssi();
-
-        $request = Request::create('/');
-        $response = new Response('foo <!--#include -->');
-        $ssi->process($request, $response);
-    }
-
-    public function testProcessRemoveSurrogateControlHeader()
-    {
-        $ssi = new Ssi();
-
-        $request = Request::create('/');
-        $response = new Response('foo <!--#include virtual="..." -->');
-        $response->headers->set('Surrogate-Control', 'content="SSI/1.0"');
-        $ssi->process($request, $response);
-        $this->assertEquals('SSI', $response->headers->get('x-body-eval'));
-
-        $response->headers->set('Surrogate-Control', 'no-store, content="SSI/1.0"');
-        $ssi->process($request, $response);
-        $this->assertEquals('SSI', $response->headers->get('x-body-eval'));
-        $this->assertEquals('no-store', $response->headers->get('surrogate-control'));
-
-        $response->headers->set('Surrogate-Control', 'content="SSI/1.0", no-store');
-        $ssi->process($request, $response);
-        $this->assertEquals('SSI', $response->headers->get('x-body-eval'));
-        $this->assertEquals('no-store', $response->headers->get('surrogate-control'));
-    }
-
-    public function testHandle()
-    {
-        $ssi = new Ssi();
-        $cache = $this->getCache(Request::create('/'), new Response('foo'));
-        $this->assertEquals('foo', $ssi->handle($cache, '/', '/alt', true));
-    }
-
-    /**
-     * @expectedException \RuntimeException
-     */
-    public function testHandleWhenResponseIsNot200()
-    {
-        $ssi = new Ssi();
-        $response = new Response('foo');
-        $response->setStatusCode(404);
-        $cache = $this->getCache(Request::create('/'), $response);
-        $ssi->handle($cache, '/', '/alt', false);
-    }
-
-    public function testHandleWhenResponseIsNot200AndErrorsAreIgnored()
-    {
-        $ssi = new Ssi();
-        $response = new Response('foo');
-        $response->setStatusCode(404);
-        $cache = $this->getCache(Request::create('/'), $response);
-        $this->assertEquals('', $ssi->handle($cache, '/', '/alt', true));
-    }
-
-    public function testHandleWhenResponseIsNot200AndAltIsPresent()
-    {
-        $ssi = new Ssi();
-        $response1 = new Response('foo');
-        $response1->setStatusCode(404);
-        $response2 = new Response('bar');
-        $cache = $this->getCache(Request::create('/'), array($response1, $response2));
-        $this->assertEquals('bar', $ssi->handle($cache, '/', '/alt', false));
-    }
-
-    protected function getCache($request, $response)
-    {
-        $cache = $this->getMock('Symfony\Component\HttpKernel\HttpCache\HttpCache', array('getRequest', 'handle'), array(), '', false);
-        $cache->expects($this->any())
-              ->method('getRequest')
-              ->will($this->returnValue($request))
-        ;
-        if (is_array($response)) {
-            $cache->expects($this->any())
-                  ->method('handle')
-                  ->will(call_user_func_array(array($this, 'onConsecutiveCalls'), $response))
-            ;
-        } else {
-            $cache->expects($this->any())
-                  ->method('handle')
-                  ->will($this->returnValue($response))
-            ;
-        }
-
-        return $cache;
-    }
-}
diff --git a/vendor/symfony/http-kernel/Tests/HttpCache/StoreTest.php b/vendor/symfony/http-kernel/Tests/HttpCache/StoreTest.php
deleted file mode 100644
index 4198ce4..0000000
--- a/vendor/symfony/http-kernel/Tests/HttpCache/StoreTest.php
+++ /dev/null
@@ -1,269 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpKernel\Tests\HttpCache;
-
-use Symfony\Component\HttpFoundation\Request;
-use Symfony\Component\HttpFoundation\Response;
-use Symfony\Component\HttpKernel\HttpCache\Store;
-
-class StoreTest extends \PHPUnit_Framework_TestCase
-{
-    protected $request;
-    protected $response;
-    protected $store;
-
-    protected function setUp()
-    {
-        $this->request = Request::create('/');
-        $this->response = new Response('hello world', 200, array());
-
-        HttpCacheTestCase::clearDirectory(sys_get_temp_dir().'/http_cache');
-
-        $this->store = new Store(sys_get_temp_dir().'/http_cache');
-    }
-
-    protected function tearDown()
-    {
-        $this->store = null;
-        $this->request = null;
-        $this->response = null;
-
-        HttpCacheTestCase::clearDirectory(sys_get_temp_dir().'/http_cache');
-    }
-
-    public function testReadsAnEmptyArrayWithReadWhenNothingCachedAtKey()
-    {
-        $this->assertEmpty($this->getStoreMetadata('/nothing'));
-    }
-
-    public function testUnlockFileThatDoesExist()
-    {
-        $cacheKey = $this->storeSimpleEntry();
-        $this->store->lock($this->request);
-
-        $this->assertTrue($this->store->unlock($this->request));
-    }
-
-    public function testUnlockFileThatDoesNotExist()
-    {
-        $this->assertFalse($this->store->unlock($this->request));
-    }
-
-    public function testRemovesEntriesForKeyWithPurge()
-    {
-        $request = Request::create('/foo');
-        $this->store->write($request, new Response('foo'));
-
-        $metadata = $this->getStoreMetadata($request);
-        $this->assertNotEmpty($metadata);
-
-        $this->assertTrue($this->store->purge('/foo'));
-        $this->assertEmpty($this->getStoreMetadata($request));
-
-        // cached content should be kept after purging
-        $path = $this->store->getPath($metadata[0][1]['x-content-digest'][0]);
-        $this->assertTrue(is_file($path));
-
-        $this->assertFalse($this->store->purge('/bar'));
-    }
-
-    public function testStoresACacheEntry()
-    {
-        $cacheKey = $this->storeSimpleEntry();
-
-        $this->assertNotEmpty($this->getStoreMetadata($cacheKey));
-    }
-
-    public function testSetsTheXContentDigestResponseHeaderBeforeStoring()
-    {
-        $cacheKey = $this->storeSimpleEntry();
-        $entries = $this->getStoreMetadata($cacheKey);
-        list($req, $res) = $entries[0];
-
-        $this->assertEquals('en9f86d081884c7d659a2feaa0c55ad015a3bf4f1b2b0b822cd15d6c15b0f00a08', $res['x-content-digest'][0]);
-    }
-
-    public function testFindsAStoredEntryWithLookup()
-    {
-        $this->storeSimpleEntry();
-        $response = $this->store->lookup($this->request);
-
-        $this->assertNotNull($response);
-        $this->assertInstanceOf('Symfony\Component\HttpFoundation\Response', $response);
-    }
-
-    public function testDoesNotFindAnEntryWithLookupWhenNoneExists()
-    {
-        $request = Request::create('/test', 'get', array(), array(), array(), array('HTTP_FOO' => 'Foo', 'HTTP_BAR' => 'Bar'));
-
-        $this->assertNull($this->store->lookup($request));
-    }
-
-    public function testCanonizesUrlsForCacheKeys()
-    {
-        $this->storeSimpleEntry($path = '/test?x=y&p=q');
-        $hitsReq = Request::create($path);
-        $missReq = Request::create('/test?p=x');
-
-        $this->assertNotNull($this->store->lookup($hitsReq));
-        $this->assertNull($this->store->lookup($missReq));
-    }
-
-    public function testDoesNotFindAnEntryWithLookupWhenTheBodyDoesNotExist()
-    {
-        $this->storeSimpleEntry();
-        $this->assertNotNull($this->response->headers->get('X-Content-Digest'));
-        $path = $this->getStorePath($this->response->headers->get('X-Content-Digest'));
-        @unlink($path);
-        $this->assertNull($this->store->lookup($this->request));
-    }
-
-    public function testRestoresResponseHeadersProperlyWithLookup()
-    {
-        $this->storeSimpleEntry();
-        $response = $this->store->lookup($this->request);
-
-        $this->assertEquals($response->headers->all(), array_merge(array('content-length' => 4, 'x-body-file' => array($this->getStorePath($response->headers->get('X-Content-Digest')))), $this->response->headers->all()));
-    }
-
-    public function testRestoresResponseContentFromEntityStoreWithLookup()
-    {
-        $this->storeSimpleEntry();
-        $response = $this->store->lookup($this->request);
-        $this->assertEquals($this->getStorePath('en'.hash('sha256', 'test')), $response->getContent());
-    }
-
-    public function testInvalidatesMetaAndEntityStoreEntriesWithInvalidate()
-    {
-        $this->storeSimpleEntry();
-        $this->store->invalidate($this->request);
-        $response = $this->store->lookup($this->request);
-        $this->assertInstanceOf('Symfony\Component\HttpFoundation\Response', $response);
-        $this->assertFalse($response->isFresh());
-    }
-
-    public function testSucceedsQuietlyWhenInvalidateCalledWithNoMatchingEntries()
-    {
-        $req = Request::create('/test');
-        $this->store->invalidate($req);
-        $this->assertNull($this->store->lookup($this->request));
-    }
-
-    public function testDoesNotReturnEntriesThatVaryWithLookup()
-    {
-        $req1 = Request::create('/test', 'get', array(), array(), array(), array('HTTP_FOO' => 'Foo', 'HTTP_BAR' => 'Bar'));
-        $req2 = Request::create('/test', 'get', array(), array(), array(), array('HTTP_FOO' => 'Bling', 'HTTP_BAR' => 'Bam'));
-        $res = new Response('test', 200, array('Vary' => 'Foo Bar'));
-        $this->store->write($req1, $res);
-
-        $this->assertNull($this->store->lookup($req2));
-    }
-
-    public function testDoesNotReturnEntriesThatSlightlyVaryWithLookup()
-    {
-        $req1 = Request::create('/test', 'get', array(), array(), array(), array('HTTP_FOO' => 'Foo', 'HTTP_BAR' => 'Bar'));
-        $req2 = Request::create('/test', 'get', array(), array(), array(), array('HTTP_FOO' => 'Foo', 'HTTP_BAR' => 'Bam'));
-        $res = new Response('test', 200, array('Vary' => array('Foo', 'Bar')));
-        $this->store->write($req1, $res);
-
-        $this->assertNull($this->store->lookup($req2));
-    }
-
-    public function testStoresMultipleResponsesForEachVaryCombination()
-    {
-        $req1 = Request::create('/test', 'get', array(), array(), array(), array('HTTP_FOO' => 'Foo', 'HTTP_BAR' => 'Bar'));
-        $res1 = new Response('test 1', 200, array('Vary' => 'Foo Bar'));
-        $key = $this->store->write($req1, $res1);
-
-        $req2 = Request::create('/test', 'get', array(), array(), array(), array('HTTP_FOO' => 'Bling', 'HTTP_BAR' => 'Bam'));
-        $res2 = new Response('test 2', 200, array('Vary' => 'Foo Bar'));
-        $this->store->write($req2, $res2);
-
-        $req3 = Request::create('/test', 'get', array(), array(), array(), array('HTTP_FOO' => 'Baz', 'HTTP_BAR' => 'Boom'));
-        $res3 = new Response('test 3', 200, array('Vary' => 'Foo Bar'));
-        $this->store->write($req3, $res3);
-
-        $this->assertEquals($this->getStorePath('en'.hash('sha256', 'test 3')), $this->store->lookup($req3)->getContent());
-        $this->assertEquals($this->getStorePath('en'.hash('sha256', 'test 2')), $this->store->lookup($req2)->getContent());
-        $this->assertEquals($this->getStorePath('en'.hash('sha256', 'test 1')), $this->store->lookup($req1)->getContent());
-
-        $this->assertCount(3, $this->getStoreMetadata($key));
-    }
-
-    public function testOverwritesNonVaryingResponseWithStore()
-    {
-        $req1 = Request::create('/test', 'get', array(), array(), array(), array('HTTP_FOO' => 'Foo', 'HTTP_BAR' => 'Bar'));
-        $res1 = new Response('test 1', 200, array('Vary' => 'Foo Bar'));
-        $key = $this->store->write($req1, $res1);
-        $this->assertEquals($this->getStorePath('en'.hash('sha256', 'test 1')), $this->store->lookup($req1)->getContent());
-
-        $req2 = Request::create('/test', 'get', array(), array(), array(), array('HTTP_FOO' => 'Bling', 'HTTP_BAR' => 'Bam'));
-        $res2 = new Response('test 2', 200, array('Vary' => 'Foo Bar'));
-        $this->store->write($req2, $res2);
-        $this->assertEquals($this->getStorePath('en'.hash('sha256', 'test 2')), $this->store->lookup($req2)->getContent());
-
-        $req3 = Request::create('/test', 'get', array(), array(), array(), array('HTTP_FOO' => 'Foo', 'HTTP_BAR' => 'Bar'));
-        $res3 = new Response('test 3', 200, array('Vary' => 'Foo Bar'));
-        $key = $this->store->write($req3, $res3);
-        $this->assertEquals($this->getStorePath('en'.hash('sha256', 'test 3')), $this->store->lookup($req3)->getContent());
-
-        $this->assertCount(2, $this->getStoreMetadata($key));
-    }
-
-    public function testLocking()
-    {
-        $req = Request::create('/test', 'get', array(), array(), array(), array('HTTP_FOO' => 'Foo', 'HTTP_BAR' => 'Bar'));
-        $this->assertTrue($this->store->lock($req));
-
-        $path = $this->store->lock($req);
-        $this->assertTrue($this->store->isLocked($req));
-
-        $this->store->unlock($req);
-        $this->assertFalse($this->store->isLocked($req));
-    }
-
-    protected function storeSimpleEntry($path = null, $headers = array())
-    {
-        if (null === $path) {
-            $path = '/test';
-        }
-
-        $this->request = Request::create($path, 'get', array(), array(), array(), $headers);
-        $this->response = new Response('test', 200, array('Cache-Control' => 'max-age=420'));
-
-        return $this->store->write($this->request, $this->response);
-    }
-
-    protected function getStoreMetadata($key)
-    {
-        $r = new \ReflectionObject($this->store);
-        $m = $r->getMethod('getMetadata');
-        $m->setAccessible(true);
-
-        if ($key instanceof Request) {
-            $m1 = $r->getMethod('getCacheKey');
-            $m1->setAccessible(true);
-            $key = $m1->invoke($this->store, $key);
-        }
-
-        return $m->invoke($this->store, $key);
-    }
-
-    protected function getStorePath($key)
-    {
-        $r = new \ReflectionObject($this->store);
-        $m = $r->getMethod('getPath');
-        $m->setAccessible(true);
-
-        return $m->invoke($this->store, $key);
-    }
-}
diff --git a/vendor/symfony/http-kernel/Tests/HttpCache/TestHttpKernel.php b/vendor/symfony/http-kernel/Tests/HttpCache/TestHttpKernel.php
deleted file mode 100644
index 5546ba2..0000000
--- a/vendor/symfony/http-kernel/Tests/HttpCache/TestHttpKernel.php
+++ /dev/null
@@ -1,91 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpKernel\Tests\HttpCache;
-
-use Symfony\Component\HttpKernel\HttpKernel;
-use Symfony\Component\HttpKernel\HttpKernelInterface;
-use Symfony\Component\HttpFoundation\Request;
-use Symfony\Component\HttpFoundation\Response;
-use Symfony\Component\HttpKernel\Controller\ControllerResolverInterface;
-use Symfony\Component\EventDispatcher\EventDispatcher;
-
-class TestHttpKernel extends HttpKernel implements ControllerResolverInterface
-{
-    protected $body;
-    protected $status;
-    protected $headers;
-    protected $called = false;
-    protected $customizer;
-    protected $catch = false;
-    protected $backendRequest;
-
-    public function __construct($body, $status, $headers, \Closure $customizer = null)
-    {
-        $this->body = $body;
-        $this->status = $status;
-        $this->headers = $headers;
-        $this->customizer = $customizer;
-
-        parent::__construct(new EventDispatcher(), $this);
-    }
-
-    public function getBackendRequest()
-    {
-        return $this->backendRequest;
-    }
-
-    public function handle(Request $request, $type = HttpKernelInterface::MASTER_REQUEST, $catch = false)
-    {
-        $this->catch = $catch;
-        $this->backendRequest = $request;
-
-        return parent::handle($request, $type, $catch);
-    }
-
-    public function isCatchingExceptions()
-    {
-        return $this->catch;
-    }
-
-    public function getController(Request $request)
-    {
-        return array($this, 'callController');
-    }
-
-    public function getArguments(Request $request, $controller)
-    {
-        return array($request);
-    }
-
-    public function callController(Request $request)
-    {
-        $this->called = true;
-
-        $response = new Response($this->body, $this->status, $this->headers);
-
-        if (null !== $customizer = $this->customizer) {
-            $customizer($request, $response);
-        }
-
-        return $response;
-    }
-
-    public function hasBeenCalled()
-    {
-        return $this->called;
-    }
-
-    public function reset()
-    {
-        $this->called = false;
-    }
-}
diff --git a/vendor/symfony/http-kernel/Tests/HttpCache/TestMultipleHttpKernel.php b/vendor/symfony/http-kernel/Tests/HttpCache/TestMultipleHttpKernel.php
deleted file mode 100644
index 773e221..0000000
--- a/vendor/symfony/http-kernel/Tests/HttpCache/TestMultipleHttpKernel.php
+++ /dev/null
@@ -1,80 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpKernel\Tests\HttpCache;
-
-use Symfony\Component\HttpKernel\HttpKernel;
-use Symfony\Component\HttpKernel\HttpKernelInterface;
-use Symfony\Component\HttpFoundation\Request;
-use Symfony\Component\HttpFoundation\Response;
-use Symfony\Component\HttpKernel\Controller\ControllerResolverInterface;
-use Symfony\Component\EventDispatcher\EventDispatcher;
-
-class TestMultipleHttpKernel extends HttpKernel implements ControllerResolverInterface
-{
-    protected $bodies = array();
-    protected $statuses = array();
-    protected $headers = array();
-    protected $call = false;
-    protected $backendRequest;
-
-    public function __construct($responses)
-    {
-        foreach ($responses as $response) {
-            $this->bodies[] = $response['body'];
-            $this->statuses[] = $response['status'];
-            $this->headers[] = $response['headers'];
-        }
-
-        parent::__construct(new EventDispatcher(), $this);
-    }
-
-    public function getBackendRequest()
-    {
-        return $this->backendRequest;
-    }
-
-    public function handle(Request $request, $type = HttpKernelInterface::MASTER_REQUEST, $catch = false)
-    {
-        $this->backendRequest = $request;
-
-        return parent::handle($request, $type, $catch);
-    }
-
-    public function getController(Request $request)
-    {
-        return array($this, 'callController');
-    }
-
-    public function getArguments(Request $request, $controller)
-    {
-        return array($request);
-    }
-
-    public function callController(Request $request)
-    {
-        $this->called = true;
-
-        $response = new Response(array_shift($this->bodies), array_shift($this->statuses), array_shift($this->headers));
-
-        return $response;
-    }
-
-    public function hasBeenCalled()
-    {
-        return $this->called;
-    }
-
-    public function reset()
-    {
-        $this->call = false;
-    }
-}
diff --git a/vendor/symfony/http-kernel/Tests/HttpKernelTest.php b/vendor/symfony/http-kernel/Tests/HttpKernelTest.php
deleted file mode 100644
index 97e68f6..0000000
--- a/vendor/symfony/http-kernel/Tests/HttpKernelTest.php
+++ /dev/null
@@ -1,319 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpKernel\Tests;
-
-use Symfony\Component\HttpKernel\HttpKernel;
-use Symfony\Component\HttpKernel\HttpKernelInterface;
-use Symfony\Component\HttpKernel\KernelEvents;
-use Symfony\Component\HttpKernel\Exception\MethodNotAllowedHttpException;
-use Symfony\Component\HttpKernel\Exception\AccessDeniedHttpException;
-use Symfony\Component\HttpFoundation\Request;
-use Symfony\Component\HttpFoundation\Response;
-use Symfony\Component\HttpFoundation\RedirectResponse;
-use Symfony\Component\EventDispatcher\EventDispatcher;
-
-class HttpKernelTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @expectedException \RuntimeException
-     */
-    public function testHandleWhenControllerThrowsAnExceptionAndCatchIsTrue()
-    {
-        $kernel = new HttpKernel(new EventDispatcher(), $this->getResolver(function () { throw new \RuntimeException(); }));
-
-        $kernel->handle(new Request(), HttpKernelInterface::MASTER_REQUEST, true);
-    }
-
-    /**
-     * @expectedException \RuntimeException
-     */
-    public function testHandleWhenControllerThrowsAnExceptionAndCatchIsFalseAndNoListenerIsRegistered()
-    {
-        $kernel = new HttpKernel(new EventDispatcher(), $this->getResolver(function () { throw new \RuntimeException(); }));
-
-        $kernel->handle(new Request(), HttpKernelInterface::MASTER_REQUEST, false);
-    }
-
-    public function testHandleWhenControllerThrowsAnExceptionAndCatchIsTrueWithAHandlingListener()
-    {
-        $dispatcher = new EventDispatcher();
-        $dispatcher->addListener(KernelEvents::EXCEPTION, function ($event) {
-            $event->setResponse(new Response($event->getException()->getMessage()));
-        });
-
-        $kernel = new HttpKernel($dispatcher, $this->getResolver(function () { throw new \RuntimeException('foo'); }));
-        $response = $kernel->handle(new Request(), HttpKernelInterface::MASTER_REQUEST, true);
-
-        $this->assertEquals('500', $response->getStatusCode());
-        $this->assertEquals('foo', $response->getContent());
-    }
-
-    public function testHandleWhenControllerThrowsAnExceptionAndCatchIsTrueWithANonHandlingListener()
-    {
-        $exception = new \RuntimeException();
-
-        $dispatcher = new EventDispatcher();
-        $dispatcher->addListener(KernelEvents::EXCEPTION, function ($event) {
-            // should set a response, but does not
-        });
-
-        $kernel = new HttpKernel($dispatcher, $this->getResolver(function () use ($exception) { throw $exception; }));
-
-        try {
-            $kernel->handle(new Request(), HttpKernelInterface::MASTER_REQUEST, true);
-            $this->fail('LogicException expected');
-        } catch (\RuntimeException $e) {
-            $this->assertSame($exception, $e);
-        }
-    }
-
-    public function testHandleExceptionWithARedirectionResponse()
-    {
-        $dispatcher = new EventDispatcher();
-        $dispatcher->addListener(KernelEvents::EXCEPTION, function ($event) {
-            $event->setResponse(new RedirectResponse('/login', 301));
-        });
-
-        $kernel = new HttpKernel($dispatcher, $this->getResolver(function () { throw new AccessDeniedHttpException(); }));
-        $response = $kernel->handle(new Request());
-
-        $this->assertEquals('301', $response->getStatusCode());
-        $this->assertEquals('/login', $response->headers->get('Location'));
-    }
-
-    public function testHandleHttpException()
-    {
-        $dispatcher = new EventDispatcher();
-        $dispatcher->addListener(KernelEvents::EXCEPTION, function ($event) {
-            $event->setResponse(new Response($event->getException()->getMessage()));
-        });
-
-        $kernel = new HttpKernel($dispatcher, $this->getResolver(function () { throw new MethodNotAllowedHttpException(array('POST')); }));
-        $response = $kernel->handle(new Request());
-
-        $this->assertEquals('405', $response->getStatusCode());
-        $this->assertEquals('POST', $response->headers->get('Allow'));
-    }
-
-    /**
-     * @dataProvider getStatusCodes
-     */
-    public function testHandleWhenAnExceptionIsHandledWithASpecificStatusCode($responseStatusCode, $expectedStatusCode)
-    {
-        $dispatcher = new EventDispatcher();
-        $dispatcher->addListener(KernelEvents::EXCEPTION, function ($event) use ($responseStatusCode, $expectedStatusCode) {
-            $event->setResponse(new Response('', $responseStatusCode, array('X-Status-Code' => $expectedStatusCode)));
-        });
-
-        $kernel = new HttpKernel($dispatcher, $this->getResolver(function () { throw new \RuntimeException(); }));
-        $response = $kernel->handle(new Request());
-
-        $this->assertEquals($expectedStatusCode, $response->getStatusCode());
-        $this->assertFalse($response->headers->has('X-Status-Code'));
-    }
-
-    public function getStatusCodes()
-    {
-        return array(
-            array(200, 404),
-            array(404, 200),
-            array(301, 200),
-            array(500, 200),
-        );
-    }
-
-    public function testHandleWhenAListenerReturnsAResponse()
-    {
-        $dispatcher = new EventDispatcher();
-        $dispatcher->addListener(KernelEvents::REQUEST, function ($event) {
-            $event->setResponse(new Response('hello'));
-        });
-
-        $kernel = new HttpKernel($dispatcher, $this->getResolver());
-
-        $this->assertEquals('hello', $kernel->handle(new Request())->getContent());
-    }
-
-    /**
-     * @expectedException \Symfony\Component\HttpKernel\Exception\NotFoundHttpException
-     */
-    public function testHandleWhenNoControllerIsFound()
-    {
-        $dispatcher = new EventDispatcher();
-        $kernel = new HttpKernel($dispatcher, $this->getResolver(false));
-
-        $kernel->handle(new Request());
-    }
-
-    /**
-     * @expectedException \LogicException
-     */
-    public function testHandleWhenTheControllerIsNotACallable()
-    {
-        $dispatcher = new EventDispatcher();
-        $kernel = new HttpKernel($dispatcher, $this->getResolver('foobar'));
-
-        $kernel->handle(new Request());
-    }
-
-    public function testHandleWhenTheControllerIsAClosure()
-    {
-        $response = new Response('foo');
-        $dispatcher = new EventDispatcher();
-        $kernel = new HttpKernel($dispatcher, $this->getResolver(function () use ($response) { return $response; }));
-
-        $this->assertSame($response, $kernel->handle(new Request()));
-    }
-
-    public function testHandleWhenTheControllerIsAnObjectWithInvoke()
-    {
-        $dispatcher = new EventDispatcher();
-        $kernel = new HttpKernel($dispatcher, $this->getResolver(new Controller()));
-
-        $this->assertResponseEquals(new Response('foo'), $kernel->handle(new Request()));
-    }
-
-    public function testHandleWhenTheControllerIsAFunction()
-    {
-        $dispatcher = new EventDispatcher();
-        $kernel = new HttpKernel($dispatcher, $this->getResolver('Symfony\Component\HttpKernel\Tests\controller_func'));
-
-        $this->assertResponseEquals(new Response('foo'), $kernel->handle(new Request()));
-    }
-
-    public function testHandleWhenTheControllerIsAnArray()
-    {
-        $dispatcher = new EventDispatcher();
-        $kernel = new HttpKernel($dispatcher, $this->getResolver(array(new Controller(), 'controller')));
-
-        $this->assertResponseEquals(new Response('foo'), $kernel->handle(new Request()));
-    }
-
-    public function testHandleWhenTheControllerIsAStaticArray()
-    {
-        $dispatcher = new EventDispatcher();
-        $kernel = new HttpKernel($dispatcher, $this->getResolver(array('Symfony\Component\HttpKernel\Tests\Controller', 'staticcontroller')));
-
-        $this->assertResponseEquals(new Response('foo'), $kernel->handle(new Request()));
-    }
-
-    /**
-     * @expectedException \LogicException
-     */
-    public function testHandleWhenTheControllerDoesNotReturnAResponse()
-    {
-        $dispatcher = new EventDispatcher();
-        $kernel = new HttpKernel($dispatcher, $this->getResolver(function () { return 'foo'; }));
-
-        $kernel->handle(new Request());
-    }
-
-    public function testHandleWhenTheControllerDoesNotReturnAResponseButAViewIsRegistered()
-    {
-        $dispatcher = new EventDispatcher();
-        $dispatcher->addListener(KernelEvents::VIEW, function ($event) {
-            $event->setResponse(new Response($event->getControllerResult()));
-        });
-        $kernel = new HttpKernel($dispatcher, $this->getResolver(function () { return 'foo'; }));
-
-        $this->assertEquals('foo', $kernel->handle(new Request())->getContent());
-    }
-
-    public function testHandleWithAResponseListener()
-    {
-        $dispatcher = new EventDispatcher();
-        $dispatcher->addListener(KernelEvents::RESPONSE, function ($event) {
-            $event->setResponse(new Response('foo'));
-        });
-        $kernel = new HttpKernel($dispatcher, $this->getResolver());
-
-        $this->assertEquals('foo', $kernel->handle(new Request())->getContent());
-    }
-
-    public function testTerminate()
-    {
-        $dispatcher = new EventDispatcher();
-        $kernel = new HttpKernel($dispatcher, $this->getResolver());
-        $dispatcher->addListener(KernelEvents::TERMINATE, function ($event) use (&$called, &$capturedKernel, &$capturedRequest, &$capturedResponse) {
-            $called = true;
-            $capturedKernel = $event->getKernel();
-            $capturedRequest = $event->getRequest();
-            $capturedResponse = $event->getResponse();
-        });
-
-        $kernel->terminate($request = Request::create('/'), $response = new Response());
-        $this->assertTrue($called);
-        $this->assertEquals($kernel, $capturedKernel);
-        $this->assertEquals($request, $capturedRequest);
-        $this->assertEquals($response, $capturedResponse);
-    }
-
-    public function testVerifyRequestStackPushPopDuringHandle()
-    {
-        $request = new Request();
-
-        $stack = $this->getMock('Symfony\Component\HttpFoundation\RequestStack', array('push', 'pop'));
-        $stack->expects($this->at(0))->method('push')->with($this->equalTo($request));
-        $stack->expects($this->at(1))->method('pop');
-
-        $dispatcher = new EventDispatcher();
-        $kernel = new HttpKernel($dispatcher, $this->getResolver(), $stack);
-
-        $kernel->handle($request, HttpKernelInterface::MASTER_REQUEST);
-    }
-
-    protected function getResolver($controller = null)
-    {
-        if (null === $controller) {
-            $controller = function () { return new Response('Hello'); };
-        }
-
-        $resolver = $this->getMock('Symfony\\Component\\HttpKernel\\Controller\\ControllerResolverInterface');
-        $resolver->expects($this->any())
-            ->method('getController')
-            ->will($this->returnValue($controller));
-        $resolver->expects($this->any())
-            ->method('getArguments')
-            ->will($this->returnValue(array()));
-
-        return $resolver;
-    }
-
-    protected function assertResponseEquals(Response $expected, Response $actual)
-    {
-        $expected->setDate($actual->getDate());
-        $this->assertEquals($expected, $actual);
-    }
-}
-
-class Controller
-{
-    public function __invoke()
-    {
-        return new Response('foo');
-    }
-
-    public function controller()
-    {
-        return new Response('foo');
-    }
-
-    public static function staticController()
-    {
-        return new Response('foo');
-    }
-}
-
-function controller_func()
-{
-    return new Response('foo');
-}
diff --git a/vendor/symfony/http-kernel/Tests/KernelTest.php b/vendor/symfony/http-kernel/Tests/KernelTest.php
deleted file mode 100644
index edb3142..0000000
--- a/vendor/symfony/http-kernel/Tests/KernelTest.php
+++ /dev/null
@@ -1,849 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpKernel\Tests;
-
-use Symfony\Component\DependencyInjection\ContainerBuilder;
-use Symfony\Component\HttpKernel\Bundle\BundleInterface;
-use Symfony\Component\HttpKernel\Config\EnvParametersResource;
-use Symfony\Component\HttpKernel\Kernel;
-use Symfony\Component\HttpKernel\HttpKernelInterface;
-use Symfony\Component\HttpFoundation\Request;
-use Symfony\Component\HttpFoundation\Response;
-use Symfony\Component\HttpKernel\Tests\Fixtures\KernelForTest;
-use Symfony\Component\HttpKernel\Tests\Fixtures\KernelForOverrideName;
-use Symfony\Component\HttpKernel\Tests\Fixtures\FooBarBundle;
-
-class KernelTest extends \PHPUnit_Framework_TestCase
-{
-    public function testConstructor()
-    {
-        $env = 'test_env';
-        $debug = true;
-        $kernel = new KernelForTest($env, $debug);
-
-        $this->assertEquals($env, $kernel->getEnvironment());
-        $this->assertEquals($debug, $kernel->isDebug());
-        $this->assertFalse($kernel->isBooted());
-        $this->assertLessThanOrEqual(microtime(true), $kernel->getStartTime());
-        $this->assertNull($kernel->getContainer());
-    }
-
-    public function testClone()
-    {
-        $env = 'test_env';
-        $debug = true;
-        $kernel = new KernelForTest($env, $debug);
-
-        $clone = clone $kernel;
-
-        $this->assertEquals($env, $clone->getEnvironment());
-        $this->assertEquals($debug, $clone->isDebug());
-        $this->assertFalse($clone->isBooted());
-        $this->assertLessThanOrEqual(microtime(true), $clone->getStartTime());
-        $this->assertNull($clone->getContainer());
-    }
-
-    public function testBootInitializesBundlesAndContainer()
-    {
-        $kernel = $this->getKernel(array('initializeBundles', 'initializeContainer'));
-        $kernel->expects($this->once())
-            ->method('initializeBundles');
-        $kernel->expects($this->once())
-            ->method('initializeContainer');
-
-        $kernel->boot();
-    }
-
-    public function testBootSetsTheContainerToTheBundles()
-    {
-        $bundle = $this->getMock('Symfony\Component\HttpKernel\Bundle\Bundle');
-        $bundle->expects($this->once())
-            ->method('setContainer');
-
-        $kernel = $this->getKernel(array('initializeBundles', 'initializeContainer', 'getBundles'));
-        $kernel->expects($this->once())
-            ->method('getBundles')
-            ->will($this->returnValue(array($bundle)));
-
-        $kernel->boot();
-    }
-
-    public function testBootSetsTheBootedFlagToTrue()
-    {
-        // use test kernel to access isBooted()
-        $kernel = $this->getKernelForTest(array('initializeBundles', 'initializeContainer'));
-        $kernel->boot();
-
-        $this->assertTrue($kernel->isBooted());
-    }
-
-    public function testClassCacheIsLoaded()
-    {
-        $kernel = $this->getKernel(array('initializeBundles', 'initializeContainer', 'doLoadClassCache'));
-        $kernel->loadClassCache('name', '.extension');
-        $kernel->expects($this->once())
-            ->method('doLoadClassCache')
-            ->with('name', '.extension');
-
-        $kernel->boot();
-    }
-
-    public function testClassCacheIsNotLoadedByDefault()
-    {
-        $kernel = $this->getKernel(array('initializeBundles', 'initializeContainer'));
-        $kernel->expects($this->never())
-            ->method('doLoadClassCache');
-
-        $kernel->boot();
-    }
-
-    public function testClassCacheIsNotLoadedWhenKernelIsNotBooted()
-    {
-        $kernel = $this->getKernel(array('initializeBundles', 'initializeContainer', 'doLoadClassCache'));
-        $kernel->loadClassCache();
-        $kernel->expects($this->never())
-            ->method('doLoadClassCache');
-    }
-
-    public function testEnvParametersResourceIsAdded()
-    {
-        $container = new ContainerBuilder();
-        $kernel = $this->getMockBuilder('Symfony\Component\HttpKernel\Tests\Fixtures\KernelForTest')
-            ->disableOriginalConstructor()
-            ->setMethods(array('getContainerBuilder', 'prepareContainer', 'getCacheDir', 'getLogDir'))
-            ->getMock();
-        $kernel->expects($this->any())
-            ->method('getContainerBuilder')
-            ->will($this->returnValue($container));
-        $kernel->expects($this->any())
-            ->method('prepareContainer')
-            ->will($this->returnValue(null));
-        $kernel->expects($this->any())
-            ->method('getCacheDir')
-            ->will($this->returnValue(sys_get_temp_dir()));
-        $kernel->expects($this->any())
-            ->method('getLogDir')
-            ->will($this->returnValue(sys_get_temp_dir()));
-
-        $reflection = new \ReflectionClass(get_class($kernel));
-        $method = $reflection->getMethod('buildContainer');
-        $method->setAccessible(true);
-        $method->invoke($kernel);
-
-        $found = false;
-        foreach ($container->getResources() as $resource) {
-            if ($resource instanceof EnvParametersResource) {
-                $found = true;
-                break;
-            }
-        }
-
-        $this->assertTrue($found);
-    }
-
-    public function testBootKernelSeveralTimesOnlyInitializesBundlesOnce()
-    {
-        $kernel = $this->getKernel(array('initializeBundles', 'initializeContainer'));
-        $kernel->expects($this->once())
-            ->method('initializeBundles');
-
-        $kernel->boot();
-        $kernel->boot();
-    }
-
-    public function testShutdownCallsShutdownOnAllBundles()
-    {
-        $bundle = $this->getMock('Symfony\Component\HttpKernel\Bundle\Bundle');
-        $bundle->expects($this->once())
-            ->method('shutdown');
-
-        $kernel = $this->getKernel(array(), array($bundle));
-
-        $kernel->boot();
-        $kernel->shutdown();
-    }
-
-    public function testShutdownGivesNullContainerToAllBundles()
-    {
-        $bundle = $this->getMock('Symfony\Component\HttpKernel\Bundle\Bundle');
-        $bundle->expects($this->at(3))
-            ->method('setContainer')
-            ->with(null);
-
-        $kernel = $this->getKernel(array('getBundles'));
-        $kernel->expects($this->any())
-            ->method('getBundles')
-            ->will($this->returnValue(array($bundle)));
-
-        $kernel->boot();
-        $kernel->shutdown();
-    }
-
-    public function testHandleCallsHandleOnHttpKernel()
-    {
-        $type = HttpKernelInterface::MASTER_REQUEST;
-        $catch = true;
-        $request = new Request();
-
-        $httpKernelMock = $this->getMockBuilder('Symfony\Component\HttpKernel\HttpKernel')
-            ->disableOriginalConstructor()
-            ->getMock();
-        $httpKernelMock
-            ->expects($this->once())
-            ->method('handle')
-            ->with($request, $type, $catch);
-
-        $kernel = $this->getKernel(array('getHttpKernel'));
-        $kernel->expects($this->once())
-            ->method('getHttpKernel')
-            ->will($this->returnValue($httpKernelMock));
-
-        $kernel->handle($request, $type, $catch);
-    }
-
-    public function testHandleBootsTheKernel()
-    {
-        $type = HttpKernelInterface::MASTER_REQUEST;
-        $catch = true;
-        $request = new Request();
-
-        $httpKernelMock = $this->getMockBuilder('Symfony\Component\HttpKernel\HttpKernel')
-            ->disableOriginalConstructor()
-            ->getMock();
-
-        $kernel = $this->getKernel(array('getHttpKernel', 'boot'));
-        $kernel->expects($this->once())
-            ->method('getHttpKernel')
-            ->will($this->returnValue($httpKernelMock));
-
-        $kernel->expects($this->once())
-            ->method('boot');
-
-        $kernel->handle($request, $type, $catch);
-    }
-
-    public function testStripComments()
-    {
-        $source = <<<'EOF'
-<?php
-
-$string = 'string should not be   modified';
-
-$string = 'string should not be
-
-modified';
-
-
-$heredoc = <<<HD
-
-
-Heredoc should not be   modified
-
-
-HD;
-
-$nowdoc = <<<'ND'
-
-
-Nowdoc should not be   modified
-
-
-ND;
-
-/**
- * some class comments to strip
- */
-class TestClass
-{
-    /**
-     * some method comments to strip
-     */
-    public function doStuff()
-    {
-        // inline comment
-    }
-}
-EOF;
-        $expected = <<<'EOF'
-<?php
-$string = 'string should not be   modified';
-$string = 'string should not be
-
-modified';
-$heredoc = <<<HD
-
-
-Heredoc should not be   modified
-
-
-HD;
-$nowdoc = <<<'ND'
-
-
-Nowdoc should not be   modified
-
-
-ND;
-class TestClass
-{
-    public function doStuff()
-    {
-        }
-}
-EOF;
-
-        $output = Kernel::stripComments($source);
-
-        // Heredocs are preserved, making the output mixing Unix and Windows line
-        // endings, switching to "\n" everywhere on Windows to avoid failure.
-        if ('\\' === DIRECTORY_SEPARATOR) {
-            $expected = str_replace("\r\n", "\n", $expected);
-            $output = str_replace("\r\n", "\n", $output);
-        }
-
-        $this->assertEquals($expected, $output);
-    }
-
-    /**
-     * @group legacy
-     */
-    public function testLegacyIsClassInActiveBundleFalse()
-    {
-        $kernel = $this->getKernelMockForIsClassInActiveBundleTest();
-
-        $this->assertFalse($kernel->isClassInActiveBundle('Not\In\Active\Bundle'));
-    }
-
-    /**
-     * @group legacy
-     */
-    public function testLegacyIsClassInActiveBundleFalseNoNamespace()
-    {
-        $kernel = $this->getKernelMockForIsClassInActiveBundleTest();
-
-        $this->assertFalse($kernel->isClassInActiveBundle('NotNamespacedClass'));
-    }
-
-    /**
-     * @group legacy
-     */
-    public function testLegacyIsClassInActiveBundleTrue()
-    {
-        $kernel = $this->getKernelMockForIsClassInActiveBundleTest();
-
-        $this->assertTrue($kernel->isClassInActiveBundle(__NAMESPACE__.'\Fixtures\FooBarBundle\SomeClass'));
-    }
-
-    protected function getKernelMockForIsClassInActiveBundleTest()
-    {
-        $bundle = new FooBarBundle();
-
-        $kernel = $this->getKernel(array('getBundles'));
-        $kernel->expects($this->once())
-            ->method('getBundles')
-            ->will($this->returnValue(array($bundle)));
-
-        return $kernel;
-    }
-
-    public function testGetRootDir()
-    {
-        $kernel = new KernelForTest('test', true);
-
-        $this->assertEquals(__DIR__.DIRECTORY_SEPARATOR.'Fixtures', realpath($kernel->getRootDir()));
-    }
-
-    public function testGetName()
-    {
-        $kernel = new KernelForTest('test', true);
-
-        $this->assertEquals('Fixtures', $kernel->getName());
-    }
-
-    public function testOverrideGetName()
-    {
-        $kernel = new KernelForOverrideName('test', true);
-
-        $this->assertEquals('overridden', $kernel->getName());
-    }
-
-    public function testSerialize()
-    {
-        $env = 'test_env';
-        $debug = true;
-        $kernel = new KernelForTest($env, $debug);
-
-        $expected = serialize(array($env, $debug));
-        $this->assertEquals($expected, $kernel->serialize());
-    }
-
-    /**
-     * @expectedException \InvalidArgumentException
-     */
-    public function testLocateResourceThrowsExceptionWhenNameIsNotValid()
-    {
-        $this->getKernel()->locateResource('Foo');
-    }
-
-    /**
-     * @expectedException \RuntimeException
-     */
-    public function testLocateResourceThrowsExceptionWhenNameIsUnsafe()
-    {
-        $this->getKernel()->locateResource('@FooBundle/../bar');
-    }
-
-    /**
-     * @expectedException \InvalidArgumentException
-     */
-    public function testLocateResourceThrowsExceptionWhenBundleDoesNotExist()
-    {
-        $this->getKernel()->locateResource('@FooBundle/config/routing.xml');
-    }
-
-    /**
-     * @expectedException \InvalidArgumentException
-     */
-    public function testLocateResourceThrowsExceptionWhenResourceDoesNotExist()
-    {
-        $kernel = $this->getKernel(array('getBundle'));
-        $kernel
-            ->expects($this->once())
-            ->method('getBundle')
-            ->will($this->returnValue(array($this->getBundle(__DIR__.'/Fixtures/Bundle1Bundle'))))
-        ;
-
-        $kernel->locateResource('@Bundle1Bundle/config/routing.xml');
-    }
-
-    public function testLocateResourceReturnsTheFirstThatMatches()
-    {
-        $kernel = $this->getKernel(array('getBundle'));
-        $kernel
-            ->expects($this->once())
-            ->method('getBundle')
-            ->will($this->returnValue(array($this->getBundle(__DIR__.'/Fixtures/Bundle1Bundle'))))
-        ;
-
-        $this->assertEquals(__DIR__.'/Fixtures/Bundle1Bundle/foo.txt', $kernel->locateResource('@Bundle1Bundle/foo.txt'));
-    }
-
-    public function testLocateResourceReturnsTheFirstThatMatchesWithParent()
-    {
-        $parent = $this->getBundle(__DIR__.'/Fixtures/Bundle1Bundle');
-        $child = $this->getBundle(__DIR__.'/Fixtures/Bundle2Bundle');
-
-        $kernel = $this->getKernel(array('getBundle'));
-        $kernel
-            ->expects($this->exactly(2))
-            ->method('getBundle')
-            ->will($this->returnValue(array($child, $parent)))
-        ;
-
-        $this->assertEquals(__DIR__.'/Fixtures/Bundle2Bundle/foo.txt', $kernel->locateResource('@ParentAABundle/foo.txt'));
-        $this->assertEquals(__DIR__.'/Fixtures/Bundle1Bundle/bar.txt', $kernel->locateResource('@ParentAABundle/bar.txt'));
-    }
-
-    public function testLocateResourceReturnsAllMatches()
-    {
-        $parent = $this->getBundle(__DIR__.'/Fixtures/Bundle1Bundle');
-        $child = $this->getBundle(__DIR__.'/Fixtures/Bundle2Bundle');
-
-        $kernel = $this->getKernel(array('getBundle'));
-        $kernel
-            ->expects($this->once())
-            ->method('getBundle')
-            ->will($this->returnValue(array($child, $parent)))
-        ;
-
-        $this->assertEquals(array(
-            __DIR__.'/Fixtures/Bundle2Bundle/foo.txt',
-            __DIR__.'/Fixtures/Bundle1Bundle/foo.txt', ),
-            $kernel->locateResource('@Bundle1Bundle/foo.txt', null, false));
-    }
-
-    public function testLocateResourceReturnsAllMatchesBis()
-    {
-        $kernel = $this->getKernel(array('getBundle'));
-        $kernel
-            ->expects($this->once())
-            ->method('getBundle')
-            ->will($this->returnValue(array(
-                $this->getBundle(__DIR__.'/Fixtures/Bundle1Bundle'),
-                $this->getBundle(__DIR__.'/Foobar'),
-            )))
-        ;
-
-        $this->assertEquals(
-            array(__DIR__.'/Fixtures/Bundle1Bundle/foo.txt'),
-            $kernel->locateResource('@Bundle1Bundle/foo.txt', null, false)
-        );
-    }
-
-    public function testLocateResourceIgnoresDirOnNonResource()
-    {
-        $kernel = $this->getKernel(array('getBundle'));
-        $kernel
-            ->expects($this->once())
-            ->method('getBundle')
-            ->will($this->returnValue(array($this->getBundle(__DIR__.'/Fixtures/Bundle1Bundle'))))
-        ;
-
-        $this->assertEquals(
-            __DIR__.'/Fixtures/Bundle1Bundle/foo.txt',
-            $kernel->locateResource('@Bundle1Bundle/foo.txt', __DIR__.'/Fixtures')
-        );
-    }
-
-    public function testLocateResourceReturnsTheDirOneForResources()
-    {
-        $kernel = $this->getKernel(array('getBundle'));
-        $kernel
-            ->expects($this->once())
-            ->method('getBundle')
-            ->will($this->returnValue(array($this->getBundle(__DIR__.'/Fixtures/FooBundle', null, null, 'FooBundle'))))
-        ;
-
-        $this->assertEquals(
-            __DIR__.'/Fixtures/Resources/FooBundle/foo.txt',
-            $kernel->locateResource('@FooBundle/Resources/foo.txt', __DIR__.'/Fixtures/Resources')
-        );
-    }
-
-    public function testLocateResourceReturnsTheDirOneForResourcesAndBundleOnes()
-    {
-        $kernel = $this->getKernel(array('getBundle'));
-        $kernel
-            ->expects($this->once())
-            ->method('getBundle')
-            ->will($this->returnValue(array($this->getBundle(__DIR__.'/Fixtures/Bundle1Bundle', null, null, 'Bundle1Bundle'))))
-        ;
-
-        $this->assertEquals(array(
-            __DIR__.'/Fixtures/Resources/Bundle1Bundle/foo.txt',
-            __DIR__.'/Fixtures/Bundle1Bundle/Resources/foo.txt', ),
-            $kernel->locateResource('@Bundle1Bundle/Resources/foo.txt', __DIR__.'/Fixtures/Resources', false)
-        );
-    }
-
-    public function testLocateResourceOverrideBundleAndResourcesFolders()
-    {
-        $parent = $this->getBundle(__DIR__.'/Fixtures/BaseBundle', null, 'BaseBundle', 'BaseBundle');
-        $child = $this->getBundle(__DIR__.'/Fixtures/ChildBundle', 'ParentBundle', 'ChildBundle', 'ChildBundle');
-
-        $kernel = $this->getKernel(array('getBundle'));
-        $kernel
-            ->expects($this->exactly(4))
-            ->method('getBundle')
-            ->will($this->returnValue(array($child, $parent)))
-        ;
-
-        $this->assertEquals(array(
-            __DIR__.'/Fixtures/Resources/ChildBundle/foo.txt',
-            __DIR__.'/Fixtures/ChildBundle/Resources/foo.txt',
-            __DIR__.'/Fixtures/BaseBundle/Resources/foo.txt',
-            ),
-            $kernel->locateResource('@BaseBundle/Resources/foo.txt', __DIR__.'/Fixtures/Resources', false)
-        );
-
-        $this->assertEquals(
-            __DIR__.'/Fixtures/Resources/ChildBundle/foo.txt',
-            $kernel->locateResource('@BaseBundle/Resources/foo.txt', __DIR__.'/Fixtures/Resources')
-        );
-
-        try {
-            $kernel->locateResource('@BaseBundle/Resources/hide.txt', __DIR__.'/Fixtures/Resources', false);
-            $this->fail('Hidden resources should raise an exception when returning an array of matching paths');
-        } catch (\RuntimeException $e) {
-        }
-
-        try {
-            $kernel->locateResource('@BaseBundle/Resources/hide.txt', __DIR__.'/Fixtures/Resources', true);
-            $this->fail('Hidden resources should raise an exception when returning the first matching path');
-        } catch (\RuntimeException $e) {
-        }
-    }
-
-    public function testLocateResourceOnDirectories()
-    {
-        $kernel = $this->getKernel(array('getBundle'));
-        $kernel
-            ->expects($this->exactly(2))
-            ->method('getBundle')
-            ->will($this->returnValue(array($this->getBundle(__DIR__.'/Fixtures/FooBundle', null, null, 'FooBundle'))))
-        ;
-
-        $this->assertEquals(
-            __DIR__.'/Fixtures/Resources/FooBundle/',
-            $kernel->locateResource('@FooBundle/Resources/', __DIR__.'/Fixtures/Resources')
-        );
-        $this->assertEquals(
-            __DIR__.'/Fixtures/Resources/FooBundle',
-            $kernel->locateResource('@FooBundle/Resources', __DIR__.'/Fixtures/Resources')
-        );
-
-        $kernel = $this->getKernel(array('getBundle'));
-        $kernel
-            ->expects($this->exactly(2))
-            ->method('getBundle')
-            ->will($this->returnValue(array($this->getBundle(__DIR__.'/Fixtures/Bundle1Bundle', null, null, 'Bundle1Bundle'))))
-        ;
-
-        $this->assertEquals(
-            __DIR__.'/Fixtures/Bundle1Bundle/Resources/',
-            $kernel->locateResource('@Bundle1Bundle/Resources/')
-        );
-        $this->assertEquals(
-            __DIR__.'/Fixtures/Bundle1Bundle/Resources',
-            $kernel->locateResource('@Bundle1Bundle/Resources')
-        );
-    }
-
-    public function testInitializeBundles()
-    {
-        $parent = $this->getBundle(null, null, 'ParentABundle');
-        $child = $this->getBundle(null, 'ParentABundle', 'ChildABundle');
-
-        // use test kernel so we can access getBundleMap()
-        $kernel = $this->getKernelForTest(array('registerBundles'));
-        $kernel
-            ->expects($this->once())
-            ->method('registerBundles')
-            ->will($this->returnValue(array($parent, $child)))
-        ;
-        $kernel->boot();
-
-        $map = $kernel->getBundleMap();
-        $this->assertEquals(array($child, $parent), $map['ParentABundle']);
-    }
-
-    public function testInitializeBundlesSupportInheritanceCascade()
-    {
-        $grandparent = $this->getBundle(null, null, 'GrandParentBBundle');
-        $parent = $this->getBundle(null, 'GrandParentBBundle', 'ParentBBundle');
-        $child = $this->getBundle(null, 'ParentBBundle', 'ChildBBundle');
-
-        // use test kernel so we can access getBundleMap()
-        $kernel = $this->getKernelForTest(array('registerBundles'));
-        $kernel
-            ->expects($this->once())
-            ->method('registerBundles')
-            ->will($this->returnValue(array($grandparent, $parent, $child)))
-        ;
-        $kernel->boot();
-
-        $map = $kernel->getBundleMap();
-        $this->assertEquals(array($child, $parent, $grandparent), $map['GrandParentBBundle']);
-        $this->assertEquals(array($child, $parent), $map['ParentBBundle']);
-        $this->assertEquals(array($child), $map['ChildBBundle']);
-    }
-
-    /**
-     * @expectedException \LogicException
-     * @expectedExceptionMessage Bundle "ChildCBundle" extends bundle "FooBar", which is not registered.
-     */
-    public function testInitializeBundlesThrowsExceptionWhenAParentDoesNotExists()
-    {
-        $child = $this->getBundle(null, 'FooBar', 'ChildCBundle');
-        $kernel = $this->getKernel(array(), array($child));
-        $kernel->boot();
-    }
-
-    public function testInitializeBundlesSupportsArbitraryBundleRegistrationOrder()
-    {
-        $grandparent = $this->getBundle(null, null, 'GrandParentCBundle');
-        $parent = $this->getBundle(null, 'GrandParentCBundle', 'ParentCBundle');
-        $child = $this->getBundle(null, 'ParentCBundle', 'ChildCBundle');
-
-        // use test kernel so we can access getBundleMap()
-        $kernel = $this->getKernelForTest(array('registerBundles'));
-        $kernel
-            ->expects($this->once())
-            ->method('registerBundles')
-            ->will($this->returnValue(array($parent, $grandparent, $child)))
-        ;
-        $kernel->boot();
-
-        $map = $kernel->getBundleMap();
-        $this->assertEquals(array($child, $parent, $grandparent), $map['GrandParentCBundle']);
-        $this->assertEquals(array($child, $parent), $map['ParentCBundle']);
-        $this->assertEquals(array($child), $map['ChildCBundle']);
-    }
-
-    /**
-     * @expectedException \LogicException
-     * @expectedExceptionMessage Bundle "ParentCBundle" is directly extended by two bundles "ChildC2Bundle" and "ChildC1Bundle".
-     */
-    public function testInitializeBundlesThrowsExceptionWhenABundleIsDirectlyExtendedByTwoBundles()
-    {
-        $parent = $this->getBundle(null, null, 'ParentCBundle');
-        $child1 = $this->getBundle(null, 'ParentCBundle', 'ChildC1Bundle');
-        $child2 = $this->getBundle(null, 'ParentCBundle', 'ChildC2Bundle');
-
-        $kernel = $this->getKernel(array(), array($parent, $child1, $child2));
-        $kernel->boot();
-    }
-
-    /**
-     * @expectedException \LogicException
-     * @expectedExceptionMessage Trying to register two bundles with the same name "DuplicateName"
-     */
-    public function testInitializeBundleThrowsExceptionWhenRegisteringTwoBundlesWithTheSameName()
-    {
-        $fooBundle = $this->getBundle(null, null, 'FooBundle', 'DuplicateName');
-        $barBundle = $this->getBundle(null, null, 'BarBundle', 'DuplicateName');
-
-        $kernel = $this->getKernel(array(), array($fooBundle, $barBundle));
-        $kernel->boot();
-    }
-
-    /**
-     * @expectedException \LogicException
-     * @expectedExceptionMessage Bundle "CircularRefBundle" can not extend itself.
-     */
-    public function testInitializeBundleThrowsExceptionWhenABundleExtendsItself()
-    {
-        $circularRef = $this->getBundle(null, 'CircularRefBundle', 'CircularRefBundle');
-
-        $kernel = $this->getKernel(array(), array($circularRef));
-        $kernel->boot();
-    }
-
-    public function testTerminateReturnsSilentlyIfKernelIsNotBooted()
-    {
-        $kernel = $this->getKernel(array('getHttpKernel'));
-        $kernel->expects($this->never())
-            ->method('getHttpKernel');
-
-        $kernel->terminate(Request::create('/'), new Response());
-    }
-
-    public function testTerminateDelegatesTerminationOnlyForTerminableInterface()
-    {
-        // does not implement TerminableInterface
-        $httpKernelMock = $this->getMockBuilder('Symfony\Component\HttpKernel\HttpKernelInterface')
-            ->disableOriginalConstructor()
-            ->getMock();
-
-        $httpKernelMock
-            ->expects($this->never())
-            ->method('terminate');
-
-        $kernel = $this->getKernel(array('getHttpKernel'));
-        $kernel->expects($this->once())
-            ->method('getHttpKernel')
-            ->will($this->returnValue($httpKernelMock));
-
-        $kernel->boot();
-        $kernel->terminate(Request::create('/'), new Response());
-
-        // implements TerminableInterface
-        $httpKernelMock = $this->getMockBuilder('Symfony\Component\HttpKernel\HttpKernel')
-            ->disableOriginalConstructor()
-            ->setMethods(array('terminate'))
-            ->getMock();
-
-        $httpKernelMock
-            ->expects($this->once())
-            ->method('terminate');
-
-        $kernel = $this->getKernel(array('getHttpKernel'));
-        $kernel->expects($this->exactly(2))
-            ->method('getHttpKernel')
-            ->will($this->returnValue($httpKernelMock));
-
-        $kernel->boot();
-        $kernel->terminate(Request::create('/'), new Response());
-    }
-
-    /**
-     * Returns a mock for the BundleInterface.
-     *
-     * @return BundleInterface
-     */
-    protected function getBundle($dir = null, $parent = null, $className = null, $bundleName = null)
-    {
-        $bundle = $this
-            ->getMockBuilder('Symfony\Component\HttpKernel\Bundle\BundleInterface')
-            ->setMethods(array('getPath', 'getParent', 'getName'))
-            ->disableOriginalConstructor()
-        ;
-
-        if ($className) {
-            $bundle->setMockClassName($className);
-        }
-
-        $bundle = $bundle->getMockForAbstractClass();
-
-        $bundle
-            ->expects($this->any())
-            ->method('getName')
-            ->will($this->returnValue(null === $bundleName ? get_class($bundle) : $bundleName))
-        ;
-
-        $bundle
-            ->expects($this->any())
-            ->method('getPath')
-            ->will($this->returnValue($dir))
-        ;
-
-        $bundle
-            ->expects($this->any())
-            ->method('getParent')
-            ->will($this->returnValue($parent))
-        ;
-
-        return $bundle;
-    }
-
-    /**
-     * Returns a mock for the abstract kernel.
-     *
-     * @param array $methods Additional methods to mock (besides the abstract ones)
-     * @param array $bundles Bundles to register
-     *
-     * @return Kernel
-     */
-    protected function getKernel(array $methods = array(), array $bundles = array())
-    {
-        $methods[] = 'registerBundles';
-
-        $kernel = $this
-            ->getMockBuilder('Symfony\Component\HttpKernel\Kernel')
-            ->setMethods($methods)
-            ->setConstructorArgs(array('test', false))
-            ->getMockForAbstractClass()
-        ;
-        $kernel->expects($this->any())
-            ->method('registerBundles')
-            ->will($this->returnValue($bundles))
-        ;
-        $p = new \ReflectionProperty($kernel, 'rootDir');
-        $p->setAccessible(true);
-        $p->setValue($kernel, __DIR__.'/Fixtures');
-
-        return $kernel;
-    }
-
-    protected function getKernelForTest(array $methods = array())
-    {
-        $kernel = $this->getMockBuilder('Symfony\Component\HttpKernel\Tests\Fixtures\KernelForTest')
-            ->setConstructorArgs(array('test', false))
-            ->setMethods($methods)
-            ->getMock();
-        $p = new \ReflectionProperty($kernel, 'rootDir');
-        $p->setAccessible(true);
-        $p->setValue($kernel, __DIR__.'/Fixtures');
-
-        return $kernel;
-    }
-}
diff --git a/vendor/symfony/http-kernel/Tests/Logger.php b/vendor/symfony/http-kernel/Tests/Logger.php
deleted file mode 100644
index 5430096..0000000
--- a/vendor/symfony/http-kernel/Tests/Logger.php
+++ /dev/null
@@ -1,128 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpKernel\Tests;
-
-use Psr\Log\LoggerInterface;
-
-class Logger implements LoggerInterface
-{
-    protected $logs;
-
-    public function __construct()
-    {
-        $this->clear();
-    }
-
-    public function getLogs($level = false)
-    {
-        return false === $level ? $this->logs : $this->logs[$level];
-    }
-
-    public function clear()
-    {
-        $this->logs = array(
-            'emergency' => array(),
-            'alert' => array(),
-            'critical' => array(),
-            'error' => array(),
-            'warning' => array(),
-            'notice' => array(),
-            'info' => array(),
-            'debug' => array(),
-        );
-    }
-
-    public function log($level, $message, array $context = array())
-    {
-        $this->logs[$level][] = $message;
-    }
-
-    public function emergency($message, array $context = array())
-    {
-        $this->log('emergency', $message, $context);
-    }
-
-    public function alert($message, array $context = array())
-    {
-        $this->log('alert', $message, $context);
-    }
-
-    public function critical($message, array $context = array())
-    {
-        $this->log('critical', $message, $context);
-    }
-
-    public function error($message, array $context = array())
-    {
-        $this->log('error', $message, $context);
-    }
-
-    public function warning($message, array $context = array())
-    {
-        $this->log('warning', $message, $context);
-    }
-
-    public function notice($message, array $context = array())
-    {
-        $this->log('notice', $message, $context);
-    }
-
-    public function info($message, array $context = array())
-    {
-        $this->log('info', $message, $context);
-    }
-
-    public function debug($message, array $context = array())
-    {
-        $this->log('debug', $message, $context);
-    }
-
-    /**
-     * @deprecated
-     */
-    public function emerg($message, array $context = array())
-    {
-        @trigger_error('Use emergency() which is PSR-3 compatible', E_USER_DEPRECATED);
-
-        $this->log('emergency', $message, $context);
-    }
-
-    /**
-     * @deprecated
-     */
-    public function crit($message, array $context = array())
-    {
-        @trigger_error('Use critical() which is PSR-3 compatible', E_USER_DEPRECATED);
-
-        $this->log('critical', $message, $context);
-    }
-
-    /**
-     * @deprecated
-     */
-    public function err($message, array $context = array())
-    {
-        @trigger_error('Use error() which is PSR-3 compatible', E_USER_DEPRECATED);
-
-        $this->log('error', $message, $context);
-    }
-
-    /**
-     * @deprecated
-     */
-    public function warn($message, array $context = array())
-    {
-        @trigger_error('Use warning() which is PSR-3 compatible', E_USER_DEPRECATED);
-
-        $this->log('warning', $message, $context);
-    }
-}
diff --git a/vendor/symfony/http-kernel/Tests/Profiler/AbstractProfilerStorageTest.php b/vendor/symfony/http-kernel/Tests/Profiler/AbstractProfilerStorageTest.php
deleted file mode 100644
index dc361ed..0000000
--- a/vendor/symfony/http-kernel/Tests/Profiler/AbstractProfilerStorageTest.php
+++ /dev/null
@@ -1,270 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpKernel\Tests\Profiler;
-
-use Symfony\Component\HttpKernel\Profiler\Profile;
-
-abstract class AbstractProfilerStorageTest extends \PHPUnit_Framework_TestCase
-{
-    public function testStore()
-    {
-        for ($i = 0; $i < 10; ++$i) {
-            $profile = new Profile('token_'.$i);
-            $profile->setIp('127.0.0.1');
-            $profile->setUrl('http://foo.bar');
-            $profile->setMethod('GET');
-            $this->getStorage()->write($profile);
-        }
-        $this->assertCount(10, $this->getStorage()->find('127.0.0.1', 'http://foo.bar', 20, 'GET'), '->write() stores data in the storage');
-    }
-
-    public function testChildren()
-    {
-        $parentProfile = new Profile('token_parent');
-        $parentProfile->setIp('127.0.0.1');
-        $parentProfile->setUrl('http://foo.bar/parent');
-
-        $childProfile = new Profile('token_child');
-        $childProfile->setIp('127.0.0.1');
-        $childProfile->setUrl('http://foo.bar/child');
-
-        $parentProfile->addChild($childProfile);
-
-        $this->getStorage()->write($parentProfile);
-        $this->getStorage()->write($childProfile);
-
-        // Load them from storage
-        $parentProfile = $this->getStorage()->read('token_parent');
-        $childProfile = $this->getStorage()->read('token_child');
-
-        // Check child has link to parent
-        $this->assertNotNull($childProfile->getParent());
-        $this->assertEquals($parentProfile->getToken(), $childProfile->getParentToken());
-
-        // Check parent has child
-        $children = $parentProfile->getChildren();
-        $this->assertCount(1, $children);
-        $this->assertEquals($childProfile->getToken(), $children[0]->getToken());
-    }
-
-    public function testStoreSpecialCharsInUrl()
-    {
-        // The storage accepts special characters in URLs (Even though URLs are not
-        // supposed to contain them)
-        $profile = new Profile('simple_quote');
-        $profile->setUrl('http://foo.bar/\'');
-        $this->getStorage()->write($profile);
-        $this->assertTrue(false !== $this->getStorage()->read('simple_quote'), '->write() accepts single quotes in URL');
-
-        $profile = new Profile('double_quote');
-        $profile->setUrl('http://foo.bar/"');
-        $this->getStorage()->write($profile);
-        $this->assertTrue(false !== $this->getStorage()->read('double_quote'), '->write() accepts double quotes in URL');
-
-        $profile = new Profile('backslash');
-        $profile->setUrl('http://foo.bar/\\');
-        $this->getStorage()->write($profile);
-        $this->assertTrue(false !== $this->getStorage()->read('backslash'), '->write() accepts backslash in URL');
-
-        $profile = new Profile('comma');
-        $profile->setUrl('http://foo.bar/,');
-        $this->getStorage()->write($profile);
-        $this->assertTrue(false !== $this->getStorage()->read('comma'), '->write() accepts comma in URL');
-    }
-
-    public function testStoreDuplicateToken()
-    {
-        $profile = new Profile('token');
-        $profile->setUrl('http://example.com/');
-
-        $this->assertTrue($this->getStorage()->write($profile), '->write() returns true when the token is unique');
-
-        $profile->setUrl('http://example.net/');
-
-        $this->assertTrue($this->getStorage()->write($profile), '->write() returns true when the token is already present in the storage');
-        $this->assertEquals('http://example.net/', $this->getStorage()->read('token')->getUrl(), '->write() overwrites the current profile data');
-
-        $this->assertCount(1, $this->getStorage()->find('', '', 1000, ''), '->find() does not return the same profile twice');
-    }
-
-    public function testRetrieveByIp()
-    {
-        $profile = new Profile('token');
-        $profile->setIp('127.0.0.1');
-        $profile->setMethod('GET');
-        $this->getStorage()->write($profile);
-
-        $this->assertCount(1, $this->getStorage()->find('127.0.0.1', '', 10, 'GET'), '->find() retrieve a record by IP');
-        $this->assertCount(0, $this->getStorage()->find('127.0.%.1', '', 10, 'GET'), '->find() does not interpret a "%" as a wildcard in the IP');
-        $this->assertCount(0, $this->getStorage()->find('127.0._.1', '', 10, 'GET'), '->find() does not interpret a "_" as a wildcard in the IP');
-    }
-
-    public function testRetrieveByUrl()
-    {
-        $profile = new Profile('simple_quote');
-        $profile->setIp('127.0.0.1');
-        $profile->setUrl('http://foo.bar/\'');
-        $profile->setMethod('GET');
-        $this->getStorage()->write($profile);
-
-        $profile = new Profile('double_quote');
-        $profile->setIp('127.0.0.1');
-        $profile->setUrl('http://foo.bar/"');
-        $profile->setMethod('GET');
-        $this->getStorage()->write($profile);
-
-        $profile = new Profile('backslash');
-        $profile->setIp('127.0.0.1');
-        $profile->setUrl('http://foo\\bar/');
-        $profile->setMethod('GET');
-        $this->getStorage()->write($profile);
-
-        $profile = new Profile('percent');
-        $profile->setIp('127.0.0.1');
-        $profile->setUrl('http://foo.bar/%');
-        $profile->setMethod('GET');
-        $this->getStorage()->write($profile);
-
-        $profile = new Profile('underscore');
-        $profile->setIp('127.0.0.1');
-        $profile->setUrl('http://foo.bar/_');
-        $profile->setMethod('GET');
-        $this->getStorage()->write($profile);
-
-        $profile = new Profile('semicolon');
-        $profile->setIp('127.0.0.1');
-        $profile->setUrl('http://foo.bar/;');
-        $profile->setMethod('GET');
-        $this->getStorage()->write($profile);
-
-        $this->assertCount(1, $this->getStorage()->find('127.0.0.1', 'http://foo.bar/\'', 10, 'GET'), '->find() accepts single quotes in URLs');
-        $this->assertCount(1, $this->getStorage()->find('127.0.0.1', 'http://foo.bar/"', 10, 'GET'), '->find() accepts double quotes in URLs');
-        $this->assertCount(1, $this->getStorage()->find('127.0.0.1', 'http://foo\\bar/', 10, 'GET'), '->find() accepts backslash in URLs');
-        $this->assertCount(1, $this->getStorage()->find('127.0.0.1', 'http://foo.bar/;', 10, 'GET'), '->find() accepts semicolon in URLs');
-        $this->assertCount(1, $this->getStorage()->find('127.0.0.1', 'http://foo.bar/%', 10, 'GET'), '->find() does not interpret a "%" as a wildcard in the URL');
-        $this->assertCount(1, $this->getStorage()->find('127.0.0.1', 'http://foo.bar/_', 10, 'GET'), '->find() does not interpret a "_" as a wildcard in the URL');
-    }
-
-    public function testStoreTime()
-    {
-        $dt = new \DateTime('now');
-        $start = $dt->getTimestamp();
-
-        for ($i = 0; $i < 3; ++$i) {
-            $dt->modify('+1 minute');
-            $profile = new Profile('time_'.$i);
-            $profile->setIp('127.0.0.1');
-            $profile->setUrl('http://foo.bar');
-            $profile->setTime($dt->getTimestamp());
-            $profile->setMethod('GET');
-            $this->getStorage()->write($profile);
-        }
-
-        $records = $this->getStorage()->find('', '', 3, 'GET', $start, time() + 3 * 60);
-        $this->assertCount(3, $records, '->find() returns all previously added records');
-        $this->assertEquals($records[0]['token'], 'time_2', '->find() returns records ordered by time in descendant order');
-        $this->assertEquals($records[1]['token'], 'time_1', '->find() returns records ordered by time in descendant order');
-        $this->assertEquals($records[2]['token'], 'time_0', '->find() returns records ordered by time in descendant order');
-
-        $records = $this->getStorage()->find('', '', 3, 'GET', $start, time() + 2 * 60);
-        $this->assertCount(2, $records, '->find() should return only first two of the previously added records');
-    }
-
-    public function testRetrieveByEmptyUrlAndIp()
-    {
-        for ($i = 0; $i < 5; ++$i) {
-            $profile = new Profile('token_'.$i);
-            $profile->setMethod('GET');
-            $this->getStorage()->write($profile);
-        }
-        $this->assertCount(5, $this->getStorage()->find('', '', 10, 'GET'), '->find() returns all previously added records');
-        $this->getStorage()->purge();
-    }
-
-    public function testRetrieveByMethodAndLimit()
-    {
-        foreach (array('POST', 'GET') as $method) {
-            for ($i = 0; $i < 5; ++$i) {
-                $profile = new Profile('token_'.$i.$method);
-                $profile->setMethod($method);
-                $this->getStorage()->write($profile);
-            }
-        }
-
-        $this->assertCount(5, $this->getStorage()->find('', '', 5, 'POST'));
-
-        $this->getStorage()->purge();
-    }
-
-    public function testPurge()
-    {
-        $profile = new Profile('token1');
-        $profile->setIp('127.0.0.1');
-        $profile->setUrl('http://example.com/');
-        $profile->setMethod('GET');
-        $this->getStorage()->write($profile);
-
-        $this->assertTrue(false !== $this->getStorage()->read('token1'));
-        $this->assertCount(1, $this->getStorage()->find('127.0.0.1', '', 10, 'GET'));
-
-        $profile = new Profile('token2');
-        $profile->setIp('127.0.0.1');
-        $profile->setUrl('http://example.net/');
-        $profile->setMethod('GET');
-        $this->getStorage()->write($profile);
-
-        $this->assertTrue(false !== $this->getStorage()->read('token2'));
-        $this->assertCount(2, $this->getStorage()->find('127.0.0.1', '', 10, 'GET'));
-
-        $this->getStorage()->purge();
-
-        $this->assertEmpty($this->getStorage()->read('token'), '->purge() removes all data stored by profiler');
-        $this->assertCount(0, $this->getStorage()->find('127.0.0.1', '', 10, 'GET'), '->purge() removes all items from index');
-    }
-
-    public function testDuplicates()
-    {
-        for ($i = 1; $i <= 5; ++$i) {
-            $profile = new Profile('foo'.$i);
-            $profile->setIp('127.0.0.1');
-            $profile->setUrl('http://example.net/');
-            $profile->setMethod('GET');
-
-            ///three duplicates
-            $this->getStorage()->write($profile);
-            $this->getStorage()->write($profile);
-            $this->getStorage()->write($profile);
-        }
-        $this->assertCount(3, $this->getStorage()->find('127.0.0.1', 'http://example.net/', 3, 'GET'), '->find() method returns incorrect number of entries');
-    }
-
-    public function testStatusCode()
-    {
-        $profile = new Profile('token1');
-        $profile->setStatusCode(200);
-        $this->getStorage()->write($profile);
-
-        $profile = new Profile('token2');
-        $profile->setStatusCode(404);
-        $this->getStorage()->write($profile);
-
-        $tokens = $this->getStorage()->find('', '', 10, '');
-        $this->assertCount(2, $tokens);
-        $this->assertContains($tokens[0]['status_code'], array(200, 404));
-        $this->assertContains($tokens[1]['status_code'], array(200, 404));
-    }
-
-    /**
-     * @return \Symfony\Component\HttpKernel\Profiler\ProfilerStorageInterface
-     */
-    abstract protected function getStorage();
-}
diff --git a/vendor/symfony/http-kernel/Tests/Profiler/FileProfilerStorageTest.php b/vendor/symfony/http-kernel/Tests/Profiler/FileProfilerStorageTest.php
deleted file mode 100644
index d5edc70..0000000
--- a/vendor/symfony/http-kernel/Tests/Profiler/FileProfilerStorageTest.php
+++ /dev/null
@@ -1,100 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpKernel\Tests\Profiler;
-
-use Symfony\Component\HttpKernel\Profiler\FileProfilerStorage;
-use Symfony\Component\HttpKernel\Profiler\Profile;
-
-class FileProfilerStorageTest extends AbstractProfilerStorageTest
-{
-    protected static $tmpDir;
-    protected static $storage;
-
-    protected static function cleanDir()
-    {
-        $flags = \FilesystemIterator::SKIP_DOTS;
-        $iterator = new \RecursiveDirectoryIterator(self::$tmpDir, $flags);
-        $iterator = new \RecursiveIteratorIterator($iterator, \RecursiveIteratorIterator::SELF_FIRST);
-
-        foreach ($iterator as $file) {
-            if (is_file($file)) {
-                unlink($file);
-            }
-        }
-    }
-
-    public static function setUpBeforeClass()
-    {
-        self::$tmpDir = sys_get_temp_dir().'/sf2_profiler_file_storage';
-        if (is_dir(self::$tmpDir)) {
-            self::cleanDir();
-        }
-        self::$storage = new FileProfilerStorage('file:'.self::$tmpDir);
-    }
-
-    public static function tearDownAfterClass()
-    {
-        self::cleanDir();
-    }
-
-    protected function setUp()
-    {
-        self::$storage->purge();
-    }
-
-    /**
-     * @return \Symfony\Component\HttpKernel\Profiler\ProfilerStorageInterface
-     */
-    protected function getStorage()
-    {
-        return self::$storage;
-    }
-
-    public function testMultiRowIndexFile()
-    {
-        $iteration = 3;
-        for ($i = 0; $i < $iteration; ++$i) {
-            $profile = new Profile('token'.$i);
-            $profile->setIp('127.0.0.'.$i);
-            $profile->setUrl('http://foo.bar/'.$i);
-            $storage = $this->getStorage();
-
-            $storage->write($profile);
-            $storage->write($profile);
-            $storage->write($profile);
-        }
-
-        $handle = fopen(self::$tmpDir.'/index.csv', 'r');
-        for ($i = 0; $i < $iteration; ++$i) {
-            $row = fgetcsv($handle);
-            $this->assertEquals('token'.$i, $row[0]);
-            $this->assertEquals('127.0.0.'.$i, $row[1]);
-            $this->assertEquals('http://foo.bar/'.$i, $row[3]);
-        }
-        $this->assertFalse(fgetcsv($handle));
-    }
-
-    public function testReadLineFromFile()
-    {
-        $r = new \ReflectionMethod(self::$storage, 'readLineFromFile');
-
-        $r->setAccessible(true);
-
-        $h = tmpfile();
-
-        fwrite($h, "line1\n\n\nline2\n");
-        fseek($h, 0, SEEK_END);
-
-        $this->assertEquals('line2', $r->invoke(self::$storage, $h));
-        $this->assertEquals('line1', $r->invoke(self::$storage, $h));
-    }
-}
diff --git a/vendor/symfony/http-kernel/Tests/Profiler/MemcacheProfilerStorageTest.php b/vendor/symfony/http-kernel/Tests/Profiler/MemcacheProfilerStorageTest.php
deleted file mode 100644
index f582dff..0000000
--- a/vendor/symfony/http-kernel/Tests/Profiler/MemcacheProfilerStorageTest.php
+++ /dev/null
@@ -1,49 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpKernel\Tests\Profiler;
-
-use Symfony\Component\HttpKernel\Profiler\MemcacheProfilerStorage;
-use Symfony\Component\HttpKernel\Tests\Profiler\Mock\MemcacheMock;
-
-class MemcacheProfilerStorageTest extends AbstractProfilerStorageTest
-{
-    protected static $storage;
-
-    protected function setUp()
-    {
-        $memcacheMock = new MemcacheMock();
-        $memcacheMock->addServer('127.0.0.1', 11211);
-
-        self::$storage = new MemcacheProfilerStorage('memcache://127.0.0.1:11211', '', '', 86400);
-        self::$storage->setMemcache($memcacheMock);
-
-        if (self::$storage) {
-            self::$storage->purge();
-        }
-    }
-
-    protected function tearDown()
-    {
-        if (self::$storage) {
-            self::$storage->purge();
-            self::$storage = false;
-        }
-    }
-
-    /**
-     * @return \Symfony\Component\HttpKernel\Profiler\ProfilerStorageInterface
-     */
-    protected function getStorage()
-    {
-        return self::$storage;
-    }
-}
diff --git a/vendor/symfony/http-kernel/Tests/Profiler/MemcachedProfilerStorageTest.php b/vendor/symfony/http-kernel/Tests/Profiler/MemcachedProfilerStorageTest.php
deleted file mode 100644
index 565ac35..0000000
--- a/vendor/symfony/http-kernel/Tests/Profiler/MemcachedProfilerStorageTest.php
+++ /dev/null
@@ -1,49 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpKernel\Tests\Profiler;
-
-use Symfony\Component\HttpKernel\Profiler\MemcachedProfilerStorage;
-use Symfony\Component\HttpKernel\Tests\Profiler\Mock\MemcachedMock;
-
-class MemcachedProfilerStorageTest extends AbstractProfilerStorageTest
-{
-    protected static $storage;
-
-    protected function setUp()
-    {
-        $memcachedMock = new MemcachedMock();
-        $memcachedMock->addServer('127.0.0.1', 11211);
-
-        self::$storage = new MemcachedProfilerStorage('memcached://127.0.0.1:11211', '', '', 86400);
-        self::$storage->setMemcached($memcachedMock);
-
-        if (self::$storage) {
-            self::$storage->purge();
-        }
-    }
-
-    protected function tearDown()
-    {
-        if (self::$storage) {
-            self::$storage->purge();
-            self::$storage = false;
-        }
-    }
-
-    /**
-     * @return \Symfony\Component\HttpKernel\Profiler\ProfilerStorageInterface
-     */
-    protected function getStorage()
-    {
-        return self::$storage;
-    }
-}
diff --git a/vendor/symfony/http-kernel/Tests/Profiler/Mock/MemcacheMock.php b/vendor/symfony/http-kernel/Tests/Profiler/Mock/MemcacheMock.php
deleted file mode 100644
index 9ca9816..0000000
--- a/vendor/symfony/http-kernel/Tests/Profiler/Mock/MemcacheMock.php
+++ /dev/null
@@ -1,254 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpKernel\Tests\Profiler\Mock;
-
-/**
- * MemcacheMock for simulating Memcache extension in tests.
- *
- * @author Andrej Hudec <pulzarraider@gmail.com>
- */
-class MemcacheMock
-{
-    private $connected = false;
-    private $storage = array();
-
-    /**
-     * Open memcached server connection.
-     *
-     * @param string $host
-     * @param int    $port
-     * @param int    $timeout
-     *
-     * @return bool
-     */
-    public function connect($host, $port = null, $timeout = null)
-    {
-        if ('127.0.0.1' == $host && 11211 == $port) {
-            $this->connected = true;
-
-            return true;
-        }
-
-        return false;
-    }
-
-    /**
-     * Open memcached server persistent connection.
-     *
-     * @param string $host
-     * @param int    $port
-     * @param int    $timeout
-     *
-     * @return bool
-     */
-    public function pconnect($host, $port = null, $timeout = null)
-    {
-        if ('127.0.0.1' == $host && 11211 == $port) {
-            $this->connected = true;
-
-            return true;
-        }
-
-        return false;
-    }
-
-    /**
-     * Add a memcached server to connection pool.
-     *
-     * @param string   $host
-     * @param int      $port
-     * @param bool     $persistent
-     * @param int      $weight
-     * @param int      $timeout
-     * @param int      $retry_interval
-     * @param bool     $status
-     * @param callable $failure_callback
-     * @param int      $timeoutms
-     *
-     * @return bool
-     */
-    public function addServer($host, $port = 11211, $persistent = null, $weight = null, $timeout = null, $retry_interval = null, $status = null, $failure_callback = null, $timeoutms = null)
-    {
-        if ('127.0.0.1' == $host && 11211 == $port) {
-            $this->connected = true;
-
-            return true;
-        }
-
-        return false;
-    }
-
-    /**
-     * Add an item to the server only if such key doesn't exist at the server yet.
-     *
-     * @param string $key
-     * @param mixed  $var
-     * @param int    $flag
-     * @param int    $expire
-     *
-     * @return bool
-     */
-    public function add($key, $var, $flag = null, $expire = null)
-    {
-        if (!$this->connected) {
-            return false;
-        }
-
-        if (!isset($this->storage[$key])) {
-            $this->storeData($key, $var);
-
-            return true;
-        }
-
-        return false;
-    }
-
-    /**
-     * Store data at the server.
-     *
-     * @param string $key
-     * @param string $var
-     * @param int    $flag
-     * @param int    $expire
-     *
-     * @return bool
-     */
-    public function set($key, $var, $flag = null, $expire = null)
-    {
-        if (!$this->connected) {
-            return false;
-        }
-
-        $this->storeData($key, $var);
-
-        return true;
-    }
-
-    /**
-     * Replace value of the existing item.
-     *
-     * @param string $key
-     * @param mixed  $var
-     * @param int    $flag
-     * @param int    $expire
-     *
-     * @return bool
-     */
-    public function replace($key, $var, $flag = null, $expire = null)
-    {
-        if (!$this->connected) {
-            return false;
-        }
-
-        if (isset($this->storage[$key])) {
-            $this->storeData($key, $var);
-
-            return true;
-        }
-
-        return false;
-    }
-
-    /**
-     * Retrieve item from the server.
-     *
-     * @param string|array $key
-     * @param int|array    $flags
-     *
-     * @return mixed
-     */
-    public function get($key, &$flags = null)
-    {
-        if (!$this->connected) {
-            return false;
-        }
-
-        if (is_array($key)) {
-            $result = array();
-            foreach ($key as $k) {
-                if (isset($this->storage[$k])) {
-                    $result[] = $this->getData($k);
-                }
-            }
-
-            return $result;
-        }
-
-        return $this->getData($key);
-    }
-
-    /**
-     * Delete item from the server.
-     *
-     * @param string $key
-     *
-     * @return bool
-     */
-    public function delete($key)
-    {
-        if (!$this->connected) {
-            return false;
-        }
-
-        if (isset($this->storage[$key])) {
-            unset($this->storage[$key]);
-
-            return true;
-        }
-
-        return false;
-    }
-
-    /**
-     * Flush all existing items at the server.
-     *
-     * @return bool
-     */
-    public function flush()
-    {
-        if (!$this->connected) {
-            return false;
-        }
-
-        $this->storage = array();
-
-        return true;
-    }
-
-    /**
-     * Close memcached server connection.
-     *
-     * @return bool
-     */
-    public function close()
-    {
-        $this->connected = false;
-
-        return true;
-    }
-
-    private function getData($key)
-    {
-        if (isset($this->storage[$key])) {
-            return unserialize($this->storage[$key]);
-        }
-
-        return false;
-    }
-
-    private function storeData($key, $value)
-    {
-        $this->storage[$key] = serialize($value);
-
-        return true;
-    }
-}
diff --git a/vendor/symfony/http-kernel/Tests/Profiler/Mock/MemcachedMock.php b/vendor/symfony/http-kernel/Tests/Profiler/Mock/MemcachedMock.php
deleted file mode 100644
index da98a12..0000000
--- a/vendor/symfony/http-kernel/Tests/Profiler/Mock/MemcachedMock.php
+++ /dev/null
@@ -1,219 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpKernel\Tests\Profiler\Mock;
-
-/**
- * MemcachedMock for simulating Memcached extension in tests.
- *
- * @author Andrej Hudec <pulzarraider@gmail.com>
- */
-class MemcachedMock
-{
-    private $connected = false;
-    private $storage = array();
-
-    /**
-     * Set a Memcached option.
-     *
-     * @param int   $option
-     * @param mixed $value
-     *
-     * @return bool
-     */
-    public function setOption($option, $value)
-    {
-        return true;
-    }
-
-    /**
-     * Add a memcached server to connection pool.
-     *
-     * @param string $host
-     * @param int    $port
-     * @param int    $weight
-     *
-     * @return bool
-     */
-    public function addServer($host, $port = 11211, $weight = 0)
-    {
-        if ('127.0.0.1' == $host && 11211 == $port) {
-            $this->connected = true;
-
-            return true;
-        }
-
-        return false;
-    }
-
-    /**
-     * Add an item to the server only if such key doesn't exist at the server yet.
-     *
-     * @param string $key
-     * @param mixed  $value
-     * @param int    $expiration
-     *
-     * @return bool
-     */
-    public function add($key, $value, $expiration = 0)
-    {
-        if (!$this->connected) {
-            return false;
-        }
-
-        if (!isset($this->storage[$key])) {
-            $this->storeData($key, $value);
-
-            return true;
-        }
-
-        return false;
-    }
-
-    /**
-     * Store data at the server.
-     *
-     * @param string $key
-     * @param mixed  $value
-     * @param int    $expiration
-     *
-     * @return bool
-     */
-    public function set($key, $value, $expiration = null)
-    {
-        if (!$this->connected) {
-            return false;
-        }
-
-        $this->storeData($key, $value);
-
-        return true;
-    }
-
-    /**
-     * Replace value of the existing item.
-     *
-     * @param string $key
-     * @param mixed  $value
-     * @param int    $expiration
-     *
-     * @return bool
-     */
-    public function replace($key, $value, $expiration = null)
-    {
-        if (!$this->connected) {
-            return false;
-        }
-
-        if (isset($this->storage[$key])) {
-            $this->storeData($key, $value);
-
-            return true;
-        }
-
-        return false;
-    }
-
-    /**
-     * Retrieve item from the server.
-     *
-     * @param string   $key
-     * @param callable $cache_cb
-     * @param float    $cas_token
-     *
-     * @return bool
-     */
-    public function get($key, $cache_cb = null, &$cas_token = null)
-    {
-        if (!$this->connected) {
-            return false;
-        }
-
-        return $this->getData($key);
-    }
-
-    /**
-     * Append data to an existing item.
-     *
-     * @param string $key
-     * @param string $value
-     *
-     * @return bool
-     */
-    public function append($key, $value)
-    {
-        if (!$this->connected) {
-            return false;
-        }
-
-        if (isset($this->storage[$key])) {
-            $this->storeData($key, $this->getData($key).$value);
-
-            return true;
-        }
-
-        return false;
-    }
-
-    /**
-     * Delete item from the server.
-     *
-     * @param string $key
-     *
-     * @return bool
-     */
-    public function delete($key)
-    {
-        if (!$this->connected) {
-            return false;
-        }
-
-        if (isset($this->storage[$key])) {
-            unset($this->storage[$key]);
-
-            return true;
-        }
-
-        return false;
-    }
-
-    /**
-     * Flush all existing items at the server.
-     *
-     * @return bool
-     */
-    public function flush()
-    {
-        if (!$this->connected) {
-            return false;
-        }
-
-        $this->storage = array();
-
-        return true;
-    }
-
-    private function getData($key)
-    {
-        if (isset($this->storage[$key])) {
-            return unserialize($this->storage[$key]);
-        }
-
-        return false;
-    }
-
-    private function storeData($key, $value)
-    {
-        $this->storage[$key] = serialize($value);
-
-        return true;
-    }
-}
diff --git a/vendor/symfony/http-kernel/Tests/Profiler/Mock/RedisMock.php b/vendor/symfony/http-kernel/Tests/Profiler/Mock/RedisMock.php
deleted file mode 100644
index 694dc1e..0000000
--- a/vendor/symfony/http-kernel/Tests/Profiler/Mock/RedisMock.php
+++ /dev/null
@@ -1,247 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpKernel\Tests\Profiler\Mock;
-
-/**
- * RedisMock for simulating Redis extension in tests.
- *
- * @author Andrej Hudec <pulzarraider@gmail.com>
- */
-class RedisMock
-{
-    private $connected = false;
-    private $storage = array();
-
-    /**
-     * Add a server to connection pool.
-     *
-     * @param string $host
-     * @param int    $port
-     * @param float  $timeout
-     *
-     * @return bool
-     */
-    public function connect($host, $port = 6379, $timeout = 0)
-    {
-        if ('127.0.0.1' == $host && 6379 == $port) {
-            $this->connected = true;
-
-            return true;
-        }
-
-        return false;
-    }
-
-    /**
-     * Set client option.
-     *
-     * @param int $name
-     * @param int $value
-     *
-     * @return bool
-     */
-    public function setOption($name, $value)
-    {
-        if (!$this->connected) {
-            return false;
-        }
-
-        return true;
-    }
-
-    /**
-     * Verify if the specified key exists.
-     *
-     * @param string $key
-     *
-     * @return bool
-     */
-    public function exists($key)
-    {
-        if (!$this->connected) {
-            return false;
-        }
-
-        return isset($this->storage[$key]);
-    }
-
-    /**
-     * Store data at the server with expiration time.
-     *
-     * @param string $key
-     * @param int    $ttl
-     * @param mixed  $value
-     *
-     * @return bool
-     */
-    public function setex($key, $ttl, $value)
-    {
-        if (!$this->connected) {
-            return false;
-        }
-
-        $this->storeData($key, $value);
-
-        return true;
-    }
-
-    /**
-     * Sets an expiration time on an item.
-     *
-     * @param string $key
-     * @param int    $ttl
-     *
-     * @return bool
-     */
-    public function setTimeout($key, $ttl)
-    {
-        if (!$this->connected) {
-            return false;
-        }
-
-        if (isset($this->storage[$key])) {
-            return true;
-        }
-
-        return false;
-    }
-
-    /**
-     * Retrieve item from the server.
-     *
-     * @param string $key
-     *
-     * @return bool
-     */
-    public function get($key)
-    {
-        if (!$this->connected) {
-            return false;
-        }
-
-        return $this->getData($key);
-    }
-
-    /**
-     * Append data to an existing item.
-     *
-     * @param string $key
-     * @param string $value
-     *
-     * @return int Size of the value after the append.
-     */
-    public function append($key, $value)
-    {
-        if (!$this->connected) {
-            return false;
-        }
-
-        if (isset($this->storage[$key])) {
-            $this->storeData($key, $this->getData($key).$value);
-
-            return strlen($this->storage[$key]);
-        }
-
-        return false;
-    }
-
-    /**
-     * Remove specified keys.
-     *
-     * @param string|array $key
-     *
-     * @return int
-     */
-    public function delete($key)
-    {
-        if (!$this->connected) {
-            return false;
-        }
-
-        if (is_array($key)) {
-            $result = 0;
-            foreach ($key as $k) {
-                if (isset($this->storage[$k])) {
-                    unset($this->storage[$k]);
-                    ++$result;
-                }
-            }
-
-            return $result;
-        }
-
-        if (isset($this->storage[$key])) {
-            unset($this->storage[$key]);
-
-            return 1;
-        }
-
-        return 0;
-    }
-
-    /**
-     * Flush all existing items from all databases at the server.
-     *
-     * @return bool
-     */
-    public function flushAll()
-    {
-        if (!$this->connected) {
-            return false;
-        }
-
-        $this->storage = array();
-
-        return true;
-    }
-
-    /**
-     * Close Redis server connection.
-     *
-     * @return bool
-     */
-    public function close()
-    {
-        $this->connected = false;
-
-        return true;
-    }
-
-    private function getData($key)
-    {
-        if (isset($this->storage[$key])) {
-            return unserialize($this->storage[$key]);
-        }
-
-        return false;
-    }
-
-    private function storeData($key, $value)
-    {
-        $this->storage[$key] = serialize($value);
-
-        return true;
-    }
-
-    public function select($dbnum)
-    {
-        if (!$this->connected) {
-            return false;
-        }
-
-        if (0 > $dbnum) {
-            return false;
-        }
-
-        return true;
-    }
-}
diff --git a/vendor/symfony/http-kernel/Tests/Profiler/MongoDbProfilerStorageTest.php b/vendor/symfony/http-kernel/Tests/Profiler/MongoDbProfilerStorageTest.php
deleted file mode 100644
index 29525fe..0000000
--- a/vendor/symfony/http-kernel/Tests/Profiler/MongoDbProfilerStorageTest.php
+++ /dev/null
@@ -1,165 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpKernel\Tests\Profiler;
-
-use Symfony\Component\HttpKernel\Profiler\MongoDbProfilerStorage;
-use Symfony\Component\HttpKernel\Profiler\Profile;
-use Symfony\Component\HttpKernel\DataCollector\DataCollector;
-use Symfony\Component\HttpFoundation\Request;
-use Symfony\Component\HttpFoundation\Response;
-
-class DummyMongoDbProfilerStorage extends MongoDbProfilerStorage
-{
-    public function getMongo()
-    {
-        return parent::getMongo();
-    }
-}
-
-class MongoDbProfilerStorageTestDataCollector extends DataCollector
-{
-    public function setData($data)
-    {
-        $this->data = $data;
-    }
-
-    public function getData()
-    {
-        return $this->data;
-    }
-
-    public function collect(Request $request, Response $response, \Exception $exception = null)
-    {
-    }
-
-    public function getName()
-    {
-        return 'test_data_collector';
-    }
-}
-
-class MongoDbProfilerStorageTest extends AbstractProfilerStorageTest
-{
-    protected static $storage;
-
-    public static function setUpBeforeClass()
-    {
-        if (extension_loaded('mongo')) {
-            self::$storage = new DummyMongoDbProfilerStorage('mongodb://localhost/symfony_tests/profiler_data', '', '', 86400);
-            try {
-                self::$storage->getMongo();
-            } catch (\MongoConnectionException $e) {
-                self::$storage = null;
-            }
-        }
-    }
-
-    public static function tearDownAfterClass()
-    {
-        if (self::$storage) {
-            self::$storage->purge();
-            self::$storage = null;
-        }
-    }
-
-    public function getDsns()
-    {
-        return array(
-            array('mongodb://localhost/symfony_tests/profiler_data', array(
-                'mongodb://localhost/symfony_tests',
-                'symfony_tests',
-                'profiler_data',
-            )),
-            array('mongodb://user:password@localhost/symfony_tests/profiler_data', array(
-                'mongodb://user:password@localhost/symfony_tests',
-                'symfony_tests',
-                'profiler_data',
-            )),
-            array('mongodb://user:password@localhost/admin/symfony_tests/profiler_data', array(
-                'mongodb://user:password@localhost/admin',
-                'symfony_tests',
-                'profiler_data',
-            )),
-            array('mongodb://user:password@localhost:27009,localhost:27010/?replicaSet=rs-name&authSource=admin/symfony_tests/profiler_data', array(
-                'mongodb://user:password@localhost:27009,localhost:27010/?replicaSet=rs-name&authSource=admin',
-                'symfony_tests',
-                'profiler_data',
-            )),
-        );
-    }
-
-    public function testCleanup()
-    {
-        $dt = new \DateTime('-2 day');
-        for ($i = 0; $i < 3; ++$i) {
-            $dt->modify('-1 day');
-            $profile = new Profile('time_'.$i);
-            $profile->setTime($dt->getTimestamp());
-            $profile->setMethod('GET');
-            self::$storage->write($profile);
-        }
-        $records = self::$storage->find('', '', 3, 'GET');
-        $this->assertCount(1, $records, '->find() returns only one record');
-        $this->assertEquals($records[0]['token'], 'time_2', '->find() returns the latest added record');
-        self::$storage->purge();
-    }
-
-    /**
-     * @dataProvider getDsns
-     */
-    public function testDsnParser($dsn, $expected)
-    {
-        $m = new \ReflectionMethod(self::$storage, 'parseDsn');
-        $m->setAccessible(true);
-
-        $this->assertEquals($expected, $m->invoke(self::$storage, $dsn));
-    }
-
-    public function testUtf8()
-    {
-        $profile = new Profile('utf8_test_profile');
-
-        $data = 'HЁʃʃϿ, ϢorЃd!';
-        $nonUtf8Data = mb_convert_encoding($data, 'UCS-2');
-
-        $collector = new MongoDbProfilerStorageTestDataCollector();
-        $collector->setData($nonUtf8Data);
-
-        $profile->setCollectors(array($collector));
-
-        self::$storage->write($profile);
-
-        $readProfile = self::$storage->read('utf8_test_profile');
-        $collectors = $readProfile->getCollectors();
-
-        $this->assertCount(1, $collectors);
-        $this->assertArrayHasKey('test_data_collector', $collectors);
-        $this->assertEquals($nonUtf8Data, $collectors['test_data_collector']->getData(), 'Non-UTF8 data is properly encoded/decoded');
-    }
-
-    /**
-     * @return \Symfony\Component\HttpKernel\Profiler\ProfilerStorageInterface
-     */
-    protected function getStorage()
-    {
-        return self::$storage;
-    }
-
-    protected function setUp()
-    {
-        if (self::$storage) {
-            self::$storage->purge();
-        } else {
-            $this->markTestSkipped('MongoDbProfilerStorageTest requires the mongo PHP extension and a MongoDB server on localhost');
-        }
-    }
-}
diff --git a/vendor/symfony/http-kernel/Tests/Profiler/ProfilerTest.php b/vendor/symfony/http-kernel/Tests/Profiler/ProfilerTest.php
deleted file mode 100644
index 023ed18..0000000
--- a/vendor/symfony/http-kernel/Tests/Profiler/ProfilerTest.php
+++ /dev/null
@@ -1,86 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpKernel\Tests\Profiler;
-
-use Symfony\Component\HttpKernel\DataCollector\RequestDataCollector;
-use Symfony\Component\HttpKernel\Profiler\SqliteProfilerStorage;
-use Symfony\Component\HttpKernel\Profiler\Profiler;
-use Symfony\Component\HttpFoundation\Request;
-use Symfony\Component\HttpFoundation\Response;
-
-class ProfilerTest extends \PHPUnit_Framework_TestCase
-{
-    private $tmp;
-    private $storage;
-
-    public function testCollect()
-    {
-        $request = new Request();
-        $request->query->set('foo', 'bar');
-        $response = new Response('', 204);
-        $collector = new RequestDataCollector();
-
-        $profiler = new Profiler($this->storage);
-        $profiler->add($collector);
-        $profile = $profiler->collect($request, $response);
-
-        $this->assertSame(204, $profile->getStatusCode());
-        $this->assertSame('GET', $profile->getMethod());
-        $this->assertEquals(array('foo' => 'bar'), $profiler->get('request')->getRequestQuery()->all());
-    }
-
-    public function testFindWorksWithDates()
-    {
-        $profiler = new Profiler($this->storage);
-
-        $this->assertCount(0, $profiler->find(null, null, null, null, '7th April 2014', '9th April 2014'));
-    }
-
-    public function testFindWorksWithTimestamps()
-    {
-        $profiler = new Profiler($this->storage);
-
-        $this->assertCount(0, $profiler->find(null, null, null, null, '1396828800', '1397001600'));
-    }
-
-    public function testFindWorksWithInvalidDates()
-    {
-        $profiler = new Profiler($this->storage);
-
-        $this->assertCount(0, $profiler->find(null, null, null, null, 'some string', ''));
-    }
-
-    protected function setUp()
-    {
-        if (!class_exists('SQLite3') && (!class_exists('PDO') || !in_array('sqlite', \PDO::getAvailableDrivers()))) {
-            $this->markTestSkipped('This test requires SQLite support in your environment');
-        }
-
-        $this->tmp = tempnam(sys_get_temp_dir(), 'sf2_profiler');
-        if (file_exists($this->tmp)) {
-            @unlink($this->tmp);
-        }
-
-        $this->storage = new SqliteProfilerStorage('sqlite:'.$this->tmp);
-        $this->storage->purge();
-    }
-
-    protected function tearDown()
-    {
-        if (null !== $this->storage) {
-            $this->storage->purge();
-            $this->storage = null;
-
-            @unlink($this->tmp);
-        }
-    }
-}
diff --git a/vendor/symfony/http-kernel/Tests/Profiler/RedisProfilerStorageTest.php b/vendor/symfony/http-kernel/Tests/Profiler/RedisProfilerStorageTest.php
deleted file mode 100644
index 91354ae..0000000
--- a/vendor/symfony/http-kernel/Tests/Profiler/RedisProfilerStorageTest.php
+++ /dev/null
@@ -1,49 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpKernel\Tests\Profiler;
-
-use Symfony\Component\HttpKernel\Profiler\RedisProfilerStorage;
-use Symfony\Component\HttpKernel\Tests\Profiler\Mock\RedisMock;
-
-class RedisProfilerStorageTest extends AbstractProfilerStorageTest
-{
-    protected static $storage;
-
-    protected function setUp()
-    {
-        $redisMock = new RedisMock();
-        $redisMock->connect('127.0.0.1', 6379);
-
-        self::$storage = new RedisProfilerStorage('redis://127.0.0.1:6379', '', '', 86400);
-        self::$storage->setRedis($redisMock);
-
-        if (self::$storage) {
-            self::$storage->purge();
-        }
-    }
-
-    protected function tearDown()
-    {
-        if (self::$storage) {
-            self::$storage->purge();
-            self::$storage = false;
-        }
-    }
-
-    /**
-     * @return \Symfony\Component\HttpKernel\Profiler\ProfilerStorageInterface
-     */
-    protected function getStorage()
-    {
-        return self::$storage;
-    }
-}
diff --git a/vendor/symfony/http-kernel/Tests/Profiler/SqliteProfilerStorageTest.php b/vendor/symfony/http-kernel/Tests/Profiler/SqliteProfilerStorageTest.php
deleted file mode 100644
index 43546c1..0000000
--- a/vendor/symfony/http-kernel/Tests/Profiler/SqliteProfilerStorageTest.php
+++ /dev/null
@@ -1,50 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpKernel\Tests\Profiler;
-
-use Symfony\Component\HttpKernel\Profiler\SqliteProfilerStorage;
-
-class SqliteProfilerStorageTest extends AbstractProfilerStorageTest
-{
-    protected static $dbFile;
-    protected static $storage;
-
-    public static function setUpBeforeClass()
-    {
-        self::$dbFile = tempnam(sys_get_temp_dir(), 'sf2_sqlite_storage');
-        if (file_exists(self::$dbFile)) {
-            @unlink(self::$dbFile);
-        }
-        self::$storage = new SqliteProfilerStorage('sqlite:'.self::$dbFile);
-    }
-
-    public static function tearDownAfterClass()
-    {
-        @unlink(self::$dbFile);
-    }
-
-    protected function setUp()
-    {
-        if (!class_exists('SQLite3') && (!class_exists('PDO') || !in_array('sqlite', \PDO::getAvailableDrivers()))) {
-            $this->markTestSkipped('This test requires SQLite support in your environment');
-        }
-        self::$storage->purge();
-    }
-
-    /**
-     * @return \Symfony\Component\HttpKernel\Profiler\ProfilerStorageInterface
-     */
-    protected function getStorage()
-    {
-        return self::$storage;
-    }
-}
diff --git a/vendor/symfony/http-kernel/Tests/TestHttpKernel.php b/vendor/symfony/http-kernel/Tests/TestHttpKernel.php
deleted file mode 100644
index d526c4d..0000000
--- a/vendor/symfony/http-kernel/Tests/TestHttpKernel.php
+++ /dev/null
@@ -1,41 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpKernel\Tests;
-
-use Symfony\Component\HttpKernel\HttpKernel;
-use Symfony\Component\HttpFoundation\Request;
-use Symfony\Component\HttpFoundation\Response;
-use Symfony\Component\HttpKernel\Controller\ControllerResolverInterface;
-use Symfony\Component\EventDispatcher\EventDispatcher;
-
-class TestHttpKernel extends HttpKernel implements ControllerResolverInterface
-{
-    public function __construct()
-    {
-        parent::__construct(new EventDispatcher(), $this);
-    }
-
-    public function getController(Request $request)
-    {
-        return array($this, 'callController');
-    }
-
-    public function getArguments(Request $request, $controller)
-    {
-        return array($request);
-    }
-
-    public function callController(Request $request)
-    {
-        return new Response('Request: '.$request->getRequestUri());
-    }
-}
diff --git a/vendor/symfony/http-kernel/Tests/UriSignerTest.php b/vendor/symfony/http-kernel/Tests/UriSignerTest.php
deleted file mode 100644
index 6b1fd90..0000000
--- a/vendor/symfony/http-kernel/Tests/UriSignerTest.php
+++ /dev/null
@@ -1,51 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\HttpKernel\Tests;
-
-use Symfony\Component\HttpKernel\UriSigner;
-
-class UriSignerTest extends \PHPUnit_Framework_TestCase
-{
-    public function testSign()
-    {
-        $signer = new UriSigner('foobar');
-
-        $this->assertContains('?_hash=', $signer->sign('http://example.com/foo'));
-        $this->assertContains('&_hash=', $signer->sign('http://example.com/foo?foo=bar'));
-    }
-
-    public function testCheck()
-    {
-        $signer = new UriSigner('foobar');
-
-        $this->assertFalse($signer->check('http://example.com/foo?_hash=foo'));
-        $this->assertFalse($signer->check('http://example.com/foo?foo=bar&_hash=foo'));
-        $this->assertFalse($signer->check('http://example.com/foo?foo=bar&_hash=foo&bar=foo'));
-
-        $this->assertTrue($signer->check($signer->sign('http://example.com/foo')));
-        $this->assertTrue($signer->check($signer->sign('http://example.com/foo?foo=bar')));
-
-        $this->assertTrue($signer->sign('http://example.com/foo?foo=bar&bar=foo') === $signer->sign('http://example.com/foo?bar=foo&foo=bar'));
-    }
-
-    public function testCheckWithDifferentArgSeparator()
-    {
-        $this->iniSet('arg_separator.output', '&amp;');
-        $signer = new UriSigner('foobar');
-
-        $this->assertSame(
-            'http://example.com/foo?baz=bay&foo=bar&_hash=rIOcC%2FF3DoEGo%2FvnESjSp7uU9zA9S%2F%2BOLhxgMexoPUM%3D',
-            $signer->sign('http://example.com/foo?foo=bar&baz=bay')
-        );
-        $this->assertTrue($signer->check($signer->sign('http://example.com/foo?foo=bar&baz=bay')));
-    }
-}
diff --git a/vendor/symfony/process/Tests/AbstractProcessTest.php b/vendor/symfony/process/Tests/AbstractProcessTest.php
deleted file mode 100644
index 93b5779..0000000
--- a/vendor/symfony/process/Tests/AbstractProcessTest.php
+++ /dev/null
@@ -1,1213 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Process\Tests;
-
-use Symfony\Component\Process\Exception\LogicException;
-use Symfony\Component\Process\Exception\ProcessTimedOutException;
-use Symfony\Component\Process\Exception\RuntimeException;
-use Symfony\Component\Process\PhpExecutableFinder;
-use Symfony\Component\Process\Pipes\PipesInterface;
-use Symfony\Component\Process\Process;
-
-/**
- * @author Robert Schönthal <seroscho@googlemail.com>
- */
-abstract class AbstractProcessTest extends \PHPUnit_Framework_TestCase
-{
-    protected static $phpBin;
-
-    public static function setUpBeforeClass()
-    {
-        $phpBin = new PhpExecutableFinder();
-        self::$phpBin = $phpBin->find();
-    }
-
-    public function testThatProcessDoesNotThrowWarningDuringRun()
-    {
-        @trigger_error('Test Error', E_USER_NOTICE);
-        $process = $this->getProcess(self::$phpBin." -r 'sleep(3)'");
-        $process->run();
-        $actualError = error_get_last();
-        $this->assertEquals('Test Error', $actualError['message']);
-        $this->assertEquals(E_USER_NOTICE, $actualError['type']);
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Process\Exception\InvalidArgumentException
-     */
-    public function testNegativeTimeoutFromConstructor()
-    {
-        $this->getProcess('', null, null, null, -1);
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Process\Exception\InvalidArgumentException
-     */
-    public function testNegativeTimeoutFromSetter()
-    {
-        $p = $this->getProcess('');
-        $p->setTimeout(-1);
-    }
-
-    public function testFloatAndNullTimeout()
-    {
-        $p = $this->getProcess('');
-
-        $p->setTimeout(10);
-        $this->assertSame(10.0, $p->getTimeout());
-
-        $p->setTimeout(null);
-        $this->assertNull($p->getTimeout());
-
-        $p->setTimeout(0.0);
-        $this->assertNull($p->getTimeout());
-    }
-
-    public function testStopWithTimeoutIsActuallyWorking()
-    {
-        $this->verifyPosixIsEnabled();
-
-        // exec is mandatory here since we send a signal to the process
-        // see https://github.com/symfony/symfony/issues/5030 about prepending
-        // command with exec
-        $p = $this->getProcess('exec php '.__DIR__.'/NonStopableProcess.php 3');
-        $p->start();
-        usleep(100000);
-        $start = microtime(true);
-        $p->stop(1.1, SIGKILL);
-        while ($p->isRunning()) {
-            usleep(1000);
-        }
-        $duration = microtime(true) - $start;
-
-        $this->assertLessThan(4, $duration);
-    }
-
-    public function testAllOutputIsActuallyReadOnTermination()
-    {
-        // this code will result in a maximum of 2 reads of 8192 bytes by calling
-        // start() and isRunning().  by the time getOutput() is called the process
-        // has terminated so the internal pipes array is already empty. normally
-        // the call to start() will not read any data as the process will not have
-        // generated output, but this is non-deterministic so we must count it as
-        // a possibility.  therefore we need 2 * PipesInterface::CHUNK_SIZE plus
-        // another byte which will never be read.
-        $expectedOutputSize = PipesInterface::CHUNK_SIZE * 2 + 2;
-
-        $code = sprintf('echo str_repeat(\'*\', %d);', $expectedOutputSize);
-        $p = $this->getProcess(sprintf('%s -r %s', self::$phpBin, escapeshellarg($code)));
-
-        $p->start();
-        // Let's wait enough time for process to finish...
-        // Here we don't call Process::run or Process::wait to avoid any read of pipes
-        usleep(500000);
-
-        if ($p->isRunning()) {
-            $this->markTestSkipped('Process execution did not complete in the required time frame');
-        }
-
-        $o = $p->getOutput();
-
-        $this->assertEquals($expectedOutputSize, strlen($o));
-    }
-
-    public function testCallbacksAreExecutedWithStart()
-    {
-        $data = '';
-
-        $process = $this->getProcess('echo foo && php -r "sleep(1);" && echo foo');
-        $process->start(function ($type, $buffer) use (&$data) {
-            $data .= $buffer;
-        });
-
-        while ($process->isRunning()) {
-            usleep(10000);
-        }
-
-        $this->assertEquals(2, preg_match_all('/foo/', $data, $matches));
-    }
-
-    /**
-     * tests results from sub processes.
-     *
-     * @dataProvider responsesCodeProvider
-     */
-    public function testProcessResponses($expected, $getter, $code)
-    {
-        $p = $this->getProcess(sprintf('%s -r %s', self::$phpBin, escapeshellarg($code)));
-        $p->run();
-
-        $this->assertSame($expected, $p->$getter());
-    }
-
-    /**
-     * tests results from sub processes.
-     *
-     * @dataProvider pipesCodeProvider
-     */
-    public function testProcessPipes($code, $size)
-    {
-        $expected = str_repeat(str_repeat('*', 1024), $size).'!';
-        $expectedLength = (1024 * $size) + 1;
-
-        $p = $this->getProcess(sprintf('%s -r %s', self::$phpBin, escapeshellarg($code)));
-        $p->setInput($expected);
-        $p->run();
-
-        $this->assertEquals($expectedLength, strlen($p->getOutput()));
-        $this->assertEquals($expectedLength, strlen($p->getErrorOutput()));
-    }
-
-    /**
-     * @dataProvider pipesCodeProvider
-     */
-    public function testSetStreamAsInput($code, $size)
-    {
-        if ('\\' === DIRECTORY_SEPARATOR) {
-            $this->markTestIncomplete('This test fails with a timeout on Windows, can someone investigate please?');
-        }
-        $expected = str_repeat(str_repeat('*', 1024), $size).'!';
-        $expectedLength = (1024 * $size) + 1;
-
-        $stream = fopen('php://temporary', 'w+');
-        fwrite($stream, $expected);
-        rewind($stream);
-
-        $p = $this->getProcess(sprintf('%s -r %s', self::$phpBin, escapeshellarg($code)), null, null, null, 5);
-        $p->setInput($stream);
-        $p->run();
-
-        fclose($stream);
-
-        $this->assertEquals($expectedLength, strlen($p->getOutput()));
-        $this->assertEquals($expectedLength, strlen($p->getErrorOutput()));
-    }
-
-    public function testSetInputWhileRunningThrowsAnException()
-    {
-        $process = $this->getProcess(self::$phpBin.' -r "usleep(500000);"');
-        $process->start();
-        try {
-            $process->setInput('foobar');
-            $process->stop();
-            $this->fail('A LogicException should have been raised.');
-        } catch (LogicException $e) {
-            $this->assertEquals('Input can not be set while the process is running.', $e->getMessage());
-        }
-        $process->stop();
-    }
-
-    /**
-     * @dataProvider provideInvalidInputValues
-     * @expectedException \Symfony\Component\Process\Exception\InvalidArgumentException
-     * @expectedExceptionMessage Symfony\Component\Process\Process::setInput only accepts strings or stream resources.
-     */
-    public function testInvalidInput($value)
-    {
-        $process = $this->getProcess(self::$phpBin.' -v');
-        $process->setInput($value);
-    }
-
-    public function provideInvalidInputValues()
-    {
-        return array(
-            array(array()),
-            array(new NonStringifiable()),
-        );
-    }
-
-    /**
-     * @dataProvider provideInputValues
-     */
-    public function testValidInput($expected, $value)
-    {
-        $process = $this->getProcess(self::$phpBin.' -v');
-        $process->setInput($value);
-        $this->assertSame($expected, $process->getInput());
-    }
-
-    public function provideInputValues()
-    {
-        return array(
-            array(null, null),
-            array('24.5', 24.5),
-            array('input data', 'input data'),
-        );
-    }
-
-    /**
-     * @dataProvider provideLegacyInputValues
-     * @group legacy
-     */
-    public function testLegacyValidInput($expected, $value)
-    {
-        $process = $this->getProcess(self::$phpBin.' -v');
-        $process->setInput($value);
-        $this->assertSame($expected, $process->getInput());
-    }
-
-    public function provideLegacyInputValues()
-    {
-        return array(
-            array('stringifiable', new Stringifiable()),
-        );
-    }
-
-    public function chainedCommandsOutputProvider()
-    {
-        if ('\\' === DIRECTORY_SEPARATOR) {
-            return array(
-                array("2 \r\n2\r\n", '&&', '2'),
-            );
-        }
-
-        return array(
-            array("1\n1\n", ';', '1'),
-            array("2\n2\n", '&&', '2'),
-        );
-    }
-
-    /**
-     * @dataProvider chainedCommandsOutputProvider
-     */
-    public function testChainedCommandsOutput($expected, $operator, $input)
-    {
-        $process = $this->getProcess(sprintf('echo %s %s echo %s', $input, $operator, $input));
-        $process->run();
-        $this->assertEquals($expected, $process->getOutput());
-    }
-
-    public function testCallbackIsExecutedForOutput()
-    {
-        $p = $this->getProcess(sprintf('%s -r %s', self::$phpBin, escapeshellarg('echo \'foo\';')));
-
-        $called = false;
-        $p->run(function ($type, $buffer) use (&$called) {
-            $called = $buffer === 'foo';
-        });
-
-        $this->assertTrue($called, 'The callback should be executed with the output');
-    }
-
-    public function testGetErrorOutput()
-    {
-        $p = $this->getProcess(sprintf('%s -r %s', self::$phpBin, escapeshellarg('$n = 0; while ($n < 3) { file_put_contents(\'php://stderr\', \'ERROR\'); $n++; }')));
-
-        $p->run();
-        $this->assertEquals(3, preg_match_all('/ERROR/', $p->getErrorOutput(), $matches));
-    }
-
-    public function testGetIncrementalErrorOutput()
-    {
-        // use a lock file to toggle between writing ("W") and reading ("R") the
-        // error stream
-        $lock = tempnam(sys_get_temp_dir(), get_class($this).'Lock');
-        file_put_contents($lock, 'W');
-
-        $p = $this->getProcess(sprintf('%s -r %s', self::$phpBin, escapeshellarg('$n = 0; while ($n < 3) { if (\'W\' === file_get_contents('.var_export($lock, true).')) { file_put_contents(\'php://stderr\', \'ERROR\'); $n++; file_put_contents('.var_export($lock, true).', \'R\'); } usleep(100); }')));
-
-        $p->start();
-        while ($p->isRunning()) {
-            if ('R' === file_get_contents($lock)) {
-                $this->assertLessThanOrEqual(1, preg_match_all('/ERROR/', $p->getIncrementalErrorOutput(), $matches));
-                file_put_contents($lock, 'W');
-            }
-            usleep(100);
-        }
-
-        unlink($lock);
-    }
-
-    public function testFlushErrorOutput()
-    {
-        $p = $this->getProcess(sprintf('%s -r %s', self::$phpBin, escapeshellarg('$n = 0; while ($n < 3) { file_put_contents(\'php://stderr\', \'ERROR\'); $n++; }')));
-
-        $p->run();
-        $p->clearErrorOutput();
-        $this->assertEmpty($p->getErrorOutput());
-    }
-
-    public function testGetEmptyIncrementalErrorOutput()
-    {
-        // use a lock file to toggle between writing ("W") and reading ("R") the
-        // output stream
-        $lock = tempnam(sys_get_temp_dir(), get_class($this).'Lock');
-        file_put_contents($lock, 'W');
-
-        $p = $this->getProcess(sprintf('%s -r %s', self::$phpBin, escapeshellarg('$n = 0; while ($n < 3) { if (\'W\' === file_get_contents('.var_export($lock, true).')) { file_put_contents(\'php://stderr\', \'ERROR\'); $n++; file_put_contents('.var_export($lock, true).', \'R\'); } usleep(100); }')));
-
-        $p->start();
-
-        $shouldWrite = false;
-
-        while ($p->isRunning()) {
-            if ('R' === file_get_contents($lock)) {
-                if (!$shouldWrite) {
-                    $this->assertLessThanOrEqual(1, preg_match_all('/ERROR/', $p->getIncrementalOutput(), $matches));
-                    $shouldWrite = true;
-                } else {
-                    $this->assertSame('', $p->getIncrementalOutput());
-
-                    file_put_contents($lock, 'W');
-                    $shouldWrite = false;
-                }
-            }
-            usleep(100);
-        }
-
-        unlink($lock);
-    }
-
-    public function testGetOutput()
-    {
-        $p = $this->getProcess(sprintf('%s -r %s', self::$phpBin, escapeshellarg('$n = 0; while ($n < 3) { echo \' foo \'; $n++; }')));
-
-        $p->run();
-        $this->assertEquals(3, preg_match_all('/foo/', $p->getOutput(), $matches));
-    }
-
-    public function testGetIncrementalOutput()
-    {
-        // use a lock file to toggle between writing ("W") and reading ("R") the
-        // output stream
-        $lock = tempnam(sys_get_temp_dir(), get_class($this).'Lock');
-        file_put_contents($lock, 'W');
-
-        $p = $this->getProcess(sprintf('%s -r %s', self::$phpBin, escapeshellarg('$n = 0; while ($n < 3) { if (\'W\' === file_get_contents('.var_export($lock, true).')) { echo \' foo \'; $n++; file_put_contents('.var_export($lock, true).', \'R\'); } usleep(100); }')));
-
-        $p->start();
-        while ($p->isRunning()) {
-            if ('R' === file_get_contents($lock)) {
-                $this->assertLessThanOrEqual(1, preg_match_all('/foo/', $p->getIncrementalOutput(), $matches));
-                file_put_contents($lock, 'W');
-            }
-            usleep(100);
-        }
-
-        unlink($lock);
-    }
-
-    public function testFlushOutput()
-    {
-        $p = $this->getProcess(sprintf('%s -r %s', self::$phpBin, escapeshellarg('$n=0;while ($n<3) {echo \' foo \';$n++;}')));
-
-        $p->run();
-        $p->clearOutput();
-        $this->assertEmpty($p->getOutput());
-    }
-
-    public function testGetEmptyIncrementalOutput()
-    {
-        // use a lock file to toggle between writing ("W") and reading ("R") the
-        // output stream
-        $lock = tempnam(sys_get_temp_dir(), get_class($this).'Lock');
-        file_put_contents($lock, 'W');
-
-        $p = $this->getProcess(sprintf('%s -r %s', self::$phpBin, escapeshellarg('$n = 0; while ($n < 3) { if (\'W\' === file_get_contents('.var_export($lock, true).')) { echo \' foo \'; $n++; file_put_contents('.var_export($lock, true).', \'R\'); } usleep(100); }')));
-
-        $p->start();
-
-        $shouldWrite = false;
-
-        while ($p->isRunning()) {
-            if ('R' === file_get_contents($lock)) {
-                if (!$shouldWrite) {
-                    $this->assertLessThanOrEqual(1, preg_match_all('/foo/', $p->getIncrementalOutput(), $matches));
-                    $shouldWrite = true;
-                } else {
-                    $this->assertSame('', $p->getIncrementalOutput());
-
-                    file_put_contents($lock, 'W');
-                    $shouldWrite = false;
-                }
-            }
-            usleep(100);
-        }
-
-        unlink($lock);
-    }
-
-    public function testZeroAsOutput()
-    {
-        if ('\\' === DIRECTORY_SEPARATOR) {
-            // see http://stackoverflow.com/questions/7105433/windows-batch-echo-without-new-line
-            $p = $this->getProcess('echo | set /p dummyName=0');
-        } else {
-            $p = $this->getProcess('printf 0');
-        }
-
-        $p->run();
-        $this->assertSame('0', $p->getOutput());
-    }
-
-    public function testExitCodeCommandFailed()
-    {
-        if ('\\' === DIRECTORY_SEPARATOR) {
-            $this->markTestSkipped('Windows does not support POSIX exit code');
-        }
-
-        // such command run in bash return an exitcode 127
-        $process = $this->getProcess('nonexistingcommandIhopeneversomeonewouldnameacommandlikethis');
-        $process->run();
-
-        $this->assertGreaterThan(0, $process->getExitCode());
-    }
-
-    public function testTTYCommand()
-    {
-        if ('\\' === DIRECTORY_SEPARATOR) {
-            $this->markTestSkipped('Windows does have /dev/tty support');
-        }
-
-        $process = $this->getProcess('echo "foo" >> /dev/null && php -r "usleep(100000);"');
-        $process->setTty(true);
-        $process->start();
-        $this->assertTrue($process->isRunning());
-        $process->wait();
-
-        $this->assertSame(Process::STATUS_TERMINATED, $process->getStatus());
-    }
-
-    public function testTTYCommandExitCode()
-    {
-        if ('\\' === DIRECTORY_SEPARATOR) {
-            $this->markTestSkipped('Windows does have /dev/tty support');
-        }
-
-        $process = $this->getProcess('echo "foo" >> /dev/null');
-        $process->setTty(true);
-        $process->run();
-
-        $this->assertTrue($process->isSuccessful());
-    }
-
-    public function testTTYInWindowsEnvironment()
-    {
-        if ('\\' !== DIRECTORY_SEPARATOR) {
-            $this->markTestSkipped('This test is for Windows platform only');
-        }
-
-        $process = $this->getProcess('echo "foo" >> /dev/null');
-        $process->setTty(false);
-        $this->setExpectedException('Symfony\Component\Process\Exception\RuntimeException', 'TTY mode is not supported on Windows platform.');
-        $process->setTty(true);
-    }
-
-    public function testExitCodeTextIsNullWhenExitCodeIsNull()
-    {
-        $process = $this->getProcess('');
-        $this->assertNull($process->getExitCodeText());
-    }
-
-    public function testPTYCommand()
-    {
-        if (!Process::isPtySupported()) {
-            $this->markTestSkipped('PTY is not supported on this operating system.');
-        }
-
-        $process = $this->getProcess('echo "foo"');
-        $process->setPty(true);
-        $process->run();
-
-        $this->assertSame(Process::STATUS_TERMINATED, $process->getStatus());
-        $this->assertEquals("foo\r\n", $process->getOutput());
-    }
-
-    public function testMustRun()
-    {
-        $process = $this->getProcess('echo foo');
-
-        $this->assertSame($process, $process->mustRun());
-        $this->assertEquals('foo'.PHP_EOL, $process->getOutput());
-    }
-
-    public function testSuccessfulMustRunHasCorrectExitCode()
-    {
-        $process = $this->getProcess('echo foo')->mustRun();
-        $this->assertEquals(0, $process->getExitCode());
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Process\Exception\ProcessFailedException
-     */
-    public function testMustRunThrowsException()
-    {
-        $process = $this->getProcess('exit 1');
-        $process->mustRun();
-    }
-
-    public function testExitCodeText()
-    {
-        $process = $this->getProcess('');
-        $r = new \ReflectionObject($process);
-        $p = $r->getProperty('exitcode');
-        $p->setAccessible(true);
-
-        $p->setValue($process, 2);
-        $this->assertEquals('Misuse of shell builtins', $process->getExitCodeText());
-    }
-
-    public function testStartIsNonBlocking()
-    {
-        $process = $this->getProcess(self::$phpBin.' -r "usleep(500000);"');
-        $start = microtime(true);
-        $process->start();
-        $end = microtime(true);
-        $this->assertLessThan(0.4, $end - $start);
-        $process->wait();
-    }
-
-    public function testUpdateStatus()
-    {
-        $process = $this->getProcess(self::$phpBin.' -v');
-        $process->run();
-        $this->assertTrue(strlen($process->getOutput()) > 0);
-    }
-
-    public function testGetExitCodeIsNullOnStart()
-    {
-        $process = $this->getProcess(self::$phpBin.' -r "usleep(200000);"');
-        $this->assertNull($process->getExitCode());
-        $process->start();
-        $this->assertNull($process->getExitCode());
-        $process->wait();
-        $this->assertEquals(0, $process->getExitCode());
-    }
-
-    public function testGetExitCodeIsNullOnWhenStartingAgain()
-    {
-        $process = $this->getProcess(self::$phpBin.' -r "usleep(200000);"');
-        $process->run();
-        $this->assertEquals(0, $process->getExitCode());
-        $process->start();
-        $this->assertNull($process->getExitCode());
-        $process->wait();
-        $this->assertEquals(0, $process->getExitCode());
-    }
-
-    public function testGetExitCode()
-    {
-        $process = $this->getProcess(self::$phpBin.' -v');
-        $process->run();
-        $this->assertSame(0, $process->getExitCode());
-    }
-
-    public function testStatus()
-    {
-        $process = $this->getProcess(self::$phpBin.' -r "usleep(500000);"');
-        $this->assertFalse($process->isRunning());
-        $this->assertFalse($process->isStarted());
-        $this->assertFalse($process->isTerminated());
-        $this->assertSame(Process::STATUS_READY, $process->getStatus());
-        $process->start();
-        $this->assertTrue($process->isRunning());
-        $this->assertTrue($process->isStarted());
-        $this->assertFalse($process->isTerminated());
-        $this->assertSame(Process::STATUS_STARTED, $process->getStatus());
-        $process->wait();
-        $this->assertFalse($process->isRunning());
-        $this->assertTrue($process->isStarted());
-        $this->assertTrue($process->isTerminated());
-        $this->assertSame(Process::STATUS_TERMINATED, $process->getStatus());
-    }
-
-    public function testStop()
-    {
-        $process = $this->getProcess(self::$phpBin.' -r "sleep(4);"');
-        $process->start();
-        $this->assertTrue($process->isRunning());
-        $process->stop();
-        $this->assertFalse($process->isRunning());
-    }
-
-    public function testIsSuccessful()
-    {
-        $process = $this->getProcess(self::$phpBin.' -v');
-        $process->run();
-        $this->assertTrue($process->isSuccessful());
-    }
-
-    public function testIsSuccessfulOnlyAfterTerminated()
-    {
-        $process = $this->getProcess(self::$phpBin.' -r "sleep(1);"');
-        $process->start();
-
-        $this->assertFalse($process->isSuccessful());
-
-        while ($process->isRunning()) {
-            usleep(300000);
-        }
-
-        $this->assertTrue($process->isSuccessful());
-    }
-
-    public function testIsNotSuccessful()
-    {
-        $process = $this->getProcess(self::$phpBin.' -r "usleep(500000);throw new \Exception(\'BOUM\');"');
-        $process->start();
-        $this->assertTrue($process->isRunning());
-        $process->wait();
-        $this->assertFalse($process->isSuccessful());
-    }
-
-    public function testProcessIsNotSignaled()
-    {
-        if ('\\' === DIRECTORY_SEPARATOR) {
-            $this->markTestSkipped('Windows does not support POSIX signals');
-        }
-
-        $process = $this->getProcess(self::$phpBin.' -v');
-        $process->run();
-        $this->assertFalse($process->hasBeenSignaled());
-    }
-
-    public function testProcessWithoutTermSignalIsNotSignaled()
-    {
-        if ('\\' === DIRECTORY_SEPARATOR) {
-            $this->markTestSkipped('Windows does not support POSIX signals');
-        }
-
-        $process = $this->getProcess(self::$phpBin.' -v');
-        $process->run();
-        $this->assertFalse($process->hasBeenSignaled());
-    }
-
-    public function testProcessWithoutTermSignal()
-    {
-        if ('\\' === DIRECTORY_SEPARATOR) {
-            $this->markTestSkipped('Windows does not support POSIX signals');
-        }
-
-        $process = $this->getProcess(self::$phpBin.' -v');
-        $process->run();
-        $this->assertEquals(0, $process->getTermSignal());
-    }
-
-    public function testProcessIsSignaledIfStopped()
-    {
-        if ('\\' === DIRECTORY_SEPARATOR) {
-            $this->markTestSkipped('Windows does not support POSIX signals');
-        }
-
-        $process = $this->getProcess(self::$phpBin.' -r "sleep(4);"');
-        $process->start();
-        $process->stop();
-        $this->assertTrue($process->hasBeenSignaled());
-    }
-
-    public function testProcessWithTermSignal()
-    {
-        if ('\\' === DIRECTORY_SEPARATOR) {
-            $this->markTestSkipped('Windows does not support POSIX signals');
-        }
-
-        // SIGTERM is only defined if pcntl extension is present
-        $termSignal = defined('SIGTERM') ? SIGTERM : 15;
-
-        $process = $this->getProcess(self::$phpBin.' -r "sleep(4);"');
-        $process->start();
-        $process->stop();
-
-        $this->assertEquals($termSignal, $process->getTermSignal());
-    }
-
-    public function testProcessThrowsExceptionWhenExternallySignaled()
-    {
-        if ('\\' === DIRECTORY_SEPARATOR) {
-            $this->markTestSkipped('Windows does not support POSIX signals');
-        }
-
-        if (!function_exists('posix_kill')) {
-            $this->markTestSkipped('posix_kill is required for this test');
-        }
-
-        $termSignal = defined('SIGKILL') ? SIGKILL : 9;
-
-        $process = $this->getProcess('exec php -r "while (true) {}"');
-        $process->start();
-        posix_kill($process->getPid(), $termSignal);
-
-        $this->setExpectedException('Symfony\Component\Process\Exception\RuntimeException', 'The process has been signaled with signal "9".');
-        $process->wait();
-    }
-
-    public function testRestart()
-    {
-        $process1 = $this->getProcess(self::$phpBin.' -r "echo getmypid();"');
-        $process1->run();
-        $process2 = $process1->restart();
-
-        $process2->wait(); // wait for output
-
-        // Ensure that both processed finished and the output is numeric
-        $this->assertFalse($process1->isRunning());
-        $this->assertFalse($process2->isRunning());
-        $this->assertTrue(is_numeric($process1->getOutput()));
-        $this->assertTrue(is_numeric($process2->getOutput()));
-
-        // Ensure that restart returned a new process by check that the output is different
-        $this->assertNotEquals($process1->getOutput(), $process2->getOutput());
-    }
-
-    public function testPhpDeadlock()
-    {
-        $this->markTestSkipped('Can cause PHP to hang');
-
-        // Sleep doesn't work as it will allow the process to handle signals and close
-        // file handles from the other end.
-        $process = $this->getProcess(self::$phpBin.' -r "while (true) {}"');
-        $process->start();
-
-        // PHP will deadlock when it tries to cleanup $process
-    }
-
-    public function testRunProcessWithTimeout()
-    {
-        $timeout = 0.5;
-        $process = $this->getProcess(self::$phpBin.' -r "usleep(600000);"');
-        $process->setTimeout($timeout);
-        $start = microtime(true);
-        try {
-            $process->run();
-            $this->fail('A RuntimeException should have been raised');
-        } catch (RuntimeException $e) {
-        }
-        $duration = microtime(true) - $start;
-
-        if ('\\' === DIRECTORY_SEPARATOR) {
-            // Windows is a bit slower as it read file handles, then allow twice the precision
-            $maxDuration = $timeout + 2 * Process::TIMEOUT_PRECISION;
-        } else {
-            $maxDuration = $timeout + Process::TIMEOUT_PRECISION;
-        }
-
-        $this->assertLessThan($maxDuration, $duration);
-    }
-
-    public function testCheckTimeoutOnNonStartedProcess()
-    {
-        $process = $this->getProcess(self::$phpBin.' -r "sleep(3);"');
-        $process->checkTimeout();
-    }
-
-    public function testCheckTimeoutOnTerminatedProcess()
-    {
-        $process = $this->getProcess(self::$phpBin.' -v');
-        $process->run();
-        $process->checkTimeout();
-    }
-
-    public function testCheckTimeoutOnStartedProcess()
-    {
-        $timeout = 0.5;
-        $precision = 100000;
-        $process = $this->getProcess(self::$phpBin.' -r "sleep(3);"');
-        $process->setTimeout($timeout);
-        $start = microtime(true);
-
-        $process->start();
-
-        try {
-            while ($process->isRunning()) {
-                $process->checkTimeout();
-                usleep($precision);
-            }
-            $this->fail('A RuntimeException should have been raised');
-        } catch (RuntimeException $e) {
-        }
-        $duration = microtime(true) - $start;
-
-        $this->assertLessThan($timeout + $precision, $duration);
-        $this->assertFalse($process->isSuccessful());
-    }
-
-    public function testIdleTimeout()
-    {
-        $process = $this->getProcess(self::$phpBin.' -r "sleep(3);"');
-        $process->setTimeout(10);
-        $process->setIdleTimeout(0.5);
-
-        try {
-            $process->run();
-
-            $this->fail('A timeout exception was expected.');
-        } catch (ProcessTimedOutException $ex) {
-            $this->assertTrue($ex->isIdleTimeout());
-            $this->assertFalse($ex->isGeneralTimeout());
-            $this->assertEquals(0.5, $ex->getExceededTimeout());
-        }
-    }
-
-    public function testIdleTimeoutNotExceededWhenOutputIsSent()
-    {
-        if ('\\' === DIRECTORY_SEPARATOR) {
-            $this->markTestIncomplete('This test fails with a timeout on Windows, can someone investigate please?');
-        }
-        $process = $this->getProcess(sprintf('%s -r %s', self::$phpBin, escapeshellarg('$n = 30; while ($n--) {echo "foo\n"; usleep(100000); }')));
-        $process->setTimeout(2);
-        $process->setIdleTimeout(1);
-
-        try {
-            $process->run();
-            $this->fail('A timeout exception was expected.');
-        } catch (ProcessTimedOutException $ex) {
-            $this->assertTrue($ex->isGeneralTimeout(), 'A general timeout is expected.');
-            $this->assertFalse($ex->isIdleTimeout(), 'No idle timeout is expected.');
-            $this->assertEquals(2, $ex->getExceededTimeout());
-        }
-    }
-
-    public function testStartAfterATimeout()
-    {
-        $process = $this->getProcess(sprintf('%s -r %s', self::$phpBin, escapeshellarg('$n = 1000; while ($n--) {echo \'\'; usleep(1000); }')));
-        $process->setTimeout(0.1);
-
-        try {
-            $process->run();
-            $this->fail('A RuntimeException should have been raised.');
-        } catch (RuntimeException $e) {
-        }
-        $process->start();
-        usleep(1000);
-        $process->stop();
-    }
-
-    public function testGetPid()
-    {
-        $process = $this->getProcess(self::$phpBin.' -r "usleep(500000);"');
-        $process->start();
-        $this->assertGreaterThan(0, $process->getPid());
-        $process->wait();
-    }
-
-    public function testGetPidIsNullBeforeStart()
-    {
-        $process = $this->getProcess(self::$phpBin.' -r "sleep(1);"');
-        $this->assertNull($process->getPid());
-    }
-
-    public function testGetPidIsNullAfterRun()
-    {
-        $process = $this->getProcess(self::$phpBin.' -v');
-        $process->run();
-        $this->assertNull($process->getPid());
-    }
-
-    public function testSignal()
-    {
-        $this->verifyPosixIsEnabled();
-
-        $process = $this->getProcess('exec php -f '.__DIR__.'/SignalListener.php');
-        $process->start();
-        usleep(500000);
-        $process->signal(SIGUSR1);
-
-        while ($process->isRunning() && false === strpos($process->getOutput(), 'Caught SIGUSR1')) {
-            usleep(10000);
-        }
-
-        $this->assertEquals('Caught SIGUSR1', $process->getOutput());
-    }
-
-    public function testExitCodeIsAvailableAfterSignal()
-    {
-        $this->verifyPosixIsEnabled();
-
-        $process = $this->getProcess('sleep 4');
-        $process->start();
-        $process->signal(SIGKILL);
-
-        while ($process->isRunning()) {
-            usleep(10000);
-        }
-
-        $this->assertFalse($process->isRunning());
-        $this->assertTrue($process->hasBeenSignaled());
-        $this->assertFalse($process->isSuccessful());
-        $this->assertEquals(137, $process->getExitCode());
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Process\Exception\LogicException
-     */
-    public function testSignalProcessNotRunning()
-    {
-        $this->verifyPosixIsEnabled();
-        $process = $this->getProcess(self::$phpBin.' -v');
-        $process->signal(SIGHUP);
-    }
-
-    /**
-     * @dataProvider provideMethodsThatNeedARunningProcess
-     */
-    public function testMethodsThatNeedARunningProcess($method)
-    {
-        $process = $this->getProcess(self::$phpBin.' -v');
-        $this->setExpectedException('Symfony\Component\Process\Exception\LogicException', sprintf('Process must be started before calling %s.', $method));
-        $process->{$method}();
-    }
-
-    public function provideMethodsThatNeedARunningProcess()
-    {
-        return array(
-            array('getOutput'),
-            array('getIncrementalOutput'),
-            array('getErrorOutput'),
-            array('getIncrementalErrorOutput'),
-            array('wait'),
-        );
-    }
-
-    /**
-     * @dataProvider provideMethodsThatNeedATerminatedProcess
-     */
-    public function testMethodsThatNeedATerminatedProcess($method)
-    {
-        $process = $this->getProcess(self::$phpBin.' -r "sleep(1);"');
-        $process->start();
-        try {
-            $process->{$method}();
-            $process->stop(0);
-            $this->fail('A LogicException must have been thrown');
-        } catch (\Exception $e) {
-            $this->assertInstanceOf('Symfony\Component\Process\Exception\LogicException', $e);
-            $this->assertEquals(sprintf('Process must be terminated before calling %s.', $method), $e->getMessage());
-        }
-        $process->stop(0);
-    }
-
-    public function provideMethodsThatNeedATerminatedProcess()
-    {
-        return array(
-            array('hasBeenSignaled'),
-            array('getTermSignal'),
-            array('hasBeenStopped'),
-            array('getStopSignal'),
-        );
-    }
-
-    private function verifyPosixIsEnabled()
-    {
-        if ('\\' === DIRECTORY_SEPARATOR) {
-            $this->markTestSkipped('POSIX signals do not work on Windows');
-        }
-        if (!defined('SIGUSR1')) {
-            $this->markTestSkipped('The pcntl extension is not enabled');
-        }
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Process\Exception\RuntimeException
-     */
-    public function testSignalWithWrongIntSignal()
-    {
-        if ('\\' === DIRECTORY_SEPARATOR) {
-            $this->markTestSkipped('POSIX signals do not work on Windows');
-        }
-
-        $process = $this->getProcess(self::$phpBin.' -r "sleep(3);"');
-        $process->start();
-        $process->signal(-4);
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Process\Exception\RuntimeException
-     */
-    public function testSignalWithWrongNonIntSignal()
-    {
-        if ('\\' === DIRECTORY_SEPARATOR) {
-            $this->markTestSkipped('POSIX signals do not work on Windows');
-        }
-
-        $process = $this->getProcess(self::$phpBin.' -r "sleep(3);"');
-        $process->start();
-        $process->signal('Céphalopodes');
-    }
-
-    public function testDisableOutputDisablesTheOutput()
-    {
-        $p = $this->getProcess(self::$phpBin.' -r "usleep(500000);"');
-        $this->assertFalse($p->isOutputDisabled());
-        $p->disableOutput();
-        $this->assertTrue($p->isOutputDisabled());
-        $p->enableOutput();
-        $this->assertFalse($p->isOutputDisabled());
-    }
-
-    public function testDisableOutputWhileRunningThrowsException()
-    {
-        $p = $this->getProcess(self::$phpBin.' -r "usleep(500000);"');
-        $p->start();
-        $this->setExpectedException('Symfony\Component\Process\Exception\RuntimeException', 'Disabling output while the process is running is not possible.');
-        $p->disableOutput();
-    }
-
-    public function testEnableOutputWhileRunningThrowsException()
-    {
-        $p = $this->getProcess(self::$phpBin.' -r "usleep(500000);"');
-        $p->disableOutput();
-        $p->start();
-        $this->setExpectedException('Symfony\Component\Process\Exception\RuntimeException', 'Enabling output while the process is running is not possible.');
-        $p->enableOutput();
-    }
-
-    public function testEnableOrDisableOutputAfterRunDoesNotThrowException()
-    {
-        $p = $this->getProcess(self::$phpBin.' -r "usleep(500000);"');
-        $p->disableOutput();
-        $p->start();
-        $p->wait();
-        $p->enableOutput();
-        $p->disableOutput();
-    }
-
-    public function testDisableOutputWhileIdleTimeoutIsSet()
-    {
-        $process = $this->getProcess('sleep 3');
-        $process->setIdleTimeout(1);
-        $this->setExpectedException('Symfony\Component\Process\Exception\LogicException', 'Output can not be disabled while an idle timeout is set.');
-        $process->disableOutput();
-    }
-
-    public function testSetIdleTimeoutWhileOutputIsDisabled()
-    {
-        $process = $this->getProcess('sleep 3');
-        $process->disableOutput();
-        $this->setExpectedException('Symfony\Component\Process\Exception\LogicException', 'Idle timeout can not be set while the output is disabled.');
-        $process->setIdleTimeout(1);
-    }
-
-    public function testSetNullIdleTimeoutWhileOutputIsDisabled()
-    {
-        $process = $this->getProcess('sleep 3');
-        $process->disableOutput();
-        $process->setIdleTimeout(null);
-    }
-
-    /**
-     * @dataProvider provideStartMethods
-     */
-    public function testStartWithACallbackAndDisabledOutput($startMethod, $exception, $exceptionMessage)
-    {
-        $p = $this->getProcess(self::$phpBin.' -r "usleep(500000);"');
-        $p->disableOutput();
-        $this->setExpectedException($exception, $exceptionMessage);
-        $p->{$startMethod}(function () {});
-    }
-
-    public function provideStartMethods()
-    {
-        return array(
-            array('start', 'Symfony\Component\Process\Exception\LogicException', 'Output has been disabled, enable it to allow the use of a callback.'),
-            array('run', 'Symfony\Component\Process\Exception\LogicException', 'Output has been disabled, enable it to allow the use of a callback.'),
-            array('mustRun', 'Symfony\Component\Process\Exception\LogicException', 'Output has been disabled, enable it to allow the use of a callback.'),
-        );
-    }
-
-    /**
-     * @dataProvider provideOutputFetchingMethods
-     */
-    public function testGetOutputWhileDisabled($fetchMethod)
-    {
-        $p = $this->getProcess(self::$phpBin.' -r "usleep(500000);"');
-        $p->disableOutput();
-        $p->start();
-        $this->setExpectedException('Symfony\Component\Process\Exception\LogicException', 'Output has been disabled.');
-        $p->{$fetchMethod}();
-    }
-
-    public function provideOutputFetchingMethods()
-    {
-        return array(
-            array('getOutput'),
-            array('getIncrementalOutput'),
-            array('getErrorOutput'),
-            array('getIncrementalErrorOutput'),
-        );
-    }
-
-    public function responsesCodeProvider()
-    {
-        return array(
-            //expected output / getter / code to execute
-            //array(1,'getExitCode','exit(1);'),
-            //array(true,'isSuccessful','exit();'),
-            array('output', 'getOutput', 'echo \'output\';'),
-        );
-    }
-
-    public function pipesCodeProvider()
-    {
-        $variations = array(
-            'fwrite(STDOUT, $in = file_get_contents(\'php://stdin\')); fwrite(STDERR, $in);',
-            'include \''.__DIR__.'/PipeStdinInStdoutStdErrStreamSelect.php\';',
-        );
-
-        if ('\\' === DIRECTORY_SEPARATOR) {
-            // Avoid XL buffers on Windows because of https://bugs.php.net/bug.php?id=65650
-            $sizes = array(1, 2, 4, 8);
-        } else {
-            $sizes = array(1, 16, 64, 1024, 4096);
-        }
-
-        $codes = array();
-        foreach ($sizes as $size) {
-            foreach ($variations as $code) {
-                $codes[] = array($code, $size);
-            }
-        }
-
-        return $codes;
-    }
-
-    /**
-     * provides default method names for simple getter/setter.
-     */
-    public function methodProvider()
-    {
-        $defaults = array(
-            array('CommandLine'),
-            array('Timeout'),
-            array('WorkingDirectory'),
-            array('Env'),
-            array('Stdin'),
-            array('Input'),
-            array('Options'),
-        );
-
-        return $defaults;
-    }
-
-    /**
-     * @param string      $commandline
-     * @param null|string $cwd
-     * @param null|array  $env
-     * @param null|string $input
-     * @param int         $timeout
-     * @param array       $options
-     *
-     * @return Process
-     */
-    abstract protected function getProcess($commandline, $cwd = null, array $env = null, $input = null, $timeout = 60, array $options = array());
-}
-
-class Stringifiable
-{
-    public function __toString()
-    {
-        return 'stringifiable';
-    }
-}
-
-class NonStringifiable
-{
-}
diff --git a/vendor/symfony/process/Tests/ExecutableFinderTest.php b/vendor/symfony/process/Tests/ExecutableFinderTest.php
deleted file mode 100644
index 61a471b..0000000
--- a/vendor/symfony/process/Tests/ExecutableFinderTest.php
+++ /dev/null
@@ -1,149 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Process\Tests;
-
-use Symfony\Component\Process\ExecutableFinder;
-
-/**
- * @author Chris Smith <chris@cs278.org>
- */
-class ExecutableFinderTest extends \PHPUnit_Framework_TestCase
-{
-    private $path;
-
-    protected function tearDown()
-    {
-        if ($this->path) {
-            // Restore path if it was changed.
-            putenv('PATH='.$this->path);
-        }
-    }
-
-    private function setPath($path)
-    {
-        $this->path = getenv('PATH');
-        putenv('PATH='.$path);
-    }
-
-    public function testFind()
-    {
-        if (!defined('PHP_BINARY')) {
-            $this->markTestSkipped('Requires the PHP_BINARY constant');
-        }
-
-        if (ini_get('open_basedir')) {
-            $this->markTestSkipped('Cannot test when open_basedir is set');
-        }
-
-        $this->setPath(dirname(PHP_BINARY));
-
-        $finder = new ExecutableFinder();
-        $result = $finder->find($this->getPhpBinaryName());
-
-        $this->assertSamePath(PHP_BINARY, $result);
-    }
-
-    public function testFindWithDefault()
-    {
-        if (ini_get('open_basedir')) {
-            $this->markTestSkipped('Cannot test when open_basedir is set');
-        }
-
-        $expected = 'defaultValue';
-
-        $this->setPath('');
-
-        $finder = new ExecutableFinder();
-        $result = $finder->find('foo', $expected);
-
-        $this->assertEquals($expected, $result);
-    }
-
-    public function testFindWithExtraDirs()
-    {
-        if (!defined('PHP_BINARY')) {
-            $this->markTestSkipped('Requires the PHP_BINARY constant');
-        }
-
-        if (ini_get('open_basedir')) {
-            $this->markTestSkipped('Cannot test when open_basedir is set');
-        }
-
-        $this->setPath('');
-
-        $extraDirs = array(dirname(PHP_BINARY));
-
-        $finder = new ExecutableFinder();
-        $result = $finder->find($this->getPhpBinaryName(), null, $extraDirs);
-
-        $this->assertSamePath(PHP_BINARY, $result);
-    }
-
-    public function testFindWithOpenBaseDir()
-    {
-        if (!defined('PHP_BINARY')) {
-            $this->markTestSkipped('Requires the PHP_BINARY constant');
-        }
-
-        if ('\\' === DIRECTORY_SEPARATOR) {
-            $this->markTestSkipped('Cannot run test on windows');
-        }
-
-        if (ini_get('open_basedir')) {
-            $this->markTestSkipped('Cannot test when open_basedir is set');
-        }
-
-        $this->iniSet('open_basedir', dirname(PHP_BINARY).(!defined('HHVM_VERSION') ? PATH_SEPARATOR.'/' : ''));
-
-        $finder = new ExecutableFinder();
-        $result = $finder->find($this->getPhpBinaryName());
-
-        $this->assertSamePath(PHP_BINARY, $result);
-    }
-
-    public function testFindProcessInOpenBasedir()
-    {
-        if (ini_get('open_basedir')) {
-            $this->markTestSkipped('Cannot test when open_basedir is set');
-        }
-
-        if (!defined('PHP_BINARY')) {
-            $this->markTestSkipped('Requires the PHP_BINARY constant');
-        }
-
-        if ('\\' === DIRECTORY_SEPARATOR) {
-            $this->markTestSkipped('Cannot run test on windows');
-        }
-
-        $this->setPath('');
-        $this->iniSet('open_basedir', PHP_BINARY.(!defined('HHVM_VERSION') ? PATH_SEPARATOR.'/' : ''));
-
-        $finder = new ExecutableFinder();
-        $result = $finder->find($this->getPhpBinaryName(), false);
-
-        $this->assertSamePath(PHP_BINARY, $result);
-    }
-
-    private function assertSamePath($expected, $tested)
-    {
-        if ('\\' === DIRECTORY_SEPARATOR) {
-            $this->assertEquals(strtolower($expected), strtolower($tested));
-        } else {
-            $this->assertEquals($expected, $tested);
-        }
-    }
-
-    private function getPhpBinaryName()
-    {
-        return basename(PHP_BINARY, '\\' === DIRECTORY_SEPARATOR ? '.exe' : '');
-    }
-}
diff --git a/vendor/symfony/process/Tests/NonStopableProcess.php b/vendor/symfony/process/Tests/NonStopableProcess.php
deleted file mode 100644
index 692feeb..0000000
--- a/vendor/symfony/process/Tests/NonStopableProcess.php
+++ /dev/null
@@ -1,36 +0,0 @@
-<?php
-
-/**
- * Runs a PHP script that can be stopped only with a SIGKILL (9) signal for 3 seconds.
- *
- * @args duration Run this script with a custom duration
- *
- * @example `php NonStopableProcess.php 42` will run the script for 42 seconds
- */
-function handleSignal($signal)
-{
-    switch ($signal) {
-        case SIGTERM:
-            $name = 'SIGTERM';
-            break;
-        case SIGINT:
-            $name = 'SIGINT';
-            break;
-        default:
-            $name = $signal.' (unknown)';
-            break;
-    }
-
-    echo "received signal $name\n";
-}
-
-declare (ticks = 1);
-pcntl_signal(SIGTERM, 'handleSignal');
-pcntl_signal(SIGINT, 'handleSignal');
-
-$duration = isset($argv[1]) ? (int) $argv[1] : 3;
-$start = microtime(true);
-
-while ($duration > (microtime(true) - $start)) {
-    usleep(1000);
-}
diff --git a/vendor/symfony/process/Tests/PhpExecutableFinderTest.php b/vendor/symfony/process/Tests/PhpExecutableFinderTest.php
deleted file mode 100644
index cd4abed..0000000
--- a/vendor/symfony/process/Tests/PhpExecutableFinderTest.php
+++ /dev/null
@@ -1,97 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Process\Tests;
-
-use Symfony\Component\Process\PhpExecutableFinder;
-
-/**
- * @author Robert Schönthal <seroscho@googlemail.com>
- */
-class PhpExecutableFinderTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * tests find() with the env var PHP_PATH.
-     */
-    public function testFindWithPhpPath()
-    {
-        if (defined('PHP_BINARY')) {
-            $this->markTestSkipped('The PHP binary is easily available as of PHP 5.4');
-        }
-
-        $f = new PhpExecutableFinder();
-
-        $current = $f->find();
-
-        //not executable PHP_PATH
-        putenv('PHP_PATH=/not/executable/php');
-        $this->assertFalse($f->find(), '::find() returns false for not executable PHP');
-        $this->assertFalse($f->find(false), '::find() returns false for not executable PHP');
-
-        //executable PHP_PATH
-        putenv('PHP_PATH='.$current);
-        $this->assertEquals($f->find(), $current, '::find() returns the executable PHP');
-        $this->assertEquals($f->find(false), $current, '::find() returns the executable PHP');
-    }
-
-    /**
-     * tests find() with the env var PHP_PATH.
-     */
-    public function testFindWithHHVM()
-    {
-        if (!defined('HHVM_VERSION')) {
-            $this->markTestSkipped('Should be executed in HHVM context.');
-        }
-
-        $f = new PhpExecutableFinder();
-
-        $current = getenv('PHP_BINARY') ?: PHP_BINARY;
-
-        $this->assertEquals($current.' --php', $f->find(), '::find() returns the executable PHP');
-        $this->assertEquals($current, $f->find(false), '::find() returns the executable PHP');
-    }
-
-    /**
-     * tests find() with the env var PHP_PATH.
-     */
-    public function testFindArguments()
-    {
-        $f = new PhpExecutableFinder();
-
-        if (defined('HHVM_VERSION')) {
-            $this->assertEquals($f->findArguments(), array('--php'), '::findArguments() returns HHVM arguments');
-        } else {
-            $this->assertEquals($f->findArguments(), array(), '::findArguments() returns no arguments');
-        }
-    }
-
-    /**
-     * tests find() with default executable.
-     */
-    public function testFindWithSuffix()
-    {
-        if (defined('PHP_BINARY')) {
-            $this->markTestSkipped('The PHP binary is easily available as of PHP 5.4');
-        }
-
-        putenv('PHP_PATH=');
-        putenv('PHP_PEAR_PHP_BIN=');
-        $f = new PhpExecutableFinder();
-
-        $current = $f->find();
-
-        //TODO maybe php executable is custom or even Windows
-        if ('\\' === DIRECTORY_SEPARATOR) {
-            $this->assertTrue(is_executable($current));
-            $this->assertTrue((bool) preg_match('/'.addslashes(DIRECTORY_SEPARATOR).'php\.(exe|bat|cmd|com)$/i', $current), '::find() returns the executable PHP with suffixes');
-        }
-    }
-}
diff --git a/vendor/symfony/process/Tests/PhpProcessTest.php b/vendor/symfony/process/Tests/PhpProcessTest.php
deleted file mode 100644
index 5dc546c..0000000
--- a/vendor/symfony/process/Tests/PhpProcessTest.php
+++ /dev/null
@@ -1,49 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Process\Tests;
-
-use Symfony\Component\Process\PhpExecutableFinder;
-use Symfony\Component\Process\PhpProcess;
-
-class PhpProcessTest extends \PHPUnit_Framework_TestCase
-{
-    public function testNonBlockingWorks()
-    {
-        $expected = 'hello world!';
-        $process = new PhpProcess(<<<PHP
-<?php echo '$expected';
-PHP
-        );
-        $process->start();
-        $process->wait();
-        $this->assertEquals($expected, $process->getOutput());
-    }
-
-    public function testCommandLine()
-    {
-        $process = new PhpProcess(<<<PHP
-<?php echo 'foobar';
-PHP
-        );
-
-        $f = new PhpExecutableFinder();
-        $commandLine = $f->find();
-
-        $this->assertSame($commandLine, $process->getCommandLine(), '::getCommandLine() returns the command line of PHP before start');
-
-        $process->start();
-        $this->assertSame($commandLine, $process->getCommandLine(), '::getCommandLine() returns the command line of PHP after start');
-
-        $process->wait();
-        $this->assertSame($commandLine, $process->getCommandLine(), '::getCommandLine() returns the command line of PHP after wait');
-    }
-}
diff --git a/vendor/symfony/process/Tests/PipeStdinInStdoutStdErrStreamSelect.php b/vendor/symfony/process/Tests/PipeStdinInStdoutStdErrStreamSelect.php
deleted file mode 100644
index 26673ea..0000000
--- a/vendor/symfony/process/Tests/PipeStdinInStdoutStdErrStreamSelect.php
+++ /dev/null
@@ -1,63 +0,0 @@
-<?php
-
-define('ERR_SELECT_FAILED', 1);
-define('ERR_TIMEOUT', 2);
-define('ERR_READ_FAILED', 3);
-define('ERR_WRITE_FAILED', 4);
-
-$read = array(STDIN);
-$write = array(STDOUT, STDERR);
-
-stream_set_blocking(STDIN, 0);
-stream_set_blocking(STDOUT, 0);
-stream_set_blocking(STDERR, 0);
-
-$out = $err = '';
-while ($read || $write) {
-    $r = $read;
-    $w = $write;
-    $e = null;
-    $n = stream_select($r, $w, $e, 5);
-
-    if (false === $n) {
-        die(ERR_SELECT_FAILED);
-    } elseif ($n < 1) {
-        die(ERR_TIMEOUT);
-    }
-
-    if (in_array(STDOUT, $w) && strlen($out) > 0) {
-        $written = fwrite(STDOUT, (binary) $out, 32768);
-        if (false === $written) {
-            die(ERR_WRITE_FAILED);
-        }
-        $out = (binary) substr($out, $written);
-    }
-    if (null === $read && '' === $out) {
-        $write = array_diff($write, array(STDOUT));
-    }
-
-    if (in_array(STDERR, $w) && strlen($err) > 0) {
-        $written = fwrite(STDERR, (binary) $err, 32768);
-        if (false === $written) {
-            die(ERR_WRITE_FAILED);
-        }
-        $err = (binary) substr($err, $written);
-    }
-    if (null === $read && '' === $err) {
-        $write = array_diff($write, array(STDERR));
-    }
-
-    if ($r) {
-        $str = fread(STDIN, 32768);
-        if (false !== $str) {
-            $out .= $str;
-            $err .= $str;
-        }
-        if (false === $str || feof(STDIN)) {
-            $read = null;
-            if (!feof(STDIN)) {
-                die(ERR_READ_FAILED);
-            }
-        }
-    }
-}
diff --git a/vendor/symfony/process/Tests/ProcessBuilderTest.php b/vendor/symfony/process/Tests/ProcessBuilderTest.php
deleted file mode 100644
index 1b5056d..0000000
--- a/vendor/symfony/process/Tests/ProcessBuilderTest.php
+++ /dev/null
@@ -1,225 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Process\Tests;
-
-use Symfony\Component\Process\ProcessBuilder;
-
-class ProcessBuilderTest extends \PHPUnit_Framework_TestCase
-{
-    public function testInheritEnvironmentVars()
-    {
-        $_ENV['MY_VAR_1'] = 'foo';
-
-        $proc = ProcessBuilder::create()
-            ->add('foo')
-            ->getProcess();
-
-        unset($_ENV['MY_VAR_1']);
-
-        $env = $proc->getEnv();
-        $this->assertArrayHasKey('MY_VAR_1', $env);
-        $this->assertEquals('foo', $env['MY_VAR_1']);
-    }
-
-    public function testAddEnvironmentVariables()
-    {
-        $pb = new ProcessBuilder();
-        $env = array(
-            'foo' => 'bar',
-            'foo2' => 'bar2',
-        );
-        $proc = $pb
-            ->add('command')
-            ->setEnv('foo', 'bar2')
-            ->addEnvironmentVariables($env)
-            ->inheritEnvironmentVariables(false)
-            ->getProcess()
-        ;
-
-        $this->assertSame($env, $proc->getEnv());
-    }
-
-    public function testProcessShouldInheritAndOverrideEnvironmentVars()
-    {
-        $_ENV['MY_VAR_1'] = 'foo';
-
-        $proc = ProcessBuilder::create()
-            ->setEnv('MY_VAR_1', 'bar')
-            ->add('foo')
-            ->getProcess();
-
-        unset($_ENV['MY_VAR_1']);
-
-        $env = $proc->getEnv();
-        $this->assertArrayHasKey('MY_VAR_1', $env);
-        $this->assertEquals('bar', $env['MY_VAR_1']);
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Process\Exception\InvalidArgumentException
-     */
-    public function testNegativeTimeoutFromSetter()
-    {
-        $pb = new ProcessBuilder();
-        $pb->setTimeout(-1);
-    }
-
-    public function testNullTimeout()
-    {
-        $pb = new ProcessBuilder();
-        $pb->setTimeout(10);
-        $pb->setTimeout(null);
-
-        $r = new \ReflectionObject($pb);
-        $p = $r->getProperty('timeout');
-        $p->setAccessible(true);
-
-        $this->assertNull($p->getValue($pb));
-    }
-
-    public function testShouldSetArguments()
-    {
-        $pb = new ProcessBuilder(array('initial'));
-        $pb->setArguments(array('second'));
-
-        $proc = $pb->getProcess();
-
-        $this->assertContains('second', $proc->getCommandLine());
-    }
-
-    public function testPrefixIsPrependedToAllGeneratedProcess()
-    {
-        $pb = new ProcessBuilder();
-        $pb->setPrefix('/usr/bin/php');
-
-        $proc = $pb->setArguments(array('-v'))->getProcess();
-        if ('\\' === DIRECTORY_SEPARATOR) {
-            $this->assertEquals('"/usr/bin/php" "-v"', $proc->getCommandLine());
-        } else {
-            $this->assertEquals("'/usr/bin/php' '-v'", $proc->getCommandLine());
-        }
-
-        $proc = $pb->setArguments(array('-i'))->getProcess();
-        if ('\\' === DIRECTORY_SEPARATOR) {
-            $this->assertEquals('"/usr/bin/php" "-i"', $proc->getCommandLine());
-        } else {
-            $this->assertEquals("'/usr/bin/php' '-i'", $proc->getCommandLine());
-        }
-    }
-
-    public function testArrayPrefixesArePrependedToAllGeneratedProcess()
-    {
-        $pb = new ProcessBuilder();
-        $pb->setPrefix(array('/usr/bin/php', 'composer.phar'));
-
-        $proc = $pb->setArguments(array('-v'))->getProcess();
-        if ('\\' === DIRECTORY_SEPARATOR) {
-            $this->assertEquals('"/usr/bin/php" "composer.phar" "-v"', $proc->getCommandLine());
-        } else {
-            $this->assertEquals("'/usr/bin/php' 'composer.phar' '-v'", $proc->getCommandLine());
-        }
-
-        $proc = $pb->setArguments(array('-i'))->getProcess();
-        if ('\\' === DIRECTORY_SEPARATOR) {
-            $this->assertEquals('"/usr/bin/php" "composer.phar" "-i"', $proc->getCommandLine());
-        } else {
-            $this->assertEquals("'/usr/bin/php' 'composer.phar' '-i'", $proc->getCommandLine());
-        }
-    }
-
-    public function testShouldEscapeArguments()
-    {
-        $pb = new ProcessBuilder(array('%path%', 'foo " bar', '%baz%baz'));
-        $proc = $pb->getProcess();
-
-        if ('\\' === DIRECTORY_SEPARATOR) {
-            $this->assertSame('^%"path"^% "foo \\" bar" "%baz%baz"', $proc->getCommandLine());
-        } else {
-            $this->assertSame("'%path%' 'foo \" bar' '%baz%baz'", $proc->getCommandLine());
-        }
-    }
-
-    public function testShouldEscapeArgumentsAndPrefix()
-    {
-        $pb = new ProcessBuilder(array('arg'));
-        $pb->setPrefix('%prefix%');
-        $proc = $pb->getProcess();
-
-        if ('\\' === DIRECTORY_SEPARATOR) {
-            $this->assertSame('^%"prefix"^% "arg"', $proc->getCommandLine());
-        } else {
-            $this->assertSame("'%prefix%' 'arg'", $proc->getCommandLine());
-        }
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Process\Exception\LogicException
-     */
-    public function testShouldThrowALogicExceptionIfNoPrefixAndNoArgument()
-    {
-        ProcessBuilder::create()->getProcess();
-    }
-
-    public function testShouldNotThrowALogicExceptionIfNoArgument()
-    {
-        $process = ProcessBuilder::create()
-            ->setPrefix('/usr/bin/php')
-            ->getProcess();
-
-        if ('\\' === DIRECTORY_SEPARATOR) {
-            $this->assertEquals('"/usr/bin/php"', $process->getCommandLine());
-        } else {
-            $this->assertEquals("'/usr/bin/php'", $process->getCommandLine());
-        }
-    }
-
-    public function testShouldNotThrowALogicExceptionIfNoPrefix()
-    {
-        $process = ProcessBuilder::create(array('/usr/bin/php'))
-            ->getProcess();
-
-        if ('\\' === DIRECTORY_SEPARATOR) {
-            $this->assertEquals('"/usr/bin/php"', $process->getCommandLine());
-        } else {
-            $this->assertEquals("'/usr/bin/php'", $process->getCommandLine());
-        }
-    }
-
-    public function testShouldReturnProcessWithDisabledOutput()
-    {
-        $process = ProcessBuilder::create(array('/usr/bin/php'))
-            ->disableOutput()
-            ->getProcess();
-
-        $this->assertTrue($process->isOutputDisabled());
-    }
-
-    public function testShouldReturnProcessWithEnabledOutput()
-    {
-        $process = ProcessBuilder::create(array('/usr/bin/php'))
-            ->disableOutput()
-            ->enableOutput()
-            ->getProcess();
-
-        $this->assertFalse($process->isOutputDisabled());
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Process\Exception\InvalidArgumentException
-     * @expectedExceptionMessage Symfony\Component\Process\ProcessBuilder::setInput only accepts strings or stream resources.
-     */
-    public function testInvalidInput()
-    {
-        $builder = ProcessBuilder::create();
-        $builder->setInput(array());
-    }
-}
diff --git a/vendor/symfony/process/Tests/ProcessFailedExceptionTest.php b/vendor/symfony/process/Tests/ProcessFailedExceptionTest.php
deleted file mode 100644
index de37353..0000000
--- a/vendor/symfony/process/Tests/ProcessFailedExceptionTest.php
+++ /dev/null
@@ -1,136 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Process\Tests;
-
-use Symfony\Component\Process\Exception\ProcessFailedException;
-
-/**
- * @author Sebastian Marek <proofek@gmail.com>
- */
-class ProcessFailedExceptionTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * tests ProcessFailedException throws exception if the process was successful.
-     */
-    public function testProcessFailedExceptionThrowsException()
-    {
-        $process = $this->getMock(
-            'Symfony\Component\Process\Process',
-            array('isSuccessful'),
-            array('php')
-        );
-        $process->expects($this->once())
-            ->method('isSuccessful')
-            ->will($this->returnValue(true));
-
-        $this->setExpectedException(
-            '\InvalidArgumentException',
-            'Expected a failed process, but the given process was successful.'
-        );
-
-        new ProcessFailedException($process);
-    }
-
-    /**
-     * tests ProcessFailedException uses information from process output
-     * to generate exception message.
-     */
-    public function testProcessFailedExceptionPopulatesInformationFromProcessOutput()
-    {
-        $cmd = 'php';
-        $exitCode = 1;
-        $exitText = 'General error';
-        $output = 'Command output';
-        $errorOutput = 'FATAL: Unexpected error';
-
-        $process = $this->getMock(
-            'Symfony\Component\Process\Process',
-            array('isSuccessful', 'getOutput', 'getErrorOutput', 'getExitCode', 'getExitCodeText', 'isOutputDisabled'),
-            array($cmd)
-        );
-        $process->expects($this->once())
-            ->method('isSuccessful')
-            ->will($this->returnValue(false));
-
-        $process->expects($this->once())
-            ->method('getOutput')
-            ->will($this->returnValue($output));
-
-        $process->expects($this->once())
-            ->method('getErrorOutput')
-            ->will($this->returnValue($errorOutput));
-
-        $process->expects($this->once())
-            ->method('getExitCode')
-            ->will($this->returnValue($exitCode));
-
-        $process->expects($this->once())
-            ->method('getExitCodeText')
-            ->will($this->returnValue($exitText));
-
-        $process->expects($this->once())
-            ->method('isOutputDisabled')
-            ->will($this->returnValue(false));
-
-        $exception = new ProcessFailedException($process);
-
-        $this->assertEquals(
-            "The command \"$cmd\" failed.\nExit Code: $exitCode($exitText)\n\nOutput:\n================\n{$output}\n\nError Output:\n================\n{$errorOutput}",
-            $exception->getMessage()
-        );
-    }
-
-    /**
-     * Tests that ProcessFailedException does not extract information from
-     * process output if it was previously disabled.
-     */
-    public function testDisabledOutputInFailedExceptionDoesNotPopulateOutput()
-    {
-        $cmd = 'php';
-        $exitCode = 1;
-        $exitText = 'General error';
-
-        $process = $this->getMock(
-            'Symfony\Component\Process\Process',
-            array('isSuccessful', 'isOutputDisabled', 'getExitCode', 'getExitCodeText', 'getOutput', 'getErrorOutput'),
-            array($cmd)
-        );
-        $process->expects($this->once())
-            ->method('isSuccessful')
-            ->will($this->returnValue(false));
-
-        $process->expects($this->never())
-            ->method('getOutput');
-
-        $process->expects($this->never())
-            ->method('getErrorOutput');
-
-        $process->expects($this->once())
-            ->method('getExitCode')
-            ->will($this->returnValue($exitCode));
-
-        $process->expects($this->once())
-            ->method('getExitCodeText')
-            ->will($this->returnValue($exitText));
-
-        $process->expects($this->once())
-            ->method('isOutputDisabled')
-            ->will($this->returnValue(true));
-
-        $exception = new ProcessFailedException($process);
-
-        $this->assertEquals(
-            "The command \"$cmd\" failed.\nExit Code: $exitCode($exitText)",
-            $exception->getMessage()
-        );
-    }
-}
diff --git a/vendor/symfony/process/Tests/ProcessInSigchildEnvironment.php b/vendor/symfony/process/Tests/ProcessInSigchildEnvironment.php
deleted file mode 100644
index 3977bcd..0000000
--- a/vendor/symfony/process/Tests/ProcessInSigchildEnvironment.php
+++ /dev/null
@@ -1,22 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Process\Tests;
-
-use Symfony\Component\Process\Process;
-
-class ProcessInSigchildEnvironment extends Process
-{
-    protected function isSigchildEnabled()
-    {
-        return true;
-    }
-}
diff --git a/vendor/symfony/process/Tests/ProcessUtilsTest.php b/vendor/symfony/process/Tests/ProcessUtilsTest.php
deleted file mode 100644
index e6564cd..0000000
--- a/vendor/symfony/process/Tests/ProcessUtilsTest.php
+++ /dev/null
@@ -1,48 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Process\Tests;
-
-use Symfony\Component\Process\ProcessUtils;
-
-class ProcessUtilsTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @dataProvider dataArguments
-     */
-    public function testEscapeArgument($result, $argument)
-    {
-        $this->assertSame($result, ProcessUtils::escapeArgument($argument));
-    }
-
-    public function dataArguments()
-    {
-        if ('\\' === DIRECTORY_SEPARATOR) {
-            return array(
-                array('"\"php\" \"-v\""', '"php" "-v"'),
-                array('"foo bar"', 'foo bar'),
-                array('^%"path"^%', '%path%'),
-                array('"<|>\\" \\"\'f"', '<|>" "\'f'),
-                array('""', ''),
-                array('"with\trailingbs\\\\"', 'with\trailingbs\\'),
-            );
-        }
-
-        return array(
-            array("'\"php\" \"-v\"'", '"php" "-v"'),
-            array("'foo bar'", 'foo bar'),
-            array("'%path%'", '%path%'),
-            array("'<|>\" \"'\\''f'", '<|>" "\'f'),
-            array("''", ''),
-            array("'with\\trailingbs\\'", 'with\trailingbs\\'),
-        );
-    }
-}
diff --git a/vendor/symfony/process/Tests/SigchildDisabledProcessTest.php b/vendor/symfony/process/Tests/SigchildDisabledProcessTest.php
deleted file mode 100644
index fdae5ec..0000000
--- a/vendor/symfony/process/Tests/SigchildDisabledProcessTest.php
+++ /dev/null
@@ -1,263 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Process\Tests;
-
-class SigchildDisabledProcessTest extends AbstractProcessTest
-{
-    /**
-     * @expectedException \Symfony\Component\Process\Exception\RuntimeException
-     * @expectedExceptionMessage This PHP has been compiled with --enable-sigchild. You must use setEnhanceSigchildCompatibility() to use this method.
-     */
-    public function testGetExitCode()
-    {
-        parent::testGetExitCode();
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Process\Exception\RuntimeException
-     * @expectedExceptionMessage This PHP has been compiled with --enable-sigchild. You must use setEnhanceSigchildCompatibility() to use this method.
-     */
-    public function testGetExitCodeIsNullOnStart()
-    {
-        parent::testGetExitCodeIsNullOnStart();
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Process\Exception\RuntimeException
-     * @expectedExceptionMessage This PHP has been compiled with --enable-sigchild. You must use setEnhanceSigchildCompatibility() to use this method.
-     */
-    public function testGetExitCodeIsNullOnWhenStartingAgain()
-    {
-        parent::testGetExitCodeIsNullOnWhenStartingAgain();
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Process\Exception\RuntimeException
-     * @expectedExceptionMessage This PHP has been compiled with --enable-sigchild. You must use setEnhanceSigchildCompatibility() to use this method.
-     */
-    public function testExitCodeCommandFailed()
-    {
-        parent::testExitCodeCommandFailed();
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Process\Exception\RuntimeException
-     * @expectedExceptionMessage This PHP has been compiled with --enable-sigchild. You must use setEnhanceSigchildCompatibility() to use this method.
-     */
-    public function testMustRun()
-    {
-        parent::testMustRun();
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Process\Exception\RuntimeException
-     * @expectedExceptionMessage This PHP has been compiled with --enable-sigchild. You must use setEnhanceSigchildCompatibility() to use this method.
-     */
-    public function testSuccessfulMustRunHasCorrectExitCode()
-    {
-        parent::testSuccessfulMustRunHasCorrectExitCode();
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Process\Exception\RuntimeException
-     */
-    public function testMustRunThrowsException()
-    {
-        parent::testMustRunThrowsException();
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Process\Exception\RuntimeException
-     */
-    public function testProcessIsSignaledIfStopped()
-    {
-        parent::testProcessIsSignaledIfStopped();
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Process\Exception\RuntimeException
-     * @expectedExceptionMessage This PHP has been compiled with --enable-sigchild. Term signal can not be retrieved.
-     */
-    public function testProcessWithTermSignal()
-    {
-        parent::testProcessWithTermSignal();
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Process\Exception\RuntimeException
-     * @expectedExceptionMessage This PHP has been compiled with --enable-sigchild. Term signal can not be retrieved.
-     */
-    public function testProcessIsNotSignaled()
-    {
-        parent::testProcessIsNotSignaled();
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Process\Exception\RuntimeException
-     * @expectedExceptionMessage This PHP has been compiled with --enable-sigchild. Term signal can not be retrieved.
-     */
-    public function testProcessWithoutTermSignal()
-    {
-        parent::testProcessWithoutTermSignal();
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Process\Exception\RuntimeException
-     * @expectedExceptionMessage This PHP has been compiled with --enable-sigchild. You must use setEnhanceSigchildCompatibility() to use this method.
-     */
-    public function testCheckTimeoutOnStartedProcess()
-    {
-        parent::testCheckTimeoutOnStartedProcess();
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Process\Exception\RuntimeException
-     * @expectedExceptionMessage This PHP has been compiled with --enable-sigchild. The process identifier can not be retrieved.
-     */
-    public function testGetPid()
-    {
-        parent::testGetPid();
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Process\Exception\RuntimeException
-     * @expectedExceptionMessage This PHP has been compiled with --enable-sigchild. The process identifier can not be retrieved.
-     */
-    public function testGetPidIsNullBeforeStart()
-    {
-        parent::testGetPidIsNullBeforeStart();
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Process\Exception\RuntimeException
-     * @expectedExceptionMessage This PHP has been compiled with --enable-sigchild. The process identifier can not be retrieved.
-     */
-    public function testGetPidIsNullAfterRun()
-    {
-        parent::testGetPidIsNullAfterRun();
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Process\Exception\RuntimeException
-     * @expectedExceptionMessage This PHP has been compiled with --enable-sigchild. You must use setEnhanceSigchildCompatibility() to use this method.
-     */
-    public function testExitCodeText()
-    {
-        $process = $this->getProcess('qdfsmfkqsdfmqmsd');
-        $process->run();
-
-        $process->getExitCodeText();
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Process\Exception\RuntimeException
-     * @expectedExceptionMessage This PHP has been compiled with --enable-sigchild. You must use setEnhanceSigchildCompatibility() to use this method.
-     */
-    public function testExitCodeTextIsNullWhenExitCodeIsNull()
-    {
-        parent::testExitCodeTextIsNullWhenExitCodeIsNull();
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Process\Exception\RuntimeException
-     * @expectedExceptionMessage This PHP has been compiled with --enable-sigchild. You must use setEnhanceSigchildCompatibility() to use this method.
-     */
-    public function testIsSuccessful()
-    {
-        parent::testIsSuccessful();
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Process\Exception\RuntimeException
-     * @expectedExceptionMessage This PHP has been compiled with --enable-sigchild. You must use setEnhanceSigchildCompatibility() to use this method.
-     */
-    public function testIsSuccessfulOnlyAfterTerminated()
-    {
-        parent::testIsSuccessfulOnlyAfterTerminated();
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Process\Exception\RuntimeException
-     * @expectedExceptionMessage This PHP has been compiled with --enable-sigchild. You must use setEnhanceSigchildCompatibility() to use this method.
-     */
-    public function testIsNotSuccessful()
-    {
-        parent::testIsNotSuccessful();
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Process\Exception\RuntimeException
-     * @expectedExceptionMessage This PHP has been compiled with --enable-sigchild. You must use setEnhanceSigchildCompatibility() to use this method.
-     */
-    public function testTTYCommandExitCode()
-    {
-        parent::testTTYCommandExitCode();
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Process\Exception\RuntimeException
-     * @expectedExceptionMessage This PHP has been compiled with --enable-sigchild. The process can not be signaled.
-     */
-    public function testSignal()
-    {
-        parent::testSignal();
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Process\Exception\RuntimeException
-     * @expectedExceptionMessage This PHP has been compiled with --enable-sigchild. Term signal can not be retrieved.
-     */
-    public function testProcessWithoutTermSignalIsNotSignaled()
-    {
-        parent::testProcessWithoutTermSignalIsNotSignaled();
-    }
-
-    public function testStopWithTimeoutIsActuallyWorking()
-    {
-        $this->markTestSkipped('Stopping with signal is not supported in sigchild environment');
-    }
-
-    public function testProcessThrowsExceptionWhenExternallySignaled()
-    {
-        $this->markTestSkipped('Retrieving Pid is not supported in sigchild environment');
-    }
-
-    public function testExitCodeIsAvailableAfterSignal()
-    {
-        $this->markTestSkipped('Signal is not supported in sigchild environment');
-    }
-
-    public function testRunProcessWithTimeout()
-    {
-        $this->markTestSkipped('Signal (required for timeout) is not supported in sigchild environment');
-    }
-
-    public function provideStartMethods()
-    {
-        return array(
-            array('start', 'Symfony\Component\Process\Exception\LogicException', 'Output has been disabled, enable it to allow the use of a callback.'),
-            array('run', 'Symfony\Component\Process\Exception\LogicException', 'Output has been disabled, enable it to allow the use of a callback.'),
-            array('mustRun', 'Symfony\Component\Process\Exception\RuntimeException', 'This PHP has been compiled with --enable-sigchild. You must use setEnhanceSigchildCompatibility() to use this method.'),
-        );
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    protected function getProcess($commandline, $cwd = null, array $env = null, $input = null, $timeout = 60, array $options = array())
-    {
-        $process = new ProcessInSigchildEnvironment($commandline, $cwd, $env, $input, $timeout, $options);
-        $process->setEnhanceSigchildCompatibility(false);
-
-        return $process;
-    }
-}
diff --git a/vendor/symfony/process/Tests/SigchildEnabledProcessTest.php b/vendor/symfony/process/Tests/SigchildEnabledProcessTest.php
deleted file mode 100644
index 2668a9b..0000000
--- a/vendor/symfony/process/Tests/SigchildEnabledProcessTest.php
+++ /dev/null
@@ -1,148 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Process\Tests;
-
-class SigchildEnabledProcessTest extends AbstractProcessTest
-{
-    /**
-     * @expectedException \Symfony\Component\Process\Exception\RuntimeException
-     * @expectedExceptionMessage This PHP has been compiled with --enable-sigchild. Term signal can not be retrieved.
-     */
-    public function testProcessIsSignaledIfStopped()
-    {
-        parent::testProcessIsSignaledIfStopped();
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Process\Exception\RuntimeException
-     * @expectedExceptionMessage This PHP has been compiled with --enable-sigchild. Term signal can not be retrieved.
-     */
-    public function testProcessWithTermSignal()
-    {
-        parent::testProcessWithTermSignal();
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Process\Exception\RuntimeException
-     * @expectedExceptionMessage This PHP has been compiled with --enable-sigchild. Term signal can not be retrieved.
-     */
-    public function testProcessIsNotSignaled()
-    {
-        parent::testProcessIsNotSignaled();
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Process\Exception\RuntimeException
-     * @expectedExceptionMessage This PHP has been compiled with --enable-sigchild. Term signal can not be retrieved.
-     */
-    public function testProcessWithoutTermSignal()
-    {
-        parent::testProcessWithoutTermSignal();
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Process\Exception\RuntimeException
-     * @expectedExceptionMessage This PHP has been compiled with --enable-sigchild. The process identifier can not be retrieved.
-     */
-    public function testGetPid()
-    {
-        parent::testGetPid();
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Process\Exception\RuntimeException
-     * @expectedExceptionMessage This PHP has been compiled with --enable-sigchild. The process identifier can not be retrieved.
-     */
-    public function testGetPidIsNullBeforeStart()
-    {
-        parent::testGetPidIsNullBeforeStart();
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Process\Exception\RuntimeException
-     * @expectedExceptionMessage This PHP has been compiled with --enable-sigchild. The process identifier can not be retrieved.
-     */
-    public function testGetPidIsNullAfterRun()
-    {
-        parent::testGetPidIsNullAfterRun();
-    }
-
-    public function testExitCodeText()
-    {
-        $process = $this->getProcess('qdfsmfkqsdfmqmsd');
-        $process->run();
-
-        $this->assertInternalType('string', $process->getExitCodeText());
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Process\Exception\RuntimeException
-     * @expectedExceptionMessage This PHP has been compiled with --enable-sigchild. The process can not be signaled.
-     */
-    public function testSignal()
-    {
-        parent::testSignal();
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Process\Exception\RuntimeException
-     * @expectedExceptionMessage This PHP has been compiled with --enable-sigchild. Term signal can not be retrieved.
-     */
-    public function testProcessWithoutTermSignalIsNotSignaled()
-    {
-        parent::testProcessWithoutTermSignalIsNotSignaled();
-    }
-
-    public function testProcessThrowsExceptionWhenExternallySignaled()
-    {
-        $this->markTestSkipped('Retrieving Pid is not supported in sigchild environment');
-    }
-
-    public function testExitCodeIsAvailableAfterSignal()
-    {
-        $this->markTestSkipped('Signal is not supported in sigchild environment');
-    }
-
-    public function testStartAfterATimeout()
-    {
-        if ('\\' === DIRECTORY_SEPARATOR) {
-            $this->markTestSkipped('Restarting a timed-out process on Windows is not supported in sigchild environment');
-        }
-        parent::testStartAfterATimeout();
-    }
-
-    public function testStopWithTimeoutIsActuallyWorking()
-    {
-        $this->markTestSkipped('Stopping with signal is not supported in sigchild environment');
-    }
-
-    public function testRunProcessWithTimeout()
-    {
-        $this->markTestSkipped('Signal (required for timeout) is not supported in sigchild environment');
-    }
-
-    public function testCheckTimeoutOnStartedProcess()
-    {
-        $this->markTestSkipped('Signal (required for timeout) is not supported in sigchild environment');
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    protected function getProcess($commandline, $cwd = null, array $env = null, $input = null, $timeout = 60, array $options = array())
-    {
-        $process = new ProcessInSigchildEnvironment($commandline, $cwd, $env, $input, $timeout, $options);
-        $process->setEnhanceSigchildCompatibility(true);
-
-        return $process;
-    }
-}
diff --git a/vendor/symfony/process/Tests/SignalListener.php b/vendor/symfony/process/Tests/SignalListener.php
deleted file mode 100644
index bd4d138..0000000
--- a/vendor/symfony/process/Tests/SignalListener.php
+++ /dev/null
@@ -1,16 +0,0 @@
-<?php
-
-// required for signal handling
-declare (ticks = 1);
-
-pcntl_signal(SIGUSR1, function () {echo 'Caught SIGUSR1'; exit;});
-
-$n = 0;
-
-// ticks require activity to work - sleep(4); does not work
-while ($n < 400) {
-    usleep(10000);
-    ++$n;
-}
-
-return;
diff --git a/vendor/symfony/process/Tests/SimpleProcessTest.php b/vendor/symfony/process/Tests/SimpleProcessTest.php
deleted file mode 100644
index 98eeb0e..0000000
--- a/vendor/symfony/process/Tests/SimpleProcessTest.php
+++ /dev/null
@@ -1,222 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Process\Tests;
-
-use Symfony\Component\Process\Process;
-
-class SimpleProcessTest extends AbstractProcessTest
-{
-    private $enabledSigchild = false;
-
-    protected function setUp()
-    {
-        ob_start();
-        phpinfo(INFO_GENERAL);
-
-        $this->enabledSigchild = false !== strpos(ob_get_clean(), '--enable-sigchild');
-    }
-
-    public function testGetExitCode()
-    {
-        $this->skipIfPHPSigchild(); // This test use exitcode that is not available in this case
-        parent::testGetExitCode();
-    }
-
-    public function testExitCodeCommandFailed()
-    {
-        $this->skipIfPHPSigchild(); // This test use exitcode that is not available in this case
-        parent::testExitCodeCommandFailed();
-    }
-
-    public function testProcessIsSignaledIfStopped()
-    {
-        $this->expectExceptionIfPHPSigchild('Symfony\Component\Process\Exception\RuntimeException', 'This PHP has been compiled with --enable-sigchild. Term signal can not be retrieved');
-        parent::testProcessIsSignaledIfStopped();
-    }
-
-    public function testProcessWithTermSignal()
-    {
-        $this->expectExceptionIfPHPSigchild('Symfony\Component\Process\Exception\RuntimeException', 'This PHP has been compiled with --enable-sigchild. Term signal can not be retrieved');
-        parent::testProcessWithTermSignal();
-    }
-
-    public function testProcessIsNotSignaled()
-    {
-        $this->expectExceptionIfPHPSigchild('Symfony\Component\Process\Exception\RuntimeException', 'This PHP has been compiled with --enable-sigchild. Term signal can not be retrieved');
-        parent::testProcessIsNotSignaled();
-    }
-
-    public function testProcessWithoutTermSignal()
-    {
-        $this->expectExceptionIfPHPSigchild('Symfony\Component\Process\Exception\RuntimeException', 'This PHP has been compiled with --enable-sigchild. Term signal can not be retrieved');
-        parent::testProcessWithoutTermSignal();
-    }
-
-    public function testExitCodeText()
-    {
-        $this->skipIfPHPSigchild(); // This test use exitcode that is not available in this case
-        parent::testExitCodeText();
-    }
-
-    public function testIsSuccessful()
-    {
-        $this->skipIfPHPSigchild(); // This test use PID that is not available in this case
-        parent::testIsSuccessful();
-    }
-
-    public function testIsNotSuccessful()
-    {
-        $this->skipIfPHPSigchild(); // This test use PID that is not available in this case
-        parent::testIsNotSuccessful();
-    }
-
-    public function testGetPid()
-    {
-        $this->skipIfPHPSigchild(); // This test use PID that is not available in this case
-        parent::testGetPid();
-    }
-
-    public function testGetPidIsNullBeforeStart()
-    {
-        $this->skipIfPHPSigchild(); // This test use PID that is not available in this case
-        parent::testGetPidIsNullBeforeStart();
-    }
-
-    public function testGetPidIsNullAfterRun()
-    {
-        $this->skipIfPHPSigchild(); // This test use PID that is not available in this case
-        parent::testGetPidIsNullAfterRun();
-    }
-
-    public function testSignal()
-    {
-        $this->expectExceptionIfPHPSigchild('Symfony\Component\Process\Exception\RuntimeException', 'This PHP has been compiled with --enable-sigchild. The process can not be signaled.');
-        parent::testSignal();
-    }
-
-    public function testProcessWithoutTermSignalIsNotSignaled()
-    {
-        $this->expectExceptionIfPHPSigchild('Symfony\Component\Process\Exception\RuntimeException', 'This PHP has been compiled with --enable-sigchild. Term signal can not be retrieved');
-        parent::testProcessWithoutTermSignalIsNotSignaled();
-    }
-
-    public function testProcessThrowsExceptionWhenExternallySignaled()
-    {
-        $this->skipIfPHPSigchild(); // This test use PID that is not available in this case
-        parent::testProcessThrowsExceptionWhenExternallySignaled();
-    }
-
-    public function testExitCodeIsAvailableAfterSignal()
-    {
-        $this->expectExceptionIfPHPSigchild('Symfony\Component\Process\Exception\RuntimeException', 'This PHP has been compiled with --enable-sigchild. The process can not be signaled.');
-        parent::testExitCodeIsAvailableAfterSignal();
-    }
-
-    public function testSignalProcessNotRunning()
-    {
-        $this->setExpectedException('Symfony\Component\Process\Exception\LogicException', 'Can not send signal on a non running process.');
-        parent::testSignalProcessNotRunning();
-    }
-
-    public function testSignalWithWrongIntSignal()
-    {
-        if ($this->enabledSigchild) {
-            $this->expectExceptionIfPHPSigchild('Symfony\Component\Process\Exception\RuntimeException', 'This PHP has been compiled with --enable-sigchild. The process can not be signaled.');
-        } else {
-            $this->setExpectedException('Symfony\Component\Process\Exception\RuntimeException', 'Error while sending signal `-4`.');
-        }
-        parent::testSignalWithWrongIntSignal();
-    }
-
-    public function testSignalWithWrongNonIntSignal()
-    {
-        if ($this->enabledSigchild) {
-            $this->expectExceptionIfPHPSigchild('Symfony\Component\Process\Exception\RuntimeException', 'This PHP has been compiled with --enable-sigchild. The process can not be signaled.');
-        } else {
-            $this->setExpectedException('Symfony\Component\Process\Exception\RuntimeException', 'Error while sending signal `Céphalopodes`.');
-        }
-        parent::testSignalWithWrongNonIntSignal();
-    }
-
-    public function testStopTerminatesProcessCleanly()
-    {
-        try {
-            $process = $this->getProcess(self::$phpBin.' -r "echo \'foo\'; sleep(1); echo \'bar\';"');
-            $process->run(function () use ($process) {
-                $process->stop();
-            });
-        } catch (\RuntimeException $e) {
-            $this->fail('A call to stop() is not expected to cause wait() to throw a RuntimeException');
-        }
-    }
-
-    public function testKillSignalTerminatesProcessCleanly()
-    {
-        $this->expectExceptionIfPHPSigchild('Symfony\Component\Process\Exception\RuntimeException', 'This PHP has been compiled with --enable-sigchild. The process can not be signaled.');
-
-        try {
-            $process = $this->getProcess(self::$phpBin.' -r "echo \'foo\'; sleep(1); echo \'bar\';"');
-            $process->run(function () use ($process) {
-                if ($process->isRunning()) {
-                    $process->signal(defined('SIGKILL') ? SIGKILL : 9);
-                }
-            });
-        } catch (\RuntimeException $e) {
-            $this->fail('A call to signal() is not expected to cause wait() to throw a RuntimeException');
-        }
-    }
-
-    public function testTermSignalTerminatesProcessCleanly()
-    {
-        $this->expectExceptionIfPHPSigchild('Symfony\Component\Process\Exception\RuntimeException', 'This PHP has been compiled with --enable-sigchild. The process can not be signaled.');
-
-        try {
-            $process = $this->getProcess(self::$phpBin.' -r "echo \'foo\'; sleep(1); echo \'bar\';"');
-            $process->run(function () use ($process) {
-                if ($process->isRunning()) {
-                    $process->signal(defined('SIGTERM') ? SIGTERM : 15);
-                }
-            });
-        } catch (\RuntimeException $e) {
-            $this->fail('A call to signal() is not expected to cause wait() to throw a RuntimeException');
-        }
-    }
-
-    public function testStopWithTimeoutIsActuallyWorking()
-    {
-        $this->skipIfPHPSigchild();
-
-        parent::testStopWithTimeoutIsActuallyWorking();
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    protected function getProcess($commandline, $cwd = null, array $env = null, $input = null, $timeout = 60, array $options = array())
-    {
-        return new Process($commandline, $cwd, $env, $input, $timeout, $options);
-    }
-
-    private function skipIfPHPSigchild()
-    {
-        if ($this->enabledSigchild) {
-            $this->markTestSkipped('Your PHP has been compiled with --enable-sigchild, this test can not be executed');
-        }
-    }
-
-    private function expectExceptionIfPHPSigchild($classname, $message)
-    {
-        if ($this->enabledSigchild) {
-            $this->setExpectedException($classname, $message);
-        }
-    }
-}
diff --git a/vendor/symfony/psr-http-message-bridge/Tests/Factory/DiactorosFactoryTest.php b/vendor/symfony/psr-http-message-bridge/Tests/Factory/DiactorosFactoryTest.php
deleted file mode 100644
index a4c32bd..0000000
--- a/vendor/symfony/psr-http-message-bridge/Tests/Factory/DiactorosFactoryTest.php
+++ /dev/null
@@ -1,164 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Bridge\PsrHttpMessage\Tests\Factory;
-
-use Symfony\Bridge\PsrHttpMessage\Factory\DiactorosFactory;
-use Symfony\Component\HttpFoundation\BinaryFileResponse;
-use Symfony\Component\HttpFoundation\Cookie;
-use Symfony\Component\HttpFoundation\File\UploadedFile;
-use Symfony\Component\HttpFoundation\Request;
-use Symfony\Component\HttpFoundation\Response;
-use Symfony\Component\HttpFoundation\StreamedResponse;
-
-/**
- * @author Kévin Dunglas <dunglas@gmail.com>
- */
-class DiactorosFactoryTest extends \PHPUnit_Framework_TestCase
-{
-    private $factory;
-    private $tmpDir;
-
-    public function setup()
-    {
-        if (!class_exists('Zend\Diactoros\ServerRequestFactory')) {
-            $this->markTestSkipped('Zend Diactoros is not installed.');
-        }
-
-        $this->factory = new DiactorosFactory();
-        $this->tmpDir = sys_get_temp_dir();
-    }
-
-    public function testCreateRequest()
-    {
-        $stdClass = new \stdClass();
-        $request = new Request(
-            array(
-                'foo' => '1',
-                'bar' => array('baz' => '42'),
-            ),
-            array(
-                'twitter' => array(
-                    '@dunglas' => 'Kévin Dunglas',
-                    '@coopTilleuls' => 'Les-Tilleuls.coop',
-                ),
-                'baz' => '2',
-            ),
-            array(
-                'a1' => $stdClass,
-                'a2' => array('foo' => 'bar'),
-            ),
-            array(
-                'c1' => 'foo',
-                'c2' => array('c3' => 'bar'),
-            ),
-            array(
-                'f1' => $this->createUploadedFile('F1', 'f1.txt', 'text/plain', UPLOAD_ERR_OK),
-                'foo' => array('f2' => $this->createUploadedFile('F2', 'f2.txt', 'text/plain', UPLOAD_ERR_OK)),
-            ),
-            array(
-                'REQUEST_METHOD' => 'POST',
-                'HTTP_HOST' => 'dunglas.fr',
-                'HTTP_X_SYMFONY' => '2.8',
-            ),
-            'Content'
-        );
-
-        $psrRequest = $this->factory->createRequest($request);
-
-        $this->assertEquals('Content', $psrRequest->getBody()->__toString());
-
-        $queryParams = $psrRequest->getQueryParams();
-        $this->assertEquals('1', $queryParams['foo']);
-        $this->assertEquals('42', $queryParams['bar']['baz']);
-
-        $parsedBody = $psrRequest->getParsedBody();
-        $this->assertEquals('Kévin Dunglas', $parsedBody['twitter']['@dunglas']);
-        $this->assertEquals('Les-Tilleuls.coop', $parsedBody['twitter']['@coopTilleuls']);
-        $this->assertEquals('2', $parsedBody['baz']);
-
-        $attributes = $psrRequest->getAttributes();
-        $this->assertEquals($stdClass, $attributes['a1']);
-        $this->assertEquals('bar', $attributes['a2']['foo']);
-
-        $cookies = $psrRequest->getCookieParams();
-        $this->assertEquals('foo', $cookies['c1']);
-        $this->assertEquals('bar', $cookies['c2']['c3']);
-
-        $uploadedFiles = $psrRequest->getUploadedFiles();
-        $this->assertEquals('F1', $uploadedFiles['f1']->getStream()->__toString());
-        $this->assertEquals('f1.txt', $uploadedFiles['f1']->getClientFilename());
-        $this->assertEquals('text/plain', $uploadedFiles['f1']->getClientMediaType());
-        $this->assertEquals(UPLOAD_ERR_OK, $uploadedFiles['f1']->getError());
-
-        $this->assertEquals('F2', $uploadedFiles['foo']['f2']->getStream()->__toString());
-        $this->assertEquals('f2.txt', $uploadedFiles['foo']['f2']->getClientFilename());
-        $this->assertEquals('text/plain', $uploadedFiles['foo']['f2']->getClientMediaType());
-        $this->assertEquals(UPLOAD_ERR_OK, $uploadedFiles['foo']['f2']->getError());
-
-        $serverParams = $psrRequest->getServerParams();
-        $this->assertEquals('POST', $serverParams['REQUEST_METHOD']);
-        $this->assertEquals('2.8', $serverParams['HTTP_X_SYMFONY']);
-        $this->assertEquals('POST', $psrRequest->getMethod());
-        $this->assertEquals(array('2.8'), $psrRequest->getHeader('X-Symfony'));
-    }
-
-    private function createUploadedFile($content, $originalName, $mimeType, $error)
-    {
-        $path = tempnam($this->tmpDir, uniqid());
-        file_put_contents($path, $content);
-
-        return new UploadedFile($path, $originalName, $mimeType, filesize($path), $error, true);
-    }
-
-    public function testCreateResponse()
-    {
-        $response = new Response(
-            'Response content.',
-            202,
-            array('X-Symfony' => array('2.8'))
-        );
-        $response->headers->setCookie(new Cookie('city', 'Lille', new \DateTime('Wed, 13 Jan 2021 22:23:01 GMT')));
-
-        $psrResponse = $this->factory->createResponse($response);
-        $this->assertEquals('Response content.', $psrResponse->getBody()->__toString());
-        $this->assertEquals(202, $psrResponse->getStatusCode());
-        $this->assertEquals(array('2.8'), $psrResponse->getHeader('X-Symfony'));
-        $this->assertEquals(array('city=Lille; expires=Wed, 13-Jan-2021 22:23:01 GMT; path=/; httponly'), $psrResponse->getHeader('Set-Cookie'));
-    }
-
-    public function testCreateResponseFromStreamed()
-    {
-        $response = new StreamedResponse(function () {
-            echo "Line 1\n";
-            flush();
-
-            echo "Line 2\n";
-            flush();
-        });
-
-        $psrResponse = $this->factory->createResponse($response);
-
-        $this->assertEquals("Line 1\nLine 2\n", $psrResponse->getBody()->__toString());
-    }
-
-    public function testCreateResponseFromBinaryFile()
-    {
-        $path = tempnam($this->tmpDir, uniqid());
-        file_put_contents($path, 'Binary');
-
-        $response = new BinaryFileResponse($path);
-
-        $psrResponse = $this->factory->createResponse($response);
-
-        $this->assertEquals('Binary', $psrResponse->getBody()->__toString());
-    }
-}
diff --git a/vendor/symfony/psr-http-message-bridge/Tests/Factory/HttpFoundationFactoryTest.php b/vendor/symfony/psr-http-message-bridge/Tests/Factory/HttpFoundationFactoryTest.php
deleted file mode 100644
index 412e287..0000000
--- a/vendor/symfony/psr-http-message-bridge/Tests/Factory/HttpFoundationFactoryTest.php
+++ /dev/null
@@ -1,211 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Bridge\PsrHttpMessage\Tests\Factory;
-
-use Psr\Http\Message\UploadedFileInterface;
-use Symfony\Bridge\PsrHttpMessage\Factory\HttpFoundationFactory;
-use Symfony\Bridge\PsrHttpMessage\Tests\Fixtures\Response;
-use Symfony\Bridge\PsrHttpMessage\Tests\Fixtures\ServerRequest;
-use Symfony\Bridge\PsrHttpMessage\Tests\Fixtures\Stream;
-use Symfony\Bridge\PsrHttpMessage\Tests\Fixtures\UploadedFile;
-
-/**
- * @author Kévin Dunglas <dunglas@gmail.com>
- */
-class HttpFoundationFactoryTest extends \PHPUnit_Framework_TestCase
-{
-    private $factory;
-    private $tmpDir;
-
-    public function setup()
-    {
-        $this->factory = new HttpFoundationFactory();
-        $this->tmpDir = sys_get_temp_dir();
-    }
-
-    public function testCreateRequest()
-    {
-        $stdClass = new \stdClass();
-        $serverRequest = new ServerRequest(
-            '1.1',
-            array(
-                'X-Dunglas-API-Platform' => '1.0',
-                'X-data' => array('a', 'b'),
-            ),
-            new Stream('The body'),
-            '/about/kevin',
-            'GET',
-            'http://les-tilleuls.coop/about/kevin',
-            array('country' => 'France'),
-            array('city' => 'Lille'),
-            array('url' => 'http://les-tilleuls.coop'),
-            array(
-                'doc1' => $this->createUploadedFile('Doc 1', UPLOAD_ERR_OK, 'doc1.txt', 'text/plain'),
-                'nested' => array(
-                    'docs' => array(
-                        $this->createUploadedFile('Doc 2', UPLOAD_ERR_OK, 'doc2.txt', 'text/plain'),
-                        $this->createUploadedFile('Doc 3', UPLOAD_ERR_OK, 'doc3.txt', 'text/plain'),
-                    ),
-                ),
-            ),
-            array('url' => 'http://dunglas.fr'),
-            array('custom' => $stdClass)
-        );
-
-        $symfonyRequest = $this->factory->createRequest($serverRequest);
-
-        $this->assertEquals('http://les-tilleuls.coop', $symfonyRequest->query->get('url'));
-        $this->assertEquals('doc1.txt', $symfonyRequest->files->get('doc1')->getClientOriginalName());
-        $this->assertEquals('doc2.txt', $symfonyRequest->files->get('nested[docs][0]', null, true)->getClientOriginalName());
-        $this->assertEquals('doc3.txt', $symfonyRequest->files->get('nested[docs][1]', null, true)->getClientOriginalName());
-        $this->assertEquals('http://dunglas.fr', $symfonyRequest->request->get('url'));
-        $this->assertEquals($stdClass, $symfonyRequest->attributes->get('custom'));
-        $this->assertEquals('Lille', $symfonyRequest->cookies->get('city'));
-        $this->assertEquals('France', $symfonyRequest->server->get('country'));
-        $this->assertEquals('The body', $symfonyRequest->getContent());
-        $this->assertEquals('1.0', $symfonyRequest->headers->get('X-Dunglas-API-Platform'));
-        $this->assertEquals(array('a', 'b'), $symfonyRequest->headers->get('X-data', null, false));
-    }
-
-    public function testCreateRequestWithNullParsedBody()
-    {
-        $serverRequest = new ServerRequest(
-            '1.1',
-            array(),
-            new Stream(),
-            '/',
-            'GET',
-            null,
-            array(),
-            array(),
-            array(),
-            array(),
-            null,
-            array()
-        );
-
-        $this->assertCount(0, $this->factory->createRequest($serverRequest)->request);
-    }
-
-    public function testCreateRequestWithObjectParsedBody()
-    {
-        $serverRequest = new ServerRequest(
-            '1.1',
-            array(),
-            new Stream(),
-            '/',
-            'GET',
-            null,
-            array(),
-            array(),
-            array(),
-            array(),
-            new \stdClass(),
-            array()
-        );
-
-        $this->assertCount(0, $this->factory->createRequest($serverRequest)->request);
-    }
-
-    public function testCreateUploadedFile()
-    {
-        $uploadedFile = $this->createUploadedFile('An uploaded file.', UPLOAD_ERR_OK, 'myfile.txt', 'text/plain');
-        $symfonyUploadedFile = $this->callCreateUploadedFile($uploadedFile);
-
-        $uniqid = uniqid();
-        $symfonyUploadedFile->move($this->tmpDir, $uniqid);
-
-        $this->assertEquals($uploadedFile->getSize(), $symfonyUploadedFile->getClientSize());
-        $this->assertEquals(UPLOAD_ERR_OK, $symfonyUploadedFile->getError());
-        $this->assertEquals('myfile.txt', $symfonyUploadedFile->getClientOriginalName());
-        $this->assertEquals('txt', $symfonyUploadedFile->getClientOriginalExtension());
-        $this->assertEquals('text/plain', $symfonyUploadedFile->getClientMimeType());
-        $this->assertEquals('An uploaded file.', file_get_contents($this->tmpDir.'/'.$uniqid));
-    }
-
-    /**
-     * @expectedException        \Symfony\Component\HttpFoundation\File\Exception\FileException
-     * @expectedExceptionMessage The file "e" could not be written on disk.
-     */
-    public function testCreateUploadedFileWithError()
-    {
-        $uploadedFile = $this->createUploadedFile('Error.', UPLOAD_ERR_CANT_WRITE, 'e', 'text/plain');
-        $symfonyUploadedFile = $this->callCreateUploadedFile($uploadedFile);
-
-        $this->assertEquals(UPLOAD_ERR_CANT_WRITE, $symfonyUploadedFile->getError());
-
-        $symfonyUploadedFile->move($this->tmpDir, 'shouldFail.txt');
-    }
-
-    private function createUploadedFile($content, $error, $clientFileName, $clientMediaType)
-    {
-        $filePath = tempnam($this->tmpDir, uniqid());
-        file_put_contents($filePath, $content);
-
-        return new UploadedFile($filePath, filesize($filePath), $error, $clientFileName, $clientMediaType);
-    }
-
-    private function callCreateUploadedFile(UploadedFileInterface $uploadedFile)
-    {
-        $reflection = new \ReflectionClass($this->factory);
-        $createUploadedFile = $reflection->getMethod('createUploadedFile');
-        $createUploadedFile->setAccessible(true);
-
-        return $createUploadedFile->invokeArgs($this->factory, array($uploadedFile));
-    }
-
-    public function testCreateResponse()
-    {
-        $response = new Response(
-            '1.0',
-            array(
-                'X-Symfony' => array('2.8'),
-                'Set-Cookie' => array(
-                    'theme=light',
-                    'test',
-                    'ABC=AeD; Domain=dunglas.fr; Path=/kevin; Expires=Wed, 13 Jan 2021 22:23:01 GMT; Secure; HttpOnly',
-
-                ),
-            ),
-            new Stream('The response body'),
-            200
-        );
-
-        $symfonyResponse = $this->factory->createResponse($response);
-
-        $this->assertEquals('1.0', $symfonyResponse->getProtocolVersion());
-        $this->assertEquals('2.8', $symfonyResponse->headers->get('X-Symfony'));
-
-        $cookies = $symfonyResponse->headers->getCookies();
-        $this->assertEquals('theme', $cookies[0]->getName());
-        $this->assertEquals('light', $cookies[0]->getValue());
-        $this->assertEquals(0, $cookies[0]->getExpiresTime());
-        $this->assertNull($cookies[0]->getDomain());
-        $this->assertEquals('/', $cookies[0]->getPath());
-        $this->assertFalse($cookies[0]->isSecure());
-        $this->assertFalse($cookies[0]->isHttpOnly());
-
-        $this->assertEquals('test', $cookies[1]->getName());
-        $this->assertNull($cookies[1]->getValue());
-
-        $this->assertEquals('ABC', $cookies[2]->getName());
-        $this->assertEquals('AeD', $cookies[2]->getValue());
-        $this->assertEquals(strtotime('Wed, 13 Jan 2021 22:23:01 GMT'), $cookies[2]->getExpiresTime());
-        $this->assertEquals('dunglas.fr', $cookies[2]->getDomain());
-        $this->assertEquals('/kevin', $cookies[2]->getPath());
-        $this->assertTrue($cookies[2]->isSecure());
-        $this->assertTrue($cookies[2]->isHttpOnly());
-
-        $this->assertEquals('The response body', $symfonyResponse->getContent());
-        $this->assertEquals(200, $symfonyResponse->getStatusCode());
-    }
-}
diff --git a/vendor/symfony/psr-http-message-bridge/Tests/Fixtures/Message.php b/vendor/symfony/psr-http-message-bridge/Tests/Fixtures/Message.php
deleted file mode 100644
index 5cd0999..0000000
--- a/vendor/symfony/psr-http-message-bridge/Tests/Fixtures/Message.php
+++ /dev/null
@@ -1,89 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Bridge\PsrHttpMessage\Tests\Fixtures;
-
-use Psr\Http\Message\MessageInterface;
-use Psr\Http\Message\StreamInterface;
-
-/**
- * Message.
- *
- * @author Kévin Dunglas <dunglas@gmail.com>
- */
-class Message implements MessageInterface
-{
-    private $version = '1.1';
-    private $headers = array();
-    private $body;
-
-    public function __construct($version = '1.1', array $headers = array(), StreamInterface $body = null)
-    {
-        $this->version = $version;
-        $this->headers = $headers;
-        $this->body = null === $body ? new Stream() : $body;
-    }
-
-    public function getProtocolVersion()
-    {
-        return $this->version;
-    }
-
-    public function withProtocolVersion($version)
-    {
-        throw new \BadMethodCallException('Not implemented.');
-    }
-
-    public function getHeaders()
-    {
-        return $this->headers;
-    }
-
-    public function hasHeader($name)
-    {
-        return isset($this->headers[$name]);
-    }
-
-    public function getHeader($name)
-    {
-        return $this->hasHeader($name) ? $this->headers[$name] : array();
-    }
-
-    public function getHeaderLine($name)
-    {
-        return $this->hasHeader($name) ? implode(',', $this->headers[$name]) : '';
-    }
-
-    public function withHeader($name, $value)
-    {
-        throw new \BadMethodCallException('Not implemented.');
-    }
-
-    public function withAddedHeader($name, $value)
-    {
-        throw new \BadMethodCallException('Not implemented.');
-    }
-
-    public function withoutHeader($name)
-    {
-        throw new \BadMethodCallException('Not implemented.');
-    }
-
-    public function getBody()
-    {
-        return $this->body;
-    }
-
-    public function withBody(StreamInterface $body)
-    {
-        throw new \BadMethodCallException('Not implemented.');
-    }
-}
diff --git a/vendor/symfony/psr-http-message-bridge/Tests/Fixtures/Response.php b/vendor/symfony/psr-http-message-bridge/Tests/Fixtures/Response.php
deleted file mode 100644
index 0fd85c2..0000000
--- a/vendor/symfony/psr-http-message-bridge/Tests/Fixtures/Response.php
+++ /dev/null
@@ -1,45 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Bridge\PsrHttpMessage\Tests\Fixtures;
-
-use Psr\Http\Message\ResponseInterface;
-use Psr\Http\Message\StreamInterface;
-
-/**
- * @author Kévin Dunglas <dunglas@gmail.com>
- */
-class Response extends Message implements ResponseInterface
-{
-    private $statusCode;
-
-    public function __construct($version = '1.1', array $headers = array(), StreamInterface $body = null, $statusCode = 200)
-    {
-        parent::__construct($version, $headers, $body);
-
-        $this->statusCode = $statusCode;
-    }
-
-    public function getStatusCode()
-    {
-        return $this->statusCode;
-    }
-
-    public function withStatus($code, $reasonPhrase = '')
-    {
-        throw new \BadMethodCallException('Not implemented.');
-    }
-
-    public function getReasonPhrase()
-    {
-        throw new \BadMethodCallException('Not implemented.');
-    }
-}
diff --git a/vendor/symfony/psr-http-message-bridge/Tests/Fixtures/ServerRequest.php b/vendor/symfony/psr-http-message-bridge/Tests/Fixtures/ServerRequest.php
deleted file mode 100644
index 63b8c06..0000000
--- a/vendor/symfony/psr-http-message-bridge/Tests/Fixtures/ServerRequest.php
+++ /dev/null
@@ -1,141 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Bridge\PsrHttpMessage\Tests\Fixtures;
-
-use Psr\Http\Message\ServerRequestInterface;
-use Psr\Http\Message\StreamInterface;
-use Psr\Http\Message\UriInterface;
-
-/**
- * @author Kévin Dunglas <dunglas@gmail.com>
- */
-class ServerRequest extends Message implements ServerRequestInterface
-{
-    private $requestTarget;
-    private $method;
-    private $uri;
-    private $server;
-    private $cookies;
-    private $query;
-    private $uploadedFiles;
-    private $data;
-    private $attributes;
-
-    public function __construct($version = '1.1', array $headers = array(), StreamInterface $body = null, $requestTarget = '/', $method = 'GET', $uri = null, array $server = array(), array $cookies = array(), array $query = array(), array $uploadedFiles = array(), $data = null, array $attributes = array())
-    {
-        parent::__construct($version, $headers, $body);
-
-        $this->requestTarget = $requestTarget;
-        $this->method = $method;
-        $this->uri = $uri;
-        $this->server = $server;
-        $this->cookies = $cookies;
-        $this->query = $query;
-        $this->uploadedFiles = $uploadedFiles;
-        $this->data = $data;
-        $this->attributes = $attributes;
-    }
-
-    public function getRequestTarget()
-    {
-        return $this->requestTarget;
-    }
-
-    public function withRequestTarget($requestTarget)
-    {
-        throw new \BadMethodCallException('Not implemented.');
-    }
-
-    public function getMethod()
-    {
-        return $this->method;
-    }
-
-    public function withMethod($method)
-    {
-    }
-
-    public function getUri()
-    {
-        return $this->uri;
-    }
-
-    public function withUri(UriInterface $uri, $preserveHost = false)
-    {
-        throw new \BadMethodCallException('Not implemented.');
-    }
-
-    public function getServerParams()
-    {
-        return $this->server;
-    }
-
-    public function getCookieParams()
-    {
-        return $this->cookies;
-    }
-
-    public function withCookieParams(array $cookies)
-    {
-        throw new \BadMethodCallException('Not implemented.');
-    }
-
-    public function getQueryParams()
-    {
-        return $this->query;
-    }
-
-    public function withQueryParams(array $query)
-    {
-        throw new \BadMethodCallException('Not implemented.');
-    }
-
-    public function getUploadedFiles()
-    {
-        return $this->uploadedFiles;
-    }
-
-    public function withUploadedFiles(array $uploadedFiles)
-    {
-        throw new \BadMethodCallException('Not implemented.');
-    }
-
-    public function getParsedBody()
-    {
-        return $this->data;
-    }
-
-    public function withParsedBody($data)
-    {
-        throw new \BadMethodCallException('Not implemented.');
-    }
-
-    public function getAttributes()
-    {
-        return $this->attributes;
-    }
-
-    public function getAttribute($name, $default = null)
-    {
-        return isset($this->attributes[$name]) ? $this->attributes[$name] : $default;
-    }
-
-    public function withAttribute($name, $value)
-    {
-        throw new \BadMethodCallException('Not implemented.');
-    }
-
-    public function withoutAttribute($name)
-    {
-        throw new \BadMethodCallException('Not implemented.');
-    }
-}
diff --git a/vendor/symfony/psr-http-message-bridge/Tests/Fixtures/Stream.php b/vendor/symfony/psr-http-message-bridge/Tests/Fixtures/Stream.php
deleted file mode 100644
index aeca3d8..0000000
--- a/vendor/symfony/psr-http-message-bridge/Tests/Fixtures/Stream.php
+++ /dev/null
@@ -1,95 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Bridge\PsrHttpMessage\Tests\Fixtures;
-
-use Psr\Http\Message\StreamInterface;
-
-/**
- * @author Kévin Dunglas <dunglas@gmail.com>
- */
-class Stream implements StreamInterface
-{
-    private $stringContent;
-
-    public function __construct($stringContent = '')
-    {
-        $this->stringContent = $stringContent;
-    }
-
-    public function __toString()
-    {
-        return $this->stringContent;
-    }
-
-    public function close()
-    {
-    }
-
-    public function detach()
-    {
-    }
-
-    public function getSize()
-    {
-    }
-
-    public function tell()
-    {
-        return 0;
-    }
-
-    public function eof()
-    {
-        return true;
-    }
-
-    public function isSeekable()
-    {
-        return false;
-    }
-
-    public function seek($offset, $whence = SEEK_SET)
-    {
-    }
-
-    public function rewind()
-    {
-    }
-
-    public function isWritable()
-    {
-        return false;
-    }
-
-    public function write($string)
-    {
-    }
-
-    public function isReadable()
-    {
-        return true;
-    }
-
-    public function read($length)
-    {
-        return $this->stringContent;
-    }
-
-    public function getContents()
-    {
-        return $this->stringContent;
-    }
-
-    public function getMetadata($key = null)
-    {
-    }
-}
diff --git a/vendor/symfony/psr-http-message-bridge/Tests/Fixtures/UploadedFile.php b/vendor/symfony/psr-http-message-bridge/Tests/Fixtures/UploadedFile.php
deleted file mode 100644
index 4cfa98b..0000000
--- a/vendor/symfony/psr-http-message-bridge/Tests/Fixtures/UploadedFile.php
+++ /dev/null
@@ -1,65 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Bridge\PsrHttpMessage\Tests\Fixtures;
-
-use Psr\Http\Message\UploadedFileInterface;
-
-/**
- * @author Kévin Dunglas <dunglas@gmail.com>
- */
-class UploadedFile implements UploadedFileInterface
-{
-    private $filePath;
-    private $size;
-    private $error;
-    private $clientFileName;
-    private $clientMediaType;
-
-    public function __construct($filePath, $size = null, $error = UPLOAD_ERR_OK, $clientFileName = null, $clientMediaType = null)
-    {
-        $this->filePath = $filePath;
-        $this->size = $size;
-        $this->error = $error;
-        $this->clientFileName = $clientFileName;
-        $this->clientMediaType = $clientMediaType;
-    }
-
-    public function getStream()
-    {
-        throw new \RuntimeException('No stream is available.');
-    }
-
-    public function moveTo($targetPath)
-    {
-        rename($this->filePath, $targetPath);
-    }
-
-    public function getSize()
-    {
-        return $this->size;
-    }
-
-    public function getError()
-    {
-        return $this->error;
-    }
-
-    public function getClientFilename()
-    {
-        return $this->clientFileName;
-    }
-
-    public function getClientMediaType()
-    {
-        return $this->clientMediaType;
-    }
-}
diff --git a/vendor/symfony/routing/Tests/Annotation/RouteTest.php b/vendor/symfony/routing/Tests/Annotation/RouteTest.php
deleted file mode 100644
index 3b340b3..0000000
--- a/vendor/symfony/routing/Tests/Annotation/RouteTest.php
+++ /dev/null
@@ -1,58 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Routing\Tests\Annotation;
-
-use Symfony\Component\Routing\Annotation\Route;
-
-class RouteTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @expectedException \BadMethodCallException
-     */
-    public function testInvalidRouteParameter()
-    {
-        $route = new Route(array('foo' => 'bar'));
-    }
-
-    /**
-     * @dataProvider getValidParameters
-     */
-    public function testRouteParameters($parameter, $value, $getter)
-    {
-        $route = new Route(array($parameter => $value));
-        $this->assertEquals($route->$getter(), $value);
-    }
-
-    public function getValidParameters()
-    {
-        return array(
-            array('value', '/Blog', 'getPath'),
-            array('requirements', array('locale' => 'en'), 'getRequirements'),
-            array('options', array('compiler_class' => 'RouteCompiler'), 'getOptions'),
-            array('name', 'blog_index', 'getName'),
-            array('defaults', array('_controller' => 'MyBlogBundle:Blog:index'), 'getDefaults'),
-            array('schemes', array('https'), 'getSchemes'),
-            array('methods', array('GET', 'POST'), 'getMethods'),
-            array('host', '{locale}.example.com', 'getHost'),
-            array('condition', 'context.getMethod() == "GET"', 'getCondition'),
-        );
-    }
-
-    /**
-     * @group legacy
-     */
-    public function testLegacyGetPattern()
-    {
-        $route = new Route(array('value' => '/Blog'));
-        $this->assertEquals($route->getPattern(), '/Blog');
-    }
-}
diff --git a/vendor/symfony/routing/Tests/CompiledRouteTest.php b/vendor/symfony/routing/Tests/CompiledRouteTest.php
deleted file mode 100644
index 215ebb7..0000000
--- a/vendor/symfony/routing/Tests/CompiledRouteTest.php
+++ /dev/null
@@ -1,26 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Routing\Tests;
-
-use Symfony\Component\Routing\CompiledRoute;
-
-class CompiledRouteTest extends \PHPUnit_Framework_TestCase
-{
-    public function testAccessors()
-    {
-        $compiled = new CompiledRoute('prefix', 'regex', array('tokens'), array(), array(), array(), array(), array('variables'));
-        $this->assertEquals('prefix', $compiled->getStaticPrefix(), '__construct() takes a static prefix as its second argument');
-        $this->assertEquals('regex', $compiled->getRegex(), '__construct() takes a regexp as its third argument');
-        $this->assertEquals(array('tokens'), $compiled->getTokens(), '__construct() takes an array of tokens as its fourth argument');
-        $this->assertEquals(array('variables'), $compiled->getVariables(), '__construct() takes an array of variables as its ninth argument');
-    }
-}
diff --git a/vendor/symfony/routing/Tests/Fixtures/AnnotatedClasses/AbstractClass.php b/vendor/symfony/routing/Tests/Fixtures/AnnotatedClasses/AbstractClass.php
deleted file mode 100644
index 56bcab2..0000000
--- a/vendor/symfony/routing/Tests/Fixtures/AnnotatedClasses/AbstractClass.php
+++ /dev/null
@@ -1,16 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Routing\Tests\Fixtures\AnnotatedClasses;
-
-abstract class AbstractClass
-{
-}
diff --git a/vendor/symfony/routing/Tests/Fixtures/AnnotatedClasses/BarClass.php b/vendor/symfony/routing/Tests/Fixtures/AnnotatedClasses/BarClass.php
deleted file mode 100644
index a388277..0000000
--- a/vendor/symfony/routing/Tests/Fixtures/AnnotatedClasses/BarClass.php
+++ /dev/null
@@ -1,19 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Routing\Tests\Fixtures\AnnotatedClasses;
-
-class BarClass
-{
-    public function routeAction($arg1, $arg2 = 'defaultValue2', $arg3 = 'defaultValue3')
-    {
-    }
-}
diff --git a/vendor/symfony/routing/Tests/Fixtures/AnnotatedClasses/FooClass.php b/vendor/symfony/routing/Tests/Fixtures/AnnotatedClasses/FooClass.php
deleted file mode 100644
index 320dc35..0000000
--- a/vendor/symfony/routing/Tests/Fixtures/AnnotatedClasses/FooClass.php
+++ /dev/null
@@ -1,16 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Routing\Tests\Fixtures\AnnotatedClasses;
-
-class FooClass
-{
-}
diff --git a/vendor/symfony/routing/Tests/Fixtures/CustomXmlFileLoader.php b/vendor/symfony/routing/Tests/Fixtures/CustomXmlFileLoader.php
deleted file mode 100644
index 9fd5754..0000000
--- a/vendor/symfony/routing/Tests/Fixtures/CustomXmlFileLoader.php
+++ /dev/null
@@ -1,26 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Routing\Tests\Fixtures;
-
-use Symfony\Component\Routing\Loader\XmlFileLoader;
-use Symfony\Component\Config\Util\XmlUtils;
-
-/**
- * XmlFileLoader with schema validation turned off.
- */
-class CustomXmlFileLoader extends XmlFileLoader
-{
-    protected function loadFile($file)
-    {
-        return XmlUtils::loadFile($file, function () { return true; });
-    }
-}
diff --git a/vendor/symfony/routing/Tests/Fixtures/OtherAnnotatedClasses/VariadicClass.php b/vendor/symfony/routing/Tests/Fixtures/OtherAnnotatedClasses/VariadicClass.php
deleted file mode 100644
index 729c9b4..0000000
--- a/vendor/symfony/routing/Tests/Fixtures/OtherAnnotatedClasses/VariadicClass.php
+++ /dev/null
@@ -1,19 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Routing\Tests\Fixtures\OtherAnnotatedClasses;
-
-class VariadicClass
-{
-    public function routeAction(...$params)
-    {
-    }
-}
diff --git a/vendor/symfony/routing/Tests/Fixtures/RedirectableUrlMatcher.php b/vendor/symfony/routing/Tests/Fixtures/RedirectableUrlMatcher.php
deleted file mode 100644
index 15937bc..0000000
--- a/vendor/symfony/routing/Tests/Fixtures/RedirectableUrlMatcher.php
+++ /dev/null
@@ -1,30 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Routing\Tests\Fixtures;
-
-use Symfony\Component\Routing\Matcher\UrlMatcher;
-use Symfony\Component\Routing\Matcher\RedirectableUrlMatcherInterface;
-
-/**
- * @author Fabien Potencier <fabien@symfony.com>
- */
-class RedirectableUrlMatcher extends UrlMatcher implements RedirectableUrlMatcherInterface
-{
-    public function redirect($path, $route, $scheme = null)
-    {
-        return array(
-            '_controller' => 'Some controller reference...',
-            'path' => $path,
-            'scheme' => $scheme,
-        );
-    }
-}
diff --git a/vendor/symfony/routing/Tests/Fixtures/annotated.php b/vendor/symfony/routing/Tests/Fixtures/annotated.php
deleted file mode 100644
index e69de29..0000000
diff --git a/vendor/symfony/routing/Tests/Fixtures/bad_format.yml b/vendor/symfony/routing/Tests/Fixtures/bad_format.yml
deleted file mode 100644
index 8ba50e2..0000000
--- a/vendor/symfony/routing/Tests/Fixtures/bad_format.yml
+++ /dev/null
@@ -1,3 +0,0 @@
-blog_show:
-	path:     /blog/{slug}
-	defaults: { _controller: "MyBundle:Blog:show" }
diff --git a/vendor/symfony/routing/Tests/Fixtures/dumper/url_matcher1.apache b/vendor/symfony/routing/Tests/Fixtures/dumper/url_matcher1.apache
deleted file mode 100644
index 26a561c..0000000
--- a/vendor/symfony/routing/Tests/Fixtures/dumper/url_matcher1.apache
+++ /dev/null
@@ -1,163 +0,0 @@
-# skip "real" requests
-RewriteCond %{REQUEST_FILENAME} -f
-RewriteRule .* - [QSA,L]
-
-# foo
-RewriteCond %{REQUEST_URI} ^/foo/(baz|symfony)$
-RewriteRule .* app.php [QSA,L,E=_ROUTING_route:foo,E=_ROUTING_param_bar:%1,E=_ROUTING_default_def:test]
-
-# foobar
-RewriteCond %{REQUEST_URI} ^/foo(?:/([^/]++))?$
-RewriteRule .* app.php [QSA,L,E=_ROUTING_route:foobar,E=_ROUTING_param_bar:%1,E=_ROUTING_default_bar:toto]
-
-# bar
-RewriteCond %{REQUEST_URI} ^/bar/([^/]++)$
-RewriteCond %{REQUEST_METHOD} !^(GET|HEAD)$ [NC]
-RewriteRule .* - [S=1,E=_ROUTING_allow_GET:1,E=_ROUTING_allow_HEAD:1]
-RewriteCond %{REQUEST_URI} ^/bar/([^/]++)$
-RewriteRule .* app.php [QSA,L,E=_ROUTING_route:bar,E=_ROUTING_param_foo:%1]
-
-# baragain
-RewriteCond %{REQUEST_URI} ^/baragain/([^/]++)$
-RewriteCond %{REQUEST_METHOD} !^(GET|POST|HEAD)$ [NC]
-RewriteRule .* - [S=1,E=_ROUTING_allow_GET:1,E=_ROUTING_allow_POST:1,E=_ROUTING_allow_HEAD:1]
-RewriteCond %{REQUEST_URI} ^/baragain/([^/]++)$
-RewriteRule .* app.php [QSA,L,E=_ROUTING_route:baragain,E=_ROUTING_param_foo:%1]
-
-# baz
-RewriteCond %{REQUEST_URI} ^/test/baz$
-RewriteRule .* app.php [QSA,L,E=_ROUTING_route:baz]
-
-# baz2
-RewriteCond %{REQUEST_URI} ^/test/baz\.html$
-RewriteRule .* app.php [QSA,L,E=_ROUTING_route:baz2]
-
-# baz3
-RewriteCond %{REQUEST_URI} ^/test/baz3$
-RewriteRule .* $0/ [QSA,L,R=301]
-RewriteCond %{REQUEST_URI} ^/test/baz3/$
-RewriteRule .* app.php [QSA,L,E=_ROUTING_route:baz3]
-
-# baz4
-RewriteCond %{REQUEST_URI} ^/test/([^/]++)$
-RewriteRule .* $0/ [QSA,L,R=301]
-RewriteCond %{REQUEST_URI} ^/test/([^/]++)/$
-RewriteRule .* app.php [QSA,L,E=_ROUTING_route:baz4,E=_ROUTING_param_foo:%1]
-
-# baz5
-RewriteCond %{REQUEST_URI} ^/test/([^/]++)/$
-RewriteCond %{REQUEST_METHOD} !^(GET|HEAD)$ [NC]
-RewriteRule .* - [S=2,E=_ROUTING_allow_GET:1,E=_ROUTING_allow_HEAD:1]
-RewriteCond %{REQUEST_URI} ^/test/([^/]++)$
-RewriteRule .* $0/ [QSA,L,R=301]
-RewriteCond %{REQUEST_URI} ^/test/([^/]++)/$
-RewriteRule .* app.php [QSA,L,E=_ROUTING_route:baz5,E=_ROUTING_param_foo:%1]
-
-# baz5unsafe
-RewriteCond %{REQUEST_URI} ^/testunsafe/([^/]++)/$
-RewriteCond %{REQUEST_METHOD} !^(POST)$ [NC]
-RewriteRule .* - [S=1,E=_ROUTING_allow_POST:1]
-RewriteCond %{REQUEST_URI} ^/testunsafe/([^/]++)/$
-RewriteRule .* app.php [QSA,L,E=_ROUTING_route:baz5unsafe,E=_ROUTING_param_foo:%1]
-
-# baz6
-RewriteCond %{REQUEST_URI} ^/test/baz$
-RewriteRule .* app.php [QSA,L,E=_ROUTING_route:baz6,E=_ROUTING_default_foo:bar\ baz]
-
-# baz7
-RewriteCond %{REQUEST_URI} ^/te\ st/baz$
-RewriteRule .* app.php [QSA,L,E=_ROUTING_route:baz7]
-
-# baz8
-RewriteCond %{REQUEST_URI} ^/te\\\ st/baz$
-RewriteRule .* app.php [QSA,L,E=_ROUTING_route:baz8]
-
-# baz9
-RewriteCond %{REQUEST_URI} ^/test/(te\\\ st)$
-RewriteRule .* app.php [QSA,L,E=_ROUTING_route:baz9,E=_ROUTING_param_baz:%1]
-
-RewriteCond %{HTTP:Host} ^a\.example\.com$
-RewriteRule .? - [E=__ROUTING_host_1:1]
-
-# route1
-RewriteCond %{ENV:__ROUTING_host_1} =1
-RewriteCond %{REQUEST_URI} ^/route1$
-RewriteRule .* app.php [QSA,L,E=_ROUTING_route:route1]
-
-# route2
-RewriteCond %{ENV:__ROUTING_host_1} =1
-RewriteCond %{REQUEST_URI} ^/c2/route2$
-RewriteRule .* app.php [QSA,L,E=_ROUTING_route:route2]
-
-RewriteCond %{HTTP:Host} ^b\.example\.com$
-RewriteRule .? - [E=__ROUTING_host_2:1]
-
-# route3
-RewriteCond %{ENV:__ROUTING_host_2} =1
-RewriteCond %{REQUEST_URI} ^/c2/route3$
-RewriteRule .* app.php [QSA,L,E=_ROUTING_route:route3]
-
-RewriteCond %{HTTP:Host} ^a\.example\.com$
-RewriteRule .? - [E=__ROUTING_host_3:1]
-
-# route4
-RewriteCond %{ENV:__ROUTING_host_3} =1
-RewriteCond %{REQUEST_URI} ^/route4$
-RewriteRule .* app.php [QSA,L,E=_ROUTING_route:route4]
-
-RewriteCond %{HTTP:Host} ^c\.example\.com$
-RewriteRule .? - [E=__ROUTING_host_4:1]
-
-# route5
-RewriteCond %{ENV:__ROUTING_host_4} =1
-RewriteCond %{REQUEST_URI} ^/route5$
-RewriteRule .* app.php [QSA,L,E=_ROUTING_route:route5]
-
-# route6
-RewriteCond %{REQUEST_URI} ^/route6$
-RewriteRule .* app.php [QSA,L,E=_ROUTING_route:route6]
-
-RewriteCond %{HTTP:Host} ^([^\.]++)\.example\.com$
-RewriteRule .? - [E=__ROUTING_host_5:1,E=__ROUTING_host_5_var1:%1]
-
-# route11
-RewriteCond %{ENV:__ROUTING_host_5} =1
-RewriteCond %{REQUEST_URI} ^/route11$
-RewriteRule .* app.php [QSA,L,E=_ROUTING_route:route11,E=_ROUTING_param_var1:%{ENV:__ROUTING_host_5_var1}]
-
-# route12
-RewriteCond %{ENV:__ROUTING_host_5} =1
-RewriteCond %{REQUEST_URI} ^/route12$
-RewriteRule .* app.php [QSA,L,E=_ROUTING_route:route12,E=_ROUTING_param_var1:%{ENV:__ROUTING_host_5_var1},E=_ROUTING_default_var1:val]
-
-# route13
-RewriteCond %{ENV:__ROUTING_host_5} =1
-RewriteCond %{REQUEST_URI} ^/route13/([^/]++)$
-RewriteRule .* app.php [QSA,L,E=_ROUTING_route:route13,E=_ROUTING_param_var1:%{ENV:__ROUTING_host_5_var1},E=_ROUTING_param_name:%1]
-
-# route14
-RewriteCond %{ENV:__ROUTING_host_5} =1
-RewriteCond %{REQUEST_URI} ^/route14/([^/]++)$
-RewriteRule .* app.php [QSA,L,E=_ROUTING_route:route14,E=_ROUTING_param_var1:%{ENV:__ROUTING_host_5_var1},E=_ROUTING_param_name:%1,E=_ROUTING_default_var1:val]
-
-RewriteCond %{HTTP:Host} ^c\.example\.com$
-RewriteRule .? - [E=__ROUTING_host_6:1]
-
-# route15
-RewriteCond %{ENV:__ROUTING_host_6} =1
-RewriteCond %{REQUEST_URI} ^/route15/([^/]++)$
-RewriteRule .* app.php [QSA,L,E=_ROUTING_route:route15,E=_ROUTING_param_name:%1]
-
-# route16
-RewriteCond %{REQUEST_URI} ^/route16/([^/]++)$
-RewriteRule .* app.php [QSA,L,E=_ROUTING_route:route16,E=_ROUTING_param_name:%1,E=_ROUTING_default_var1:val]
-
-# route17
-RewriteCond %{REQUEST_URI} ^/route17$
-RewriteRule .* app.php [QSA,L,E=_ROUTING_route:route17]
-
-# 405 Method Not Allowed
-RewriteCond %{ENV:_ROUTING__allow_GET} =1 [OR]
-RewriteCond %{ENV:_ROUTING__allow_HEAD} =1 [OR]
-RewriteCond %{ENV:_ROUTING__allow_POST} =1
-RewriteRule .* app.php [QSA,L]
diff --git a/vendor/symfony/routing/Tests/Fixtures/dumper/url_matcher1.php b/vendor/symfony/routing/Tests/Fixtures/dumper/url_matcher1.php
deleted file mode 100644
index 4ea0b8a..0000000
--- a/vendor/symfony/routing/Tests/Fixtures/dumper/url_matcher1.php
+++ /dev/null
@@ -1,312 +0,0 @@
-<?php
-
-use Symfony\Component\Routing\Exception\MethodNotAllowedException;
-use Symfony\Component\Routing\Exception\ResourceNotFoundException;
-use Symfony\Component\Routing\RequestContext;
-
-/**
- * ProjectUrlMatcher.
- *
- * This class has been auto-generated
- * by the Symfony Routing Component.
- */
-class ProjectUrlMatcher extends Symfony\Component\Routing\Matcher\UrlMatcher
-{
-    /**
-     * Constructor.
-     */
-    public function __construct(RequestContext $context)
-    {
-        $this->context = $context;
-    }
-
-    public function match($pathinfo)
-    {
-        $allow = array();
-        $pathinfo = rawurldecode($pathinfo);
-        $context = $this->context;
-        $request = $this->request;
-
-        // foo
-        if (0 === strpos($pathinfo, '/foo') && preg_match('#^/foo/(?P<bar>baz|symfony)$#s', $pathinfo, $matches)) {
-            return $this->mergeDefaults(array_replace($matches, array('_route' => 'foo')), array (  'def' => 'test',));
-        }
-
-        if (0 === strpos($pathinfo, '/bar')) {
-            // bar
-            if (preg_match('#^/bar/(?P<foo>[^/]++)$#s', $pathinfo, $matches)) {
-                if (!in_array($this->context->getMethod(), array('GET', 'HEAD'))) {
-                    $allow = array_merge($allow, array('GET', 'HEAD'));
-                    goto not_bar;
-                }
-
-                return $this->mergeDefaults(array_replace($matches, array('_route' => 'bar')), array ());
-            }
-            not_bar:
-
-            // barhead
-            if (0 === strpos($pathinfo, '/barhead') && preg_match('#^/barhead/(?P<foo>[^/]++)$#s', $pathinfo, $matches)) {
-                if (!in_array($this->context->getMethod(), array('GET', 'HEAD'))) {
-                    $allow = array_merge($allow, array('GET', 'HEAD'));
-                    goto not_barhead;
-                }
-
-                return $this->mergeDefaults(array_replace($matches, array('_route' => 'barhead')), array ());
-            }
-            not_barhead:
-
-        }
-
-        if (0 === strpos($pathinfo, '/test')) {
-            if (0 === strpos($pathinfo, '/test/baz')) {
-                // baz
-                if ($pathinfo === '/test/baz') {
-                    return array('_route' => 'baz');
-                }
-
-                // baz2
-                if ($pathinfo === '/test/baz.html') {
-                    return array('_route' => 'baz2');
-                }
-
-                // baz3
-                if ($pathinfo === '/test/baz3/') {
-                    return array('_route' => 'baz3');
-                }
-
-            }
-
-            // baz4
-            if (preg_match('#^/test/(?P<foo>[^/]++)/$#s', $pathinfo, $matches)) {
-                return $this->mergeDefaults(array_replace($matches, array('_route' => 'baz4')), array ());
-            }
-
-            // baz5
-            if (preg_match('#^/test/(?P<foo>[^/]++)/$#s', $pathinfo, $matches)) {
-                if ($this->context->getMethod() != 'POST') {
-                    $allow[] = 'POST';
-                    goto not_baz5;
-                }
-
-                return $this->mergeDefaults(array_replace($matches, array('_route' => 'baz5')), array ());
-            }
-            not_baz5:
-
-            // baz.baz6
-            if (preg_match('#^/test/(?P<foo>[^/]++)/$#s', $pathinfo, $matches)) {
-                if ($this->context->getMethod() != 'PUT') {
-                    $allow[] = 'PUT';
-                    goto not_bazbaz6;
-                }
-
-                return $this->mergeDefaults(array_replace($matches, array('_route' => 'baz.baz6')), array ());
-            }
-            not_bazbaz6:
-
-        }
-
-        // foofoo
-        if ($pathinfo === '/foofoo') {
-            return array (  'def' => 'test',  '_route' => 'foofoo',);
-        }
-
-        // quoter
-        if (preg_match('#^/(?P<quoter>[\']+)$#s', $pathinfo, $matches)) {
-            return $this->mergeDefaults(array_replace($matches, array('_route' => 'quoter')), array ());
-        }
-
-        // space
-        if ($pathinfo === '/spa ce') {
-            return array('_route' => 'space');
-        }
-
-        if (0 === strpos($pathinfo, '/a')) {
-            if (0 === strpos($pathinfo, '/a/b\'b')) {
-                // foo1
-                if (preg_match('#^/a/b\'b/(?P<foo>[^/]++)$#s', $pathinfo, $matches)) {
-                    return $this->mergeDefaults(array_replace($matches, array('_route' => 'foo1')), array ());
-                }
-
-                // bar1
-                if (preg_match('#^/a/b\'b/(?P<bar>[^/]++)$#s', $pathinfo, $matches)) {
-                    return $this->mergeDefaults(array_replace($matches, array('_route' => 'bar1')), array ());
-                }
-
-            }
-
-            // overridden
-            if (preg_match('#^/a/(?P<var>.*)$#s', $pathinfo, $matches)) {
-                return $this->mergeDefaults(array_replace($matches, array('_route' => 'overridden')), array ());
-            }
-
-            if (0 === strpos($pathinfo, '/a/b\'b')) {
-                // foo2
-                if (preg_match('#^/a/b\'b/(?P<foo1>[^/]++)$#s', $pathinfo, $matches)) {
-                    return $this->mergeDefaults(array_replace($matches, array('_route' => 'foo2')), array ());
-                }
-
-                // bar2
-                if (preg_match('#^/a/b\'b/(?P<bar1>[^/]++)$#s', $pathinfo, $matches)) {
-                    return $this->mergeDefaults(array_replace($matches, array('_route' => 'bar2')), array ());
-                }
-
-            }
-
-        }
-
-        if (0 === strpos($pathinfo, '/multi')) {
-            // helloWorld
-            if (0 === strpos($pathinfo, '/multi/hello') && preg_match('#^/multi/hello(?:/(?P<who>[^/]++))?$#s', $pathinfo, $matches)) {
-                return $this->mergeDefaults(array_replace($matches, array('_route' => 'helloWorld')), array (  'who' => 'World!',));
-            }
-
-            // overridden2
-            if ($pathinfo === '/multi/new') {
-                return array('_route' => 'overridden2');
-            }
-
-            // hey
-            if ($pathinfo === '/multi/hey/') {
-                return array('_route' => 'hey');
-            }
-
-        }
-
-        // foo3
-        if (preg_match('#^/(?P<_locale>[^/]++)/b/(?P<foo>[^/]++)$#s', $pathinfo, $matches)) {
-            return $this->mergeDefaults(array_replace($matches, array('_route' => 'foo3')), array ());
-        }
-
-        // bar3
-        if (preg_match('#^/(?P<_locale>[^/]++)/b/(?P<bar>[^/]++)$#s', $pathinfo, $matches)) {
-            return $this->mergeDefaults(array_replace($matches, array('_route' => 'bar3')), array ());
-        }
-
-        if (0 === strpos($pathinfo, '/aba')) {
-            // ababa
-            if ($pathinfo === '/ababa') {
-                return array('_route' => 'ababa');
-            }
-
-            // foo4
-            if (preg_match('#^/aba/(?P<foo>[^/]++)$#s', $pathinfo, $matches)) {
-                return $this->mergeDefaults(array_replace($matches, array('_route' => 'foo4')), array ());
-            }
-
-        }
-
-        $host = $this->context->getHost();
-
-        if (preg_match('#^a\\.example\\.com$#si', $host, $hostMatches)) {
-            // route1
-            if ($pathinfo === '/route1') {
-                return array('_route' => 'route1');
-            }
-
-            // route2
-            if ($pathinfo === '/c2/route2') {
-                return array('_route' => 'route2');
-            }
-
-        }
-
-        if (preg_match('#^b\\.example\\.com$#si', $host, $hostMatches)) {
-            // route3
-            if ($pathinfo === '/c2/route3') {
-                return array('_route' => 'route3');
-            }
-
-        }
-
-        if (preg_match('#^a\\.example\\.com$#si', $host, $hostMatches)) {
-            // route4
-            if ($pathinfo === '/route4') {
-                return array('_route' => 'route4');
-            }
-
-        }
-
-        if (preg_match('#^c\\.example\\.com$#si', $host, $hostMatches)) {
-            // route5
-            if ($pathinfo === '/route5') {
-                return array('_route' => 'route5');
-            }
-
-        }
-
-        // route6
-        if ($pathinfo === '/route6') {
-            return array('_route' => 'route6');
-        }
-
-        if (preg_match('#^(?P<var1>[^\\.]++)\\.example\\.com$#si', $host, $hostMatches)) {
-            if (0 === strpos($pathinfo, '/route1')) {
-                // route11
-                if ($pathinfo === '/route11') {
-                    return $this->mergeDefaults(array_replace($hostMatches, array('_route' => 'route11')), array ());
-                }
-
-                // route12
-                if ($pathinfo === '/route12') {
-                    return $this->mergeDefaults(array_replace($hostMatches, array('_route' => 'route12')), array (  'var1' => 'val',));
-                }
-
-                // route13
-                if (0 === strpos($pathinfo, '/route13') && preg_match('#^/route13/(?P<name>[^/]++)$#s', $pathinfo, $matches)) {
-                    return $this->mergeDefaults(array_replace($hostMatches, $matches, array('_route' => 'route13')), array ());
-                }
-
-                // route14
-                if (0 === strpos($pathinfo, '/route14') && preg_match('#^/route14/(?P<name>[^/]++)$#s', $pathinfo, $matches)) {
-                    return $this->mergeDefaults(array_replace($hostMatches, $matches, array('_route' => 'route14')), array (  'var1' => 'val',));
-                }
-
-            }
-
-        }
-
-        if (preg_match('#^c\\.example\\.com$#si', $host, $hostMatches)) {
-            // route15
-            if (0 === strpos($pathinfo, '/route15') && preg_match('#^/route15/(?P<name>[^/]++)$#s', $pathinfo, $matches)) {
-                return $this->mergeDefaults(array_replace($matches, array('_route' => 'route15')), array ());
-            }
-
-        }
-
-        if (0 === strpos($pathinfo, '/route1')) {
-            // route16
-            if (0 === strpos($pathinfo, '/route16') && preg_match('#^/route16/(?P<name>[^/]++)$#s', $pathinfo, $matches)) {
-                return $this->mergeDefaults(array_replace($matches, array('_route' => 'route16')), array (  'var1' => 'val',));
-            }
-
-            // route17
-            if ($pathinfo === '/route17') {
-                return array('_route' => 'route17');
-            }
-
-        }
-
-        if (0 === strpos($pathinfo, '/a')) {
-            // a
-            if ($pathinfo === '/a/a...') {
-                return array('_route' => 'a');
-            }
-
-            if (0 === strpos($pathinfo, '/a/b')) {
-                // b
-                if (preg_match('#^/a/b/(?P<var>[^/]++)$#s', $pathinfo, $matches)) {
-                    return $this->mergeDefaults(array_replace($matches, array('_route' => 'b')), array ());
-                }
-
-                // c
-                if (0 === strpos($pathinfo, '/a/b/c') && preg_match('#^/a/b/c/(?P<var>[^/]++)$#s', $pathinfo, $matches)) {
-                    return $this->mergeDefaults(array_replace($matches, array('_route' => 'c')), array ());
-                }
-
-            }
-
-        }
-
-        throw 0 < count($allow) ? new MethodNotAllowedException(array_unique($allow)) : new ResourceNotFoundException();
-    }
-}
diff --git a/vendor/symfony/routing/Tests/Fixtures/dumper/url_matcher2.apache b/vendor/symfony/routing/Tests/Fixtures/dumper/url_matcher2.apache
deleted file mode 100644
index 309f2ff..0000000
--- a/vendor/symfony/routing/Tests/Fixtures/dumper/url_matcher2.apache
+++ /dev/null
@@ -1,7 +0,0 @@
-# skip "real" requests
-RewriteCond %{REQUEST_FILENAME} -f
-RewriteRule .* - [QSA,L]
-
-# foo
-RewriteCond %{REQUEST_URI} ^/foo$
-RewriteRule .* ap\ p_d\ ev.php [QSA,L,E=_ROUTING_route:foo]
diff --git a/vendor/symfony/routing/Tests/Fixtures/dumper/url_matcher2.php b/vendor/symfony/routing/Tests/Fixtures/dumper/url_matcher2.php
deleted file mode 100644
index f9d3fa2..0000000
--- a/vendor/symfony/routing/Tests/Fixtures/dumper/url_matcher2.php
+++ /dev/null
@@ -1,344 +0,0 @@
-<?php
-
-use Symfony\Component\Routing\Exception\MethodNotAllowedException;
-use Symfony\Component\Routing\Exception\ResourceNotFoundException;
-use Symfony\Component\Routing\RequestContext;
-
-/**
- * ProjectUrlMatcher.
- *
- * This class has been auto-generated
- * by the Symfony Routing Component.
- */
-class ProjectUrlMatcher extends Symfony\Component\Routing\Tests\Fixtures\RedirectableUrlMatcher
-{
-    /**
-     * Constructor.
-     */
-    public function __construct(RequestContext $context)
-    {
-        $this->context = $context;
-    }
-
-    public function match($pathinfo)
-    {
-        $allow = array();
-        $pathinfo = rawurldecode($pathinfo);
-        $context = $this->context;
-        $request = $this->request;
-
-        // foo
-        if (0 === strpos($pathinfo, '/foo') && preg_match('#^/foo/(?P<bar>baz|symfony)$#s', $pathinfo, $matches)) {
-            return $this->mergeDefaults(array_replace($matches, array('_route' => 'foo')), array (  'def' => 'test',));
-        }
-
-        if (0 === strpos($pathinfo, '/bar')) {
-            // bar
-            if (preg_match('#^/bar/(?P<foo>[^/]++)$#s', $pathinfo, $matches)) {
-                if (!in_array($this->context->getMethod(), array('GET', 'HEAD'))) {
-                    $allow = array_merge($allow, array('GET', 'HEAD'));
-                    goto not_bar;
-                }
-
-                return $this->mergeDefaults(array_replace($matches, array('_route' => 'bar')), array ());
-            }
-            not_bar:
-
-            // barhead
-            if (0 === strpos($pathinfo, '/barhead') && preg_match('#^/barhead/(?P<foo>[^/]++)$#s', $pathinfo, $matches)) {
-                if (!in_array($this->context->getMethod(), array('GET', 'HEAD'))) {
-                    $allow = array_merge($allow, array('GET', 'HEAD'));
-                    goto not_barhead;
-                }
-
-                return $this->mergeDefaults(array_replace($matches, array('_route' => 'barhead')), array ());
-            }
-            not_barhead:
-
-        }
-
-        if (0 === strpos($pathinfo, '/test')) {
-            if (0 === strpos($pathinfo, '/test/baz')) {
-                // baz
-                if ($pathinfo === '/test/baz') {
-                    return array('_route' => 'baz');
-                }
-
-                // baz2
-                if ($pathinfo === '/test/baz.html') {
-                    return array('_route' => 'baz2');
-                }
-
-                // baz3
-                if (rtrim($pathinfo, '/') === '/test/baz3') {
-                    if (substr($pathinfo, -1) !== '/') {
-                        return $this->redirect($pathinfo.'/', 'baz3');
-                    }
-
-                    return array('_route' => 'baz3');
-                }
-
-            }
-
-            // baz4
-            if (preg_match('#^/test/(?P<foo>[^/]++)/?$#s', $pathinfo, $matches)) {
-                if (substr($pathinfo, -1) !== '/') {
-                    return $this->redirect($pathinfo.'/', 'baz4');
-                }
-
-                return $this->mergeDefaults(array_replace($matches, array('_route' => 'baz4')), array ());
-            }
-
-            // baz5
-            if (preg_match('#^/test/(?P<foo>[^/]++)/$#s', $pathinfo, $matches)) {
-                if ($this->context->getMethod() != 'POST') {
-                    $allow[] = 'POST';
-                    goto not_baz5;
-                }
-
-                return $this->mergeDefaults(array_replace($matches, array('_route' => 'baz5')), array ());
-            }
-            not_baz5:
-
-            // baz.baz6
-            if (preg_match('#^/test/(?P<foo>[^/]++)/$#s', $pathinfo, $matches)) {
-                if ($this->context->getMethod() != 'PUT') {
-                    $allow[] = 'PUT';
-                    goto not_bazbaz6;
-                }
-
-                return $this->mergeDefaults(array_replace($matches, array('_route' => 'baz.baz6')), array ());
-            }
-            not_bazbaz6:
-
-        }
-
-        // foofoo
-        if ($pathinfo === '/foofoo') {
-            return array (  'def' => 'test',  '_route' => 'foofoo',);
-        }
-
-        // quoter
-        if (preg_match('#^/(?P<quoter>[\']+)$#s', $pathinfo, $matches)) {
-            return $this->mergeDefaults(array_replace($matches, array('_route' => 'quoter')), array ());
-        }
-
-        // space
-        if ($pathinfo === '/spa ce') {
-            return array('_route' => 'space');
-        }
-
-        if (0 === strpos($pathinfo, '/a')) {
-            if (0 === strpos($pathinfo, '/a/b\'b')) {
-                // foo1
-                if (preg_match('#^/a/b\'b/(?P<foo>[^/]++)$#s', $pathinfo, $matches)) {
-                    return $this->mergeDefaults(array_replace($matches, array('_route' => 'foo1')), array ());
-                }
-
-                // bar1
-                if (preg_match('#^/a/b\'b/(?P<bar>[^/]++)$#s', $pathinfo, $matches)) {
-                    return $this->mergeDefaults(array_replace($matches, array('_route' => 'bar1')), array ());
-                }
-
-            }
-
-            // overridden
-            if (preg_match('#^/a/(?P<var>.*)$#s', $pathinfo, $matches)) {
-                return $this->mergeDefaults(array_replace($matches, array('_route' => 'overridden')), array ());
-            }
-
-            if (0 === strpos($pathinfo, '/a/b\'b')) {
-                // foo2
-                if (preg_match('#^/a/b\'b/(?P<foo1>[^/]++)$#s', $pathinfo, $matches)) {
-                    return $this->mergeDefaults(array_replace($matches, array('_route' => 'foo2')), array ());
-                }
-
-                // bar2
-                if (preg_match('#^/a/b\'b/(?P<bar1>[^/]++)$#s', $pathinfo, $matches)) {
-                    return $this->mergeDefaults(array_replace($matches, array('_route' => 'bar2')), array ());
-                }
-
-            }
-
-        }
-
-        if (0 === strpos($pathinfo, '/multi')) {
-            // helloWorld
-            if (0 === strpos($pathinfo, '/multi/hello') && preg_match('#^/multi/hello(?:/(?P<who>[^/]++))?$#s', $pathinfo, $matches)) {
-                return $this->mergeDefaults(array_replace($matches, array('_route' => 'helloWorld')), array (  'who' => 'World!',));
-            }
-
-            // overridden2
-            if ($pathinfo === '/multi/new') {
-                return array('_route' => 'overridden2');
-            }
-
-            // hey
-            if (rtrim($pathinfo, '/') === '/multi/hey') {
-                if (substr($pathinfo, -1) !== '/') {
-                    return $this->redirect($pathinfo.'/', 'hey');
-                }
-
-                return array('_route' => 'hey');
-            }
-
-        }
-
-        // foo3
-        if (preg_match('#^/(?P<_locale>[^/]++)/b/(?P<foo>[^/]++)$#s', $pathinfo, $matches)) {
-            return $this->mergeDefaults(array_replace($matches, array('_route' => 'foo3')), array ());
-        }
-
-        // bar3
-        if (preg_match('#^/(?P<_locale>[^/]++)/b/(?P<bar>[^/]++)$#s', $pathinfo, $matches)) {
-            return $this->mergeDefaults(array_replace($matches, array('_route' => 'bar3')), array ());
-        }
-
-        if (0 === strpos($pathinfo, '/aba')) {
-            // ababa
-            if ($pathinfo === '/ababa') {
-                return array('_route' => 'ababa');
-            }
-
-            // foo4
-            if (preg_match('#^/aba/(?P<foo>[^/]++)$#s', $pathinfo, $matches)) {
-                return $this->mergeDefaults(array_replace($matches, array('_route' => 'foo4')), array ());
-            }
-
-        }
-
-        $host = $this->context->getHost();
-
-        if (preg_match('#^a\\.example\\.com$#si', $host, $hostMatches)) {
-            // route1
-            if ($pathinfo === '/route1') {
-                return array('_route' => 'route1');
-            }
-
-            // route2
-            if ($pathinfo === '/c2/route2') {
-                return array('_route' => 'route2');
-            }
-
-        }
-
-        if (preg_match('#^b\\.example\\.com$#si', $host, $hostMatches)) {
-            // route3
-            if ($pathinfo === '/c2/route3') {
-                return array('_route' => 'route3');
-            }
-
-        }
-
-        if (preg_match('#^a\\.example\\.com$#si', $host, $hostMatches)) {
-            // route4
-            if ($pathinfo === '/route4') {
-                return array('_route' => 'route4');
-            }
-
-        }
-
-        if (preg_match('#^c\\.example\\.com$#si', $host, $hostMatches)) {
-            // route5
-            if ($pathinfo === '/route5') {
-                return array('_route' => 'route5');
-            }
-
-        }
-
-        // route6
-        if ($pathinfo === '/route6') {
-            return array('_route' => 'route6');
-        }
-
-        if (preg_match('#^(?P<var1>[^\\.]++)\\.example\\.com$#si', $host, $hostMatches)) {
-            if (0 === strpos($pathinfo, '/route1')) {
-                // route11
-                if ($pathinfo === '/route11') {
-                    return $this->mergeDefaults(array_replace($hostMatches, array('_route' => 'route11')), array ());
-                }
-
-                // route12
-                if ($pathinfo === '/route12') {
-                    return $this->mergeDefaults(array_replace($hostMatches, array('_route' => 'route12')), array (  'var1' => 'val',));
-                }
-
-                // route13
-                if (0 === strpos($pathinfo, '/route13') && preg_match('#^/route13/(?P<name>[^/]++)$#s', $pathinfo, $matches)) {
-                    return $this->mergeDefaults(array_replace($hostMatches, $matches, array('_route' => 'route13')), array ());
-                }
-
-                // route14
-                if (0 === strpos($pathinfo, '/route14') && preg_match('#^/route14/(?P<name>[^/]++)$#s', $pathinfo, $matches)) {
-                    return $this->mergeDefaults(array_replace($hostMatches, $matches, array('_route' => 'route14')), array (  'var1' => 'val',));
-                }
-
-            }
-
-        }
-
-        if (preg_match('#^c\\.example\\.com$#si', $host, $hostMatches)) {
-            // route15
-            if (0 === strpos($pathinfo, '/route15') && preg_match('#^/route15/(?P<name>[^/]++)$#s', $pathinfo, $matches)) {
-                return $this->mergeDefaults(array_replace($matches, array('_route' => 'route15')), array ());
-            }
-
-        }
-
-        if (0 === strpos($pathinfo, '/route1')) {
-            // route16
-            if (0 === strpos($pathinfo, '/route16') && preg_match('#^/route16/(?P<name>[^/]++)$#s', $pathinfo, $matches)) {
-                return $this->mergeDefaults(array_replace($matches, array('_route' => 'route16')), array (  'var1' => 'val',));
-            }
-
-            // route17
-            if ($pathinfo === '/route17') {
-                return array('_route' => 'route17');
-            }
-
-        }
-
-        if (0 === strpos($pathinfo, '/a')) {
-            // a
-            if ($pathinfo === '/a/a...') {
-                return array('_route' => 'a');
-            }
-
-            if (0 === strpos($pathinfo, '/a/b')) {
-                // b
-                if (preg_match('#^/a/b/(?P<var>[^/]++)$#s', $pathinfo, $matches)) {
-                    return $this->mergeDefaults(array_replace($matches, array('_route' => 'b')), array ());
-                }
-
-                // c
-                if (0 === strpos($pathinfo, '/a/b/c') && preg_match('#^/a/b/c/(?P<var>[^/]++)$#s', $pathinfo, $matches)) {
-                    return $this->mergeDefaults(array_replace($matches, array('_route' => 'c')), array ());
-                }
-
-            }
-
-        }
-
-        // secure
-        if ($pathinfo === '/secure') {
-            $requiredSchemes = array (  'https' => 0,);
-            if (!isset($requiredSchemes[$this->context->getScheme()])) {
-                return $this->redirect($pathinfo, 'secure', key($requiredSchemes));
-            }
-
-            return array('_route' => 'secure');
-        }
-
-        // nonsecure
-        if ($pathinfo === '/nonsecure') {
-            $requiredSchemes = array (  'http' => 0,);
-            if (!isset($requiredSchemes[$this->context->getScheme()])) {
-                return $this->redirect($pathinfo, 'nonsecure', key($requiredSchemes));
-            }
-
-            return array('_route' => 'nonsecure');
-        }
-
-        throw 0 < count($allow) ? new MethodNotAllowedException(array_unique($allow)) : new ResourceNotFoundException();
-    }
-}
diff --git a/vendor/symfony/routing/Tests/Fixtures/dumper/url_matcher3.php b/vendor/symfony/routing/Tests/Fixtures/dumper/url_matcher3.php
deleted file mode 100644
index d9da7b0..0000000
--- a/vendor/symfony/routing/Tests/Fixtures/dumper/url_matcher3.php
+++ /dev/null
@@ -1,50 +0,0 @@
-<?php
-
-use Symfony\Component\Routing\Exception\MethodNotAllowedException;
-use Symfony\Component\Routing\Exception\ResourceNotFoundException;
-use Symfony\Component\Routing\RequestContext;
-
-/**
- * ProjectUrlMatcher.
- *
- * This class has been auto-generated
- * by the Symfony Routing Component.
- */
-class ProjectUrlMatcher extends Symfony\Component\Routing\Matcher\UrlMatcher
-{
-    /**
-     * Constructor.
-     */
-    public function __construct(RequestContext $context)
-    {
-        $this->context = $context;
-    }
-
-    public function match($pathinfo)
-    {
-        $allow = array();
-        $pathinfo = rawurldecode($pathinfo);
-        $context = $this->context;
-        $request = $this->request;
-
-        if (0 === strpos($pathinfo, '/rootprefix')) {
-            // static
-            if ($pathinfo === '/rootprefix/test') {
-                return array('_route' => 'static');
-            }
-
-            // dynamic
-            if (preg_match('#^/rootprefix/(?P<var>[^/]++)$#s', $pathinfo, $matches)) {
-                return $this->mergeDefaults(array_replace($matches, array('_route' => 'dynamic')), array ());
-            }
-
-        }
-
-        // with-condition
-        if ($pathinfo === '/with-condition' && ($context->getMethod() == "GET")) {
-            return array('_route' => 'with-condition');
-        }
-
-        throw 0 < count($allow) ? new MethodNotAllowedException(array_unique($allow)) : new ResourceNotFoundException();
-    }
-}
diff --git a/vendor/symfony/routing/Tests/Fixtures/empty.yml b/vendor/symfony/routing/Tests/Fixtures/empty.yml
deleted file mode 100644
index e69de29..0000000
diff --git a/vendor/symfony/routing/Tests/Fixtures/foo.xml b/vendor/symfony/routing/Tests/Fixtures/foo.xml
deleted file mode 100644
index e69de29..0000000
diff --git a/vendor/symfony/routing/Tests/Fixtures/foo1.xml b/vendor/symfony/routing/Tests/Fixtures/foo1.xml
deleted file mode 100644
index e69de29..0000000
diff --git a/vendor/symfony/routing/Tests/Fixtures/incomplete.yml b/vendor/symfony/routing/Tests/Fixtures/incomplete.yml
deleted file mode 100644
index df64d32..0000000
--- a/vendor/symfony/routing/Tests/Fixtures/incomplete.yml
+++ /dev/null
@@ -1,2 +0,0 @@
-blog_show:
-    defaults:  { _controller: MyBlogBundle:Blog:show }
diff --git a/vendor/symfony/routing/Tests/Fixtures/legacy_validpattern.xml b/vendor/symfony/routing/Tests/Fixtures/legacy_validpattern.xml
deleted file mode 100644
index a01ebca..0000000
--- a/vendor/symfony/routing/Tests/Fixtures/legacy_validpattern.xml
+++ /dev/null
@@ -1,16 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" ?>
-
-<routes xmlns="http://symfony.com/schema/routing"
-    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-    xsi:schemaLocation="http://symfony.com/schema/routing http://symfony.com/schema/routing/routing-1.0.xsd">
-
-    <route id="blog_show_legacy" pattern="/blog/{slug}" host="{locale}.example.com">
-        <default key="_controller">MyBundle:Blog:show</default>
-        <default key="slug" xsi:nil="true" />
-        <requirement key="_method">GET|POST|put|OpTiOnS</requirement>
-        <requirement key="_scheme">hTTps</requirement>
-        <requirement key="locale">\w+</requirement>
-        <option key="compiler_class">RouteCompiler</option>
-        <condition>context.getMethod() == "GET"</condition>
-    </route>
-</routes>
diff --git a/vendor/symfony/routing/Tests/Fixtures/legacy_validpattern.yml b/vendor/symfony/routing/Tests/Fixtures/legacy_validpattern.yml
deleted file mode 100644
index ada65f0..0000000
--- a/vendor/symfony/routing/Tests/Fixtures/legacy_validpattern.yml
+++ /dev/null
@@ -1,8 +0,0 @@
-blog_show_legacy:
-    pattern:      /blog/{slug}
-    defaults:     { _controller: "MyBundle:Blog:show" }
-    host:         "{locale}.example.com"
-    requirements: { '_method': 'GET|POST|put|OpTiOnS', _scheme: https, 'locale': '\w+' }
-    condition:    'context.getMethod() == "GET"'
-    options:
-        compiler_class: RouteCompiler
diff --git a/vendor/symfony/routing/Tests/Fixtures/missing_id.xml b/vendor/symfony/routing/Tests/Fixtures/missing_id.xml
deleted file mode 100644
index 4ea4115..0000000
--- a/vendor/symfony/routing/Tests/Fixtures/missing_id.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" ?>
-
-<routes xmlns="http://symfony.com/schema/routing"
-    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-    xsi:schemaLocation="http://symfony.com/schema/routing http://symfony.com/schema/routing/routing-1.0.xsd">
-
-    <route path="/test"></route>
-</routes>
diff --git a/vendor/symfony/routing/Tests/Fixtures/missing_path.xml b/vendor/symfony/routing/Tests/Fixtures/missing_path.xml
deleted file mode 100644
index ef5bc08..0000000
--- a/vendor/symfony/routing/Tests/Fixtures/missing_path.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" ?>
-
-<routes xmlns="http://symfony.com/schema/routing"
-    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-    xsi:schemaLocation="http://symfony.com/schema/routing http://symfony.com/schema/routing/routing-1.0.xsd">
-
-    <route id="myroute"></route>
-</routes>
diff --git a/vendor/symfony/routing/Tests/Fixtures/namespaceprefix.xml b/vendor/symfony/routing/Tests/Fixtures/namespaceprefix.xml
deleted file mode 100644
index bdd6a47..0000000
--- a/vendor/symfony/routing/Tests/Fixtures/namespaceprefix.xml
+++ /dev/null
@@ -1,13 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" ?>
-
-<r:routes xmlns:r="http://symfony.com/schema/routing"
-    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-    xsi:schemaLocation="http://symfony.com/schema/routing http://symfony.com/schema/routing/routing-1.0.xsd">
-
-    <r:route id="blog_show" path="/blog/{slug}" host="{_locale}.example.com">
-        <r:default key="_controller">MyBundle:Blog:show</r:default>
-        <requirement xmlns="http://symfony.com/schema/routing" key="slug">\w+</requirement>
-        <r2:requirement xmlns:r2="http://symfony.com/schema/routing" key="_locale">en|fr|de</r2:requirement>
-        <r:option key="compiler_class">RouteCompiler</r:option>
-    </r:route>
-</r:routes>
diff --git a/vendor/symfony/routing/Tests/Fixtures/nonesense_resource_plus_path.yml b/vendor/symfony/routing/Tests/Fixtures/nonesense_resource_plus_path.yml
deleted file mode 100644
index a3e9473..0000000
--- a/vendor/symfony/routing/Tests/Fixtures/nonesense_resource_plus_path.yml
+++ /dev/null
@@ -1,3 +0,0 @@
-blog_show:
-    resource: validpattern.yml
-    path:     /test
diff --git a/vendor/symfony/routing/Tests/Fixtures/nonesense_type_without_resource.yml b/vendor/symfony/routing/Tests/Fixtures/nonesense_type_without_resource.yml
deleted file mode 100644
index 547cda3..0000000
--- a/vendor/symfony/routing/Tests/Fixtures/nonesense_type_without_resource.yml
+++ /dev/null
@@ -1,3 +0,0 @@
-blog_show:
-    path:    /blog/{slug}
-    type:    custom
diff --git a/vendor/symfony/routing/Tests/Fixtures/nonvalid.xml b/vendor/symfony/routing/Tests/Fixtures/nonvalid.xml
deleted file mode 100644
index dc147d2..0000000
--- a/vendor/symfony/routing/Tests/Fixtures/nonvalid.xml
+++ /dev/null
@@ -1,10 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" ?>
-
-<routes xmlns="http://symfony.com/schema/routing"
-    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-    xsi:schemaLocation="http://symfony.com/schema/routing http://symfony.com/schema/routing/routing-1.0.xsd">
-
-    <route id="blog_show" path="/blog/{slug}">
-        <default key="_controller">MyBundle:Blog:show</default>
-    <!-- </route> -->
-</routes>
diff --git a/vendor/symfony/routing/Tests/Fixtures/nonvalid.yml b/vendor/symfony/routing/Tests/Fixtures/nonvalid.yml
deleted file mode 100644
index 257cc56..0000000
--- a/vendor/symfony/routing/Tests/Fixtures/nonvalid.yml
+++ /dev/null
@@ -1 +0,0 @@
-foo
diff --git a/vendor/symfony/routing/Tests/Fixtures/nonvalid2.yml b/vendor/symfony/routing/Tests/Fixtures/nonvalid2.yml
deleted file mode 100644
index cfa9992..0000000
--- a/vendor/symfony/routing/Tests/Fixtures/nonvalid2.yml
+++ /dev/null
@@ -1 +0,0 @@
-route: string
diff --git a/vendor/symfony/routing/Tests/Fixtures/nonvalidkeys.yml b/vendor/symfony/routing/Tests/Fixtures/nonvalidkeys.yml
deleted file mode 100644
index 015e270..0000000
--- a/vendor/symfony/routing/Tests/Fixtures/nonvalidkeys.yml
+++ /dev/null
@@ -1,3 +0,0 @@
-someroute:
-  resource: path/to/some.yml
-  name_prefix: test_
diff --git a/vendor/symfony/routing/Tests/Fixtures/nonvalidnode.xml b/vendor/symfony/routing/Tests/Fixtures/nonvalidnode.xml
deleted file mode 100644
index 863ef03..0000000
--- a/vendor/symfony/routing/Tests/Fixtures/nonvalidnode.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" ?>
-
-<routes xmlns="http://symfony.com/schema/routing"
-    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-    xsi:schemaLocation="http://symfony.com/schema/routing http://symfony.com/schema/routing/routing-1.0.xsd">
-
-    <foo>bar</foo>
-</routes>
diff --git a/vendor/symfony/routing/Tests/Fixtures/nonvalidroute.xml b/vendor/symfony/routing/Tests/Fixtures/nonvalidroute.xml
deleted file mode 100644
index 908958c..0000000
--- a/vendor/symfony/routing/Tests/Fixtures/nonvalidroute.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" ?>
-
-<routes xmlns="http://symfony.com/schema/routing"
-    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-    xsi:schemaLocation="http://symfony.com/schema/routing http://symfony.com/schema/routing/routing-1.0.xsd">
-
-    <route id="blog_show" path="/blog/{slug}">
-        <default key="_controller">MyBundle:Blog:show</default>
-        <option key="compiler_class">RouteCompiler</option>
-        <foo key="bar">baz</foo>
-    </route>
-</routes>
diff --git a/vendor/symfony/routing/Tests/Fixtures/null_values.xml b/vendor/symfony/routing/Tests/Fixtures/null_values.xml
deleted file mode 100644
index f9e2aa2..0000000
--- a/vendor/symfony/routing/Tests/Fixtures/null_values.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" ?>
-<routes xmlns="http://symfony.com/schema/routing"
-    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-    xsi:schemaLocation="http://symfony.com/schema/routing http://symfony.com/schema/routing/routing-1.0.xsd">
-
-    <route id="blog_show" path="/blog/{slug}">
-        <default key="foo" xsi:nil="true" />
-        <default key="bar" xsi:nil="1" />
-        <default key="foobar" xsi:nil="false">foo</default>
-        <default key="baz" xsi:nil="0">bar</default>
-    </route>
-</routes>
diff --git a/vendor/symfony/routing/Tests/Fixtures/special_route_name.yml b/vendor/symfony/routing/Tests/Fixtures/special_route_name.yml
deleted file mode 100644
index 78be239..0000000
--- a/vendor/symfony/routing/Tests/Fixtures/special_route_name.yml
+++ /dev/null
@@ -1,2 +0,0 @@
-"#$péß^a|":
-    path: "true"
diff --git a/vendor/symfony/routing/Tests/Fixtures/validpattern.php b/vendor/symfony/routing/Tests/Fixtures/validpattern.php
deleted file mode 100644
index edc16d8..0000000
--- a/vendor/symfony/routing/Tests/Fixtures/validpattern.php
+++ /dev/null
@@ -1,18 +0,0 @@
-<?php
-
-use Symfony\Component\Routing\RouteCollection;
-use Symfony\Component\Routing\Route;
-
-$collection = new RouteCollection();
-$collection->add('blog_show', new Route(
-    '/blog/{slug}',
-    array('_controller' => 'MyBlogBundle:Blog:show'),
-    array('locale' => '\w+'),
-    array('compiler_class' => 'RouteCompiler'),
-    '{locale}.example.com',
-    array('https'),
-    array('GET', 'POST', 'put', 'OpTiOnS'),
-    'context.getMethod() == "GET"'
-));
-
-return $collection;
diff --git a/vendor/symfony/routing/Tests/Fixtures/validpattern.xml b/vendor/symfony/routing/Tests/Fixtures/validpattern.xml
deleted file mode 100644
index dbc72e4..0000000
--- a/vendor/symfony/routing/Tests/Fixtures/validpattern.xml
+++ /dev/null
@@ -1,15 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" ?>
-
-<routes xmlns="http://symfony.com/schema/routing"
-    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-    xsi:schemaLocation="http://symfony.com/schema/routing http://symfony.com/schema/routing/routing-1.0.xsd">
-
-    <route id="blog_show" path="/blog/{slug}" host="{locale}.example.com" methods="GET|POST  put,OpTiOnS" schemes="hTTps">
-        <default key="_controller">MyBundle:Blog:show</default>
-        <requirement key="locale">\w+</requirement>
-        <option key="compiler_class">RouteCompiler</option>
-        <condition>context.getMethod() == "GET"</condition>
-    </route>
-
-    <route id="blog_show_inherited" path="/blog/{slug}" />
-</routes>
diff --git a/vendor/symfony/routing/Tests/Fixtures/validpattern.yml b/vendor/symfony/routing/Tests/Fixtures/validpattern.yml
deleted file mode 100644
index 565abaa..0000000
--- a/vendor/symfony/routing/Tests/Fixtures/validpattern.yml
+++ /dev/null
@@ -1,13 +0,0 @@
-blog_show:
-    path:         /blog/{slug}
-    defaults:     { _controller: "MyBundle:Blog:show" }
-    host:         "{locale}.example.com"
-    requirements: { 'locale': '\w+' }
-    methods:      ['GET','POST','put','OpTiOnS']
-    schemes:      ['https']
-    condition:    'context.getMethod() == "GET"'
-    options:
-        compiler_class: RouteCompiler
-
-blog_show_inherited:
-    path:      /blog/{slug}
diff --git a/vendor/symfony/routing/Tests/Fixtures/validresource.php b/vendor/symfony/routing/Tests/Fixtures/validresource.php
deleted file mode 100644
index 482c80b..0000000
--- a/vendor/symfony/routing/Tests/Fixtures/validresource.php
+++ /dev/null
@@ -1,18 +0,0 @@
-<?php
-
-/** @var $loader \Symfony\Component\Routing\Loader\PhpFileLoader */
-/** @var \Symfony\Component\Routing\RouteCollection $collection */
-$collection = $loader->import('validpattern.php');
-$collection->addDefaults(array(
-    'foo' => 123,
-));
-$collection->addRequirements(array(
-    'foo' => '\d+',
-));
-$collection->addOptions(array(
-    'foo' => 'bar',
-));
-$collection->setCondition('context.getMethod() == "POST"');
-$collection->addPrefix('/prefix');
-
-return $collection;
diff --git a/vendor/symfony/routing/Tests/Fixtures/validresource.xml b/vendor/symfony/routing/Tests/Fixtures/validresource.xml
deleted file mode 100644
index b7a15dd..0000000
--- a/vendor/symfony/routing/Tests/Fixtures/validresource.xml
+++ /dev/null
@@ -1,13 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" ?>
-
-<routes xmlns="http://symfony.com/schema/routing"
-    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-    xsi:schemaLocation="http://symfony.com/schema/routing http://symfony.com/schema/routing/routing-1.0.xsd">
-
-    <import resource="validpattern.xml" prefix="/{foo}" host="">
-        <default key="foo">123</default>
-        <requirement key="foo">\d+</requirement>
-        <option key="foo">bar</option>
-        <condition>context.getMethod() == "POST"</condition>
-    </import>
-</routes>
diff --git a/vendor/symfony/routing/Tests/Fixtures/validresource.yml b/vendor/symfony/routing/Tests/Fixtures/validresource.yml
deleted file mode 100644
index faf2263..0000000
--- a/vendor/symfony/routing/Tests/Fixtures/validresource.yml
+++ /dev/null
@@ -1,8 +0,0 @@
-_blog:
-    resource:     validpattern.yml
-    prefix:       /{foo}
-    defaults:     { 'foo': '123' }
-    requirements: { 'foo': '\d+' }
-    options:      { 'foo': 'bar' }
-    host:         ""
-    condition:    'context.getMethod() == "POST"'
diff --git a/vendor/symfony/routing/Tests/Fixtures/with_define_path_variable.php b/vendor/symfony/routing/Tests/Fixtures/with_define_path_variable.php
deleted file mode 100644
index 5871420..0000000
--- a/vendor/symfony/routing/Tests/Fixtures/with_define_path_variable.php
+++ /dev/null
@@ -1,5 +0,0 @@
-<?php
-
-$path = '/1/2/3';
-
-return new \Symfony\Component\Routing\RouteCollection();
diff --git a/vendor/symfony/routing/Tests/Fixtures/withdoctype.xml b/vendor/symfony/routing/Tests/Fixtures/withdoctype.xml
deleted file mode 100644
index f217d5b..0000000
--- a/vendor/symfony/routing/Tests/Fixtures/withdoctype.xml
+++ /dev/null
@@ -1,3 +0,0 @@
-<?xml version="1.0"?>
-<!DOCTYPE foo>
-<foo></foo>
diff --git a/vendor/symfony/routing/Tests/Generator/Dumper/PhpGeneratorDumperTest.php b/vendor/symfony/routing/Tests/Generator/Dumper/PhpGeneratorDumperTest.php
deleted file mode 100644
index 525b9f5..0000000
--- a/vendor/symfony/routing/Tests/Generator/Dumper/PhpGeneratorDumperTest.php
+++ /dev/null
@@ -1,141 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Routing\Tests\Generator\Dumper;
-
-use Symfony\Component\Routing\RouteCollection;
-use Symfony\Component\Routing\Route;
-use Symfony\Component\Routing\Generator\Dumper\PhpGeneratorDumper;
-use Symfony\Component\Routing\RequestContext;
-
-class PhpGeneratorDumperTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @var RouteCollection
-     */
-    private $routeCollection;
-
-    /**
-     * @var PhpGeneratorDumper
-     */
-    private $generatorDumper;
-
-    /**
-     * @var string
-     */
-    private $testTmpFilepath;
-
-    protected function setUp()
-    {
-        parent::setUp();
-
-        $this->routeCollection = new RouteCollection();
-        $this->generatorDumper = new PhpGeneratorDumper($this->routeCollection);
-        $this->testTmpFilepath = sys_get_temp_dir().DIRECTORY_SEPARATOR.'php_generator.'.$this->getName().'.php';
-        @unlink($this->testTmpFilepath);
-    }
-
-    protected function tearDown()
-    {
-        parent::tearDown();
-
-        @unlink($this->testTmpFilepath);
-
-        $this->routeCollection = null;
-        $this->generatorDumper = null;
-        $this->testTmpFilepath = null;
-    }
-
-    public function testDumpWithRoutes()
-    {
-        $this->routeCollection->add('Test', new Route('/testing/{foo}'));
-        $this->routeCollection->add('Test2', new Route('/testing2'));
-
-        file_put_contents($this->testTmpFilepath, $this->generatorDumper->dump());
-        include $this->testTmpFilepath;
-
-        $projectUrlGenerator = new \ProjectUrlGenerator(new RequestContext('/app.php'));
-
-        $absoluteUrlWithParameter = $projectUrlGenerator->generate('Test', array('foo' => 'bar'), true);
-        $absoluteUrlWithoutParameter = $projectUrlGenerator->generate('Test2', array(), true);
-        $relativeUrlWithParameter = $projectUrlGenerator->generate('Test', array('foo' => 'bar'), false);
-        $relativeUrlWithoutParameter = $projectUrlGenerator->generate('Test2', array(), false);
-
-        $this->assertEquals($absoluteUrlWithParameter, 'http://localhost/app.php/testing/bar');
-        $this->assertEquals($absoluteUrlWithoutParameter, 'http://localhost/app.php/testing2');
-        $this->assertEquals($relativeUrlWithParameter, '/app.php/testing/bar');
-        $this->assertEquals($relativeUrlWithoutParameter, '/app.php/testing2');
-    }
-
-    /**
-     * @expectedException \InvalidArgumentException
-     */
-    public function testDumpWithoutRoutes()
-    {
-        file_put_contents($this->testTmpFilepath, $this->generatorDumper->dump(array('class' => 'WithoutRoutesUrlGenerator')));
-        include $this->testTmpFilepath;
-
-        $projectUrlGenerator = new \WithoutRoutesUrlGenerator(new RequestContext('/app.php'));
-
-        $projectUrlGenerator->generate('Test', array());
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Routing\Exception\RouteNotFoundException
-     */
-    public function testGenerateNonExistingRoute()
-    {
-        $this->routeCollection->add('Test', new Route('/test'));
-
-        file_put_contents($this->testTmpFilepath, $this->generatorDumper->dump(array('class' => 'NonExistingRoutesUrlGenerator')));
-        include $this->testTmpFilepath;
-
-        $projectUrlGenerator = new \NonExistingRoutesUrlGenerator(new RequestContext());
-        $url = $projectUrlGenerator->generate('NonExisting', array());
-    }
-
-    public function testDumpForRouteWithDefaults()
-    {
-        $this->routeCollection->add('Test', new Route('/testing/{foo}', array('foo' => 'bar')));
-
-        file_put_contents($this->testTmpFilepath, $this->generatorDumper->dump(array('class' => 'DefaultRoutesUrlGenerator')));
-        include $this->testTmpFilepath;
-
-        $projectUrlGenerator = new \DefaultRoutesUrlGenerator(new RequestContext());
-        $url = $projectUrlGenerator->generate('Test', array());
-
-        $this->assertEquals($url, '/testing');
-    }
-
-    public function testDumpWithSchemeRequirement()
-    {
-        $this->routeCollection->add('Test1', new Route('/testing', array(), array(), array(), '', array('ftp', 'https')));
-
-        file_put_contents($this->testTmpFilepath, $this->generatorDumper->dump(array('class' => 'SchemeUrlGenerator')));
-        include $this->testTmpFilepath;
-
-        $projectUrlGenerator = new \SchemeUrlGenerator(new RequestContext('/app.php'));
-
-        $absoluteUrl = $projectUrlGenerator->generate('Test1', array(), true);
-        $relativeUrl = $projectUrlGenerator->generate('Test1', array(), false);
-
-        $this->assertEquals($absoluteUrl, 'ftp://localhost/app.php/testing');
-        $this->assertEquals($relativeUrl, 'ftp://localhost/app.php/testing');
-
-        $projectUrlGenerator = new \SchemeUrlGenerator(new RequestContext('/app.php', 'GET', 'localhost', 'https'));
-
-        $absoluteUrl = $projectUrlGenerator->generate('Test1', array(), true);
-        $relativeUrl = $projectUrlGenerator->generate('Test1', array(), false);
-
-        $this->assertEquals($absoluteUrl, 'https://localhost/app.php/testing');
-        $this->assertEquals($relativeUrl, '/app.php/testing');
-    }
-}
diff --git a/vendor/symfony/routing/Tests/Generator/UrlGeneratorTest.php b/vendor/symfony/routing/Tests/Generator/UrlGeneratorTest.php
deleted file mode 100644
index 29460c7..0000000
--- a/vendor/symfony/routing/Tests/Generator/UrlGeneratorTest.php
+++ /dev/null
@@ -1,665 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Routing\Tests\Generator;
-
-use Symfony\Component\Routing\RouteCollection;
-use Symfony\Component\Routing\Route;
-use Symfony\Component\Routing\Generator\UrlGenerator;
-use Symfony\Component\Routing\Generator\UrlGeneratorInterface;
-use Symfony\Component\Routing\RequestContext;
-
-class UrlGeneratorTest extends \PHPUnit_Framework_TestCase
-{
-    public function testAbsoluteUrlWithPort80()
-    {
-        $routes = $this->getRoutes('test', new Route('/testing'));
-        $url = $this->getGenerator($routes)->generate('test', array(), true);
-
-        $this->assertEquals('http://localhost/app.php/testing', $url);
-    }
-
-    public function testAbsoluteSecureUrlWithPort443()
-    {
-        $routes = $this->getRoutes('test', new Route('/testing'));
-        $url = $this->getGenerator($routes, array('scheme' => 'https'))->generate('test', array(), true);
-
-        $this->assertEquals('https://localhost/app.php/testing', $url);
-    }
-
-    public function testAbsoluteUrlWithNonStandardPort()
-    {
-        $routes = $this->getRoutes('test', new Route('/testing'));
-        $url = $this->getGenerator($routes, array('httpPort' => 8080))->generate('test', array(), true);
-
-        $this->assertEquals('http://localhost:8080/app.php/testing', $url);
-    }
-
-    public function testAbsoluteSecureUrlWithNonStandardPort()
-    {
-        $routes = $this->getRoutes('test', new Route('/testing'));
-        $url = $this->getGenerator($routes, array('httpsPort' => 8080, 'scheme' => 'https'))->generate('test', array(), true);
-
-        $this->assertEquals('https://localhost:8080/app.php/testing', $url);
-    }
-
-    public function testRelativeUrlWithoutParameters()
-    {
-        $routes = $this->getRoutes('test', new Route('/testing'));
-        $url = $this->getGenerator($routes)->generate('test', array(), false);
-
-        $this->assertEquals('/app.php/testing', $url);
-    }
-
-    public function testRelativeUrlWithParameter()
-    {
-        $routes = $this->getRoutes('test', new Route('/testing/{foo}'));
-        $url = $this->getGenerator($routes)->generate('test', array('foo' => 'bar'), false);
-
-        $this->assertEquals('/app.php/testing/bar', $url);
-    }
-
-    public function testRelativeUrlWithNullParameter()
-    {
-        $routes = $this->getRoutes('test', new Route('/testing.{format}', array('format' => null)));
-        $url = $this->getGenerator($routes)->generate('test', array(), false);
-
-        $this->assertEquals('/app.php/testing', $url);
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Routing\Exception\InvalidParameterException
-     */
-    public function testRelativeUrlWithNullParameterButNotOptional()
-    {
-        $routes = $this->getRoutes('test', new Route('/testing/{foo}/bar', array('foo' => null)));
-        // This must raise an exception because the default requirement for "foo" is "[^/]+" which is not met with these params.
-        // Generating path "/testing//bar" would be wrong as matching this route would fail.
-        $this->getGenerator($routes)->generate('test', array(), false);
-    }
-
-    public function testRelativeUrlWithOptionalZeroParameter()
-    {
-        $routes = $this->getRoutes('test', new Route('/testing/{page}'));
-        $url = $this->getGenerator($routes)->generate('test', array('page' => 0), false);
-
-        $this->assertEquals('/app.php/testing/0', $url);
-    }
-
-    public function testNotPassedOptionalParameterInBetween()
-    {
-        $routes = $this->getRoutes('test', new Route('/{slug}/{page}', array('slug' => 'index', 'page' => 0)));
-        $this->assertSame('/app.php/index/1', $this->getGenerator($routes)->generate('test', array('page' => 1)));
-        $this->assertSame('/app.php/', $this->getGenerator($routes)->generate('test'));
-    }
-
-    public function testRelativeUrlWithExtraParameters()
-    {
-        $routes = $this->getRoutes('test', new Route('/testing'));
-        $url = $this->getGenerator($routes)->generate('test', array('foo' => 'bar'), false);
-
-        $this->assertEquals('/app.php/testing?foo=bar', $url);
-    }
-
-    public function testAbsoluteUrlWithExtraParameters()
-    {
-        $routes = $this->getRoutes('test', new Route('/testing'));
-        $url = $this->getGenerator($routes)->generate('test', array('foo' => 'bar'), true);
-
-        $this->assertEquals('http://localhost/app.php/testing?foo=bar', $url);
-    }
-
-    public function testUrlWithNullExtraParameters()
-    {
-        $routes = $this->getRoutes('test', new Route('/testing'));
-        $url = $this->getGenerator($routes)->generate('test', array('foo' => null), true);
-
-        $this->assertEquals('http://localhost/app.php/testing', $url);
-    }
-
-    public function testUrlWithExtraParametersFromGlobals()
-    {
-        $routes = $this->getRoutes('test', new Route('/testing'));
-        $generator = $this->getGenerator($routes);
-        $context = new RequestContext('/app.php');
-        $context->setParameter('bar', 'bar');
-        $generator->setContext($context);
-        $url = $generator->generate('test', array('foo' => 'bar'));
-
-        $this->assertEquals('/app.php/testing?foo=bar', $url);
-    }
-
-    public function testUrlWithGlobalParameter()
-    {
-        $routes = $this->getRoutes('test', new Route('/testing/{foo}'));
-        $generator = $this->getGenerator($routes);
-        $context = new RequestContext('/app.php');
-        $context->setParameter('foo', 'bar');
-        $generator->setContext($context);
-        $url = $generator->generate('test', array());
-
-        $this->assertEquals('/app.php/testing/bar', $url);
-    }
-
-    public function testGlobalParameterHasHigherPriorityThanDefault()
-    {
-        $routes = $this->getRoutes('test', new Route('/{_locale}', array('_locale' => 'en')));
-        $generator = $this->getGenerator($routes);
-        $context = new RequestContext('/app.php');
-        $context->setParameter('_locale', 'de');
-        $generator->setContext($context);
-        $url = $generator->generate('test', array());
-
-        $this->assertSame('/app.php/de', $url);
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Routing\Exception\RouteNotFoundException
-     */
-    public function testGenerateWithoutRoutes()
-    {
-        $routes = $this->getRoutes('foo', new Route('/testing/{foo}'));
-        $this->getGenerator($routes)->generate('test', array(), true);
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Routing\Exception\MissingMandatoryParametersException
-     */
-    public function testGenerateForRouteWithoutMandatoryParameter()
-    {
-        $routes = $this->getRoutes('test', new Route('/testing/{foo}'));
-        $this->getGenerator($routes)->generate('test', array(), true);
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Routing\Exception\InvalidParameterException
-     */
-    public function testGenerateForRouteWithInvalidOptionalParameter()
-    {
-        $routes = $this->getRoutes('test', new Route('/testing/{foo}', array('foo' => '1'), array('foo' => 'd+')));
-        $this->getGenerator($routes)->generate('test', array('foo' => 'bar'), true);
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Routing\Exception\InvalidParameterException
-     */
-    public function testGenerateForRouteWithInvalidParameter()
-    {
-        $routes = $this->getRoutes('test', new Route('/testing/{foo}', array(), array('foo' => '1|2')));
-        $this->getGenerator($routes)->generate('test', array('foo' => '0'), true);
-    }
-
-    public function testGenerateForRouteWithInvalidOptionalParameterNonStrict()
-    {
-        $routes = $this->getRoutes('test', new Route('/testing/{foo}', array('foo' => '1'), array('foo' => 'd+')));
-        $generator = $this->getGenerator($routes);
-        $generator->setStrictRequirements(false);
-        $this->assertNull($generator->generate('test', array('foo' => 'bar'), true));
-    }
-
-    public function testGenerateForRouteWithInvalidOptionalParameterNonStrictWithLogger()
-    {
-        $routes = $this->getRoutes('test', new Route('/testing/{foo}', array('foo' => '1'), array('foo' => 'd+')));
-        $logger = $this->getMock('Psr\Log\LoggerInterface');
-        $logger->expects($this->once())
-            ->method('error');
-        $generator = $this->getGenerator($routes, array(), $logger);
-        $generator->setStrictRequirements(false);
-        $this->assertNull($generator->generate('test', array('foo' => 'bar'), true));
-    }
-
-    public function testGenerateForRouteWithInvalidParameterButDisabledRequirementsCheck()
-    {
-        $routes = $this->getRoutes('test', new Route('/testing/{foo}', array('foo' => '1'), array('foo' => 'd+')));
-        $generator = $this->getGenerator($routes);
-        $generator->setStrictRequirements(null);
-        $this->assertSame('/app.php/testing/bar', $generator->generate('test', array('foo' => 'bar')));
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Routing\Exception\InvalidParameterException
-     */
-    public function testGenerateForRouteWithInvalidMandatoryParameter()
-    {
-        $routes = $this->getRoutes('test', new Route('/testing/{foo}', array(), array('foo' => 'd+')));
-        $this->getGenerator($routes)->generate('test', array('foo' => 'bar'), true);
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Routing\Exception\InvalidParameterException
-     */
-    public function testRequiredParamAndEmptyPassed()
-    {
-        $routes = $this->getRoutes('test', new Route('/{slug}', array(), array('slug' => '.+')));
-        $this->getGenerator($routes)->generate('test', array('slug' => ''));
-    }
-
-    public function testSchemeRequirementDoesNothingIfSameCurrentScheme()
-    {
-        $routes = $this->getRoutes('test', new Route('/', array(), array(), array(), '', array('http')));
-        $this->assertEquals('/app.php/', $this->getGenerator($routes)->generate('test'));
-
-        $routes = $this->getRoutes('test', new Route('/', array(), array(), array(), '', array('https')));
-        $this->assertEquals('/app.php/', $this->getGenerator($routes, array('scheme' => 'https'))->generate('test'));
-    }
-
-    public function testSchemeRequirementForcesAbsoluteUrl()
-    {
-        $routes = $this->getRoutes('test', new Route('/', array(), array(), array(), '', array('https')));
-        $this->assertEquals('https://localhost/app.php/', $this->getGenerator($routes)->generate('test'));
-
-        $routes = $this->getRoutes('test', new Route('/', array(), array(), array(), '', array('http')));
-        $this->assertEquals('http://localhost/app.php/', $this->getGenerator($routes, array('scheme' => 'https'))->generate('test'));
-    }
-
-    public function testSchemeRequirementCreatesUrlForFirstRequiredScheme()
-    {
-        $routes = $this->getRoutes('test', new Route('/', array(), array(), array(), '', array('Ftp', 'https')));
-        $this->assertEquals('ftp://localhost/app.php/', $this->getGenerator($routes)->generate('test'));
-    }
-
-    public function testPathWithTwoStartingSlashes()
-    {
-        $routes = $this->getRoutes('test', new Route('//path-and-not-domain'));
-
-        // this must not generate '//path-and-not-domain' because that would be a network path
-        $this->assertSame('/path-and-not-domain', $this->getGenerator($routes, array('BaseUrl' => ''))->generate('test'));
-    }
-
-    public function testNoTrailingSlashForMultipleOptionalParameters()
-    {
-        $routes = $this->getRoutes('test', new Route('/category/{slug1}/{slug2}/{slug3}', array('slug2' => null, 'slug3' => null)));
-
-        $this->assertEquals('/app.php/category/foo', $this->getGenerator($routes)->generate('test', array('slug1' => 'foo')));
-    }
-
-    public function testWithAnIntegerAsADefaultValue()
-    {
-        $routes = $this->getRoutes('test', new Route('/{default}', array('default' => 0)));
-
-        $this->assertEquals('/app.php/foo', $this->getGenerator($routes)->generate('test', array('default' => 'foo')));
-    }
-
-    public function testNullForOptionalParameterIsIgnored()
-    {
-        $routes = $this->getRoutes('test', new Route('/test/{default}', array('default' => 0)));
-
-        $this->assertEquals('/app.php/test', $this->getGenerator($routes)->generate('test', array('default' => null)));
-    }
-
-    public function testQueryParamSameAsDefault()
-    {
-        $routes = $this->getRoutes('test', new Route('/test', array('default' => 'value')));
-
-        $this->assertSame('/app.php/test', $this->getGenerator($routes)->generate('test', array('default' => 'foo')));
-        $this->assertSame('/app.php/test', $this->getGenerator($routes)->generate('test', array('default' => 'value')));
-        $this->assertSame('/app.php/test', $this->getGenerator($routes)->generate('test'));
-    }
-
-    public function testGenerateWithSpecialRouteName()
-    {
-        $routes = $this->getRoutes('$péß^a|', new Route('/bar'));
-
-        $this->assertSame('/app.php/bar', $this->getGenerator($routes)->generate('$péß^a|'));
-    }
-
-    public function testUrlEncoding()
-    {
-        // This tests the encoding of reserved characters that are used for delimiting of URI components (defined in RFC 3986)
-        // and other special ASCII chars. These chars are tested as static text path, variable path and query param.
-        $chars = '@:[]/()*\'" +,;-._~&$<>|{}%\\^`!?foo=bar#id';
-        $routes = $this->getRoutes('test', new Route("/$chars/{varpath}", array(), array('varpath' => '.+')));
-        $this->assertSame('/app.php/@:%5B%5D/%28%29*%27%22%20+,;-._~%26%24%3C%3E|%7B%7D%25%5C%5E%60!%3Ffoo=bar%23id'
-           .'/@:%5B%5D/%28%29*%27%22%20+,;-._~%26%24%3C%3E|%7B%7D%25%5C%5E%60!%3Ffoo=bar%23id'
-           .'?query=%40%3A%5B%5D/%28%29%2A%27%22+%2B%2C%3B-._%7E%26%24%3C%3E%7C%7B%7D%25%5C%5E%60%21%3Ffoo%3Dbar%23id',
-            $this->getGenerator($routes)->generate('test', array(
-                'varpath' => $chars,
-                'query' => $chars,
-            ))
-        );
-    }
-
-    public function testEncodingOfRelativePathSegments()
-    {
-        $routes = $this->getRoutes('test', new Route('/dir/../dir/..'));
-        $this->assertSame('/app.php/dir/%2E%2E/dir/%2E%2E', $this->getGenerator($routes)->generate('test'));
-        $routes = $this->getRoutes('test', new Route('/dir/./dir/.'));
-        $this->assertSame('/app.php/dir/%2E/dir/%2E', $this->getGenerator($routes)->generate('test'));
-        $routes = $this->getRoutes('test', new Route('/a./.a/a../..a/...'));
-        $this->assertSame('/app.php/a./.a/a../..a/...', $this->getGenerator($routes)->generate('test'));
-    }
-
-    public function testAdjacentVariables()
-    {
-        $routes = $this->getRoutes('test', new Route('/{x}{y}{z}.{_format}', array('z' => 'default-z', '_format' => 'html'), array('y' => '\d+')));
-        $generator = $this->getGenerator($routes);
-        $this->assertSame('/app.php/foo123', $generator->generate('test', array('x' => 'foo', 'y' => '123')));
-        $this->assertSame('/app.php/foo123bar.xml', $generator->generate('test', array('x' => 'foo', 'y' => '123', 'z' => 'bar', '_format' => 'xml')));
-
-        // The default requirement for 'x' should not allow the separator '.' in this case because it would otherwise match everything
-        // and following optional variables like _format could never match.
-        $this->setExpectedException('Symfony\Component\Routing\Exception\InvalidParameterException');
-        $generator->generate('test', array('x' => 'do.t', 'y' => '123', 'z' => 'bar', '_format' => 'xml'));
-    }
-
-    public function testOptionalVariableWithNoRealSeparator()
-    {
-        $routes = $this->getRoutes('test', new Route('/get{what}', array('what' => 'All')));
-        $generator = $this->getGenerator($routes);
-
-        $this->assertSame('/app.php/get', $generator->generate('test'));
-        $this->assertSame('/app.php/getSites', $generator->generate('test', array('what' => 'Sites')));
-    }
-
-    public function testRequiredVariableWithNoRealSeparator()
-    {
-        $routes = $this->getRoutes('test', new Route('/get{what}Suffix'));
-        $generator = $this->getGenerator($routes);
-
-        $this->assertSame('/app.php/getSitesSuffix', $generator->generate('test', array('what' => 'Sites')));
-    }
-
-    public function testDefaultRequirementOfVariable()
-    {
-        $routes = $this->getRoutes('test', new Route('/{page}.{_format}'));
-        $generator = $this->getGenerator($routes);
-
-        $this->assertSame('/app.php/index.mobile.html', $generator->generate('test', array('page' => 'index', '_format' => 'mobile.html')));
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Routing\Exception\InvalidParameterException
-     */
-    public function testDefaultRequirementOfVariableDisallowsSlash()
-    {
-        $routes = $this->getRoutes('test', new Route('/{page}.{_format}'));
-        $this->getGenerator($routes)->generate('test', array('page' => 'index', '_format' => 'sl/ash'));
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Routing\Exception\InvalidParameterException
-     */
-    public function testDefaultRequirementOfVariableDisallowsNextSeparator()
-    {
-        $routes = $this->getRoutes('test', new Route('/{page}.{_format}'));
-        $this->getGenerator($routes)->generate('test', array('page' => 'do.t', '_format' => 'html'));
-    }
-
-    public function testWithHostDifferentFromContext()
-    {
-        $routes = $this->getRoutes('test', new Route('/{name}', array(), array(), array(), '{locale}.example.com'));
-
-        $this->assertEquals('//fr.example.com/app.php/Fabien', $this->getGenerator($routes)->generate('test', array('name' => 'Fabien', 'locale' => 'fr')));
-    }
-
-    public function testWithHostSameAsContext()
-    {
-        $routes = $this->getRoutes('test', new Route('/{name}', array(), array(), array(), '{locale}.example.com'));
-
-        $this->assertEquals('/app.php/Fabien', $this->getGenerator($routes, array('host' => 'fr.example.com'))->generate('test', array('name' => 'Fabien', 'locale' => 'fr')));
-    }
-
-    public function testWithHostSameAsContextAndAbsolute()
-    {
-        $routes = $this->getRoutes('test', new Route('/{name}', array(), array(), array(), '{locale}.example.com'));
-
-        $this->assertEquals('http://fr.example.com/app.php/Fabien', $this->getGenerator($routes, array('host' => 'fr.example.com'))->generate('test', array('name' => 'Fabien', 'locale' => 'fr'), true));
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Routing\Exception\InvalidParameterException
-     */
-    public function testUrlWithInvalidParameterInHost()
-    {
-        $routes = $this->getRoutes('test', new Route('/', array(), array('foo' => 'bar'), array(), '{foo}.example.com'));
-        $this->getGenerator($routes)->generate('test', array('foo' => 'baz'), false);
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Routing\Exception\InvalidParameterException
-     */
-    public function testUrlWithInvalidParameterInHostWhenParamHasADefaultValue()
-    {
-        $routes = $this->getRoutes('test', new Route('/', array('foo' => 'bar'), array('foo' => 'bar'), array(), '{foo}.example.com'));
-        $this->getGenerator($routes)->generate('test', array('foo' => 'baz'), false);
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Routing\Exception\InvalidParameterException
-     */
-    public function testUrlWithInvalidParameterEqualsDefaultValueInHost()
-    {
-        $routes = $this->getRoutes('test', new Route('/', array('foo' => 'baz'), array('foo' => 'bar'), array(), '{foo}.example.com'));
-        $this->getGenerator($routes)->generate('test', array('foo' => 'baz'), false);
-    }
-
-    public function testUrlWithInvalidParameterInHostInNonStrictMode()
-    {
-        $routes = $this->getRoutes('test', new Route('/', array(), array('foo' => 'bar'), array(), '{foo}.example.com'));
-        $generator = $this->getGenerator($routes);
-        $generator->setStrictRequirements(false);
-        $this->assertNull($generator->generate('test', array('foo' => 'baz'), false));
-    }
-
-    public function testHostIsCaseInsensitive()
-    {
-        $routes = $this->getRoutes('test', new Route('/', array(), array('locale' => 'en|de|fr'), array(), '{locale}.FooBar.com'));
-        $generator = $this->getGenerator($routes);
-        $this->assertSame('//EN.FooBar.com/app.php/', $generator->generate('test', array('locale' => 'EN'), UrlGeneratorInterface::NETWORK_PATH));
-    }
-
-    /**
-     * @group legacy
-     */
-    public function testLegacyGenerateNetworkPath()
-    {
-        $routes = $this->getRoutes('test', new Route('/{name}', array(), array('_scheme' => 'http'), array(), '{locale}.example.com'));
-
-        $this->assertSame('//fr.example.com/app.php/Fabien', $this->getGenerator($routes)->generate('test',
-            array('name' => 'Fabien', 'locale' => 'fr'), UrlGeneratorInterface::NETWORK_PATH), 'network path with different host'
-        );
-        $this->assertSame('//fr.example.com/app.php/Fabien?query=string', $this->getGenerator($routes, array('host' => 'fr.example.com'))->generate('test',
-            array('name' => 'Fabien', 'locale' => 'fr', 'query' => 'string'), UrlGeneratorInterface::NETWORK_PATH), 'network path although host same as context'
-        );
-        $this->assertSame('http://fr.example.com/app.php/Fabien', $this->getGenerator($routes, array('scheme' => 'https'))->generate('test',
-            array('name' => 'Fabien', 'locale' => 'fr'), UrlGeneratorInterface::NETWORK_PATH), 'absolute URL because scheme requirement does not match context'
-        );
-        $this->assertSame('http://fr.example.com/app.php/Fabien', $this->getGenerator($routes)->generate('test',
-            array('name' => 'Fabien', 'locale' => 'fr'), UrlGeneratorInterface::ABSOLUTE_URL), 'absolute URL with same scheme because it is requested'
-        );
-    }
-
-    public function testGenerateNetworkPath()
-    {
-        $routes = $this->getRoutes('test', new Route('/{name}', array(), array(), array(), '{locale}.example.com', array('http')));
-
-        $this->assertSame('//fr.example.com/app.php/Fabien', $this->getGenerator($routes)->generate('test',
-            array('name' => 'Fabien', 'locale' => 'fr'), UrlGeneratorInterface::NETWORK_PATH), 'network path with different host'
-        );
-        $this->assertSame('//fr.example.com/app.php/Fabien?query=string', $this->getGenerator($routes, array('host' => 'fr.example.com'))->generate('test',
-            array('name' => 'Fabien', 'locale' => 'fr', 'query' => 'string'), UrlGeneratorInterface::NETWORK_PATH), 'network path although host same as context'
-        );
-        $this->assertSame('http://fr.example.com/app.php/Fabien', $this->getGenerator($routes, array('scheme' => 'https'))->generate('test',
-            array('name' => 'Fabien', 'locale' => 'fr'), UrlGeneratorInterface::NETWORK_PATH), 'absolute URL because scheme requirement does not match context'
-        );
-        $this->assertSame('http://fr.example.com/app.php/Fabien', $this->getGenerator($routes)->generate('test',
-            array('name' => 'Fabien', 'locale' => 'fr'), UrlGeneratorInterface::ABSOLUTE_URL), 'absolute URL with same scheme because it is requested'
-        );
-    }
-
-    public function testGenerateRelativePath()
-    {
-        $routes = new RouteCollection();
-        $routes->add('article', new Route('/{author}/{article}/'));
-        $routes->add('comments', new Route('/{author}/{article}/comments'));
-        $routes->add('host', new Route('/{article}', array(), array(), array(), '{author}.example.com'));
-        $routes->add('scheme', new Route('/{author}/blog', array(), array(), array(), '', array('https')));
-        $routes->add('unrelated', new Route('/about'));
-
-        $generator = $this->getGenerator($routes, array('host' => 'example.com', 'pathInfo' => '/fabien/symfony-is-great/'));
-
-        $this->assertSame('comments', $generator->generate('comments',
-            array('author' => 'fabien', 'article' => 'symfony-is-great'), UrlGeneratorInterface::RELATIVE_PATH)
-        );
-        $this->assertSame('comments?page=2', $generator->generate('comments',
-            array('author' => 'fabien', 'article' => 'symfony-is-great', 'page' => 2), UrlGeneratorInterface::RELATIVE_PATH)
-        );
-        $this->assertSame('../twig-is-great/', $generator->generate('article',
-            array('author' => 'fabien', 'article' => 'twig-is-great'), UrlGeneratorInterface::RELATIVE_PATH)
-        );
-        $this->assertSame('../../bernhard/forms-are-great/', $generator->generate('article',
-            array('author' => 'bernhard', 'article' => 'forms-are-great'), UrlGeneratorInterface::RELATIVE_PATH)
-        );
-        $this->assertSame('//bernhard.example.com/app.php/forms-are-great', $generator->generate('host',
-            array('author' => 'bernhard', 'article' => 'forms-are-great'), UrlGeneratorInterface::RELATIVE_PATH)
-        );
-        $this->assertSame('https://example.com/app.php/bernhard/blog', $generator->generate('scheme',
-                array('author' => 'bernhard'), UrlGeneratorInterface::RELATIVE_PATH)
-        );
-        $this->assertSame('../../about', $generator->generate('unrelated',
-            array(), UrlGeneratorInterface::RELATIVE_PATH)
-        );
-    }
-
-    /**
-     * @dataProvider provideRelativePaths
-     */
-    public function testGetRelativePath($sourcePath, $targetPath, $expectedPath)
-    {
-        $this->assertSame($expectedPath, UrlGenerator::getRelativePath($sourcePath, $targetPath));
-    }
-
-    public function provideRelativePaths()
-    {
-        return array(
-            array(
-                '/same/dir/',
-                '/same/dir/',
-                '',
-            ),
-            array(
-                '/same/file',
-                '/same/file',
-                '',
-            ),
-            array(
-                '/',
-                '/file',
-                'file',
-            ),
-            array(
-                '/',
-                '/dir/file',
-                'dir/file',
-            ),
-            array(
-                '/dir/file.html',
-                '/dir/different-file.html',
-                'different-file.html',
-            ),
-            array(
-                '/same/dir/extra-file',
-                '/same/dir/',
-                './',
-            ),
-            array(
-                '/parent/dir/',
-                '/parent/',
-                '../',
-            ),
-            array(
-                '/parent/dir/extra-file',
-                '/parent/',
-                '../',
-            ),
-            array(
-                '/a/b/',
-                '/x/y/z/',
-                '../../x/y/z/',
-            ),
-            array(
-                '/a/b/c/d/e',
-                '/a/c/d',
-                '../../../c/d',
-            ),
-            array(
-                '/a/b/c//',
-                '/a/b/c/',
-                '../',
-            ),
-            array(
-                '/a/b/c/',
-                '/a/b/c//',
-                './/',
-            ),
-            array(
-                '/root/a/b/c/',
-                '/root/x/b/c/',
-                '../../../x/b/c/',
-            ),
-            array(
-                '/a/b/c/d/',
-                '/a',
-                '../../../../a',
-            ),
-            array(
-                '/special-chars/sp%20ce/1€/mäh/e=mc²',
-                '/special-chars/sp%20ce/1€/<µ>/e=mc²',
-                '../<µ>/e=mc²',
-            ),
-            array(
-                'not-rooted',
-                'dir/file',
-                'dir/file',
-            ),
-            array(
-                '//dir/',
-                '',
-                '../../',
-            ),
-            array(
-                '/dir/',
-                '/dir/file:with-colon',
-                './file:with-colon',
-            ),
-            array(
-                '/dir/',
-                '/dir/subdir/file:with-colon',
-                'subdir/file:with-colon',
-            ),
-            array(
-                '/dir/',
-                '/dir/:subdir/',
-                './:subdir/',
-            ),
-        );
-    }
-
-    protected function getGenerator(RouteCollection $routes, array $parameters = array(), $logger = null)
-    {
-        $context = new RequestContext('/app.php');
-        foreach ($parameters as $key => $value) {
-            $method = 'set'.$key;
-            $context->$method($value);
-        }
-        $generator = new UrlGenerator($routes, $context, $logger);
-
-        return $generator;
-    }
-
-    protected function getRoutes($name, Route $route)
-    {
-        $routes = new RouteCollection();
-        $routes->add($name, $route);
-
-        return $routes;
-    }
-}
diff --git a/vendor/symfony/routing/Tests/Loader/AbstractAnnotationLoaderTest.php b/vendor/symfony/routing/Tests/Loader/AbstractAnnotationLoaderTest.php
deleted file mode 100644
index 288bf64..0000000
--- a/vendor/symfony/routing/Tests/Loader/AbstractAnnotationLoaderTest.php
+++ /dev/null
@@ -1,31 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Routing\Tests\Loader;
-
-abstract class AbstractAnnotationLoaderTest extends \PHPUnit_Framework_TestCase
-{
-    public function getReader()
-    {
-        return $this->getMockBuilder('Doctrine\Common\Annotations\Reader')
-            ->disableOriginalConstructor()
-            ->getMock()
-        ;
-    }
-
-    public function getClassLoader($reader)
-    {
-        return $this->getMockBuilder('Symfony\Component\Routing\Loader\AnnotationClassLoader')
-            ->setConstructorArgs(array($reader))
-            ->getMockForAbstractClass()
-        ;
-    }
-}
diff --git a/vendor/symfony/routing/Tests/Loader/AnnotationClassLoaderTest.php b/vendor/symfony/routing/Tests/Loader/AnnotationClassLoaderTest.php
deleted file mode 100644
index 83bf710..0000000
--- a/vendor/symfony/routing/Tests/Loader/AnnotationClassLoaderTest.php
+++ /dev/null
@@ -1,188 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Routing\Tests\Loader;
-
-use Symfony\Component\Routing\Annotation\Route;
-
-class AnnotationClassLoaderTest extends AbstractAnnotationLoaderTest
-{
-    protected $loader;
-    private $reader;
-
-    protected function setUp()
-    {
-        parent::setUp();
-
-        $this->reader = $this->getReader();
-        $this->loader = $this->getClassLoader($this->reader);
-    }
-
-    /**
-     * @expectedException \InvalidArgumentException
-     */
-    public function testLoadMissingClass()
-    {
-        $this->loader->load('MissingClass');
-    }
-
-    /**
-     * @expectedException \InvalidArgumentException
-     */
-    public function testLoadAbstractClass()
-    {
-        $this->loader->load('Symfony\Component\Routing\Tests\Fixtures\AnnotatedClasses\AbstractClass');
-    }
-
-    /**
-     * @dataProvider provideTestSupportsChecksResource
-     */
-    public function testSupportsChecksResource($resource, $expectedSupports)
-    {
-        $this->assertSame($expectedSupports, $this->loader->supports($resource), '->supports() returns true if the resource is loadable');
-    }
-
-    public function provideTestSupportsChecksResource()
-    {
-        return array(
-            array('class', true),
-            array('\fully\qualified\class\name', true),
-            array('namespaced\class\without\leading\slash', true),
-            array('ÿClassWithLegalSpecialCharacters', true),
-            array('5', false),
-            array('foo.foo', false),
-            array(null, false),
-        );
-    }
-
-    public function testSupportsChecksTypeIfSpecified()
-    {
-        $this->assertTrue($this->loader->supports('class', 'annotation'), '->supports() checks the resource type if specified');
-        $this->assertFalse($this->loader->supports('class', 'foo'), '->supports() checks the resource type if specified');
-    }
-
-    public function getLoadTests()
-    {
-        return array(
-            array(
-                'Symfony\Component\Routing\Tests\Fixtures\AnnotatedClasses\BarClass',
-                array('name' => 'route1', 'path' => '/path'),
-                array('arg2' => 'defaultValue2', 'arg3' => 'defaultValue3'),
-            ),
-            array(
-                'Symfony\Component\Routing\Tests\Fixtures\AnnotatedClasses\BarClass',
-                array('defaults' => array('arg2' => 'foo'), 'requirements' => array('arg3' => '\w+')),
-                array('arg2' => 'defaultValue2', 'arg3' => 'defaultValue3'),
-            ),
-            array(
-                'Symfony\Component\Routing\Tests\Fixtures\AnnotatedClasses\BarClass',
-                array('options' => array('foo' => 'bar')),
-                array('arg2' => 'defaultValue2', 'arg3' => 'defaultValue3'),
-            ),
-            array(
-                'Symfony\Component\Routing\Tests\Fixtures\AnnotatedClasses\BarClass',
-                array('schemes' => array('https'), 'methods' => array('GET')),
-                array('arg2' => 'defaultValue2', 'arg3' => 'defaultValue3'),
-            ),
-            array(
-                'Symfony\Component\Routing\Tests\Fixtures\AnnotatedClasses\BarClass',
-                array('condition' => 'context.getMethod() == "GET"'),
-                array('arg2' => 'defaultValue2', 'arg3' => 'defaultValue3'),
-            ),
-        );
-    }
-
-    /**
-     * @dataProvider getLoadTests
-     */
-    public function testLoad($className, $routeData = array(), $methodArgs = array())
-    {
-        $routeData = array_replace(array(
-            'name' => 'route',
-            'path' => '/',
-            'requirements' => array(),
-            'options' => array(),
-            'defaults' => array(),
-            'schemes' => array(),
-            'methods' => array(),
-            'condition' => '',
-        ), $routeData);
-
-        $this->reader
-            ->expects($this->once())
-            ->method('getMethodAnnotations')
-            ->will($this->returnValue(array($this->getAnnotatedRoute($routeData))))
-        ;
-
-        $routeCollection = $this->loader->load($className);
-        $route = $routeCollection->get($routeData['name']);
-
-        $this->assertSame($routeData['path'], $route->getPath(), '->load preserves path annotation');
-        $this->assertCount(
-            count($routeData['requirements']),
-            array_intersect_assoc($routeData['requirements'], $route->getRequirements()),
-            '->load preserves requirements annotation'
-        );
-        $this->assertCount(
-            count($routeData['options']),
-            array_intersect_assoc($routeData['options'], $route->getOptions()),
-            '->load preserves options annotation'
-        );
-        $defaults = array_replace($methodArgs, $routeData['defaults']);
-        $this->assertCount(
-            count($defaults),
-            array_intersect_assoc($defaults, $route->getDefaults()),
-            '->load preserves defaults annotation and merges them with default arguments in method signature'
-        );
-        $this->assertEquals($routeData['schemes'], $route->getSchemes(), '->load preserves schemes annotation');
-        $this->assertEquals($routeData['methods'], $route->getMethods(), '->load preserves methods annotation');
-        $this->assertSame($routeData['condition'], $route->getCondition(), '->load preserves condition annotation');
-    }
-
-    public function testClassRouteLoad()
-    {
-        $classRouteData = array(
-            'path' => '/prefix',
-            'schemes' => array('https'),
-            'methods' => array('GET'),
-        );
-
-        $methodRouteData = array(
-            'name' => 'route1',
-            'path' => '/path',
-            'schemes' => array('http'),
-            'methods' => array('POST', 'PUT'),
-        );
-
-        $this->reader
-            ->expects($this->once())
-            ->method('getClassAnnotation')
-            ->will($this->returnValue($this->getAnnotatedRoute($classRouteData)))
-        ;
-        $this->reader
-            ->expects($this->once())
-            ->method('getMethodAnnotations')
-            ->will($this->returnValue(array($this->getAnnotatedRoute($methodRouteData))))
-        ;
-
-        $routeCollection = $this->loader->load('Symfony\Component\Routing\Tests\Fixtures\AnnotatedClasses\BarClass');
-        $route = $routeCollection->get($methodRouteData['name']);
-
-        $this->assertSame($classRouteData['path'].$methodRouteData['path'], $route->getPath(), '->load concatenates class and method route path');
-        $this->assertEquals(array_merge($classRouteData['schemes'], $methodRouteData['schemes']), $route->getSchemes(), '->load merges class and method route schemes');
-        $this->assertEquals(array_merge($classRouteData['methods'], $methodRouteData['methods']), $route->getMethods(), '->load merges class and method route methods');
-    }
-
-    private function getAnnotatedRoute($data)
-    {
-        return new Route($data);
-    }
-}
diff --git a/vendor/symfony/routing/Tests/Loader/AnnotationDirectoryLoaderTest.php b/vendor/symfony/routing/Tests/Loader/AnnotationDirectoryLoaderTest.php
deleted file mode 100644
index 29126ba..0000000
--- a/vendor/symfony/routing/Tests/Loader/AnnotationDirectoryLoaderTest.php
+++ /dev/null
@@ -1,53 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Routing\Tests\Loader;
-
-use Symfony\Component\Routing\Loader\AnnotationDirectoryLoader;
-use Symfony\Component\Config\FileLocator;
-
-class AnnotationDirectoryLoaderTest extends AbstractAnnotationLoaderTest
-{
-    protected $loader;
-    protected $reader;
-
-    protected function setUp()
-    {
-        parent::setUp();
-
-        $this->reader = $this->getReader();
-        $this->loader = new AnnotationDirectoryLoader(new FileLocator(), $this->getClassLoader($this->reader));
-    }
-
-    public function testLoad()
-    {
-        $this->reader->expects($this->exactly(2))->method('getClassAnnotation');
-
-        $this->reader
-            ->expects($this->any())
-            ->method('getMethodAnnotations')
-            ->will($this->returnValue(array()))
-        ;
-
-        $this->loader->load(__DIR__.'/../Fixtures/AnnotatedClasses');
-    }
-
-    public function testSupports()
-    {
-        $fixturesDir = __DIR__.'/../Fixtures';
-
-        $this->assertTrue($this->loader->supports($fixturesDir), '->supports() returns true if the resource is loadable');
-        $this->assertFalse($this->loader->supports('foo.foo'), '->supports() returns true if the resource is loadable');
-
-        $this->assertTrue($this->loader->supports($fixturesDir, 'annotation'), '->supports() checks the resource type if specified');
-        $this->assertFalse($this->loader->supports($fixturesDir, 'foo'), '->supports() checks the resource type if specified');
-    }
-}
diff --git a/vendor/symfony/routing/Tests/Loader/AnnotationFileLoaderTest.php b/vendor/symfony/routing/Tests/Loader/AnnotationFileLoaderTest.php
deleted file mode 100644
index 9a83994..0000000
--- a/vendor/symfony/routing/Tests/Loader/AnnotationFileLoaderTest.php
+++ /dev/null
@@ -1,61 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Routing\Tests\Loader;
-
-use Symfony\Component\Routing\Loader\AnnotationFileLoader;
-use Symfony\Component\Config\FileLocator;
-use Symfony\Component\Routing\Annotation\Route;
-
-class AnnotationFileLoaderTest extends AbstractAnnotationLoaderTest
-{
-    protected $loader;
-    protected $reader;
-
-    protected function setUp()
-    {
-        parent::setUp();
-
-        $this->reader = $this->getReader();
-        $this->loader = new AnnotationFileLoader(new FileLocator(), $this->getClassLoader($this->reader));
-    }
-
-    public function testLoad()
-    {
-        $this->reader->expects($this->once())->method('getClassAnnotation');
-
-        $this->loader->load(__DIR__.'/../Fixtures/AnnotatedClasses/FooClass.php');
-    }
-
-    /**
-     * @requires PHP 5.6
-     */
-    public function testLoadVariadic()
-    {
-        $route = new Route(array('path' => '/path/to/{id}'));
-        $this->reader->expects($this->once())->method('getClassAnnotation');
-        $this->reader->expects($this->once())->method('getMethodAnnotations')
-            ->will($this->returnValue(array($route)));
-
-        $this->loader->load(__DIR__.'/../Fixtures/OtherAnnotatedClasses/VariadicClass.php');
-    }
-
-    public function testSupports()
-    {
-        $fixture = __DIR__.'/../Fixtures/annotated.php';
-
-        $this->assertTrue($this->loader->supports($fixture), '->supports() returns true if the resource is loadable');
-        $this->assertFalse($this->loader->supports('foo.foo'), '->supports() returns true if the resource is loadable');
-
-        $this->assertTrue($this->loader->supports($fixture, 'annotation'), '->supports() checks the resource type if specified');
-        $this->assertFalse($this->loader->supports($fixture, 'foo'), '->supports() checks the resource type if specified');
-    }
-}
diff --git a/vendor/symfony/routing/Tests/Loader/ClosureLoaderTest.php b/vendor/symfony/routing/Tests/Loader/ClosureLoaderTest.php
deleted file mode 100644
index d34fa87..0000000
--- a/vendor/symfony/routing/Tests/Loader/ClosureLoaderTest.php
+++ /dev/null
@@ -1,48 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Routing\Tests\Loader;
-
-use Symfony\Component\Routing\Loader\ClosureLoader;
-use Symfony\Component\Routing\Route;
-use Symfony\Component\Routing\RouteCollection;
-
-class ClosureLoaderTest extends \PHPUnit_Framework_TestCase
-{
-    public function testSupports()
-    {
-        $loader = new ClosureLoader();
-
-        $closure = function () {};
-
-        $this->assertTrue($loader->supports($closure), '->supports() returns true if the resource is loadable');
-        $this->assertFalse($loader->supports('foo.foo'), '->supports() returns true if the resource is loadable');
-
-        $this->assertTrue($loader->supports($closure, 'closure'), '->supports() checks the resource type if specified');
-        $this->assertFalse($loader->supports($closure, 'foo'), '->supports() checks the resource type if specified');
-    }
-
-    public function testLoad()
-    {
-        $loader = new ClosureLoader();
-
-        $route = new Route('/');
-        $routes = $loader->load(function () use ($route) {
-            $routes = new RouteCollection();
-
-            $routes->add('foo', $route);
-
-            return $routes;
-        });
-
-        $this->assertEquals($route, $routes->get('foo'), '->load() loads a \Closure resource');
-    }
-}
diff --git a/vendor/symfony/routing/Tests/Loader/PhpFileLoaderTest.php b/vendor/symfony/routing/Tests/Loader/PhpFileLoaderTest.php
deleted file mode 100644
index 5d66446..0000000
--- a/vendor/symfony/routing/Tests/Loader/PhpFileLoaderTest.php
+++ /dev/null
@@ -1,82 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Routing\Tests\Loader;
-
-use Symfony\Component\Config\FileLocator;
-use Symfony\Component\Routing\Loader\PhpFileLoader;
-
-class PhpFileLoaderTest extends \PHPUnit_Framework_TestCase
-{
-    public function testSupports()
-    {
-        $loader = new PhpFileLoader($this->getMock('Symfony\Component\Config\FileLocator'));
-
-        $this->assertTrue($loader->supports('foo.php'), '->supports() returns true if the resource is loadable');
-        $this->assertFalse($loader->supports('foo.foo'), '->supports() returns true if the resource is loadable');
-
-        $this->assertTrue($loader->supports('foo.php', 'php'), '->supports() checks the resource type if specified');
-        $this->assertFalse($loader->supports('foo.php', 'foo'), '->supports() checks the resource type if specified');
-    }
-
-    public function testLoadWithRoute()
-    {
-        $loader = new PhpFileLoader(new FileLocator(array(__DIR__.'/../Fixtures')));
-        $routeCollection = $loader->load('validpattern.php');
-        $routes = $routeCollection->all();
-
-        $this->assertCount(1, $routes, 'One route is loaded');
-        $this->assertContainsOnly('Symfony\Component\Routing\Route', $routes);
-
-        foreach ($routes as $route) {
-            $this->assertSame('/blog/{slug}', $route->getPath());
-            $this->assertSame('MyBlogBundle:Blog:show', $route->getDefault('_controller'));
-            $this->assertSame('{locale}.example.com', $route->getHost());
-            $this->assertSame('RouteCompiler', $route->getOption('compiler_class'));
-            $this->assertEquals(array('GET', 'POST', 'PUT', 'OPTIONS'), $route->getMethods());
-            $this->assertEquals(array('https'), $route->getSchemes());
-        }
-    }
-
-    public function testLoadWithImport()
-    {
-        $loader = new PhpFileLoader(new FileLocator(array(__DIR__.'/../Fixtures')));
-        $routeCollection = $loader->load('validresource.php');
-        $routes = $routeCollection->all();
-
-        $this->assertCount(1, $routes, 'One route is loaded');
-        $this->assertContainsOnly('Symfony\Component\Routing\Route', $routes);
-
-        foreach ($routes as $route) {
-            $this->assertSame('/prefix/blog/{slug}', $route->getPath());
-            $this->assertSame('MyBlogBundle:Blog:show', $route->getDefault('_controller'));
-            $this->assertSame('{locale}.example.com', $route->getHost());
-            $this->assertSame('RouteCompiler', $route->getOption('compiler_class'));
-            $this->assertEquals(array('GET', 'POST', 'PUT', 'OPTIONS'), $route->getMethods());
-            $this->assertEquals(array('https'), $route->getSchemes());
-        }
-    }
-
-    public function testThatDefiningVariableInConfigFileHasNoSideEffects()
-    {
-        $locator = new FileLocator(array(__DIR__.'/../Fixtures'));
-        $loader = new PhpFileLoader($locator);
-        $routeCollection = $loader->load('with_define_path_variable.php');
-        $resources = $routeCollection->getResources();
-        $this->assertCount(1, $resources);
-        $this->assertContainsOnly('Symfony\Component\Config\Resource\ResourceInterface', $resources);
-        $fileResource = reset($resources);
-        $this->assertSame(
-            realpath($locator->locate('with_define_path_variable.php')),
-            (string) $fileResource
-        );
-    }
-}
diff --git a/vendor/symfony/routing/Tests/Loader/XmlFileLoaderTest.php b/vendor/symfony/routing/Tests/Loader/XmlFileLoaderTest.php
deleted file mode 100644
index 7806507..0000000
--- a/vendor/symfony/routing/Tests/Loader/XmlFileLoaderTest.php
+++ /dev/null
@@ -1,152 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Routing\Tests\Loader;
-
-use Symfony\Component\Config\FileLocator;
-use Symfony\Component\Routing\Loader\XmlFileLoader;
-use Symfony\Component\Routing\Tests\Fixtures\CustomXmlFileLoader;
-
-class XmlFileLoaderTest extends \PHPUnit_Framework_TestCase
-{
-    public function testSupports()
-    {
-        $loader = new XmlFileLoader($this->getMock('Symfony\Component\Config\FileLocator'));
-
-        $this->assertTrue($loader->supports('foo.xml'), '->supports() returns true if the resource is loadable');
-        $this->assertFalse($loader->supports('foo.foo'), '->supports() returns true if the resource is loadable');
-
-        $this->assertTrue($loader->supports('foo.xml', 'xml'), '->supports() checks the resource type if specified');
-        $this->assertFalse($loader->supports('foo.xml', 'foo'), '->supports() checks the resource type if specified');
-    }
-
-    public function testLoadWithRoute()
-    {
-        $loader = new XmlFileLoader(new FileLocator(array(__DIR__.'/../Fixtures')));
-        $routeCollection = $loader->load('validpattern.xml');
-        $route = $routeCollection->get('blog_show');
-
-        $this->assertInstanceOf('Symfony\Component\Routing\Route', $route);
-        $this->assertSame('/blog/{slug}', $route->getPath());
-        $this->assertSame('{locale}.example.com', $route->getHost());
-        $this->assertSame('MyBundle:Blog:show', $route->getDefault('_controller'));
-        $this->assertSame('\w+', $route->getRequirement('locale'));
-        $this->assertSame('RouteCompiler', $route->getOption('compiler_class'));
-        $this->assertEquals(array('GET', 'POST', 'PUT', 'OPTIONS'), $route->getMethods());
-        $this->assertEquals(array('https'), $route->getSchemes());
-        $this->assertEquals('context.getMethod() == "GET"', $route->getCondition());
-    }
-
-    /**
-     * @group legacy
-     */
-    public function testLegacyRouteDefinitionLoading()
-    {
-        $loader = new XmlFileLoader(new FileLocator(array(__DIR__.'/../Fixtures')));
-        $routeCollection = $loader->load('legacy_validpattern.xml');
-        $route = $routeCollection->get('blog_show_legacy');
-
-        $this->assertInstanceOf('Symfony\Component\Routing\Route', $route);
-        $this->assertSame('/blog/{slug}', $route->getPath());
-        $this->assertSame('{locale}.example.com', $route->getHost());
-        $this->assertSame('MyBundle:Blog:show', $route->getDefault('_controller'));
-        $this->assertSame('\w+', $route->getRequirement('locale'));
-        $this->assertSame('RouteCompiler', $route->getOption('compiler_class'));
-        $this->assertEquals(array('GET', 'POST', 'PUT', 'OPTIONS'), $route->getMethods());
-        $this->assertEquals(array('https'), $route->getSchemes());
-        $this->assertEquals('context.getMethod() == "GET"', $route->getCondition());
-    }
-
-    public function testLoadWithNamespacePrefix()
-    {
-        $loader = new XmlFileLoader(new FileLocator(array(__DIR__.'/../Fixtures')));
-        $routeCollection = $loader->load('namespaceprefix.xml');
-
-        $this->assertCount(1, $routeCollection->all(), 'One route is loaded');
-
-        $route = $routeCollection->get('blog_show');
-        $this->assertSame('/blog/{slug}', $route->getPath());
-        $this->assertSame('{_locale}.example.com', $route->getHost());
-        $this->assertSame('MyBundle:Blog:show', $route->getDefault('_controller'));
-        $this->assertSame('\w+', $route->getRequirement('slug'));
-        $this->assertSame('en|fr|de', $route->getRequirement('_locale'));
-        $this->assertNull($route->getDefault('slug'));
-        $this->assertSame('RouteCompiler', $route->getOption('compiler_class'));
-    }
-
-    public function testLoadWithImport()
-    {
-        $loader = new XmlFileLoader(new FileLocator(array(__DIR__.'/../Fixtures')));
-        $routeCollection = $loader->load('validresource.xml');
-        $routes = $routeCollection->all();
-
-        $this->assertCount(2, $routes, 'Two routes are loaded');
-        $this->assertContainsOnly('Symfony\Component\Routing\Route', $routes);
-
-        foreach ($routes as $route) {
-            $this->assertSame('/{foo}/blog/{slug}', $route->getPath());
-            $this->assertSame('123', $route->getDefault('foo'));
-            $this->assertSame('\d+', $route->getRequirement('foo'));
-            $this->assertSame('bar', $route->getOption('foo'));
-            $this->assertSame('', $route->getHost());
-            $this->assertSame('context.getMethod() == "POST"', $route->getCondition());
-        }
-    }
-
-    /**
-     * @expectedException \InvalidArgumentException
-     * @dataProvider getPathsToInvalidFiles
-     */
-    public function testLoadThrowsExceptionWithInvalidFile($filePath)
-    {
-        $loader = new XmlFileLoader(new FileLocator(array(__DIR__.'/../Fixtures')));
-        $loader->load($filePath);
-    }
-
-    /**
-     * @expectedException \InvalidArgumentException
-     * @dataProvider getPathsToInvalidFiles
-     */
-    public function testLoadThrowsExceptionWithInvalidFileEvenWithoutSchemaValidation($filePath)
-    {
-        $loader = new CustomXmlFileLoader(new FileLocator(array(__DIR__.'/../Fixtures')));
-        $loader->load($filePath);
-    }
-
-    public function getPathsToInvalidFiles()
-    {
-        return array(array('nonvalidnode.xml'), array('nonvalidroute.xml'), array('nonvalid.xml'), array('missing_id.xml'), array('missing_path.xml'));
-    }
-
-    /**
-     * @expectedException \InvalidArgumentException
-     * @expectedExceptionMessage Document types are not allowed.
-     */
-    public function testDocTypeIsNotAllowed()
-    {
-        $loader = new XmlFileLoader(new FileLocator(array(__DIR__.'/../Fixtures')));
-        $loader->load('withdoctype.xml');
-    }
-
-    public function testNullValues()
-    {
-        $loader = new XmlFileLoader(new FileLocator(array(__DIR__.'/../Fixtures')));
-        $routeCollection = $loader->load('null_values.xml');
-        $route = $routeCollection->get('blog_show');
-
-        $this->assertTrue($route->hasDefault('foo'));
-        $this->assertNull($route->getDefault('foo'));
-        $this->assertTrue($route->hasDefault('bar'));
-        $this->assertNull($route->getDefault('bar'));
-        $this->assertEquals('foo', $route->getDefault('foobar'));
-        $this->assertEquals('bar', $route->getDefault('baz'));
-    }
-}
diff --git a/vendor/symfony/routing/Tests/Loader/YamlFileLoaderTest.php b/vendor/symfony/routing/Tests/Loader/YamlFileLoaderTest.php
deleted file mode 100644
index de15420..0000000
--- a/vendor/symfony/routing/Tests/Loader/YamlFileLoaderTest.php
+++ /dev/null
@@ -1,130 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Routing\Tests\Loader;
-
-use Symfony\Component\Config\FileLocator;
-use Symfony\Component\Routing\Loader\YamlFileLoader;
-use Symfony\Component\Config\Resource\FileResource;
-
-class YamlFileLoaderTest extends \PHPUnit_Framework_TestCase
-{
-    public function testSupports()
-    {
-        $loader = new YamlFileLoader($this->getMock('Symfony\Component\Config\FileLocator'));
-
-        $this->assertTrue($loader->supports('foo.yml'), '->supports() returns true if the resource is loadable');
-        $this->assertTrue($loader->supports('foo.yaml'), '->supports() returns true if the resource is loadable');
-        $this->assertFalse($loader->supports('foo.foo'), '->supports() returns true if the resource is loadable');
-
-        $this->assertTrue($loader->supports('foo.yml', 'yaml'), '->supports() checks the resource type if specified');
-        $this->assertTrue($loader->supports('foo.yaml', 'yaml'), '->supports() checks the resource type if specified');
-        $this->assertFalse($loader->supports('foo.yml', 'foo'), '->supports() checks the resource type if specified');
-    }
-
-    public function testLoadDoesNothingIfEmpty()
-    {
-        $loader = new YamlFileLoader(new FileLocator(array(__DIR__.'/../Fixtures')));
-        $collection = $loader->load('empty.yml');
-
-        $this->assertEquals(array(), $collection->all());
-        $this->assertEquals(array(new FileResource(realpath(__DIR__.'/../Fixtures/empty.yml'))), $collection->getResources());
-    }
-
-    /**
-     * @expectedException \InvalidArgumentException
-     * @dataProvider getPathsToInvalidFiles
-     */
-    public function testLoadThrowsExceptionWithInvalidFile($filePath)
-    {
-        $loader = new YamlFileLoader(new FileLocator(array(__DIR__.'/../Fixtures')));
-        $loader->load($filePath);
-    }
-
-    public function getPathsToInvalidFiles()
-    {
-        return array(
-            array('nonvalid.yml'),
-            array('nonvalid2.yml'),
-            array('incomplete.yml'),
-            array('nonvalidkeys.yml'),
-            array('nonesense_resource_plus_path.yml'),
-            array('nonesense_type_without_resource.yml'),
-            array('bad_format.yml'),
-        );
-    }
-
-    public function testLoadSpecialRouteName()
-    {
-        $loader = new YamlFileLoader(new FileLocator(array(__DIR__.'/../Fixtures')));
-        $routeCollection = $loader->load('special_route_name.yml');
-        $route = $routeCollection->get('#$péß^a|');
-
-        $this->assertInstanceOf('Symfony\Component\Routing\Route', $route);
-        $this->assertSame('/true', $route->getPath());
-    }
-
-    public function testLoadWithRoute()
-    {
-        $loader = new YamlFileLoader(new FileLocator(array(__DIR__.'/../Fixtures')));
-        $routeCollection = $loader->load('validpattern.yml');
-        $route = $routeCollection->get('blog_show');
-
-        $this->assertInstanceOf('Symfony\Component\Routing\Route', $route);
-        $this->assertSame('/blog/{slug}', $route->getPath());
-        $this->assertSame('{locale}.example.com', $route->getHost());
-        $this->assertSame('MyBundle:Blog:show', $route->getDefault('_controller'));
-        $this->assertSame('\w+', $route->getRequirement('locale'));
-        $this->assertSame('RouteCompiler', $route->getOption('compiler_class'));
-        $this->assertEquals(array('GET', 'POST', 'PUT', 'OPTIONS'), $route->getMethods());
-        $this->assertEquals(array('https'), $route->getSchemes());
-        $this->assertEquals('context.getMethod() == "GET"', $route->getCondition());
-    }
-
-    /**
-     * @group legacy
-     */
-    public function testLegacyRouteDefinitionLoading()
-    {
-        $loader = new YamlFileLoader(new FileLocator(array(__DIR__.'/../Fixtures')));
-        $routeCollection = $loader->load('legacy_validpattern.yml');
-        $route = $routeCollection->get('blog_show_legacy');
-
-        $this->assertInstanceOf('Symfony\Component\Routing\Route', $route);
-        $this->assertSame('/blog/{slug}', $route->getPath());
-        $this->assertSame('{locale}.example.com', $route->getHost());
-        $this->assertSame('MyBundle:Blog:show', $route->getDefault('_controller'));
-        $this->assertSame('\w+', $route->getRequirement('locale'));
-        $this->assertSame('RouteCompiler', $route->getOption('compiler_class'));
-        $this->assertEquals(array('GET', 'POST', 'PUT', 'OPTIONS'), $route->getMethods());
-        $this->assertEquals(array('https'), $route->getSchemes());
-        $this->assertEquals('context.getMethod() == "GET"', $route->getCondition());
-    }
-
-    public function testLoadWithResource()
-    {
-        $loader = new YamlFileLoader(new FileLocator(array(__DIR__.'/../Fixtures')));
-        $routeCollection = $loader->load('validresource.yml');
-        $routes = $routeCollection->all();
-
-        $this->assertCount(2, $routes, 'Two routes are loaded');
-        $this->assertContainsOnly('Symfony\Component\Routing\Route', $routes);
-
-        foreach ($routes as $route) {
-            $this->assertSame('/{foo}/blog/{slug}', $route->getPath());
-            $this->assertSame('123', $route->getDefault('foo'));
-            $this->assertSame('\d+', $route->getRequirement('foo'));
-            $this->assertSame('bar', $route->getOption('foo'));
-            $this->assertSame('', $route->getHost());
-            $this->assertSame('context.getMethod() == "POST"', $route->getCondition());
-        }
-    }
-}
diff --git a/vendor/symfony/routing/Tests/Matcher/Dumper/DumperCollectionTest.php b/vendor/symfony/routing/Tests/Matcher/Dumper/DumperCollectionTest.php
deleted file mode 100644
index 7b6001c..0000000
--- a/vendor/symfony/routing/Tests/Matcher/Dumper/DumperCollectionTest.php
+++ /dev/null
@@ -1,33 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Routing\Tests\Matcher\Dumper;
-
-use Symfony\Component\Routing\Matcher\Dumper\DumperCollection;
-
-class DumperCollectionTest extends \PHPUnit_Framework_TestCase
-{
-    public function testGetRoot()
-    {
-        $a = new DumperCollection();
-
-        $b = new DumperCollection();
-        $a->add($b);
-
-        $c = new DumperCollection();
-        $b->add($c);
-
-        $d = new DumperCollection();
-        $c->add($d);
-
-        $this->assertSame($a, $c->getRoot());
-    }
-}
diff --git a/vendor/symfony/routing/Tests/Matcher/Dumper/DumperPrefixCollectionTest.php b/vendor/symfony/routing/Tests/Matcher/Dumper/DumperPrefixCollectionTest.php
deleted file mode 100644
index de01a75..0000000
--- a/vendor/symfony/routing/Tests/Matcher/Dumper/DumperPrefixCollectionTest.php
+++ /dev/null
@@ -1,123 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Routing\Tests\Matcher\Dumper;
-
-use Symfony\Component\Routing\Route;
-use Symfony\Component\Routing\Matcher\Dumper\DumperPrefixCollection;
-use Symfony\Component\Routing\Matcher\Dumper\DumperRoute;
-use Symfony\Component\Routing\Matcher\Dumper\DumperCollection;
-
-class DumperPrefixCollectionTest extends \PHPUnit_Framework_TestCase
-{
-    public function testAddPrefixRoute()
-    {
-        $coll = new DumperPrefixCollection();
-        $coll->setPrefix('');
-
-        $route = new DumperRoute('bar', new Route('/foo/bar'));
-        $coll = $coll->addPrefixRoute($route);
-
-        $route = new DumperRoute('bar2', new Route('/foo/bar'));
-        $coll = $coll->addPrefixRoute($route);
-
-        $route = new DumperRoute('qux', new Route('/foo/qux'));
-        $coll = $coll->addPrefixRoute($route);
-
-        $route = new DumperRoute('bar3', new Route('/foo/bar'));
-        $coll = $coll->addPrefixRoute($route);
-
-        $route = new DumperRoute('bar4', new Route(''));
-        $result = $coll->addPrefixRoute($route);
-
-        $expect = <<<'EOF'
-            |-coll /
-            | |-coll /f
-            | | |-coll /fo
-            | | | |-coll /foo
-            | | | | |-coll /foo/
-            | | | | | |-coll /foo/b
-            | | | | | | |-coll /foo/ba
-            | | | | | | | |-coll /foo/bar
-            | | | | | | | | |-route bar /foo/bar
-            | | | | | | | | |-route bar2 /foo/bar
-            | | | | | |-coll /foo/q
-            | | | | | | |-coll /foo/qu
-            | | | | | | | |-coll /foo/qux
-            | | | | | | | | |-route qux /foo/qux
-            | | | | | |-coll /foo/b
-            | | | | | | |-coll /foo/ba
-            | | | | | | | |-coll /foo/bar
-            | | | | | | | | |-route bar3 /foo/bar
-            | |-route bar4 /
-
-EOF;
-
-        $this->assertSame($expect, $this->collectionToString($result->getRoot(), '            '));
-    }
-
-    public function testMergeSlashNodes()
-    {
-        $coll = new DumperPrefixCollection();
-        $coll->setPrefix('');
-
-        $route = new DumperRoute('bar', new Route('/foo/bar'));
-        $coll = $coll->addPrefixRoute($route);
-
-        $route = new DumperRoute('bar2', new Route('/foo/bar'));
-        $coll = $coll->addPrefixRoute($route);
-
-        $route = new DumperRoute('qux', new Route('/foo/qux'));
-        $coll = $coll->addPrefixRoute($route);
-
-        $route = new DumperRoute('bar3', new Route('/foo/bar'));
-        $result = $coll->addPrefixRoute($route);
-
-        $result->getRoot()->mergeSlashNodes();
-
-        $expect = <<<'EOF'
-            |-coll /f
-            | |-coll /fo
-            | | |-coll /foo
-            | | | |-coll /foo/b
-            | | | | |-coll /foo/ba
-            | | | | | |-coll /foo/bar
-            | | | | | | |-route bar /foo/bar
-            | | | | | | |-route bar2 /foo/bar
-            | | | |-coll /foo/q
-            | | | | |-coll /foo/qu
-            | | | | | |-coll /foo/qux
-            | | | | | | |-route qux /foo/qux
-            | | | |-coll /foo/b
-            | | | | |-coll /foo/ba
-            | | | | | |-coll /foo/bar
-            | | | | | | |-route bar3 /foo/bar
-
-EOF;
-
-        $this->assertSame($expect, $this->collectionToString($result->getRoot(), '            '));
-    }
-
-    private function collectionToString(DumperCollection $collection, $prefix)
-    {
-        $string = '';
-        foreach ($collection as $route) {
-            if ($route instanceof DumperCollection) {
-                $string .= sprintf("%s|-coll %s\n", $prefix, $route->getPrefix());
-                $string .= $this->collectionToString($route, $prefix.'| ');
-            } else {
-                $string .= sprintf("%s|-route %s %s\n", $prefix, $route->getName(), $route->getRoute()->getPath());
-            }
-        }
-
-        return $string;
-    }
-}
diff --git a/vendor/symfony/routing/Tests/Matcher/Dumper/LegacyApacheMatcherDumperTest.php b/vendor/symfony/routing/Tests/Matcher/Dumper/LegacyApacheMatcherDumperTest.php
deleted file mode 100644
index 4bf513e..0000000
--- a/vendor/symfony/routing/Tests/Matcher/Dumper/LegacyApacheMatcherDumperTest.php
+++ /dev/null
@@ -1,215 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Routing\Tests\Matcher\Dumper;
-
-use Symfony\Component\Routing\Route;
-use Symfony\Component\Routing\RouteCollection;
-use Symfony\Component\Routing\Matcher\Dumper\ApacheMatcherDumper;
-
-/**
- * @group legacy
- */
-class LegacyApacheMatcherDumperTest extends \PHPUnit_Framework_TestCase
-{
-    protected static $fixturesPath;
-
-    public static function setUpBeforeClass()
-    {
-        self::$fixturesPath = realpath(__DIR__.'/../../Fixtures/');
-    }
-
-    public function testDump()
-    {
-        $dumper = new ApacheMatcherDumper($this->getRouteCollection());
-
-        $this->assertStringEqualsFile(self::$fixturesPath.'/dumper/url_matcher1.apache', $dumper->dump(), '->dump() dumps basic routes to the correct apache format.');
-    }
-
-    /**
-     * @dataProvider provideEscapeFixtures
-     */
-    public function testEscapePattern($src, $dest, $char, $with, $message)
-    {
-        $r = new \ReflectionMethod(new ApacheMatcherDumper($this->getRouteCollection()), 'escape');
-        $r->setAccessible(true);
-        $this->assertEquals($dest, $r->invoke(null, $src, $char, $with), $message);
-    }
-
-    public function provideEscapeFixtures()
-    {
-        return array(
-            array('foo', 'foo', ' ', '-', 'Preserve string that should not be escaped'),
-            array('fo-o', 'fo-o', ' ', '-', 'Preserve string that should not be escaped'),
-            array('fo o', 'fo- o', ' ', '-', 'Escape special characters'),
-            array('fo-- o', 'fo--- o', ' ', '-', 'Escape special characters'),
-            array('fo- o', 'fo- o', ' ', '-', 'Do not escape already escaped string'),
-        );
-    }
-
-    public function testEscapeScriptName()
-    {
-        $collection = new RouteCollection();
-        $collection->add('foo', new Route('/foo'));
-        $dumper = new ApacheMatcherDumper($collection);
-        $this->assertStringEqualsFile(self::$fixturesPath.'/dumper/url_matcher2.apache', $dumper->dump(array('script_name' => 'ap p_d\ ev.php')));
-    }
-
-    private function getRouteCollection()
-    {
-        $collection = new RouteCollection();
-
-        // defaults and requirements
-        $collection->add('foo', new Route(
-            '/foo/{bar}',
-            array('def' => 'test'),
-            array('bar' => 'baz|symfony')
-        ));
-        // defaults parameters in pattern
-        $collection->add('foobar', new Route(
-            '/foo/{bar}',
-            array('bar' => 'toto')
-        ));
-        // method requirement
-        $collection->add('bar', new Route(
-            '/bar/{foo}',
-            array(),
-            array(),
-            array(),
-            '',
-            array(),
-            array('GET', 'head')
-        ));
-        // method requirement (again)
-        $collection->add('baragain', new Route(
-            '/baragain/{foo}',
-            array(),
-            array(),
-            array(),
-            '',
-            array(),
-            array('get', 'post')
-        ));
-        // simple
-        $collection->add('baz', new Route(
-            '/test/baz'
-        ));
-        // simple with extension
-        $collection->add('baz2', new Route(
-            '/test/baz.html'
-        ));
-        // trailing slash
-        $collection->add('baz3', new Route(
-            '/test/baz3/'
-        ));
-        // trailing slash with variable
-        $collection->add('baz4', new Route(
-            '/test/{foo}/'
-        ));
-        // trailing slash and safe method
-        $collection->add('baz5', new Route(
-            '/test/{foo}/',
-            array(),
-            array(),
-            array(),
-            '',
-            array(),
-            array('GET')
-        ));
-        // trailing slash and unsafe method
-        $collection->add('baz5unsafe', new Route(
-            '/testunsafe/{foo}/',
-            array(),
-            array(),
-            array(),
-            '',
-            array(),
-            array('post')
-        ));
-        // complex
-        $collection->add('baz6', new Route(
-            '/test/baz',
-            array('foo' => 'bar baz')
-        ));
-        // space in path
-        $collection->add('baz7', new Route(
-            '/te st/baz'
-        ));
-        // space preceded with \ in path
-        $collection->add('baz8', new Route(
-            '/te\\ st/baz'
-        ));
-        // space preceded with \ in requirement
-        $collection->add('baz9', new Route(
-            '/test/{baz}',
-            array(),
-            array(
-                'baz' => 'te\\\\ st',
-            )
-        ));
-
-        $collection1 = new RouteCollection();
-
-        $route1 = new Route('/route1', array(), array(), array(), 'a.example.com');
-        $collection1->add('route1', $route1);
-
-        $collection2 = new RouteCollection();
-
-        $route2 = new Route('/route2', array(), array(), array(), 'a.example.com');
-        $collection2->add('route2', $route2);
-
-        $route3 = new Route('/route3', array(), array(), array(), 'b.example.com');
-        $collection2->add('route3', $route3);
-
-        $collection2->addPrefix('/c2');
-        $collection1->addCollection($collection2);
-
-        $route4 = new Route('/route4', array(), array(), array(), 'a.example.com');
-        $collection1->add('route4', $route4);
-
-        $route5 = new Route('/route5', array(), array(), array(), 'c.example.com');
-        $collection1->add('route5', $route5);
-
-        $route6 = new Route('/route6', array(), array(), array(), null);
-        $collection1->add('route6', $route6);
-
-        $collection->addCollection($collection1);
-
-        // host and variables
-
-        $collection1 = new RouteCollection();
-
-        $route11 = new Route('/route11', array(), array(), array(), '{var1}.example.com');
-        $collection1->add('route11', $route11);
-
-        $route12 = new Route('/route12', array('var1' => 'val'), array(), array(), '{var1}.example.com');
-        $collection1->add('route12', $route12);
-
-        $route13 = new Route('/route13/{name}', array(), array(), array(), '{var1}.example.com');
-        $collection1->add('route13', $route13);
-
-        $route14 = new Route('/route14/{name}', array('var1' => 'val'), array(), array(), '{var1}.example.com');
-        $collection1->add('route14', $route14);
-
-        $route15 = new Route('/route15/{name}', array(), array(), array(), 'c.example.com');
-        $collection1->add('route15', $route15);
-
-        $route16 = new Route('/route16/{name}', array('var1' => 'val'), array(), array(), null);
-        $collection1->add('route16', $route16);
-
-        $route17 = new Route('/route17', array(), array(), array(), null);
-        $collection1->add('route17', $route17);
-
-        $collection->addCollection($collection1);
-
-        return $collection;
-    }
-}
diff --git a/vendor/symfony/routing/Tests/Matcher/Dumper/PhpMatcherDumperTest.php b/vendor/symfony/routing/Tests/Matcher/Dumper/PhpMatcherDumperTest.php
deleted file mode 100644
index 2571877..0000000
--- a/vendor/symfony/routing/Tests/Matcher/Dumper/PhpMatcherDumperTest.php
+++ /dev/null
@@ -1,289 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Routing\Tests\Matcher\Dumper;
-
-use Symfony\Component\Routing\Matcher\Dumper\PhpMatcherDumper;
-use Symfony\Component\Routing\Route;
-use Symfony\Component\Routing\RouteCollection;
-
-class PhpMatcherDumperTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @expectedException \LogicException
-     */
-    public function testDumpWhenSchemeIsUsedWithoutAProperDumper()
-    {
-        $collection = new RouteCollection();
-        $collection->add('secure', new Route(
-            '/secure',
-            array(),
-            array(),
-            array(),
-            '',
-            array('https')
-        ));
-        $dumper = new PhpMatcherDumper($collection);
-        $dumper->dump();
-    }
-
-    /**
-     * @dataProvider getRouteCollections
-     */
-    public function testDump(RouteCollection $collection, $fixture, $options = array())
-    {
-        $basePath = __DIR__.'/../../Fixtures/dumper/';
-
-        $dumper = new PhpMatcherDumper($collection);
-        $this->assertStringEqualsFile($basePath.$fixture, $dumper->dump($options), '->dump() correctly dumps routes as optimized PHP code.');
-    }
-
-    public function getRouteCollections()
-    {
-        /* test case 1 */
-
-        $collection = new RouteCollection();
-
-        $collection->add('overridden', new Route('/overridden'));
-
-        // defaults and requirements
-        $collection->add('foo', new Route(
-            '/foo/{bar}',
-            array('def' => 'test'),
-            array('bar' => 'baz|symfony')
-        ));
-        // method requirement
-        $collection->add('bar', new Route(
-            '/bar/{foo}',
-            array(),
-            array(),
-            array(),
-            '',
-            array(),
-            array('GET', 'head')
-        ));
-        // GET method requirement automatically adds HEAD as valid
-        $collection->add('barhead', new Route(
-            '/barhead/{foo}',
-            array(),
-            array(),
-            array(),
-            '',
-            array(),
-            array('GET')
-        ));
-        // simple
-        $collection->add('baz', new Route(
-            '/test/baz'
-        ));
-        // simple with extension
-        $collection->add('baz2', new Route(
-            '/test/baz.html'
-        ));
-        // trailing slash
-        $collection->add('baz3', new Route(
-            '/test/baz3/'
-        ));
-        // trailing slash with variable
-        $collection->add('baz4', new Route(
-            '/test/{foo}/'
-        ));
-        // trailing slash and method
-        $collection->add('baz5', new Route(
-            '/test/{foo}/',
-            array(),
-            array(),
-            array(),
-            '',
-            array(),
-            array('post')
-        ));
-        // complex name
-        $collection->add('baz.baz6', new Route(
-            '/test/{foo}/',
-            array(),
-            array(),
-            array(),
-            '',
-            array(),
-            array('put')
-        ));
-        // defaults without variable
-        $collection->add('foofoo', new Route(
-            '/foofoo',
-            array('def' => 'test')
-        ));
-        // pattern with quotes
-        $collection->add('quoter', new Route(
-            '/{quoter}',
-            array(),
-            array('quoter' => '[\']+')
-        ));
-        // space in pattern
-        $collection->add('space', new Route(
-            '/spa ce'
-        ));
-
-        // prefixes
-        $collection1 = new RouteCollection();
-        $collection1->add('overridden', new Route('/overridden1'));
-        $collection1->add('foo1', new Route('/{foo}'));
-        $collection1->add('bar1', new Route('/{bar}'));
-        $collection1->addPrefix('/b\'b');
-        $collection2 = new RouteCollection();
-        $collection2->addCollection($collection1);
-        $collection2->add('overridden', new Route('/{var}', array(), array('var' => '.*')));
-        $collection1 = new RouteCollection();
-        $collection1->add('foo2', new Route('/{foo1}'));
-        $collection1->add('bar2', new Route('/{bar1}'));
-        $collection1->addPrefix('/b\'b');
-        $collection2->addCollection($collection1);
-        $collection2->addPrefix('/a');
-        $collection->addCollection($collection2);
-
-        // overridden through addCollection() and multiple sub-collections with no own prefix
-        $collection1 = new RouteCollection();
-        $collection1->add('overridden2', new Route('/old'));
-        $collection1->add('helloWorld', new Route('/hello/{who}', array('who' => 'World!')));
-        $collection2 = new RouteCollection();
-        $collection3 = new RouteCollection();
-        $collection3->add('overridden2', new Route('/new'));
-        $collection3->add('hey', new Route('/hey/'));
-        $collection2->addCollection($collection3);
-        $collection1->addCollection($collection2);
-        $collection1->addPrefix('/multi');
-        $collection->addCollection($collection1);
-
-        // "dynamic" prefix
-        $collection1 = new RouteCollection();
-        $collection1->add('foo3', new Route('/{foo}'));
-        $collection1->add('bar3', new Route('/{bar}'));
-        $collection1->addPrefix('/b');
-        $collection1->addPrefix('{_locale}');
-        $collection->addCollection($collection1);
-
-        // route between collections
-        $collection->add('ababa', new Route('/ababa'));
-
-        // collection with static prefix but only one route
-        $collection1 = new RouteCollection();
-        $collection1->add('foo4', new Route('/{foo}'));
-        $collection1->addPrefix('/aba');
-        $collection->addCollection($collection1);
-
-        // prefix and host
-
-        $collection1 = new RouteCollection();
-
-        $route1 = new Route('/route1', array(), array(), array(), 'a.example.com');
-        $collection1->add('route1', $route1);
-
-        $collection2 = new RouteCollection();
-
-        $route2 = new Route('/c2/route2', array(), array(), array(), 'a.example.com');
-        $collection1->add('route2', $route2);
-
-        $route3 = new Route('/c2/route3', array(), array(), array(), 'b.example.com');
-        $collection1->add('route3', $route3);
-
-        $route4 = new Route('/route4', array(), array(), array(), 'a.example.com');
-        $collection1->add('route4', $route4);
-
-        $route5 = new Route('/route5', array(), array(), array(), 'c.example.com');
-        $collection1->add('route5', $route5);
-
-        $route6 = new Route('/route6', array(), array(), array(), null);
-        $collection1->add('route6', $route6);
-
-        $collection->addCollection($collection1);
-
-        // host and variables
-
-        $collection1 = new RouteCollection();
-
-        $route11 = new Route('/route11', array(), array(), array(), '{var1}.example.com');
-        $collection1->add('route11', $route11);
-
-        $route12 = new Route('/route12', array('var1' => 'val'), array(), array(), '{var1}.example.com');
-        $collection1->add('route12', $route12);
-
-        $route13 = new Route('/route13/{name}', array(), array(), array(), '{var1}.example.com');
-        $collection1->add('route13', $route13);
-
-        $route14 = new Route('/route14/{name}', array('var1' => 'val'), array(), array(), '{var1}.example.com');
-        $collection1->add('route14', $route14);
-
-        $route15 = new Route('/route15/{name}', array(), array(), array(), 'c.example.com');
-        $collection1->add('route15', $route15);
-
-        $route16 = new Route('/route16/{name}', array('var1' => 'val'), array(), array(), null);
-        $collection1->add('route16', $route16);
-
-        $route17 = new Route('/route17', array(), array(), array(), null);
-        $collection1->add('route17', $route17);
-
-        $collection->addCollection($collection1);
-
-        // multiple sub-collections with a single route and a prefix each
-        $collection1 = new RouteCollection();
-        $collection1->add('a', new Route('/a...'));
-        $collection2 = new RouteCollection();
-        $collection2->add('b', new Route('/{var}'));
-        $collection3 = new RouteCollection();
-        $collection3->add('c', new Route('/{var}'));
-        $collection3->addPrefix('/c');
-        $collection2->addCollection($collection3);
-        $collection2->addPrefix('/b');
-        $collection1->addCollection($collection2);
-        $collection1->addPrefix('/a');
-        $collection->addCollection($collection1);
-
-        /* test case 2 */
-
-        $redirectCollection = clone $collection;
-
-        // force HTTPS redirection
-        $redirectCollection->add('secure', new Route(
-            '/secure',
-            array(),
-            array(),
-            array(),
-            '',
-            array('https')
-        ));
-
-        // force HTTP redirection
-        $redirectCollection->add('nonsecure', new Route(
-            '/nonsecure',
-            array(),
-            array(),
-            array(),
-            '',
-            array('http')
-        ));
-
-        /* test case 3 */
-
-        $rootprefixCollection = new RouteCollection();
-        $rootprefixCollection->add('static', new Route('/test'));
-        $rootprefixCollection->add('dynamic', new Route('/{var}'));
-        $rootprefixCollection->addPrefix('rootprefix');
-        $route = new Route('/with-condition');
-        $route->setCondition('context.getMethod() == "GET"');
-        $rootprefixCollection->add('with-condition', $route);
-
-        return array(
-           array($collection, 'url_matcher1.php', array()),
-           array($redirectCollection, 'url_matcher2.php', array('base_class' => 'Symfony\Component\Routing\Tests\Fixtures\RedirectableUrlMatcher')),
-           array($rootprefixCollection, 'url_matcher3.php', array()),
-        );
-    }
-}
diff --git a/vendor/symfony/routing/Tests/Matcher/LegacyApacheUrlMatcherTest.php b/vendor/symfony/routing/Tests/Matcher/LegacyApacheUrlMatcherTest.php
deleted file mode 100644
index 931f910..0000000
--- a/vendor/symfony/routing/Tests/Matcher/LegacyApacheUrlMatcherTest.php
+++ /dev/null
@@ -1,155 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Routing\Tests\Matcher;
-
-use Symfony\Component\Routing\RouteCollection;
-use Symfony\Component\Routing\RequestContext;
-use Symfony\Component\Routing\Matcher\ApacheUrlMatcher;
-
-/**
- * @group legacy
- */
-class LegacyApacheUrlMatcherTest extends \PHPUnit_Framework_TestCase
-{
-    protected $server;
-
-    protected function setUp()
-    {
-        $this->server = $_SERVER;
-    }
-
-    protected function tearDown()
-    {
-        $_SERVER = $this->server;
-    }
-
-    /**
-     * @dataProvider getMatchData
-     */
-    public function testMatch($name, $pathinfo, $server, $expect)
-    {
-        $collection = new RouteCollection();
-        $context = new RequestContext();
-        $matcher = new ApacheUrlMatcher($collection, $context);
-
-        $_SERVER = $server;
-
-        $result = $matcher->match($pathinfo);
-        $this->assertSame(var_export($expect, true), var_export($result, true));
-    }
-
-    public function getMatchData()
-    {
-        return array(
-            array(
-                'Simple route',
-                '/hello/world',
-                array(
-                    '_ROUTING_route' => 'hello',
-                    '_ROUTING_param__controller' => 'AcmeBundle:Default:index',
-                    '_ROUTING_param_name' => 'world',
-                ),
-                array(
-                    '_controller' => 'AcmeBundle:Default:index',
-                    'name' => 'world',
-                    '_route' => 'hello',
-                ),
-            ),
-            array(
-                'Route with params and defaults',
-                '/hello/hugo',
-                array(
-                    '_ROUTING_route' => 'hello',
-                    '_ROUTING_param__controller' => 'AcmeBundle:Default:index',
-                    '_ROUTING_param_name' => 'hugo',
-                    '_ROUTING_default_name' => 'world',
-                ),
-                array(
-                    'name' => 'hugo',
-                    '_controller' => 'AcmeBundle:Default:index',
-                    '_route' => 'hello',
-                ),
-            ),
-            array(
-                'Route with defaults only',
-                '/hello',
-                array(
-                    '_ROUTING_route' => 'hello',
-                    '_ROUTING_param__controller' => 'AcmeBundle:Default:index',
-                    '_ROUTING_default_name' => 'world',
-                ),
-                array(
-                    'name' => 'world',
-                    '_controller' => 'AcmeBundle:Default:index',
-                    '_route' => 'hello',
-                ),
-            ),
-            array(
-                'Redirect with many ignored attributes',
-                '/legacy/{cat1}/{cat2}/{id}.html',
-                array(
-                    '_ROUTING_route' => 'product_view',
-                    '_ROUTING_param__controller' => 'FrameworkBundle:Redirect:redirect',
-                    '_ROUTING_default_ignoreAttributes[0]' => 'attr_a',
-                    '_ROUTING_default_ignoreAttributes[1]' => 'attr_b',
-                ),
-                array(
-                    'ignoreAttributes' => array('attr_a', 'attr_b'),
-                    '_controller' => 'FrameworkBundle:Redirect:redirect',
-                    '_route' => 'product_view',
-                ),
-            ),
-            array(
-                'REDIRECT_ envs',
-                '/hello/world',
-                array(
-                    'REDIRECT__ROUTING_route' => 'hello',
-                    'REDIRECT__ROUTING_param__controller' => 'AcmeBundle:Default:index',
-                    'REDIRECT__ROUTING_param_name' => 'world',
-                ),
-                array(
-                    '_controller' => 'AcmeBundle:Default:index',
-                    'name' => 'world',
-                    '_route' => 'hello',
-                ),
-            ),
-            array(
-                'REDIRECT_REDIRECT_ envs',
-                '/hello/world',
-                array(
-                    'REDIRECT_REDIRECT__ROUTING_route' => 'hello',
-                    'REDIRECT_REDIRECT__ROUTING_param__controller' => 'AcmeBundle:Default:index',
-                    'REDIRECT_REDIRECT__ROUTING_param_name' => 'world',
-                ),
-                array(
-                    '_controller' => 'AcmeBundle:Default:index',
-                    'name' => 'world',
-                    '_route' => 'hello',
-                ),
-            ),
-            array(
-                'REDIRECT_REDIRECT_ envs',
-                '/hello/world',
-                array(
-                    'REDIRECT_REDIRECT__ROUTING_route' => 'hello',
-                    'REDIRECT_REDIRECT__ROUTING_param__controller' => 'AcmeBundle:Default:index',
-                    'REDIRECT_REDIRECT__ROUTING_param_name' => 'world',
-                ),
-                array(
-                    '_controller' => 'AcmeBundle:Default:index',
-                    'name' => 'world',
-                    '_route' => 'hello',
-                ),
-            ),
-        );
-    }
-}
diff --git a/vendor/symfony/routing/Tests/Matcher/RedirectableUrlMatcherTest.php b/vendor/symfony/routing/Tests/Matcher/RedirectableUrlMatcherTest.php
deleted file mode 100644
index b6c5a3e..0000000
--- a/vendor/symfony/routing/Tests/Matcher/RedirectableUrlMatcherTest.php
+++ /dev/null
@@ -1,71 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Routing\Tests\Matcher;
-
-use Symfony\Component\Routing\Route;
-use Symfony\Component\Routing\RouteCollection;
-use Symfony\Component\Routing\RequestContext;
-
-class RedirectableUrlMatcherTest extends \PHPUnit_Framework_TestCase
-{
-    public function testRedirectWhenNoSlash()
-    {
-        $coll = new RouteCollection();
-        $coll->add('foo', new Route('/foo/'));
-
-        $matcher = $this->getMockForAbstractClass('Symfony\Component\Routing\Matcher\RedirectableUrlMatcher', array($coll, new RequestContext()));
-        $matcher->expects($this->once())->method('redirect');
-        $matcher->match('/foo');
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Routing\Exception\ResourceNotFoundException
-     */
-    public function testRedirectWhenNoSlashForNonSafeMethod()
-    {
-        $coll = new RouteCollection();
-        $coll->add('foo', new Route('/foo/'));
-
-        $context = new RequestContext();
-        $context->setMethod('POST');
-        $matcher = $this->getMockForAbstractClass('Symfony\Component\Routing\Matcher\RedirectableUrlMatcher', array($coll, $context));
-        $matcher->match('/foo');
-    }
-
-    public function testSchemeRedirectRedirectsToFirstScheme()
-    {
-        $coll = new RouteCollection();
-        $coll->add('foo', new Route('/foo', array(), array(), array(), '', array('FTP', 'HTTPS')));
-
-        $matcher = $this->getMockForAbstractClass('Symfony\Component\Routing\Matcher\RedirectableUrlMatcher', array($coll, new RequestContext()));
-        $matcher
-            ->expects($this->once())
-            ->method('redirect')
-            ->with('/foo', 'foo', 'ftp')
-            ->will($this->returnValue(array('_route' => 'foo')))
-        ;
-        $matcher->match('/foo');
-    }
-
-    public function testNoSchemaRedirectIfOnOfMultipleSchemesMatches()
-    {
-        $coll = new RouteCollection();
-        $coll->add('foo', new Route('/foo', array(), array(), array(), '', array('https', 'http')));
-
-        $matcher = $this->getMockForAbstractClass('Symfony\Component\Routing\Matcher\RedirectableUrlMatcher', array($coll, new RequestContext()));
-        $matcher
-            ->expects($this->never())
-            ->method('redirect')
-        ;
-        $matcher->match('/foo');
-    }
-}
diff --git a/vendor/symfony/routing/Tests/Matcher/TraceableUrlMatcherTest.php b/vendor/symfony/routing/Tests/Matcher/TraceableUrlMatcherTest.php
deleted file mode 100644
index 20b30d7..0000000
--- a/vendor/symfony/routing/Tests/Matcher/TraceableUrlMatcherTest.php
+++ /dev/null
@@ -1,101 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Routing\Tests\Matcher;
-
-use Symfony\Component\Routing\Route;
-use Symfony\Component\Routing\RouteCollection;
-use Symfony\Component\Routing\RequestContext;
-use Symfony\Component\Routing\Matcher\TraceableUrlMatcher;
-
-class TraceableUrlMatcherTest extends \PHPUnit_Framework_TestCase
-{
-    public function test()
-    {
-        $coll = new RouteCollection();
-        $coll->add('foo', new Route('/foo', array(), array(), array(), '', array(), array('POST')));
-        $coll->add('bar', new Route('/bar/{id}', array(), array('id' => '\d+')));
-        $coll->add('bar1', new Route('/bar/{name}', array(), array('id' => '\w+'), array(), '', array(), array('POST')));
-        $coll->add('bar2', new Route('/foo', array(), array(), array(), 'baz'));
-        $coll->add('bar3', new Route('/foo1', array(), array(), array(), 'baz'));
-        $coll->add('bar4', new Route('/foo2', array(), array(), array(), 'baz', array(), array(), 'context.getMethod() == "GET"'));
-
-        $context = new RequestContext();
-        $context->setHost('baz');
-
-        $matcher = new TraceableUrlMatcher($coll, $context);
-        $traces = $matcher->getTraces('/babar');
-        $this->assertSame(array(0, 0, 0, 0, 0, 0), $this->getLevels($traces));
-
-        $traces = $matcher->getTraces('/foo');
-        $this->assertSame(array(1, 0, 0, 2), $this->getLevels($traces));
-
-        $traces = $matcher->getTraces('/bar/12');
-        $this->assertSame(array(0, 2), $this->getLevels($traces));
-
-        $traces = $matcher->getTraces('/bar/dd');
-        $this->assertSame(array(0, 1, 1, 0, 0, 0), $this->getLevels($traces));
-
-        $traces = $matcher->getTraces('/foo1');
-        $this->assertSame(array(0, 0, 0, 0, 2), $this->getLevels($traces));
-
-        $context->setMethod('POST');
-        $traces = $matcher->getTraces('/foo');
-        $this->assertSame(array(2), $this->getLevels($traces));
-
-        $traces = $matcher->getTraces('/bar/dd');
-        $this->assertSame(array(0, 1, 2), $this->getLevels($traces));
-
-        $traces = $matcher->getTraces('/foo2');
-        $this->assertSame(array(0, 0, 0, 0, 0, 1), $this->getLevels($traces));
-    }
-
-    public function testMatchRouteOnMultipleHosts()
-    {
-        $routes = new RouteCollection();
-        $routes->add('first', new Route(
-            '/mypath/',
-            array('_controller' => 'MainBundle:Info:first'),
-            array(),
-            array(),
-            'some.example.com'
-        ));
-
-        $routes->add('second', new Route(
-            '/mypath/',
-            array('_controller' => 'MainBundle:Info:second'),
-            array(),
-            array(),
-            'another.example.com'
-        ));
-
-        $context = new RequestContext();
-        $context->setHost('baz');
-
-        $matcher = new TraceableUrlMatcher($routes, $context);
-
-        $traces = $matcher->getTraces('/mypath/');
-        $this->assertSame(
-            array(TraceableUrlMatcher::ROUTE_ALMOST_MATCHES, TraceableUrlMatcher::ROUTE_ALMOST_MATCHES),
-            $this->getLevels($traces)
-        );
-    }
-
-    public function getLevels($traces)
-    {
-        $levels = array();
-        foreach ($traces as $trace) {
-            $levels[] = $trace['level'];
-        }
-
-        return $levels;
-    }
-}
diff --git a/vendor/symfony/routing/Tests/Matcher/UrlMatcherTest.php b/vendor/symfony/routing/Tests/Matcher/UrlMatcherTest.php
deleted file mode 100644
index bf82fb7..0000000
--- a/vendor/symfony/routing/Tests/Matcher/UrlMatcherTest.php
+++ /dev/null
@@ -1,419 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Routing\Tests\Matcher;
-
-use Symfony\Component\Routing\Exception\MethodNotAllowedException;
-use Symfony\Component\Routing\Exception\ResourceNotFoundException;
-use Symfony\Component\Routing\Matcher\UrlMatcher;
-use Symfony\Component\Routing\Route;
-use Symfony\Component\Routing\RouteCollection;
-use Symfony\Component\Routing\RequestContext;
-
-class UrlMatcherTest extends \PHPUnit_Framework_TestCase
-{
-    public function testNoMethodSoAllowed()
-    {
-        $coll = new RouteCollection();
-        $coll->add('foo', new Route('/foo'));
-
-        $matcher = new UrlMatcher($coll, new RequestContext());
-        $this->assertInternalType('array', $matcher->match('/foo'));
-    }
-
-    public function testMethodNotAllowed()
-    {
-        $coll = new RouteCollection();
-        $coll->add('foo', new Route('/foo', array(), array(), array(), '', array(), array('post')));
-
-        $matcher = new UrlMatcher($coll, new RequestContext());
-
-        try {
-            $matcher->match('/foo');
-            $this->fail();
-        } catch (MethodNotAllowedException $e) {
-            $this->assertEquals(array('POST'), $e->getAllowedMethods());
-        }
-    }
-
-    public function testHeadAllowedWhenRequirementContainsGet()
-    {
-        $coll = new RouteCollection();
-        $coll->add('foo', new Route('/foo', array(), array(), array(), '', array(), array('get')));
-
-        $matcher = new UrlMatcher($coll, new RequestContext('', 'head'));
-        $this->assertInternalType('array', $matcher->match('/foo'));
-    }
-
-    public function testMethodNotAllowedAggregatesAllowedMethods()
-    {
-        $coll = new RouteCollection();
-        $coll->add('foo1', new Route('/foo', array(), array(), array(), '', array(), array('post')));
-        $coll->add('foo2', new Route('/foo', array(), array(), array(), '', array(), array('put', 'delete')));
-
-        $matcher = new UrlMatcher($coll, new RequestContext());
-
-        try {
-            $matcher->match('/foo');
-            $this->fail();
-        } catch (MethodNotAllowedException $e) {
-            $this->assertEquals(array('POST', 'PUT', 'DELETE'), $e->getAllowedMethods());
-        }
-    }
-
-    public function testMatch()
-    {
-        // test the patterns are matched and parameters are returned
-        $collection = new RouteCollection();
-        $collection->add('foo', new Route('/foo/{bar}'));
-        $matcher = new UrlMatcher($collection, new RequestContext());
-        try {
-            $matcher->match('/no-match');
-            $this->fail();
-        } catch (ResourceNotFoundException $e) {
-        }
-        $this->assertEquals(array('_route' => 'foo', 'bar' => 'baz'), $matcher->match('/foo/baz'));
-
-        // test that defaults are merged
-        $collection = new RouteCollection();
-        $collection->add('foo', new Route('/foo/{bar}', array('def' => 'test')));
-        $matcher = new UrlMatcher($collection, new RequestContext());
-        $this->assertEquals(array('_route' => 'foo', 'bar' => 'baz', 'def' => 'test'), $matcher->match('/foo/baz'));
-
-        // test that route "method" is ignored if no method is given in the context
-        $collection = new RouteCollection();
-        $collection->add('foo', new Route('/foo', array(), array(), array(), '', array(), array('get', 'head')));
-        $matcher = new UrlMatcher($collection, new RequestContext());
-        $this->assertInternalType('array', $matcher->match('/foo'));
-
-        // route does not match with POST method context
-        $matcher = new UrlMatcher($collection, new RequestContext('', 'post'));
-        try {
-            $matcher->match('/foo');
-            $this->fail();
-        } catch (MethodNotAllowedException $e) {
-        }
-
-        // route does match with GET or HEAD method context
-        $matcher = new UrlMatcher($collection, new RequestContext());
-        $this->assertInternalType('array', $matcher->match('/foo'));
-        $matcher = new UrlMatcher($collection, new RequestContext('', 'head'));
-        $this->assertInternalType('array', $matcher->match('/foo'));
-
-        // route with an optional variable as the first segment
-        $collection = new RouteCollection();
-        $collection->add('bar', new Route('/{bar}/foo', array('bar' => 'bar'), array('bar' => 'foo|bar')));
-        $matcher = new UrlMatcher($collection, new RequestContext());
-        $this->assertEquals(array('_route' => 'bar', 'bar' => 'bar'), $matcher->match('/bar/foo'));
-        $this->assertEquals(array('_route' => 'bar', 'bar' => 'foo'), $matcher->match('/foo/foo'));
-
-        $collection = new RouteCollection();
-        $collection->add('bar', new Route('/{bar}', array('bar' => 'bar'), array('bar' => 'foo|bar')));
-        $matcher = new UrlMatcher($collection, new RequestContext());
-        $this->assertEquals(array('_route' => 'bar', 'bar' => 'foo'), $matcher->match('/foo'));
-        $this->assertEquals(array('_route' => 'bar', 'bar' => 'bar'), $matcher->match('/'));
-
-        // route with only optional variables
-        $collection = new RouteCollection();
-        $collection->add('bar', new Route('/{foo}/{bar}', array('foo' => 'foo', 'bar' => 'bar'), array()));
-        $matcher = new UrlMatcher($collection, new RequestContext());
-        $this->assertEquals(array('_route' => 'bar', 'foo' => 'foo', 'bar' => 'bar'), $matcher->match('/'));
-        $this->assertEquals(array('_route' => 'bar', 'foo' => 'a', 'bar' => 'bar'), $matcher->match('/a'));
-        $this->assertEquals(array('_route' => 'bar', 'foo' => 'a', 'bar' => 'b'), $matcher->match('/a/b'));
-    }
-
-    public function testMatchWithPrefixes()
-    {
-        $collection = new RouteCollection();
-        $collection->add('foo', new Route('/{foo}'));
-        $collection->addPrefix('/b');
-        $collection->addPrefix('/a');
-
-        $matcher = new UrlMatcher($collection, new RequestContext());
-        $this->assertEquals(array('_route' => 'foo', 'foo' => 'foo'), $matcher->match('/a/b/foo'));
-    }
-
-    public function testMatchWithDynamicPrefix()
-    {
-        $collection = new RouteCollection();
-        $collection->add('foo', new Route('/{foo}'));
-        $collection->addPrefix('/b');
-        $collection->addPrefix('/{_locale}');
-
-        $matcher = new UrlMatcher($collection, new RequestContext());
-        $this->assertEquals(array('_locale' => 'fr', '_route' => 'foo', 'foo' => 'foo'), $matcher->match('/fr/b/foo'));
-    }
-
-    public function testMatchSpecialRouteName()
-    {
-        $collection = new RouteCollection();
-        $collection->add('$péß^a|', new Route('/bar'));
-
-        $matcher = new UrlMatcher($collection, new RequestContext());
-        $this->assertEquals(array('_route' => '$péß^a|'), $matcher->match('/bar'));
-    }
-
-    public function testMatchNonAlpha()
-    {
-        $collection = new RouteCollection();
-        $chars = '!"$%éà &\'()*+,./:;<=>@ABCDEFGHIJKLMNOPQRSTUVWXYZ\\[]^_`abcdefghijklmnopqrstuvwxyz{|}~-';
-        $collection->add('foo', new Route('/{foo}/bar', array(), array('foo' => '['.preg_quote($chars).']+')));
-
-        $matcher = new UrlMatcher($collection, new RequestContext());
-        $this->assertEquals(array('_route' => 'foo', 'foo' => $chars), $matcher->match('/'.rawurlencode($chars).'/bar'));
-        $this->assertEquals(array('_route' => 'foo', 'foo' => $chars), $matcher->match('/'.strtr($chars, array('%' => '%25')).'/bar'));
-    }
-
-    public function testMatchWithDotMetacharacterInRequirements()
-    {
-        $collection = new RouteCollection();
-        $collection->add('foo', new Route('/{foo}/bar', array(), array('foo' => '.+')));
-
-        $matcher = new UrlMatcher($collection, new RequestContext());
-        $this->assertEquals(array('_route' => 'foo', 'foo' => "\n"), $matcher->match('/'.urlencode("\n").'/bar'), 'linefeed character is matched');
-    }
-
-    public function testMatchOverriddenRoute()
-    {
-        $collection = new RouteCollection();
-        $collection->add('foo', new Route('/foo'));
-
-        $collection1 = new RouteCollection();
-        $collection1->add('foo', new Route('/foo1'));
-
-        $collection->addCollection($collection1);
-
-        $matcher = new UrlMatcher($collection, new RequestContext());
-
-        $this->assertEquals(array('_route' => 'foo'), $matcher->match('/foo1'));
-        $this->setExpectedException('Symfony\Component\Routing\Exception\ResourceNotFoundException');
-        $this->assertEquals(array(), $matcher->match('/foo'));
-    }
-
-    public function testMatchRegression()
-    {
-        $coll = new RouteCollection();
-        $coll->add('foo', new Route('/foo/{foo}'));
-        $coll->add('bar', new Route('/foo/bar/{foo}'));
-
-        $matcher = new UrlMatcher($coll, new RequestContext());
-        $this->assertEquals(array('foo' => 'bar', '_route' => 'bar'), $matcher->match('/foo/bar/bar'));
-
-        $collection = new RouteCollection();
-        $collection->add('foo', new Route('/{bar}'));
-        $matcher = new UrlMatcher($collection, new RequestContext());
-        try {
-            $matcher->match('/');
-            $this->fail();
-        } catch (ResourceNotFoundException $e) {
-        }
-    }
-
-    public function testDefaultRequirementForOptionalVariables()
-    {
-        $coll = new RouteCollection();
-        $coll->add('test', new Route('/{page}.{_format}', array('page' => 'index', '_format' => 'html')));
-
-        $matcher = new UrlMatcher($coll, new RequestContext());
-        $this->assertEquals(array('page' => 'my-page', '_format' => 'xml', '_route' => 'test'), $matcher->match('/my-page.xml'));
-    }
-
-    public function testMatchingIsEager()
-    {
-        $coll = new RouteCollection();
-        $coll->add('test', new Route('/{foo}-{bar}-', array(), array('foo' => '.+', 'bar' => '.+')));
-
-        $matcher = new UrlMatcher($coll, new RequestContext());
-        $this->assertEquals(array('foo' => 'text1-text2-text3', 'bar' => 'text4', '_route' => 'test'), $matcher->match('/text1-text2-text3-text4-'));
-    }
-
-    public function testAdjacentVariables()
-    {
-        $coll = new RouteCollection();
-        $coll->add('test', new Route('/{w}{x}{y}{z}.{_format}', array('z' => 'default-z', '_format' => 'html'), array('y' => 'y|Y')));
-
-        $matcher = new UrlMatcher($coll, new RequestContext());
-        // 'w' eagerly matches as much as possible and the other variables match the remaining chars.
-        // This also shows that the variables w-z must all exclude the separating char (the dot '.' in this case) by default requirement.
-        // Otherwise they would also consume '.xml' and _format would never match as it's an optional variable.
-        $this->assertEquals(array('w' => 'wwwww', 'x' => 'x', 'y' => 'Y', 'z' => 'Z', '_format' => 'xml', '_route' => 'test'), $matcher->match('/wwwwwxYZ.xml'));
-        // As 'y' has custom requirement and can only be of value 'y|Y', it will leave  'ZZZ' to variable z.
-        // So with carefully chosen requirements adjacent variables, can be useful.
-        $this->assertEquals(array('w' => 'wwwww', 'x' => 'x', 'y' => 'y', 'z' => 'ZZZ', '_format' => 'html', '_route' => 'test'), $matcher->match('/wwwwwxyZZZ'));
-        // z and _format are optional.
-        $this->assertEquals(array('w' => 'wwwww', 'x' => 'x', 'y' => 'y', 'z' => 'default-z', '_format' => 'html', '_route' => 'test'), $matcher->match('/wwwwwxy'));
-
-        $this->setExpectedException('Symfony\Component\Routing\Exception\ResourceNotFoundException');
-        $matcher->match('/wxy.html');
-    }
-
-    public function testOptionalVariableWithNoRealSeparator()
-    {
-        $coll = new RouteCollection();
-        $coll->add('test', new Route('/get{what}', array('what' => 'All')));
-        $matcher = new UrlMatcher($coll, new RequestContext());
-
-        $this->assertEquals(array('what' => 'All', '_route' => 'test'), $matcher->match('/get'));
-        $this->assertEquals(array('what' => 'Sites', '_route' => 'test'), $matcher->match('/getSites'));
-
-        // Usually the character in front of an optional parameter can be left out, e.g. with pattern '/get/{what}' just '/get' would match.
-        // But here the 't' in 'get' is not a separating character, so it makes no sense to match without it.
-        $this->setExpectedException('Symfony\Component\Routing\Exception\ResourceNotFoundException');
-        $matcher->match('/ge');
-    }
-
-    public function testRequiredVariableWithNoRealSeparator()
-    {
-        $coll = new RouteCollection();
-        $coll->add('test', new Route('/get{what}Suffix'));
-        $matcher = new UrlMatcher($coll, new RequestContext());
-
-        $this->assertEquals(array('what' => 'Sites', '_route' => 'test'), $matcher->match('/getSitesSuffix'));
-    }
-
-    public function testDefaultRequirementOfVariable()
-    {
-        $coll = new RouteCollection();
-        $coll->add('test', new Route('/{page}.{_format}'));
-        $matcher = new UrlMatcher($coll, new RequestContext());
-
-        $this->assertEquals(array('page' => 'index', '_format' => 'mobile.html', '_route' => 'test'), $matcher->match('/index.mobile.html'));
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Routing\Exception\ResourceNotFoundException
-     */
-    public function testDefaultRequirementOfVariableDisallowsSlash()
-    {
-        $coll = new RouteCollection();
-        $coll->add('test', new Route('/{page}.{_format}'));
-        $matcher = new UrlMatcher($coll, new RequestContext());
-
-        $matcher->match('/index.sl/ash');
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Routing\Exception\ResourceNotFoundException
-     */
-    public function testDefaultRequirementOfVariableDisallowsNextSeparator()
-    {
-        $coll = new RouteCollection();
-        $coll->add('test', new Route('/{page}.{_format}', array(), array('_format' => 'html|xml')));
-        $matcher = new UrlMatcher($coll, new RequestContext());
-
-        $matcher->match('/do.t.html');
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Routing\Exception\ResourceNotFoundException
-     */
-    public function testSchemeRequirement()
-    {
-        $coll = new RouteCollection();
-        $coll->add('foo', new Route('/foo', array(), array(), array(), '', array('https')));
-        $matcher = new UrlMatcher($coll, new RequestContext());
-        $matcher->match('/foo');
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Routing\Exception\ResourceNotFoundException
-     */
-    public function testCondition()
-    {
-        $coll = new RouteCollection();
-        $route = new Route('/foo');
-        $route->setCondition('context.getMethod() == "POST"');
-        $coll->add('foo', $route);
-        $matcher = new UrlMatcher($coll, new RequestContext());
-        $matcher->match('/foo');
-    }
-
-    public function testDecodeOnce()
-    {
-        $coll = new RouteCollection();
-        $coll->add('foo', new Route('/foo/{foo}'));
-
-        $matcher = new UrlMatcher($coll, new RequestContext());
-        $this->assertEquals(array('foo' => 'bar%23', '_route' => 'foo'), $matcher->match('/foo/bar%2523'));
-    }
-
-    public function testCannotRelyOnPrefix()
-    {
-        $coll = new RouteCollection();
-
-        $subColl = new RouteCollection();
-        $subColl->add('bar', new Route('/bar'));
-        $subColl->addPrefix('/prefix');
-        // overwrite the pattern, so the prefix is not valid anymore for this route in the collection
-        $subColl->get('bar')->setPath('/new');
-
-        $coll->addCollection($subColl);
-
-        $matcher = new UrlMatcher($coll, new RequestContext());
-        $this->assertEquals(array('_route' => 'bar'), $matcher->match('/new'));
-    }
-
-    public function testWithHost()
-    {
-        $coll = new RouteCollection();
-        $coll->add('foo', new Route('/foo/{foo}', array(), array(), array(), '{locale}.example.com'));
-
-        $matcher = new UrlMatcher($coll, new RequestContext('', 'GET', 'en.example.com'));
-        $this->assertEquals(array('foo' => 'bar', '_route' => 'foo', 'locale' => 'en'), $matcher->match('/foo/bar'));
-    }
-
-    public function testWithHostOnRouteCollection()
-    {
-        $coll = new RouteCollection();
-        $coll->add('foo', new Route('/foo/{foo}'));
-        $coll->add('bar', new Route('/bar/{foo}', array(), array(), array(), '{locale}.example.net'));
-        $coll->setHost('{locale}.example.com');
-
-        $matcher = new UrlMatcher($coll, new RequestContext('', 'GET', 'en.example.com'));
-        $this->assertEquals(array('foo' => 'bar', '_route' => 'foo', 'locale' => 'en'), $matcher->match('/foo/bar'));
-
-        $matcher = new UrlMatcher($coll, new RequestContext('', 'GET', 'en.example.com'));
-        $this->assertEquals(array('foo' => 'bar', '_route' => 'bar', 'locale' => 'en'), $matcher->match('/bar/bar'));
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Routing\Exception\ResourceNotFoundException
-     */
-    public function testWithOutHostHostDoesNotMatch()
-    {
-        $coll = new RouteCollection();
-        $coll->add('foo', new Route('/foo/{foo}', array(), array(), array(), '{locale}.example.com'));
-
-        $matcher = new UrlMatcher($coll, new RequestContext('', 'GET', 'example.com'));
-        $matcher->match('/foo/bar');
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Routing\Exception\ResourceNotFoundException
-     */
-    public function testPathIsCaseSensitive()
-    {
-        $coll = new RouteCollection();
-        $coll->add('foo', new Route('/locale', array(), array('locale' => 'EN|FR|DE')));
-
-        $matcher = new UrlMatcher($coll, new RequestContext());
-        $matcher->match('/en');
-    }
-
-    public function testHostIsCaseInsensitive()
-    {
-        $coll = new RouteCollection();
-        $coll->add('foo', new Route('/', array(), array('locale' => 'EN|FR|DE'), array(), '{locale}.example.com'));
-
-        $matcher = new UrlMatcher($coll, new RequestContext('', 'GET', 'en.example.com'));
-        $this->assertEquals(array('_route' => 'foo', 'locale' => 'en'), $matcher->match('/'));
-    }
-}
diff --git a/vendor/symfony/routing/Tests/RequestContextTest.php b/vendor/symfony/routing/Tests/RequestContextTest.php
deleted file mode 100644
index 5861268..0000000
--- a/vendor/symfony/routing/Tests/RequestContextTest.php
+++ /dev/null
@@ -1,159 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Routing\Tests;
-
-use Symfony\Component\HttpFoundation\Request;
-use Symfony\Component\Routing\RequestContext;
-
-class RequestContextTest extends \PHPUnit_Framework_TestCase
-{
-    public function testConstruct()
-    {
-        $requestContext = new RequestContext(
-            'foo',
-            'post',
-            'foo.bar',
-            'HTTPS',
-            8080,
-            444,
-            '/baz',
-            'bar=foobar'
-        );
-
-        $this->assertEquals('foo', $requestContext->getBaseUrl());
-        $this->assertEquals('POST', $requestContext->getMethod());
-        $this->assertEquals('foo.bar', $requestContext->getHost());
-        $this->assertEquals('https', $requestContext->getScheme());
-        $this->assertSame(8080, $requestContext->getHttpPort());
-        $this->assertSame(444, $requestContext->getHttpsPort());
-        $this->assertEquals('/baz', $requestContext->getPathInfo());
-        $this->assertEquals('bar=foobar', $requestContext->getQueryString());
-    }
-
-    public function testFromRequest()
-    {
-        $request = Request::create('https://test.com:444/foo?bar=baz');
-        $requestContext = new RequestContext();
-        $requestContext->setHttpPort(123);
-        $requestContext->fromRequest($request);
-
-        $this->assertEquals('', $requestContext->getBaseUrl());
-        $this->assertEquals('GET', $requestContext->getMethod());
-        $this->assertEquals('test.com', $requestContext->getHost());
-        $this->assertEquals('https', $requestContext->getScheme());
-        $this->assertEquals('/foo', $requestContext->getPathInfo());
-        $this->assertEquals('bar=baz', $requestContext->getQueryString());
-        $this->assertSame(123, $requestContext->getHttpPort());
-        $this->assertSame(444, $requestContext->getHttpsPort());
-
-        $request = Request::create('http://test.com:8080/foo?bar=baz');
-        $requestContext = new RequestContext();
-        $requestContext->setHttpsPort(567);
-        $requestContext->fromRequest($request);
-
-        $this->assertSame(8080, $requestContext->getHttpPort());
-        $this->assertSame(567, $requestContext->getHttpsPort());
-    }
-
-    public function testGetParameters()
-    {
-        $requestContext = new RequestContext();
-        $this->assertEquals(array(), $requestContext->getParameters());
-
-        $requestContext->setParameters(array('foo' => 'bar'));
-        $this->assertEquals(array('foo' => 'bar'), $requestContext->getParameters());
-    }
-
-    public function testHasParameter()
-    {
-        $requestContext = new RequestContext();
-        $requestContext->setParameters(array('foo' => 'bar'));
-
-        $this->assertTrue($requestContext->hasParameter('foo'));
-        $this->assertFalse($requestContext->hasParameter('baz'));
-    }
-
-    public function testGetParameter()
-    {
-        $requestContext = new RequestContext();
-        $requestContext->setParameters(array('foo' => 'bar'));
-
-        $this->assertEquals('bar', $requestContext->getParameter('foo'));
-        $this->assertNull($requestContext->getParameter('baz'));
-    }
-
-    public function testSetParameter()
-    {
-        $requestContext = new RequestContext();
-        $requestContext->setParameter('foo', 'bar');
-
-        $this->assertEquals('bar', $requestContext->getParameter('foo'));
-    }
-
-    public function testMethod()
-    {
-        $requestContext = new RequestContext();
-        $requestContext->setMethod('post');
-
-        $this->assertSame('POST', $requestContext->getMethod());
-    }
-
-    public function testScheme()
-    {
-        $requestContext = new RequestContext();
-        $requestContext->setScheme('HTTPS');
-
-        $this->assertSame('https', $requestContext->getScheme());
-    }
-
-    public function testHost()
-    {
-        $requestContext = new RequestContext();
-        $requestContext->setHost('eXampLe.com');
-
-        $this->assertSame('example.com', $requestContext->getHost());
-    }
-
-    public function testQueryString()
-    {
-        $requestContext = new RequestContext();
-        $requestContext->setQueryString(null);
-
-        $this->assertSame('', $requestContext->getQueryString());
-    }
-
-    public function testPort()
-    {
-        $requestContext = new RequestContext();
-        $requestContext->setHttpPort('123');
-        $requestContext->setHttpsPort('456');
-
-        $this->assertSame(123, $requestContext->getHttpPort());
-        $this->assertSame(456, $requestContext->getHttpsPort());
-    }
-
-    public function testFluentInterface()
-    {
-        $requestContext = new RequestContext();
-
-        $this->assertSame($requestContext, $requestContext->setBaseUrl('/app.php'));
-        $this->assertSame($requestContext, $requestContext->setPathInfo('/index'));
-        $this->assertSame($requestContext, $requestContext->setMethod('POST'));
-        $this->assertSame($requestContext, $requestContext->setScheme('https'));
-        $this->assertSame($requestContext, $requestContext->setHost('example.com'));
-        $this->assertSame($requestContext, $requestContext->setQueryString('foo=bar'));
-        $this->assertSame($requestContext, $requestContext->setHttpPort(80));
-        $this->assertSame($requestContext, $requestContext->setHttpsPort(443));
-        $this->assertSame($requestContext, $requestContext->setParameters(array()));
-        $this->assertSame($requestContext, $requestContext->setParameter('foo', 'bar'));
-    }
-}
diff --git a/vendor/symfony/routing/Tests/RouteCollectionTest.php b/vendor/symfony/routing/Tests/RouteCollectionTest.php
deleted file mode 100644
index 376b8db..0000000
--- a/vendor/symfony/routing/Tests/RouteCollectionTest.php
+++ /dev/null
@@ -1,304 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Routing\Tests;
-
-use Symfony\Component\Routing\RouteCollection;
-use Symfony\Component\Routing\Route;
-use Symfony\Component\Config\Resource\FileResource;
-
-class RouteCollectionTest extends \PHPUnit_Framework_TestCase
-{
-    public function testRoute()
-    {
-        $collection = new RouteCollection();
-        $route = new Route('/foo');
-        $collection->add('foo', $route);
-        $this->assertEquals(array('foo' => $route), $collection->all(), '->add() adds a route');
-        $this->assertEquals($route, $collection->get('foo'), '->get() returns a route by name');
-        $this->assertNull($collection->get('bar'), '->get() returns null if a route does not exist');
-    }
-
-    public function testOverriddenRoute()
-    {
-        $collection = new RouteCollection();
-        $collection->add('foo', new Route('/foo'));
-        $collection->add('foo', new Route('/foo1'));
-
-        $this->assertEquals('/foo1', $collection->get('foo')->getPath());
-    }
-
-    public function testDeepOverriddenRoute()
-    {
-        $collection = new RouteCollection();
-        $collection->add('foo', new Route('/foo'));
-
-        $collection1 = new RouteCollection();
-        $collection1->add('foo', new Route('/foo1'));
-
-        $collection2 = new RouteCollection();
-        $collection2->add('foo', new Route('/foo2'));
-
-        $collection1->addCollection($collection2);
-        $collection->addCollection($collection1);
-
-        $this->assertEquals('/foo2', $collection1->get('foo')->getPath());
-        $this->assertEquals('/foo2', $collection->get('foo')->getPath());
-    }
-
-    public function testIterator()
-    {
-        $collection = new RouteCollection();
-        $collection->add('foo', new Route('/foo'));
-
-        $collection1 = new RouteCollection();
-        $collection1->add('bar', $bar = new Route('/bar'));
-        $collection1->add('foo', $foo = new Route('/foo-new'));
-        $collection->addCollection($collection1);
-        $collection->add('last', $last = new Route('/last'));
-
-        $this->assertInstanceOf('\ArrayIterator', $collection->getIterator());
-        $this->assertSame(array('bar' => $bar, 'foo' => $foo, 'last' => $last), $collection->getIterator()->getArrayCopy());
-    }
-
-    public function testCount()
-    {
-        $collection = new RouteCollection();
-        $collection->add('foo', new Route('/foo'));
-
-        $collection1 = new RouteCollection();
-        $collection1->add('bar', new Route('/bar'));
-        $collection->addCollection($collection1);
-
-        $this->assertCount(2, $collection);
-    }
-
-    public function testAddCollection()
-    {
-        $collection = new RouteCollection();
-        $collection->add('foo', new Route('/foo'));
-
-        $collection1 = new RouteCollection();
-        $collection1->add('bar', $bar = new Route('/bar'));
-        $collection1->add('foo', $foo = new Route('/foo-new'));
-
-        $collection2 = new RouteCollection();
-        $collection2->add('grandchild', $grandchild = new Route('/grandchild'));
-
-        $collection1->addCollection($collection2);
-        $collection->addCollection($collection1);
-        $collection->add('last', $last = new Route('/last'));
-
-        $this->assertSame(array('bar' => $bar, 'foo' => $foo, 'grandchild' => $grandchild, 'last' => $last), $collection->all(),
-            '->addCollection() imports routes of another collection, overrides if necessary and adds them at the end');
-    }
-
-    public function testAddCollectionWithResources()
-    {
-        $collection = new RouteCollection();
-        $collection->addResource($foo = new FileResource(__DIR__.'/Fixtures/foo.xml'));
-        $collection1 = new RouteCollection();
-        $collection1->addResource($foo1 = new FileResource(__DIR__.'/Fixtures/foo1.xml'));
-        $collection->addCollection($collection1);
-        $this->assertEquals(array($foo, $foo1), $collection->getResources(), '->addCollection() merges resources');
-    }
-
-    public function testAddDefaultsAndRequirementsAndOptions()
-    {
-        $collection = new RouteCollection();
-        $collection->add('foo', new Route('/{placeholder}'));
-        $collection1 = new RouteCollection();
-        $collection1->add('bar', new Route('/{placeholder}',
-            array('_controller' => 'fixed', 'placeholder' => 'default'), array('placeholder' => '.+'), array('option' => 'value'))
-        );
-        $collection->addCollection($collection1);
-
-        $collection->addDefaults(array('placeholder' => 'new-default'));
-        $this->assertEquals(array('placeholder' => 'new-default'), $collection->get('foo')->getDefaults(), '->addDefaults() adds defaults to all routes');
-        $this->assertEquals(array('_controller' => 'fixed', 'placeholder' => 'new-default'), $collection->get('bar')->getDefaults(),
-            '->addDefaults() adds defaults to all routes and overwrites existing ones');
-
-        $collection->addRequirements(array('placeholder' => '\d+'));
-        $this->assertEquals(array('placeholder' => '\d+'), $collection->get('foo')->getRequirements(), '->addRequirements() adds requirements to all routes');
-        $this->assertEquals(array('placeholder' => '\d+'), $collection->get('bar')->getRequirements(),
-            '->addRequirements() adds requirements to all routes and overwrites existing ones');
-
-        $collection->addOptions(array('option' => 'new-value'));
-        $this->assertEquals(
-            array('option' => 'new-value', 'compiler_class' => 'Symfony\\Component\\Routing\\RouteCompiler'),
-            $collection->get('bar')->getOptions(), '->addOptions() adds options to all routes and overwrites existing ones'
-        );
-    }
-
-    public function testAddPrefix()
-    {
-        $collection = new RouteCollection();
-        $collection->add('foo', $foo = new Route('/foo'));
-        $collection2 = new RouteCollection();
-        $collection2->add('bar', $bar = new Route('/bar'));
-        $collection->addCollection($collection2);
-        $collection->addPrefix(' / ');
-        $this->assertSame('/foo', $collection->get('foo')->getPath(), '->addPrefix() trims the prefix and a single slash has no effect');
-        $collection->addPrefix('/{admin}', array('admin' => 'admin'), array('admin' => '\d+'));
-        $this->assertEquals('/{admin}/foo', $collection->get('foo')->getPath(), '->addPrefix() adds a prefix to all routes');
-        $this->assertEquals('/{admin}/bar', $collection->get('bar')->getPath(), '->addPrefix() adds a prefix to all routes');
-        $this->assertEquals(array('admin' => 'admin'), $collection->get('foo')->getDefaults(), '->addPrefix() adds defaults to all routes');
-        $this->assertEquals(array('admin' => 'admin'), $collection->get('bar')->getDefaults(), '->addPrefix() adds defaults to all routes');
-        $this->assertEquals(array('admin' => '\d+'), $collection->get('foo')->getRequirements(), '->addPrefix() adds requirements to all routes');
-        $this->assertEquals(array('admin' => '\d+'), $collection->get('bar')->getRequirements(), '->addPrefix() adds requirements to all routes');
-        $collection->addPrefix('0');
-        $this->assertEquals('/0/{admin}/foo', $collection->get('foo')->getPath(), '->addPrefix() ensures a prefix must start with a slash and must not end with a slash');
-        $collection->addPrefix('/ /');
-        $this->assertSame('/ /0/{admin}/foo', $collection->get('foo')->getPath(), '->addPrefix() can handle spaces if desired');
-        $this->assertSame('/ /0/{admin}/bar', $collection->get('bar')->getPath(), 'the route pattern of an added collection is in synch with the added prefix');
-    }
-
-    public function testAddPrefixOverridesDefaultsAndRequirements()
-    {
-        $collection = new RouteCollection();
-        $collection->add('foo', $foo = new Route('/foo.{_format}'));
-        $collection->add('bar', $bar = new Route('/bar.{_format}', array(), array('_format' => 'json')));
-        $collection->addPrefix('/admin', array(), array('_format' => 'html'));
-
-        $this->assertEquals('html', $collection->get('foo')->getRequirement('_format'), '->addPrefix() overrides existing requirements');
-        $this->assertEquals('html', $collection->get('bar')->getRequirement('_format'), '->addPrefix() overrides existing requirements');
-    }
-
-    public function testResource()
-    {
-        $collection = new RouteCollection();
-        $collection->addResource($foo = new FileResource(__DIR__.'/Fixtures/foo.xml'));
-        $collection->addResource($bar = new FileResource(__DIR__.'/Fixtures/bar.xml'));
-        $collection->addResource(new FileResource(__DIR__.'/Fixtures/foo.xml'));
-
-        $this->assertEquals(array($foo, $bar), $collection->getResources(),
-            '->addResource() adds a resource and getResources() only returns unique ones by comparing the string representation');
-    }
-
-    public function testUniqueRouteWithGivenName()
-    {
-        $collection1 = new RouteCollection();
-        $collection1->add('foo', new Route('/old'));
-        $collection2 = new RouteCollection();
-        $collection3 = new RouteCollection();
-        $collection3->add('foo', $new = new Route('/new'));
-
-        $collection2->addCollection($collection3);
-        $collection1->addCollection($collection2);
-
-        $this->assertSame($new, $collection1->get('foo'), '->get() returns new route that overrode previous one');
-        // size of 1 because collection1 contains /new but not /old anymore
-        $this->assertCount(1, $collection1->getIterator(), '->addCollection() removes previous routes when adding new routes with the same name');
-    }
-
-    public function testGet()
-    {
-        $collection1 = new RouteCollection();
-        $collection1->add('a', $a = new Route('/a'));
-        $collection2 = new RouteCollection();
-        $collection2->add('b', $b = new Route('/b'));
-        $collection1->addCollection($collection2);
-        $collection1->add('$péß^a|', $c = new Route('/special'));
-
-        $this->assertSame($b, $collection1->get('b'), '->get() returns correct route in child collection');
-        $this->assertSame($c, $collection1->get('$péß^a|'), '->get() can handle special characters');
-        $this->assertNull($collection2->get('a'), '->get() does not return the route defined in parent collection');
-        $this->assertNull($collection1->get('non-existent'), '->get() returns null when route does not exist');
-        $this->assertNull($collection1->get(0), '->get() does not disclose internal child RouteCollection');
-    }
-
-    public function testRemove()
-    {
-        $collection = new RouteCollection();
-        $collection->add('foo', $foo = new Route('/foo'));
-
-        $collection1 = new RouteCollection();
-        $collection1->add('bar', $bar = new Route('/bar'));
-        $collection->addCollection($collection1);
-        $collection->add('last', $last = new Route('/last'));
-
-        $collection->remove('foo');
-        $this->assertSame(array('bar' => $bar, 'last' => $last), $collection->all(), '->remove() can remove a single route');
-        $collection->remove(array('bar', 'last'));
-        $this->assertSame(array(), $collection->all(), '->remove() accepts an array and can remove multiple routes at once');
-    }
-
-    public function testSetHost()
-    {
-        $collection = new RouteCollection();
-        $routea = new Route('/a');
-        $routeb = new Route('/b', array(), array(), array(), '{locale}.example.net');
-        $collection->add('a', $routea);
-        $collection->add('b', $routeb);
-
-        $collection->setHost('{locale}.example.com');
-
-        $this->assertEquals('{locale}.example.com', $routea->getHost());
-        $this->assertEquals('{locale}.example.com', $routeb->getHost());
-    }
-
-    public function testSetCondition()
-    {
-        $collection = new RouteCollection();
-        $routea = new Route('/a');
-        $routeb = new Route('/b', array(), array(), array(), '{locale}.example.net', array(), array(), 'context.getMethod() == "GET"');
-        $collection->add('a', $routea);
-        $collection->add('b', $routeb);
-
-        $collection->setCondition('context.getMethod() == "POST"');
-
-        $this->assertEquals('context.getMethod() == "POST"', $routea->getCondition());
-        $this->assertEquals('context.getMethod() == "POST"', $routeb->getCondition());
-    }
-
-    public function testClone()
-    {
-        $collection = new RouteCollection();
-        $collection->add('a', new Route('/a'));
-        $collection->add('b', new Route('/b', array('placeholder' => 'default'), array('placeholder' => '.+')));
-
-        $clonedCollection = clone $collection;
-
-        $this->assertCount(2, $clonedCollection);
-        $this->assertEquals($collection->get('a'), $clonedCollection->get('a'));
-        $this->assertNotSame($collection->get('a'), $clonedCollection->get('a'));
-        $this->assertEquals($collection->get('b'), $clonedCollection->get('b'));
-        $this->assertNotSame($collection->get('b'), $clonedCollection->get('b'));
-    }
-
-    public function testSetSchemes()
-    {
-        $collection = new RouteCollection();
-        $routea = new Route('/a', array(), array(), array(), '', 'http');
-        $routeb = new Route('/b');
-        $collection->add('a', $routea);
-        $collection->add('b', $routeb);
-
-        $collection->setSchemes(array('http', 'https'));
-
-        $this->assertEquals(array('http', 'https'), $routea->getSchemes());
-        $this->assertEquals(array('http', 'https'), $routeb->getSchemes());
-    }
-
-    public function testSetMethods()
-    {
-        $collection = new RouteCollection();
-        $routea = new Route('/a', array(), array(), array(), '', array(), array('GET', 'POST'));
-        $routeb = new Route('/b');
-        $collection->add('a', $routea);
-        $collection->add('b', $routeb);
-
-        $collection->setMethods('PUT');
-
-        $this->assertEquals(array('PUT'), $routea->getMethods());
-        $this->assertEquals(array('PUT'), $routeb->getMethods());
-    }
-}
diff --git a/vendor/symfony/routing/Tests/RouteCompilerTest.php b/vendor/symfony/routing/Tests/RouteCompilerTest.php
deleted file mode 100644
index 2b7c17f..0000000
--- a/vendor/symfony/routing/Tests/RouteCompilerTest.php
+++ /dev/null
@@ -1,253 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Routing\Tests;
-
-use Symfony\Component\Routing\Route;
-
-class RouteCompilerTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @dataProvider provideCompileData
-     */
-    public function testCompile($name, $arguments, $prefix, $regex, $variables, $tokens)
-    {
-        $r = new \ReflectionClass('Symfony\\Component\\Routing\\Route');
-        $route = $r->newInstanceArgs($arguments);
-
-        $compiled = $route->compile();
-        $this->assertEquals($prefix, $compiled->getStaticPrefix(), $name.' (static prefix)');
-        $this->assertEquals($regex, $compiled->getRegex(), $name.' (regex)');
-        $this->assertEquals($variables, $compiled->getVariables(), $name.' (variables)');
-        $this->assertEquals($tokens, $compiled->getTokens(), $name.' (tokens)');
-    }
-
-    public function provideCompileData()
-    {
-        return array(
-            array(
-                'Static route',
-                array('/foo'),
-                '/foo', '#^/foo$#s', array(), array(
-                    array('text', '/foo'),
-                ),),
-
-            array(
-                'Route with a variable',
-                array('/foo/{bar}'),
-                '/foo', '#^/foo/(?P<bar>[^/]++)$#s', array('bar'), array(
-                    array('variable', '/', '[^/]++', 'bar'),
-                    array('text', '/foo'),
-                ),),
-
-            array(
-                'Route with a variable that has a default value',
-                array('/foo/{bar}', array('bar' => 'bar')),
-                '/foo', '#^/foo(?:/(?P<bar>[^/]++))?$#s', array('bar'), array(
-                    array('variable', '/', '[^/]++', 'bar'),
-                    array('text', '/foo'),
-                ),),
-
-            array(
-                'Route with several variables',
-                array('/foo/{bar}/{foobar}'),
-                '/foo', '#^/foo/(?P<bar>[^/]++)/(?P<foobar>[^/]++)$#s', array('bar', 'foobar'), array(
-                    array('variable', '/', '[^/]++', 'foobar'),
-                    array('variable', '/', '[^/]++', 'bar'),
-                    array('text', '/foo'),
-                ),),
-
-            array(
-                'Route with several variables that have default values',
-                array('/foo/{bar}/{foobar}', array('bar' => 'bar', 'foobar' => '')),
-                '/foo', '#^/foo(?:/(?P<bar>[^/]++)(?:/(?P<foobar>[^/]++))?)?$#s', array('bar', 'foobar'), array(
-                    array('variable', '/', '[^/]++', 'foobar'),
-                    array('variable', '/', '[^/]++', 'bar'),
-                    array('text', '/foo'),
-                ),),
-
-            array(
-                'Route with several variables but some of them have no default values',
-                array('/foo/{bar}/{foobar}', array('bar' => 'bar')),
-                '/foo', '#^/foo/(?P<bar>[^/]++)/(?P<foobar>[^/]++)$#s', array('bar', 'foobar'), array(
-                    array('variable', '/', '[^/]++', 'foobar'),
-                    array('variable', '/', '[^/]++', 'bar'),
-                    array('text', '/foo'),
-                ),),
-
-            array(
-                'Route with an optional variable as the first segment',
-                array('/{bar}', array('bar' => 'bar')),
-                '', '#^/(?P<bar>[^/]++)?$#s', array('bar'), array(
-                    array('variable', '/', '[^/]++', 'bar'),
-                ),),
-
-            array(
-                'Route with a requirement of 0',
-                array('/{bar}', array('bar' => null), array('bar' => '0')),
-                '', '#^/(?P<bar>0)?$#s', array('bar'), array(
-                    array('variable', '/', '0', 'bar'),
-                ),),
-
-            array(
-                'Route with an optional variable as the first segment with requirements',
-                array('/{bar}', array('bar' => 'bar'), array('bar' => '(foo|bar)')),
-                '', '#^/(?P<bar>(foo|bar))?$#s', array('bar'), array(
-                    array('variable', '/', '(foo|bar)', 'bar'),
-                ),),
-
-            array(
-                'Route with only optional variables',
-                array('/{foo}/{bar}', array('foo' => 'foo', 'bar' => 'bar')),
-                '', '#^/(?P<foo>[^/]++)?(?:/(?P<bar>[^/]++))?$#s', array('foo', 'bar'), array(
-                    array('variable', '/', '[^/]++', 'bar'),
-                    array('variable', '/', '[^/]++', 'foo'),
-                ),),
-
-            array(
-                'Route with a variable in last position',
-                array('/foo-{bar}'),
-                '/foo', '#^/foo\-(?P<bar>[^/]++)$#s', array('bar'), array(
-                array('variable', '-', '[^/]++', 'bar'),
-                array('text', '/foo'),
-            ),),
-
-            array(
-                'Route with nested placeholders',
-                array('/{static{var}static}'),
-                '/{static', '#^/\{static(?P<var>[^/]+)static\}$#s', array('var'), array(
-                array('text', 'static}'),
-                array('variable', '', '[^/]+', 'var'),
-                array('text', '/{static'),
-            ),),
-
-            array(
-                'Route without separator between variables',
-                array('/{w}{x}{y}{z}.{_format}', array('z' => 'default-z', '_format' => 'html'), array('y' => '(y|Y)')),
-                '', '#^/(?P<w>[^/\.]+)(?P<x>[^/\.]+)(?P<y>(y|Y))(?:(?P<z>[^/\.]++)(?:\.(?P<_format>[^/]++))?)?$#s', array('w', 'x', 'y', 'z', '_format'), array(
-                array('variable', '.', '[^/]++', '_format'),
-                array('variable', '', '[^/\.]++', 'z'),
-                array('variable', '', '(y|Y)', 'y'),
-                array('variable', '', '[^/\.]+', 'x'),
-                array('variable', '/', '[^/\.]+', 'w'),
-            ),),
-
-            array(
-                'Route with a format',
-                array('/foo/{bar}.{_format}'),
-                '/foo', '#^/foo/(?P<bar>[^/\.]++)\.(?P<_format>[^/]++)$#s', array('bar', '_format'), array(
-                array('variable', '.', '[^/]++', '_format'),
-                array('variable', '/', '[^/\.]++', 'bar'),
-                array('text', '/foo'),
-            ),),
-        );
-    }
-
-    /**
-     * @expectedException \LogicException
-     */
-    public function testRouteWithSameVariableTwice()
-    {
-        $route = new Route('/{name}/{name}');
-
-        $compiled = $route->compile();
-    }
-
-    /**
-     * @dataProvider getNumericVariableNames
-     * @expectedException \DomainException
-     */
-    public function testRouteWithNumericVariableName($name)
-    {
-        $route = new Route('/{'.$name.'}');
-        $route->compile();
-    }
-
-    public function getNumericVariableNames()
-    {
-        return array(
-           array('09'),
-           array('123'),
-           array('1e2'),
-        );
-    }
-
-    /**
-     * @dataProvider provideCompileWithHostData
-     */
-    public function testCompileWithHost($name, $arguments, $prefix, $regex, $variables, $pathVariables, $tokens, $hostRegex, $hostVariables, $hostTokens)
-    {
-        $r = new \ReflectionClass('Symfony\\Component\\Routing\\Route');
-        $route = $r->newInstanceArgs($arguments);
-
-        $compiled = $route->compile();
-        $this->assertEquals($prefix, $compiled->getStaticPrefix(), $name.' (static prefix)');
-        $this->assertEquals($regex, str_replace(array("\n", ' '), '', $compiled->getRegex()), $name.' (regex)');
-        $this->assertEquals($variables, $compiled->getVariables(), $name.' (variables)');
-        $this->assertEquals($pathVariables, $compiled->getPathVariables(), $name.' (path variables)');
-        $this->assertEquals($tokens, $compiled->getTokens(), $name.' (tokens)');
-        $this->assertEquals($hostRegex, str_replace(array("\n", ' '), '', $compiled->getHostRegex()), $name.' (host regex)');
-        $this->assertEquals($hostVariables, $compiled->getHostVariables(), $name.' (host variables)');
-        $this->assertEquals($hostTokens, $compiled->getHostTokens(), $name.' (host tokens)');
-    }
-
-    public function provideCompileWithHostData()
-    {
-        return array(
-            array(
-                'Route with host pattern',
-                array('/hello', array(), array(), array(), 'www.example.com'),
-                '/hello', '#^/hello$#s', array(), array(), array(
-                    array('text', '/hello'),
-                ),
-                '#^www\.example\.com$#si', array(), array(
-                    array('text', 'www.example.com'),
-                ),
-            ),
-            array(
-                'Route with host pattern and some variables',
-                array('/hello/{name}', array(), array(), array(), 'www.example.{tld}'),
-                '/hello', '#^/hello/(?P<name>[^/]++)$#s', array('tld', 'name'), array('name'), array(
-                    array('variable', '/', '[^/]++', 'name'),
-                    array('text', '/hello'),
-                ),
-                '#^www\.example\.(?P<tld>[^\.]++)$#si', array('tld'), array(
-                    array('variable', '.', '[^\.]++', 'tld'),
-                    array('text', 'www.example'),
-                ),
-            ),
-            array(
-                'Route with variable at beginning of host',
-                array('/hello', array(), array(), array(), '{locale}.example.{tld}'),
-                '/hello', '#^/hello$#s', array('locale', 'tld'), array(), array(
-                    array('text', '/hello'),
-                ),
-                '#^(?P<locale>[^\.]++)\.example\.(?P<tld>[^\.]++)$#si', array('locale', 'tld'), array(
-                    array('variable', '.', '[^\.]++', 'tld'),
-                    array('text', '.example'),
-                    array('variable', '', '[^\.]++', 'locale'),
-                ),
-            ),
-            array(
-                'Route with host variables that has a default value',
-                array('/hello', array('locale' => 'a', 'tld' => 'b'), array(), array(), '{locale}.example.{tld}'),
-                '/hello', '#^/hello$#s', array('locale', 'tld'), array(), array(
-                    array('text', '/hello'),
-                ),
-                '#^(?P<locale>[^\.]++)\.example\.(?P<tld>[^\.]++)$#si', array('locale', 'tld'), array(
-                    array('variable', '.', '[^\.]++', 'tld'),
-                    array('text', '.example'),
-                    array('variable', '', '[^\.]++', 'locale'),
-                ),
-            ),
-        );
-    }
-}
diff --git a/vendor/symfony/routing/Tests/RouteTest.php b/vendor/symfony/routing/Tests/RouteTest.php
deleted file mode 100644
index 85273a6..0000000
--- a/vendor/symfony/routing/Tests/RouteTest.php
+++ /dev/null
@@ -1,284 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Routing\Tests;
-
-use Symfony\Component\Routing\Route;
-
-class RouteTest extends \PHPUnit_Framework_TestCase
-{
-    public function testConstructor()
-    {
-        $route = new Route('/{foo}', array('foo' => 'bar'), array('foo' => '\d+'), array('foo' => 'bar'), '{locale}.example.com');
-        $this->assertEquals('/{foo}', $route->getPath(), '__construct() takes a path as its first argument');
-        $this->assertEquals(array('foo' => 'bar'), $route->getDefaults(), '__construct() takes defaults as its second argument');
-        $this->assertEquals(array('foo' => '\d+'), $route->getRequirements(), '__construct() takes requirements as its third argument');
-        $this->assertEquals('bar', $route->getOption('foo'), '__construct() takes options as its fourth argument');
-        $this->assertEquals('{locale}.example.com', $route->getHost(), '__construct() takes a host pattern as its fifth argument');
-
-        $route = new Route('/', array(), array(), array(), '', array('Https'), array('POST', 'put'), 'context.getMethod() == "GET"');
-        $this->assertEquals(array('https'), $route->getSchemes(), '__construct() takes schemes as its sixth argument and lowercases it');
-        $this->assertEquals(array('POST', 'PUT'), $route->getMethods(), '__construct() takes methods as its seventh argument and uppercases it');
-        $this->assertEquals('context.getMethod() == "GET"', $route->getCondition(), '__construct() takes a condition as its eight argument');
-
-        $route = new Route('/', array(), array(), array(), '', 'Https', 'Post');
-        $this->assertEquals(array('https'), $route->getSchemes(), '__construct() takes a single scheme as its sixth argument');
-        $this->assertEquals(array('POST'), $route->getMethods(), '__construct() takes a single method as its seventh argument');
-    }
-
-    public function testPath()
-    {
-        $route = new Route('/{foo}');
-        $route->setPath('/{bar}');
-        $this->assertEquals('/{bar}', $route->getPath(), '->setPath() sets the path');
-        $route->setPath('');
-        $this->assertEquals('/', $route->getPath(), '->setPath() adds a / at the beginning of the path if needed');
-        $route->setPath('bar');
-        $this->assertEquals('/bar', $route->getPath(), '->setPath() adds a / at the beginning of the path if needed');
-        $this->assertEquals($route, $route->setPath(''), '->setPath() implements a fluent interface');
-        $route->setPath('//path');
-        $this->assertEquals('/path', $route->getPath(), '->setPath() does not allow two slashes "//" at the beginning of the path as it would be confused with a network path when generating the path from the route');
-    }
-
-    public function testOptions()
-    {
-        $route = new Route('/{foo}');
-        $route->setOptions(array('foo' => 'bar'));
-        $this->assertEquals(array_merge(array(
-        'compiler_class' => 'Symfony\\Component\\Routing\\RouteCompiler',
-        ), array('foo' => 'bar')), $route->getOptions(), '->setOptions() sets the options');
-        $this->assertEquals($route, $route->setOptions(array()), '->setOptions() implements a fluent interface');
-
-        $route->setOptions(array('foo' => 'foo'));
-        $route->addOptions(array('bar' => 'bar'));
-        $this->assertEquals($route, $route->addOptions(array()), '->addOptions() implements a fluent interface');
-        $this->assertEquals(array('foo' => 'foo', 'bar' => 'bar', 'compiler_class' => 'Symfony\\Component\\Routing\\RouteCompiler'), $route->getOptions(), '->addDefaults() keep previous defaults');
-    }
-
-    public function testOption()
-    {
-        $route = new Route('/{foo}');
-        $this->assertFalse($route->hasOption('foo'), '->hasOption() return false if option is not set');
-        $this->assertEquals($route, $route->setOption('foo', 'bar'), '->setOption() implements a fluent interface');
-        $this->assertEquals('bar', $route->getOption('foo'), '->setOption() sets the option');
-        $this->assertTrue($route->hasOption('foo'), '->hasOption() return true if option is set');
-    }
-
-    public function testDefaults()
-    {
-        $route = new Route('/{foo}');
-        $route->setDefaults(array('foo' => 'bar'));
-        $this->assertEquals(array('foo' => 'bar'), $route->getDefaults(), '->setDefaults() sets the defaults');
-        $this->assertEquals($route, $route->setDefaults(array()), '->setDefaults() implements a fluent interface');
-
-        $route->setDefault('foo', 'bar');
-        $this->assertEquals('bar', $route->getDefault('foo'), '->setDefault() sets a default value');
-
-        $route->setDefault('foo2', 'bar2');
-        $this->assertEquals('bar2', $route->getDefault('foo2'), '->getDefault() return the default value');
-        $this->assertNull($route->getDefault('not_defined'), '->getDefault() return null if default value is not set');
-
-        $route->setDefault('_controller', $closure = function () { return 'Hello'; });
-        $this->assertEquals($closure, $route->getDefault('_controller'), '->setDefault() sets a default value');
-
-        $route->setDefaults(array('foo' => 'foo'));
-        $route->addDefaults(array('bar' => 'bar'));
-        $this->assertEquals($route, $route->addDefaults(array()), '->addDefaults() implements a fluent interface');
-        $this->assertEquals(array('foo' => 'foo', 'bar' => 'bar'), $route->getDefaults(), '->addDefaults() keep previous defaults');
-    }
-
-    public function testRequirements()
-    {
-        $route = new Route('/{foo}');
-        $route->setRequirements(array('foo' => '\d+'));
-        $this->assertEquals(array('foo' => '\d+'), $route->getRequirements(), '->setRequirements() sets the requirements');
-        $this->assertEquals('\d+', $route->getRequirement('foo'), '->getRequirement() returns a requirement');
-        $this->assertNull($route->getRequirement('bar'), '->getRequirement() returns null if a requirement is not defined');
-        $route->setRequirements(array('foo' => '^\d+$'));
-        $this->assertEquals('\d+', $route->getRequirement('foo'), '->getRequirement() removes ^ and $ from the path');
-        $this->assertEquals($route, $route->setRequirements(array()), '->setRequirements() implements a fluent interface');
-
-        $route->setRequirements(array('foo' => '\d+'));
-        $route->addRequirements(array('bar' => '\d+'));
-        $this->assertEquals($route, $route->addRequirements(array()), '->addRequirements() implements a fluent interface');
-        $this->assertEquals(array('foo' => '\d+', 'bar' => '\d+'), $route->getRequirements(), '->addRequirement() keep previous requirements');
-    }
-
-    public function testRequirement()
-    {
-        $route = new Route('/{foo}');
-        $this->assertFalse($route->hasRequirement('foo'), '->hasRequirement() return false if requirement is not set');
-        $route->setRequirement('foo', '^\d+$');
-        $this->assertEquals('\d+', $route->getRequirement('foo'), '->setRequirement() removes ^ and $ from the path');
-        $this->assertTrue($route->hasRequirement('foo'), '->hasRequirement() return true if requirement is set');
-    }
-
-    /**
-     * @dataProvider getInvalidRequirements
-     * @expectedException \InvalidArgumentException
-     */
-    public function testSetInvalidRequirement($req)
-    {
-        $route = new Route('/{foo}');
-        $route->setRequirement('foo', $req);
-    }
-
-    public function getInvalidRequirements()
-    {
-        return array(
-           array(''),
-           array(array()),
-           array('^$'),
-           array('^'),
-           array('$'),
-        );
-    }
-
-    public function testHost()
-    {
-        $route = new Route('/');
-        $route->setHost('{locale}.example.net');
-        $this->assertEquals('{locale}.example.net', $route->getHost(), '->setHost() sets the host pattern');
-    }
-
-    public function testScheme()
-    {
-        $route = new Route('/');
-        $this->assertEquals(array(), $route->getSchemes(), 'schemes is initialized with array()');
-        $this->assertFalse($route->hasScheme('http'));
-        $route->setSchemes('hTTp');
-        $this->assertEquals(array('http'), $route->getSchemes(), '->setSchemes() accepts a single scheme string and lowercases it');
-        $this->assertTrue($route->hasScheme('htTp'));
-        $this->assertFalse($route->hasScheme('httpS'));
-        $route->setSchemes(array('HttpS', 'hTTp'));
-        $this->assertEquals(array('https', 'http'), $route->getSchemes(), '->setSchemes() accepts an array of schemes and lowercases them');
-        $this->assertTrue($route->hasScheme('htTp'));
-        $this->assertTrue($route->hasScheme('httpS'));
-    }
-
-    /**
-     * @group legacy
-     */
-    public function testLegacySchemeRequirement()
-    {
-        $route = new Route('/');
-        $route->setRequirement('_scheme', 'http|https');
-        $this->assertEquals('http|https', $route->getRequirement('_scheme'));
-        $this->assertEquals(array('http', 'https'), $route->getSchemes());
-        $this->assertTrue($route->hasScheme('https'));
-        $this->assertTrue($route->hasScheme('http'));
-        $this->assertFalse($route->hasScheme('ftp'));
-        $route->setSchemes(array('hTTp'));
-        $this->assertEquals('http', $route->getRequirement('_scheme'));
-        $route->setSchemes(array());
-        $this->assertNull($route->getRequirement('_scheme'));
-    }
-
-    public function testMethod()
-    {
-        $route = new Route('/');
-        $this->assertEquals(array(), $route->getMethods(), 'methods is initialized with array()');
-        $route->setMethods('gEt');
-        $this->assertEquals(array('GET'), $route->getMethods(), '->setMethods() accepts a single method string and uppercases it');
-        $route->setMethods(array('gEt', 'PosT'));
-        $this->assertEquals(array('GET', 'POST'), $route->getMethods(), '->setMethods() accepts an array of methods and uppercases them');
-    }
-
-    /**
-     * @group legacy
-     */
-    public function testLegacyMethodRequirement()
-    {
-        $route = new Route('/');
-        $route->setRequirement('_method', 'GET|POST');
-        $this->assertEquals('GET|POST', $route->getRequirement('_method'));
-        $this->assertEquals(array('GET', 'POST'), $route->getMethods());
-        $route->setMethods(array('gEt'));
-        $this->assertEquals('GET', $route->getRequirement('_method'));
-        $route->setMethods(array());
-        $this->assertNull($route->getRequirement('_method'));
-    }
-
-    public function testCondition()
-    {
-        $route = new Route('/');
-        $this->assertSame('', $route->getCondition());
-        $route->setCondition('context.getMethod() == "GET"');
-        $this->assertSame('context.getMethod() == "GET"', $route->getCondition());
-    }
-
-    public function testCompile()
-    {
-        $route = new Route('/{foo}');
-        $this->assertInstanceOf('Symfony\Component\Routing\CompiledRoute', $compiled = $route->compile(), '->compile() returns a compiled route');
-        $this->assertSame($compiled, $route->compile(), '->compile() only compiled the route once if unchanged');
-        $route->setRequirement('foo', '.*');
-        $this->assertNotSame($compiled, $route->compile(), '->compile() recompiles if the route was modified');
-    }
-
-    /**
-     * @group legacy
-     */
-    public function testLegacyPattern()
-    {
-        $route = new Route('/{foo}');
-        $this->assertEquals('/{foo}', $route->getPattern());
-
-        $route->setPattern('/bar');
-        $this->assertEquals('/bar', $route->getPattern());
-    }
-
-    public function testSerialize()
-    {
-        $route = new Route('/prefix/{foo}', array('foo' => 'default'), array('foo' => '\d+'));
-
-        $serialized = serialize($route);
-        $unserialized = unserialize($serialized);
-
-        $this->assertEquals($route, $unserialized);
-        $this->assertNotSame($route, $unserialized);
-    }
-
-    /**
-     * Tests that the compiled version is also serialized to prevent the overhead
-     * of compiling it again after unserialize.
-     */
-    public function testSerializeWhenCompiled()
-    {
-        $route = new Route('/prefix/{foo}', array('foo' => 'default'), array('foo' => '\d+'));
-        $route->setHost('{locale}.example.net');
-        $route->compile();
-
-        $serialized = serialize($route);
-        $unserialized = unserialize($serialized);
-
-        $this->assertEquals($route, $unserialized);
-        $this->assertNotSame($route, $unserialized);
-    }
-
-    /**
-     * Tests that the serialized representation of a route in one symfony version
-     * also works in later symfony versions, i.e. the unserialized route is in the
-     * same state as another, semantically equivalent, route.
-     */
-    public function testSerializedRepresentationKeepsWorking()
-    {
-        $serialized = 'C:31:"Symfony\Component\Routing\Route":934:{a:8:{s:4:"path";s:13:"/prefix/{foo}";s:4:"host";s:20:"{locale}.example.net";s:8:"defaults";a:1:{s:3:"foo";s:7:"default";}s:12:"requirements";a:1:{s:3:"foo";s:3:"\d+";}s:7:"options";a:1:{s:14:"compiler_class";s:39:"Symfony\Component\Routing\RouteCompiler";}s:7:"schemes";a:0:{}s:7:"methods";a:0:{}s:8:"compiled";C:39:"Symfony\Component\Routing\CompiledRoute":569:{a:8:{s:4:"vars";a:2:{i:0;s:6:"locale";i:1;s:3:"foo";}s:11:"path_prefix";s:7:"/prefix";s:10:"path_regex";s:30:"#^/prefix(?:/(?P<foo>\d+))?$#s";s:11:"path_tokens";a:2:{i:0;a:4:{i:0;s:8:"variable";i:1;s:1:"/";i:2;s:3:"\d+";i:3;s:3:"foo";}i:1;a:2:{i:0;s:4:"text";i:1;s:7:"/prefix";}}s:9:"path_vars";a:1:{i:0;s:3:"foo";}s:10:"host_regex";s:39:"#^(?P<locale>[^\.]++)\.example\.net$#si";s:11:"host_tokens";a:2:{i:0;a:2:{i:0;s:4:"text";i:1;s:12:".example.net";}i:1;a:4:{i:0;s:8:"variable";i:1;s:0:"";i:2;s:7:"[^\.]++";i:3;s:6:"locale";}}s:9:"host_vars";a:1:{i:0;s:6:"locale";}}}}}';
-        $unserialized = unserialize($serialized);
-
-        $route = new Route('/prefix/{foo}', array('foo' => 'default'), array('foo' => '\d+'));
-        $route->setHost('{locale}.example.net');
-        $route->compile();
-
-        $this->assertEquals($route, $unserialized);
-        $this->assertNotSame($route, $unserialized);
-    }
-}
diff --git a/vendor/symfony/routing/Tests/RouterTest.php b/vendor/symfony/routing/Tests/RouterTest.php
deleted file mode 100644
index 9a1c568..0000000
--- a/vendor/symfony/routing/Tests/RouterTest.php
+++ /dev/null
@@ -1,161 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Routing\Tests;
-
-use Symfony\Component\Routing\Router;
-use Symfony\Component\HttpFoundation\Request;
-
-class RouterTest extends \PHPUnit_Framework_TestCase
-{
-    private $router = null;
-
-    private $loader = null;
-
-    protected function setUp()
-    {
-        $this->loader = $this->getMock('Symfony\Component\Config\Loader\LoaderInterface');
-        $this->router = new Router($this->loader, 'routing.yml');
-    }
-
-    public function testSetOptionsWithSupportedOptions()
-    {
-        $this->router->setOptions(array(
-            'cache_dir' => './cache',
-            'debug' => true,
-            'resource_type' => 'ResourceType',
-        ));
-
-        $this->assertSame('./cache', $this->router->getOption('cache_dir'));
-        $this->assertTrue($this->router->getOption('debug'));
-        $this->assertSame('ResourceType', $this->router->getOption('resource_type'));
-    }
-
-    /**
-     * @expectedException \InvalidArgumentException
-     * @expectedExceptionMessage The Router does not support the following options: "option_foo", "option_bar"
-     */
-    public function testSetOptionsWithUnsupportedOptions()
-    {
-        $this->router->setOptions(array(
-            'cache_dir' => './cache',
-            'option_foo' => true,
-            'option_bar' => 'baz',
-            'resource_type' => 'ResourceType',
-        ));
-    }
-
-    public function testSetOptionWithSupportedOption()
-    {
-        $this->router->setOption('cache_dir', './cache');
-
-        $this->assertSame('./cache', $this->router->getOption('cache_dir'));
-    }
-
-    /**
-     * @expectedException \InvalidArgumentException
-     * @expectedExceptionMessage The Router does not support the "option_foo" option
-     */
-    public function testSetOptionWithUnsupportedOption()
-    {
-        $this->router->setOption('option_foo', true);
-    }
-
-    /**
-     * @expectedException \InvalidArgumentException
-     * @expectedExceptionMessage The Router does not support the "option_foo" option
-     */
-    public function testGetOptionWithUnsupportedOption()
-    {
-        $this->router->getOption('option_foo', true);
-    }
-
-    public function testThatRouteCollectionIsLoaded()
-    {
-        $this->router->setOption('resource_type', 'ResourceType');
-
-        $routeCollection = $this->getMock('Symfony\Component\Routing\RouteCollection');
-
-        $this->loader->expects($this->once())
-            ->method('load')->with('routing.yml', 'ResourceType')
-            ->will($this->returnValue($routeCollection));
-
-        $this->assertSame($routeCollection, $this->router->getRouteCollection());
-    }
-
-    /**
-     * @dataProvider provideMatcherOptionsPreventingCaching
-     */
-    public function testMatcherIsCreatedIfCacheIsNotConfigured($option)
-    {
-        $this->router->setOption($option, null);
-
-        $this->loader->expects($this->once())
-            ->method('load')->with('routing.yml', null)
-            ->will($this->returnValue($this->getMock('Symfony\Component\Routing\RouteCollection')));
-
-        $this->assertInstanceOf('Symfony\\Component\\Routing\\Matcher\\UrlMatcher', $this->router->getMatcher());
-    }
-
-    public function provideMatcherOptionsPreventingCaching()
-    {
-        return array(
-            array('cache_dir'),
-            array('matcher_cache_class'),
-        );
-    }
-
-    /**
-     * @dataProvider provideGeneratorOptionsPreventingCaching
-     */
-    public function testGeneratorIsCreatedIfCacheIsNotConfigured($option)
-    {
-        $this->router->setOption($option, null);
-
-        $this->loader->expects($this->once())
-            ->method('load')->with('routing.yml', null)
-            ->will($this->returnValue($this->getMock('Symfony\Component\Routing\RouteCollection')));
-
-        $this->assertInstanceOf('Symfony\\Component\\Routing\\Generator\\UrlGenerator', $this->router->getGenerator());
-    }
-
-    public function provideGeneratorOptionsPreventingCaching()
-    {
-        return array(
-            array('cache_dir'),
-            array('generator_cache_class'),
-        );
-    }
-
-    public function testMatchRequestWithUrlMatcherInterface()
-    {
-        $matcher = $this->getMock('Symfony\Component\Routing\Matcher\UrlMatcherInterface');
-        $matcher->expects($this->once())->method('match');
-
-        $p = new \ReflectionProperty($this->router, 'matcher');
-        $p->setAccessible(true);
-        $p->setValue($this->router, $matcher);
-
-        $this->router->matchRequest(Request::create('/'));
-    }
-
-    public function testMatchRequestWithRequestMatcherInterface()
-    {
-        $matcher = $this->getMock('Symfony\Component\Routing\Matcher\RequestMatcherInterface');
-        $matcher->expects($this->once())->method('matchRequest');
-
-        $p = new \ReflectionProperty($this->router, 'matcher');
-        $p->setAccessible(true);
-        $p->setValue($this->router, $matcher);
-
-        $this->router->matchRequest(Request::create('/'));
-    }
-}
diff --git a/vendor/symfony/serializer/Tests/Annotation/GroupsTest.php b/vendor/symfony/serializer/Tests/Annotation/GroupsTest.php
deleted file mode 100644
index 72b8777..0000000
--- a/vendor/symfony/serializer/Tests/Annotation/GroupsTest.php
+++ /dev/null
@@ -1,52 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Serializer\Tests\Annotation;
-
-use Symfony\Component\Serializer\Annotation\Groups;
-
-/**
- * @author Kévin Dunglas <dunglas@gmail.com>
- */
-class GroupsTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @expectedException \Symfony\Component\Serializer\Exception\InvalidArgumentException
-     */
-    public function testEmptyGroupsParameter()
-    {
-        new Groups(array('value' => array()));
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Serializer\Exception\InvalidArgumentException
-     */
-    public function testNotAnArrayGroupsParameter()
-    {
-        new Groups(array('value' => 'coopTilleuls'));
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Serializer\Exception\InvalidArgumentException
-     */
-    public function testInvalidGroupsParameter()
-    {
-        new Groups(array('value' => array('a', 1, new \stdClass())));
-    }
-
-    public function testGroupsParameters()
-    {
-        $validData = array('a', 'b');
-
-        $groups = new Groups(array('value' => $validData));
-        $this->assertEquals($validData, $groups->getGroups());
-    }
-}
diff --git a/vendor/symfony/serializer/Tests/Encoder/JsonEncoderTest.php b/vendor/symfony/serializer/Tests/Encoder/JsonEncoderTest.php
deleted file mode 100644
index c7bd11e..0000000
--- a/vendor/symfony/serializer/Tests/Encoder/JsonEncoderTest.php
+++ /dev/null
@@ -1,79 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Serializer\Tests\Encoder;
-
-use Symfony\Component\Serializer\Encoder\JsonEncoder;
-use Symfony\Component\Serializer\Serializer;
-use Symfony\Component\Serializer\Normalizer\CustomNormalizer;
-
-class JsonEncoderTest extends \PHPUnit_Framework_TestCase
-{
-    protected function setUp()
-    {
-        $this->encoder = new JsonEncoder();
-        $this->serializer = new Serializer(array(new CustomNormalizer()), array('json' => new JsonEncoder()));
-    }
-
-    public function testEncodeScalar()
-    {
-        $obj = new \stdClass();
-        $obj->foo = 'foo';
-
-        $expected = '{"foo":"foo"}';
-
-        $this->assertEquals($expected, $this->encoder->encode($obj, 'json'));
-    }
-
-    public function testComplexObject()
-    {
-        $obj = $this->getObject();
-
-        $expected = $this->getJsonSource();
-
-        $this->assertEquals($expected, $this->encoder->encode($obj, 'json'));
-    }
-
-    public function testOptions()
-    {
-        $context = array('json_encode_options' => JSON_NUMERIC_CHECK);
-
-        $arr = array();
-        $arr['foo'] = '3';
-
-        $expected = '{"foo":3}';
-
-        $this->assertEquals($expected, $this->serializer->serialize($arr, 'json', $context));
-
-        $arr = array();
-        $arr['foo'] = '3';
-
-        $expected = '{"foo":"3"}';
-
-        $this->assertEquals($expected, $this->serializer->serialize($arr, 'json'), 'Context should not be persistent');
-    }
-
-    protected function getJsonSource()
-    {
-        return '{"foo":"foo","bar":["a","b"],"baz":{"key":"val","key2":"val","A B":"bar","item":[{"title":"title1"},{"title":"title2"}],"Barry":{"FooBar":{"Baz":"Ed","@id":1}}},"qux":"1"}';
-    }
-
-    protected function getObject()
-    {
-        $obj = new \stdClass();
-        $obj->foo = 'foo';
-        $obj->bar = array('a', 'b');
-        $obj->baz = array('key' => 'val', 'key2' => 'val', 'A B' => 'bar', 'item' => array(array('title' => 'title1'), array('title' => 'title2')), 'Barry' => array('FooBar' => array('Baz' => 'Ed', '@id' => 1)));
-        $obj->qux = '1';
-
-        return $obj;
-    }
-}
diff --git a/vendor/symfony/serializer/Tests/Encoder/XmlEncoderTest.php b/vendor/symfony/serializer/Tests/Encoder/XmlEncoderTest.php
deleted file mode 100644
index a62de61..0000000
--- a/vendor/symfony/serializer/Tests/Encoder/XmlEncoderTest.php
+++ /dev/null
@@ -1,510 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Serializer\Tests\Encoder;
-
-use Symfony\Component\Serializer\Tests\Fixtures\Dummy;
-use Symfony\Component\Serializer\Tests\Fixtures\ScalarDummy;
-use Symfony\Component\Serializer\Encoder\XmlEncoder;
-use Symfony\Component\Serializer\Serializer;
-use Symfony\Component\Serializer\Exception\UnexpectedValueException;
-use Symfony\Component\Serializer\Normalizer\CustomNormalizer;
-
-class XmlEncoderTest extends \PHPUnit_Framework_TestCase
-{
-    private $encoder;
-
-    protected function setUp()
-    {
-        $this->encoder = new XmlEncoder();
-        $serializer = new Serializer(array(new CustomNormalizer()), array('xml' => new XmlEncoder()));
-        $this->encoder->setSerializer($serializer);
-    }
-
-    public function testEncodeScalar()
-    {
-        $obj = new ScalarDummy();
-        $obj->xmlFoo = 'foo';
-
-        $expected = '<?xml version="1.0"?>'."\n".
-            '<response>foo</response>'."\n";
-
-        $this->assertEquals($expected, $this->encoder->encode($obj, 'xml'));
-    }
-
-    public function testSetRootNodeName()
-    {
-        $obj = new ScalarDummy();
-        $obj->xmlFoo = 'foo';
-
-        $this->encoder->setRootNodeName('test');
-        $expected = '<?xml version="1.0"?>'."\n".
-            '<test>foo</test>'."\n";
-
-        $this->assertEquals($expected, $this->encoder->encode($obj, 'xml'));
-    }
-
-    /**
-     * @expectedException        \Symfony\Component\Serializer\Exception\UnexpectedValueException
-     * @expectedExceptionMessage Document types are not allowed.
-     */
-    public function testDocTypeIsNotAllowed()
-    {
-        $this->encoder->decode('<?xml version="1.0"?><!DOCTYPE foo><foo></foo>', 'foo');
-    }
-
-    public function testAttributes()
-    {
-        $obj = new ScalarDummy();
-        $obj->xmlFoo = array(
-            'foo-bar' => array(
-                '@id' => 1,
-                '@name' => 'Bar',
-            ),
-            'Foo' => array(
-                'Bar' => 'Test',
-                '@Type' => 'test',
-            ),
-            'föo_bär' => 'a',
-            'Bar' => array(1,2,3),
-            'a' => 'b',
-        );
-        $expected = '<?xml version="1.0"?>'."\n".
-            '<response>'.
-            '<foo-bar id="1" name="Bar"/>'.
-            '<Foo Type="test"><Bar>Test</Bar></Foo>'.
-            '<föo_bär>a</föo_bär>'.
-            '<Bar>1</Bar>'.
-            '<Bar>2</Bar>'.
-            '<Bar>3</Bar>'.
-            '<a>b</a>'.
-            '</response>'."\n";
-        $this->assertEquals($expected, $this->encoder->encode($obj, 'xml'));
-    }
-
-    public function testElementNameValid()
-    {
-        $obj = new ScalarDummy();
-        $obj->xmlFoo = array(
-            'foo-bar' => 'a',
-            'foo_bar' => 'a',
-            'föo_bär' => 'a',
-        );
-
-        $expected = '<?xml version="1.0"?>'."\n".
-            '<response>'.
-            '<foo-bar>a</foo-bar>'.
-            '<foo_bar>a</foo_bar>'.
-            '<föo_bär>a</föo_bär>'.
-            '</response>'."\n";
-
-        $this->assertEquals($expected, $this->encoder->encode($obj, 'xml'));
-    }
-
-    public function testEncodeSimpleXML()
-    {
-        $xml = simplexml_load_string('<firstname>Peter</firstname>');
-        $array = array('person' => $xml);
-
-        $expected = '<?xml version="1.0"?>'."\n".
-            '<response><person><firstname>Peter</firstname></person></response>'."\n";
-
-        $this->assertEquals($expected, $this->encoder->encode($array, 'xml'));
-    }
-
-    public function testEncodeXmlAttributes()
-    {
-        $xml = simplexml_load_string('<firstname>Peter</firstname>');
-        $array = array('person' => $xml);
-
-        $expected = '<?xml version="1.1" encoding="utf-8" standalone="yes"?>'."\n".
-            '<response><person><firstname>Peter</firstname></person></response>'."\n";
-
-        $context = array(
-            'xml_version' => '1.1',
-            'xml_encoding' => 'utf-8',
-            'xml_standalone' => true,
-        );
-
-        $this->assertSame($expected, $this->encoder->encode($array, 'xml', $context));
-    }
-
-    public function testContext()
-    {
-        $array = array('person' => array('name' => 'George Abitbol'));
-        $expected = <<<XML
-<?xml version="1.0"?>
-<response>
-  <person>
-    <name>George Abitbol</name>
-  </person>
-</response>
-
-XML;
-
-        $context = array(
-            'xml_format_output' => true,
-        );
-
-        $this->assertSame($expected, $this->encoder->encode($array, 'xml', $context));
-    }
-
-    public function testEncodeScalarRootAttributes()
-    {
-        $array = array(
-          '#' => 'Paul',
-          '@gender' => 'm',
-        );
-
-        $expected = '<?xml version="1.0"?>'."\n".
-            '<response gender="m">Paul</response>'."\n";
-
-        $this->assertEquals($expected, $this->encoder->encode($array, 'xml'));
-    }
-
-    public function testEncodeRootAttributes()
-    {
-        $array = array(
-          'firstname' => 'Paul',
-          '@gender' => 'm',
-        );
-
-        $expected = '<?xml version="1.0"?>'."\n".
-            '<response gender="m"><firstname>Paul</firstname></response>'."\n";
-
-        $this->assertEquals($expected, $this->encoder->encode($array, 'xml'));
-    }
-
-    public function testEncodeCdataWrapping()
-    {
-        $array = array(
-          'firstname' => 'Paul <or Me>',
-        );
-
-        $expected = '<?xml version="1.0"?>'."\n".
-            '<response><firstname><![CDATA[Paul <or Me>]]></firstname></response>'."\n";
-
-        $this->assertEquals($expected, $this->encoder->encode($array, 'xml'));
-    }
-
-    public function testEncodeScalarWithAttribute()
-    {
-        $array = array(
-            'person' => array('@gender' => 'M', '#' => 'Peter'),
-        );
-
-        $expected = '<?xml version="1.0"?>'."\n".
-            '<response><person gender="M">Peter</person></response>'."\n";
-
-        $this->assertEquals($expected, $this->encoder->encode($array, 'xml'));
-    }
-
-    public function testDecodeScalar()
-    {
-        $source = '<?xml version="1.0"?>'."\n".
-            '<response>foo</response>'."\n";
-
-        $this->assertEquals('foo', $this->encoder->decode($source, 'xml'));
-    }
-
-    public function testEncode()
-    {
-        $source = $this->getXmlSource();
-        $obj = $this->getObject();
-
-        $this->assertEquals($source, $this->encoder->encode($obj, 'xml'));
-    }
-
-    public function testEncodeWithNamespace()
-    {
-        $source = $this->getNamespacedXmlSource();
-        $array = $this->getNamespacedArray();
-
-        $this->assertEquals($source, $this->encoder->encode($array, 'xml'));
-    }
-
-    public function testEncodeSerializerXmlRootNodeNameOption()
-    {
-        $options = array('xml_root_node_name' => 'test');
-        $this->encoder = new XmlEncoder();
-        $serializer = new Serializer(array(), array('xml' => new XmlEncoder()));
-        $this->encoder->setSerializer($serializer);
-
-        $array = array(
-            'person' => array('@gender' => 'M', '#' => 'Peter'),
-        );
-
-        $expected = '<?xml version="1.0"?>'."\n".
-            '<test><person gender="M">Peter</person></test>'."\n";
-
-        $this->assertEquals($expected, $serializer->serialize($array, 'xml', $options));
-    }
-
-    public function testDecode()
-    {
-        $source = $this->getXmlSource();
-        $obj = $this->getObject();
-
-        $this->assertEquals(get_object_vars($obj), $this->encoder->decode($source, 'xml'));
-    }
-
-    public function testDecodeCdataWrapping()
-    {
-        $expected = array(
-            'firstname' => 'Paul <or Me>',
-        );
-
-        $xml = '<?xml version="1.0"?>'."\n".
-            '<response><firstname><![CDATA[Paul <or Me>]]></firstname></response>'."\n";
-
-        $this->assertEquals($expected, $this->encoder->decode($xml, 'xml'));
-    }
-
-    public function testDecodeCdataWrappingAndWhitespace()
-    {
-        $expected = array(
-            'firstname' => 'Paul <or Me>',
-        );
-
-        $xml = '<?xml version="1.0"?>'."\n".
-            '<response><firstname>'."\n".
-                '<![CDATA[Paul <or Me>]]></firstname></response>'."\n";
-
-        $this->assertEquals($expected, $this->encoder->decode($xml, 'xml'));
-    }
-
-    public function testDecodeWithNamespace()
-    {
-        $source = $this->getNamespacedXmlSource();
-        $array = $this->getNamespacedArray();
-
-        $this->assertEquals($array, $this->encoder->decode($source, 'xml'));
-    }
-
-    public function testDecodeScalarWithAttribute()
-    {
-        $source = '<?xml version="1.0"?>'."\n".
-            '<response><person gender="M">Peter</person></response>'."\n";
-
-        $expected = array(
-            'person' => array('@gender' => 'M', '#' => 'Peter'),
-        );
-
-        $this->assertEquals($expected, $this->encoder->decode($source, 'xml'));
-    }
-
-    public function testDecodeScalarRootAttributes()
-    {
-        $source = '<?xml version="1.0"?>'."\n".
-            '<person gender="M">Peter</person>'."\n";
-
-        $expected = array(
-            '#' => 'Peter',
-            '@gender' => 'M',
-        );
-
-        $this->assertEquals($expected, $this->encoder->decode($source, 'xml'));
-    }
-
-    public function testDecodeRootAttributes()
-    {
-        $source = '<?xml version="1.0"?>'."\n".
-            '<person gender="M"><firstname>Peter</firstname><lastname>Mac Calloway</lastname></person>'."\n";
-
-        $expected = array(
-            'firstname' => 'Peter',
-            'lastname' => 'Mac Calloway',
-            '@gender' => 'M',
-        );
-
-        $this->assertEquals($expected, $this->encoder->decode($source, 'xml'));
-    }
-
-    public function testDecodeArray()
-    {
-        $source = '<?xml version="1.0"?>'."\n".
-            '<response>'.
-            '<people>'.
-            '<person><firstname>Benjamin</firstname><lastname>Alexandre</lastname></person>'.
-            '<person><firstname>Damien</firstname><lastname>Clay</lastname></person>'.
-            '</people>'.
-            '</response>'."\n";
-
-        $expected = array(
-            'people' => array('person' => array(
-                array('firstname' => 'Benjamin', 'lastname' => 'Alexandre'),
-                array('firstname' => 'Damien', 'lastname' => 'Clay'),
-            )),
-        );
-
-        $this->assertEquals($expected, $this->encoder->decode($source, 'xml'));
-    }
-
-    public function testDecodeIgnoreWhiteSpace()
-    {
-        $source = <<<XML
-<?xml version="1.0"?>
-<people>
-    <person>
-        <firstname>Benjamin</firstname>
-        <lastname>Alexandre</lastname>
-    </person>
-    <person>
-        <firstname>Damien</firstname>
-        <lastname>Clay</lastname>
-    </person>
-</people>
-XML;
-        $expected = array('person' => array(
-            array('firstname' => 'Benjamin', 'lastname' => 'Alexandre'),
-            array('firstname' => 'Damien', 'lastname' => 'Clay'),
-        ));
-
-        $this->assertEquals($expected, $this->encoder->decode($source, 'xml'));
-    }
-
-    public function testDecodeWithoutItemHash()
-    {
-        $obj = new ScalarDummy();
-        $obj->xmlFoo = array(
-            'foo-bar' => array(
-                '@key' => 'value',
-                'item' => array('@key' => 'key', 'key-val' => 'val'),
-            ),
-            'Foo' => array(
-                'Bar' => 'Test',
-                '@Type' => 'test',
-            ),
-            'föo_bär' => 'a',
-            'Bar' => array(1,2,3),
-            'a' => 'b',
-        );
-        $expected = array(
-            'foo-bar' => array(
-                '@key' => 'value',
-                'key' => array('@key' => 'key', 'key-val' => 'val'),
-            ),
-            'Foo' => array(
-                'Bar' => 'Test',
-                '@Type' => 'test',
-            ),
-            'föo_bär' => 'a',
-            'Bar' => array(1,2,3),
-            'a' => 'b',
-        );
-        $xml = $this->encoder->encode($obj, 'xml');
-        $this->assertEquals($expected, $this->encoder->decode($xml, 'xml'));
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Serializer\Exception\UnexpectedValueException
-     */
-    public function testDecodeInvalidXml()
-    {
-        $this->encoder->decode('<?xml version="1.0"?><invalid><xml>', 'xml');
-    }
-
-    public function testPreventsComplexExternalEntities()
-    {
-        $oldCwd = getcwd();
-        chdir(__DIR__);
-
-        try {
-            $this->encoder->decode('<?xml version="1.0"?><!DOCTYPE scan[<!ENTITY test SYSTEM "php://filter/read=convert.base64-encode/resource=XmlEncoderTest.php">]><scan>&test;</scan>', 'xml');
-            chdir($oldCwd);
-
-            $this->fail('No exception was thrown.');
-        } catch (\Exception $e) {
-            chdir($oldCwd);
-
-            if (!$e instanceof UnexpectedValueException) {
-                $this->fail('Expected UnexpectedValueException');
-            }
-        }
-    }
-
-    public function testDecodeEmptyXml()
-    {
-        $this->setExpectedException('Symfony\Component\Serializer\Exception\UnexpectedValueException', 'Invalid XML data, it can not be empty.');
-        $this->encoder->decode(' ', 'xml');
-    }
-
-    protected function getXmlSource()
-    {
-        return '<?xml version="1.0"?>'."\n".
-            '<response>'.
-            '<foo>foo</foo>'.
-            '<bar>a</bar><bar>b</bar>'.
-            '<baz><key>val</key><key2>val</key2><item key="A B">bar</item>'.
-            '<item><title>title1</title></item><item><title>title2</title></item>'.
-            '<Barry><FooBar id="1"><Baz>Ed</Baz></FooBar></Barry></baz>'.
-            '<qux>1</qux>'.
-            '</response>'."\n";
-    }
-
-    protected function getNamespacedXmlSource()
-    {
-        return '<?xml version="1.0"?>'."\n".
-            '<response xmlns="http://www.w3.org/2005/Atom" xmlns:app="http://www.w3.org/2007/app" xmlns:media="http://search.yahoo.com/mrss/" xmlns:gd="http://schemas.google.com/g/2005" xmlns:yt="http://gdata.youtube.com/schemas/2007">'.
-            '<qux>1</qux>'.
-            '<app:foo>foo</app:foo>'.
-            '<yt:bar>a</yt:bar><yt:bar>b</yt:bar>'.
-            '<media:baz><media:key>val</media:key><media:key2>val</media:key2><item key="A B">bar</item>'.
-            '<item><title>title1</title></item><item><title>title2</title></item>'.
-            '<Barry size="large"><FooBar gd:id="1"><Baz>Ed</Baz></FooBar></Barry></media:baz>'.
-            '</response>'."\n";
-    }
-
-    protected function getNamespacedArray()
-    {
-        return array(
-            '@xmlns' => 'http://www.w3.org/2005/Atom',
-            '@xmlns:app' => 'http://www.w3.org/2007/app',
-            '@xmlns:media' => 'http://search.yahoo.com/mrss/',
-            '@xmlns:gd' => 'http://schemas.google.com/g/2005',
-            '@xmlns:yt' => 'http://gdata.youtube.com/schemas/2007',
-            'qux' => '1',
-            'app:foo' => 'foo',
-            'yt:bar' => array('a', 'b'),
-            'media:baz' => array(
-                'media:key' => 'val',
-                'media:key2' => 'val',
-                'A B' => 'bar',
-                'item' => array(
-                    array(
-                        'title' => 'title1',
-                    ),
-                    array(
-                        'title' => 'title2',
-                    ),
-                ),
-                'Barry' => array(
-                    '@size' => 'large',
-                    'FooBar' => array(
-                        'Baz' => 'Ed',
-                        '@gd:id' => 1,
-                    ),
-                ),
-            ),
-        );
-    }
-
-    protected function getObject()
-    {
-        $obj = new Dummy();
-        $obj->foo = 'foo';
-        $obj->bar = array('a', 'b');
-        $obj->baz = array('key' => 'val', 'key2' => 'val', 'A B' => 'bar', 'item' => array(array('title' => 'title1'), array('title' => 'title2')), 'Barry' => array('FooBar' => array('Baz' => 'Ed', '@id' => 1)));
-        $obj->qux = '1';
-
-        return $obj;
-    }
-}
diff --git a/vendor/symfony/serializer/Tests/Fixtures/CircularReferenceDummy.php b/vendor/symfony/serializer/Tests/Fixtures/CircularReferenceDummy.php
deleted file mode 100644
index cc07015..0000000
--- a/vendor/symfony/serializer/Tests/Fixtures/CircularReferenceDummy.php
+++ /dev/null
@@ -1,23 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Serializer\Tests\Fixtures;
-
-/**
- * @author Kévin Dunglas <dunglas@gmail.com>
- */
-class CircularReferenceDummy
-{
-    public function getMe()
-    {
-        return $this;
-    }
-}
diff --git a/vendor/symfony/serializer/Tests/Fixtures/DenormalizableDummy.php b/vendor/symfony/serializer/Tests/Fixtures/DenormalizableDummy.php
deleted file mode 100644
index d78f34a..0000000
--- a/vendor/symfony/serializer/Tests/Fixtures/DenormalizableDummy.php
+++ /dev/null
@@ -1,22 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Serializer\Tests\Fixtures;
-
-use Symfony\Component\Serializer\Normalizer\DenormalizableInterface;
-use Symfony\Component\Serializer\Normalizer\DenormalizerInterface;
-
-class DenormalizableDummy implements DenormalizableInterface
-{
-    public function denormalize(DenormalizerInterface $denormalizer, $data, $format = null, array $context = array())
-    {
-    }
-}
diff --git a/vendor/symfony/serializer/Tests/Fixtures/Dummy.php b/vendor/symfony/serializer/Tests/Fixtures/Dummy.php
deleted file mode 100644
index 6b33e84..0000000
--- a/vendor/symfony/serializer/Tests/Fixtures/Dummy.php
+++ /dev/null
@@ -1,43 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Serializer\Tests\Fixtures;
-
-use Symfony\Component\Serializer\Normalizer\NormalizableInterface;
-use Symfony\Component\Serializer\Normalizer\DenormalizableInterface;
-use Symfony\Component\Serializer\Normalizer\NormalizerInterface;
-use Symfony\Component\Serializer\Normalizer\DenormalizerInterface;
-
-class Dummy implements NormalizableInterface, DenormalizableInterface
-{
-    public $foo;
-    public $bar;
-    public $baz;
-    public $qux;
-
-    public function normalize(NormalizerInterface $normalizer, $format = null, array $context = array())
-    {
-        return array(
-            'foo' => $this->foo,
-            'bar' => $this->bar,
-            'baz' => $this->baz,
-            'qux' => $this->qux,
-        );
-    }
-
-    public function denormalize(DenormalizerInterface $denormalizer, $data, $format = null, array $context = array())
-    {
-        $this->foo = $data['foo'];
-        $this->bar = $data['bar'];
-        $this->baz = $data['baz'];
-        $this->qux = $data['qux'];
-    }
-}
diff --git a/vendor/symfony/serializer/Tests/Fixtures/GroupDummy.php b/vendor/symfony/serializer/Tests/Fixtures/GroupDummy.php
deleted file mode 100644
index 37bfa7e..0000000
--- a/vendor/symfony/serializer/Tests/Fixtures/GroupDummy.php
+++ /dev/null
@@ -1,80 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Serializer\Tests\Fixtures;
-
-use Symfony\Component\Serializer\Annotation\Groups;
-
-/**
- * @author Kévin Dunglas <dunglas@gmail.com>
- */
-class GroupDummy extends GroupDummyParent implements GroupDummyInterface
-{
-    /**
-     * @Groups({"a"})
-     */
-    private $foo;
-    /**
-     * @Groups({"b", "c", "name_converter"})
-     */
-    protected $bar;
-    private $fooBar;
-    private $symfony;
-
-    /**
-     * @Groups({"b"})
-     */
-    public function setBar($bar)
-    {
-        $this->bar = $bar;
-    }
-
-    /**
-     * @Groups({"c"})
-     */
-    public function getBar()
-    {
-        return $this->bar;
-    }
-
-    public function setFoo($foo)
-    {
-        $this->foo = $foo;
-    }
-
-    public function getFoo()
-    {
-        return $this->foo;
-    }
-
-    public function setFooBar($fooBar)
-    {
-        $this->fooBar = $fooBar;
-    }
-
-    /**
-     * @Groups({"a", "b", "name_converter"})
-     */
-    public function isFooBar()
-    {
-        return $this->fooBar;
-    }
-
-    public function setSymfony($symfony)
-    {
-        $this->symfony = $symfony;
-    }
-
-    public function getSymfony()
-    {
-        return $this->symfony;
-    }
-}
diff --git a/vendor/symfony/serializer/Tests/Fixtures/GroupDummyInterface.php b/vendor/symfony/serializer/Tests/Fixtures/GroupDummyInterface.php
deleted file mode 100644
index a60629e..0000000
--- a/vendor/symfony/serializer/Tests/Fixtures/GroupDummyInterface.php
+++ /dev/null
@@ -1,25 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Serializer\Tests\Fixtures;
-
-use Symfony\Component\Serializer\Annotation\Groups;
-
-/**
- * @author Kévin Dunglas <dunglas@gmail.com>
- */
-interface GroupDummyInterface
-{
-    /**
-     * @Groups({"a", "name_converter"})
-     */
-    public function getSymfony();
-}
diff --git a/vendor/symfony/serializer/Tests/Fixtures/GroupDummyParent.php b/vendor/symfony/serializer/Tests/Fixtures/GroupDummyParent.php
deleted file mode 100644
index dd24233..0000000
--- a/vendor/symfony/serializer/Tests/Fixtures/GroupDummyParent.php
+++ /dev/null
@@ -1,49 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Serializer\Tests\Fixtures;
-
-use Symfony\Component\Serializer\Annotation\Groups;
-
-/**
- * @author Kévin Dunglas <dunglas@gmail.com>
- */
-class GroupDummyParent
-{
-    /**
-     * @Groups({"a"})
-     */
-    private $kevin;
-    private $coopTilleuls;
-
-    public function setKevin($kevin)
-    {
-        $this->kevin = $kevin;
-    }
-
-    public function getKevin()
-    {
-        return $this->kevin;
-    }
-
-    public function setCoopTilleuls($coopTilleuls)
-    {
-        $this->coopTilleuls = $coopTilleuls;
-    }
-
-    /**
-     * @Groups({"a", "b"})
-     */
-    public function getCoopTilleuls()
-    {
-        return $this->coopTilleuls;
-    }
-}
diff --git a/vendor/symfony/serializer/Tests/Fixtures/NormalizableTraversableDummy.php b/vendor/symfony/serializer/Tests/Fixtures/NormalizableTraversableDummy.php
deleted file mode 100644
index 3ac2fe3..0000000
--- a/vendor/symfony/serializer/Tests/Fixtures/NormalizableTraversableDummy.php
+++ /dev/null
@@ -1,36 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Serializer\Tests\Fixtures;
-
-use Symfony\Component\Serializer\Normalizer\NormalizableInterface;
-use Symfony\Component\Serializer\Normalizer\DenormalizableInterface;
-use Symfony\Component\Serializer\Normalizer\NormalizerInterface;
-use Symfony\Component\Serializer\Normalizer\DenormalizerInterface;
-
-class NormalizableTraversableDummy extends TraversableDummy implements NormalizableInterface, DenormalizableInterface
-{
-    public function normalize(NormalizerInterface $normalizer, $format = null, array $context = array())
-    {
-        return array(
-            'foo' => 'normalizedFoo',
-            'bar' => 'normalizedBar',
-        );
-    }
-
-    public function denormalize(DenormalizerInterface $denormalizer, $data, $format = null, array $context = array())
-    {
-        return array(
-            'foo' => 'denormalizedFoo',
-            'bar' => 'denormalizedBar',
-        );
-    }
-}
diff --git a/vendor/symfony/serializer/Tests/Fixtures/PropertyCircularReferenceDummy.php b/vendor/symfony/serializer/Tests/Fixtures/PropertyCircularReferenceDummy.php
deleted file mode 100644
index 8a1d9d8..0000000
--- a/vendor/symfony/serializer/Tests/Fixtures/PropertyCircularReferenceDummy.php
+++ /dev/null
@@ -1,25 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Serializer\Tests\Fixtures;
-
-/**
- * @author Kévin Dunglas <dunglas@gmail.com>
- */
-class PropertyCircularReferenceDummy
-{
-    public $me;
-
-    public function __construct()
-    {
-        $this->me = $this;
-    }
-}
diff --git a/vendor/symfony/serializer/Tests/Fixtures/PropertySiblingHolder.php b/vendor/symfony/serializer/Tests/Fixtures/PropertySiblingHolder.php
deleted file mode 100644
index af993e6..0000000
--- a/vendor/symfony/serializer/Tests/Fixtures/PropertySiblingHolder.php
+++ /dev/null
@@ -1,39 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Serializer\Tests\Fixtures;
-
-/**
- * @author Kévin Dunglas <dunglas@gmail.com>
- */
-class PropertySiblingHolder
-{
-    public $sibling0;
-    public $sibling1;
-    public $sibling2;
-
-    public function __construct()
-    {
-        $sibling = new PropertySibling();
-
-        $this->sibling0 = $sibling;
-        $this->sibling1 = $sibling;
-        $this->sibling2 = $sibling;
-    }
-}
-
-/**
- * @author Kévin Dunglas <dunglas@gmail.com>
- */
-class PropertySibling
-{
-    public $coopTilleuls = 'Les-Tilleuls.coop';
-}
diff --git a/vendor/symfony/serializer/Tests/Fixtures/ScalarDummy.php b/vendor/symfony/serializer/Tests/Fixtures/ScalarDummy.php
deleted file mode 100644
index e9db238..0000000
--- a/vendor/symfony/serializer/Tests/Fixtures/ScalarDummy.php
+++ /dev/null
@@ -1,37 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Serializer\Tests\Fixtures;
-
-use Symfony\Component\Serializer\Normalizer\NormalizableInterface;
-use Symfony\Component\Serializer\Normalizer\DenormalizableInterface;
-use Symfony\Component\Serializer\Normalizer\NormalizerInterface;
-use Symfony\Component\Serializer\Normalizer\DenormalizerInterface;
-
-class ScalarDummy implements NormalizableInterface, DenormalizableInterface
-{
-    public $foo;
-    public $xmlFoo;
-
-    public function normalize(NormalizerInterface $normalizer, $format = null, array $context = array())
-    {
-        return $format === 'xml' ? $this->xmlFoo : $this->foo;
-    }
-
-    public function denormalize(DenormalizerInterface $denormalizer, $data, $format = null, array $context = array())
-    {
-        if ($format === 'xml') {
-            $this->xmlFoo = $data;
-        } else {
-            $this->foo = $data;
-        }
-    }
-}
diff --git a/vendor/symfony/serializer/Tests/Fixtures/SiblingHolder.php b/vendor/symfony/serializer/Tests/Fixtures/SiblingHolder.php
deleted file mode 100644
index acd4fe9..0000000
--- a/vendor/symfony/serializer/Tests/Fixtures/SiblingHolder.php
+++ /dev/null
@@ -1,57 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Serializer\Tests\Fixtures;
-
-/**
- * @author Kévin Dunglas <dunglas@gmail.com>
- */
-class SiblingHolder
-{
-    private $sibling0;
-    private $sibling1;
-    private $sibling2;
-
-    public function __construct()
-    {
-        $sibling = new Sibling();
-
-        $this->sibling0 = $sibling;
-        $this->sibling1 = $sibling;
-        $this->sibling2 = $sibling;
-    }
-
-    public function getSibling0()
-    {
-        return $this->sibling0;
-    }
-
-    public function getSibling1()
-    {
-        return $this->sibling1;
-    }
-
-    public function getSibling2()
-    {
-        return $this->sibling2;
-    }
-}
-
-/**
- * @author Kévin Dunglas <dunglas@gmail.com>
- */
-class Sibling
-{
-    public function getCoopTilleuls()
-    {
-        return 'Les-Tilleuls.coop';
-    }
-}
diff --git a/vendor/symfony/serializer/Tests/Fixtures/TraversableDummy.php b/vendor/symfony/serializer/Tests/Fixtures/TraversableDummy.php
deleted file mode 100644
index bcf46e5..0000000
--- a/vendor/symfony/serializer/Tests/Fixtures/TraversableDummy.php
+++ /dev/null
@@ -1,23 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Serializer\Tests\Fixtures;
-
-class TraversableDummy implements \IteratorAggregate
-{
-    public $foo = 'foo';
-    public $bar = 'bar';
-
-    public function getIterator()
-    {
-        return new \ArrayIterator(get_object_vars($this));
-    }
-}
diff --git a/vendor/symfony/serializer/Tests/Fixtures/VariadicConstructorArgsDummy.php b/vendor/symfony/serializer/Tests/Fixtures/VariadicConstructorArgsDummy.php
deleted file mode 100644
index c04aeba..0000000
--- a/vendor/symfony/serializer/Tests/Fixtures/VariadicConstructorArgsDummy.php
+++ /dev/null
@@ -1,27 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Serializer\Tests\Fixtures;
-
-class VariadicConstructorArgsDummy
-{
-    private $foo;
-
-    public function __construct(...$foo)
-    {
-        $this->foo = $foo;
-    }
-
-    public function getFoo()
-    {
-        return $this->foo;
-    }
-}
diff --git a/vendor/symfony/serializer/Tests/Fixtures/empty-mapping.yml b/vendor/symfony/serializer/Tests/Fixtures/empty-mapping.yml
deleted file mode 100644
index e69de29..0000000
diff --git a/vendor/symfony/serializer/Tests/Fixtures/invalid-mapping.yml b/vendor/symfony/serializer/Tests/Fixtures/invalid-mapping.yml
deleted file mode 100644
index 1910281..0000000
--- a/vendor/symfony/serializer/Tests/Fixtures/invalid-mapping.yml
+++ /dev/null
@@ -1 +0,0 @@
-foo
\ No newline at end of file
diff --git a/vendor/symfony/serializer/Tests/Fixtures/serialization.xml b/vendor/symfony/serializer/Tests/Fixtures/serialization.xml
deleted file mode 100644
index 6e95aaf..0000000
--- a/vendor/symfony/serializer/Tests/Fixtures/serialization.xml
+++ /dev/null
@@ -1,18 +0,0 @@
-<?xml version="1.0" ?>
-
-<serializer xmlns="http://symfony.com/schema/dic/serializer-mapping"
-                    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-                    xsi:schemaLocation="http://symfony.com/schema/dic/serializer-mapping http://symfony.com/schema/dic/serializer-mapping/serializer-mapping-1.0.xsd">
-
-    <class name="Symfony\Component\Serializer\Tests\Fixtures\GroupDummy">
-        <attribute name="foo">
-            <group>group1</group>
-            <group>group2</group>
-        </attribute>
-
-        <attribute name="bar">
-            <group>group2</group>
-        </attribute>
-    </class>
-
-</serializer>
diff --git a/vendor/symfony/serializer/Tests/Fixtures/serialization.yml b/vendor/symfony/serializer/Tests/Fixtures/serialization.yml
deleted file mode 100644
index e855ea4..0000000
--- a/vendor/symfony/serializer/Tests/Fixtures/serialization.yml
+++ /dev/null
@@ -1,6 +0,0 @@
-Symfony\Component\Serializer\Tests\Fixtures\GroupDummy:
-  attributes:
-    foo:
-      groups: ['group1', 'group2']
-    bar:
-      groups: ['group2']
diff --git a/vendor/symfony/serializer/Tests/Mapping/AttributeMetadataTest.php b/vendor/symfony/serializer/Tests/Mapping/AttributeMetadataTest.php
deleted file mode 100644
index 4a32831..0000000
--- a/vendor/symfony/serializer/Tests/Mapping/AttributeMetadataTest.php
+++ /dev/null
@@ -1,67 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Serializer\Tests\Mapping;
-
-use Symfony\Component\Serializer\Mapping\AttributeMetadata;
-
-/**
- * @author Kévin Dunglas <dunglas@gmail.com>
- */
-class AttributeMetadataTest extends \PHPUnit_Framework_TestCase
-{
-    public function testInterface()
-    {
-        $attributeMetadata = new AttributeMetadata('name');
-        $this->assertInstanceOf('Symfony\Component\Serializer\Mapping\AttributeMetadataInterface', $attributeMetadata);
-    }
-
-    public function testGetName()
-    {
-        $attributeMetadata = new AttributeMetadata('name');
-        $this->assertEquals('name', $attributeMetadata->getName());
-    }
-
-    public function testGroups()
-    {
-        $attributeMetadata = new AttributeMetadata('group');
-        $attributeMetadata->addGroup('a');
-        $attributeMetadata->addGroup('a');
-        $attributeMetadata->addGroup('b');
-
-        $this->assertEquals(array('a', 'b'), $attributeMetadata->getGroups());
-    }
-
-    public function testMerge()
-    {
-        $attributeMetadata1 = new AttributeMetadata('a1');
-        $attributeMetadata1->addGroup('a');
-        $attributeMetadata1->addGroup('b');
-
-        $attributeMetadata2 = new AttributeMetadata('a2');
-        $attributeMetadata2->addGroup('a');
-        $attributeMetadata2->addGroup('c');
-
-        $attributeMetadata1->merge($attributeMetadata2);
-
-        $this->assertEquals(array('a', 'b', 'c'), $attributeMetadata1->getGroups());
-    }
-
-    public function testSerialize()
-    {
-        $attributeMetadata = new AttributeMetadata('attribute');
-        $attributeMetadata->addGroup('a');
-        $attributeMetadata->addGroup('b');
-
-        $serialized = serialize($attributeMetadata);
-        $this->assertEquals($attributeMetadata, unserialize($serialized));
-    }
-}
diff --git a/vendor/symfony/serializer/Tests/Mapping/ClassMetadataTest.php b/vendor/symfony/serializer/Tests/Mapping/ClassMetadataTest.php
deleted file mode 100644
index 629c17b..0000000
--- a/vendor/symfony/serializer/Tests/Mapping/ClassMetadataTest.php
+++ /dev/null
@@ -1,82 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Serializer\Tests\Mapping;
-
-use Symfony\Component\Serializer\Mapping\ClassMetadata;
-
-/**
- * @author Kévin Dunglas <dunglas@gmail.com>
- */
-class ClassMetadataTest extends \PHPUnit_Framework_TestCase
-{
-    public function testInterface()
-    {
-        $classMetadata = new ClassMetadata('name');
-        $this->assertInstanceOf('Symfony\Component\Serializer\Mapping\ClassMetadataInterface', $classMetadata);
-    }
-
-    public function testAttributeMetadata()
-    {
-        $classMetadata = new ClassMetadata('c');
-
-        $a1 = $this->getMock('Symfony\Component\Serializer\Mapping\AttributeMetadataInterface');
-        $a1->method('getName')->willReturn('a1');
-
-        $a2 = $this->getMock('Symfony\Component\Serializer\Mapping\AttributeMetadataInterface');
-        $a2->method('getName')->willReturn('a2');
-
-        $classMetadata->addAttributeMetadata($a1);
-        $classMetadata->addAttributeMetadata($a2);
-
-        $this->assertEquals(array('a1' => $a1, 'a2' => $a2), $classMetadata->getAttributesMetadata());
-    }
-
-    public function testMerge()
-    {
-        $classMetadata1 = new ClassMetadata('c1');
-        $classMetadata2 = new ClassMetadata('c2');
-
-        $ac1 = $this->getMock('Symfony\Component\Serializer\Mapping\AttributeMetadataInterface');
-        $ac1->method('getName')->willReturn('a1');
-        $ac1->method('getGroups')->willReturn(array('a', 'b'));
-
-        $ac2 = $this->getMock('Symfony\Component\Serializer\Mapping\AttributeMetadataInterface');
-        $ac2->method('getName')->willReturn('a1');
-        $ac2->method('getGroups')->willReturn(array('b', 'c'));
-
-        $classMetadata1->addAttributeMetadata($ac1);
-        $classMetadata2->addAttributeMetadata($ac2);
-
-        $classMetadata1->merge($classMetadata2);
-
-        $ac1->method('getGroups')->willReturn('a', 'b', 'c');
-
-        $this->assertEquals(array('a1' => $ac1), $classMetadata2->getAttributesMetadata());
-    }
-
-    public function testSerialize()
-    {
-        $classMetadata = new ClassMetadata('a');
-
-        $a1 = $this->getMock('Symfony\Component\Serializer\Mapping\AttributeMetadataInterface');
-        $a1->method('getName')->willReturn('b1');
-
-        $a2 = $this->getMock('Symfony\Component\Serializer\Mapping\AttributeMetadataInterface');
-        $a2->method('getName')->willReturn('b2');
-
-        $classMetadata->addAttributeMetadata($a1);
-        $classMetadata->addAttributeMetadata($a2);
-
-        $serialized = serialize($classMetadata);
-        $this->assertEquals($classMetadata, unserialize($serialized));
-    }
-}
diff --git a/vendor/symfony/serializer/Tests/Mapping/Factory/ClassMetadataFactoryTest.php b/vendor/symfony/serializer/Tests/Mapping/Factory/ClassMetadataFactoryTest.php
deleted file mode 100644
index 2e2ba22..0000000
--- a/vendor/symfony/serializer/Tests/Mapping/Factory/ClassMetadataFactoryTest.php
+++ /dev/null
@@ -1,78 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Serializer\Tests\Mapping\Factory;
-
-use Doctrine\Common\Annotations\AnnotationReader;
-use Symfony\Component\Serializer\Mapping\Factory\ClassMetadataFactory;
-use Symfony\Component\Serializer\Mapping\Loader\AnnotationLoader;
-use Symfony\Component\Serializer\Mapping\Loader\LoaderChain;
-use Symfony\Component\Serializer\Tests\Mapping\TestClassMetadataFactory;
-
-/**
- * @author Kévin Dunglas <dunglas@gmail.com>
- */
-class ClassMetadataFactoryTest extends \PHPUnit_Framework_TestCase
-{
-    public function testInterface()
-    {
-        $classMetadata = new ClassMetadataFactory(new LoaderChain(array()));
-        $this->assertInstanceOf('Symfony\Component\Serializer\Mapping\Factory\ClassMetadataFactory', $classMetadata);
-    }
-
-    public function testGetMetadataFor()
-    {
-        $factory = new ClassMetadataFactory(new AnnotationLoader(new AnnotationReader()));
-        $classMetadata = $factory->getMetadataFor('Symfony\Component\Serializer\Tests\Fixtures\GroupDummy');
-
-        $this->assertEquals(TestClassMetadataFactory::createClassMetadata(true, true), $classMetadata);
-    }
-
-    public function testHasMetadataFor()
-    {
-        $factory = new ClassMetadataFactory(new AnnotationLoader(new AnnotationReader()));
-        $this->assertTrue($factory->hasMetadataFor('Symfony\Component\Serializer\Tests\Fixtures\GroupDummy'));
-        $this->assertTrue($factory->hasMetadataFor('Symfony\Component\Serializer\Tests\Fixtures\GroupDummyParent'));
-        $this->assertTrue($factory->hasMetadataFor('Symfony\Component\Serializer\Tests\Fixtures\GroupDummyInterface'));
-        $this->assertFalse($factory->hasMetadataFor('Dunglas\Entity'));
-    }
-
-    public function testCacheExists()
-    {
-        $cache = $this->getMock('Doctrine\Common\Cache\Cache');
-        $cache
-            ->expects($this->once())
-            ->method('fetch')
-            ->will($this->returnValue('foo'))
-        ;
-
-        $factory = new ClassMetadataFactory(new AnnotationLoader(new AnnotationReader()), $cache);
-        $this->assertEquals('foo', $factory->getMetadataFor('Symfony\Component\Serializer\Tests\Fixtures\GroupDummy'));
-    }
-
-    public function testCacheNotExists()
-    {
-        $cache = $this->getMock('Doctrine\Common\Cache\Cache');
-        $cache
-            ->method('fetch')
-            ->will($this->returnValue(false))
-        ;
-
-        $cache
-            ->method('save')
-        ;
-
-        $factory = new ClassMetadataFactory(new AnnotationLoader(new AnnotationReader()), $cache);
-        $metadata = $factory->getMetadataFor('Symfony\Component\Serializer\Tests\Fixtures\GroupDummy');
-
-        $this->assertEquals(TestClassMetadataFactory::createClassMetadata(true, true), $metadata);
-    }
-}
diff --git a/vendor/symfony/serializer/Tests/Mapping/Loader/AnnotationLoaderTest.php b/vendor/symfony/serializer/Tests/Mapping/Loader/AnnotationLoaderTest.php
deleted file mode 100644
index 484d062..0000000
--- a/vendor/symfony/serializer/Tests/Mapping/Loader/AnnotationLoaderTest.php
+++ /dev/null
@@ -1,66 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Serializer\Tests\Mapping\Loader;
-
-use Doctrine\Common\Annotations\AnnotationReader;
-use Symfony\Component\Serializer\Mapping\ClassMetadata;
-use Symfony\Component\Serializer\Mapping\Loader\AnnotationLoader;
-use Symfony\Component\Serializer\Tests\Mapping\TestClassMetadataFactory;
-
-/**
- * @author Kévin Dunglas <dunglas@gmail.com>
- */
-class AnnotationLoaderTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @var AnnotationLoader
-     */
-    private $loader;
-
-    protected function setUp()
-    {
-        $this->loader = new AnnotationLoader(new AnnotationReader());
-    }
-
-    public function testInterface()
-    {
-        $this->assertInstanceOf('Symfony\Component\Serializer\Mapping\Loader\LoaderInterface', $this->loader);
-    }
-
-    public function testLoadClassMetadataReturnsTrueIfSuccessful()
-    {
-        $classMetadata = new ClassMetadata('Symfony\Component\Serializer\Tests\Fixtures\GroupDummy');
-
-        $this->assertTrue($this->loader->loadClassMetadata($classMetadata));
-    }
-
-    public function testLoadClassMetadata()
-    {
-        $classMetadata = new ClassMetadata('Symfony\Component\Serializer\Tests\Fixtures\GroupDummy');
-        $this->loader->loadClassMetadata($classMetadata);
-
-        $this->assertEquals(TestClassMetadataFactory::createClassMetadata(), $classMetadata);
-    }
-
-    public function testLoadClassMetadataAndMerge()
-    {
-        $classMetadata = new ClassMetadata('Symfony\Component\Serializer\Tests\Fixtures\GroupDummy');
-        $parentClassMetadata = new ClassMetadata('Symfony\Component\Serializer\Tests\Fixtures\GroupDummyParent');
-
-        $this->loader->loadClassMetadata($parentClassMetadata);
-        $classMetadata->merge($parentClassMetadata);
-
-        $this->loader->loadClassMetadata($classMetadata);
-
-        $this->assertEquals(TestClassMetadataFactory::createClassMetadata(true), $classMetadata);
-    }
-}
diff --git a/vendor/symfony/serializer/Tests/Mapping/Loader/XmlFileLoaderTest.php b/vendor/symfony/serializer/Tests/Mapping/Loader/XmlFileLoaderTest.php
deleted file mode 100644
index 6b468ff..0000000
--- a/vendor/symfony/serializer/Tests/Mapping/Loader/XmlFileLoaderTest.php
+++ /dev/null
@@ -1,54 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Serializer\Tests\Mapping\Loader;
-
-use Symfony\Component\Serializer\Mapping\Loader\XmlFileLoader;
-use Symfony\Component\Serializer\Mapping\ClassMetadata;
-use Symfony\Component\Serializer\Tests\Mapping\TestClassMetadataFactory;
-
-/**
- * @author Kévin Dunglas <dunglas@gmail.com>
- */
-class XmlFileLoaderTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @var XmlFileLoader
-     */
-    private $loader;
-    /**
-     * @var ClassMetadata
-     */
-    private $metadata;
-
-    protected function setUp()
-    {
-        $this->loader = new XmlFileLoader(__DIR__.'/../../Fixtures/serialization.xml');
-        $this->metadata = new ClassMetadata('Symfony\Component\Serializer\Tests\Fixtures\GroupDummy');
-    }
-
-    public function testInterface()
-    {
-        $this->assertInstanceOf('Symfony\Component\Serializer\Mapping\Loader\LoaderInterface', $this->loader);
-    }
-
-    public function testLoadClassMetadataReturnsTrueIfSuccessful()
-    {
-        $this->assertTrue($this->loader->loadClassMetadata($this->metadata));
-    }
-
-    public function testLoadClassMetadata()
-    {
-        $this->loader->loadClassMetadata($this->metadata);
-
-        $this->assertEquals(TestClassMetadataFactory::createXmlCLassMetadata(), $this->metadata);
-    }
-}
diff --git a/vendor/symfony/serializer/Tests/Mapping/Loader/YamlFileLoaderTest.php b/vendor/symfony/serializer/Tests/Mapping/Loader/YamlFileLoaderTest.php
deleted file mode 100644
index 72d146f..0000000
--- a/vendor/symfony/serializer/Tests/Mapping/Loader/YamlFileLoaderTest.php
+++ /dev/null
@@ -1,69 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Serializer\Tests\Mapping\Loader;
-
-use Symfony\Component\Serializer\Mapping\Loader\YamlFileLoader;
-use Symfony\Component\Serializer\Mapping\ClassMetadata;
-use Symfony\Component\Serializer\Tests\Mapping\TestClassMetadataFactory;
-
-/**
- * @author Kévin Dunglas <dunglas@gmail.com>
- */
-class YamlFileLoaderTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @var YamlFileLoader
-     */
-    private $loader;
-    /**
-     * @var ClassMetadata
-     */
-    private $metadata;
-
-    protected function setUp()
-    {
-        $this->loader = new YamlFileLoader(__DIR__.'/../../Fixtures/serialization.yml');
-        $this->metadata = new ClassMetadata('Symfony\Component\Serializer\Tests\Fixtures\GroupDummy');
-    }
-
-    public function testInterface()
-    {
-        $this->assertInstanceOf('Symfony\Component\Serializer\Mapping\Loader\LoaderInterface', $this->loader);
-    }
-
-    public function testLoadClassMetadataReturnsTrueIfSuccessful()
-    {
-        $this->assertTrue($this->loader->loadClassMetadata($this->metadata));
-    }
-
-    public function testLoadClassMetadataReturnsFalseWhenEmpty()
-    {
-        $loader = new YamlFileLoader(__DIR__.'/../../Fixtures/empty-mapping.yml');
-        $this->assertFalse($loader->loadClassMetadata($this->metadata));
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Serializer\Exception\MappingException
-     */
-    public function testLoadClassMetadataReturnsThrowsInvalidMapping()
-    {
-        $loader = new YamlFileLoader(__DIR__.'/../../Fixtures/invalid-mapping.yml');
-        $loader->loadClassMetadata($this->metadata);
-    }
-
-    public function testLoadClassMetadata()
-    {
-        $this->loader->loadClassMetadata($this->metadata);
-
-        $this->assertEquals(TestClassMetadataFactory::createXmlCLassMetadata(), $this->metadata);
-    }
-}
diff --git a/vendor/symfony/serializer/Tests/Mapping/TestClassMetadataFactory.php b/vendor/symfony/serializer/Tests/Mapping/TestClassMetadataFactory.php
deleted file mode 100644
index f435d36..0000000
--- a/vendor/symfony/serializer/Tests/Mapping/TestClassMetadataFactory.php
+++ /dev/null
@@ -1,82 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Serializer\Tests\Mapping;
-
-use Symfony\Component\Serializer\Mapping\AttributeMetadata;
-use Symfony\Component\Serializer\Mapping\ClassMetadata;
-
-/**
- * @author Kévin Dunglas <dunglas@gmail.com>
- */
-class TestClassMetadataFactory
-{
-    public static function createClassMetadata($withParent = false, $withInterface = false)
-    {
-        $expected = new ClassMetadata('Symfony\Component\Serializer\Tests\Fixtures\GroupDummy');
-
-        $foo = new AttributeMetadata('foo');
-        $foo->addGroup('a');
-        $expected->addAttributeMetadata($foo);
-
-        $bar = new AttributeMetadata('bar');
-        $bar->addGroup('b');
-        $bar->addGroup('c');
-        $bar->addGroup('name_converter');
-        $expected->addAttributeMetadata($bar);
-
-        $fooBar = new AttributeMetadata('fooBar');
-        $fooBar->addGroup('a');
-        $fooBar->addGroup('b');
-        $fooBar->addGroup('name_converter');
-        $expected->addAttributeMetadata($fooBar);
-
-        $symfony = new AttributeMetadata('symfony');
-        $expected->addAttributeMetadata($symfony);
-
-        if ($withParent) {
-            $kevin = new AttributeMetadata('kevin');
-            $kevin->addGroup('a');
-            $expected->addAttributeMetadata($kevin);
-
-            $coopTilleuls = new AttributeMetadata('coopTilleuls');
-            $coopTilleuls->addGroup('a');
-            $coopTilleuls->addGroup('b');
-            $expected->addAttributeMetadata($coopTilleuls);
-        }
-
-        if ($withInterface) {
-            $symfony->addGroup('a');
-            $symfony->addGroup('name_converter');
-        }
-
-        // load reflection class so that the comparison passes
-        $expected->getReflectionClass();
-
-        return $expected;
-    }
-
-    public static function createXmlCLassMetadata()
-    {
-        $expected = new ClassMetadata('Symfony\Component\Serializer\Tests\Fixtures\GroupDummy');
-
-        $foo = new AttributeMetadata('foo');
-        $foo->addGroup('group1');
-        $foo->addGroup('group2');
-        $expected->addAttributeMetadata($foo);
-
-        $bar = new AttributeMetadata('bar');
-        $bar->addGroup('group2');
-        $expected->addAttributeMetadata($bar);
-
-        return $expected;
-    }
-}
diff --git a/vendor/symfony/serializer/Tests/NameConverter/CamelCaseToSnakeCaseNameConverterTest.php b/vendor/symfony/serializer/Tests/NameConverter/CamelCaseToSnakeCaseNameConverterTest.php
deleted file mode 100644
index 2d57017..0000000
--- a/vendor/symfony/serializer/Tests/NameConverter/CamelCaseToSnakeCaseNameConverterTest.php
+++ /dev/null
@@ -1,53 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Serializer\Tests\NameConverter;
-
-use Symfony\Component\Serializer\NameConverter\CamelCaseToSnakeCaseNameConverter;
-
-/**
- * @author Kévin Dunglas <dunglas@gmail.com>
- */
-class CamelCaseToSnakeCaseNameConverterTest extends \PHPUnit_Framework_TestCase
-{
-    public function testInterface()
-    {
-        $attributeMetadata = new CamelCaseToSnakeCaseNameConverter();
-        $this->assertInstanceOf('Symfony\Component\Serializer\NameConverter\NameConverterInterface', $attributeMetadata);
-    }
-
-    /**
-     * @dataProvider attributeProvider
-     */
-    public function testNormalize($underscored, $lowerCamelCased)
-    {
-        $nameConverter = new CamelCaseToSnakeCaseNameConverter();
-        $this->assertEquals($nameConverter->normalize($lowerCamelCased), $underscored);
-    }
-
-    /**
-     * @dataProvider attributeProvider
-     */
-    public function testDenormalize($underscored, $lowerCamelCased)
-    {
-        $nameConverter = new CamelCaseToSnakeCaseNameConverter();
-        $this->assertEquals($nameConverter->denormalize($underscored), $lowerCamelCased);
-    }
-
-    public function attributeProvider()
-    {
-        return array(
-            array('coop_tilleuls', 'coopTilleuls'),
-            array('_kevin_dunglas', '_kevinDunglas'),
-            array('this_is_a_test', 'thisIsATest'),
-        );
-    }
-}
diff --git a/vendor/symfony/serializer/Tests/Normalizer/CustomNormalizerTest.php b/vendor/symfony/serializer/Tests/Normalizer/CustomNormalizerTest.php
deleted file mode 100644
index 86ae003..0000000
--- a/vendor/symfony/serializer/Tests/Normalizer/CustomNormalizerTest.php
+++ /dev/null
@@ -1,69 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Serializer\Tests\Normalizer;
-
-use Symfony\Component\Serializer\Tests\Fixtures\ScalarDummy;
-use Symfony\Component\Serializer\Normalizer\CustomNormalizer;
-use Symfony\Component\Serializer\Serializer;
-
-class CustomNormalizerTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @var CustomNormalizer
-     */
-    private $normalizer;
-
-    protected function setUp()
-    {
-        $this->normalizer = new CustomNormalizer();
-        $this->normalizer->setSerializer(new Serializer());
-    }
-
-    public function testInterface()
-    {
-        $this->assertInstanceOf('Symfony\Component\Serializer\Normalizer\NormalizerInterface', $this->normalizer);
-        $this->assertInstanceOf('Symfony\Component\Serializer\Normalizer\DenormalizerInterface', $this->normalizer);
-    }
-
-    public function testSerialize()
-    {
-        $obj = new ScalarDummy();
-        $obj->foo = 'foo';
-        $obj->xmlFoo = 'xml';
-        $this->assertEquals('foo', $this->normalizer->normalize($obj, 'json'));
-        $this->assertEquals('xml', $this->normalizer->normalize($obj, 'xml'));
-    }
-
-    public function testDeserialize()
-    {
-        $obj = $this->normalizer->denormalize('foo', get_class(new ScalarDummy()), 'xml');
-        $this->assertEquals('foo', $obj->xmlFoo);
-        $this->assertNull($obj->foo);
-
-        $obj = $this->normalizer->denormalize('foo', get_class(new ScalarDummy()), 'json');
-        $this->assertEquals('foo', $obj->foo);
-        $this->assertNull($obj->xmlFoo);
-    }
-
-    public function testSupportsNormalization()
-    {
-        $this->assertTrue($this->normalizer->supportsNormalization(new ScalarDummy()));
-        $this->assertFalse($this->normalizer->supportsNormalization(new \stdClass()));
-    }
-
-    public function testSupportsDenormalization()
-    {
-        $this->assertTrue($this->normalizer->supportsDenormalization(array(), 'Symfony\Component\Serializer\Tests\Fixtures\ScalarDummy'));
-        $this->assertFalse($this->normalizer->supportsDenormalization(array(), 'stdClass'));
-        $this->assertTrue($this->normalizer->supportsDenormalization(array(), 'Symfony\Component\Serializer\Tests\Fixtures\DenormalizableDummy'));
-    }
-}
diff --git a/vendor/symfony/serializer/Tests/Normalizer/GetSetMethodNormalizerTest.php b/vendor/symfony/serializer/Tests/Normalizer/GetSetMethodNormalizerTest.php
deleted file mode 100644
index 5336962..0000000
--- a/vendor/symfony/serializer/Tests/Normalizer/GetSetMethodNormalizerTest.php
+++ /dev/null
@@ -1,799 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Serializer\Tests\Normalizer;
-
-use Doctrine\Common\Annotations\AnnotationReader;
-use Symfony\Component\Serializer\NameConverter\CamelCaseToSnakeCaseNameConverter;
-use Symfony\Component\Serializer\Normalizer\GetSetMethodNormalizer;
-use Symfony\Component\Serializer\Serializer;
-use Symfony\Component\Serializer\SerializerInterface;
-use Symfony\Component\Serializer\Normalizer\NormalizerInterface;
-use Symfony\Component\Serializer\Tests\Fixtures\CircularReferenceDummy;
-use Symfony\Component\Serializer\Tests\Fixtures\SiblingHolder;
-use Symfony\Component\Serializer\Mapping\Loader\AnnotationLoader;
-use Symfony\Component\Serializer\Mapping\Factory\ClassMetadataFactory;
-use Symfony\Component\Serializer\Tests\Fixtures\GroupDummy;
-
-class GetSetMethodNormalizerTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @var GetSetMethodNormalizer
-     */
-    private $normalizer;
-    /**
-     * @var SerializerInterface
-     */
-    private $serializer;
-
-    protected function setUp()
-    {
-        $this->serializer = $this->getMock(__NAMESPACE__.'\SerializerNormalizer');
-        $this->normalizer = new GetSetMethodNormalizer();
-        $this->normalizer->setSerializer($this->serializer);
-    }
-
-    public function testInterface()
-    {
-        $this->assertInstanceOf('Symfony\Component\Serializer\Normalizer\NormalizerInterface', $this->normalizer);
-        $this->assertInstanceOf('Symfony\Component\Serializer\Normalizer\DenormalizerInterface', $this->normalizer);
-    }
-
-    public function testNormalize()
-    {
-        $obj = new GetSetDummy();
-        $object = new \stdClass();
-        $obj->setFoo('foo');
-        $obj->setBar('bar');
-        $obj->setBaz(true);
-        $obj->setCamelCase('camelcase');
-        $obj->setObject($object);
-
-        $this->serializer
-            ->expects($this->once())
-            ->method('normalize')
-            ->with($object, 'any')
-            ->will($this->returnValue('string_object'))
-        ;
-
-        $this->assertEquals(
-            array(
-                'foo' => 'foo',
-                'bar' => 'bar',
-                'baz' => true,
-                'fooBar' => 'foobar',
-                'camelCase' => 'camelcase',
-                'object' => 'string_object',
-            ),
-            $this->normalizer->normalize($obj, 'any')
-        );
-    }
-
-    public function testDenormalize()
-    {
-        $obj = $this->normalizer->denormalize(
-            array('foo' => 'foo', 'bar' => 'bar', 'baz' => true, 'fooBar' => 'foobar'),
-            __NAMESPACE__.'\GetSetDummy',
-            'any'
-        );
-        $this->assertEquals('foo', $obj->getFoo());
-        $this->assertEquals('bar', $obj->getBar());
-        $this->assertTrue($obj->isBaz());
-    }
-
-    public function testDenormalizeWithObject()
-    {
-        $data = new \stdClass();
-        $data->foo = 'foo';
-        $data->bar = 'bar';
-        $data->fooBar = 'foobar';
-        $obj = $this->normalizer->denormalize($data, __NAMESPACE__.'\GetSetDummy', 'any');
-        $this->assertEquals('foo', $obj->getFoo());
-        $this->assertEquals('bar', $obj->getBar());
-    }
-
-    /**
-     * @group legacy
-     */
-    public function testLegacyDenormalizeOnCamelCaseFormat()
-    {
-        $this->normalizer->setCamelizedAttributes(array('camel_case'));
-        $obj = $this->normalizer->denormalize(
-            array('camel_case' => 'camelCase'),
-            __NAMESPACE__.'\GetSetDummy'
-        );
-
-        $this->assertEquals('camelCase', $obj->getCamelCase());
-    }
-
-    public function testNameConverterSupport()
-    {
-        $this->normalizer = new GetSetMethodNormalizer(null, new CamelCaseToSnakeCaseNameConverter());
-        $obj = $this->normalizer->denormalize(
-            array('camel_case' => 'camelCase'),
-            __NAMESPACE__.'\GetSetDummy'
-        );
-        $this->assertEquals('camelCase', $obj->getCamelCase());
-    }
-
-    public function testDenormalizeNull()
-    {
-        $this->assertEquals(new GetSetDummy(), $this->normalizer->denormalize(null, __NAMESPACE__.'\GetSetDummy'));
-    }
-
-    /**
-     * @group legacy
-     */
-    public function testLegacyCamelizedAttributesNormalize()
-    {
-        $obj = new GetCamelizedDummy('dunglas.fr');
-        $obj->setFooBar('les-tilleuls.coop');
-        $obj->setBar_foo('lostinthesupermarket.fr');
-
-        $this->normalizer->setCamelizedAttributes(array('kevin_dunglas'));
-        $this->assertEquals($this->normalizer->normalize($obj), array(
-            'kevin_dunglas' => 'dunglas.fr',
-            'fooBar' => 'les-tilleuls.coop',
-            'bar_foo' => 'lostinthesupermarket.fr',
-        ));
-
-        $this->normalizer->setCamelizedAttributes(array('foo_bar'));
-        $this->assertEquals($this->normalizer->normalize($obj), array(
-            'kevinDunglas' => 'dunglas.fr',
-            'foo_bar' => 'les-tilleuls.coop',
-            'bar_foo' => 'lostinthesupermarket.fr',
-        ));
-    }
-
-    /**
-     * @group legacy
-     */
-    public function testLegacyCamelizedAttributesDenormalize()
-    {
-        $obj = new GetCamelizedDummy('dunglas.fr');
-        $obj->setFooBar('les-tilleuls.coop');
-        $obj->setBar_foo('lostinthesupermarket.fr');
-
-        $this->normalizer->setCamelizedAttributes(array('kevin_dunglas'));
-        $this->assertEquals($this->normalizer->denormalize(array(
-            'kevin_dunglas' => 'dunglas.fr',
-            'fooBar' => 'les-tilleuls.coop',
-            'bar_foo' => 'lostinthesupermarket.fr',
-        ), __NAMESPACE__.'\GetCamelizedDummy'), $obj);
-
-        $this->normalizer->setCamelizedAttributes(array('foo_bar'));
-        $this->assertEquals($this->normalizer->denormalize(array(
-            'kevinDunglas' => 'dunglas.fr',
-            'foo_bar' => 'les-tilleuls.coop',
-            'bar_foo' => 'lostinthesupermarket.fr',
-        ), __NAMESPACE__.'\GetCamelizedDummy'), $obj);
-    }
-
-    public function testConstructorDenormalize()
-    {
-        $obj = $this->normalizer->denormalize(
-            array('foo' => 'foo', 'bar' => 'bar', 'baz' => true, 'fooBar' => 'foobar'),
-            __NAMESPACE__.'\GetConstructorDummy', 'any');
-        $this->assertEquals('foo', $obj->getFoo());
-        $this->assertEquals('bar', $obj->getBar());
-        $this->assertTrue($obj->isBaz());
-    }
-
-    public function testConstructorDenormalizeWithNullArgument()
-    {
-        $obj = $this->normalizer->denormalize(
-            array('foo' => 'foo', 'bar' => null, 'baz' => true),
-            __NAMESPACE__.'\GetConstructorDummy', 'any');
-        $this->assertEquals('foo', $obj->getFoo());
-        $this->assertNull($obj->getBar());
-        $this->assertTrue($obj->isBaz());
-    }
-
-    public function testConstructorDenormalizeWithMissingOptionalArgument()
-    {
-        $obj = $this->normalizer->denormalize(
-            array('foo' => 'test', 'baz' => array(1, 2, 3)),
-            __NAMESPACE__.'\GetConstructorOptionalArgsDummy', 'any');
-        $this->assertEquals('test', $obj->getFoo());
-        $this->assertEquals(array(), $obj->getBar());
-        $this->assertEquals(array(1, 2, 3), $obj->getBaz());
-    }
-
-    public function testConstructorDenormalizeWithOptionalDefaultArgument()
-    {
-        if (PHP_VERSION_ID <= 50316) {
-            $this->markTestSkipped('See https://bugs.php.net/62715');
-        }
-        $obj = $this->normalizer->denormalize(
-            array('bar' => 'test'),
-            __NAMESPACE__.'\GetConstructorArgsWithDefaultValueDummy', 'any');
-        $this->assertEquals(array(), $obj->getFoo());
-        $this->assertEquals('test', $obj->getBar());
-    }
-
-    /**
-     * @requires PHP 5.6
-     */
-    public function testConstructorDenormalizeWithVariadicArgument()
-    {
-        $obj = $this->normalizer->denormalize(
-            array('foo' => array(1, 2, 3)),
-            'Symfony\Component\Serializer\Tests\Fixtures\VariadicConstructorArgsDummy', 'any');
-        $this->assertEquals(array(1, 2, 3), $obj->getFoo());
-    }
-
-    /**
-     * @requires PHP 5.6
-     */
-    public function testConstructorDenormalizeWithMissingVariadicArgument()
-    {
-        $obj = $this->normalizer->denormalize(
-            array(),
-            'Symfony\Component\Serializer\Tests\Fixtures\VariadicConstructorArgsDummy', 'any');
-        $this->assertEquals(array(), $obj->getFoo());
-    }
-
-    public function testConstructorWithObjectDenormalize()
-    {
-        $data = new \stdClass();
-        $data->foo = 'foo';
-        $data->bar = 'bar';
-        $data->baz = true;
-        $data->fooBar = 'foobar';
-        $obj = $this->normalizer->denormalize($data, __NAMESPACE__.'\GetConstructorDummy', 'any');
-        $this->assertEquals('foo', $obj->getFoo());
-        $this->assertEquals('bar', $obj->getBar());
-    }
-
-    public function testConstructorWArgWithPrivateMutator()
-    {
-        $obj = $this->normalizer->denormalize(array('foo' => 'bar'), __NAMESPACE__.'\ObjectConstructorArgsWithPrivateMutatorDummy', 'any');
-        $this->assertEquals('bar', $obj->getFoo());
-    }
-
-    public function testGroupsNormalize()
-    {
-        $classMetadataFactory = new ClassMetadataFactory(new AnnotationLoader(new AnnotationReader()));
-        $this->normalizer = new GetSetMethodNormalizer($classMetadataFactory);
-        $this->normalizer->setSerializer($this->serializer);
-
-        $obj = new GroupDummy();
-        $obj->setFoo('foo');
-        $obj->setBar('bar');
-        $obj->setFooBar('fooBar');
-        $obj->setSymfony('symfony');
-        $obj->setKevin('kevin');
-        $obj->setCoopTilleuls('coopTilleuls');
-
-        $this->assertEquals(array(
-            'bar' => 'bar',
-        ), $this->normalizer->normalize($obj, null, array('groups' => array('c'))));
-
-        $this->assertEquals(array(
-            'symfony' => 'symfony',
-            'foo' => 'foo',
-            'fooBar' => 'fooBar',
-            'bar' => 'bar',
-            'kevin' => 'kevin',
-            'coopTilleuls' => 'coopTilleuls',
-        ), $this->normalizer->normalize($obj, null, array('groups' => array('a', 'c'))));
-    }
-
-    public function testGroupsDenormalize()
-    {
-        $classMetadataFactory = new ClassMetadataFactory(new AnnotationLoader(new AnnotationReader()));
-        $this->normalizer = new GetSetMethodNormalizer($classMetadataFactory);
-        $this->normalizer->setSerializer($this->serializer);
-
-        $obj = new GroupDummy();
-        $obj->setFoo('foo');
-
-        $toNormalize = array('foo' => 'foo', 'bar' => 'bar');
-
-        $normalized = $this->normalizer->denormalize(
-            $toNormalize,
-            'Symfony\Component\Serializer\Tests\Fixtures\GroupDummy',
-            null,
-            array('groups' => array('a'))
-        );
-        $this->assertEquals($obj, $normalized);
-
-        $obj->setBar('bar');
-
-        $normalized = $this->normalizer->denormalize(
-            $toNormalize,
-            'Symfony\Component\Serializer\Tests\Fixtures\GroupDummy',
-            null,
-            array('groups' => array('a', 'b'))
-        );
-        $this->assertEquals($obj, $normalized);
-    }
-
-    public function testGroupsNormalizeWithNameConverter()
-    {
-        $classMetadataFactory = new ClassMetadataFactory(new AnnotationLoader(new AnnotationReader()));
-        $this->normalizer = new GetSetMethodNormalizer($classMetadataFactory, new CamelCaseToSnakeCaseNameConverter());
-        $this->normalizer->setSerializer($this->serializer);
-
-        $obj = new GroupDummy();
-        $obj->setFooBar('@dunglas');
-        $obj->setSymfony('@coopTilleuls');
-        $obj->setCoopTilleuls('les-tilleuls.coop');
-
-        $this->assertEquals(
-            array(
-                'bar' => null,
-                'foo_bar' => '@dunglas',
-                'symfony' => '@coopTilleuls',
-            ),
-            $this->normalizer->normalize($obj, null, array('groups' => array('name_converter')))
-        );
-    }
-
-    public function testGroupsDenormalizeWithNameConverter()
-    {
-        $classMetadataFactory = new ClassMetadataFactory(new AnnotationLoader(new AnnotationReader()));
-        $this->normalizer = new GetSetMethodNormalizer($classMetadataFactory, new CamelCaseToSnakeCaseNameConverter());
-        $this->normalizer->setSerializer($this->serializer);
-
-        $obj = new GroupDummy();
-        $obj->setFooBar('@dunglas');
-        $obj->setSymfony('@coopTilleuls');
-
-        $this->assertEquals(
-            $obj,
-            $this->normalizer->denormalize(array(
-                'bar' => null,
-                'foo_bar' => '@dunglas',
-                'symfony' => '@coopTilleuls',
-                'coop_tilleuls' => 'les-tilleuls.coop',
-            ), 'Symfony\Component\Serializer\Tests\Fixtures\GroupDummy', null, array('groups' => array('name_converter')))
-        );
-    }
-
-    /**
-     * @dataProvider provideCallbacks
-     */
-    public function testCallbacks($callbacks, $value, $result, $message)
-    {
-        $this->normalizer->setCallbacks($callbacks);
-
-        $obj = new GetConstructorDummy('', $value, true);
-
-        $this->assertEquals(
-            $result,
-            $this->normalizer->normalize($obj, 'any'),
-            $message
-        );
-    }
-
-    /**
-     * @expectedException \InvalidArgumentException
-     */
-    public function testUncallableCallbacks()
-    {
-        $this->normalizer->setCallbacks(array('bar' => null));
-
-        $obj = new GetConstructorDummy('baz', 'quux', true);
-
-        $this->normalizer->normalize($obj, 'any');
-    }
-
-    public function testIgnoredAttributes()
-    {
-        $this->normalizer->setIgnoredAttributes(array('foo', 'bar', 'baz', 'camelCase', 'object'));
-
-        $obj = new GetSetDummy();
-        $obj->setFoo('foo');
-        $obj->setBar('bar');
-        $obj->setBaz(true);
-
-        $this->assertEquals(
-            array('fooBar' => 'foobar'),
-            $this->normalizer->normalize($obj, 'any')
-        );
-    }
-
-    public function provideCallbacks()
-    {
-        return array(
-            array(
-                array(
-                    'bar' => function ($bar) {
-                        return 'baz';
-                    },
-                ),
-                'baz',
-                array('foo' => '', 'bar' => 'baz', 'baz' => true),
-                'Change a string',
-            ),
-            array(
-                array(
-                    'bar' => function ($bar) {
-                        return;
-                    },
-                ),
-                'baz',
-                array('foo' => '', 'bar' => null, 'baz' => true),
-                'Null an item',
-            ),
-            array(
-                array(
-                    'bar' => function ($bar) {
-                        return $bar->format('d-m-Y H:i:s');
-                    },
-                ),
-                new \DateTime('2011-09-10 06:30:00'),
-                array('foo' => '', 'bar' => '10-09-2011 06:30:00', 'baz' => true),
-                'Format a date',
-            ),
-            array(
-                array(
-                    'bar' => function ($bars) {
-                        $foos = '';
-                        foreach ($bars as $bar) {
-                            $foos .= $bar->getFoo();
-                        }
-
-                        return $foos;
-                    },
-                ),
-                array(new GetConstructorDummy('baz', '', false), new GetConstructorDummy('quux', '', false)),
-                array('foo' => '', 'bar' => 'bazquux', 'baz' => true),
-                'Collect a property',
-            ),
-            array(
-                array(
-                    'bar' => function ($bars) {
-                        return count($bars);
-                    },
-                ),
-                array(new GetConstructorDummy('baz', '', false), new GetConstructorDummy('quux', '', false)),
-                array('foo' => '', 'bar' => 2, 'baz' => true),
-                'Count a property',
-            ),
-        );
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Serializer\Exception\LogicException
-     * @expectedExceptionMessage Cannot normalize attribute "object" because injected serializer is not a normalizer
-     */
-    public function testUnableToNormalizeObjectAttribute()
-    {
-        $serializer = $this->getMock('Symfony\Component\Serializer\SerializerInterface');
-        $this->normalizer->setSerializer($serializer);
-
-        $obj = new GetSetDummy();
-        $object = new \stdClass();
-        $obj->setObject($object);
-
-        $this->normalizer->normalize($obj, 'any');
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Serializer\Exception\CircularReferenceException
-     */
-    public function testUnableToNormalizeCircularReference()
-    {
-        $serializer = new Serializer(array($this->normalizer));
-        $this->normalizer->setSerializer($serializer);
-        $this->normalizer->setCircularReferenceLimit(2);
-
-        $obj = new CircularReferenceDummy();
-
-        $this->normalizer->normalize($obj);
-    }
-
-    public function testSiblingReference()
-    {
-        $serializer = new Serializer(array($this->normalizer));
-        $this->normalizer->setSerializer($serializer);
-
-        $siblingHolder = new SiblingHolder();
-
-        $expected = array(
-            'sibling0' => array('coopTilleuls' => 'Les-Tilleuls.coop'),
-            'sibling1' => array('coopTilleuls' => 'Les-Tilleuls.coop'),
-            'sibling2' => array('coopTilleuls' => 'Les-Tilleuls.coop'),
-        );
-        $this->assertEquals($expected, $this->normalizer->normalize($siblingHolder));
-    }
-
-    public function testCircularReferenceHandler()
-    {
-        $serializer = new Serializer(array($this->normalizer));
-        $this->normalizer->setSerializer($serializer);
-        $this->normalizer->setCircularReferenceHandler(function ($obj) {
-            return get_class($obj);
-        });
-
-        $obj = new CircularReferenceDummy();
-
-        $expected = array('me' => 'Symfony\Component\Serializer\Tests\Fixtures\CircularReferenceDummy');
-        $this->assertEquals($expected, $this->normalizer->normalize($obj));
-    }
-
-    public function testObjectToPopulate()
-    {
-        $dummy = new GetSetDummy();
-        $dummy->setFoo('foo');
-
-        $obj = $this->normalizer->denormalize(
-            array('bar' => 'bar'),
-            __NAMESPACE__.'\GetSetDummy',
-            null,
-            array('object_to_populate' => $dummy)
-        );
-
-        $this->assertEquals($dummy, $obj);
-        $this->assertEquals('foo', $obj->getFoo());
-        $this->assertEquals('bar', $obj->getBar());
-    }
-
-    public function testDenormalizeNonExistingAttribute()
-    {
-        $this->assertEquals(
-            new GetSetDummy(),
-            $this->normalizer->denormalize(array('non_existing' => true), __NAMESPACE__.'\GetSetDummy')
-        );
-    }
-
-    public function testNoTraversableSupport()
-    {
-        $this->assertFalse($this->normalizer->supportsNormalization(new \ArrayObject()));
-    }
-
-    public function testPrivateSetter()
-    {
-        $obj = $this->normalizer->denormalize(array('foo' => 'foobar'), __NAMESPACE__.'\ObjectWithPrivateSetterDummy');
-        $this->assertEquals('bar', $obj->getFoo());
-    }
-}
-
-class GetSetDummy
-{
-    protected $foo;
-    private $bar;
-    private $baz;
-    protected $camelCase;
-    protected $object;
-
-    public function getFoo()
-    {
-        return $this->foo;
-    }
-
-    public function setFoo($foo)
-    {
-        $this->foo = $foo;
-    }
-
-    public function getBar()
-    {
-        return $this->bar;
-    }
-
-    public function setBar($bar)
-    {
-        $this->bar = $bar;
-    }
-
-    public function isBaz()
-    {
-        return $this->baz;
-    }
-
-    public function setBaz($baz)
-    {
-        $this->baz = $baz;
-    }
-
-    public function getFooBar()
-    {
-        return $this->foo.$this->bar;
-    }
-
-    public function getCamelCase()
-    {
-        return $this->camelCase;
-    }
-
-    public function setCamelCase($camelCase)
-    {
-        $this->camelCase = $camelCase;
-    }
-
-    public function otherMethod()
-    {
-        throw new \RuntimeException('Dummy::otherMethod() should not be called');
-    }
-
-    public function setObject($object)
-    {
-        $this->object = $object;
-    }
-
-    public function getObject()
-    {
-        return $this->object;
-    }
-}
-
-class GetConstructorDummy
-{
-    protected $foo;
-    private $bar;
-    private $baz;
-
-    public function __construct($foo, $bar, $baz)
-    {
-        $this->foo = $foo;
-        $this->bar = $bar;
-        $this->baz = $baz;
-    }
-
-    public function getFoo()
-    {
-        return $this->foo;
-    }
-
-    public function getBar()
-    {
-        return $this->bar;
-    }
-
-    public function isBaz()
-    {
-        return $this->baz;
-    }
-
-    public function otherMethod()
-    {
-        throw new \RuntimeException('Dummy::otherMethod() should not be called');
-    }
-}
-
-abstract class SerializerNormalizer implements SerializerInterface, NormalizerInterface
-{
-}
-
-class GetConstructorOptionalArgsDummy
-{
-    protected $foo;
-    private $bar;
-    private $baz;
-
-    public function __construct($foo, $bar = array(), $baz = array())
-    {
-        $this->foo = $foo;
-        $this->bar = $bar;
-        $this->baz = $baz;
-    }
-
-    public function getFoo()
-    {
-        return $this->foo;
-    }
-
-    public function getBar()
-    {
-        return $this->bar;
-    }
-
-    public function getBaz()
-    {
-        return $this->baz;
-    }
-
-    public function otherMethod()
-    {
-        throw new \RuntimeException('Dummy::otherMethod() should not be called');
-    }
-}
-
-class GetConstructorArgsWithDefaultValueDummy
-{
-    protected $foo;
-    protected $bar;
-
-    public function __construct($foo = array(), $bar)
-    {
-        $this->foo = $foo;
-        $this->bar = $bar;
-    }
-
-    public function getFoo()
-    {
-        return $this->foo;
-    }
-
-    public function getBar()
-    {
-        return $this->bar;
-    }
-
-    public function otherMethod()
-    {
-        throw new \RuntimeException('Dummy::otherMethod() should not be called');
-    }
-}
-
-class GetCamelizedDummy
-{
-    private $kevinDunglas;
-    private $fooBar;
-    private $bar_foo;
-
-    public function __construct($kevinDunglas = null)
-    {
-        $this->kevinDunglas = $kevinDunglas;
-    }
-
-    public function getKevinDunglas()
-    {
-        return $this->kevinDunglas;
-    }
-
-    public function setFooBar($fooBar)
-    {
-        $this->fooBar = $fooBar;
-    }
-
-    public function getFooBar()
-    {
-        return $this->fooBar;
-    }
-
-    public function setBar_foo($bar_foo)
-    {
-        $this->bar_foo = $bar_foo;
-    }
-
-    public function getBar_foo()
-    {
-        return $this->bar_foo;
-    }
-}
-
-class ObjectConstructorArgsWithPrivateMutatorDummy
-{
-    private $foo;
-
-    public function __construct($foo)
-    {
-        $this->setFoo($foo);
-    }
-
-    public function getFoo()
-    {
-        return $this->foo;
-    }
-
-    private function setFoo($foo)
-    {
-        $this->foo = $foo;
-    }
-}
-
-class ObjectWithPrivateSetterDummy
-{
-    private $foo = 'bar';
-
-    public function getFoo()
-    {
-        return $this->foo;
-    }
-
-    private function setFoo($foo)
-    {
-    }
-}
diff --git a/vendor/symfony/serializer/Tests/Normalizer/ObjectNormalizerTest.php b/vendor/symfony/serializer/Tests/Normalizer/ObjectNormalizerTest.php
deleted file mode 100644
index 3080c8d..0000000
--- a/vendor/symfony/serializer/Tests/Normalizer/ObjectNormalizerTest.php
+++ /dev/null
@@ -1,605 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Serializer\Tests\Normalizer;
-
-use Doctrine\Common\Annotations\AnnotationReader;
-use Symfony\Component\Serializer\NameConverter\CamelCaseToSnakeCaseNameConverter;
-use Symfony\Component\Serializer\Normalizer\ObjectNormalizer;
-use Symfony\Component\Serializer\Serializer;
-use Symfony\Component\Serializer\SerializerInterface;
-use Symfony\Component\Serializer\Normalizer\NormalizerInterface;
-use Symfony\Component\Serializer\Tests\Fixtures\CircularReferenceDummy;
-use Symfony\Component\Serializer\Tests\Fixtures\SiblingHolder;
-use Symfony\Component\Serializer\Mapping\Loader\AnnotationLoader;
-use Symfony\Component\Serializer\Mapping\Factory\ClassMetadataFactory;
-use Symfony\Component\Serializer\Tests\Fixtures\GroupDummy;
-
-/**
- * @author Kévin Dunglas <dunglas@gmail.com>
- */
-class ObjectNormalizerTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @var ObjectNormalizerTest
-     */
-    private $normalizer;
-    /**
-     * @var SerializerInterface
-     */
-    private $serializer;
-
-    protected function setUp()
-    {
-        $this->serializer = $this->getMock(__NAMESPACE__.'\ObjectSerializerNormalizer');
-        $this->normalizer = new ObjectNormalizer();
-        $this->normalizer->setSerializer($this->serializer);
-    }
-
-    public function testNormalize()
-    {
-        $obj = new ObjectDummy();
-        $object = new \stdClass();
-        $obj->setFoo('foo');
-        $obj->bar = 'bar';
-        $obj->setBaz(true);
-        $obj->setCamelCase('camelcase');
-        $obj->setObject($object);
-
-        $this->serializer
-            ->expects($this->once())
-            ->method('normalize')
-            ->with($object, 'any')
-            ->will($this->returnValue('string_object'))
-        ;
-
-        $this->assertEquals(
-            array(
-                'foo' => 'foo',
-                'bar' => 'bar',
-                'baz' => true,
-                'fooBar' => 'foobar',
-                'camelCase' => 'camelcase',
-                'object' => 'string_object',
-            ),
-            $this->normalizer->normalize($obj, 'any')
-        );
-    }
-
-    public function testDenormalize()
-    {
-        $obj = $this->normalizer->denormalize(
-            array('foo' => 'foo', 'bar' => 'bar', 'baz' => true, 'fooBar' => 'foobar'),
-            __NAMESPACE__.'\ObjectDummy',
-            'any'
-        );
-        $this->assertEquals('foo', $obj->getFoo());
-        $this->assertEquals('bar', $obj->bar);
-        $this->assertTrue($obj->isBaz());
-    }
-
-    public function testDenormalizeWithObject()
-    {
-        $data = new \stdClass();
-        $data->foo = 'foo';
-        $data->bar = 'bar';
-        $data->fooBar = 'foobar';
-        $obj = $this->normalizer->denormalize($data, __NAMESPACE__.'\ObjectDummy', 'any');
-        $this->assertEquals('foo', $obj->getFoo());
-        $this->assertEquals('bar', $obj->bar);
-    }
-
-    /**
-     * @group legacy
-     */
-    public function testLegacyDenormalizeOnCamelCaseFormat()
-    {
-        $this->normalizer->setCamelizedAttributes(array('camel_case'));
-        $obj = $this->normalizer->denormalize(
-            array('camel_case' => 'camelCase'),
-            __NAMESPACE__.'\ObjectDummy'
-        );
-        $this->assertEquals('camelCase', $obj->getCamelCase());
-    }
-
-    public function testNameConverterSupport()
-    {
-        $this->normalizer = new ObjectNormalizer(null, new CamelCaseToSnakeCaseNameConverter());
-        $obj = $this->normalizer->denormalize(
-            array('camel_case' => 'camelCase'),
-            __NAMESPACE__.'\ObjectDummy'
-        );
-        $this->assertEquals('camelCase', $obj->getCamelCase());
-    }
-
-    public function testDenormalizeNull()
-    {
-        $this->assertEquals(new ObjectDummy(), $this->normalizer->denormalize(null, __NAMESPACE__.'\ObjectDummy'));
-    }
-
-    public function testConstructorDenormalize()
-    {
-        $obj = $this->normalizer->denormalize(
-            array('foo' => 'foo', 'bar' => 'bar', 'baz' => true, 'fooBar' => 'foobar'),
-            __NAMESPACE__.'\ObjectConstructorDummy', 'any');
-        $this->assertEquals('foo', $obj->getFoo());
-        $this->assertEquals('bar', $obj->bar);
-        $this->assertTrue($obj->isBaz());
-    }
-
-    public function testConstructorDenormalizeWithNullArgument()
-    {
-        $obj = $this->normalizer->denormalize(
-            array('foo' => 'foo', 'bar' => null, 'baz' => true),
-            __NAMESPACE__.'\ObjectConstructorDummy', 'any');
-        $this->assertEquals('foo', $obj->getFoo());
-        $this->assertNull($obj->bar);
-        $this->assertTrue($obj->isBaz());
-    }
-
-    public function testConstructorDenormalizeWithMissingOptionalArgument()
-    {
-        $obj = $this->normalizer->denormalize(
-            array('foo' => 'test', 'baz' => array(1, 2, 3)),
-            __NAMESPACE__.'\ObjectConstructorOptionalArgsDummy', 'any');
-        $this->assertEquals('test', $obj->getFoo());
-        $this->assertEquals(array(), $obj->bar);
-        $this->assertEquals(array(1, 2, 3), $obj->getBaz());
-    }
-
-    public function testConstructorDenormalizeWithOptionalDefaultArgument()
-    {
-        if (PHP_VERSION_ID <= 50316) {
-            $this->markTestSkipped('See https://bugs.php.net/62715');
-        }
-        $obj = $this->normalizer->denormalize(
-            array('bar' => 'test'),
-            __NAMESPACE__.'\ObjectConstructorArgsWithDefaultValueDummy', 'any');
-        $this->assertEquals(array(), $obj->getFoo());
-        $this->assertEquals('test', $obj->getBar());
-    }
-
-    public function testConstructorWithObjectDenormalize()
-    {
-        $data = new \stdClass();
-        $data->foo = 'foo';
-        $data->bar = 'bar';
-        $data->baz = true;
-        $data->fooBar = 'foobar';
-        $obj = $this->normalizer->denormalize($data, __NAMESPACE__.'\ObjectConstructorDummy', 'any');
-        $this->assertEquals('foo', $obj->getFoo());
-        $this->assertEquals('bar', $obj->bar);
-    }
-
-    public function testGroupsNormalize()
-    {
-        $classMetadataFactory = new ClassMetadataFactory(new AnnotationLoader(new AnnotationReader()));
-        $this->normalizer = new ObjectNormalizer($classMetadataFactory);
-        $this->normalizer->setSerializer($this->serializer);
-
-        $obj = new GroupDummy();
-        $obj->setFoo('foo');
-        $obj->setBar('bar');
-        $obj->setFooBar('fooBar');
-        $obj->setSymfony('symfony');
-        $obj->setKevin('kevin');
-        $obj->setCoopTilleuls('coopTilleuls');
-
-        $this->assertEquals(array(
-            'bar' => 'bar',
-        ), $this->normalizer->normalize($obj, null, array('groups' => array('c'))));
-
-        $this->assertEquals(array(
-            'symfony' => 'symfony',
-            'foo' => 'foo',
-            'fooBar' => 'fooBar',
-            'bar' => 'bar',
-            'kevin' => 'kevin',
-            'coopTilleuls' => 'coopTilleuls',
-        ), $this->normalizer->normalize($obj, null, array('groups' => array('a', 'c'))));
-    }
-
-    public function testGroupsDenormalize()
-    {
-        $classMetadataFactory = new ClassMetadataFactory(new AnnotationLoader(new AnnotationReader()));
-        $this->normalizer = new ObjectNormalizer($classMetadataFactory);
-        $this->normalizer->setSerializer($this->serializer);
-
-        $obj = new GroupDummy();
-        $obj->setFoo('foo');
-
-        $toNormalize = array('foo' => 'foo', 'bar' => 'bar');
-
-        $normalized = $this->normalizer->denormalize(
-            $toNormalize,
-            'Symfony\Component\Serializer\Tests\Fixtures\GroupDummy',
-            null,
-            array('groups' => array('a'))
-        );
-        $this->assertEquals($obj, $normalized);
-
-        $obj->setBar('bar');
-
-        $normalized = $this->normalizer->denormalize(
-            $toNormalize,
-            'Symfony\Component\Serializer\Tests\Fixtures\GroupDummy',
-            null,
-            array('groups' => array('a', 'b'))
-        );
-        $this->assertEquals($obj, $normalized);
-    }
-
-    public function testGroupsNormalizeWithNameConverter()
-    {
-        $classMetadataFactory = new ClassMetadataFactory(new AnnotationLoader(new AnnotationReader()));
-        $this->normalizer = new ObjectNormalizer($classMetadataFactory, new CamelCaseToSnakeCaseNameConverter());
-        $this->normalizer->setSerializer($this->serializer);
-
-        $obj = new GroupDummy();
-        $obj->setFooBar('@dunglas');
-        $obj->setSymfony('@coopTilleuls');
-        $obj->setCoopTilleuls('les-tilleuls.coop');
-
-        $this->assertEquals(
-            array(
-                'bar' => null,
-                'foo_bar' => '@dunglas',
-                'symfony' => '@coopTilleuls',
-            ),
-            $this->normalizer->normalize($obj, null, array('groups' => array('name_converter')))
-        );
-    }
-
-    public function testGroupsDenormalizeWithNameConverter()
-    {
-        $classMetadataFactory = new ClassMetadataFactory(new AnnotationLoader(new AnnotationReader()));
-        $this->normalizer = new ObjectNormalizer($classMetadataFactory, new CamelCaseToSnakeCaseNameConverter());
-        $this->normalizer->setSerializer($this->serializer);
-
-        $obj = new GroupDummy();
-        $obj->setFooBar('@dunglas');
-        $obj->setSymfony('@coopTilleuls');
-
-        $this->assertEquals(
-            $obj,
-            $this->normalizer->denormalize(array(
-                'bar' => null,
-                'foo_bar' => '@dunglas',
-                'symfony' => '@coopTilleuls',
-                'coop_tilleuls' => 'les-tilleuls.coop',
-            ), 'Symfony\Component\Serializer\Tests\Fixtures\GroupDummy', null, array('groups' => array('name_converter')))
-        );
-    }
-
-    /**
-     * @dataProvider provideCallbacks
-     */
-    public function testCallbacks($callbacks, $value, $result, $message)
-    {
-        $this->normalizer->setCallbacks($callbacks);
-
-        $obj = new ObjectConstructorDummy('', $value, true);
-
-        $this->assertEquals(
-            $result,
-            $this->normalizer->normalize($obj, 'any'),
-            $message
-        );
-    }
-
-    /**
-     * @expectedException \InvalidArgumentException
-     */
-    public function testUncallableCallbacks()
-    {
-        $this->normalizer->setCallbacks(array('bar' => null));
-
-        $obj = new ObjectConstructorDummy('baz', 'quux', true);
-
-        $this->normalizer->normalize($obj, 'any');
-    }
-
-    public function testIgnoredAttributes()
-    {
-        $this->normalizer->setIgnoredAttributes(array('foo', 'bar', 'baz', 'camelCase', 'object'));
-
-        $obj = new ObjectDummy();
-        $obj->setFoo('foo');
-        $obj->bar = 'bar';
-        $obj->setBaz(true);
-
-        $this->assertEquals(
-            array('fooBar' => 'foobar'),
-            $this->normalizer->normalize($obj, 'any')
-        );
-    }
-
-    public function provideCallbacks()
-    {
-        return array(
-            array(
-                array(
-                    'bar' => function ($bar) {
-                            return 'baz';
-                        },
-                ),
-                'baz',
-                array('foo' => '', 'bar' => 'baz', 'baz' => true),
-                'Change a string',
-            ),
-            array(
-                array(
-                    'bar' => function ($bar) {
-                            return;
-                        },
-                ),
-                'baz',
-                array('foo' => '', 'bar' => null, 'baz' => true),
-                'Null an item',
-            ),
-            array(
-                array(
-                    'bar' => function ($bar) {
-                            return $bar->format('d-m-Y H:i:s');
-                        },
-                ),
-                new \DateTime('2011-09-10 06:30:00'),
-                array('foo' => '', 'bar' => '10-09-2011 06:30:00', 'baz' => true),
-                'Format a date',
-            ),
-            array(
-                array(
-                    'bar' => function ($bars) {
-                            $foos = '';
-                            foreach ($bars as $bar) {
-                                $foos .= $bar->getFoo();
-                            }
-
-                            return $foos;
-                        },
-                ),
-                array(new ObjectConstructorDummy('baz', '', false), new ObjectConstructorDummy('quux', '', false)),
-                array('foo' => '', 'bar' => 'bazquux', 'baz' => true),
-                'Collect a property',
-            ),
-            array(
-                array(
-                    'bar' => function ($bars) {
-                            return count($bars);
-                        },
-                ),
-                array(new ObjectConstructorDummy('baz', '', false), new ObjectConstructorDummy('quux', '', false)),
-                array('foo' => '', 'bar' => 2, 'baz' => true),
-                'Count a property',
-            ),
-        );
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Serializer\Exception\LogicException
-     * @expectedExceptionMessage Cannot normalize attribute "object" because injected serializer is not a normalizer
-     */
-    public function testUnableToNormalizeObjectAttribute()
-    {
-        $serializer = $this->getMock('Symfony\Component\Serializer\SerializerInterface');
-        $this->normalizer->setSerializer($serializer);
-
-        $obj = new ObjectDummy();
-        $object = new \stdClass();
-        $obj->setObject($object);
-
-        $this->normalizer->normalize($obj, 'any');
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Serializer\Exception\CircularReferenceException
-     */
-    public function testUnableToNormalizeCircularReference()
-    {
-        $serializer = new Serializer(array($this->normalizer));
-        $this->normalizer->setSerializer($serializer);
-        $this->normalizer->setCircularReferenceLimit(2);
-
-        $obj = new CircularReferenceDummy();
-
-        $this->normalizer->normalize($obj);
-    }
-
-    public function testSiblingReference()
-    {
-        $serializer = new Serializer(array($this->normalizer));
-        $this->normalizer->setSerializer($serializer);
-
-        $siblingHolder = new SiblingHolder();
-
-        $expected = array(
-            'sibling0' => array('coopTilleuls' => 'Les-Tilleuls.coop'),
-            'sibling1' => array('coopTilleuls' => 'Les-Tilleuls.coop'),
-            'sibling2' => array('coopTilleuls' => 'Les-Tilleuls.coop'),
-        );
-        $this->assertEquals($expected, $this->normalizer->normalize($siblingHolder));
-    }
-
-    public function testCircularReferenceHandler()
-    {
-        $serializer = new Serializer(array($this->normalizer));
-        $this->normalizer->setSerializer($serializer);
-        $this->normalizer->setCircularReferenceHandler(function ($obj) {
-            return get_class($obj);
-        });
-
-        $obj = new CircularReferenceDummy();
-
-        $expected = array('me' => 'Symfony\Component\Serializer\Tests\Fixtures\CircularReferenceDummy');
-        $this->assertEquals($expected, $this->normalizer->normalize($obj));
-    }
-
-    public function testDenormalizeNonExistingAttribute()
-    {
-        $this->assertEquals(
-            new ObjectDummy(),
-            $this->normalizer->denormalize(array('non_existing' => true), __NAMESPACE__.'\ObjectDummy')
-        );
-    }
-
-    public function testNoTraversableSupport()
-    {
-        $this->assertFalse($this->normalizer->supportsNormalization(new \ArrayObject()));
-    }
-}
-
-class ObjectDummy
-{
-    protected $foo;
-    public $bar;
-    private $baz;
-    protected $camelCase;
-    protected $object;
-
-    public function getFoo()
-    {
-        return $this->foo;
-    }
-
-    public function setFoo($foo)
-    {
-        $this->foo = $foo;
-    }
-
-    public function isBaz()
-    {
-        return $this->baz;
-    }
-
-    public function setBaz($baz)
-    {
-        $this->baz = $baz;
-    }
-
-    public function getFooBar()
-    {
-        return $this->foo.$this->bar;
-    }
-
-    public function getCamelCase()
-    {
-        return $this->camelCase;
-    }
-
-    public function setCamelCase($camelCase)
-    {
-        $this->camelCase = $camelCase;
-    }
-
-    public function otherMethod()
-    {
-        throw new \RuntimeException('Dummy::otherMethod() should not be called');
-    }
-
-    public function setObject($object)
-    {
-        $this->object = $object;
-    }
-
-    public function getObject()
-    {
-        return $this->object;
-    }
-}
-
-class ObjectConstructorDummy
-{
-    protected $foo;
-    public $bar;
-    private $baz;
-
-    public function __construct($foo, $bar, $baz)
-    {
-        $this->foo = $foo;
-        $this->bar = $bar;
-        $this->baz = $baz;
-    }
-
-    public function getFoo()
-    {
-        return $this->foo;
-    }
-
-    public function isBaz()
-    {
-        return $this->baz;
-    }
-
-    public function otherMethod()
-    {
-        throw new \RuntimeException('Dummy::otherMethod() should not be called');
-    }
-}
-
-abstract class ObjectSerializerNormalizer implements SerializerInterface, NormalizerInterface
-{
-}
-
-class ObjectConstructorOptionalArgsDummy
-{
-    protected $foo;
-    public $bar;
-    private $baz;
-
-    public function __construct($foo, $bar = array(), $baz = array())
-    {
-        $this->foo = $foo;
-        $this->bar = $bar;
-        $this->baz = $baz;
-    }
-
-    public function getFoo()
-    {
-        return $this->foo;
-    }
-
-    public function getBaz()
-    {
-        return $this->baz;
-    }
-
-    public function otherMethod()
-    {
-        throw new \RuntimeException('Dummy::otherMethod() should not be called');
-    }
-}
-
-class ObjectConstructorArgsWithDefaultValueDummy
-{
-    protected $foo;
-    protected $bar;
-
-    public function __construct($foo = array(), $bar)
-    {
-        $this->foo = $foo;
-        $this->bar = $bar;
-    }
-
-    public function getFoo()
-    {
-        return $this->foo;
-    }
-
-    public function getBar()
-    {
-        return $this->bar;
-    }
-
-    public function otherMethod()
-    {
-        throw new \RuntimeException('Dummy::otherMethod() should not be called');
-    }
-}
diff --git a/vendor/symfony/serializer/Tests/Normalizer/PropertyNormalizerTest.php b/vendor/symfony/serializer/Tests/Normalizer/PropertyNormalizerTest.php
deleted file mode 100644
index 62e6d5d..0000000
--- a/vendor/symfony/serializer/Tests/Normalizer/PropertyNormalizerTest.php
+++ /dev/null
@@ -1,493 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Serializer\Tests\Normalizer;
-
-use Doctrine\Common\Annotations\AnnotationReader;
-use Symfony\Component\Serializer\Mapping\Factory\ClassMetadataFactory;
-use Symfony\Component\Serializer\Mapping\Loader\AnnotationLoader;
-use Symfony\Component\Serializer\NameConverter\CamelCaseToSnakeCaseNameConverter;
-use Symfony\Component\Serializer\Normalizer\PropertyNormalizer;
-use Symfony\Component\Serializer\Serializer;
-use Symfony\Component\Serializer\SerializerInterface;
-use Symfony\Component\Serializer\Tests\Fixtures\GroupDummy;
-use Symfony\Component\Serializer\Tests\Fixtures\PropertyCircularReferenceDummy;
-use Symfony\Component\Serializer\Tests\Fixtures\PropertySiblingHolder;
-
-class PropertyNormalizerTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @var PropertyNormalizer
-     */
-    private $normalizer;
-    /**
-     * @var SerializerInterface
-     */
-    private $serializer;
-
-    protected function setUp()
-    {
-        $this->serializer = $this->getMock('Symfony\Component\Serializer\SerializerInterface');
-        $this->normalizer = new PropertyNormalizer();
-        $this->normalizer->setSerializer($this->serializer);
-    }
-
-    public function testNormalize()
-    {
-        $obj = new PropertyDummy();
-        $obj->foo = 'foo';
-        $obj->setBar('bar');
-        $obj->setCamelCase('camelcase');
-        $this->assertEquals(
-            array('foo' => 'foo', 'bar' => 'bar', 'camelCase' => 'camelcase'),
-            $this->normalizer->normalize($obj, 'any')
-        );
-    }
-
-    public function testDenormalize()
-    {
-        $obj = $this->normalizer->denormalize(
-            array('foo' => 'foo', 'bar' => 'bar'),
-            __NAMESPACE__.'\PropertyDummy',
-            'any'
-        );
-        $this->assertEquals('foo', $obj->foo);
-        $this->assertEquals('bar', $obj->getBar());
-    }
-
-    /**
-     * @group legacy
-     */
-    public function testLegacyDenormalizeOnCamelCaseFormat()
-    {
-        $this->normalizer->setCamelizedAttributes(array('camel_case'));
-        $obj = $this->normalizer->denormalize(
-            array('camel_case' => 'value'),
-            __NAMESPACE__.'\PropertyDummy'
-        );
-        $this->assertEquals('value', $obj->getCamelCase());
-    }
-
-    /**
-     * @group legacy
-     */
-    public function testLegacyCamelizedAttributesNormalize()
-    {
-        $obj = new PropertyCamelizedDummy('dunglas.fr');
-        $obj->fooBar = 'les-tilleuls.coop';
-        $obj->bar_foo = 'lostinthesupermarket.fr';
-
-        $this->normalizer->setCamelizedAttributes(array('kevin_dunglas'));
-        $this->assertEquals($this->normalizer->normalize($obj), array(
-            'kevin_dunglas' => 'dunglas.fr',
-            'fooBar' => 'les-tilleuls.coop',
-            'bar_foo' => 'lostinthesupermarket.fr',
-        ));
-
-        $this->normalizer->setCamelizedAttributes(array('foo_bar'));
-        $this->assertEquals($this->normalizer->normalize($obj), array(
-            'kevinDunglas' => 'dunglas.fr',
-            'foo_bar' => 'les-tilleuls.coop',
-            'bar_foo' => 'lostinthesupermarket.fr',
-        ));
-    }
-
-    /**
-     * @group legacy
-     */
-    public function testLegacyCamelizedAttributesDenormalize()
-    {
-        $obj = new PropertyCamelizedDummy('dunglas.fr');
-        $obj->fooBar = 'les-tilleuls.coop';
-        $obj->bar_foo = 'lostinthesupermarket.fr';
-
-        $this->normalizer->setCamelizedAttributes(array('kevin_dunglas'));
-        $this->assertEquals($this->normalizer->denormalize(array(
-            'kevin_dunglas' => 'dunglas.fr',
-            'fooBar' => 'les-tilleuls.coop',
-            'bar_foo' => 'lostinthesupermarket.fr',
-        ), __NAMESPACE__.'\PropertyCamelizedDummy'), $obj);
-
-        $this->normalizer->setCamelizedAttributes(array('foo_bar'));
-        $this->assertEquals($this->normalizer->denormalize(array(
-            'kevinDunglas' => 'dunglas.fr',
-            'foo_bar' => 'les-tilleuls.coop',
-            'bar_foo' => 'lostinthesupermarket.fr',
-        ), __NAMESPACE__.'\PropertyCamelizedDummy'), $obj);
-    }
-
-    public function testNameConverterSupport()
-    {
-        $this->normalizer = new PropertyNormalizer(null, new CamelCaseToSnakeCaseNameConverter());
-        $obj = $this->normalizer->denormalize(
-            array('camel_case' => 'camelCase'),
-            __NAMESPACE__.'\PropertyDummy'
-        );
-        $this->assertEquals('camelCase', $obj->getCamelCase());
-    }
-
-    public function testConstructorDenormalize()
-    {
-        $obj = $this->normalizer->denormalize(
-            array('foo' => 'foo', 'bar' => 'bar'),
-            __NAMESPACE__.'\PropertyConstructorDummy',
-            'any'
-        );
-        $this->assertEquals('foo', $obj->getFoo());
-        $this->assertEquals('bar', $obj->getBar());
-    }
-
-    public function testConstructorDenormalizeWithNullArgument()
-    {
-        $obj = $this->normalizer->denormalize(
-            array('foo' => null, 'bar' => 'bar'),
-            __NAMESPACE__.'\PropertyConstructorDummy', '
-            any'
-        );
-        $this->assertNull($obj->getFoo());
-        $this->assertEquals('bar', $obj->getBar());
-    }
-
-    /**
-     * @dataProvider provideCallbacks
-     */
-    public function testCallbacks($callbacks, $value, $result, $message)
-    {
-        $this->normalizer->setCallbacks($callbacks);
-
-        $obj = new PropertyConstructorDummy('', $value);
-
-        $this->assertEquals(
-            $result,
-            $this->normalizer->normalize($obj, 'any'),
-            $message
-        );
-    }
-
-    /**
-     * @expectedException \InvalidArgumentException
-     */
-    public function testUncallableCallbacks()
-    {
-        $this->normalizer->setCallbacks(array('bar' => null));
-
-        $obj = new PropertyConstructorDummy('baz', 'quux');
-
-        $this->normalizer->normalize($obj, 'any');
-    }
-
-    public function testIgnoredAttributes()
-    {
-        $this->normalizer->setIgnoredAttributes(array('foo', 'bar', 'camelCase'));
-
-        $obj = new PropertyDummy();
-        $obj->foo = 'foo';
-        $obj->setBar('bar');
-
-        $this->assertEquals(
-            array(),
-            $this->normalizer->normalize($obj, 'any')
-        );
-    }
-
-    public function testGroupsNormalize()
-    {
-        $classMetadataFactory = new ClassMetadataFactory(new AnnotationLoader(new AnnotationReader()));
-        $this->normalizer = new PropertyNormalizer($classMetadataFactory);
-        $this->normalizer->setSerializer($this->serializer);
-
-        $obj = new GroupDummy();
-        $obj->setFoo('foo');
-        $obj->setBar('bar');
-        $obj->setFooBar('fooBar');
-        $obj->setSymfony('symfony');
-        $obj->setKevin('kevin');
-        $obj->setCoopTilleuls('coopTilleuls');
-
-        $this->assertEquals(array(
-            'bar' => 'bar',
-        ), $this->normalizer->normalize($obj, null, array('groups' => array('c'))));
-
-        // The PropertyNormalizer is not able to hydrate properties from parent classes
-        $this->assertEquals(array(
-            'symfony' => 'symfony',
-            'foo' => 'foo',
-            'fooBar' => 'fooBar',
-            'bar' => 'bar',
-        ), $this->normalizer->normalize($obj, null, array('groups' => array('a', 'c'))));
-    }
-
-    public function testGroupsDenormalize()
-    {
-        $classMetadataFactory = new ClassMetadataFactory(new AnnotationLoader(new AnnotationReader()));
-        $this->normalizer = new PropertyNormalizer($classMetadataFactory);
-        $this->normalizer->setSerializer($this->serializer);
-
-        $obj = new GroupDummy();
-        $obj->setFoo('foo');
-
-        $toNormalize = array('foo' => 'foo', 'bar' => 'bar');
-
-        $normalized = $this->normalizer->denormalize(
-            $toNormalize,
-            'Symfony\Component\Serializer\Tests\Fixtures\GroupDummy',
-            null,
-            array('groups' => array('a'))
-        );
-        $this->assertEquals($obj, $normalized);
-
-        $obj->setBar('bar');
-
-        $normalized = $this->normalizer->denormalize(
-            $toNormalize,
-            'Symfony\Component\Serializer\Tests\Fixtures\GroupDummy',
-            null,
-            array('groups' => array('a', 'b'))
-        );
-        $this->assertEquals($obj, $normalized);
-    }
-
-    public function testGroupsNormalizeWithNameConverter()
-    {
-        $classMetadataFactory = new ClassMetadataFactory(new AnnotationLoader(new AnnotationReader()));
-        $this->normalizer = new PropertyNormalizer($classMetadataFactory, new CamelCaseToSnakeCaseNameConverter());
-        $this->normalizer->setSerializer($this->serializer);
-
-        $obj = new GroupDummy();
-        $obj->setFooBar('@dunglas');
-        $obj->setSymfony('@coopTilleuls');
-        $obj->setCoopTilleuls('les-tilleuls.coop');
-
-        $this->assertEquals(
-            array(
-                'bar' => null,
-                'foo_bar' => '@dunglas',
-                'symfony' => '@coopTilleuls',
-            ),
-            $this->normalizer->normalize($obj, null, array('groups' => array('name_converter')))
-        );
-    }
-
-    public function testGroupsDenormalizeWithNameConverter()
-    {
-        $classMetadataFactory = new ClassMetadataFactory(new AnnotationLoader(new AnnotationReader()));
-        $this->normalizer = new PropertyNormalizer($classMetadataFactory, new CamelCaseToSnakeCaseNameConverter());
-        $this->normalizer->setSerializer($this->serializer);
-
-        $obj = new GroupDummy();
-        $obj->setFooBar('@dunglas');
-        $obj->setSymfony('@coopTilleuls');
-
-        $this->assertEquals(
-            $obj,
-            $this->normalizer->denormalize(array(
-                'bar' => null,
-                'foo_bar' => '@dunglas',
-                'symfony' => '@coopTilleuls',
-                'coop_tilleuls' => 'les-tilleuls.coop',
-            ), 'Symfony\Component\Serializer\Tests\Fixtures\GroupDummy', null, array('groups' => array('name_converter')))
-        );
-    }
-
-    public function provideCallbacks()
-    {
-        return array(
-            array(
-                array(
-                    'bar' => function ($bar) {
-                        return 'baz';
-                    },
-                ),
-                'baz',
-                array('foo' => '', 'bar' => 'baz'),
-                'Change a string',
-            ),
-            array(
-                array(
-                    'bar' => function ($bar) {
-                        return;
-                    },
-                ),
-                'baz',
-                array('foo' => '', 'bar' => null),
-                'Null an item',
-            ),
-            array(
-                array(
-                    'bar' => function ($bar) {
-                        return $bar->format('d-m-Y H:i:s');
-                    },
-                ),
-                new \DateTime('2011-09-10 06:30:00'),
-                array('foo' => '', 'bar' => '10-09-2011 06:30:00'),
-                'Format a date',
-            ),
-            array(
-                array(
-                    'bar' => function ($bars) {
-                        $foos = '';
-                        foreach ($bars as $bar) {
-                            $foos .= $bar->getFoo();
-                        }
-
-                        return $foos;
-                    },
-                ),
-                array(new PropertyConstructorDummy('baz', ''), new PropertyConstructorDummy('quux', '')),
-                array('foo' => '', 'bar' => 'bazquux'),
-                'Collect a property',
-            ),
-            array(
-                array(
-                    'bar' => function ($bars) {
-                        return count($bars);
-                    },
-                ),
-                array(new PropertyConstructorDummy('baz', ''), new PropertyConstructorDummy('quux', '')),
-                array('foo' => '', 'bar' => 2),
-                'Count a property',
-            ),
-        );
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Serializer\Exception\CircularReferenceException
-     */
-    public function testUnableToNormalizeCircularReference()
-    {
-        $serializer = new Serializer(array($this->normalizer));
-        $this->normalizer->setSerializer($serializer);
-        $this->normalizer->setCircularReferenceLimit(2);
-
-        $obj = new PropertyCircularReferenceDummy();
-
-        $this->normalizer->normalize($obj);
-    }
-
-    public function testSiblingReference()
-    {
-        $serializer = new Serializer(array($this->normalizer));
-        $this->normalizer->setSerializer($serializer);
-
-        $siblingHolder = new PropertySiblingHolder();
-
-        $expected = array(
-            'sibling0' => array('coopTilleuls' => 'Les-Tilleuls.coop'),
-            'sibling1' => array('coopTilleuls' => 'Les-Tilleuls.coop'),
-            'sibling2' => array('coopTilleuls' => 'Les-Tilleuls.coop'),
-        );
-        $this->assertEquals($expected, $this->normalizer->normalize($siblingHolder));
-    }
-
-    public function testCircularReferenceHandler()
-    {
-        $serializer = new Serializer(array($this->normalizer));
-        $this->normalizer->setSerializer($serializer);
-        $this->normalizer->setCircularReferenceHandler(function ($obj) {
-            return get_class($obj);
-        });
-
-        $obj = new PropertyCircularReferenceDummy();
-
-        $expected = array('me' => 'Symfony\Component\Serializer\Tests\Fixtures\PropertyCircularReferenceDummy');
-        $this->assertEquals($expected, $this->normalizer->normalize($obj));
-    }
-
-    public function testDenormalizeNonExistingAttribute()
-    {
-        $this->assertEquals(
-            new PropertyDummy(),
-            $this->normalizer->denormalize(array('non_existing' => true), __NAMESPACE__.'\PropertyDummy')
-        );
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Serializer\Exception\LogicException
-     * @expectedExceptionMessage Cannot normalize attribute "bar" because injected serializer is not a normalizer
-     */
-    public function testUnableToNormalizeObjectAttribute()
-    {
-        $serializer = $this->getMock('Symfony\Component\Serializer\SerializerInterface');
-        $this->normalizer->setSerializer($serializer);
-
-        $obj = new PropertyDummy();
-        $object = new \stdClass();
-        $obj->setBar($object);
-
-        $this->normalizer->normalize($obj, 'any');
-    }
-
-    public function testNoTraversableSupport()
-    {
-        $this->assertFalse($this->normalizer->supportsNormalization(new \ArrayObject()));
-    }
-}
-
-class PropertyDummy
-{
-    public $foo;
-    private $bar;
-    protected $camelCase;
-
-    public function getBar()
-    {
-        return $this->bar;
-    }
-
-    public function setBar($bar)
-    {
-        $this->bar = $bar;
-    }
-
-    public function getCamelCase()
-    {
-        return $this->camelCase;
-    }
-
-    public function setCamelCase($camelCase)
-    {
-        $this->camelCase = $camelCase;
-    }
-}
-
-class PropertyConstructorDummy
-{
-    protected $foo;
-    private $bar;
-
-    public function __construct($foo, $bar)
-    {
-        $this->foo = $foo;
-        $this->bar = $bar;
-    }
-
-    public function getFoo()
-    {
-        return $this->foo;
-    }
-
-    public function getBar()
-    {
-        return $this->bar;
-    }
-}
-
-class PropertyCamelizedDummy
-{
-    private $kevinDunglas;
-    public $fooBar;
-    public $bar_foo;
-
-    public function __construct($kevinDunglas = null)
-    {
-        $this->kevinDunglas = $kevinDunglas;
-    }
-}
diff --git a/vendor/symfony/serializer/Tests/Normalizer/TestDenormalizer.php b/vendor/symfony/serializer/Tests/Normalizer/TestDenormalizer.php
deleted file mode 100644
index 7525d5c..0000000
--- a/vendor/symfony/serializer/Tests/Normalizer/TestDenormalizer.php
+++ /dev/null
@@ -1,37 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Serializer\Tests\Normalizer;
-
-use Symfony\Component\Serializer\Normalizer\DenormalizerInterface;
-
-/**
- * Provides a test Normalizer which only implements the DenormalizerInterface.
- *
- * @author Lin Clark <lin@lin-clark.com>
- */
-class TestDenormalizer implements DenormalizerInterface
-{
-    /**
-     * {@inheritdoc}
-     */
-    public function denormalize($data, $class, $format = null, array $context = array())
-    {
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    public function supportsDenormalization($data, $type, $format = null)
-    {
-        return true;
-    }
-}
diff --git a/vendor/symfony/serializer/Tests/Normalizer/TestNormalizer.php b/vendor/symfony/serializer/Tests/Normalizer/TestNormalizer.php
deleted file mode 100644
index 4b29e8f..0000000
--- a/vendor/symfony/serializer/Tests/Normalizer/TestNormalizer.php
+++ /dev/null
@@ -1,37 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Serializer\Tests\Normalizer;
-
-use Symfony\Component\Serializer\Normalizer\NormalizerInterface;
-
-/**
- * Provides a test Normalizer which only implements the NormalizerInterface.
- *
- * @author Lin Clark <lin@lin-clark.com>
- */
-class TestNormalizer implements NormalizerInterface
-{
-    /**
-     * {@inheritdoc}
-     */
-    public function normalize($object, $format = null, array $context = array())
-    {
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    public function supportsNormalization($data, $format = null)
-    {
-        return true;
-    }
-}
diff --git a/vendor/symfony/serializer/Tests/SerializerTest.php b/vendor/symfony/serializer/Tests/SerializerTest.php
deleted file mode 100644
index 68f70fc..0000000
--- a/vendor/symfony/serializer/Tests/SerializerTest.php
+++ /dev/null
@@ -1,267 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Serializer\Tests;
-
-use Symfony\Component\Serializer\Serializer;
-use Symfony\Component\Serializer\Encoder\JsonEncoder;
-use Symfony\Component\Serializer\Normalizer\GetSetMethodNormalizer;
-use Symfony\Component\Serializer\Normalizer\CustomNormalizer;
-use Symfony\Component\Serializer\Tests\Fixtures\TraversableDummy;
-use Symfony\Component\Serializer\Tests\Fixtures\NormalizableTraversableDummy;
-use Symfony\Component\Serializer\Tests\Normalizer\TestNormalizer;
-use Symfony\Component\Serializer\Tests\Normalizer\TestDenormalizer;
-
-class SerializerTest extends \PHPUnit_Framework_TestCase
-{
-    public function testInterface()
-    {
-        $serializer = new Serializer();
-
-        $this->assertInstanceOf('Symfony\Component\Serializer\SerializerInterface', $serializer);
-        $this->assertInstanceOf('Symfony\Component\Serializer\Normalizer\NormalizerInterface', $serializer);
-        $this->assertInstanceOf('Symfony\Component\Serializer\Normalizer\DenormalizerInterface', $serializer);
-        $this->assertInstanceOf('Symfony\Component\Serializer\Encoder\EncoderInterface', $serializer);
-        $this->assertInstanceOf('Symfony\Component\Serializer\Encoder\DecoderInterface', $serializer);
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Serializer\Exception\UnexpectedValueException
-     */
-    public function testNormalizeNoMatch()
-    {
-        $this->serializer = new Serializer(array($this->getMock('Symfony\Component\Serializer\Normalizer\CustomNormalizer')));
-        $this->serializer->normalize(new \stdClass(), 'xml');
-    }
-
-    public function testNormalizeTraversable()
-    {
-        $this->serializer = new Serializer(array(), array('json' => new JsonEncoder()));
-        $result = $this->serializer->serialize(new TraversableDummy(), 'json');
-        $this->assertEquals('{"foo":"foo","bar":"bar"}', $result);
-    }
-
-    public function testNormalizeGivesPriorityToInterfaceOverTraversable()
-    {
-        $this->serializer = new Serializer(array(new CustomNormalizer()), array('json' => new JsonEncoder()));
-        $result = $this->serializer->serialize(new NormalizableTraversableDummy(), 'json');
-        $this->assertEquals('{"foo":"normalizedFoo","bar":"normalizedBar"}', $result);
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Serializer\Exception\UnexpectedValueException
-     */
-    public function testNormalizeOnDenormalizer()
-    {
-        $this->serializer = new Serializer(array(new TestDenormalizer()), array());
-        $this->assertTrue($this->serializer->normalize(new \stdClass(), 'json'));
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Serializer\Exception\UnexpectedValueException
-     */
-    public function testDenormalizeNoMatch()
-    {
-        $this->serializer = new Serializer(array($this->getMock('Symfony\Component\Serializer\Normalizer\CustomNormalizer')));
-        $this->serializer->denormalize('foo', 'stdClass');
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Serializer\Exception\UnexpectedValueException
-     */
-    public function testDenormalizeOnNormalizer()
-    {
-        $this->serializer = new Serializer(array(new TestNormalizer()), array());
-        $data = array('title' => 'foo', 'numbers' => array(5, 3));
-        $this->assertTrue($this->serializer->denormalize(json_encode($data), 'stdClass', 'json'));
-    }
-
-    public function testCustomNormalizerCanNormalizeCollectionsAndScalar()
-    {
-        $this->serializer = new Serializer(array(new TestNormalizer()), array());
-        $this->assertNull($this->serializer->normalize(array('a', 'b')));
-        $this->assertNull($this->serializer->normalize(new \ArrayObject(array('c', 'd'))));
-        $this->assertNull($this->serializer->normalize(array()));
-        $this->assertNull($this->serializer->normalize('test'));
-    }
-
-    public function testSerialize()
-    {
-        $this->serializer = new Serializer(array(new GetSetMethodNormalizer()), array('json' => new JsonEncoder()));
-        $data = array('title' => 'foo', 'numbers' => array(5, 3));
-        $result = $this->serializer->serialize(Model::fromArray($data), 'json');
-        $this->assertEquals(json_encode($data), $result);
-    }
-
-    public function testSerializeScalar()
-    {
-        $this->serializer = new Serializer(array(), array('json' => new JsonEncoder()));
-        $result = $this->serializer->serialize('foo', 'json');
-        $this->assertEquals('"foo"', $result);
-    }
-
-    public function testSerializeArrayOfScalars()
-    {
-        $this->serializer = new Serializer(array(), array('json' => new JsonEncoder()));
-        $data = array('foo', array(5, 3));
-        $result = $this->serializer->serialize($data, 'json');
-        $this->assertEquals(json_encode($data), $result);
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Serializer\Exception\UnexpectedValueException
-     */
-    public function testSerializeNoEncoder()
-    {
-        $this->serializer = new Serializer(array(), array());
-        $data = array('title' => 'foo', 'numbers' => array(5, 3));
-        $this->serializer->serialize($data, 'json');
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Serializer\Exception\LogicException
-     */
-    public function testSerializeNoNormalizer()
-    {
-        $this->serializer = new Serializer(array(), array('json' => new JsonEncoder()));
-        $data = array('title' => 'foo', 'numbers' => array(5, 3));
-        $this->serializer->serialize(Model::fromArray($data), 'json');
-    }
-
-    public function testDeserialize()
-    {
-        $this->serializer = new Serializer(array(new GetSetMethodNormalizer()), array('json' => new JsonEncoder()));
-        $data = array('title' => 'foo', 'numbers' => array(5, 3));
-        $result = $this->serializer->deserialize(json_encode($data), '\Symfony\Component\Serializer\Tests\Model', 'json');
-        $this->assertEquals($data, $result->toArray());
-    }
-
-    public function testDeserializeUseCache()
-    {
-        $this->serializer = new Serializer(array(new GetSetMethodNormalizer()), array('json' => new JsonEncoder()));
-        $data = array('title' => 'foo', 'numbers' => array(5, 3));
-        $this->serializer->deserialize(json_encode($data), '\Symfony\Component\Serializer\Tests\Model', 'json');
-        $data = array('title' => 'bar', 'numbers' => array(2, 8));
-        $result = $this->serializer->deserialize(json_encode($data), '\Symfony\Component\Serializer\Tests\Model', 'json');
-        $this->assertEquals($data, $result->toArray());
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Serializer\Exception\LogicException
-     */
-    public function testDeserializeNoNormalizer()
-    {
-        $this->serializer = new Serializer(array(), array('json' => new JsonEncoder()));
-        $data = array('title' => 'foo', 'numbers' => array(5, 3));
-        $this->serializer->deserialize(json_encode($data), '\Symfony\Component\Serializer\Tests\Model', 'json');
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Serializer\Exception\UnexpectedValueException
-     */
-    public function testDeserializeWrongNormalizer()
-    {
-        $this->serializer = new Serializer(array(new CustomNormalizer()), array('json' => new JsonEncoder()));
-        $data = array('title' => 'foo', 'numbers' => array(5, 3));
-        $this->serializer->deserialize(json_encode($data), '\Symfony\Component\Serializer\Tests\Model', 'json');
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Serializer\Exception\UnexpectedValueException
-     */
-    public function testDeserializeNoEncoder()
-    {
-        $this->serializer = new Serializer(array(), array());
-        $data = array('title' => 'foo', 'numbers' => array(5, 3));
-        $this->serializer->deserialize(json_encode($data), '\Symfony\Component\Serializer\Tests\Model', 'json');
-    }
-
-    public function testDeserializeSupported()
-    {
-        $this->serializer = new Serializer(array(new GetSetMethodNormalizer()), array());
-        $data = array('title' => 'foo', 'numbers' => array(5, 3));
-        $this->assertTrue($this->serializer->supportsDenormalization(json_encode($data), '\Symfony\Component\Serializer\Tests\Model', 'json'));
-    }
-
-    public function testDeserializeNotSupported()
-    {
-        $this->serializer = new Serializer(array(new GetSetMethodNormalizer()), array());
-        $data = array('title' => 'foo', 'numbers' => array(5, 3));
-        $this->assertFalse($this->serializer->supportsDenormalization(json_encode($data), 'stdClass', 'json'));
-    }
-
-    public function testDeserializeNotSupportedMissing()
-    {
-        $this->serializer = new Serializer(array(), array());
-        $data = array('title' => 'foo', 'numbers' => array(5, 3));
-        $this->assertFalse($this->serializer->supportsDenormalization(json_encode($data), '\Symfony\Component\Serializer\Tests\Model', 'json'));
-    }
-
-    public function testEncode()
-    {
-        $this->serializer = new Serializer(array(), array('json' => new JsonEncoder()));
-        $data = array('foo', array(5, 3));
-        $result = $this->serializer->encode($data, 'json');
-        $this->assertEquals(json_encode($data), $result);
-    }
-
-    public function testDecode()
-    {
-        $this->serializer = new Serializer(array(), array('json' => new JsonEncoder()));
-        $data = array('foo', array(5, 3));
-        $result = $this->serializer->decode(json_encode($data), 'json');
-        $this->assertEquals($data, $result);
-    }
-}
-
-class Model
-{
-    private $title;
-    private $numbers;
-
-    public static function fromArray($array)
-    {
-        $model = new self();
-        if (isset($array['title'])) {
-            $model->setTitle($array['title']);
-        }
-        if (isset($array['numbers'])) {
-            $model->setNumbers($array['numbers']);
-        }
-
-        return $model;
-    }
-
-    public function getTitle()
-    {
-        return $this->title;
-    }
-
-    public function setTitle($title)
-    {
-        $this->title = $title;
-    }
-
-    public function getNumbers()
-    {
-        return $this->numbers;
-    }
-
-    public function setNumbers($numbers)
-    {
-        $this->numbers = $numbers;
-    }
-
-    public function toArray()
-    {
-        return array('title' => $this->title, 'numbers' => $this->numbers);
-    }
-}
diff --git a/vendor/symfony/translation/Tests/Catalogue/AbstractOperationTest.php b/vendor/symfony/translation/Tests/Catalogue/AbstractOperationTest.php
deleted file mode 100644
index 30c21af..0000000
--- a/vendor/symfony/translation/Tests/Catalogue/AbstractOperationTest.php
+++ /dev/null
@@ -1,73 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Translation\Tests\Catalogue;
-
-use Symfony\Component\Translation\MessageCatalogue;
-use Symfony\Component\Translation\MessageCatalogueInterface;
-
-abstract class AbstractOperationTest extends \PHPUnit_Framework_TestCase
-{
-    public function testGetEmptyDomains()
-    {
-        $this->assertEquals(
-            array(),
-            $this->createOperation(
-                new MessageCatalogue('en'),
-                new MessageCatalogue('en')
-            )->getDomains()
-        );
-    }
-
-    public function testGetMergedDomains()
-    {
-        $this->assertEquals(
-            array('a', 'b', 'c'),
-            $this->createOperation(
-                new MessageCatalogue('en', array('a' => array(), 'b' => array())),
-                new MessageCatalogue('en', array('b' => array(), 'c' => array()))
-            )->getDomains()
-        );
-    }
-
-    public function testGetMessagesFromUnknownDomain()
-    {
-        $this->setExpectedException('InvalidArgumentException');
-        $this->createOperation(
-            new MessageCatalogue('en'),
-            new MessageCatalogue('en')
-        )->getMessages('domain');
-    }
-
-    public function testGetEmptyMessages()
-    {
-        $this->assertEquals(
-            array(),
-            $this->createOperation(
-                new MessageCatalogue('en', array('a' => array())),
-                new MessageCatalogue('en')
-            )->getMessages('a')
-        );
-    }
-
-    public function testGetEmptyResult()
-    {
-        $this->assertEquals(
-            new MessageCatalogue('en'),
-            $this->createOperation(
-                new MessageCatalogue('en'),
-                new MessageCatalogue('en')
-            )->getResult()
-        );
-    }
-
-    abstract protected function createOperation(MessageCatalogueInterface $source, MessageCatalogueInterface $target);
-}
diff --git a/vendor/symfony/translation/Tests/Catalogue/DiffOperationTest.php b/vendor/symfony/translation/Tests/Catalogue/DiffOperationTest.php
deleted file mode 100644
index 26bd582..0000000
--- a/vendor/symfony/translation/Tests/Catalogue/DiffOperationTest.php
+++ /dev/null
@@ -1,82 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Translation\Tests\Catalogue;
-
-use Symfony\Component\Translation\Catalogue\DiffOperation;
-use Symfony\Component\Translation\MessageCatalogue;
-use Symfony\Component\Translation\MessageCatalogueInterface;
-
-class DiffOperationTest extends AbstractOperationTest
-{
-    public function testGetMessagesFromSingleDomain()
-    {
-        $operation = $this->createOperation(
-            new MessageCatalogue('en', array('messages' => array('a' => 'old_a', 'b' => 'old_b'))),
-            new MessageCatalogue('en', array('messages' => array('a' => 'new_a', 'c' => 'new_c')))
-        );
-
-        $this->assertEquals(
-            array('a' => 'old_a', 'c' => 'new_c'),
-            $operation->getMessages('messages')
-        );
-
-        $this->assertEquals(
-            array('c' => 'new_c'),
-            $operation->getNewMessages('messages')
-        );
-
-        $this->assertEquals(
-            array('b' => 'old_b'),
-            $operation->getObsoleteMessages('messages')
-        );
-    }
-
-    public function testGetResultFromSingleDomain()
-    {
-        $this->assertEquals(
-            new MessageCatalogue('en', array(
-                'messages' => array('a' => 'old_a', 'c' => 'new_c'),
-            )),
-            $this->createOperation(
-                new MessageCatalogue('en', array('messages' => array('a' => 'old_a', 'b' => 'old_b'))),
-                new MessageCatalogue('en', array('messages' => array('a' => 'new_a', 'c' => 'new_c')))
-            )->getResult()
-        );
-    }
-
-    public function testGetResultWithMetadata()
-    {
-        $leftCatalogue = new MessageCatalogue('en', array('messages' => array('a' => 'old_a', 'b' => 'old_b')));
-        $leftCatalogue->setMetadata('a', 'foo', 'messages');
-        $leftCatalogue->setMetadata('b', 'bar', 'messages');
-        $rightCatalogue = new MessageCatalogue('en', array('messages' => array('b' => 'new_b', 'c' => 'new_c')));
-        $rightCatalogue->setMetadata('b', 'baz', 'messages');
-        $rightCatalogue->setMetadata('c', 'qux', 'messages');
-
-        $diffCatalogue = new MessageCatalogue('en', array('messages' => array('b' => 'old_b', 'c' => 'new_c')));
-        $diffCatalogue->setMetadata('b', 'bar', 'messages');
-        $diffCatalogue->setMetadata('c', 'qux', 'messages');
-
-        $this->assertEquals(
-            $diffCatalogue,
-            $this->createOperation(
-                $leftCatalogue,
-                $rightCatalogue
-            )->getResult()
-        );
-    }
-
-    protected function createOperation(MessageCatalogueInterface $source, MessageCatalogueInterface $target)
-    {
-        return new DiffOperation($source, $target);
-    }
-}
diff --git a/vendor/symfony/translation/Tests/Catalogue/MergeOperationTest.php b/vendor/symfony/translation/Tests/Catalogue/MergeOperationTest.php
deleted file mode 100644
index 8b51c15..0000000
--- a/vendor/symfony/translation/Tests/Catalogue/MergeOperationTest.php
+++ /dev/null
@@ -1,83 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Translation\Tests\Catalogue;
-
-use Symfony\Component\Translation\Catalogue\MergeOperation;
-use Symfony\Component\Translation\MessageCatalogue;
-use Symfony\Component\Translation\MessageCatalogueInterface;
-
-class MergeOperationTest extends AbstractOperationTest
-{
-    public function testGetMessagesFromSingleDomain()
-    {
-        $operation = $this->createOperation(
-            new MessageCatalogue('en', array('messages' => array('a' => 'old_a', 'b' => 'old_b'))),
-            new MessageCatalogue('en', array('messages' => array('a' => 'new_a', 'c' => 'new_c')))
-        );
-
-        $this->assertEquals(
-            array('a' => 'old_a', 'b' => 'old_b', 'c' => 'new_c'),
-            $operation->getMessages('messages')
-        );
-
-        $this->assertEquals(
-            array('c' => 'new_c'),
-            $operation->getNewMessages('messages')
-        );
-
-        $this->assertEquals(
-            array(),
-            $operation->getObsoleteMessages('messages')
-        );
-    }
-
-    public function testGetResultFromSingleDomain()
-    {
-        $this->assertEquals(
-            new MessageCatalogue('en', array(
-                'messages' => array('a' => 'old_a', 'b' => 'old_b', 'c' => 'new_c'),
-            )),
-            $this->createOperation(
-                new MessageCatalogue('en', array('messages' => array('a' => 'old_a', 'b' => 'old_b'))),
-                new MessageCatalogue('en', array('messages' => array('a' => 'new_a', 'c' => 'new_c')))
-            )->getResult()
-        );
-    }
-
-    public function testGetResultWithMetadata()
-    {
-        $leftCatalogue = new MessageCatalogue('en', array('messages' => array('a' => 'old_a', 'b' => 'old_b')));
-        $leftCatalogue->setMetadata('a', 'foo', 'messages');
-        $leftCatalogue->setMetadata('b', 'bar', 'messages');
-        $rightCatalogue = new MessageCatalogue('en', array('messages' => array('b' => 'new_b', 'c' => 'new_c')));
-        $rightCatalogue->setMetadata('b', 'baz', 'messages');
-        $rightCatalogue->setMetadata('c', 'qux', 'messages');
-
-        $mergedCatalogue = new MessageCatalogue('en', array('messages' => array('a' => 'old_a', 'b' => 'old_b', 'c' => 'new_c')));
-        $mergedCatalogue->setMetadata('a', 'foo', 'messages');
-        $mergedCatalogue->setMetadata('b', 'bar', 'messages');
-        $mergedCatalogue->setMetadata('c', 'qux', 'messages');
-
-        $this->assertEquals(
-            $mergedCatalogue,
-            $this->createOperation(
-                $leftCatalogue,
-                $rightCatalogue
-            )->getResult()
-        );
-    }
-
-    protected function createOperation(MessageCatalogueInterface $source, MessageCatalogueInterface $target)
-    {
-        return new MergeOperation($source, $target);
-    }
-}
diff --git a/vendor/symfony/translation/Tests/DataCollector/TranslationDataCollectorTest.php b/vendor/symfony/translation/Tests/DataCollector/TranslationDataCollectorTest.php
deleted file mode 100644
index 085d312..0000000
--- a/vendor/symfony/translation/Tests/DataCollector/TranslationDataCollectorTest.php
+++ /dev/null
@@ -1,121 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Translation\Tests\DataCollector;
-
-use Symfony\Component\Translation\DataCollectorTranslator;
-use Symfony\Component\Translation\DataCollector\TranslationDataCollector;
-
-class TranslationDataCollectorTest extends \PHPUnit_Framework_TestCase
-{
-    protected function setUp()
-    {
-        if (!class_exists('Symfony\Component\HttpKernel\DataCollector\DataCollector')) {
-            $this->markTestSkipped('The "DataCollector" is not available');
-        }
-    }
-
-    public function testCollectEmptyMessages()
-    {
-        $translator = $this->getTranslator();
-        $translator->expects($this->any())->method('getCollectedMessages')->will($this->returnValue(array()));
-
-        $dataCollector = new TranslationDataCollector($translator);
-        $dataCollector->lateCollect();
-
-        $this->assertEquals(0, $dataCollector->getCountMissings());
-        $this->assertEquals(0, $dataCollector->getCountFallbacks());
-        $this->assertEquals(0, $dataCollector->getCountDefines());
-        $this->assertEquals(array(), $dataCollector->getMessages());
-    }
-
-    public function testCollect()
-    {
-        $collectedMessages = array(
-            array(
-                  'id' => 'foo',
-                  'translation' => 'foo (en)',
-                  'locale' => 'en',
-                  'domain' => 'messages',
-                  'state' => DataCollectorTranslator::MESSAGE_DEFINED,
-            ),
-            array(
-                  'id' => 'bar',
-                  'translation' => 'bar (fr)',
-                  'locale' => 'fr',
-                  'domain' => 'messages',
-                  'state' => DataCollectorTranslator::MESSAGE_EQUALS_FALLBACK,
-            ),
-            array(
-                  'id' => 'choice',
-                  'translation' => 'choice',
-                  'locale' => 'en',
-                  'domain' => 'messages',
-                  'state' => DataCollectorTranslator::MESSAGE_MISSING,
-            ),
-            array(
-                  'id' => 'choice',
-                  'translation' => 'choice',
-                  'locale' => 'en',
-                  'domain' => 'messages',
-                  'state' => DataCollectorTranslator::MESSAGE_MISSING,
-            ),
-        );
-        $expectedMessages = array(
-            array(
-                  'id' => 'foo',
-                  'translation' => 'foo (en)',
-                  'locale' => 'en',
-                  'domain' => 'messages',
-                  'state' => DataCollectorTranslator::MESSAGE_DEFINED,
-                  'count' => 1,
-            ),
-            array(
-                  'id' => 'bar',
-                  'translation' => 'bar (fr)',
-                  'locale' => 'fr',
-                  'domain' => 'messages',
-                  'state' => DataCollectorTranslator::MESSAGE_EQUALS_FALLBACK,
-                  'count' => 1,
-            ),
-            array(
-                  'id' => 'choice',
-                  'translation' => 'choice',
-                  'locale' => 'en',
-                  'domain' => 'messages',
-                  'state' => DataCollectorTranslator::MESSAGE_MISSING,
-                  'count' => 2,
-            ),
-        );
-
-        $translator = $this->getTranslator();
-        $translator->expects($this->any())->method('getCollectedMessages')->will($this->returnValue($collectedMessages));
-
-        $dataCollector = new TranslationDataCollector($translator);
-        $dataCollector->lateCollect();
-
-        $this->assertEquals(1, $dataCollector->getCountMissings());
-        $this->assertEquals(1, $dataCollector->getCountFallbacks());
-        $this->assertEquals(1, $dataCollector->getCountDefines());
-        $this->assertEquals($expectedMessages, array_values($dataCollector->getMessages()));
-    }
-
-    private function getTranslator()
-    {
-        $translator = $this
-            ->getMockBuilder('Symfony\Component\Translation\DataCollectorTranslator')
-            ->disableOriginalConstructor()
-            ->getMock()
-        ;
-
-        return $translator;
-    }
-}
diff --git a/vendor/symfony/translation/Tests/DataCollectorTranslatorTest.php b/vendor/symfony/translation/Tests/DataCollectorTranslatorTest.php
deleted file mode 100644
index 8e98ad3..0000000
--- a/vendor/symfony/translation/Tests/DataCollectorTranslatorTest.php
+++ /dev/null
@@ -1,81 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Translation\Tests;
-
-use Symfony\Component\Translation\Translator;
-use Symfony\Component\Translation\DataCollectorTranslator;
-use Symfony\Component\Translation\Loader\ArrayLoader;
-
-class DataCollectorTranslatorTest extends \PHPUnit_Framework_TestCase
-{
-    protected function setUp()
-    {
-        if (!class_exists('Symfony\Component\HttpKernel\DataCollector\DataCollector')) {
-            $this->markTestSkipped('The "DataCollector" is not available');
-        }
-    }
-    public function testCollectMessages()
-    {
-        $collector = $this->createCollector();
-        $collector->setFallbackLocales(array('fr', 'ru'));
-
-        $collector->trans('foo');
-        $collector->trans('bar');
-        $collector->transChoice('choice', 0);
-        $collector->trans('bar_ru');
-
-        $expectedMessages = array();
-        $expectedMessages[] = array(
-              'id' => 'foo',
-              'translation' => 'foo (en)',
-              'locale' => 'en',
-              'domain' => 'messages',
-              'state' => DataCollectorTranslator::MESSAGE_DEFINED,
-        );
-        $expectedMessages[] = array(
-              'id' => 'bar',
-              'translation' => 'bar (fr)',
-              'locale' => 'fr',
-              'domain' => 'messages',
-              'state' => DataCollectorTranslator::MESSAGE_EQUALS_FALLBACK,
-        );
-        $expectedMessages[] = array(
-              'id' => 'choice',
-              'translation' => 'choice',
-              'locale' => 'en',
-              'domain' => 'messages',
-              'state' => DataCollectorTranslator::MESSAGE_MISSING,
-        );
-        $expectedMessages[] = array(
-              'id' => 'bar_ru',
-              'translation' => 'bar (ru)',
-              'locale' => 'ru',
-              'domain' => 'messages',
-              'state' => DataCollectorTranslator::MESSAGE_EQUALS_FALLBACK,
-        );
-
-        $this->assertEquals($expectedMessages, $collector->getCollectedMessages());
-    }
-
-    private function createCollector()
-    {
-        $translator = new Translator('en');
-        $translator->addLoader('array', new ArrayLoader());
-        $translator->addResource('array', array('foo' => 'foo (en)'), 'en');
-        $translator->addResource('array', array('bar' => 'bar (fr)'), 'fr');
-        $translator->addResource('array', array('bar_ru' => 'bar (ru)'), 'ru');
-
-        $collector = new DataCollectorTranslator($translator);
-
-        return $collector;
-    }
-}
diff --git a/vendor/symfony/translation/Tests/Dumper/CsvFileDumperTest.php b/vendor/symfony/translation/Tests/Dumper/CsvFileDumperTest.php
deleted file mode 100644
index 29177ff..0000000
--- a/vendor/symfony/translation/Tests/Dumper/CsvFileDumperTest.php
+++ /dev/null
@@ -1,33 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Translation\Tests\Dumper;
-
-use Symfony\Component\Translation\MessageCatalogue;
-use Symfony\Component\Translation\Dumper\CsvFileDumper;
-
-class CsvFileDumperTest extends \PHPUnit_Framework_TestCase
-{
-    public function testDump()
-    {
-        $catalogue = new MessageCatalogue('en');
-        $catalogue->add(array('foo' => 'bar', 'bar' => 'foo
-foo', 'foo;foo' => 'bar'));
-
-        $tempDir = sys_get_temp_dir();
-        $dumper = new CsvFileDumper();
-        $dumper->dump($catalogue, array('path' => $tempDir));
-
-        $this->assertEquals(file_get_contents(__DIR__.'/../fixtures/valid.csv'), file_get_contents($tempDir.'/messages.en.csv'));
-
-        unlink($tempDir.'/messages.en.csv');
-    }
-}
diff --git a/vendor/symfony/translation/Tests/Dumper/FileDumperTest.php b/vendor/symfony/translation/Tests/Dumper/FileDumperTest.php
deleted file mode 100644
index 9682089..0000000
--- a/vendor/symfony/translation/Tests/Dumper/FileDumperTest.php
+++ /dev/null
@@ -1,70 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Translation\Tests\Dumper;
-
-use Symfony\Component\Translation\MessageCatalogue;
-use Symfony\Component\Translation\Dumper\FileDumper;
-
-class FileDumperTest extends \PHPUnit_Framework_TestCase
-{
-    public function testDumpBackupsFileIfExisting()
-    {
-        $tempDir = sys_get_temp_dir();
-        $file = $tempDir.'/messages.en.concrete';
-        $backupFile = $file.'~';
-
-        @touch($file);
-
-        $catalogue = new MessageCatalogue('en');
-        $catalogue->add(array('foo' => 'bar'));
-
-        $dumper = new ConcreteFileDumper();
-        $dumper->dump($catalogue, array('path' => $tempDir));
-
-        $this->assertTrue(file_exists($backupFile));
-
-        @unlink($file);
-        @unlink($backupFile);
-    }
-
-    public function testDumpCreatesNestedDirectoriesAndFile()
-    {
-        $tempDir = sys_get_temp_dir();
-        $translationsDir = $tempDir.'/test/translations';
-        $file = $translationsDir.'/messages.en.concrete';
-
-        $catalogue = new MessageCatalogue('en');
-        $catalogue->add(array('foo' => 'bar'));
-
-        $dumper = new ConcreteFileDumper();
-        $dumper->setRelativePathTemplate('test/translations/%domain%.%locale%.%extension%');
-        $dumper->dump($catalogue, array('path' => $tempDir));
-
-        $this->assertTrue(file_exists($file));
-
-        @unlink($file);
-        @rmdir($translationsDir);
-    }
-}
-
-class ConcreteFileDumper extends FileDumper
-{
-    protected function format(MessageCatalogue $messages, $domain)
-    {
-        return '';
-    }
-
-    protected function getExtension()
-    {
-        return 'concrete';
-    }
-}
diff --git a/vendor/symfony/translation/Tests/Dumper/IcuResFileDumperTest.php b/vendor/symfony/translation/Tests/Dumper/IcuResFileDumperTest.php
deleted file mode 100644
index 7be7dfb..0000000
--- a/vendor/symfony/translation/Tests/Dumper/IcuResFileDumperTest.php
+++ /dev/null
@@ -1,38 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Translation\Tests\Dumper;
-
-use Symfony\Component\Translation\MessageCatalogue;
-use Symfony\Component\Translation\Dumper\IcuResFileDumper;
-
-class IcuResFileDumperTest extends \PHPUnit_Framework_TestCase
-{
-    public function testDump()
-    {
-        if (!function_exists('mb_convert_encoding')) {
-            $this->markTestSkipped('This test requires mbstring to work.');
-        }
-
-        $catalogue = new MessageCatalogue('en');
-        $catalogue->add(array('foo' => 'bar'));
-
-        $tempDir = sys_get_temp_dir().'/IcuResFileDumperTest';
-        $dumper = new IcuResFileDumper();
-        $dumper->dump($catalogue, array('path' => $tempDir));
-
-        $this->assertEquals(file_get_contents(__DIR__.'/../fixtures/resourcebundle/res/en.res'), file_get_contents($tempDir.'/messages/en.res'));
-
-        @unlink($tempDir.'/messages/en.res');
-        @rmdir($tempDir.'/messages');
-        @rmdir($tempDir);
-    }
-}
diff --git a/vendor/symfony/translation/Tests/Dumper/IniFileDumperTest.php b/vendor/symfony/translation/Tests/Dumper/IniFileDumperTest.php
deleted file mode 100644
index 2a2cefd..0000000
--- a/vendor/symfony/translation/Tests/Dumper/IniFileDumperTest.php
+++ /dev/null
@@ -1,32 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Translation\Tests\Dumper;
-
-use Symfony\Component\Translation\MessageCatalogue;
-use Symfony\Component\Translation\Dumper\IniFileDumper;
-
-class IniFileDumperTest extends \PHPUnit_Framework_TestCase
-{
-    public function testDump()
-    {
-        $catalogue = new MessageCatalogue('en');
-        $catalogue->add(array('foo' => 'bar'));
-
-        $tempDir = sys_get_temp_dir();
-        $dumper = new IniFileDumper();
-        $dumper->dump($catalogue, array('path' => $tempDir));
-
-        $this->assertEquals(file_get_contents(__DIR__.'/../fixtures/resources.ini'), file_get_contents($tempDir.'/messages.en.ini'));
-
-        unlink($tempDir.'/messages.en.ini');
-    }
-}
diff --git a/vendor/symfony/translation/Tests/Dumper/JsonFileDumperTest.php b/vendor/symfony/translation/Tests/Dumper/JsonFileDumperTest.php
deleted file mode 100644
index 697cd93..0000000
--- a/vendor/symfony/translation/Tests/Dumper/JsonFileDumperTest.php
+++ /dev/null
@@ -1,36 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Translation\Tests\Dumper;
-
-use Symfony\Component\Translation\MessageCatalogue;
-use Symfony\Component\Translation\Dumper\JsonFileDumper;
-
-class JsonFileDumperTest extends \PHPUnit_Framework_TestCase
-{
-    public function testDump()
-    {
-        if (PHP_VERSION_ID < 50400) {
-            $this->markTestIncomplete('PHP below 5.4 doesn\'t support JSON pretty printing');
-        }
-
-        $catalogue = new MessageCatalogue('en');
-        $catalogue->add(array('foo' => 'bar'));
-
-        $tempDir = sys_get_temp_dir();
-        $dumper = new JsonFileDumper();
-        $dumper->dump($catalogue, array('path' => $tempDir));
-
-        $this->assertEquals(file_get_contents(__DIR__.'/../fixtures/resources.json'), file_get_contents($tempDir.'/messages.en.json'));
-
-        unlink($tempDir.'/messages.en.json');
-    }
-}
diff --git a/vendor/symfony/translation/Tests/Dumper/MoFileDumperTest.php b/vendor/symfony/translation/Tests/Dumper/MoFileDumperTest.php
deleted file mode 100644
index 439a25c..0000000
--- a/vendor/symfony/translation/Tests/Dumper/MoFileDumperTest.php
+++ /dev/null
@@ -1,31 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Translation\Tests\Dumper;
-
-use Symfony\Component\Translation\MessageCatalogue;
-use Symfony\Component\Translation\Dumper\MoFileDumper;
-
-class MoFileDumperTest extends \PHPUnit_Framework_TestCase
-{
-    public function testDump()
-    {
-        $catalogue = new MessageCatalogue('en');
-        $catalogue->add(array('foo' => 'bar'));
-
-        $tempDir = sys_get_temp_dir();
-        $dumper = new MoFileDumper();
-        $dumper->dump($catalogue, array('path' => $tempDir));
-        $this->assertEquals(file_get_contents(__DIR__.'/../fixtures/resources.mo'), file_get_contents($tempDir.'/messages.en.mo'));
-
-        unlink($tempDir.'/messages.en.mo');
-    }
-}
diff --git a/vendor/symfony/translation/Tests/Dumper/PhpFileDumperTest.php b/vendor/symfony/translation/Tests/Dumper/PhpFileDumperTest.php
deleted file mode 100644
index 18be5a0..0000000
--- a/vendor/symfony/translation/Tests/Dumper/PhpFileDumperTest.php
+++ /dev/null
@@ -1,32 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Translation\Tests\Dumper;
-
-use Symfony\Component\Translation\MessageCatalogue;
-use Symfony\Component\Translation\Dumper\PhpFileDumper;
-
-class PhpFileDumperTest extends \PHPUnit_Framework_TestCase
-{
-    public function testDump()
-    {
-        $catalogue = new MessageCatalogue('en');
-        $catalogue->add(array('foo' => 'bar'));
-
-        $tempDir = sys_get_temp_dir();
-        $dumper = new PhpFileDumper();
-        $dumper->dump($catalogue, array('path' => $tempDir));
-
-        $this->assertEquals(file_get_contents(__DIR__.'/../fixtures/resources.php'), file_get_contents($tempDir.'/messages.en.php'));
-
-        unlink($tempDir.'/messages.en.php');
-    }
-}
diff --git a/vendor/symfony/translation/Tests/Dumper/PoFileDumperTest.php b/vendor/symfony/translation/Tests/Dumper/PoFileDumperTest.php
deleted file mode 100644
index 0296d6b..0000000
--- a/vendor/symfony/translation/Tests/Dumper/PoFileDumperTest.php
+++ /dev/null
@@ -1,31 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Translation\Tests\Dumper;
-
-use Symfony\Component\Translation\MessageCatalogue;
-use Symfony\Component\Translation\Dumper\PoFileDumper;
-
-class PoFileDumperTest extends \PHPUnit_Framework_TestCase
-{
-    public function testDump()
-    {
-        $catalogue = new MessageCatalogue('en');
-        $catalogue->add(array('foo' => 'bar'));
-
-        $tempDir = sys_get_temp_dir();
-        $dumper = new PoFileDumper();
-        $dumper->dump($catalogue, array('path' => $tempDir));
-        $this->assertEquals(file_get_contents(__DIR__.'/../fixtures/resources.po'), file_get_contents($tempDir.'/messages.en.po'));
-
-        unlink($tempDir.'/messages.en.po');
-    }
-}
diff --git a/vendor/symfony/translation/Tests/Dumper/QtFileDumperTest.php b/vendor/symfony/translation/Tests/Dumper/QtFileDumperTest.php
deleted file mode 100644
index d7d8fb7..0000000
--- a/vendor/symfony/translation/Tests/Dumper/QtFileDumperTest.php
+++ /dev/null
@@ -1,32 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Translation\Tests\Dumper;
-
-use Symfony\Component\Translation\MessageCatalogue;
-use Symfony\Component\Translation\Dumper\QtFileDumper;
-
-class QtFileDumperTest extends \PHPUnit_Framework_TestCase
-{
-    public function testDump()
-    {
-        $catalogue = new MessageCatalogue('en');
-        $catalogue->add(array('foo' => 'bar'), 'resources');
-
-        $tempDir = sys_get_temp_dir();
-        $dumper = new QtFileDumper();
-        $dumper->dump($catalogue, array('path' => $tempDir));
-
-        $this->assertEquals(file_get_contents(__DIR__.'/../fixtures/resources.ts'), file_get_contents($tempDir.'/resources.en.ts'));
-
-        unlink($tempDir.'/resources.en.ts');
-    }
-}
diff --git a/vendor/symfony/translation/Tests/Dumper/XliffFileDumperTest.php b/vendor/symfony/translation/Tests/Dumper/XliffFileDumperTest.php
deleted file mode 100644
index dff2cc4..0000000
--- a/vendor/symfony/translation/Tests/Dumper/XliffFileDumperTest.php
+++ /dev/null
@@ -1,41 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Translation\Tests\Dumper;
-
-use Symfony\Component\Translation\MessageCatalogue;
-use Symfony\Component\Translation\Dumper\XliffFileDumper;
-
-class XliffFileDumperTest extends \PHPUnit_Framework_TestCase
-{
-    public function testDump()
-    {
-        $catalogue = new MessageCatalogue('en_US');
-        $catalogue->add(array(
-            'foo' => 'bar',
-            'key' => '',
-            'key.with.cdata' => '<source> & <target>',
-        ));
-        $catalogue->setMetadata('foo', array('notes' => array(array('priority' => 1, 'from' => 'bar', 'content' => 'baz'))));
-        $catalogue->setMetadata('key', array('notes' => array(array('content' => 'baz'), array('content' => 'qux'))));
-
-        $tempDir = sys_get_temp_dir();
-        $dumper = new XliffFileDumper();
-        $dumper->dump($catalogue, array('path' => $tempDir, 'default_locale' => 'fr_FR'));
-
-        $this->assertEquals(
-            file_get_contents(__DIR__.'/../fixtures/resources-clean.xlf'),
-            file_get_contents($tempDir.'/messages.en_US.xlf')
-        );
-
-        unlink($tempDir.'/messages.en_US.xlf');
-    }
-}
diff --git a/vendor/symfony/translation/Tests/Dumper/YamlFileDumperTest.php b/vendor/symfony/translation/Tests/Dumper/YamlFileDumperTest.php
deleted file mode 100644
index 3c68ade..0000000
--- a/vendor/symfony/translation/Tests/Dumper/YamlFileDumperTest.php
+++ /dev/null
@@ -1,32 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Translation\Tests\Dumper;
-
-use Symfony\Component\Translation\MessageCatalogue;
-use Symfony\Component\Translation\Dumper\YamlFileDumper;
-
-class YamlFileDumperTest extends \PHPUnit_Framework_TestCase
-{
-    public function testDump()
-    {
-        $catalogue = new MessageCatalogue('en');
-        $catalogue->add(array('foo' => 'bar'));
-
-        $tempDir = sys_get_temp_dir();
-        $dumper = new YamlFileDumper();
-        $dumper->dump($catalogue, array('path' => $tempDir));
-
-        $this->assertEquals(file_get_contents(__DIR__.'/../fixtures/resources.yml'), file_get_contents($tempDir.'/messages.en.yml'));
-
-        unlink($tempDir.'/messages.en.yml');
-    }
-}
diff --git a/vendor/symfony/translation/Tests/IdentityTranslatorTest.php b/vendor/symfony/translation/Tests/IdentityTranslatorTest.php
deleted file mode 100644
index 352dd31..0000000
--- a/vendor/symfony/translation/Tests/IdentityTranslatorTest.php
+++ /dev/null
@@ -1,95 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Translation\Tests;
-
-use Symfony\Component\Intl\Util\IntlTestHelper;
-use Symfony\Component\Translation\IdentityTranslator;
-
-class IdentityTranslatorTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @dataProvider getTransTests
-     */
-    public function testTrans($expected, $id, $parameters)
-    {
-        $translator = new IdentityTranslator();
-
-        $this->assertEquals($expected, $translator->trans($id, $parameters));
-    }
-
-    /**
-     * @dataProvider getTransChoiceTests
-     */
-    public function testTransChoiceWithExplicitLocale($expected, $id, $number, $parameters)
-    {
-        $translator = new IdentityTranslator();
-        $translator->setLocale('en');
-
-        $this->assertEquals($expected, $translator->transChoice($id, $number, $parameters));
-    }
-
-    /**
-     * @dataProvider getTransChoiceTests
-     */
-    public function testTransChoiceWithDefaultLocale($expected, $id, $number, $parameters)
-    {
-        \Locale::setDefault('en');
-
-        $translator = new IdentityTranslator();
-
-        $this->assertEquals($expected, $translator->transChoice($id, $number, $parameters));
-    }
-
-    public function testGetSetLocale()
-    {
-        $translator = new IdentityTranslator();
-        $translator->setLocale('en');
-
-        $this->assertEquals('en', $translator->getLocale());
-    }
-
-    public function testGetLocaleReturnsDefaultLocaleIfNotSet()
-    {
-        // in order to test with "pt_BR"
-        IntlTestHelper::requireFullIntl($this);
-
-        $translator = new IdentityTranslator();
-
-        \Locale::setDefault('en');
-        $this->assertEquals('en', $translator->getLocale());
-
-        \Locale::setDefault('pt_BR');
-        $this->assertEquals('pt_BR', $translator->getLocale());
-    }
-
-    public function getTransTests()
-    {
-        return array(
-            array('Symfony is great!', 'Symfony is great!', array()),
-            array('Symfony is awesome!', 'Symfony is %what%!', array('%what%' => 'awesome')),
-        );
-    }
-
-    public function getTransChoiceTests()
-    {
-        return array(
-            array('There are no apples', '{0} There are no apples|{1} There is one apple|]1,Inf] There are %count% apples', 0, array('%count%' => 0)),
-            array('There is one apple', '{0} There are no apples|{1} There is one apple|]1,Inf] There are %count% apples', 1, array('%count%' => 1)),
-            array('There are 10 apples', '{0} There are no apples|{1} There is one apple|]1,Inf] There are %count% apples', 10, array('%count%' => 10)),
-            array('There are 0 apples', 'There is 1 apple|There are %count% apples', 0, array('%count%' => 0)),
-            array('There is 1 apple', 'There is 1 apple|There are %count% apples', 1, array('%count%' => 1)),
-            array('There are 10 apples', 'There is 1 apple|There are %count% apples', 10, array('%count%' => 10)),
-            // custom validation messages may be coded with a fixed value
-            array('There are 2 apples', 'There are 2 apples', 2, array('%count%' => 2)),
-        );
-    }
-}
diff --git a/vendor/symfony/translation/Tests/IntervalTest.php b/vendor/symfony/translation/Tests/IntervalTest.php
deleted file mode 100644
index 075c98b..0000000
--- a/vendor/symfony/translation/Tests/IntervalTest.php
+++ /dev/null
@@ -1,48 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Translation\Tests;
-
-use Symfony\Component\Translation\Interval;
-
-class IntervalTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @dataProvider getTests
-     */
-    public function testTest($expected, $number, $interval)
-    {
-        $this->assertEquals($expected, Interval::test($number, $interval));
-    }
-
-    /**
-     * @expectedException \InvalidArgumentException
-     */
-    public function testTestException()
-    {
-        Interval::test(1, 'foobar');
-    }
-
-    public function getTests()
-    {
-        return array(
-            array(true, 3, '{1,2, 3 ,4}'),
-            array(false, 10, '{1,2, 3 ,4}'),
-            array(false, 3, '[1,2]'),
-            array(true, 1, '[1,2]'),
-            array(true, 2, '[1,2]'),
-            array(false, 1, ']1,2['),
-            array(false, 2, ']1,2['),
-            array(true, log(0), '[-Inf,2['),
-            array(true, -log(0), '[-2,+Inf]'),
-        );
-    }
-}
diff --git a/vendor/symfony/translation/Tests/Loader/CsvFileLoaderTest.php b/vendor/symfony/translation/Tests/Loader/CsvFileLoaderTest.php
deleted file mode 100644
index 463d3b5..0000000
--- a/vendor/symfony/translation/Tests/Loader/CsvFileLoaderTest.php
+++ /dev/null
@@ -1,60 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Translation\Tests\Loader;
-
-use Symfony\Component\Translation\Loader\CsvFileLoader;
-use Symfony\Component\Config\Resource\FileResource;
-
-class CsvFileLoaderTest extends \PHPUnit_Framework_TestCase
-{
-    public function testLoad()
-    {
-        $loader = new CsvFileLoader();
-        $resource = __DIR__.'/../fixtures/resources.csv';
-        $catalogue = $loader->load($resource, 'en', 'domain1');
-
-        $this->assertEquals(array('foo' => 'bar'), $catalogue->all('domain1'));
-        $this->assertEquals('en', $catalogue->getLocale());
-        $this->assertEquals(array(new FileResource($resource)), $catalogue->getResources());
-    }
-
-    public function testLoadDoesNothingIfEmpty()
-    {
-        $loader = new CsvFileLoader();
-        $resource = __DIR__.'/../fixtures/empty.csv';
-        $catalogue = $loader->load($resource, 'en', 'domain1');
-
-        $this->assertEquals(array(), $catalogue->all('domain1'));
-        $this->assertEquals('en', $catalogue->getLocale());
-        $this->assertEquals(array(new FileResource($resource)), $catalogue->getResources());
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Translation\Exception\NotFoundResourceException
-     */
-    public function testLoadNonExistingResource()
-    {
-        $loader = new CsvFileLoader();
-        $resource = __DIR__.'/../fixtures/not-exists.csv';
-        $loader->load($resource, 'en', 'domain1');
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Translation\Exception\InvalidResourceException
-     */
-    public function testLoadNonLocalResource()
-    {
-        $loader = new CsvFileLoader();
-        $resource = 'http://example.com/resources.csv';
-        $loader->load($resource, 'en', 'domain1');
-    }
-}
diff --git a/vendor/symfony/translation/Tests/Loader/IcuDatFileLoaderTest.php b/vendor/symfony/translation/Tests/Loader/IcuDatFileLoaderTest.php
deleted file mode 100644
index ea9643d..0000000
--- a/vendor/symfony/translation/Tests/Loader/IcuDatFileLoaderTest.php
+++ /dev/null
@@ -1,68 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Translation\Tests\Loader;
-
-use Symfony\Component\Translation\Loader\IcuDatFileLoader;
-use Symfony\Component\Config\Resource\FileResource;
-
-class IcuDatFileLoaderTest extends LocalizedTestCase
-{
-    protected function setUp()
-    {
-        if (!extension_loaded('intl')) {
-            $this->markTestSkipped('This test requires intl extension to work.');
-        }
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Translation\Exception\InvalidResourceException
-     */
-    public function testLoadInvalidResource()
-    {
-        $loader = new IcuDatFileLoader();
-        $loader->load(__DIR__.'/../fixtures/resourcebundle/corrupted/resources', 'es', 'domain2');
-    }
-
-    public function testDatEnglishLoad()
-    {
-        // bundled resource is build using pkgdata command which at least in ICU 4.2 comes in extremely! buggy form
-        // you must specify an temporary build directory which is not the same as current directory and
-        // MUST reside on the same partition. pkgdata -p resources -T /srv -d.packagelist.txt
-        $loader = new IcuDatFileLoader();
-        $resource = __DIR__.'/../fixtures/resourcebundle/dat/resources';
-        $catalogue = $loader->load($resource, 'en', 'domain1');
-
-        $this->assertEquals(array('symfony' => 'Symfony 2 is great'), $catalogue->all('domain1'));
-        $this->assertEquals('en', $catalogue->getLocale());
-        $this->assertEquals(array(new FileResource($resource.'.dat')), $catalogue->getResources());
-    }
-
-    public function testDatFrenchLoad()
-    {
-        $loader = new IcuDatFileLoader();
-        $resource = __DIR__.'/../fixtures/resourcebundle/dat/resources';
-        $catalogue = $loader->load($resource, 'fr', 'domain1');
-
-        $this->assertEquals(array('symfony' => 'Symfony 2 est génial'), $catalogue->all('domain1'));
-        $this->assertEquals('fr', $catalogue->getLocale());
-        $this->assertEquals(array(new FileResource($resource.'.dat')), $catalogue->getResources());
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Translation\Exception\NotFoundResourceException
-     */
-    public function testLoadNonExistingResource()
-    {
-        $loader = new IcuDatFileLoader();
-        $loader->load(__DIR__.'/../fixtures/non-existing.txt', 'en', 'domain1');
-    }
-}
diff --git a/vendor/symfony/translation/Tests/Loader/IcuResFileLoaderTest.php b/vendor/symfony/translation/Tests/Loader/IcuResFileLoaderTest.php
deleted file mode 100644
index 1a935c0..0000000
--- a/vendor/symfony/translation/Tests/Loader/IcuResFileLoaderTest.php
+++ /dev/null
@@ -1,55 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Translation\Tests\Loader;
-
-use Symfony\Component\Translation\Loader\IcuResFileLoader;
-use Symfony\Component\Config\Resource\DirectoryResource;
-
-class IcuResFileLoaderTest extends LocalizedTestCase
-{
-    protected function setUp()
-    {
-        if (!extension_loaded('intl')) {
-            $this->markTestSkipped('This test requires intl extension to work.');
-        }
-    }
-
-    public function testLoad()
-    {
-        // resource is build using genrb command
-        $loader = new IcuResFileLoader();
-        $resource = __DIR__.'/../fixtures/resourcebundle/res';
-        $catalogue = $loader->load($resource, 'en', 'domain1');
-
-        $this->assertEquals(array('foo' => 'bar'), $catalogue->all('domain1'));
-        $this->assertEquals('en', $catalogue->getLocale());
-        $this->assertEquals(array(new DirectoryResource($resource)), $catalogue->getResources());
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Translation\Exception\NotFoundResourceException
-     */
-    public function testLoadNonExistingResource()
-    {
-        $loader = new IcuResFileLoader();
-        $loader->load(__DIR__.'/../fixtures/non-existing.txt', 'en', 'domain1');
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Translation\Exception\InvalidResourceException
-     */
-    public function testLoadInvalidResource()
-    {
-        $loader = new IcuResFileLoader();
-        $loader->load(__DIR__.'/../fixtures/resourcebundle/corrupted', 'en', 'domain1');
-    }
-}
diff --git a/vendor/symfony/translation/Tests/Loader/IniFileLoaderTest.php b/vendor/symfony/translation/Tests/Loader/IniFileLoaderTest.php
deleted file mode 100644
index 1a5de0e..0000000
--- a/vendor/symfony/translation/Tests/Loader/IniFileLoaderTest.php
+++ /dev/null
@@ -1,50 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Translation\Tests\Loader;
-
-use Symfony\Component\Translation\Loader\IniFileLoader;
-use Symfony\Component\Config\Resource\FileResource;
-
-class IniFileLoaderTest extends \PHPUnit_Framework_TestCase
-{
-    public function testLoad()
-    {
-        $loader = new IniFileLoader();
-        $resource = __DIR__.'/../fixtures/resources.ini';
-        $catalogue = $loader->load($resource, 'en', 'domain1');
-
-        $this->assertEquals(array('foo' => 'bar'), $catalogue->all('domain1'));
-        $this->assertEquals('en', $catalogue->getLocale());
-        $this->assertEquals(array(new FileResource($resource)), $catalogue->getResources());
-    }
-
-    public function testLoadDoesNothingIfEmpty()
-    {
-        $loader = new IniFileLoader();
-        $resource = __DIR__.'/../fixtures/empty.ini';
-        $catalogue = $loader->load($resource, 'en', 'domain1');
-
-        $this->assertEquals(array(), $catalogue->all('domain1'));
-        $this->assertEquals('en', $catalogue->getLocale());
-        $this->assertEquals(array(new FileResource($resource)), $catalogue->getResources());
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Translation\Exception\NotFoundResourceException
-     */
-    public function testLoadNonExistingResource()
-    {
-        $loader = new IniFileLoader();
-        $resource = __DIR__.'/../fixtures/non-existing.ini';
-        $loader->load($resource, 'en', 'domain1');
-    }
-}
diff --git a/vendor/symfony/translation/Tests/Loader/JsonFileLoaderTest.php b/vendor/symfony/translation/Tests/Loader/JsonFileLoaderTest.php
deleted file mode 100644
index 6d4f353..0000000
--- a/vendor/symfony/translation/Tests/Loader/JsonFileLoaderTest.php
+++ /dev/null
@@ -1,68 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Translation\Tests\Loader;
-
-use Symfony\Component\Translation\Loader\JsonFileLoader;
-use Symfony\Component\Config\Resource\FileResource;
-
-class JsonFileLoaderTest extends \PHPUnit_Framework_TestCase
-{
-    protected function setUp()
-    {
-        if (!class_exists('Symfony\Component\Config\Loader\Loader')) {
-            $this->markTestSkipped('The "Config" component is not available');
-        }
-    }
-
-    public function testLoad()
-    {
-        $loader = new JsonFileLoader();
-        $resource = __DIR__.'/../fixtures/resources.json';
-        $catalogue = $loader->load($resource, 'en', 'domain1');
-
-        $this->assertEquals(array('foo' => 'bar'), $catalogue->all('domain1'));
-        $this->assertEquals('en', $catalogue->getLocale());
-        $this->assertEquals(array(new FileResource($resource)), $catalogue->getResources());
-    }
-
-    public function testLoadDoesNothingIfEmpty()
-    {
-        $loader = new JsonFileLoader();
-        $resource = __DIR__.'/../fixtures/empty.json';
-        $catalogue = $loader->load($resource, 'en', 'domain1');
-
-        $this->assertEquals(array(), $catalogue->all('domain1'));
-        $this->assertEquals('en', $catalogue->getLocale());
-        $this->assertEquals(array(new FileResource($resource)), $catalogue->getResources());
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Translation\Exception\NotFoundResourceException
-     */
-    public function testLoadNonExistingResource()
-    {
-        $loader = new JsonFileLoader();
-        $resource = __DIR__.'/../fixtures/non-existing.json';
-        $loader->load($resource, 'en', 'domain1');
-    }
-
-    /**
-     * @expectedException           \Symfony\Component\Translation\Exception\InvalidResourceException
-     * @expectedExceptionMessage    Error parsing JSON - Syntax error, malformed JSON
-     */
-    public function testParseException()
-    {
-        $loader = new JsonFileLoader();
-        $resource = __DIR__.'/../fixtures/malformed.json';
-        $loader->load($resource, 'en', 'domain1');
-    }
-}
diff --git a/vendor/symfony/translation/Tests/Loader/LocalizedTestCase.php b/vendor/symfony/translation/Tests/Loader/LocalizedTestCase.php
deleted file mode 100644
index 9d7c5d7..0000000
--- a/vendor/symfony/translation/Tests/Loader/LocalizedTestCase.php
+++ /dev/null
@@ -1,22 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Translation\Tests\Loader;
-
-abstract class LocalizedTestCase extends \PHPUnit_Framework_TestCase
-{
-    protected function setUp()
-    {
-        if (!extension_loaded('intl')) {
-            $this->markTestSkipped('The "intl" extension is not available');
-        }
-    }
-}
diff --git a/vendor/symfony/translation/Tests/Loader/MoFileLoaderTest.php b/vendor/symfony/translation/Tests/Loader/MoFileLoaderTest.php
deleted file mode 100644
index 34078d0..0000000
--- a/vendor/symfony/translation/Tests/Loader/MoFileLoaderTest.php
+++ /dev/null
@@ -1,71 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Translation\Tests\Loader;
-
-use Symfony\Component\Translation\Loader\MoFileLoader;
-use Symfony\Component\Config\Resource\FileResource;
-
-class MoFileLoaderTest extends \PHPUnit_Framework_TestCase
-{
-    public function testLoad()
-    {
-        $loader = new MoFileLoader();
-        $resource = __DIR__.'/../fixtures/resources.mo';
-        $catalogue = $loader->load($resource, 'en', 'domain1');
-
-        $this->assertEquals(array('foo' => 'bar'), $catalogue->all('domain1'));
-        $this->assertEquals('en', $catalogue->getLocale());
-        $this->assertEquals(array(new FileResource($resource)), $catalogue->getResources());
-    }
-
-    public function testLoadPlurals()
-    {
-        $loader = new MoFileLoader();
-        $resource = __DIR__.'/../fixtures/plurals.mo';
-        $catalogue = $loader->load($resource, 'en', 'domain1');
-
-        $this->assertEquals(array('foo' => 'bar', 'foos' => '{0} bar|{1} bars'), $catalogue->all('domain1'));
-        $this->assertEquals('en', $catalogue->getLocale());
-        $this->assertEquals(array(new FileResource($resource)), $catalogue->getResources());
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Translation\Exception\NotFoundResourceException
-     */
-    public function testLoadNonExistingResource()
-    {
-        $loader = new MoFileLoader();
-        $resource = __DIR__.'/../fixtures/non-existing.mo';
-        $loader->load($resource, 'en', 'domain1');
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Translation\Exception\InvalidResourceException
-     */
-    public function testLoadInvalidResource()
-    {
-        $loader = new MoFileLoader();
-        $resource = __DIR__.'/../fixtures/empty.mo';
-        $loader->load($resource, 'en', 'domain1');
-    }
-
-    public function testLoadEmptyTranslation()
-    {
-        $loader = new MoFileLoader();
-        $resource = __DIR__.'/../fixtures/empty-translation.mo';
-        $catalogue = $loader->load($resource, 'en', 'message');
-
-        $this->assertEquals(array(), $catalogue->all('message'));
-        $this->assertEquals('en', $catalogue->getLocale());
-        $this->assertEquals(array(new FileResource($resource)), $catalogue->getResources());
-    }
-}
diff --git a/vendor/symfony/translation/Tests/Loader/PhpFileLoaderTest.php b/vendor/symfony/translation/Tests/Loader/PhpFileLoaderTest.php
deleted file mode 100644
index 0816b0f..0000000
--- a/vendor/symfony/translation/Tests/Loader/PhpFileLoaderTest.php
+++ /dev/null
@@ -1,49 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Translation\Tests\Loader;
-
-use Symfony\Component\Translation\Loader\PhpFileLoader;
-use Symfony\Component\Config\Resource\FileResource;
-
-class PhpFileLoaderTest extends \PHPUnit_Framework_TestCase
-{
-    public function testLoad()
-    {
-        $loader = new PhpFileLoader();
-        $resource = __DIR__.'/../fixtures/resources.php';
-        $catalogue = $loader->load($resource, 'en', 'domain1');
-
-        $this->assertEquals(array('foo' => 'bar'), $catalogue->all('domain1'));
-        $this->assertEquals('en', $catalogue->getLocale());
-        $this->assertEquals(array(new FileResource($resource)), $catalogue->getResources());
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Translation\Exception\NotFoundResourceException
-     */
-    public function testLoadNonExistingResource()
-    {
-        $loader = new PhpFileLoader();
-        $resource = __DIR__.'/../fixtures/non-existing.php';
-        $loader->load($resource, 'en', 'domain1');
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Translation\Exception\InvalidResourceException
-     */
-    public function testLoadThrowsAnExceptionIfFileNotLocal()
-    {
-        $loader = new PhpFileLoader();
-        $resource = 'http://example.com/resources.php';
-        $loader->load($resource, 'en', 'domain1');
-    }
-}
diff --git a/vendor/symfony/translation/Tests/Loader/PoFileLoaderTest.php b/vendor/symfony/translation/Tests/Loader/PoFileLoaderTest.php
deleted file mode 100644
index 87090eb..0000000
--- a/vendor/symfony/translation/Tests/Loader/PoFileLoaderTest.php
+++ /dev/null
@@ -1,96 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Translation\Tests\Loader;
-
-use Symfony\Component\Translation\Loader\PoFileLoader;
-use Symfony\Component\Config\Resource\FileResource;
-
-class PoFileLoaderTest extends \PHPUnit_Framework_TestCase
-{
-    public function testLoad()
-    {
-        $loader = new PoFileLoader();
-        $resource = __DIR__.'/../fixtures/resources.po';
-        $catalogue = $loader->load($resource, 'en', 'domain1');
-
-        $this->assertEquals(array('foo' => 'bar'), $catalogue->all('domain1'));
-        $this->assertEquals('en', $catalogue->getLocale());
-        $this->assertEquals(array(new FileResource($resource)), $catalogue->getResources());
-    }
-
-    public function testLoadPlurals()
-    {
-        $loader = new PoFileLoader();
-        $resource = __DIR__.'/../fixtures/plurals.po';
-        $catalogue = $loader->load($resource, 'en', 'domain1');
-
-        $this->assertEquals(array('foo' => 'bar', 'foos' => 'bar|bars'), $catalogue->all('domain1'));
-        $this->assertEquals('en', $catalogue->getLocale());
-        $this->assertEquals(array(new FileResource($resource)), $catalogue->getResources());
-    }
-
-    public function testLoadDoesNothingIfEmpty()
-    {
-        $loader = new PoFileLoader();
-        $resource = __DIR__.'/../fixtures/empty.po';
-        $catalogue = $loader->load($resource, 'en', 'domain1');
-
-        $this->assertEquals(array(), $catalogue->all('domain1'));
-        $this->assertEquals('en', $catalogue->getLocale());
-        $this->assertEquals(array(new FileResource($resource)), $catalogue->getResources());
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Translation\Exception\NotFoundResourceException
-     */
-    public function testLoadNonExistingResource()
-    {
-        $loader = new PoFileLoader();
-        $resource = __DIR__.'/../fixtures/non-existing.po';
-        $loader->load($resource, 'en', 'domain1');
-    }
-
-    public function testLoadEmptyTranslation()
-    {
-        $loader = new PoFileLoader();
-        $resource = __DIR__.'/../fixtures/empty-translation.po';
-        $catalogue = $loader->load($resource, 'en', 'domain1');
-
-        $this->assertEquals(array('foo' => ''), $catalogue->all('domain1'));
-        $this->assertEquals('en', $catalogue->getLocale());
-        $this->assertEquals(array(new FileResource($resource)), $catalogue->getResources());
-    }
-
-    public function testEscapedId()
-    {
-        $loader = new PoFileLoader();
-        $resource = __DIR__.'/../fixtures/escaped-id.po';
-        $catalogue = $loader->load($resource, 'en', 'domain1');
-
-        $messages = $catalogue->all('domain1');
-        $this->assertArrayHasKey('escaped "foo"', $messages);
-        $this->assertEquals('escaped "bar"', $messages['escaped "foo"']);
-    }
-
-    public function testEscapedIdPlurals()
-    {
-        $loader = new PoFileLoader();
-        $resource = __DIR__.'/../fixtures/escaped-id-plurals.po';
-        $catalogue = $loader->load($resource, 'en', 'domain1');
-
-        $messages = $catalogue->all('domain1');
-        $this->assertArrayHasKey('escaped "foo"', $messages);
-        $this->assertArrayHasKey('escaped "foos"', $messages);
-        $this->assertEquals('escaped "bar"', $messages['escaped "foo"']);
-        $this->assertEquals('escaped "bar"|escaped "bars"', $messages['escaped "foos"']);
-    }
-}
diff --git a/vendor/symfony/translation/Tests/Loader/QtFileLoaderTest.php b/vendor/symfony/translation/Tests/Loader/QtFileLoaderTest.php
deleted file mode 100644
index 3aca86a..0000000
--- a/vendor/symfony/translation/Tests/Loader/QtFileLoaderTest.php
+++ /dev/null
@@ -1,67 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Translation\Tests\Loader;
-
-use Symfony\Component\Translation\Loader\QtFileLoader;
-use Symfony\Component\Config\Resource\FileResource;
-
-class QtFileLoaderTest extends \PHPUnit_Framework_TestCase
-{
-    public function testLoad()
-    {
-        $loader = new QtFileLoader();
-        $resource = __DIR__.'/../fixtures/resources.ts';
-        $catalogue = $loader->load($resource, 'en', 'resources');
-
-        $this->assertEquals(array('foo' => 'bar'), $catalogue->all('resources'));
-        $this->assertEquals('en', $catalogue->getLocale());
-        $this->assertEquals(array(new FileResource($resource)), $catalogue->getResources());
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Translation\Exception\NotFoundResourceException
-     */
-    public function testLoadNonExistingResource()
-    {
-        $loader = new QtFileLoader();
-        $resource = __DIR__.'/../fixtures/non-existing.ts';
-        $loader->load($resource, 'en', 'domain1');
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Translation\Exception\InvalidResourceException
-     */
-    public function testLoadNonLocalResource()
-    {
-        $loader = new QtFileLoader();
-        $resource = 'http://domain1.com/resources.ts';
-        $loader->load($resource, 'en', 'domain1');
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Translation\Exception\InvalidResourceException
-     */
-    public function testLoadInvalidResource()
-    {
-        $loader = new QtFileLoader();
-        $resource = __DIR__.'/../fixtures/invalid-xml-resources.xlf';
-        $loader->load($resource, 'en', 'domain1');
-    }
-
-    public function testLoadEmptyResource()
-    {
-        $loader = new QtFileLoader();
-        $resource = __DIR__.'/../fixtures/empty.xlf';
-        $this->setExpectedException('Symfony\Component\Translation\Exception\InvalidResourceException', sprintf('Unable to load "%s".', $resource));
-        $loader->load($resource, 'en', 'domain1');
-    }
-}
diff --git a/vendor/symfony/translation/Tests/Loader/XliffFileLoaderTest.php b/vendor/symfony/translation/Tests/Loader/XliffFileLoaderTest.php
deleted file mode 100644
index f1de081..0000000
--- a/vendor/symfony/translation/Tests/Loader/XliffFileLoaderTest.php
+++ /dev/null
@@ -1,143 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Translation\Tests\Loader;
-
-use Symfony\Component\Translation\Loader\XliffFileLoader;
-use Symfony\Component\Config\Resource\FileResource;
-
-class XliffFileLoaderTest extends \PHPUnit_Framework_TestCase
-{
-    public function testLoad()
-    {
-        $loader = new XliffFileLoader();
-        $resource = __DIR__.'/../fixtures/resources.xlf';
-        $catalogue = $loader->load($resource, 'en', 'domain1');
-
-        $this->assertEquals('en', $catalogue->getLocale());
-        $this->assertEquals(array(new FileResource($resource)), $catalogue->getResources());
-        $this->assertSame(array(), libxml_get_errors());
-        $this->assertContainsOnly('string', $catalogue->all('domain1'));
-    }
-
-    public function testLoadWithInternalErrorsEnabled()
-    {
-        libxml_use_internal_errors(true);
-
-        $this->assertSame(array(), libxml_get_errors());
-
-        $loader = new XliffFileLoader();
-        $resource = __DIR__.'/../fixtures/resources.xlf';
-        $catalogue = $loader->load($resource, 'en', 'domain1');
-
-        $this->assertEquals('en', $catalogue->getLocale());
-        $this->assertEquals(array(new FileResource($resource)), $catalogue->getResources());
-        $this->assertSame(array(), libxml_get_errors());
-    }
-
-    public function testLoadWithResname()
-    {
-        $loader = new XliffFileLoader();
-        $catalogue = $loader->load(__DIR__.'/../fixtures/resname.xlf', 'en', 'domain1');
-
-        $this->assertEquals(array('foo' => 'bar', 'bar' => 'baz', 'baz' => 'foo'), $catalogue->all('domain1'));
-    }
-
-    public function testIncompleteResource()
-    {
-        $loader = new XliffFileLoader();
-        $catalogue = $loader->load(__DIR__.'/../fixtures/resources.xlf', 'en', 'domain1');
-
-        $this->assertEquals(array('foo' => 'bar', 'extra' => 'extra', 'key' => '', 'test' => 'with'), $catalogue->all('domain1'));
-    }
-
-    public function testEncoding()
-    {
-        if (!function_exists('iconv') && !function_exists('mb_convert_encoding')) {
-            $this->markTestSkipped('The iconv and mbstring extensions are not available.');
-        }
-
-        $loader = new XliffFileLoader();
-        $catalogue = $loader->load(__DIR__.'/../fixtures/encoding.xlf', 'en', 'domain1');
-
-        $this->assertEquals(utf8_decode('föö'), $catalogue->get('bar', 'domain1'));
-        $this->assertEquals(utf8_decode('bär'), $catalogue->get('foo', 'domain1'));
-        $this->assertEquals(array('notes' => array(array('content' => utf8_decode('bäz')))), $catalogue->getMetadata('foo', 'domain1'));
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Translation\Exception\InvalidResourceException
-     */
-    public function testLoadInvalidResource()
-    {
-        $loader = new XliffFileLoader();
-        $loader->load(__DIR__.'/../fixtures/resources.php', 'en', 'domain1');
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Translation\Exception\InvalidResourceException
-     */
-    public function testLoadResourceDoesNotValidate()
-    {
-        $loader = new XliffFileLoader();
-        $loader->load(__DIR__.'/../fixtures/non-valid.xlf', 'en', 'domain1');
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Translation\Exception\NotFoundResourceException
-     */
-    public function testLoadNonExistingResource()
-    {
-        $loader = new XliffFileLoader();
-        $resource = __DIR__.'/../fixtures/non-existing.xlf';
-        $loader->load($resource, 'en', 'domain1');
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Translation\Exception\InvalidResourceException
-     */
-    public function testLoadThrowsAnExceptionIfFileNotLocal()
-    {
-        $loader = new XliffFileLoader();
-        $resource = 'http://example.com/resources.xlf';
-        $loader->load($resource, 'en', 'domain1');
-    }
-
-    /**
-     * @expectedException        \Symfony\Component\Translation\Exception\InvalidResourceException
-     * @expectedExceptionMessage Document types are not allowed.
-     */
-    public function testDocTypeIsNotAllowed()
-    {
-        $loader = new XliffFileLoader();
-        $loader->load(__DIR__.'/../fixtures/withdoctype.xlf', 'en', 'domain1');
-    }
-
-    public function testParseEmptyFile()
-    {
-        $loader = new XliffFileLoader();
-        $resource = __DIR__.'/../fixtures/empty.xlf';
-        $this->setExpectedException('Symfony\Component\Translation\Exception\InvalidResourceException', sprintf('Unable to load "%s":', $resource));
-        $loader->load($resource, 'en', 'domain1');
-    }
-
-    public function testLoadNotes()
-    {
-        $loader = new XliffFileLoader();
-        $catalogue = $loader->load(__DIR__.'/../fixtures/withnote.xlf', 'en', 'domain1');
-
-        $this->assertEquals(array('notes' => array(array('priority' => 1, 'content' => 'foo'))), $catalogue->getMetadata('foo', 'domain1'));
-        // message without target
-        $this->assertEquals(array('notes' => array(array('content' => 'bar', 'from' => 'foo'))), $catalogue->getMetadata('extra', 'domain1'));
-        // message with empty target
-        $this->assertEquals(array('notes' => array(array('content' => 'baz'), array('priority' => 2, 'from' => 'bar', 'content' => 'qux'))), $catalogue->getMetadata('key', 'domain1'));
-    }
-}
diff --git a/vendor/symfony/translation/Tests/Loader/YamlFileLoaderTest.php b/vendor/symfony/translation/Tests/Loader/YamlFileLoaderTest.php
deleted file mode 100644
index 00f7163..0000000
--- a/vendor/symfony/translation/Tests/Loader/YamlFileLoaderTest.php
+++ /dev/null
@@ -1,70 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Translation\Tests\Loader;
-
-use Symfony\Component\Translation\Loader\YamlFileLoader;
-use Symfony\Component\Config\Resource\FileResource;
-
-class YamlFileLoaderTest extends \PHPUnit_Framework_TestCase
-{
-    public function testLoad()
-    {
-        $loader = new YamlFileLoader();
-        $resource = __DIR__.'/../fixtures/resources.yml';
-        $catalogue = $loader->load($resource, 'en', 'domain1');
-
-        $this->assertEquals(array('foo' => 'bar'), $catalogue->all('domain1'));
-        $this->assertEquals('en', $catalogue->getLocale());
-        $this->assertEquals(array(new FileResource($resource)), $catalogue->getResources());
-    }
-
-    public function testLoadDoesNothingIfEmpty()
-    {
-        $loader = new YamlFileLoader();
-        $resource = __DIR__.'/../fixtures/empty.yml';
-        $catalogue = $loader->load($resource, 'en', 'domain1');
-
-        $this->assertEquals(array(), $catalogue->all('domain1'));
-        $this->assertEquals('en', $catalogue->getLocale());
-        $this->assertEquals(array(new FileResource($resource)), $catalogue->getResources());
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Translation\Exception\NotFoundResourceException
-     */
-    public function testLoadNonExistingResource()
-    {
-        $loader = new YamlFileLoader();
-        $resource = __DIR__.'/../fixtures/non-existing.yml';
-        $loader->load($resource, 'en', 'domain1');
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Translation\Exception\InvalidResourceException
-     */
-    public function testLoadThrowsAnExceptionIfFileNotLocal()
-    {
-        $loader = new YamlFileLoader();
-        $resource = 'http://example.com/resources.yml';
-        $loader->load($resource, 'en', 'domain1');
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Translation\Exception\InvalidResourceException
-     */
-    public function testLoadThrowsAnExceptionIfNotAnArray()
-    {
-        $loader = new YamlFileLoader();
-        $resource = __DIR__.'/../fixtures/non-valid.yml';
-        $loader->load($resource, 'en', 'domain1');
-    }
-}
diff --git a/vendor/symfony/translation/Tests/LoggingTranslatorTest.php b/vendor/symfony/translation/Tests/LoggingTranslatorTest.php
deleted file mode 100644
index ab98d72..0000000
--- a/vendor/symfony/translation/Tests/LoggingTranslatorTest.php
+++ /dev/null
@@ -1,56 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Translation\Tests;
-
-use Symfony\Component\Translation\Translator;
-use Symfony\Component\Translation\LoggingTranslator;
-use Symfony\Component\Translation\Loader\ArrayLoader;
-
-class LoggingTranslatorTest extends \PHPUnit_Framework_TestCase
-{
-    protected function setUp()
-    {
-        if (!interface_exists('Psr\Log\LoggerInterface')) {
-            $this->markTestSkipped('The "LoggerInterface" is not available');
-        }
-    }
-
-    public function testTransWithNoTranslationIsLogged()
-    {
-        $logger = $this->getMock('Psr\Log\LoggerInterface');
-        $logger->expects($this->exactly(2))
-            ->method('warning')
-            ->with('Translation not found.')
-        ;
-
-        $translator = new Translator('ar');
-        $loggableTranslator = new LoggingTranslator($translator, $logger);
-        $loggableTranslator->transChoice('some_message2', 10, array('%count%' => 10));
-        $loggableTranslator->trans('bar');
-    }
-
-    public function testTransChoiceFallbackIsLogged()
-    {
-        $logger = $this->getMock('Psr\Log\LoggerInterface');
-        $logger->expects($this->once())
-            ->method('debug')
-            ->with('Translation use fallback catalogue.')
-        ;
-
-        $translator = new Translator('ar');
-        $translator->setFallbackLocales(array('en'));
-        $translator->addLoader('array', new ArrayLoader());
-        $translator->addResource('array', array('some_message2' => 'one thing|%count% things'), 'en');
-        $loggableTranslator = new LoggingTranslator($translator, $logger);
-        $loggableTranslator->transChoice('some_message2', 10, array('%count%' => 10));
-    }
-}
diff --git a/vendor/symfony/translation/Tests/MessageCatalogueTest.php b/vendor/symfony/translation/Tests/MessageCatalogueTest.php
deleted file mode 100644
index 6f55b8c..0000000
--- a/vendor/symfony/translation/Tests/MessageCatalogueTest.php
+++ /dev/null
@@ -1,214 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Translation\Tests;
-
-use Symfony\Component\Translation\MessageCatalogue;
-
-class MessageCatalogueTest extends \PHPUnit_Framework_TestCase
-{
-    public function testGetLocale()
-    {
-        $catalogue = new MessageCatalogue('en');
-
-        $this->assertEquals('en', $catalogue->getLocale());
-    }
-
-    public function testGetDomains()
-    {
-        $catalogue = new MessageCatalogue('en', array('domain1' => array(), 'domain2' => array()));
-
-        $this->assertEquals(array('domain1', 'domain2'), $catalogue->getDomains());
-    }
-
-    public function testAll()
-    {
-        $catalogue = new MessageCatalogue('en', $messages = array('domain1' => array('foo' => 'foo'), 'domain2' => array('bar' => 'bar')));
-
-        $this->assertEquals(array('foo' => 'foo'), $catalogue->all('domain1'));
-        $this->assertEquals(array(), $catalogue->all('domain88'));
-        $this->assertEquals($messages, $catalogue->all());
-    }
-
-    public function testHas()
-    {
-        $catalogue = new MessageCatalogue('en', array('domain1' => array('foo' => 'foo'), 'domain2' => array('bar' => 'bar')));
-
-        $this->assertTrue($catalogue->has('foo', 'domain1'));
-        $this->assertFalse($catalogue->has('bar', 'domain1'));
-        $this->assertFalse($catalogue->has('foo', 'domain88'));
-    }
-
-    public function testGetSet()
-    {
-        $catalogue = new MessageCatalogue('en', array('domain1' => array('foo' => 'foo'), 'domain2' => array('bar' => 'bar')));
-        $catalogue->set('foo1', 'foo1', 'domain1');
-
-        $this->assertEquals('foo', $catalogue->get('foo', 'domain1'));
-        $this->assertEquals('foo1', $catalogue->get('foo1', 'domain1'));
-    }
-
-    public function testAdd()
-    {
-        $catalogue = new MessageCatalogue('en', array('domain1' => array('foo' => 'foo'), 'domain2' => array('bar' => 'bar')));
-        $catalogue->add(array('foo1' => 'foo1'), 'domain1');
-
-        $this->assertEquals('foo', $catalogue->get('foo', 'domain1'));
-        $this->assertEquals('foo1', $catalogue->get('foo1', 'domain1'));
-
-        $catalogue->add(array('foo' => 'bar'), 'domain1');
-        $this->assertEquals('bar', $catalogue->get('foo', 'domain1'));
-        $this->assertEquals('foo1', $catalogue->get('foo1', 'domain1'));
-
-        $catalogue->add(array('foo' => 'bar'), 'domain88');
-        $this->assertEquals('bar', $catalogue->get('foo', 'domain88'));
-    }
-
-    public function testReplace()
-    {
-        $catalogue = new MessageCatalogue('en', array('domain1' => array('foo' => 'foo'), 'domain2' => array('bar' => 'bar')));
-        $catalogue->replace($messages = array('foo1' => 'foo1'), 'domain1');
-
-        $this->assertEquals($messages, $catalogue->all('domain1'));
-    }
-
-    public function testAddCatalogue()
-    {
-        $r = $this->getMock('Symfony\Component\Config\Resource\ResourceInterface');
-        $r->expects($this->any())->method('__toString')->will($this->returnValue('r'));
-
-        $r1 = $this->getMock('Symfony\Component\Config\Resource\ResourceInterface');
-        $r1->expects($this->any())->method('__toString')->will($this->returnValue('r1'));
-
-        $catalogue = new MessageCatalogue('en', array('domain1' => array('foo' => 'foo'), 'domain2' => array('bar' => 'bar')));
-        $catalogue->addResource($r);
-
-        $catalogue1 = new MessageCatalogue('en', array('domain1' => array('foo1' => 'foo1')));
-        $catalogue1->addResource($r1);
-
-        $catalogue->addCatalogue($catalogue1);
-
-        $this->assertEquals('foo', $catalogue->get('foo', 'domain1'));
-        $this->assertEquals('foo1', $catalogue->get('foo1', 'domain1'));
-
-        $this->assertEquals(array($r, $r1), $catalogue->getResources());
-    }
-
-    public function testAddFallbackCatalogue()
-    {
-        $r = $this->getMock('Symfony\Component\Config\Resource\ResourceInterface');
-        $r->expects($this->any())->method('__toString')->will($this->returnValue('r'));
-
-        $r1 = $this->getMock('Symfony\Component\Config\Resource\ResourceInterface');
-        $r1->expects($this->any())->method('__toString')->will($this->returnValue('r1'));
-
-        $catalogue = new MessageCatalogue('en_US', array('domain1' => array('foo' => 'foo'), 'domain2' => array('bar' => 'bar')));
-        $catalogue->addResource($r);
-
-        $catalogue1 = new MessageCatalogue('en', array('domain1' => array('foo' => 'bar', 'foo1' => 'foo1')));
-        $catalogue1->addResource($r1);
-
-        $catalogue->addFallbackCatalogue($catalogue1);
-
-        $this->assertEquals('foo', $catalogue->get('foo', 'domain1'));
-        $this->assertEquals('foo1', $catalogue->get('foo1', 'domain1'));
-
-        $this->assertEquals(array($r, $r1), $catalogue->getResources());
-    }
-
-    /**
-     * @expectedException \LogicException
-     */
-    public function testAddFallbackCatalogueWithParentCircularReference()
-    {
-        $main = new MessageCatalogue('en_US');
-        $fallback = new MessageCatalogue('fr_FR');
-
-        $fallback->addFallbackCatalogue($main);
-        $main->addFallbackCatalogue($fallback);
-    }
-
-    /**
-     * @expectedException \LogicException
-     */
-    public function testAddFallbackCatalogueWithFallbackCircularReference()
-    {
-        $fr = new MessageCatalogue('fr');
-        $en = new MessageCatalogue('en');
-        $es = new MessageCatalogue('es');
-
-        $fr->addFallbackCatalogue($en);
-        $es->addFallbackCatalogue($en);
-        $en->addFallbackCatalogue($fr);
-    }
-
-    /**
-     * @expectedException \LogicException
-     */
-    public function testAddCatalogueWhenLocaleIsNotTheSameAsTheCurrentOne()
-    {
-        $catalogue = new MessageCatalogue('en');
-        $catalogue->addCatalogue(new MessageCatalogue('fr', array()));
-    }
-
-    public function testGetAddResource()
-    {
-        $catalogue = new MessageCatalogue('en');
-        $r = $this->getMock('Symfony\Component\Config\Resource\ResourceInterface');
-        $r->expects($this->any())->method('__toString')->will($this->returnValue('r'));
-        $catalogue->addResource($r);
-        $catalogue->addResource($r);
-        $r1 = $this->getMock('Symfony\Component\Config\Resource\ResourceInterface');
-        $r1->expects($this->any())->method('__toString')->will($this->returnValue('r1'));
-        $catalogue->addResource($r1);
-
-        $this->assertEquals(array($r, $r1), $catalogue->getResources());
-    }
-
-    public function testMetadataDelete()
-    {
-        $catalogue = new MessageCatalogue('en');
-        $this->assertEquals(array(), $catalogue->getMetadata('', ''), 'Metadata is empty');
-        $catalogue->deleteMetadata('key', 'messages');
-        $catalogue->deleteMetadata('', 'messages');
-        $catalogue->deleteMetadata();
-    }
-
-    public function testMetadataSetGetDelete()
-    {
-        $catalogue = new MessageCatalogue('en');
-        $catalogue->setMetadata('key', 'value');
-        $this->assertEquals('value', $catalogue->getMetadata('key', 'messages'), "Metadata 'key' = 'value'");
-
-        $catalogue->setMetadata('key2', array());
-        $this->assertEquals(array(), $catalogue->getMetadata('key2', 'messages'), 'Metadata key2 is array');
-
-        $catalogue->deleteMetadata('key2', 'messages');
-        $this->assertNull($catalogue->getMetadata('key2', 'messages'), 'Metadata key2 should is deleted.');
-
-        $catalogue->deleteMetadata('key2', 'domain');
-        $this->assertNull($catalogue->getMetadata('key2', 'domain'), 'Metadata key2 should is deleted.');
-    }
-
-    public function testMetadataMerge()
-    {
-        $cat1 = new MessageCatalogue('en');
-        $cat1->setMetadata('a', 'b');
-        $this->assertEquals(array('messages' => array('a' => 'b')), $cat1->getMetadata('', ''), 'Cat1 contains messages metadata.');
-
-        $cat2 = new MessageCatalogue('en');
-        $cat2->setMetadata('b', 'c', 'domain');
-        $this->assertEquals(array('domain' => array('b' => 'c')), $cat2->getMetadata('', ''), 'Cat2 contains domain metadata.');
-
-        $cat1->addCatalogue($cat2);
-        $this->assertEquals(array('messages' => array('a' => 'b'), 'domain' => array('b' => 'c')), $cat1->getMetadata('', ''), 'Cat1 contains merged metadata.');
-    }
-}
diff --git a/vendor/symfony/translation/Tests/MessageSelectorTest.php b/vendor/symfony/translation/Tests/MessageSelectorTest.php
deleted file mode 100644
index f89bed1..0000000
--- a/vendor/symfony/translation/Tests/MessageSelectorTest.php
+++ /dev/null
@@ -1,130 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Translation\Tests;
-
-use Symfony\Component\Translation\MessageSelector;
-
-class MessageSelectorTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @dataProvider getChooseTests
-     */
-    public function testChoose($expected, $id, $number)
-    {
-        $selector = new MessageSelector();
-
-        $this->assertEquals($expected, $selector->choose($id, $number, 'en'));
-    }
-
-    public function testReturnMessageIfExactlyOneStandardRuleIsGiven()
-    {
-        $selector = new MessageSelector();
-
-        $this->assertEquals('There are two apples', $selector->choose('There are two apples', 2, 'en'));
-    }
-
-    /**
-     * @dataProvider getNonMatchingMessages
-     * @expectedException \InvalidArgumentException
-     */
-    public function testThrowExceptionIfMatchingMessageCannotBeFound($id, $number)
-    {
-        $selector = new MessageSelector();
-
-        $selector->choose($id, $number, 'en');
-    }
-
-    public function getNonMatchingMessages()
-    {
-        return array(
-            array('{0} There are no apples|{1} There is one apple', 2),
-            array('{1} There is one apple|]1,Inf] There are %count% apples', 0),
-            array('{1} There is one apple|]2,Inf] There are %count% apples', 2),
-            array('{0} There are no apples|There is one apple', 2),
-        );
-    }
-
-    public function getChooseTests()
-    {
-        return array(
-            array('There are no apples', '{0} There are no apples|{1} There is one apple|]1,Inf] There are %count% apples', 0),
-            array('There are no apples', '{0}     There are no apples|{1} There is one apple|]1,Inf] There are %count% apples', 0),
-            array('There are no apples', '{0}There are no apples|{1} There is one apple|]1,Inf] There are %count% apples', 0),
-
-            array('There is one apple', '{0} There are no apples|{1} There is one apple|]1,Inf] There are %count% apples', 1),
-
-            array('There are %count% apples', '{0} There are no apples|{1} There is one apple|]1,Inf] There are %count% apples', 10),
-            array('There are %count% apples', '{0} There are no apples|{1} There is one apple|]1,Inf]There are %count% apples', 10),
-            array('There are %count% apples', '{0} There are no apples|{1} There is one apple|]1,Inf]     There are %count% apples', 10),
-
-            array('There are %count% apples', 'There is one apple|There are %count% apples', 0),
-            array('There is one apple', 'There is one apple|There are %count% apples', 1),
-            array('There are %count% apples', 'There is one apple|There are %count% apples', 10),
-
-            array('There are %count% apples', 'one: There is one apple|more: There are %count% apples', 0),
-            array('There is one apple', 'one: There is one apple|more: There are %count% apples', 1),
-            array('There are %count% apples', 'one: There is one apple|more: There are %count% apples', 10),
-
-            array('There are no apples', '{0} There are no apples|one: There is one apple|more: There are %count% apples', 0),
-            array('There is one apple', '{0} There are no apples|one: There is one apple|more: There are %count% apples', 1),
-            array('There are %count% apples', '{0} There are no apples|one: There is one apple|more: There are %count% apples', 10),
-
-            array('', '{0}|{1} There is one apple|]1,Inf] There are %count% apples', 0),
-            array('', '{0} There are no apples|{1}|]1,Inf] There are %count% apples', 1),
-
-            // Indexed only tests which are Gettext PoFile* compatible strings.
-            array('There are %count% apples', 'There is one apple|There are %count% apples', 0),
-            array('There is one apple', 'There is one apple|There are %count% apples', 1),
-            array('There are %count% apples', 'There is one apple|There are %count% apples', 2),
-
-            // Tests for float numbers
-            array('There is almost one apple', '{0} There are no apples|]0,1[ There is almost one apple|{1} There is one apple|[1,Inf] There is more than one apple', 0.7),
-            array('There is one apple', '{0} There are no apples|]0,1[There are %count% apples|{1} There is one apple|[1,Inf] There is more than one apple', 1),
-            array('There is more than one apple', '{0} There are no apples|]0,1[There are %count% apples|{1} There is one apple|[1,Inf] There is more than one apple', 1.7),
-            array('There are no apples', '{0} There are no apples|]0,1[There are %count% apples|{1} There is one apple|[1,Inf] There is more than one apple', 0),
-            array('There are no apples', '{0} There are no apples|]0,1[There are %count% apples|{1} There is one apple|[1,Inf] There is more than one apple', 0.0),
-            array('There are no apples', '{0.0} There are no apples|]0,1[There are %count% apples|{1} There is one apple|[1,Inf] There is more than one apple', 0),
-
-            // Test texts with new-lines
-            // with double-quotes and \n in id & double-quotes and actual newlines in text
-            array("This is a text with a\n            new-line in it. Selector = 0.", '{0}This is a text with a
-            new-line in it. Selector = 0.|{1}This is a text with a
-            new-line in it. Selector = 1.|[1,Inf]This is a text with a
-            new-line in it. Selector > 1.', 0),
-            // with double-quotes and \n in id and single-quotes and actual newlines in text
-            array("This is a text with a\n            new-line in it. Selector = 1.", '{0}This is a text with a
-            new-line in it. Selector = 0.|{1}This is a text with a
-            new-line in it. Selector = 1.|[1,Inf]This is a text with a
-            new-line in it. Selector > 1.', 1),
-            array("This is a text with a\n            new-line in it. Selector > 1.", '{0}This is a text with a
-            new-line in it. Selector = 0.|{1}This is a text with a
-            new-line in it. Selector = 1.|[1,Inf]This is a text with a
-            new-line in it. Selector > 1.', 5),
-            // with double-quotes and id split accros lines
-            array('This is a text with a
-            new-line in it. Selector = 1.', '{0}This is a text with a
-            new-line in it. Selector = 0.|{1}This is a text with a
-            new-line in it. Selector = 1.|[1,Inf]This is a text with a
-            new-line in it. Selector > 1.', 1),
-            // with single-quotes and id split accros lines
-            array('This is a text with a
-            new-line in it. Selector > 1.', '{0}This is a text with a
-            new-line in it. Selector = 0.|{1}This is a text with a
-            new-line in it. Selector = 1.|[1,Inf]This is a text with a
-            new-line in it. Selector > 1.', 5),
-            // with single-quotes and \n in text
-            array('This is a text with a\nnew-line in it. Selector = 0.', '{0}This is a text with a\nnew-line in it. Selector = 0.|{1}This is a text with a\nnew-line in it. Selector = 1.|[1,Inf]This is a text with a\nnew-line in it. Selector > 1.', 0),
-            // with double-quotes and id split accros lines
-            array("This is a text with a\nnew-line in it. Selector = 1.", "{0}This is a text with a\nnew-line in it. Selector = 0.|{1}This is a text with a\nnew-line in it. Selector = 1.|[1,Inf]This is a text with a\nnew-line in it. Selector > 1.", 1),
-        );
-    }
-}
diff --git a/vendor/symfony/translation/Tests/PluralizationRulesTest.php b/vendor/symfony/translation/Tests/PluralizationRulesTest.php
deleted file mode 100644
index 066e07f..0000000
--- a/vendor/symfony/translation/Tests/PluralizationRulesTest.php
+++ /dev/null
@@ -1,123 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Translation\Tests;
-
-use Symfony\Component\Translation\PluralizationRules;
-
-/**
- * Test should cover all languages mentioned on http://translate.sourceforge.net/wiki/l10n/pluralforms
- * and Plural forms mentioned on http://www.gnu.org/software/gettext/manual/gettext.html#Plural-forms.
- *
- * See also https://developer.mozilla.org/en/Localization_and_Plurals which mentions 15 rules having a maximum of 6 forms.
- * The mozilla code is also interesting to check for.
- *
- * As mentioned by chx http://drupal.org/node/1273968 we can cover all by testing number from 0 to 199
- *
- * The goal to cover all languages is to far fetched so this test case is smaller.
- *
- * @author Clemens Tolboom clemens@build2be.nl
- */
-class PluralizationRulesTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * We test failed langcode here.
-     *
-     * TODO: The languages mentioned in the data provide need to get fixed somehow within PluralizationRules.
-     *
-     * @dataProvider failingLangcodes
-     */
-    public function testFailedLangcodes($nplural, $langCodes)
-    {
-        $matrix = $this->generateTestData($nplural, $langCodes);
-        $this->validateMatrix($nplural, $matrix, false);
-    }
-
-    /**
-     * @dataProvider successLangcodes
-     */
-    public function testLangcodes($nplural, $langCodes)
-    {
-        $matrix = $this->generateTestData($nplural, $langCodes);
-        $this->validateMatrix($nplural, $matrix);
-    }
-
-    /**
-     * This array should contain all currently known langcodes.
-     *
-     * As it is impossible to have this ever complete we should try as hard as possible to have it almost complete.
-     *
-     * @return array
-     */
-    public function successLangcodes()
-    {
-        return array(
-            array('1', array('ay','bo', 'cgg','dz','id', 'ja', 'jbo', 'ka','kk','km','ko','ky')),
-            array('2', array('nl', 'fr', 'en', 'de', 'de_GE')),
-            array('3', array('be','bs','cs','hr')),
-            array('4', array('cy','mt', 'sl')),
-            array('5', array()),
-            array('6', array('ar')),
-        );
-    }
-
-    /**
-     * This array should be at least empty within the near future.
-     *
-     * This both depends on a complete list trying to add above as understanding
-     * the plural rules of the current failing languages.
-     *
-     * @return array with nplural together with langcodes
-     */
-    public function failingLangcodes()
-    {
-        return array(
-            array('1', array('fa')),
-            array('2', array('jbo')),
-            array('3', array('cbs')),
-            array('4', array('gd','kw')),
-            array('5', array('ga')),
-            array('6', array()),
-        );
-    }
-
-    /**
-     * We validate only on the plural coverage. Thus the real rules is not tested.
-     *
-     * @param string $nplural       plural expected
-     * @param array  $matrix        containing langcodes and their plural index values.
-     * @param bool   $expectSuccess
-     */
-    protected function validateMatrix($nplural, $matrix, $expectSuccess = true)
-    {
-        foreach ($matrix as $langCode => $data) {
-            $indexes = array_flip($data);
-            if ($expectSuccess) {
-                $this->assertEquals($nplural, count($indexes), "Langcode '$langCode' has '$nplural' plural forms.");
-            } else {
-                $this->assertNotEquals((int) $nplural, count($indexes), "Langcode '$langCode' has '$nplural' plural forms.");
-            }
-        }
-    }
-
-    protected function generateTestData($plural, $langCodes)
-    {
-        $matrix = array();
-        foreach ($langCodes as $langCode) {
-            for ($count = 0; $count < 200; ++$count) {
-                $plural = PluralizationRules::get($count, $langCode);
-                $matrix[$langCode][$count] = $plural;
-            }
-        }
-
-        return $matrix;
-    }
-}
diff --git a/vendor/symfony/translation/Tests/TranslatorCacheTest.php b/vendor/symfony/translation/Tests/TranslatorCacheTest.php
deleted file mode 100644
index abe364c..0000000
--- a/vendor/symfony/translation/Tests/TranslatorCacheTest.php
+++ /dev/null
@@ -1,299 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Translation\Tests;
-
-use Symfony\Component\Config\Resource\ResourceInterface;
-use Symfony\Component\Translation\Loader\ArrayLoader;
-use Symfony\Component\Translation\Loader\LoaderInterface;
-use Symfony\Component\Translation\Translator;
-use Symfony\Component\Translation\MessageCatalogue;
-
-class TranslatorCacheTest extends \PHPUnit_Framework_TestCase
-{
-    protected $tmpDir;
-
-    protected function setUp()
-    {
-        $this->tmpDir = sys_get_temp_dir().'/sf2_translation';
-        $this->deleteTmpDir();
-    }
-
-    protected function tearDown()
-    {
-        $this->deleteTmpDir();
-    }
-
-    protected function deleteTmpDir()
-    {
-        if (!file_exists($dir = $this->tmpDir)) {
-            return;
-        }
-
-        $iterator = new \RecursiveIteratorIterator(new \RecursiveDirectoryIterator($this->tmpDir), \RecursiveIteratorIterator::CHILD_FIRST);
-        foreach ($iterator as $path) {
-            if (preg_match('#[/\\\\]\.\.?$#', $path->__toString())) {
-                continue;
-            }
-            if ($path->isDir()) {
-                rmdir($path->__toString());
-            } else {
-                unlink($path->__toString());
-            }
-        }
-        rmdir($this->tmpDir);
-    }
-
-    /**
-     * @dataProvider runForDebugAndProduction
-     */
-    public function testThatACacheIsUsed($debug)
-    {
-        $locale = 'any_locale';
-        $format = 'some_format';
-        $msgid = 'test';
-
-        // Prime the cache
-        $translator = new Translator($locale, null, $this->tmpDir, $debug);
-        $translator->addLoader($format, new ArrayLoader());
-        $translator->addResource($format, array($msgid => 'OK'), $locale);
-        $translator->trans($msgid);
-
-        // Try again and see we get a valid result whilst no loader can be used
-        $translator = new Translator($locale, null, $this->tmpDir, $debug);
-        $translator->addLoader($format, $this->createFailingLoader());
-        $translator->addResource($format, array($msgid => 'OK'), $locale);
-        $this->assertEquals('OK', $translator->trans($msgid), '-> caching does not work in '.($debug ? 'debug' : 'production'));
-    }
-
-    public function testCatalogueIsReloadedWhenResourcesAreNoLongerFresh()
-    {
-        /*
-         * The testThatACacheIsUsed() test showed that we don't need the loader as long as the cache
-         * is fresh.
-         *
-         * Now we add a Resource that is never fresh and make sure that the
-         * cache is discarded (the loader is called twice).
-         *
-         * We need to run this for debug=true only because in production the cache
-         * will never be revalidated.
-         */
-
-        $locale = 'any_locale';
-        $format = 'some_format';
-        $msgid = 'test';
-
-        $catalogue = new MessageCatalogue($locale, array());
-        $catalogue->addResource(new StaleResource()); // better use a helper class than a mock, because it gets serialized in the cache and re-loaded
-
-        /** @var LoaderInterface|\PHPUnit_Framework_MockObject_MockObject $loader */
-        $loader = $this->getMock('Symfony\Component\Translation\Loader\LoaderInterface');
-        $loader
-            ->expects($this->exactly(2))
-            ->method('load')
-            ->will($this->returnValue($catalogue))
-        ;
-
-        // 1st pass
-        $translator = new Translator($locale, null, $this->tmpDir, true);
-        $translator->addLoader($format, $loader);
-        $translator->addResource($format, null, $locale);
-        $translator->trans($msgid);
-
-        // 2nd pass
-        $translator = new Translator($locale, null, $this->tmpDir, true);
-        $translator->addLoader($format, $loader);
-        $translator->addResource($format, null, $locale);
-        $translator->trans($msgid);
-    }
-
-    /**
-     * @dataProvider runForDebugAndProduction
-     */
-    public function testDifferentTranslatorsForSameLocaleDoNotOverwriteEachOthersCache($debug)
-    {
-        /*
-         * Similar to the previous test. After we used the second translator, make
-         * sure there's still a useable cache for the first one.
-         */
-
-        $locale = 'any_locale';
-        $format = 'some_format';
-        $msgid = 'test';
-
-        // Create a Translator and prime its cache
-        $translator = new Translator($locale, null, $this->tmpDir, $debug);
-        $translator->addLoader($format, new ArrayLoader());
-        $translator->addResource($format, array($msgid => 'OK'), $locale);
-        $translator->trans($msgid);
-
-        // Create another Translator with a different catalogue for the same locale
-        $translator = new Translator($locale, null, $this->tmpDir, $debug);
-        $translator->addLoader($format, new ArrayLoader());
-        $translator->addResource($format, array($msgid => 'FAIL'), $locale);
-        $translator->trans($msgid);
-
-        // Now the first translator must still have a useable cache.
-        $translator = new Translator($locale, null, $this->tmpDir, $debug);
-        $translator->addLoader($format, $this->createFailingLoader());
-        $translator->addResource($format, array($msgid => 'OK'), $locale);
-        $this->assertEquals('OK', $translator->trans($msgid), '-> the cache was overwritten by another translator instance in '.($debug ? 'debug' : 'production'));
-    }
-
-    public function testDifferentCacheFilesAreUsedForDifferentSetsOfFallbackLocales()
-    {
-        /*
-         * Because the cache file contains a catalogue including all of its fallback
-         * catalogues, we must take the set of fallback locales into consideration when
-         * loading a catalogue from the cache.
-         */
-        $translator = new Translator('a', null, $this->tmpDir);
-        $translator->setFallbackLocales(array('b'));
-
-        $translator->addLoader('array', new ArrayLoader());
-        $translator->addResource('array', array('foo' => 'foo (a)'), 'a');
-        $translator->addResource('array', array('bar' => 'bar (b)'), 'b');
-
-        $this->assertEquals('bar (b)', $translator->trans('bar'));
-
-        // Remove fallback locale
-        $translator->setFallbackLocales(array());
-        $this->assertEquals('bar', $translator->trans('bar'));
-
-        // Use a fresh translator with no fallback locales, result should be the same
-        $translator = new Translator('a', null, $this->tmpDir);
-
-        $translator->addLoader('array', new ArrayLoader());
-        $translator->addResource('array', array('foo' => 'foo (a)'), 'a');
-        $translator->addResource('array', array('bar' => 'bar (b)'), 'b');
-
-        $this->assertEquals('bar', $translator->trans('bar'));
-    }
-
-    public function testPrimaryAndFallbackCataloguesContainTheSameMessagesRegardlessOfCaching()
-    {
-        /*
-         * As a safeguard against potential BC breaks, make sure that primary and fallback
-         * catalogues (reachable via getFallbackCatalogue()) always contain the full set of
-         * messages provided by the loader. This must also be the case when these catalogues
-         * are (internally) read from a cache.
-         *
-         * Optimizations inside the translator must not change this behaviour.
-         */
-
-        /*
-         * Create a translator that loads two catalogues for two different locales.
-         * The catalogues contain distinct sets of messages.
-         */
-        $translator = new Translator('a', null, $this->tmpDir);
-        $translator->setFallbackLocales(array('b'));
-
-        $translator->addLoader('array', new ArrayLoader());
-        $translator->addResource('array', array('foo' => 'foo (a)'), 'a');
-        $translator->addResource('array', array('foo' => 'foo (b)'), 'b');
-        $translator->addResource('array', array('bar' => 'bar (b)'), 'b');
-
-        $catalogue = $translator->getCatalogue('a');
-        $this->assertFalse($catalogue->defines('bar')); // Sure, the "a" catalogue does not contain that message.
-
-        $fallback = $catalogue->getFallbackCatalogue();
-        $this->assertTrue($fallback->defines('foo')); // "foo" is present in "a" and "b"
-
-        /*
-         * Now, repeat the same test.
-         * Behind the scenes, the cache is used. But that should not matter, right?
-         */
-        $translator = new Translator('a', null, $this->tmpDir);
-        $translator->setFallbackLocales(array('b'));
-
-        $translator->addLoader('array', new ArrayLoader());
-        $translator->addResource('array', array('foo' => 'foo (a)'), 'a');
-        $translator->addResource('array', array('foo' => 'foo (b)'), 'b');
-        $translator->addResource('array', array('bar' => 'bar (b)'), 'b');
-
-        $catalogue = $translator->getCatalogue('a');
-        $this->assertFalse($catalogue->defines('bar'));
-
-        $fallback = $catalogue->getFallbackCatalogue();
-        $this->assertTrue($fallback->defines('foo'));
-    }
-
-    public function testRefreshCacheWhenResourcesAreNoLongerFresh()
-    {
-        $resource = $this->getMock('Symfony\Component\Config\Resource\ResourceInterface');
-        $loader = $this->getMock('Symfony\Component\Translation\Loader\LoaderInterface');
-        $resource->method('isFresh')->will($this->returnValue(false));
-        $loader
-            ->expects($this->exactly(2))
-            ->method('load')
-            ->will($this->returnValue($this->getCatalogue('fr', array(), array($resource))));
-
-        // prime the cache
-        $translator = new Translator('fr', null, $this->tmpDir, true);
-        $translator->addLoader('loader', $loader);
-        $translator->addResource('loader', 'foo', 'fr');
-        $translator->trans('foo');
-
-        // prime the cache second time
-        $translator = new Translator('fr', null, $this->tmpDir, true);
-        $translator->addLoader('loader', $loader);
-        $translator->addResource('loader', 'foo', 'fr');
-        $translator->trans('foo');
-    }
-
-    protected function getCatalogue($locale, $messages, $resources = array())
-    {
-        $catalogue = new MessageCatalogue($locale);
-        foreach ($messages as $key => $translation) {
-            $catalogue->set($key, $translation);
-        }
-        foreach ($resources as $resource) {
-            $catalogue->addResource($resource);
-        }
-
-        return $catalogue;
-    }
-
-    public function runForDebugAndProduction()
-    {
-        return array(array(true), array(false));
-    }
-
-    /**
-     * @return LoaderInterface
-     */
-    private function createFailingLoader()
-    {
-        $loader = $this->getMock('Symfony\Component\Translation\Loader\LoaderInterface');
-        $loader
-            ->expects($this->never())
-            ->method('load');
-
-        return $loader;
-    }
-}
-
-class StaleResource implements ResourceInterface
-{
-    public function isFresh($timestamp)
-    {
-        return false;
-    }
-
-    public function getResource()
-    {
-    }
-
-    public function __toString()
-    {
-        return '';
-    }
-}
diff --git a/vendor/symfony/translation/Tests/TranslatorTest.php b/vendor/symfony/translation/Tests/TranslatorTest.php
deleted file mode 100644
index cb36183..0000000
--- a/vendor/symfony/translation/Tests/TranslatorTest.php
+++ /dev/null
@@ -1,627 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Translation\Tests;
-
-use Symfony\Component\Translation\Translator;
-use Symfony\Component\Translation\MessageSelector;
-use Symfony\Component\Translation\Loader\ArrayLoader;
-use Symfony\Component\Translation\MessageCatalogue;
-
-class TranslatorTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @dataProvider      getInvalidLocalesTests
-     * @expectedException \InvalidArgumentException
-     */
-    public function testConstructorInvalidLocale($locale)
-    {
-        $translator = new Translator($locale, new MessageSelector());
-    }
-
-    /**
-     * @dataProvider getValidLocalesTests
-     */
-    public function testConstructorValidLocale($locale)
-    {
-        $translator = new Translator($locale, new MessageSelector());
-
-        $this->assertEquals($locale, $translator->getLocale());
-    }
-
-    public function testConstructorWithoutLocale()
-    {
-        $translator = new Translator(null, new MessageSelector());
-
-        $this->assertNull($translator->getLocale());
-    }
-
-    public function testSetGetLocale()
-    {
-        $translator = new Translator('en');
-
-        $this->assertEquals('en', $translator->getLocale());
-
-        $translator->setLocale('fr');
-        $this->assertEquals('fr', $translator->getLocale());
-    }
-
-    /**
-     * @dataProvider      getInvalidLocalesTests
-     * @expectedException \InvalidArgumentException
-     */
-    public function testSetInvalidLocale($locale)
-    {
-        $translator = new Translator('fr', new MessageSelector());
-        $translator->setLocale($locale);
-    }
-
-    /**
-     * @dataProvider getValidLocalesTests
-     */
-    public function testSetValidLocale($locale)
-    {
-        $translator = new Translator($locale, new MessageSelector());
-        $translator->setLocale($locale);
-
-        $this->assertEquals($locale, $translator->getLocale());
-    }
-
-    public function testGetCatalogue()
-    {
-        $translator = new Translator('en');
-
-        $this->assertEquals(new MessageCatalogue('en'), $translator->getCatalogue());
-
-        $translator->setLocale('fr');
-        $this->assertEquals(new MessageCatalogue('fr'), $translator->getCatalogue('fr'));
-    }
-
-    public function testGetCatalogueReturnsConsolidatedCatalogue()
-    {
-        /*
-         * This will be useful once we refactor so that different domains will be loaded lazily (on-demand).
-         * In that case, getCatalogue() will probably have to load all missing domains in order to return
-         * one complete catalogue.
-         */
-
-        $locale = 'whatever';
-        $translator = new Translator($locale);
-        $translator->addLoader('loader-a', new ArrayLoader());
-        $translator->addLoader('loader-b', new ArrayLoader());
-        $translator->addResource('loader-a', array('foo' => 'foofoo'), $locale, 'domain-a');
-        $translator->addResource('loader-b', array('bar' => 'foobar'), $locale, 'domain-b');
-
-        /*
-         * Test that we get a single catalogue comprising messages
-         * from different loaders and different domains
-         */
-        $catalogue = $translator->getCatalogue($locale);
-        $this->assertTrue($catalogue->defines('foo', 'domain-a'));
-        $this->assertTrue($catalogue->defines('bar', 'domain-b'));
-    }
-
-    public function testSetFallbackLocales()
-    {
-        $translator = new Translator('en');
-        $translator->addLoader('array', new ArrayLoader());
-        $translator->addResource('array', array('foo' => 'foofoo'), 'en');
-        $translator->addResource('array', array('bar' => 'foobar'), 'fr');
-
-        // force catalogue loading
-        $translator->trans('bar');
-
-        $translator->setFallbackLocales(array('fr'));
-        $this->assertEquals('foobar', $translator->trans('bar'));
-    }
-
-    public function testSetFallbackLocalesMultiple()
-    {
-        $translator = new Translator('en');
-        $translator->addLoader('array', new ArrayLoader());
-        $translator->addResource('array', array('foo' => 'foo (en)'), 'en');
-        $translator->addResource('array', array('bar' => 'bar (fr)'), 'fr');
-
-        // force catalogue loading
-        $translator->trans('bar');
-
-        $translator->setFallbackLocales(array('fr_FR', 'fr'));
-        $this->assertEquals('bar (fr)', $translator->trans('bar'));
-    }
-
-    /**
-     * @dataProvider      getInvalidLocalesTests
-     * @expectedException \InvalidArgumentException
-     */
-    public function testSetFallbackInvalidLocales($locale)
-    {
-        $translator = new Translator('fr', new MessageSelector());
-        $translator->setFallbackLocales(array('fr', $locale));
-    }
-
-    /**
-     * @dataProvider getValidLocalesTests
-     */
-    public function testSetFallbackValidLocales($locale)
-    {
-        $translator = new Translator($locale, new MessageSelector());
-        $translator->setFallbackLocales(array('fr', $locale));
-        // no assertion. this method just asserts that no exception is thrown
-    }
-
-    public function testTransWithFallbackLocale()
-    {
-        $translator = new Translator('fr_FR');
-        $translator->setFallbackLocales(array('en'));
-
-        $translator->addLoader('array', new ArrayLoader());
-        $translator->addResource('array', array('bar' => 'foobar'), 'en');
-
-        $this->assertEquals('foobar', $translator->trans('bar'));
-    }
-
-    /**
-     * @dataProvider      getInvalidLocalesTests
-     * @expectedException \InvalidArgumentException
-     */
-    public function testAddResourceInvalidLocales($locale)
-    {
-        $translator = new Translator('fr', new MessageSelector());
-        $translator->addResource('array', array('foo' => 'foofoo'), $locale);
-    }
-
-    /**
-     * @dataProvider getValidLocalesTests
-     */
-    public function testAddResourceValidLocales($locale)
-    {
-        $translator = new Translator('fr', new MessageSelector());
-        $translator->addResource('array', array('foo' => 'foofoo'), $locale);
-        // no assertion. this method just asserts that no exception is thrown
-    }
-
-    public function testAddResourceAfterTrans()
-    {
-        $translator = new Translator('fr');
-        $translator->addLoader('array', new ArrayLoader());
-
-        $translator->setFallbackLocales(array('en'));
-
-        $translator->addResource('array', array('foo' => 'foofoo'), 'en');
-        $this->assertEquals('foofoo', $translator->trans('foo'));
-
-        $translator->addResource('array', array('bar' => 'foobar'), 'en');
-        $this->assertEquals('foobar', $translator->trans('bar'));
-    }
-
-    /**
-     * @dataProvider      getTransFileTests
-     * @expectedException \Symfony\Component\Translation\Exception\NotFoundResourceException
-     */
-    public function testTransWithoutFallbackLocaleFile($format, $loader)
-    {
-        $loaderClass = 'Symfony\\Component\\Translation\\Loader\\'.$loader;
-        $translator = new Translator('en');
-        $translator->addLoader($format, new $loaderClass());
-        $translator->addResource($format, __DIR__.'/fixtures/non-existing', 'en');
-        $translator->addResource($format, __DIR__.'/fixtures/resources.'.$format, 'en');
-
-        // force catalogue loading
-        $translator->trans('foo');
-    }
-
-    /**
-     * @dataProvider getTransFileTests
-     */
-    public function testTransWithFallbackLocaleFile($format, $loader)
-    {
-        $loaderClass = 'Symfony\\Component\\Translation\\Loader\\'.$loader;
-        $translator = new Translator('en_GB');
-        $translator->addLoader($format, new $loaderClass());
-        $translator->addResource($format, __DIR__.'/fixtures/non-existing', 'en_GB');
-        $translator->addResource($format, __DIR__.'/fixtures/resources.'.$format, 'en', 'resources');
-
-        $this->assertEquals('bar', $translator->trans('foo', array(), 'resources'));
-    }
-
-    public function testTransWithFallbackLocaleBis()
-    {
-        $translator = new Translator('en_US');
-        $translator->addLoader('array', new ArrayLoader());
-        $translator->addResource('array', array('foo' => 'foofoo'), 'en_US');
-        $translator->addResource('array', array('bar' => 'foobar'), 'en');
-        $this->assertEquals('foobar', $translator->trans('bar'));
-    }
-
-    public function testTransWithFallbackLocaleTer()
-    {
-        $translator = new Translator('fr_FR');
-        $translator->addLoader('array', new ArrayLoader());
-        $translator->addResource('array', array('foo' => 'foo (en_US)'), 'en_US');
-        $translator->addResource('array', array('bar' => 'bar (en)'), 'en');
-
-        $translator->setFallbackLocales(array('en_US', 'en'));
-
-        $this->assertEquals('foo (en_US)', $translator->trans('foo'));
-        $this->assertEquals('bar (en)', $translator->trans('bar'));
-    }
-
-    public function testTransNonExistentWithFallback()
-    {
-        $translator = new Translator('fr');
-        $translator->setFallbackLocales(array('en'));
-        $translator->addLoader('array', new ArrayLoader());
-        $this->assertEquals('non-existent', $translator->trans('non-existent'));
-    }
-
-    /**
-     * @expectedException \RuntimeException
-     */
-    public function testWhenAResourceHasNoRegisteredLoader()
-    {
-        $translator = new Translator('en');
-        $translator->addResource('array', array('foo' => 'foofoo'), 'en');
-
-        $translator->trans('foo');
-    }
-
-    /**
-     * @dataProvider getTransTests
-     */
-    public function testTrans($expected, $id, $translation, $parameters, $locale, $domain)
-    {
-        $translator = new Translator('en');
-        $translator->addLoader('array', new ArrayLoader());
-        $translator->addResource('array', array((string) $id => $translation), $locale, $domain);
-
-        $this->assertEquals($expected, $translator->trans($id, $parameters, $domain, $locale));
-    }
-
-    /**
-     * @dataProvider      getInvalidLocalesTests
-     * @expectedException \InvalidArgumentException
-     */
-    public function testTransInvalidLocale($locale)
-    {
-        $translator = new Translator('en', new MessageSelector());
-        $translator->addLoader('array', new ArrayLoader());
-        $translator->addResource('array', array('foo' => 'foofoo'), 'en');
-
-        $translator->trans('foo', array(), '', $locale);
-    }
-
-    /**
-     * @dataProvider      getValidLocalesTests
-     */
-    public function testTransValidLocale($locale)
-    {
-        $translator = new Translator($locale, new MessageSelector());
-        $translator->addLoader('array', new ArrayLoader());
-        $translator->addResource('array', array('test' => 'OK'), $locale);
-
-        $this->assertEquals('OK', $translator->trans('test'));
-        $this->assertEquals('OK', $translator->trans('test', array(), null, $locale));
-    }
-
-    /**
-     * @dataProvider getFlattenedTransTests
-     */
-    public function testFlattenedTrans($expected, $messages, $id)
-    {
-        $translator = new Translator('en');
-        $translator->addLoader('array', new ArrayLoader());
-        $translator->addResource('array', $messages, 'fr', '');
-
-        $this->assertEquals($expected, $translator->trans($id, array(), '', 'fr'));
-    }
-
-    /**
-     * @dataProvider getTransChoiceTests
-     */
-    public function testTransChoice($expected, $id, $translation, $number, $parameters, $locale, $domain)
-    {
-        $translator = new Translator('en');
-        $translator->addLoader('array', new ArrayLoader());
-        $translator->addResource('array', array((string) $id => $translation), $locale, $domain);
-
-        $this->assertEquals($expected, $translator->transChoice($id, $number, $parameters, $domain, $locale));
-    }
-
-    /**
-     * @dataProvider      getInvalidLocalesTests
-     * @expectedException \InvalidArgumentException
-     */
-    public function testTransChoiceInvalidLocale($locale)
-    {
-        $translator = new Translator('en', new MessageSelector());
-        $translator->addLoader('array', new ArrayLoader());
-        $translator->addResource('array', array('foo' => 'foofoo'), 'en');
-
-        $translator->transChoice('foo', 1, array(), '', $locale);
-    }
-
-    /**
-     * @dataProvider      getValidLocalesTests
-     */
-    public function testTransChoiceValidLocale($locale)
-    {
-        $translator = new Translator('en', new MessageSelector());
-        $translator->addLoader('array', new ArrayLoader());
-        $translator->addResource('array', array('foo' => 'foofoo'), 'en');
-
-        $translator->transChoice('foo', 1, array(), '', $locale);
-        // no assertion. this method just asserts that no exception is thrown
-    }
-
-    public function getTransFileTests()
-    {
-        return array(
-            array('csv', 'CsvFileLoader'),
-            array('ini', 'IniFileLoader'),
-            array('mo', 'MoFileLoader'),
-            array('po', 'PoFileLoader'),
-            array('php', 'PhpFileLoader'),
-            array('ts', 'QtFileLoader'),
-            array('xlf', 'XliffFileLoader'),
-            array('yml', 'YamlFileLoader'),
-            array('json', 'JsonFileLoader'),
-        );
-    }
-
-    public function getTransTests()
-    {
-        return array(
-            array('Symfony est super !', 'Symfony is great!', 'Symfony est super !', array(), 'fr', ''),
-            array('Symfony est awesome !', 'Symfony is %what%!', 'Symfony est %what% !', array('%what%' => 'awesome'), 'fr', ''),
-            array('Symfony est super !', new StringClass('Symfony is great!'), 'Symfony est super !', array(), 'fr', ''),
-        );
-    }
-
-    public function getFlattenedTransTests()
-    {
-        $messages = array(
-            'symfony' => array(
-                'is' => array(
-                    'great' => 'Symfony est super!',
-                ),
-            ),
-            'foo' => array(
-                'bar' => array(
-                    'baz' => 'Foo Bar Baz',
-                ),
-                'baz' => 'Foo Baz',
-            ),
-        );
-
-        return array(
-            array('Symfony est super!', $messages, 'symfony.is.great'),
-            array('Foo Bar Baz', $messages, 'foo.bar.baz'),
-            array('Foo Baz', $messages, 'foo.baz'),
-        );
-    }
-
-    public function getTransChoiceTests()
-    {
-        return array(
-            array('Il y a 0 pomme', '{0} There are no appless|{1} There is one apple|]1,Inf] There is %count% apples', '[0,1] Il y a %count% pomme|]1,Inf] Il y a %count% pommes', 0, array('%count%' => 0), 'fr', ''),
-            array('Il y a 1 pomme', '{0} There are no appless|{1} There is one apple|]1,Inf] There is %count% apples', '[0,1] Il y a %count% pomme|]1,Inf] Il y a %count% pommes', 1, array('%count%' => 1), 'fr', ''),
-            array('Il y a 10 pommes', '{0} There are no appless|{1} There is one apple|]1,Inf] There is %count% apples', '[0,1] Il y a %count% pomme|]1,Inf] Il y a %count% pommes', 10, array('%count%' => 10), 'fr', ''),
-
-            array('Il y a 0 pomme', 'There is one apple|There is %count% apples', 'Il y a %count% pomme|Il y a %count% pommes', 0, array('%count%' => 0), 'fr', ''),
-            array('Il y a 1 pomme', 'There is one apple|There is %count% apples', 'Il y a %count% pomme|Il y a %count% pommes', 1, array('%count%' => 1), 'fr', ''),
-            array('Il y a 10 pommes', 'There is one apple|There is %count% apples', 'Il y a %count% pomme|Il y a %count% pommes', 10, array('%count%' => 10), 'fr', ''),
-
-            array('Il y a 0 pomme', 'one: There is one apple|more: There is %count% apples', 'one: Il y a %count% pomme|more: Il y a %count% pommes', 0, array('%count%' => 0), 'fr', ''),
-            array('Il y a 1 pomme', 'one: There is one apple|more: There is %count% apples', 'one: Il y a %count% pomme|more: Il y a %count% pommes', 1, array('%count%' => 1), 'fr', ''),
-            array('Il y a 10 pommes', 'one: There is one apple|more: There is %count% apples', 'one: Il y a %count% pomme|more: Il y a %count% pommes', 10, array('%count%' => 10), 'fr', ''),
-
-            array('Il n\'y a aucune pomme', '{0} There are no apples|one: There is one apple|more: There is %count% apples', '{0} Il n\'y a aucune pomme|one: Il y a %count% pomme|more: Il y a %count% pommes', 0, array('%count%' => 0), 'fr', ''),
-            array('Il y a 1 pomme', '{0} There are no apples|one: There is one apple|more: There is %count% apples', '{0} Il n\'y a aucune pomme|one: Il y a %count% pomme|more: Il y a %count% pommes', 1, array('%count%' => 1), 'fr', ''),
-            array('Il y a 10 pommes', '{0} There are no apples|one: There is one apple|more: There is %count% apples', '{0} Il n\'y a aucune pomme|one: Il y a %count% pomme|more: Il y a %count% pommes', 10, array('%count%' => 10), 'fr', ''),
-
-            array('Il y a 0 pomme', new StringClass('{0} There are no appless|{1} There is one apple|]1,Inf] There is %count% apples'), '[0,1] Il y a %count% pomme|]1,Inf] Il y a %count% pommes', 0, array('%count%' => 0), 'fr', ''),
-        );
-    }
-
-    public function getInvalidLocalesTests()
-    {
-        return array(
-            array('fr FR'),
-            array('français'),
-            array('fr+en'),
-            array('utf#8'),
-            array('fr&en'),
-            array('fr~FR'),
-            array(' fr'),
-            array('fr '),
-            array('fr*'),
-            array('fr/FR'),
-            array('fr\\FR'),
-        );
-    }
-
-    public function getValidLocalesTests()
-    {
-        return array(
-            array(''),
-            array(null),
-            array('fr'),
-            array('francais'),
-            array('FR'),
-            array('frFR'),
-            array('fr-FR'),
-            array('fr_FR'),
-            array('fr.FR'),
-            array('fr-FR.UTF8'),
-            array('sr@latin'),
-        );
-    }
-
-    public function testTransChoiceFallback()
-    {
-        $translator = new Translator('ru');
-        $translator->setFallbackLocales(array('en'));
-        $translator->addLoader('array', new ArrayLoader());
-        $translator->addResource('array', array('some_message2' => 'one thing|%count% things'), 'en');
-
-        $this->assertEquals('10 things', $translator->transChoice('some_message2', 10, array('%count%' => 10)));
-    }
-
-    public function testTransChoiceFallbackBis()
-    {
-        $translator = new Translator('ru');
-        $translator->setFallbackLocales(array('en_US', 'en'));
-        $translator->addLoader('array', new ArrayLoader());
-        $translator->addResource('array', array('some_message2' => 'one thing|%count% things'), 'en_US');
-
-        $this->assertEquals('10 things', $translator->transChoice('some_message2', 10, array('%count%' => 10)));
-    }
-
-    public function testTransChoiceFallbackWithNoTranslation()
-    {
-        $translator = new Translator('ru');
-        $translator->setFallbackLocales(array('en'));
-        $translator->addLoader('array', new ArrayLoader());
-
-        // consistent behavior with Translator::trans(), which returns the string
-        // unchanged if it can't be found
-        $this->assertEquals('some_message2', $translator->transChoice('some_message2', 10, array('%count%' => 10)));
-    }
-
-    /**
-     * @dataProvider dataProviderGetMessages
-     */
-    public function testGetMessages($resources, $locale, $expected)
-    {
-        $locales = array_keys($resources);
-        $_locale = null !== $locale ? $locale : reset($locales);
-        $locales = array_slice($locales, 0, array_search($_locale, $locales));
-
-        $translator = new Translator($_locale, new MessageSelector());
-        $translator->setFallbackLocales(array_reverse($locales));
-        $translator->addLoader('array', new ArrayLoader());
-        foreach ($resources as $_locale => $domainMessages) {
-            foreach ($domainMessages as $domain => $messages) {
-                $translator->addResource('array', $messages, $_locale, $domain);
-            }
-        }
-        $result = $translator->getMessages($locale);
-
-        $this->assertEquals($expected, $result);
-    }
-
-    public function dataProviderGetMessages()
-    {
-        $resources = array(
-            'en' => array(
-                'jsmessages' => array(
-                    'foo' => 'foo (EN)',
-                    'bar' => 'bar (EN)',
-                ),
-                'messages' => array(
-                    'foo' => 'foo messages (EN)',
-                ),
-                'validators' => array(
-                    'int' => 'integer (EN)',
-                ),
-            ),
-            'pt-PT' => array(
-                'messages' => array(
-                    'foo' => 'foo messages (PT)',
-                ),
-                'validators' => array(
-                    'str' => 'integer (PT)',
-                ),
-            ),
-            'pt_BR' => array(
-                'validators' => array(
-                    'int' => 'integer (BR)',
-                ),
-            ),
-        );
-
-        return array(
-            array($resources, null,
-                array(
-                    'jsmessages' => array(
-                        'foo' => 'foo (EN)',
-                        'bar' => 'bar (EN)',
-                    ),
-                    'messages' => array(
-                        'foo' => 'foo messages (EN)',
-                    ),
-                    'validators' => array(
-                        'int' => 'integer (EN)',
-                    ),
-                ),
-            ),
-            array($resources, 'en',
-                array(
-                    'jsmessages' => array(
-                        'foo' => 'foo (EN)',
-                        'bar' => 'bar (EN)',
-                    ),
-                    'messages' => array(
-                        'foo' => 'foo messages (EN)',
-                    ),
-                    'validators' => array(
-                        'int' => 'integer (EN)',
-                    ),
-                ),
-            ),
-            array($resources, 'pt-PT',
-                array(
-                    'jsmessages' => array(
-                        'foo' => 'foo (EN)',
-                        'bar' => 'bar (EN)',
-                    ),
-                    'messages' => array(
-                        'foo' => 'foo messages (PT)',
-                    ),
-                    'validators' => array(
-                        'int' => 'integer (EN)',
-                        'str' => 'integer (PT)',
-                    ),
-                ),
-            ),
-            array($resources, 'pt_BR',
-                array(
-                    'jsmessages' => array(
-                        'foo' => 'foo (EN)',
-                        'bar' => 'bar (EN)',
-                    ),
-                    'messages' => array(
-                        'foo' => 'foo messages (PT)',
-                    ),
-                    'validators' => array(
-                        'int' => 'integer (BR)',
-                        'str' => 'integer (PT)',
-                    ),
-                ),
-            ),
-        );
-    }
-}
-
-class StringClass
-{
-    protected $str;
-
-    public function __construct($str)
-    {
-        $this->str = $str;
-    }
-
-    public function __toString()
-    {
-        return $this->str;
-    }
-}
diff --git a/vendor/symfony/translation/Tests/fixtures/empty-translation.mo b/vendor/symfony/translation/Tests/fixtures/empty-translation.mo
deleted file mode 100644
index ed01000..0000000
Binary files a/vendor/symfony/translation/Tests/fixtures/empty-translation.mo and /dev/null differ
diff --git a/vendor/symfony/translation/Tests/fixtures/empty-translation.po b/vendor/symfony/translation/Tests/fixtures/empty-translation.po
deleted file mode 100644
index ff6f22a..0000000
--- a/vendor/symfony/translation/Tests/fixtures/empty-translation.po
+++ /dev/null
@@ -1,3 +0,0 @@
-msgid "foo"
-msgstr ""
-
diff --git a/vendor/symfony/translation/Tests/fixtures/empty.csv b/vendor/symfony/translation/Tests/fixtures/empty.csv
deleted file mode 100644
index e69de29..0000000
diff --git a/vendor/symfony/translation/Tests/fixtures/empty.ini b/vendor/symfony/translation/Tests/fixtures/empty.ini
deleted file mode 100644
index e69de29..0000000
diff --git a/vendor/symfony/translation/Tests/fixtures/empty.json b/vendor/symfony/translation/Tests/fixtures/empty.json
deleted file mode 100644
index e69de29..0000000
diff --git a/vendor/symfony/translation/Tests/fixtures/empty.mo b/vendor/symfony/translation/Tests/fixtures/empty.mo
deleted file mode 100644
index e69de29..0000000
diff --git a/vendor/symfony/translation/Tests/fixtures/empty.po b/vendor/symfony/translation/Tests/fixtures/empty.po
deleted file mode 100644
index e69de29..0000000
diff --git a/vendor/symfony/translation/Tests/fixtures/empty.xlf b/vendor/symfony/translation/Tests/fixtures/empty.xlf
deleted file mode 100644
index e69de29..0000000
diff --git a/vendor/symfony/translation/Tests/fixtures/empty.yml b/vendor/symfony/translation/Tests/fixtures/empty.yml
deleted file mode 100644
index e69de29..0000000
diff --git a/vendor/symfony/translation/Tests/fixtures/encoding.xlf b/vendor/symfony/translation/Tests/fixtures/encoding.xlf
deleted file mode 100644
index 0a88f92..0000000
--- a/vendor/symfony/translation/Tests/fixtures/encoding.xlf
+++ /dev/null
@@ -1,16 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<xliff xmlns="urn:oasis:names:tc:xliff:document:1.2" version="1.2">
-  <file source-language="en" datatype="plaintext" original="file.ext">
-    <body>
-      <trans-unit id="1" resname="foo">
-        <source>foo</source>
-        <target>br</target>
-        <note>bz</note>
-      </trans-unit>
-      <trans-unit id="2" resname="bar">
-        <source>bar</source>
-        <target>f</target>
-      </trans-unit>
-    </body>
-  </file>
-</xliff>
diff --git a/vendor/symfony/translation/Tests/fixtures/escaped-id-plurals.po b/vendor/symfony/translation/Tests/fixtures/escaped-id-plurals.po
deleted file mode 100644
index c412aa2..0000000
--- a/vendor/symfony/translation/Tests/fixtures/escaped-id-plurals.po
+++ /dev/null
@@ -1,10 +0,0 @@
-msgid ""
-msgstr ""
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: en\n"
-
-msgid "escaped \"foo\""
-msgid_plural "escaped \"foos\""
-msgstr[0] "escaped \"bar\""
-msgstr[1] "escaped \"bars\""
diff --git a/vendor/symfony/translation/Tests/fixtures/escaped-id.po b/vendor/symfony/translation/Tests/fixtures/escaped-id.po
deleted file mode 100644
index 308eadd..0000000
--- a/vendor/symfony/translation/Tests/fixtures/escaped-id.po
+++ /dev/null
@@ -1,8 +0,0 @@
-msgid ""
-msgstr ""
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: en\n"
-
-msgid "escaped \"foo\""
-msgstr "escaped \"bar\""
diff --git a/vendor/symfony/translation/Tests/fixtures/invalid-xml-resources.xlf b/vendor/symfony/translation/Tests/fixtures/invalid-xml-resources.xlf
deleted file mode 100644
index 7bf6c98..0000000
--- a/vendor/symfony/translation/Tests/fixtures/invalid-xml-resources.xlf
+++ /dev/null
@@ -1,23 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<xliff xmlns="urn:oasis:names:tc:xliff:document:1.2" version="1.2">
-    <file source-language="en" datatype="plaintext" original="file.ext">
-        <body>
-            <trans-unit id="1">
-                <source>foo</source>
-                <target>bar
-            </trans-unit>
-            <trans-unit id="2">
-                <source>extra</source>
-            </trans-unit>
-            <trans-unit id="3">
-                <source>key</source>
-                <target></target>
-            </trans-unit>
-            <trans-unit id="4">
-                <source>test</source>
-                <target>with</target>
-                <note>note</note>
-            </trans-unit>
-        </body>
-    </file>
-</xliff>
diff --git a/vendor/symfony/translation/Tests/fixtures/malformed.json b/vendor/symfony/translation/Tests/fixtures/malformed.json
deleted file mode 100644
index 4563ec6..0000000
--- a/vendor/symfony/translation/Tests/fixtures/malformed.json
+++ /dev/null
@@ -1,3 +0,0 @@
-{
-    "foo" "bar"
-}
\ No newline at end of file
diff --git a/vendor/symfony/translation/Tests/fixtures/non-valid.xlf b/vendor/symfony/translation/Tests/fixtures/non-valid.xlf
deleted file mode 100644
index 734fc97..0000000
--- a/vendor/symfony/translation/Tests/fixtures/non-valid.xlf
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0"?>
-<xliff version="1.2" xmlns="urn:oasis:names:tc:xliff:document:1.2">
-    <file source-language="en" datatype="plaintext" original="file.ext">
-        <body>
-            <trans-unit>
-                <source>foo</source>
-                <target>bar</target>
-            </trans-unit>
-        </body>
-    </file>
-</xliff>
diff --git a/vendor/symfony/translation/Tests/fixtures/non-valid.yml b/vendor/symfony/translation/Tests/fixtures/non-valid.yml
deleted file mode 100644
index 257cc56..0000000
--- a/vendor/symfony/translation/Tests/fixtures/non-valid.yml
+++ /dev/null
@@ -1 +0,0 @@
-foo
diff --git a/vendor/symfony/translation/Tests/fixtures/plurals.mo b/vendor/symfony/translation/Tests/fixtures/plurals.mo
deleted file mode 100644
index 6445e77..0000000
Binary files a/vendor/symfony/translation/Tests/fixtures/plurals.mo and /dev/null differ
diff --git a/vendor/symfony/translation/Tests/fixtures/plurals.po b/vendor/symfony/translation/Tests/fixtures/plurals.po
deleted file mode 100644
index 439c41a..0000000
--- a/vendor/symfony/translation/Tests/fixtures/plurals.po
+++ /dev/null
@@ -1,5 +0,0 @@
-msgid "foo"
-msgid_plural "foos"
-msgstr[0] "bar"
-msgstr[1] "bars"
-
diff --git a/vendor/symfony/translation/Tests/fixtures/resname.xlf b/vendor/symfony/translation/Tests/fixtures/resname.xlf
deleted file mode 100644
index 2df16af..0000000
--- a/vendor/symfony/translation/Tests/fixtures/resname.xlf
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<xliff xmlns="urn:oasis:names:tc:xliff:document:1.2" version="1.2">
-  <file source-language="en" datatype="plaintext" original="file.ext">
-    <body>
-      <trans-unit id="1" resname="foo">
-        <source></source>
-        <target>bar</target>
-      </trans-unit>
-      <trans-unit id="2" resname="bar">
-        <source>bar source</source>
-        <target>baz</target>
-      </trans-unit>
-      <trans-unit id="3">
-        <source>baz</source>
-        <target>foo</target>
-      </trans-unit>
-    </body>
-  </file>
-</xliff>
diff --git a/vendor/symfony/translation/Tests/fixtures/resourcebundle/corrupted/resources.dat b/vendor/symfony/translation/Tests/fixtures/resourcebundle/corrupted/resources.dat
deleted file mode 100644
index 391250c..0000000
--- a/vendor/symfony/translation/Tests/fixtures/resourcebundle/corrupted/resources.dat
+++ /dev/null
@@ -1 +0,0 @@
-XXX
\ No newline at end of file
diff --git a/vendor/symfony/translation/Tests/fixtures/resourcebundle/dat/en.res b/vendor/symfony/translation/Tests/fixtures/resourcebundle/dat/en.res
deleted file mode 100644
index 1fc1436..0000000
Binary files a/vendor/symfony/translation/Tests/fixtures/resourcebundle/dat/en.res and /dev/null differ
diff --git a/vendor/symfony/translation/Tests/fixtures/resourcebundle/dat/en.txt b/vendor/symfony/translation/Tests/fixtures/resourcebundle/dat/en.txt
deleted file mode 100644
index 3d9e9ea..0000000
--- a/vendor/symfony/translation/Tests/fixtures/resourcebundle/dat/en.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-en{
-    symfony{"Symfony is great"}
-}
\ No newline at end of file
diff --git a/vendor/symfony/translation/Tests/fixtures/resourcebundle/dat/fr.res b/vendor/symfony/translation/Tests/fixtures/resourcebundle/dat/fr.res
deleted file mode 100644
index f584160..0000000
Binary files a/vendor/symfony/translation/Tests/fixtures/resourcebundle/dat/fr.res and /dev/null differ
diff --git a/vendor/symfony/translation/Tests/fixtures/resourcebundle/dat/fr.txt b/vendor/symfony/translation/Tests/fixtures/resourcebundle/dat/fr.txt
deleted file mode 100644
index 182d0a0..0000000
--- a/vendor/symfony/translation/Tests/fixtures/resourcebundle/dat/fr.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-fr{
-    symfony{"Symfony est génial"}
-}
\ No newline at end of file
diff --git a/vendor/symfony/translation/Tests/fixtures/resourcebundle/dat/packagelist.txt b/vendor/symfony/translation/Tests/fixtures/resourcebundle/dat/packagelist.txt
deleted file mode 100644
index c5783ed..0000000
--- a/vendor/symfony/translation/Tests/fixtures/resourcebundle/dat/packagelist.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-en.res
-fr.res
diff --git a/vendor/symfony/translation/Tests/fixtures/resourcebundle/dat/resources.dat b/vendor/symfony/translation/Tests/fixtures/resourcebundle/dat/resources.dat
deleted file mode 100644
index 563b0ea..0000000
Binary files a/vendor/symfony/translation/Tests/fixtures/resourcebundle/dat/resources.dat and /dev/null differ
diff --git a/vendor/symfony/translation/Tests/fixtures/resourcebundle/res/en.res b/vendor/symfony/translation/Tests/fixtures/resourcebundle/res/en.res
deleted file mode 100644
index ad894a9..0000000
Binary files a/vendor/symfony/translation/Tests/fixtures/resourcebundle/res/en.res and /dev/null differ
diff --git a/vendor/symfony/translation/Tests/fixtures/resources-clean.xlf b/vendor/symfony/translation/Tests/fixtures/resources-clean.xlf
deleted file mode 100644
index 4ce15af..0000000
--- a/vendor/symfony/translation/Tests/fixtures/resources-clean.xlf
+++ /dev/null
@@ -1,22 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<xliff xmlns="urn:oasis:names:tc:xliff:document:1.2" version="1.2">
-  <file source-language="fr-FR" target-language="en-US" datatype="plaintext" original="file.ext">
-    <body>
-      <trans-unit id="acbd18db4cc2f85cedef654fccc4a4d8" resname="foo">
-        <source>foo</source>
-        <target>bar</target>
-        <note priority="1" from="bar">baz</note>
-      </trans-unit>
-      <trans-unit id="3c6e0b8a9c15224a8228b9a98ca1531d" resname="key">
-        <source>key</source>
-        <target></target>
-        <note>baz</note>
-        <note>qux</note>
-      </trans-unit>
-      <trans-unit id="18e6a493872558d949b4c16ea1fa6ab6" resname="key.with.cdata">
-        <source>key.with.cdata</source>
-        <target><![CDATA[<source> & <target>]]></target>
-      </trans-unit>
-    </body>
-  </file>
-</xliff>
diff --git a/vendor/symfony/translation/Tests/fixtures/resources.csv b/vendor/symfony/translation/Tests/fixtures/resources.csv
deleted file mode 100644
index 374b9eb..0000000
--- a/vendor/symfony/translation/Tests/fixtures/resources.csv
+++ /dev/null
@@ -1,4 +0,0 @@
-"foo"; "bar"
-#"bar"; "foo"
-"incorrect"; "number"; "columns"; "will"; "be"; "ignored"
-"incorrect"
\ No newline at end of file
diff --git a/vendor/symfony/translation/Tests/fixtures/resources.ini b/vendor/symfony/translation/Tests/fixtures/resources.ini
deleted file mode 100644
index 4953062..0000000
--- a/vendor/symfony/translation/Tests/fixtures/resources.ini
+++ /dev/null
@@ -1 +0,0 @@
-foo="bar"
diff --git a/vendor/symfony/translation/Tests/fixtures/resources.json b/vendor/symfony/translation/Tests/fixtures/resources.json
deleted file mode 100644
index 8a79687..0000000
--- a/vendor/symfony/translation/Tests/fixtures/resources.json
+++ /dev/null
@@ -1,3 +0,0 @@
-{
-    "foo": "bar"
-}
\ No newline at end of file
diff --git a/vendor/symfony/translation/Tests/fixtures/resources.mo b/vendor/symfony/translation/Tests/fixtures/resources.mo
deleted file mode 100644
index 0a96602..0000000
Binary files a/vendor/symfony/translation/Tests/fixtures/resources.mo and /dev/null differ
diff --git a/vendor/symfony/translation/Tests/fixtures/resources.php b/vendor/symfony/translation/Tests/fixtures/resources.php
deleted file mode 100644
index c291398..0000000
--- a/vendor/symfony/translation/Tests/fixtures/resources.php
+++ /dev/null
@@ -1,5 +0,0 @@
-<?php
-
-return array (
-  'foo' => 'bar',
-);
diff --git a/vendor/symfony/translation/Tests/fixtures/resources.po b/vendor/symfony/translation/Tests/fixtures/resources.po
deleted file mode 100644
index ccfce6b..0000000
--- a/vendor/symfony/translation/Tests/fixtures/resources.po
+++ /dev/null
@@ -1,8 +0,0 @@
-msgid ""
-msgstr ""
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: en\n"
-
-msgid "foo"
-msgstr "bar"
\ No newline at end of file
diff --git a/vendor/symfony/translation/Tests/fixtures/resources.ts b/vendor/symfony/translation/Tests/fixtures/resources.ts
deleted file mode 100644
index 40e1852..0000000
--- a/vendor/symfony/translation/Tests/fixtures/resources.ts
+++ /dev/null
@@ -1,10 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<TS>
-  <context>
-    <name>resources</name>
-    <message>
-      <source>foo</source>
-      <translation>bar</translation>
-    </message>
-  </context>
-</TS>
diff --git a/vendor/symfony/translation/Tests/fixtures/resources.xlf b/vendor/symfony/translation/Tests/fixtures/resources.xlf
deleted file mode 100644
index b0e5988..0000000
--- a/vendor/symfony/translation/Tests/fixtures/resources.xlf
+++ /dev/null
@@ -1,23 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<xliff xmlns="urn:oasis:names:tc:xliff:document:1.2" version="1.2">
-  <file source-language="en" datatype="plaintext" original="file.ext">
-    <body>
-      <trans-unit id="1">
-        <source>foo</source>
-        <target>bar</target>
-      </trans-unit>
-      <trans-unit id="2">
-        <source>extra</source>
-      </trans-unit>
-      <trans-unit id="3">
-        <source>key</source>
-        <target></target>
-      </trans-unit>
-      <trans-unit id="4">
-        <source>test</source>
-        <target>with</target>
-        <note>note</note>
-      </trans-unit>
-    </body>
-  </file>
-</xliff>
diff --git a/vendor/symfony/translation/Tests/fixtures/resources.yml b/vendor/symfony/translation/Tests/fixtures/resources.yml
deleted file mode 100644
index 20e9ff3..0000000
--- a/vendor/symfony/translation/Tests/fixtures/resources.yml
+++ /dev/null
@@ -1 +0,0 @@
-foo: bar
diff --git a/vendor/symfony/translation/Tests/fixtures/valid.csv b/vendor/symfony/translation/Tests/fixtures/valid.csv
deleted file mode 100644
index 59882e5..0000000
--- a/vendor/symfony/translation/Tests/fixtures/valid.csv
+++ /dev/null
@@ -1,4 +0,0 @@
-foo;bar
-bar;"foo
-foo"
-"foo;foo";bar
diff --git a/vendor/symfony/translation/Tests/fixtures/withdoctype.xlf b/vendor/symfony/translation/Tests/fixtures/withdoctype.xlf
deleted file mode 100644
index f83e834..0000000
--- a/vendor/symfony/translation/Tests/fixtures/withdoctype.xlf
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version="1.0"?>
-<!DOCTYPE foo>
-<xliff version="1.2" xmlns="urn:oasis:names:tc:xliff:document:1.2">
-    <file source-language="en" datatype="plaintext" original="file.ext">
-        <body>
-            <trans-unit id="1">
-                <source>foo</source>
-                <target>bar</target>
-            </trans-unit>
-        </body>
-    </file>
-</xliff>
diff --git a/vendor/symfony/translation/Tests/fixtures/withnote.xlf b/vendor/symfony/translation/Tests/fixtures/withnote.xlf
deleted file mode 100644
index b1d3f83..0000000
--- a/vendor/symfony/translation/Tests/fixtures/withnote.xlf
+++ /dev/null
@@ -1,22 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<xliff xmlns="urn:oasis:names:tc:xliff:document:1.2" version="1.2">
-  <file source-language="en" datatype="plaintext" original="file.ext">
-    <body>
-      <trans-unit id="1">
-        <source>foo</source>
-        <target>bar</target>
-        <note priority="1">foo</note>
-      </trans-unit>
-      <trans-unit id="2">
-        <source>extra</source>
-        <note from="foo">bar</note>
-      </trans-unit>
-      <trans-unit id="3">
-        <source>key</source>
-        <target></target>
-        <note>baz</note>
-        <note priority="2" from="bar">qux</note>
-      </trans-unit>
-    </body>
-  </file>
-</xliff>
diff --git a/vendor/symfony/validator/Tests/ConstraintTest.php b/vendor/symfony/validator/Tests/ConstraintTest.php
deleted file mode 100644
index f63570c..0000000
--- a/vendor/symfony/validator/Tests/ConstraintTest.php
+++ /dev/null
@@ -1,209 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests;
-
-use Symfony\Component\Validator\Constraint;
-use Symfony\Component\Validator\Tests\Fixtures\ClassConstraint;
-use Symfony\Component\Validator\Tests\Fixtures\ConstraintA;
-use Symfony\Component\Validator\Tests\Fixtures\ConstraintB;
-use Symfony\Component\Validator\Tests\Fixtures\ConstraintC;
-use Symfony\Component\Validator\Tests\Fixtures\ConstraintWithValue;
-use Symfony\Component\Validator\Tests\Fixtures\ConstraintWithValueAsDefault;
-
-class ConstraintTest extends \PHPUnit_Framework_TestCase
-{
-    public function testSetProperties()
-    {
-        $constraint = new ConstraintA(array(
-            'property1' => 'foo',
-            'property2' => 'bar',
-        ));
-
-        $this->assertEquals('foo', $constraint->property1);
-        $this->assertEquals('bar', $constraint->property2);
-    }
-
-    public function testSetNotExistingPropertyThrowsException()
-    {
-        $this->setExpectedException('Symfony\Component\Validator\Exception\InvalidOptionsException');
-
-        new ConstraintA(array(
-            'foo' => 'bar',
-        ));
-    }
-
-    public function testMagicPropertiesAreNotAllowed()
-    {
-        $constraint = new ConstraintA();
-
-        $this->setExpectedException('Symfony\Component\Validator\Exception\InvalidOptionsException');
-
-        $constraint->foo = 'bar';
-    }
-
-    public function testInvalidAndRequiredOptionsPassed()
-    {
-        $this->setExpectedException('Symfony\Component\Validator\Exception\InvalidOptionsException');
-
-        new ConstraintC(array(
-            'option1' => 'default',
-            'foo' => 'bar',
-        ));
-    }
-
-    public function testSetDefaultProperty()
-    {
-        $constraint = new ConstraintA('foo');
-
-        $this->assertEquals('foo', $constraint->property2);
-    }
-
-    public function testSetDefaultPropertyDoctrineStyle()
-    {
-        $constraint = new ConstraintA(array('value' => 'foo'));
-
-        $this->assertEquals('foo', $constraint->property2);
-    }
-
-    public function testSetDefaultPropertyDoctrineStylePlusOtherProperty()
-    {
-        $constraint = new ConstraintA(array('value' => 'foo', 'property1' => 'bar'));
-
-        $this->assertEquals('foo', $constraint->property2);
-        $this->assertEquals('bar', $constraint->property1);
-    }
-
-    public function testSetDefaultPropertyDoctrineStyleWhenDefaultPropertyIsNamedValue()
-    {
-        $constraint = new ConstraintWithValueAsDefault(array('value' => 'foo'));
-
-        $this->assertEquals('foo', $constraint->value);
-        $this->assertNull($constraint->property);
-    }
-
-    public function testDontSetDefaultPropertyIfValuePropertyExists()
-    {
-        $constraint = new ConstraintWithValue(array('value' => 'foo'));
-
-        $this->assertEquals('foo', $constraint->value);
-        $this->assertNull($constraint->property);
-    }
-
-    public function testSetUndefinedDefaultProperty()
-    {
-        $this->setExpectedException('Symfony\Component\Validator\Exception\ConstraintDefinitionException');
-
-        new ConstraintB('foo');
-    }
-
-    public function testRequiredOptionsMustBeDefined()
-    {
-        $this->setExpectedException('Symfony\Component\Validator\Exception\MissingOptionsException');
-
-        new ConstraintC();
-    }
-
-    public function testRequiredOptionsPassed()
-    {
-        new ConstraintC(array('option1' => 'default'));
-    }
-
-    public function testGroupsAreConvertedToArray()
-    {
-        $constraint = new ConstraintA(array('groups' => 'Foo'));
-
-        $this->assertEquals(array('Foo'), $constraint->groups);
-    }
-
-    public function testAddDefaultGroupAddsGroup()
-    {
-        $constraint = new ConstraintA(array('groups' => 'Default'));
-        $constraint->addImplicitGroupName('Foo');
-        $this->assertEquals(array('Default', 'Foo'), $constraint->groups);
-    }
-
-    public function testAllowsSettingZeroRequiredPropertyValue()
-    {
-        $constraint = new ConstraintA(0);
-        $this->assertEquals(0, $constraint->property2);
-    }
-
-    public function testCanCreateConstraintWithNoDefaultOptionAndEmptyArray()
-    {
-        new ConstraintB(array());
-    }
-
-    public function testGetTargetsCanBeString()
-    {
-        $constraint = new ClassConstraint();
-
-        $this->assertEquals('class', $constraint->getTargets());
-    }
-
-    public function testGetTargetsCanBeArray()
-    {
-        $constraint = new ConstraintA();
-
-        $this->assertEquals(array('property', 'class'), $constraint->getTargets());
-    }
-
-    public function testSerialize()
-    {
-        $constraint = new ConstraintA(array(
-            'property1' => 'foo',
-            'property2' => 'bar',
-        ));
-
-        $restoredConstraint = unserialize(serialize($constraint));
-
-        $this->assertEquals($constraint, $restoredConstraint);
-    }
-
-    public function testSerializeInitializesGroupsOptionToDefault()
-    {
-        $constraint = new ConstraintA(array(
-            'property1' => 'foo',
-            'property2' => 'bar',
-        ));
-
-        $constraint = unserialize(serialize($constraint));
-
-        $expected = new ConstraintA(array(
-            'property1' => 'foo',
-            'property2' => 'bar',
-            'groups' => 'Default',
-        ));
-
-        $this->assertEquals($expected, $constraint);
-    }
-
-    public function testSerializeKeepsCustomGroups()
-    {
-        $constraint = new ConstraintA(array(
-            'property1' => 'foo',
-            'property2' => 'bar',
-            'groups' => 'MyGroup',
-        ));
-
-        $constraint = unserialize(serialize($constraint));
-
-        $this->assertSame(array('MyGroup'), $constraint->groups);
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Validator\Exception\InvalidArgumentException
-     */
-    public function testGetErrorNameForUnknownCode()
-    {
-        Constraint::getErrorName(1);
-    }
-}
diff --git a/vendor/symfony/validator/Tests/ConstraintViolationListTest.php b/vendor/symfony/validator/Tests/ConstraintViolationListTest.php
deleted file mode 100644
index 30d7ff0..0000000
--- a/vendor/symfony/validator/Tests/ConstraintViolationListTest.php
+++ /dev/null
@@ -1,134 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests;
-
-use Symfony\Component\Validator\ConstraintViolation;
-use Symfony\Component\Validator\ConstraintViolationList;
-
-class ConstraintViolationListTest extends \PHPUnit_Framework_TestCase
-{
-    protected $list;
-
-    protected function setUp()
-    {
-        $this->list = new ConstraintViolationList();
-    }
-
-    protected function tearDown()
-    {
-        $this->list = null;
-    }
-
-    public function testInit()
-    {
-        $this->assertCount(0, $this->list);
-    }
-
-    public function testInitWithViolations()
-    {
-        $violation = $this->getViolation('Error');
-        $this->list = new ConstraintViolationList(array($violation));
-
-        $this->assertCount(1, $this->list);
-        $this->assertSame($violation, $this->list[0]);
-    }
-
-    public function testAdd()
-    {
-        $violation = $this->getViolation('Error');
-        $this->list->add($violation);
-
-        $this->assertCount(1, $this->list);
-        $this->assertSame($violation, $this->list[0]);
-    }
-
-    public function testAddAll()
-    {
-        $violations = array(
-            10 => $this->getViolation('Error 1'),
-            20 => $this->getViolation('Error 2'),
-            30 => $this->getViolation('Error 3'),
-        );
-        $otherList = new ConstraintViolationList($violations);
-        $this->list->addAll($otherList);
-
-        $this->assertCount(3, $this->list);
-
-        $this->assertSame($violations[10], $this->list[0]);
-        $this->assertSame($violations[20], $this->list[1]);
-        $this->assertSame($violations[30], $this->list[2]);
-    }
-
-    public function testIterator()
-    {
-        $violations = array(
-            10 => $this->getViolation('Error 1'),
-            20 => $this->getViolation('Error 2'),
-            30 => $this->getViolation('Error 3'),
-        );
-
-        $this->list = new ConstraintViolationList($violations);
-
-        // indices are reset upon adding -> array_values()
-        $this->assertSame(array_values($violations), iterator_to_array($this->list));
-    }
-
-    public function testArrayAccess()
-    {
-        $violation = $this->getViolation('Error');
-        $this->list[] = $violation;
-
-        $this->assertSame($violation, $this->list[0]);
-        $this->assertTrue(isset($this->list[0]));
-
-        unset($this->list[0]);
-
-        $this->assertFalse(isset($this->list[0]));
-
-        $this->list[10] = $violation;
-
-        $this->assertSame($violation, $this->list[10]);
-        $this->assertTrue(isset($this->list[10]));
-    }
-
-    public function testToString()
-    {
-        $this->list = new ConstraintViolationList(array(
-            $this->getViolation('Error 1', 'Root'),
-            $this->getViolation('Error 2', 'Root', 'foo.bar'),
-            $this->getViolation('Error 3', 'Root', '[baz]'),
-            $this->getViolation('Error 4', '', 'foo.bar'),
-            $this->getViolation('Error 5', '', '[baz]'),
-        ));
-
-        $expected = <<<EOF
-Root:
-    Error 1
-Root.foo.bar:
-    Error 2
-Root[baz]:
-    Error 3
-foo.bar:
-    Error 4
-[baz]:
-    Error 5
-
-EOF;
-
-        $this->assertEquals($expected, (string) $this->list);
-    }
-
-    protected function getViolation($message, $root = null, $propertyPath = null)
-    {
-        return new ConstraintViolation($message, $message, array(), $root, $propertyPath, null);
-    }
-}
diff --git a/vendor/symfony/validator/Tests/ConstraintViolationTest.php b/vendor/symfony/validator/Tests/ConstraintViolationTest.php
deleted file mode 100644
index dffc384..0000000
--- a/vendor/symfony/validator/Tests/ConstraintViolationTest.php
+++ /dev/null
@@ -1,55 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests;
-
-use Symfony\Component\Validator\ConstraintViolation;
-
-class ConstraintViolationTest extends \PHPUnit_Framework_TestCase
-{
-    public function testToStringHandlesArrays()
-    {
-        $violation = new ConstraintViolation(
-            'Array',
-            '{{ value }}',
-            array('{{ value }}' => array(1, 2, 3)),
-            'Root',
-            'property.path',
-            null
-        );
-
-        $expected = <<<EOF
-Root.property.path:
-    Array
-EOF;
-
-        $this->assertSame($expected, (string) $violation);
-    }
-
-    public function testToStringHandlesArrayRoots()
-    {
-        $violation = new ConstraintViolation(
-            '42 cannot be used here',
-            'this is the message template',
-            array(),
-            array('some_value' => 42),
-            'some_value',
-            null
-        );
-
-        $expected = <<<EOF
-Array.some_value:
-    42 cannot be used here
-EOF;
-
-        $this->assertSame($expected, (string) $violation);
-    }
-}
diff --git a/vendor/symfony/validator/Tests/Constraints/AbstractComparisonValidatorTestCase.php b/vendor/symfony/validator/Tests/Constraints/AbstractComparisonValidatorTestCase.php
deleted file mode 100644
index aa111a3..0000000
--- a/vendor/symfony/validator/Tests/Constraints/AbstractComparisonValidatorTestCase.php
+++ /dev/null
@@ -1,177 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Constraints;
-
-use Symfony\Component\Intl\Util\IntlTestHelper;
-use Symfony\Component\Validator\Constraint;
-
-class ComparisonTest_Class
-{
-    protected $value;
-
-    public function __construct($value)
-    {
-        $this->value = $value;
-    }
-
-    public function __toString()
-    {
-        return (string) $this->value;
-    }
-}
-
-/**
- * @author Daniel Holmes <daniel@danielholmes.org>
- */
-abstract class AbstractComparisonValidatorTestCase extends AbstractConstraintValidatorTest
-{
-    protected static function addPhp5Dot5Comparisons(array $comparisons)
-    {
-        if (PHP_VERSION_ID < 50500) {
-            return $comparisons;
-        }
-
-        $result = $comparisons;
-
-        // Duplicate all tests involving DateTime objects to be tested with
-        // DateTimeImmutable objects as well
-        foreach ($comparisons as $comparison) {
-            $add = false;
-
-            foreach ($comparison as $i => $value) {
-                if ($value instanceof \DateTime) {
-                    $comparison[$i] = new \DateTimeImmutable(
-                        $value->format('Y-m-d H:i:s.u e'),
-                        $value->getTimezone()
-                    );
-                    $add = true;
-                } elseif ('DateTime' === $value) {
-                    $comparison[$i] = 'DateTimeImmutable';
-                    $add = true;
-                }
-            }
-
-            if ($add) {
-                $result[] = $comparison;
-            }
-        }
-
-        return $result;
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Validator\Exception\ConstraintDefinitionException
-     */
-    public function testThrowsConstraintExceptionIfNoValueOrProperty()
-    {
-        $comparison = $this->createConstraint(array());
-
-        $this->validator->validate('some value', $comparison);
-    }
-
-    /**
-     * @dataProvider provideAllValidComparisons
-     *
-     * @param mixed $dirtyValue
-     * @param mixed $comparisonValue
-     */
-    public function testValidComparisonToValue($dirtyValue, $comparisonValue)
-    {
-        $constraint = $this->createConstraint(array('value' => $comparisonValue));
-
-        $this->validator->validate($dirtyValue, $constraint);
-
-        $this->assertNoViolation();
-    }
-
-    /**
-     * @return array
-     */
-    public function provideAllValidComparisons()
-    {
-        // The provider runs before setUp(), so we need to manually fix
-        // the default timezone
-        $this->setDefaultTimezone('UTC');
-
-        $comparisons = self::addPhp5Dot5Comparisons($this->provideValidComparisons());
-
-        $this->restoreDefaultTimezone();
-
-        return $comparisons;
-    }
-
-    /**
-     * @return array
-     */
-    abstract public function provideValidComparisons();
-
-    /**
-     * @dataProvider provideAllInvalidComparisons
-     *
-     * @param mixed  $dirtyValue
-     * @param mixed  $dirtyValueAsString
-     * @param mixed  $comparedValue
-     * @param mixed  $comparedValueString
-     * @param string $comparedValueType
-     */
-    public function testInvalidComparisonToValue($dirtyValue, $dirtyValueAsString, $comparedValue, $comparedValueString, $comparedValueType)
-    {
-        // Conversion of dates to string differs between ICU versions
-        // Make sure we have the correct version loaded
-        if ($dirtyValue instanceof \DateTime || $dirtyValue instanceof \DateTimeInterface) {
-            IntlTestHelper::requireIntl($this);
-
-            if (PHP_VERSION_ID < 50304 && !(extension_loaded('intl') && method_exists('IntlDateFormatter', 'setTimeZone'))) {
-                $this->markTestSkipped('Intl supports formatting DateTime objects since 5.3.4');
-            }
-        }
-
-        $constraint = $this->createConstraint(array('value' => $comparedValue));
-        $constraint->message = 'Constraint Message';
-
-        $this->validator->validate($dirtyValue, $constraint);
-
-        $this->buildViolation('Constraint Message')
-            ->setParameter('{{ value }}', $dirtyValueAsString)
-            ->setParameter('{{ compared_value }}', $comparedValueString)
-            ->setParameter('{{ compared_value_type }}', $comparedValueType)
-            ->assertRaised();
-    }
-
-    /**
-     * @return array
-     */
-    public function provideAllInvalidComparisons()
-    {
-        // The provider runs before setUp(), so we need to manually fix
-        // the default timezone
-        $this->setDefaultTimezone('UTC');
-
-        $comparisons = self::addPhp5Dot5Comparisons($this->provideInvalidComparisons());
-
-        $this->restoreDefaultTimezone();
-
-        return $comparisons;
-    }
-
-    /**
-     * @return array
-     */
-    abstract public function provideInvalidComparisons();
-
-    /**
-     * @param array $options Options for the constraint
-     *
-     * @return Constraint
-     */
-    abstract protected function createConstraint(array $options);
-}
diff --git a/vendor/symfony/validator/Tests/Constraints/AbstractConstraintValidatorTest.php b/vendor/symfony/validator/Tests/Constraints/AbstractConstraintValidatorTest.php
deleted file mode 100644
index b5e2a7a..0000000
--- a/vendor/symfony/validator/Tests/Constraints/AbstractConstraintValidatorTest.php
+++ /dev/null
@@ -1,441 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Constraints;
-
-use Symfony\Component\Validator\Constraint;
-use Symfony\Component\Validator\Constraints\NotNull;
-use Symfony\Component\Validator\ConstraintValidatorInterface;
-use Symfony\Component\Validator\ConstraintViolation;
-use Symfony\Component\Validator\Context\ExecutionContext;
-use Symfony\Component\Validator\Context\ExecutionContextInterface;
-use Symfony\Component\Validator\Context\LegacyExecutionContext;
-use Symfony\Component\Validator\ExecutionContextInterface as LegacyExecutionContextInterface;
-use Symfony\Component\Validator\Mapping\ClassMetadata;
-use Symfony\Component\Validator\Mapping\PropertyMetadata;
-use Symfony\Component\Validator\Validation;
-
-/**
- * @since 2.5.3
- *
- * @author Bernhard Schussek <bschussek@gmail.com>
- */
-abstract class AbstractConstraintValidatorTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @var ExecutionContextInterface
-     */
-    protected $context;
-
-    /**
-     * @var ConstraintValidatorInterface
-     */
-    protected $validator;
-
-    protected $group;
-    protected $metadata;
-    protected $object;
-    protected $value;
-    protected $root;
-    protected $propertyPath;
-    protected $constraint;
-    protected $defaultTimezone;
-
-    protected function setUp()
-    {
-        $this->group = 'MyGroup';
-        $this->metadata = null;
-        $this->object = null;
-        $this->value = 'InvalidValue';
-        $this->root = 'root';
-        $this->propertyPath = 'property.path';
-
-        // Initialize the context with some constraint so that we can
-        // successfully build a violation.
-        $this->constraint = new NotNull();
-
-        $this->context = $this->createContext();
-        $this->validator = $this->createValidator();
-        $this->validator->initialize($this->context);
-
-        \Locale::setDefault('en');
-
-        $this->setDefaultTimezone('UTC');
-    }
-
-    protected function tearDown()
-    {
-        $this->restoreDefaultTimezone();
-    }
-
-    protected function setDefaultTimezone($defaultTimezone)
-    {
-        // Make sure this method can not be called twice before calling
-        // also restoreDefaultTimezone()
-        if (null === $this->defaultTimezone) {
-            $this->defaultTimezone = date_default_timezone_get();
-            date_default_timezone_set($defaultTimezone);
-        }
-    }
-
-    protected function restoreDefaultTimezone()
-    {
-        if (null !== $this->defaultTimezone) {
-            date_default_timezone_set($this->defaultTimezone);
-            $this->defaultTimezone = null;
-        }
-    }
-
-    protected function createContext()
-    {
-        $translator = $this->getMock('Symfony\Component\Translation\TranslatorInterface');
-        $validator = $this->getMock('Symfony\Component\Validator\Validator\ValidatorInterface');
-        $contextualValidator = $this->getMock('Symfony\Component\Validator\Validator\ContextualValidatorInterface');
-
-        switch ($this->getApiVersion()) {
-            case Validation::API_VERSION_2_5:
-                $context = new ExecutionContext(
-                    $validator,
-                    $this->root,
-                    $translator
-                );
-                break;
-            case Validation::API_VERSION_2_4:
-            case Validation::API_VERSION_2_5_BC:
-                $context = new LegacyExecutionContext(
-                    $validator,
-                    $this->root,
-                    $this->getMock('Symfony\Component\Validator\MetadataFactoryInterface'),
-                    $translator
-                );
-                break;
-            default:
-                throw new \RuntimeException('Invalid API version');
-        }
-
-        $context->setGroup($this->group);
-        $context->setNode($this->value, $this->object, $this->metadata, $this->propertyPath);
-        $context->setConstraint($this->constraint);
-
-        $validator->expects($this->any())
-            ->method('inContext')
-            ->with($context)
-            ->will($this->returnValue($contextualValidator));
-
-        return $context;
-    }
-
-    /**
-     * @param mixed  $message
-     * @param array  $parameters
-     * @param string $propertyPath
-     * @param string $invalidValue
-     * @param null   $plural
-     * @param null   $code
-     *
-     * @return ConstraintViolation
-     *
-     * @deprecated to be removed in Symfony 3.0. Use {@link buildViolation()} instead.
-     */
-    protected function createViolation($message, array $parameters = array(), $propertyPath = 'property.path', $invalidValue = 'InvalidValue', $plural = null, $code = null)
-    {
-        return new ConstraintViolation(
-            null,
-            $message,
-            $parameters,
-            $this->root,
-            $propertyPath,
-            $invalidValue,
-            $plural,
-            $code,
-            $this->constraint
-        );
-    }
-
-    protected function setGroup($group)
-    {
-        $this->group = $group;
-        $this->context->setGroup($group);
-    }
-
-    protected function setObject($object)
-    {
-        $this->object = $object;
-        $this->metadata = is_object($object)
-            ? new ClassMetadata(get_class($object))
-            : null;
-
-        $this->context->setNode($this->value, $this->object, $this->metadata, $this->propertyPath);
-    }
-
-    protected function setProperty($object, $property)
-    {
-        $this->object = $object;
-        $this->metadata = is_object($object)
-            ? new PropertyMetadata(get_class($object), $property)
-            : null;
-
-        $this->context->setNode($this->value, $this->object, $this->metadata, $this->propertyPath);
-    }
-
-    protected function setValue($value)
-    {
-        $this->value = $value;
-        $this->context->setNode($this->value, $this->object, $this->metadata, $this->propertyPath);
-    }
-
-    protected function setRoot($root)
-    {
-        $this->root = $root;
-        $this->context = $this->createContext();
-        $this->validator->initialize($this->context);
-    }
-
-    protected function setPropertyPath($propertyPath)
-    {
-        $this->propertyPath = $propertyPath;
-        $this->context->setNode($this->value, $this->object, $this->metadata, $this->propertyPath);
-    }
-
-    protected function expectNoValidate()
-    {
-        $validator = $this->context->getValidator()->inContext($this->context);
-        $validator->expects($this->never())
-            ->method('atPath');
-        $validator->expects($this->never())
-            ->method('validate');
-    }
-
-    protected function expectValidateAt($i, $propertyPath, $value, $group)
-    {
-        $validator = $this->context->getValidator()->inContext($this->context);
-        $validator->expects($this->at(2 * $i))
-            ->method('atPath')
-            ->with($propertyPath)
-            ->will($this->returnValue($validator));
-        $validator->expects($this->at(2 * $i + 1))
-            ->method('validate')
-            ->with($value, $this->logicalOr(null, array()), $group);
-    }
-
-    protected function expectValidateValueAt($i, $propertyPath, $value, $constraints, $group = null)
-    {
-        $contextualValidator = $this->context->getValidator()->inContext($this->context);
-        $contextualValidator->expects($this->at(2 * $i))
-            ->method('atPath')
-            ->with($propertyPath)
-            ->will($this->returnValue($contextualValidator));
-        $contextualValidator->expects($this->at(2 * $i + 1))
-            ->method('validate')
-            ->with($value, $constraints, $group);
-    }
-
-    protected function assertNoViolation()
-    {
-        $this->assertSame(0, $violationsCount = count($this->context->getViolations()), sprintf('0 violation expected. Got %u.', $violationsCount));
-    }
-
-    /**
-     * @param mixed  $message
-     * @param array  $parameters
-     * @param string $propertyPath
-     * @param string $invalidValue
-     * @param null   $plural
-     * @param null   $code
-     *
-     * @deprecated To be removed in Symfony 3.0. Use
-     *             {@link buildViolation()} instead.
-     */
-    protected function assertViolation($message, array $parameters = array(), $propertyPath = 'property.path', $invalidValue = 'InvalidValue', $plural = null, $code = null)
-    {
-        @trigger_error('The '.__METHOD__.' method is deprecated since version 2.3 and will be removed in 3.0. Use the buildViolation() method instead.', E_USER_DEPRECATED);
-
-        $this->buildViolation($message)
-            ->setParameters($parameters)
-            ->atPath($propertyPath)
-            ->setInvalidValue($invalidValue)
-            ->setCode($code)
-            ->setPlural($plural)
-            ->assertRaised();
-    }
-
-    /**
-     * @param array $expected
-     *
-     * @deprecated To be removed in Symfony 3.0. Use
-     *             {@link buildViolation()} instead.
-     */
-    protected function assertViolations(array $expected)
-    {
-        @trigger_error('The '.__METHOD__.' method is deprecated since version 2.3 and will be removed in 3.0. Use the buildViolation() method instead.', E_USER_DEPRECATED);
-
-        $violations = $this->context->getViolations();
-
-        $this->assertCount(count($expected), $violations);
-
-        $i = 0;
-
-        foreach ($expected as $violation) {
-            $this->assertEquals($violation, $violations[$i++]);
-        }
-    }
-
-    /**
-     * @param $message
-     *
-     * @return ConstraintViolationAssertion
-     */
-    protected function buildViolation($message)
-    {
-        return new ConstraintViolationAssertion($this->context, $message, $this->constraint);
-    }
-
-    protected function getApiVersion()
-    {
-        return Validation::API_VERSION_2_5;
-    }
-
-    abstract protected function createValidator();
-}
-
-/**
- * @internal
- */
-class ConstraintViolationAssertion
-{
-    /**
-     * @var LegacyExecutionContextInterface
-     */
-    private $context;
-
-    /**
-     * @var ConstraintViolationAssertion[]
-     */
-    private $assertions;
-
-    private $message;
-    private $parameters = array();
-    private $invalidValue = 'InvalidValue';
-    private $propertyPath = 'property.path';
-    private $translationDomain;
-    private $plural;
-    private $code;
-    private $constraint;
-    private $cause;
-
-    public function __construct(LegacyExecutionContextInterface $context, $message, Constraint $constraint = null, array $assertions = array())
-    {
-        $this->context = $context;
-        $this->message = $message;
-        $this->constraint = $constraint;
-        $this->assertions = $assertions;
-    }
-
-    public function atPath($path)
-    {
-        $this->propertyPath = $path;
-
-        return $this;
-    }
-
-    public function setParameter($key, $value)
-    {
-        $this->parameters[$key] = $value;
-
-        return $this;
-    }
-
-    public function setParameters(array $parameters)
-    {
-        $this->parameters = $parameters;
-
-        return $this;
-    }
-
-    public function setTranslationDomain($translationDomain)
-    {
-        $this->translationDomain = $translationDomain;
-
-        return $this;
-    }
-
-    public function setInvalidValue($invalidValue)
-    {
-        $this->invalidValue = $invalidValue;
-
-        return $this;
-    }
-
-    public function setPlural($number)
-    {
-        $this->plural = $number;
-
-        return $this;
-    }
-
-    public function setCode($code)
-    {
-        $this->code = $code;
-
-        return $this;
-    }
-
-    public function setCause($cause)
-    {
-        $this->cause = $cause;
-
-        return $this;
-    }
-
-    public function buildNextViolation($message)
-    {
-        $assertions = $this->assertions;
-        $assertions[] = $this;
-
-        return new self($this->context, $message, $this->constraint, $assertions);
-    }
-
-    public function assertRaised()
-    {
-        $expected = array();
-        foreach ($this->assertions as $assertion) {
-            $expected[] = $assertion->getViolation();
-        }
-        $expected[] = $this->getViolation();
-
-        $violations = iterator_to_array($this->context->getViolations());
-
-        \PHPUnit_Framework_Assert::assertSame($expectedCount = count($expected), $violationsCount = count($violations), sprintf('%u violation(s) expected. Got %u.', $expectedCount, $violationsCount));
-
-        reset($violations);
-
-        foreach ($expected as $violation) {
-            \PHPUnit_Framework_Assert::assertEquals($violation, current($violations));
-            next($violations);
-        }
-    }
-
-    private function getViolation()
-    {
-        return new ConstraintViolation(
-            null,
-            $this->message,
-            $this->parameters,
-            $this->context->getRoot(),
-            $this->propertyPath,
-            $this->invalidValue,
-            $this->plural,
-            $this->code,
-            $this->constraint,
-            $this->cause
-        );
-    }
-}
diff --git a/vendor/symfony/validator/Tests/Constraints/AllTest.php b/vendor/symfony/validator/Tests/Constraints/AllTest.php
deleted file mode 100644
index 36b5198..0000000
--- a/vendor/symfony/validator/Tests/Constraints/AllTest.php
+++ /dev/null
@@ -1,41 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Constraints;
-
-use Symfony\Component\Validator\Constraints\All;
-use Symfony\Component\Validator\Constraints\Valid;
-
-/**
- * @author Bernhard Schussek <bschussek@gmail.com>
- */
-class AllTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @expectedException \Symfony\Component\Validator\Exception\ConstraintDefinitionException
-     */
-    public function testRejectNonConstraints()
-    {
-        new All(array(
-            'foo',
-        ));
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Validator\Exception\ConstraintDefinitionException
-     */
-    public function testRejectValidConstraint()
-    {
-        new All(array(
-            new Valid(),
-        ));
-    }
-}
diff --git a/vendor/symfony/validator/Tests/Constraints/AllValidatorTest.php b/vendor/symfony/validator/Tests/Constraints/AllValidatorTest.php
deleted file mode 100644
index 57dd600..0000000
--- a/vendor/symfony/validator/Tests/Constraints/AllValidatorTest.php
+++ /dev/null
@@ -1,93 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Constraints;
-
-use Symfony\Component\Validator\Constraints\All;
-use Symfony\Component\Validator\Constraints\AllValidator;
-use Symfony\Component\Validator\Constraints\NotNull;
-use Symfony\Component\Validator\Constraints\Range;
-use Symfony\Component\Validator\Validation;
-
-class AllValidatorTest extends AbstractConstraintValidatorTest
-{
-    protected function getApiVersion()
-    {
-        return Validation::API_VERSION_2_5;
-    }
-
-    protected function createValidator()
-    {
-        return new AllValidator();
-    }
-
-    public function testNullIsValid()
-    {
-        $this->validator->validate(null, new All(new Range(array('min' => 4))));
-
-        $this->assertNoViolation();
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Validator\Exception\UnexpectedTypeException
-     */
-    public function testThrowsExceptionIfNotTraversable()
-    {
-        $this->validator->validate('foo.barbar', new All(new Range(array('min' => 4))));
-    }
-
-    /**
-     * @dataProvider getValidArguments
-     */
-    public function testWalkSingleConstraint($array)
-    {
-        $constraint = new Range(array('min' => 4));
-
-        $i = 0;
-
-        foreach ($array as $key => $value) {
-            $this->expectValidateValueAt($i++, '['.$key.']', $value, array($constraint));
-        }
-
-        $this->validator->validate($array, new All($constraint));
-
-        $this->assertNoViolation();
-    }
-
-    /**
-     * @dataProvider getValidArguments
-     */
-    public function testWalkMultipleConstraints($array)
-    {
-        $constraint1 = new Range(array('min' => 4));
-        $constraint2 = new NotNull();
-
-        $constraints = array($constraint1, $constraint2);
-
-        $i = 0;
-
-        foreach ($array as $key => $value) {
-            $this->expectValidateValueAt($i++, '['.$key.']', $value, array($constraint1, $constraint2));
-        }
-
-        $this->validator->validate($array, new All($constraints));
-
-        $this->assertNoViolation();
-    }
-
-    public function getValidArguments()
-    {
-        return array(
-            array(array(5, 6, 7)),
-            array(new \ArrayObject(array(5, 6, 7))),
-        );
-    }
-}
diff --git a/vendor/symfony/validator/Tests/Constraints/BlankValidatorTest.php b/vendor/symfony/validator/Tests/Constraints/BlankValidatorTest.php
deleted file mode 100644
index a7f3d7d..0000000
--- a/vendor/symfony/validator/Tests/Constraints/BlankValidatorTest.php
+++ /dev/null
@@ -1,69 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Constraints;
-
-use Symfony\Component\Validator\Constraints\Blank;
-use Symfony\Component\Validator\Constraints\BlankValidator;
-use Symfony\Component\Validator\Validation;
-
-class BlankValidatorTest extends AbstractConstraintValidatorTest
-{
-    protected function getApiVersion()
-    {
-        return Validation::API_VERSION_2_5;
-    }
-
-    protected function createValidator()
-    {
-        return new BlankValidator();
-    }
-
-    public function testNullIsValid()
-    {
-        $this->validator->validate(null, new Blank());
-
-        $this->assertNoViolation();
-    }
-
-    public function testBlankIsValid()
-    {
-        $this->validator->validate('', new Blank());
-
-        $this->assertNoViolation();
-    }
-
-    /**
-     * @dataProvider getInvalidValues
-     */
-    public function testInvalidValues($value, $valueAsString)
-    {
-        $constraint = new Blank(array(
-            'message' => 'myMessage',
-        ));
-
-        $this->validator->validate($value, $constraint);
-
-        $this->buildViolation('myMessage')
-            ->setParameter('{{ value }}', $valueAsString)
-            ->assertRaised();
-    }
-
-    public function getInvalidValues()
-    {
-        return array(
-            array('foobar', '"foobar"'),
-            array(0, '0'),
-            array(false, 'false'),
-            array(1234, '1234'),
-        );
-    }
-}
diff --git a/vendor/symfony/validator/Tests/Constraints/CallbackValidatorTest.php b/vendor/symfony/validator/Tests/Constraints/CallbackValidatorTest.php
deleted file mode 100644
index 5ad8276..0000000
--- a/vendor/symfony/validator/Tests/Constraints/CallbackValidatorTest.php
+++ /dev/null
@@ -1,355 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Constraints;
-
-use Symfony\Component\Validator\Constraint;
-use Symfony\Component\Validator\Constraints\Callback;
-use Symfony\Component\Validator\Constraints\CallbackValidator;
-use Symfony\Component\Validator\ExecutionContextInterface;
-use Symfony\Component\Validator\Validation;
-
-class CallbackValidatorTest_Class
-{
-    public static function validateCallback($object, ExecutionContextInterface $context)
-    {
-        $context->addViolation('Callback message', array('{{ value }}' => 'foobar'));
-
-        return false;
-    }
-}
-
-class CallbackValidatorTest_Object
-{
-    public function validate(ExecutionContextInterface $context)
-    {
-        $context->addViolation('My message', array('{{ value }}' => 'foobar'));
-
-        return false;
-    }
-
-    public static function validateStatic($object, ExecutionContextInterface $context)
-    {
-        $context->addViolation('Static message', array('{{ value }}' => 'baz'));
-
-        return false;
-    }
-}
-
-class CallbackValidatorTest extends AbstractConstraintValidatorTest
-{
-    protected function getApiVersion()
-    {
-        return Validation::API_VERSION_2_5;
-    }
-
-    protected function createValidator()
-    {
-        return new CallbackValidator();
-    }
-
-    public function testNullIsValid()
-    {
-        $this->validator->validate(null, new Callback());
-
-        $this->assertNoViolation();
-    }
-
-    public function testSingleMethod()
-    {
-        $object = new CallbackValidatorTest_Object();
-        $constraint = new Callback('validate');
-
-        $this->validator->validate($object, $constraint);
-
-        $this->buildViolation('My message')
-            ->setParameter('{{ value }}', 'foobar')
-            ->assertRaised();
-    }
-
-    public function testSingleMethodExplicitName()
-    {
-        $object = new CallbackValidatorTest_Object();
-        $constraint = new Callback(array('callback' => 'validate'));
-
-        $this->validator->validate($object, $constraint);
-
-        $this->buildViolation('My message')
-            ->setParameter('{{ value }}', 'foobar')
-            ->assertRaised();
-    }
-
-    public function testSingleStaticMethod()
-    {
-        $object = new CallbackValidatorTest_Object();
-        $constraint = new Callback('validateStatic');
-
-        $this->validator->validate($object, $constraint);
-
-        $this->buildViolation('Static message')
-            ->setParameter('{{ value }}', 'baz')
-            ->assertRaised();
-    }
-
-    public function testClosure()
-    {
-        $object = new CallbackValidatorTest_Object();
-        $constraint = new Callback(function ($object, ExecutionContextInterface $context) {
-            $context->addViolation('My message', array('{{ value }}' => 'foobar'));
-
-            return false;
-        });
-
-        $this->validator->validate($object, $constraint);
-
-        $this->buildViolation('My message')
-            ->setParameter('{{ value }}', 'foobar')
-            ->assertRaised();
-    }
-
-    public function testClosureNullObject()
-    {
-        $constraint = new Callback(function ($object, ExecutionContextInterface $context) {
-            $context->addViolation('My message', array('{{ value }}' => 'foobar'));
-
-            return false;
-        });
-
-        $this->validator->validate(null, $constraint);
-
-        $this->buildViolation('My message')
-            ->setParameter('{{ value }}', 'foobar')
-            ->assertRaised();
-    }
-
-    public function testClosureExplicitName()
-    {
-        $object = new CallbackValidatorTest_Object();
-        $constraint = new Callback(array(
-            'callback' => function ($object, ExecutionContextInterface $context) {
-                $context->addViolation('My message', array('{{ value }}' => 'foobar'));
-
-                return false;
-            },
-        ));
-
-        $this->validator->validate($object, $constraint);
-
-        $this->buildViolation('My message')
-            ->setParameter('{{ value }}', 'foobar')
-            ->assertRaised();
-    }
-
-    public function testArrayCallable()
-    {
-        $object = new CallbackValidatorTest_Object();
-        $constraint = new Callback(array(__CLASS__.'_Class', 'validateCallback'));
-
-        $this->validator->validate($object, $constraint);
-
-        $this->buildViolation('Callback message')
-            ->setParameter('{{ value }}', 'foobar')
-            ->assertRaised();
-    }
-
-    public function testArrayCallableNullObject()
-    {
-        $constraint = new Callback(array(__CLASS__.'_Class', 'validateCallback'));
-
-        $this->validator->validate(null, $constraint);
-
-        $this->buildViolation('Callback message')
-            ->setParameter('{{ value }}', 'foobar')
-            ->assertRaised();
-    }
-
-    public function testArrayCallableExplicitName()
-    {
-        $object = new CallbackValidatorTest_Object();
-        $constraint = new Callback(array(
-            'callback' => array(__CLASS__.'_Class', 'validateCallback'),
-        ));
-
-        $this->validator->validate($object, $constraint);
-
-        $this->buildViolation('Callback message')
-            ->setParameter('{{ value }}', 'foobar')
-            ->assertRaised();
-    }
-
-    // BC with Symfony < 2.4
-    /**
-     * @group legacy
-     */
-    public function testLegacySingleMethodBc()
-    {
-        $object = new CallbackValidatorTest_Object();
-        $constraint = new Callback(array('validate'));
-
-        $this->validator->validate($object, $constraint);
-
-        $this->buildViolation('My message')
-            ->setParameter('{{ value }}', 'foobar')
-            ->assertRaised();
-    }
-
-    // BC with Symfony < 2.4
-    /**
-     * @group legacy
-     */
-    public function testLegacySingleMethodBcExplicitName()
-    {
-        $object = new CallbackValidatorTest_Object();
-        $constraint = new Callback(array('methods' => array('validate')));
-
-        $this->validator->validate($object, $constraint);
-
-        $this->buildViolation('My message')
-            ->setParameter('{{ value }}', 'foobar')
-            ->assertRaised();
-    }
-
-    // BC with Symfony < 2.4
-    /**
-     * @group legacy
-     */
-    public function testLegacyMultipleMethodsBc()
-    {
-        $object = new CallbackValidatorTest_Object();
-        $constraint = new Callback(array('validate', 'validateStatic'));
-
-        $this->validator->validate($object, $constraint);
-
-        $this->buildViolation('My message')
-            ->setParameter('{{ value }}', 'foobar')
-            ->buildNextViolation('Static message')
-            ->setParameter('{{ value }}', 'baz')
-            ->assertRaised();
-    }
-
-    // BC with Symfony < 2.4
-    /**
-     * @group legacy
-     */
-    public function testLegacyMultipleMethodsBcExplicitName()
-    {
-        $object = new CallbackValidatorTest_Object();
-        $constraint = new Callback(array(
-            'methods' => array('validate', 'validateStatic'),
-        ));
-
-        $this->validator->validate($object, $constraint);
-
-        $this->buildViolation('My message')
-            ->setParameter('{{ value }}', 'foobar')
-            ->buildNextViolation('Static message')
-            ->setParameter('{{ value }}', 'baz')
-            ->assertRaised();
-    }
-
-    // BC with Symfony < 2.4
-    /**
-     * @group legacy
-     */
-    public function testLegacySingleStaticMethodBc()
-    {
-        $object = new CallbackValidatorTest_Object();
-        $constraint = new Callback(array(
-            array(__CLASS__.'_Class', 'validateCallback'),
-        ));
-
-        $this->validator->validate($object, $constraint);
-
-        $this->buildViolation('Callback message')
-            ->setParameter('{{ value }}', 'foobar')
-            ->assertRaised();
-    }
-
-    // BC with Symfony < 2.4
-    /**
-     * @group legacy
-     */
-    public function testLegacySingleStaticMethodBcExplicitName()
-    {
-        $object = new CallbackValidatorTest_Object();
-        $constraint = new Callback(array(
-            'methods' => array(array(__CLASS__.'_Class', 'validateCallback')),
-        ));
-
-        $this->validator->validate($object, $constraint);
-
-        $this->buildViolation('Callback message')
-            ->setParameter('{{ value }}', 'foobar')
-            ->assertRaised();
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Validator\Exception\ConstraintDefinitionException
-     */
-    public function testExpectValidMethods()
-    {
-        $object = new CallbackValidatorTest_Object();
-
-        $this->validator->validate($object, new Callback(array('callback' => array('foobar'))));
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Validator\Exception\ConstraintDefinitionException
-     */
-    public function testExpectValidCallbacks()
-    {
-        $object = new CallbackValidatorTest_Object();
-
-        $this->validator->validate($object, new Callback(array('callback' => array('foo', 'bar'))));
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Validator\Exception\ConstraintDefinitionException
-     * @group legacy
-     */
-    public function testLegacyExpectEitherCallbackOrMethods()
-    {
-        $object = new CallbackValidatorTest_Object();
-
-        $this->validator->validate($object, new Callback(array(
-            'callback' => 'validate',
-            'methods' => array('validateStatic'),
-        )));
-    }
-
-    public function testConstraintGetTargets()
-    {
-        $constraint = new Callback(array());
-        $targets = array(Constraint::CLASS_CONSTRAINT, Constraint::PROPERTY_CONSTRAINT);
-
-        $this->assertEquals($targets, $constraint->getTargets());
-    }
-
-    // Should succeed. Needed when defining constraints as annotations.
-    public function testNoConstructorArguments()
-    {
-        new Callback();
-    }
-
-    public function testAnnotationInvocationSingleValued()
-    {
-        $constraint = new Callback(array('value' => 'validateStatic'));
-
-        $this->assertEquals(new Callback('validateStatic'), $constraint);
-    }
-
-    public function testAnnotationInvocationMultiValued()
-    {
-        $constraint = new Callback(array('value' => array(__CLASS__.'_Class', 'validateCallback')));
-
-        $this->assertEquals(new Callback(array(__CLASS__.'_Class', 'validateCallback')), $constraint);
-    }
-}
diff --git a/vendor/symfony/validator/Tests/Constraints/CardSchemeValidatorTest.php b/vendor/symfony/validator/Tests/Constraints/CardSchemeValidatorTest.php
deleted file mode 100644
index 2d623c9..0000000
--- a/vendor/symfony/validator/Tests/Constraints/CardSchemeValidatorTest.php
+++ /dev/null
@@ -1,135 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Constraints;
-
-use Symfony\Component\Validator\Constraints\CardScheme;
-use Symfony\Component\Validator\Constraints\CardSchemeValidator;
-use Symfony\Component\Validator\Validation;
-
-class CardSchemeValidatorTest extends AbstractConstraintValidatorTest
-{
-    protected function getApiVersion()
-    {
-        return Validation::API_VERSION_2_5;
-    }
-
-    protected function createValidator()
-    {
-        return new CardSchemeValidator();
-    }
-
-    public function testNullIsValid()
-    {
-        $this->validator->validate(null, new CardScheme(array('schemes' => array())));
-
-        $this->assertNoViolation();
-    }
-
-    public function testEmptyStringIsValid()
-    {
-        $this->validator->validate('', new CardScheme(array('schemes' => array())));
-
-        $this->assertNoViolation();
-    }
-
-    /**
-     * @dataProvider getValidNumbers
-     */
-    public function testValidNumbers($scheme, $number)
-    {
-        $this->validator->validate($number, new CardScheme(array('schemes' => $scheme)));
-
-        $this->assertNoViolation();
-    }
-
-    /**
-     * @dataProvider getInvalidNumbers
-     */
-    public function testInvalidNumbers($scheme, $number, $code)
-    {
-        $constraint = new CardScheme(array(
-            'schemes' => $scheme,
-            'message' => 'myMessage',
-        ));
-
-        $this->validator->validate($number, $constraint);
-
-        $this->buildViolation('myMessage')
-            ->setParameter('{{ value }}', is_string($number) ? '"'.$number.'"' : $number)
-            ->setCode($code)
-            ->assertRaised();
-    }
-
-    public function getValidNumbers()
-    {
-        return array(
-            array('AMEX', '378282246310005'),
-            array('AMEX', '371449635398431'),
-            array('AMEX', '378734493671000'),
-            array('AMEX', '347298508610146'),
-            array('CHINA_UNIONPAY', '6228888888888888'),
-            array('CHINA_UNIONPAY', '62288888888888888'),
-            array('CHINA_UNIONPAY', '622888888888888888'),
-            array('CHINA_UNIONPAY', '6228888888888888888'),
-            array('DINERS', '30569309025904'),
-            array('DINERS', '36088894118515'),
-            array('DINERS', '38520000023237'),
-            array('DISCOVER', '6011111111111117'),
-            array('DISCOVER', '6011000990139424'),
-            array('INSTAPAYMENT', '6372476031350068'),
-            array('INSTAPAYMENT', '6385537775789749'),
-            array('INSTAPAYMENT', '6393440808445746'),
-            array('JCB', '3530111333300000'),
-            array('JCB', '3566002020360505'),
-            array('JCB', '213112345678901'),
-            array('JCB', '180012345678901'),
-            array('LASER', '6304678107004080'),
-            array('LASER', '6706440607428128629'),
-            array('LASER', '6771656738314582216'),
-            array('MAESTRO', '6759744069209'),
-            array('MAESTRO', '5020507657408074712'),
-            array('MAESTRO', '5612559223580173965'),
-            array('MAESTRO', '6759744069209'),
-            array('MAESTRO', '6759744069209'),
-            array('MAESTRO', '6594371785970435599'),
-            array('MASTERCARD', '5555555555554444'),
-            array('MASTERCARD', '5105105105105100'),
-            array('VISA', '4111111111111111'),
-            array('VISA', '4012888888881881'),
-            array('VISA', '4222222222222'),
-            array(array('AMEX', 'VISA'), '4111111111111111'),
-            array(array('AMEX', 'VISA'), '378282246310005'),
-            array(array('JCB', 'MASTERCARD'), '5105105105105100'),
-            array(array('VISA', 'MASTERCARD'), '5105105105105100'),
-        );
-    }
-
-    public function getInvalidNumbers()
-    {
-        return array(
-            array('VISA', '42424242424242424242', CardScheme::INVALID_FORMAT_ERROR),
-            array('AMEX', '357298508610146', CardScheme::INVALID_FORMAT_ERROR),
-            array('DINERS', '31569309025904', CardScheme::INVALID_FORMAT_ERROR),
-            array('DINERS', '37088894118515', CardScheme::INVALID_FORMAT_ERROR),
-            array('INSTAPAYMENT', '6313440808445746', CardScheme::INVALID_FORMAT_ERROR),
-            array('CHINA_UNIONPAY', '622888888888888', CardScheme::INVALID_FORMAT_ERROR),
-            array('CHINA_UNIONPAY', '62288888888888888888', CardScheme::INVALID_FORMAT_ERROR),
-            array('AMEX', '30569309025904', CardScheme::INVALID_FORMAT_ERROR), // DINERS number
-            array('AMEX', 'invalid', CardScheme::NOT_NUMERIC_ERROR), // A string
-            array('AMEX', 0, CardScheme::INVALID_FORMAT_ERROR), // a lone number
-            array('AMEX', '0', CardScheme::INVALID_FORMAT_ERROR), // a lone number
-            array('AMEX', '000000000000', CardScheme::INVALID_FORMAT_ERROR), // a lone number
-            array('DINERS', '3056930', CardScheme::INVALID_FORMAT_ERROR), // only first part of the number
-            array('DISCOVER', '1117', CardScheme::INVALID_FORMAT_ERROR), // only last 4 digits
-        );
-    }
-}
diff --git a/vendor/symfony/validator/Tests/Constraints/ChoiceValidatorTest.php b/vendor/symfony/validator/Tests/Constraints/ChoiceValidatorTest.php
deleted file mode 100644
index b515b84..0000000
--- a/vendor/symfony/validator/Tests/Constraints/ChoiceValidatorTest.php
+++ /dev/null
@@ -1,304 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Constraints;
-
-use Symfony\Component\Validator\Constraints\Choice;
-use Symfony\Component\Validator\Constraints\ChoiceValidator;
-use Symfony\Component\Validator\Validation;
-
-function choice_callback()
-{
-    return array('foo', 'bar');
-}
-
-class ChoiceValidatorTest extends AbstractConstraintValidatorTest
-{
-    protected function getApiVersion()
-    {
-        return Validation::API_VERSION_2_5;
-    }
-
-    protected function createValidator()
-    {
-        return new ChoiceValidator();
-    }
-
-    public static function staticCallback()
-    {
-        return array('foo', 'bar');
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Validator\Exception\UnexpectedTypeException
-     */
-    public function testExpectArrayIfMultipleIsTrue()
-    {
-        $constraint = new Choice(array(
-            'choices' => array('foo', 'bar'),
-            'multiple' => true,
-        ));
-
-        $this->validator->validate('asdf', $constraint);
-    }
-
-    public function testNullIsValid()
-    {
-        $this->validator->validate(null, new Choice(array('choices' => array('foo', 'bar'))));
-
-        $this->assertNoViolation();
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Validator\Exception\ConstraintDefinitionException
-     */
-    public function testChoicesOrCallbackExpected()
-    {
-        $this->validator->validate('foobar', new Choice());
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Validator\Exception\ConstraintDefinitionException
-     */
-    public function testValidCallbackExpected()
-    {
-        $this->validator->validate('foobar', new Choice(array('callback' => 'abcd')));
-    }
-
-    public function testValidChoiceArray()
-    {
-        $constraint = new Choice(array('choices' => array('foo', 'bar')));
-
-        $this->validator->validate('bar', $constraint);
-
-        $this->assertNoViolation();
-    }
-
-    public function testValidChoiceCallbackFunction()
-    {
-        $constraint = new Choice(array('callback' => __NAMESPACE__.'\choice_callback'));
-
-        $this->validator->validate('bar', $constraint);
-
-        $this->assertNoViolation();
-    }
-
-    public function testValidChoiceCallbackClosure()
-    {
-        $constraint = new Choice(array('callback' => function () {
-            return array('foo', 'bar');
-        }));
-
-        $this->validator->validate('bar', $constraint);
-
-        $this->assertNoViolation();
-    }
-
-    public function testValidChoiceCallbackStaticMethod()
-    {
-        $constraint = new Choice(array('callback' => array(__CLASS__, 'staticCallback')));
-
-        $this->validator->validate('bar', $constraint);
-
-        $this->assertNoViolation();
-    }
-
-    public function testValidChoiceCallbackContextMethod()
-    {
-        // search $this for "staticCallback"
-        $this->setObject($this);
-
-        $constraint = new Choice(array('callback' => 'staticCallback'));
-
-        $this->validator->validate('bar', $constraint);
-
-        $this->assertNoViolation();
-    }
-
-    public function testMultipleChoices()
-    {
-        $constraint = new Choice(array(
-            'choices' => array('foo', 'bar', 'baz'),
-            'multiple' => true,
-        ));
-
-        $this->validator->validate(array('baz', 'bar'), $constraint);
-
-        $this->assertNoViolation();
-    }
-
-    public function testInvalidChoice()
-    {
-        $constraint = new Choice(array(
-            'choices' => array('foo', 'bar'),
-            'message' => 'myMessage',
-        ));
-
-        $this->validator->validate('baz', $constraint);
-
-        $this->buildViolation('myMessage')
-            ->setParameter('{{ value }}', '"baz"')
-            ->setCode(Choice::NO_SUCH_CHOICE_ERROR)
-            ->assertRaised();
-    }
-
-    public function testInvalidChoiceEmptyChoices()
-    {
-        $constraint = new Choice(array(
-            // May happen when the choices are provided dynamically, e.g. from
-            // the DB or the model
-            'choices' => array(),
-            'message' => 'myMessage',
-        ));
-
-        $this->validator->validate('baz', $constraint);
-
-        $this->buildViolation('myMessage')
-            ->setParameter('{{ value }}', '"baz"')
-            ->setCode(Choice::NO_SUCH_CHOICE_ERROR)
-            ->assertRaised();
-    }
-
-    public function testInvalidChoiceMultiple()
-    {
-        $constraint = new Choice(array(
-            'choices' => array('foo', 'bar'),
-            'multipleMessage' => 'myMessage',
-            'multiple' => true,
-        ));
-
-        $this->validator->validate(array('foo', 'baz'), $constraint);
-
-        $this->buildViolation('myMessage')
-            ->setParameter('{{ value }}', '"baz"')
-            ->setInvalidValue('baz')
-            ->setCode(Choice::NO_SUCH_CHOICE_ERROR)
-            ->assertRaised();
-    }
-
-    public function testTooFewChoices()
-    {
-        $constraint = new Choice(array(
-            'choices' => array('foo', 'bar', 'moo', 'maa'),
-            'multiple' => true,
-            'min' => 2,
-            'minMessage' => 'myMessage',
-        ));
-
-        $value = array('foo');
-
-        $this->setValue($value);
-
-        $this->validator->validate($value, $constraint);
-
-        $this->buildViolation('myMessage')
-            ->setParameter('{{ limit }}', 2)
-            ->setInvalidValue($value)
-            ->setPlural(2)
-            ->setCode(Choice::TOO_FEW_ERROR)
-            ->assertRaised();
-    }
-
-    public function testTooManyChoices()
-    {
-        $constraint = new Choice(array(
-            'choices' => array('foo', 'bar', 'moo', 'maa'),
-            'multiple' => true,
-            'max' => 2,
-            'maxMessage' => 'myMessage',
-        ));
-
-        $value = array('foo', 'bar', 'moo');
-
-        $this->setValue($value);
-
-        $this->validator->validate($value, $constraint);
-
-        $this->buildViolation('myMessage')
-            ->setParameter('{{ limit }}', 2)
-            ->setInvalidValue($value)
-            ->setPlural(2)
-            ->setCode(Choice::TOO_MANY_ERROR)
-            ->assertRaised();
-    }
-
-    public function testNonStrict()
-    {
-        $constraint = new Choice(array(
-            'choices' => array(1, 2),
-            'strict' => false,
-        ));
-
-        $this->validator->validate('2', $constraint);
-        $this->validator->validate(2, $constraint);
-
-        $this->assertNoViolation();
-    }
-
-    public function testStrictAllowsExactValue()
-    {
-        $constraint = new Choice(array(
-            'choices' => array(1, 2),
-            'strict' => true,
-        ));
-
-        $this->validator->validate(2, $constraint);
-
-        $this->assertNoViolation();
-    }
-
-    public function testStrictDisallowsDifferentType()
-    {
-        $constraint = new Choice(array(
-            'choices' => array(1, 2),
-            'strict' => true,
-            'message' => 'myMessage',
-        ));
-
-        $this->validator->validate('2', $constraint);
-
-        $this->buildViolation('myMessage')
-            ->setParameter('{{ value }}', '"2"')
-            ->setCode(Choice::NO_SUCH_CHOICE_ERROR)
-            ->assertRaised();
-    }
-
-    public function testNonStrictWithMultipleChoices()
-    {
-        $constraint = new Choice(array(
-            'choices' => array(1, 2, 3),
-            'multiple' => true,
-            'strict' => false,
-        ));
-
-        $this->validator->validate(array('2', 3), $constraint);
-
-        $this->assertNoViolation();
-    }
-
-    public function testStrictWithMultipleChoices()
-    {
-        $constraint = new Choice(array(
-            'choices' => array(1, 2, 3),
-            'multiple' => true,
-            'strict' => true,
-            'multipleMessage' => 'myMessage',
-        ));
-
-        $this->validator->validate(array(2, '3'), $constraint);
-
-        $this->buildViolation('myMessage')
-            ->setParameter('{{ value }}', '"3"')
-            ->setInvalidValue('3')
-            ->setCode(Choice::NO_SUCH_CHOICE_ERROR)
-            ->assertRaised();
-    }
-}
diff --git a/vendor/symfony/validator/Tests/Constraints/CollectionTest.php b/vendor/symfony/validator/Tests/Constraints/CollectionTest.php
deleted file mode 100644
index 79f50b0..0000000
--- a/vendor/symfony/validator/Tests/Constraints/CollectionTest.php
+++ /dev/null
@@ -1,112 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Constraints;
-
-use Symfony\Component\Validator\Constraints\Collection;
-use Symfony\Component\Validator\Constraints\Email;
-use Symfony\Component\Validator\Constraints\Optional;
-use Symfony\Component\Validator\Constraints\Required;
-use Symfony\Component\Validator\Constraints\Valid;
-
-/**
- * @author Bernhard Schussek <bschussek@gmail.com>
- */
-class CollectionTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @expectedException \Symfony\Component\Validator\Exception\ConstraintDefinitionException
-     */
-    public function testRejectInvalidFieldsOption()
-    {
-        new Collection(array(
-            'fields' => 'foo',
-        ));
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Validator\Exception\ConstraintDefinitionException
-     */
-    public function testRejectNonConstraints()
-    {
-        new Collection(array(
-            'foo' => 'bar',
-        ));
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Validator\Exception\ConstraintDefinitionException
-     */
-    public function testRejectValidConstraint()
-    {
-        new Collection(array(
-            'foo' => new Valid(),
-        ));
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Validator\Exception\ConstraintDefinitionException
-     */
-    public function testRejectValidConstraintWithinOptional()
-    {
-        new Collection(array(
-            'foo' => new Optional(new Valid()),
-        ));
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Validator\Exception\ConstraintDefinitionException
-     */
-    public function testRejectValidConstraintWithinRequired()
-    {
-        new Collection(array(
-            'foo' => new Required(new Valid()),
-        ));
-    }
-
-    public function testAcceptOptionalConstraintAsOneElementArray()
-    {
-        $collection1 = new Collection(array(
-            'fields' => array(
-                'alternate_email' => array(
-                    new Optional(new Email()),
-                ),
-            ),
-        ));
-
-        $collection2 = new Collection(array(
-            'fields' => array(
-                'alternate_email' => new Optional(new Email()),
-            ),
-        ));
-
-        $this->assertEquals($collection1, $collection2);
-    }
-
-    public function testAcceptRequiredConstraintAsOneElementArray()
-    {
-        $collection1 = new Collection(array(
-            'fields' => array(
-                'alternate_email' => array(
-                    new Required(new Email()),
-                ),
-            ),
-        ));
-
-        $collection2 = new Collection(array(
-            'fields' => array(
-                'alternate_email' => new Required(new Email()),
-            ),
-        ));
-
-        $this->assertEquals($collection1, $collection2);
-    }
-}
diff --git a/vendor/symfony/validator/Tests/Constraints/CollectionValidatorArrayObjectTest.php b/vendor/symfony/validator/Tests/Constraints/CollectionValidatorArrayObjectTest.php
deleted file mode 100644
index a3c4b33..0000000
--- a/vendor/symfony/validator/Tests/Constraints/CollectionValidatorArrayObjectTest.php
+++ /dev/null
@@ -1,20 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Constraints;
-
-class CollectionValidatorArrayObjectTest extends CollectionValidatorTest
-{
-    public function prepareTestData(array $contents)
-    {
-        return new \ArrayObject($contents);
-    }
-}
diff --git a/vendor/symfony/validator/Tests/Constraints/CollectionValidatorArrayTest.php b/vendor/symfony/validator/Tests/Constraints/CollectionValidatorArrayTest.php
deleted file mode 100644
index 7517d0c..0000000
--- a/vendor/symfony/validator/Tests/Constraints/CollectionValidatorArrayTest.php
+++ /dev/null
@@ -1,20 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Constraints;
-
-class CollectionValidatorArrayTest extends CollectionValidatorTest
-{
-    public function prepareTestData(array $contents)
-    {
-        return $contents;
-    }
-}
diff --git a/vendor/symfony/validator/Tests/Constraints/CollectionValidatorCustomArrayObjectTest.php b/vendor/symfony/validator/Tests/Constraints/CollectionValidatorCustomArrayObjectTest.php
deleted file mode 100644
index 3d4c296..0000000
--- a/vendor/symfony/validator/Tests/Constraints/CollectionValidatorCustomArrayObjectTest.php
+++ /dev/null
@@ -1,22 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Constraints;
-
-use Symfony\Component\Validator\Tests\Fixtures\CustomArrayObject;
-
-class CollectionValidatorCustomArrayObjectTest extends CollectionValidatorTest
-{
-    public function prepareTestData(array $contents)
-    {
-        return new CustomArrayObject($contents);
-    }
-}
diff --git a/vendor/symfony/validator/Tests/Constraints/CollectionValidatorTest.php b/vendor/symfony/validator/Tests/Constraints/CollectionValidatorTest.php
deleted file mode 100644
index 0376814..0000000
--- a/vendor/symfony/validator/Tests/Constraints/CollectionValidatorTest.php
+++ /dev/null
@@ -1,389 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Constraints;
-
-use Symfony\Component\Validator\Constraints\Collection;
-use Symfony\Component\Validator\Constraints\CollectionValidator;
-use Symfony\Component\Validator\Constraints\NotNull;
-use Symfony\Component\Validator\Constraints\Optional;
-use Symfony\Component\Validator\Constraints\Range;
-use Symfony\Component\Validator\Constraints\Required;
-use Symfony\Component\Validator\Validation;
-
-abstract class CollectionValidatorTest extends AbstractConstraintValidatorTest
-{
-    protected function getApiVersion()
-    {
-        return Validation::API_VERSION_2_5;
-    }
-
-    protected function createValidator()
-    {
-        return new CollectionValidator();
-    }
-
-    abstract protected function prepareTestData(array $contents);
-
-    public function testNullIsValid()
-    {
-        $this->validator->validate(null, new Collection(array('fields' => array(
-            'foo' => new Range(array('min' => 4)),
-        ))));
-
-        $this->assertNoViolation();
-    }
-
-    public function testFieldsAsDefaultOption()
-    {
-        $constraint = new Range(array('min' => 4));
-
-        $data = $this->prepareTestData(array('foo' => 'foobar'));
-
-        $this->expectValidateValueAt(0, '[foo]', $data['foo'], array($constraint));
-
-        $this->validator->validate($data, new Collection(array(
-            'foo' => $constraint,
-        )));
-
-        $this->assertNoViolation();
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Validator\Exception\UnexpectedTypeException
-     */
-    public function testThrowsExceptionIfNotTraversable()
-    {
-        $this->validator->validate('foobar', new Collection(array('fields' => array(
-            'foo' => new Range(array('min' => 4)),
-        ))));
-    }
-
-    public function testWalkSingleConstraint()
-    {
-        $constraint = new Range(array('min' => 4));
-
-        $array = array(
-            'foo' => 3,
-            'bar' => 5,
-        );
-
-        $i = 0;
-
-        foreach ($array as $key => $value) {
-            $this->expectValidateValueAt($i++, '['.$key.']', $value, array($constraint));
-        }
-
-        $data = $this->prepareTestData($array);
-
-        $this->validator->validate($data, new Collection(array(
-            'fields' => array(
-                'foo' => $constraint,
-                'bar' => $constraint,
-            ),
-        )));
-
-        $this->assertNoViolation();
-    }
-
-    public function testWalkMultipleConstraints()
-    {
-        $constraints = array(
-            new Range(array('min' => 4)),
-            new NotNull(),
-        );
-
-        $array = array(
-            'foo' => 3,
-            'bar' => 5,
-        );
-
-        $i = 0;
-
-        foreach ($array as $key => $value) {
-            $this->expectValidateValueAt($i++, '['.$key.']', $value, $constraints);
-        }
-
-        $data = $this->prepareTestData($array);
-
-        $this->validator->validate($data, new Collection(array(
-            'fields' => array(
-                'foo' => $constraints,
-                'bar' => $constraints,
-            ),
-        )));
-
-        $this->assertNoViolation();
-    }
-
-    public function testExtraFieldsDisallowed()
-    {
-        $constraint = new Range(array('min' => 4));
-
-        $data = $this->prepareTestData(array(
-            'foo' => 5,
-            'baz' => 6,
-        ));
-
-        $this->expectValidateValueAt(0, '[foo]', $data['foo'], array($constraint));
-
-        $this->validator->validate($data, new Collection(array(
-            'fields' => array(
-                'foo' => $constraint,
-            ),
-            'extraFieldsMessage' => 'myMessage',
-        )));
-
-        $this->buildViolation('myMessage')
-            ->setParameter('{{ field }}', '"baz"')
-            ->atPath('property.path[baz]')
-            ->setInvalidValue(6)
-            ->setCode(Collection::NO_SUCH_FIELD_ERROR)
-            ->assertRaised();
-    }
-
-    // bug fix
-    public function testNullNotConsideredExtraField()
-    {
-        $data = $this->prepareTestData(array(
-            'foo' => null,
-        ));
-
-        $constraint = new Range(array('min' => 4));
-
-        $this->expectValidateValueAt(0, '[foo]', $data['foo'], array($constraint));
-
-        $this->validator->validate($data, new Collection(array(
-            'fields' => array(
-                'foo' => $constraint,
-            ),
-        )));
-
-        $this->assertNoViolation();
-    }
-
-    public function testExtraFieldsAllowed()
-    {
-        $data = $this->prepareTestData(array(
-            'foo' => 5,
-            'bar' => 6,
-        ));
-
-        $constraint = new Range(array('min' => 4));
-
-        $this->expectValidateValueAt(0, '[foo]', $data['foo'], array($constraint));
-
-        $this->validator->validate($data, new Collection(array(
-            'fields' => array(
-                'foo' => $constraint,
-            ),
-            'allowExtraFields' => true,
-        )));
-
-        $this->assertNoViolation();
-    }
-
-    public function testMissingFieldsDisallowed()
-    {
-        $data = $this->prepareTestData(array());
-
-        $constraint = new Range(array('min' => 4));
-
-        $this->validator->validate($data, new Collection(array(
-            'fields' => array(
-                'foo' => $constraint,
-            ),
-            'missingFieldsMessage' => 'myMessage',
-        )));
-
-        $this->buildViolation('myMessage')
-            ->setParameter('{{ field }}', '"foo"')
-            ->atPath('property.path[foo]')
-            ->setInvalidValue(null)
-            ->setCode(Collection::MISSING_FIELD_ERROR)
-            ->assertRaised();
-    }
-
-    public function testMissingFieldsAllowed()
-    {
-        $data = $this->prepareTestData(array());
-
-        $constraint = new Range(array('min' => 4));
-
-        $this->validator->validate($data, new Collection(array(
-            'fields' => array(
-                'foo' => $constraint,
-            ),
-            'allowMissingFields' => true,
-        )));
-
-        $this->assertNoViolation();
-    }
-
-    public function testOptionalFieldPresent()
-    {
-        $data = $this->prepareTestData(array(
-            'foo' => null,
-        ));
-
-        $this->validator->validate($data, new Collection(array(
-            'foo' => new Optional(),
-        )));
-
-        $this->assertNoViolation();
-    }
-
-    public function testOptionalFieldNotPresent()
-    {
-        $data = $this->prepareTestData(array());
-
-        $this->validator->validate($data, new Collection(array(
-            'foo' => new Optional(),
-        )));
-
-        $this->assertNoViolation();
-    }
-
-    public function testOptionalFieldSingleConstraint()
-    {
-        $array = array(
-            'foo' => 5,
-        );
-
-        $constraint = new Range(array('min' => 4));
-
-        $this->expectValidateValueAt(0, '[foo]', $array['foo'], array($constraint));
-
-        $data = $this->prepareTestData($array);
-
-        $this->validator->validate($data, new Collection(array(
-            'foo' => new Optional($constraint),
-        )));
-
-        $this->assertNoViolation();
-    }
-
-    public function testOptionalFieldMultipleConstraints()
-    {
-        $array = array(
-            'foo' => 5,
-        );
-
-        $constraints = array(
-            new NotNull(),
-            new Range(array('min' => 4)),
-        );
-
-        $this->expectValidateValueAt(0, '[foo]', $array['foo'], $constraints);
-
-        $data = $this->prepareTestData($array);
-
-        $this->validator->validate($data, new Collection(array(
-            'foo' => new Optional($constraints),
-        )));
-
-        $this->assertNoViolation();
-    }
-
-    public function testRequiredFieldPresent()
-    {
-        $data = $this->prepareTestData(array(
-            'foo' => null,
-        ));
-
-        $this->validator->validate($data, new Collection(array(
-            'foo' => new Required(),
-        )));
-
-        $this->assertNoViolation();
-    }
-
-    public function testRequiredFieldNotPresent()
-    {
-        $data = $this->prepareTestData(array());
-
-        $this->validator->validate($data, new Collection(array(
-            'fields' => array(
-                'foo' => new Required(),
-            ),
-            'missingFieldsMessage' => 'myMessage',
-        )));
-
-        $this->buildViolation('myMessage')
-            ->setParameter('{{ field }}', '"foo"')
-            ->atPath('property.path[foo]')
-            ->setInvalidValue(null)
-            ->setCode(Collection::MISSING_FIELD_ERROR)
-            ->assertRaised();
-    }
-
-    public function testRequiredFieldSingleConstraint()
-    {
-        $array = array(
-            'foo' => 5,
-        );
-
-        $constraint = new Range(array('min' => 4));
-
-        $this->expectValidateValueAt(0, '[foo]', $array['foo'], array($constraint));
-
-        $data = $this->prepareTestData($array);
-
-        $this->validator->validate($data, new Collection(array(
-            'foo' => new Required($constraint),
-        )));
-
-        $this->assertNoViolation();
-    }
-
-    public function testRequiredFieldMultipleConstraints()
-    {
-        $array = array(
-            'foo' => 5,
-        );
-
-        $constraints = array(
-            new NotNull(),
-            new Range(array('min' => 4)),
-        );
-
-        $this->expectValidateValueAt(0, '[foo]', $array['foo'], $constraints);
-
-        $data = $this->prepareTestData($array);
-
-        $this->validator->validate($data, new Collection(array(
-            'foo' => new Required($constraints),
-        )));
-
-        $this->assertNoViolation();
-    }
-
-    public function testObjectShouldBeLeftUnchanged()
-    {
-        $value = new \ArrayObject(array(
-            'foo' => 3,
-        ));
-
-        $constraint = new Range(array('min' => 2));
-
-        $this->expectValidateValueAt(0, '[foo]', $value['foo'], array($constraint));
-
-        $this->validator->validate($value, new Collection(array(
-            'fields' => array(
-                'foo' => $constraint,
-            ),
-        )));
-
-        $this->assertEquals(array(
-            'foo' => 3,
-        ), (array) $value);
-    }
-}
diff --git a/vendor/symfony/validator/Tests/Constraints/CompositeTest.php b/vendor/symfony/validator/Tests/Constraints/CompositeTest.php
deleted file mode 100644
index eab15ed..0000000
--- a/vendor/symfony/validator/Tests/Constraints/CompositeTest.php
+++ /dev/null
@@ -1,138 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Constraints;
-
-use Symfony\Component\Validator\Constraints\Composite;
-use Symfony\Component\Validator\Constraints\NotBlank;
-use Symfony\Component\Validator\Constraints\NotNull;
-use Symfony\Component\Validator\Constraints\Valid;
-
-class ConcreteComposite extends Composite
-{
-    public $constraints;
-
-    protected function getCompositeOption()
-    {
-        return 'constraints';
-    }
-
-    public function getDefaultOption()
-    {
-        return 'constraints';
-    }
-}
-
-/**
- * @since  2.6
- *
- * @author Bernhard Schussek <bschussek@gmail.com>
- */
-class CompositeTest extends \PHPUnit_Framework_TestCase
-{
-    public function testMergeNestedGroupsIfNoExplicitParentGroup()
-    {
-        $constraint = new ConcreteComposite(array(
-            new NotNull(array('groups' => 'Default')),
-            new NotBlank(array('groups' => array('Default', 'Strict'))),
-        ));
-
-        $this->assertEquals(array('Default', 'Strict'), $constraint->groups);
-        $this->assertEquals(array('Default'), $constraint->constraints[0]->groups);
-        $this->assertEquals(array('Default', 'Strict'), $constraint->constraints[1]->groups);
-    }
-
-    public function testSetImplicitNestedGroupsIfExplicitParentGroup()
-    {
-        $constraint = new ConcreteComposite(array(
-            'constraints' => array(
-                new NotNull(),
-                new NotBlank(),
-            ),
-            'groups' => array('Default', 'Strict'),
-        ));
-
-        $this->assertEquals(array('Default', 'Strict'), $constraint->groups);
-        $this->assertEquals(array('Default', 'Strict'), $constraint->constraints[0]->groups);
-        $this->assertEquals(array('Default', 'Strict'), $constraint->constraints[1]->groups);
-    }
-
-    public function testExplicitNestedGroupsMustBeSubsetOfExplicitParentGroups()
-    {
-        $constraint = new ConcreteComposite(array(
-            'constraints' => array(
-                new NotNull(array('groups' => 'Default')),
-                new NotBlank(array('groups' => 'Strict')),
-            ),
-            'groups' => array('Default', 'Strict'),
-        ));
-
-        $this->assertEquals(array('Default', 'Strict'), $constraint->groups);
-        $this->assertEquals(array('Default'), $constraint->constraints[0]->groups);
-        $this->assertEquals(array('Strict'), $constraint->constraints[1]->groups);
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Validator\Exception\ConstraintDefinitionException
-     */
-    public function testFailIfExplicitNestedGroupsNotSubsetOfExplicitParentGroups()
-    {
-        new ConcreteComposite(array(
-            'constraints' => array(
-                new NotNull(array('groups' => array('Default', 'Foobar'))),
-            ),
-            'groups' => array('Default', 'Strict'),
-        ));
-    }
-
-    public function testImplicitGroupNamesAreForwarded()
-    {
-        $constraint = new ConcreteComposite(array(
-            new NotNull(array('groups' => 'Default')),
-            new NotBlank(array('groups' => 'Strict')),
-        ));
-
-        $constraint->addImplicitGroupName('ImplicitGroup');
-
-        $this->assertEquals(array('Default', 'Strict', 'ImplicitGroup'), $constraint->groups);
-        $this->assertEquals(array('Default', 'ImplicitGroup'), $constraint->constraints[0]->groups);
-        $this->assertEquals(array('Strict'), $constraint->constraints[1]->groups);
-    }
-
-    public function testSingleConstraintsAccepted()
-    {
-        $nestedConstraint = new NotNull();
-        $constraint = new ConcreteComposite($nestedConstraint);
-
-        $this->assertEquals(array($nestedConstraint), $constraint->constraints);
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Validator\Exception\ConstraintDefinitionException
-     */
-    public function testFailIfNoConstraint()
-    {
-        new ConcreteComposite(array(
-            new NotNull(array('groups' => 'Default')),
-            'NotBlank',
-        ));
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Validator\Exception\ConstraintDefinitionException
-     */
-    public function testValidCantBeNested()
-    {
-        new ConcreteComposite(array(
-            new Valid(),
-        ));
-    }
-}
diff --git a/vendor/symfony/validator/Tests/Constraints/CountValidatorArrayTest.php b/vendor/symfony/validator/Tests/Constraints/CountValidatorArrayTest.php
deleted file mode 100644
index 5f562e7..0000000
--- a/vendor/symfony/validator/Tests/Constraints/CountValidatorArrayTest.php
+++ /dev/null
@@ -1,23 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Constraints;
-
-/**
- * @author Bernhard Schussek <bschussek@gmail.com>
- */
-class CountValidatorArrayTest extends CountValidatorTest
-{
-    protected function createCollection(array $content)
-    {
-        return $content;
-    }
-}
diff --git a/vendor/symfony/validator/Tests/Constraints/CountValidatorCountableTest.php b/vendor/symfony/validator/Tests/Constraints/CountValidatorCountableTest.php
deleted file mode 100644
index 7d46967..0000000
--- a/vendor/symfony/validator/Tests/Constraints/CountValidatorCountableTest.php
+++ /dev/null
@@ -1,25 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Constraints;
-
-use Symfony\Component\Validator\Tests\Fixtures\Countable;
-
-/**
- * @author Bernhard Schussek <bschussek@gmail.com>
- */
-class CountValidatorCountableTest extends CountValidatorTest
-{
-    protected function createCollection(array $content)
-    {
-        return new Countable($content);
-    }
-}
diff --git a/vendor/symfony/validator/Tests/Constraints/CountValidatorTest.php b/vendor/symfony/validator/Tests/Constraints/CountValidatorTest.php
deleted file mode 100644
index 6713166..0000000
--- a/vendor/symfony/validator/Tests/Constraints/CountValidatorTest.php
+++ /dev/null
@@ -1,203 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Constraints;
-
-use Symfony\Component\Validator\Constraints\Count;
-use Symfony\Component\Validator\Constraints\CountValidator;
-use Symfony\Component\Validator\Validation;
-
-/**
- * @author Bernhard Schussek <bschussek@gmail.com>
- */
-abstract class CountValidatorTest extends AbstractConstraintValidatorTest
-{
-    protected function getApiVersion()
-    {
-        return Validation::API_VERSION_2_5;
-    }
-
-    protected function createValidator()
-    {
-        return new CountValidator();
-    }
-
-    abstract protected function createCollection(array $content);
-
-    public function testNullIsValid()
-    {
-        $this->validator->validate(null, new Count(6));
-
-        $this->assertNoViolation();
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Validator\Exception\UnexpectedTypeException
-     */
-    public function testExpectsCountableType()
-    {
-        $this->validator->validate(new \stdClass(), new Count(5));
-    }
-
-    public function getThreeOrLessElements()
-    {
-        return array(
-            array($this->createCollection(array(1))),
-            array($this->createCollection(array(1, 2))),
-            array($this->createCollection(array(1, 2, 3))),
-            array($this->createCollection(array('a' => 1, 'b' => 2, 'c' => 3))),
-        );
-    }
-
-    public function getFourElements()
-    {
-        return array(
-            array($this->createCollection(array(1, 2, 3, 4))),
-            array($this->createCollection(array('a' => 1, 'b' => 2, 'c' => 3, 'd' => 4))),
-        );
-    }
-
-    public function getFiveOrMoreElements()
-    {
-        return array(
-            array($this->createCollection(array(1, 2, 3, 4, 5))),
-            array($this->createCollection(array(1, 2, 3, 4, 5, 6))),
-            array($this->createCollection(array('a' => 1, 'b' => 2, 'c' => 3, 'd' => 4, 'e' => 5))),
-        );
-    }
-
-    /**
-     * @dataProvider getThreeOrLessElements
-     */
-    public function testValidValuesMax($value)
-    {
-        $constraint = new Count(array('max' => 3));
-        $this->validator->validate($value, $constraint);
-
-        $this->assertNoViolation();
-    }
-
-    /**
-     * @dataProvider getFiveOrMoreElements
-     */
-    public function testValidValuesMin($value)
-    {
-        $constraint = new Count(array('min' => 5));
-        $this->validator->validate($value, $constraint);
-
-        $this->assertNoViolation();
-    }
-
-    /**
-     * @dataProvider getFourElements
-     */
-    public function testValidValuesExact($value)
-    {
-        $constraint = new Count(4);
-        $this->validator->validate($value, $constraint);
-
-        $this->assertNoViolation();
-    }
-
-    /**
-     * @dataProvider getFiveOrMoreElements
-     */
-    public function testTooManyValues($value)
-    {
-        $constraint = new Count(array(
-            'max' => 4,
-            'maxMessage' => 'myMessage',
-        ));
-
-        $this->validator->validate($value, $constraint);
-
-        $this->buildViolation('myMessage')
-            ->setParameter('{{ count }}', count($value))
-            ->setParameter('{{ limit }}', 4)
-            ->setInvalidValue($value)
-            ->setPlural(4)
-            ->setCode(Count::TOO_MANY_ERROR)
-            ->assertRaised();
-    }
-
-    /**
-     * @dataProvider getThreeOrLessElements
-     */
-    public function testTooFewValues($value)
-    {
-        $constraint = new Count(array(
-            'min' => 4,
-            'minMessage' => 'myMessage',
-        ));
-
-        $this->validator->validate($value, $constraint);
-
-        $this->buildViolation('myMessage')
-            ->setParameter('{{ count }}', count($value))
-            ->setParameter('{{ limit }}', 4)
-            ->setInvalidValue($value)
-            ->setPlural(4)
-            ->setCode(Count::TOO_FEW_ERROR)
-            ->assertRaised();
-    }
-
-    /**
-     * @dataProvider getFiveOrMoreElements
-     */
-    public function testTooManyValuesExact($value)
-    {
-        $constraint = new Count(array(
-            'min' => 4,
-            'max' => 4,
-            'exactMessage' => 'myMessage',
-        ));
-
-        $this->validator->validate($value, $constraint);
-
-        $this->buildViolation('myMessage')
-            ->setParameter('{{ count }}', count($value))
-            ->setParameter('{{ limit }}', 4)
-            ->setInvalidValue($value)
-            ->setPlural(4)
-            ->setCode(Count::TOO_MANY_ERROR)
-            ->assertRaised();
-    }
-
-    /**
-     * @dataProvider getThreeOrLessElements
-     */
-    public function testTooFewValuesExact($value)
-    {
-        $constraint = new Count(array(
-            'min' => 4,
-            'max' => 4,
-            'exactMessage' => 'myMessage',
-        ));
-
-        $this->validator->validate($value, $constraint);
-
-        $this->buildViolation('myMessage')
-            ->setParameter('{{ count }}', count($value))
-            ->setParameter('{{ limit }}', 4)
-            ->setInvalidValue($value)
-            ->setPlural(4)
-            ->setCode(Count::TOO_FEW_ERROR)
-            ->assertRaised();
-    }
-
-    public function testDefaultOption()
-    {
-        $constraint = new Count(5);
-
-        $this->assertEquals(5, $constraint->min);
-        $this->assertEquals(5, $constraint->max);
-    }
-}
diff --git a/vendor/symfony/validator/Tests/Constraints/CountryValidatorTest.php b/vendor/symfony/validator/Tests/Constraints/CountryValidatorTest.php
deleted file mode 100644
index ba63fd4..0000000
--- a/vendor/symfony/validator/Tests/Constraints/CountryValidatorTest.php
+++ /dev/null
@@ -1,109 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Constraints;
-
-use Symfony\Component\Intl\Util\IntlTestHelper;
-use Symfony\Component\Validator\Constraints\Country;
-use Symfony\Component\Validator\Constraints\CountryValidator;
-use Symfony\Component\Validator\Validation;
-
-class CountryValidatorTest extends AbstractConstraintValidatorTest
-{
-    protected function getApiVersion()
-    {
-        return Validation::API_VERSION_2_5;
-    }
-
-    protected function createValidator()
-    {
-        return new CountryValidator();
-    }
-
-    public function testNullIsValid()
-    {
-        $this->validator->validate(null, new Country());
-
-        $this->assertNoViolation();
-    }
-
-    public function testEmptyStringIsValid()
-    {
-        $this->validator->validate('', new Country());
-
-        $this->assertNoViolation();
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Validator\Exception\UnexpectedTypeException
-     */
-    public function testExpectsStringCompatibleType()
-    {
-        $this->validator->validate(new \stdClass(), new Country());
-    }
-
-    /**
-     * @dataProvider getValidCountries
-     */
-    public function testValidCountries($country)
-    {
-        $this->validator->validate($country, new Country());
-
-        $this->assertNoViolation();
-    }
-
-    public function getValidCountries()
-    {
-        return array(
-            array('GB'),
-            array('AT'),
-            array('MY'),
-        );
-    }
-
-    /**
-     * @dataProvider getInvalidCountries
-     */
-    public function testInvalidCountries($country)
-    {
-        $constraint = new Country(array(
-            'message' => 'myMessage',
-        ));
-
-        $this->validator->validate($country, $constraint);
-
-        $this->buildViolation('myMessage')
-            ->setParameter('{{ value }}', '"'.$country.'"')
-            ->assertRaised();
-    }
-
-    public function getInvalidCountries()
-    {
-        return array(
-            array('foobar'),
-            array('EN'),
-        );
-    }
-
-    public function testValidateUsingCountrySpecificLocale()
-    {
-        // in order to test with "en_GB"
-        IntlTestHelper::requireFullIntl($this);
-
-        \Locale::setDefault('en_GB');
-
-        $existingCountry = 'GB';
-
-        $this->validator->validate($existingCountry, new Country());
-
-        $this->assertNoViolation();
-    }
-}
diff --git a/vendor/symfony/validator/Tests/Constraints/CurrencyValidatorTest.php b/vendor/symfony/validator/Tests/Constraints/CurrencyValidatorTest.php
deleted file mode 100644
index eeb782c..0000000
--- a/vendor/symfony/validator/Tests/Constraints/CurrencyValidatorTest.php
+++ /dev/null
@@ -1,111 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Constraints;
-
-use Symfony\Component\Intl\Util\IntlTestHelper;
-use Symfony\Component\Validator\Constraints\Currency;
-use Symfony\Component\Validator\Constraints\CurrencyValidator;
-use Symfony\Component\Validator\Validation;
-
-class CurrencyValidatorTest extends AbstractConstraintValidatorTest
-{
-    protected function getApiVersion()
-    {
-        return Validation::API_VERSION_2_5;
-    }
-
-    protected function createValidator()
-    {
-        return new CurrencyValidator();
-    }
-
-    public function testNullIsValid()
-    {
-        $this->validator->validate(null, new Currency());
-
-        $this->assertNoViolation();
-    }
-
-    public function testEmptyStringIsValid()
-    {
-        $this->validator->validate('', new Currency());
-
-        $this->assertNoViolation();
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Validator\Exception\UnexpectedTypeException
-     */
-    public function testExpectsStringCompatibleType()
-    {
-        $this->validator->validate(new \stdClass(), new Currency());
-    }
-
-    /**
-     * @dataProvider getValidCurrencies
-     */
-    public function testValidCurrencies($currency)
-    {
-        $this->validator->validate($currency, new Currency());
-
-        $this->assertNoViolation();
-    }
-
-    /**
-     * @dataProvider getValidCurrencies
-     **/
-    public function testValidCurrenciesWithCountrySpecificLocale($currency)
-    {
-        IntlTestHelper::requireFullIntl($this);
-
-        \Locale::setDefault('en_GB');
-
-        $this->validator->validate($currency, new Currency());
-
-        $this->assertNoViolation();
-    }
-
-    public function getValidCurrencies()
-    {
-        return array(
-            array('EUR'),
-            array('USD'),
-            array('SIT'),
-            array('AUD'),
-            array('CAD'),
-        );
-    }
-
-    /**
-     * @dataProvider getInvalidCurrencies
-     */
-    public function testInvalidCurrencies($currency)
-    {
-        $constraint = new Currency(array(
-            'message' => 'myMessage',
-        ));
-
-        $this->validator->validate($currency, $constraint);
-
-        $this->buildViolation('myMessage')
-            ->setParameter('{{ value }}', '"'.$currency.'"')
-            ->assertRaised();
-    }
-
-    public function getInvalidCurrencies()
-    {
-        return array(
-            array('EN'),
-            array('foobar'),
-        );
-    }
-}
diff --git a/vendor/symfony/validator/Tests/Constraints/DateTimeValidatorTest.php b/vendor/symfony/validator/Tests/Constraints/DateTimeValidatorTest.php
deleted file mode 100644
index 25d88aa..0000000
--- a/vendor/symfony/validator/Tests/Constraints/DateTimeValidatorTest.php
+++ /dev/null
@@ -1,110 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Constraints;
-
-use Symfony\Component\Validator\Constraints\DateTime;
-use Symfony\Component\Validator\Constraints\DateTimeValidator;
-use Symfony\Component\Validator\Validation;
-
-class DateTimeValidatorTest extends AbstractConstraintValidatorTest
-{
-    protected function getApiVersion()
-    {
-        return Validation::API_VERSION_2_5;
-    }
-
-    protected function createValidator()
-    {
-        return new DateTimeValidator();
-    }
-
-    public function testNullIsValid()
-    {
-        $this->validator->validate(null, new DateTime());
-
-        $this->assertNoViolation();
-    }
-
-    public function testEmptyStringIsValid()
-    {
-        $this->validator->validate('', new DateTime());
-
-        $this->assertNoViolation();
-    }
-
-    public function testDateTimeClassIsValid()
-    {
-        $this->validator->validate(new \DateTime(), new DateTime());
-
-        $this->assertNoViolation();
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Validator\Exception\UnexpectedTypeException
-     */
-    public function testExpectsStringCompatibleType()
-    {
-        $this->validator->validate(new \stdClass(), new DateTime());
-    }
-
-    /**
-     * @dataProvider getValidDateTimes
-     */
-    public function testValidDateTimes($dateTime)
-    {
-        $this->validator->validate($dateTime, new DateTime());
-
-        $this->assertNoViolation();
-    }
-
-    public function getValidDateTimes()
-    {
-        return array(
-            array('2010-01-01 01:02:03'),
-            array('1955-12-12 00:00:00'),
-            array('2030-05-31 23:59:59'),
-        );
-    }
-
-    /**
-     * @dataProvider getInvalidDateTimes
-     */
-    public function testInvalidDateTimes($dateTime, $code)
-    {
-        $constraint = new DateTime(array(
-            'message' => 'myMessage',
-        ));
-
-        $this->validator->validate($dateTime, $constraint);
-
-        $this->buildViolation('myMessage')
-            ->setParameter('{{ value }}', '"'.$dateTime.'"')
-            ->setCode($code)
-            ->assertRaised();
-    }
-
-    public function getInvalidDateTimes()
-    {
-        return array(
-            array('foobar', DateTime::INVALID_FORMAT_ERROR),
-            array('2010-01-01', DateTime::INVALID_FORMAT_ERROR),
-            array('00:00:00', DateTime::INVALID_FORMAT_ERROR),
-            array('2010-01-01 00:00', DateTime::INVALID_FORMAT_ERROR),
-            array('2010-13-01 00:00:00', DateTime::INVALID_DATE_ERROR),
-            array('2010-04-32 00:00:00', DateTime::INVALID_DATE_ERROR),
-            array('2010-02-29 00:00:00', DateTime::INVALID_DATE_ERROR),
-            array('2010-01-01 24:00:00', DateTime::INVALID_TIME_ERROR),
-            array('2010-01-01 00:60:00', DateTime::INVALID_TIME_ERROR),
-            array('2010-01-01 00:00:60', DateTime::INVALID_TIME_ERROR),
-        );
-    }
-}
diff --git a/vendor/symfony/validator/Tests/Constraints/DateValidatorTest.php b/vendor/symfony/validator/Tests/Constraints/DateValidatorTest.php
deleted file mode 100644
index 21f0a2d..0000000
--- a/vendor/symfony/validator/Tests/Constraints/DateValidatorTest.php
+++ /dev/null
@@ -1,106 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Constraints;
-
-use Symfony\Component\Validator\Constraints\Date;
-use Symfony\Component\Validator\Constraints\DateValidator;
-use Symfony\Component\Validator\Validation;
-
-class DateValidatorTest extends AbstractConstraintValidatorTest
-{
-    protected function getApiVersion()
-    {
-        return Validation::API_VERSION_2_5;
-    }
-
-    protected function createValidator()
-    {
-        return new DateValidator();
-    }
-
-    public function testNullIsValid()
-    {
-        $this->validator->validate(null, new Date());
-
-        $this->assertNoViolation();
-    }
-
-    public function testEmptyStringIsValid()
-    {
-        $this->validator->validate('', new Date());
-
-        $this->assertNoViolation();
-    }
-
-    public function testDateTimeClassIsValid()
-    {
-        $this->validator->validate(new \DateTime(), new Date());
-
-        $this->assertNoViolation();
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Validator\Exception\UnexpectedTypeException
-     */
-    public function testExpectsStringCompatibleType()
-    {
-        $this->validator->validate(new \stdClass(), new Date());
-    }
-
-    /**
-     * @dataProvider getValidDates
-     */
-    public function testValidDates($date)
-    {
-        $this->validator->validate($date, new Date());
-
-        $this->assertNoViolation();
-    }
-
-    public function getValidDates()
-    {
-        return array(
-            array('2010-01-01'),
-            array('1955-12-12'),
-            array('2030-05-31'),
-        );
-    }
-
-    /**
-     * @dataProvider getInvalidDates
-     */
-    public function testInvalidDates($date, $code)
-    {
-        $constraint = new Date(array(
-            'message' => 'myMessage',
-        ));
-
-        $this->validator->validate($date, $constraint);
-
-        $this->buildViolation('myMessage')
-            ->setParameter('{{ value }}', '"'.$date.'"')
-            ->setCode($code)
-            ->assertRaised();
-    }
-
-    public function getInvalidDates()
-    {
-        return array(
-            array('foobar', Date::INVALID_FORMAT_ERROR),
-            array('foobar 2010-13-01', Date::INVALID_FORMAT_ERROR),
-            array('2010-13-01 foobar', Date::INVALID_FORMAT_ERROR),
-            array('2010-13-01', Date::INVALID_DATE_ERROR),
-            array('2010-04-32', Date::INVALID_DATE_ERROR),
-            array('2010-02-29', Date::INVALID_DATE_ERROR),
-        );
-    }
-}
diff --git a/vendor/symfony/validator/Tests/Constraints/EmailValidatorTest.php b/vendor/symfony/validator/Tests/Constraints/EmailValidatorTest.php
deleted file mode 100644
index 7e7a5cc..0000000
--- a/vendor/symfony/validator/Tests/Constraints/EmailValidatorTest.php
+++ /dev/null
@@ -1,106 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Constraints;
-
-use Symfony\Component\Validator\Constraints\Email;
-use Symfony\Component\Validator\Constraints\EmailValidator;
-use Symfony\Component\Validator\Validation;
-
-class EmailValidatorTest extends AbstractConstraintValidatorTest
-{
-    protected function getApiVersion()
-    {
-        return Validation::API_VERSION_2_5;
-    }
-
-    protected function createValidator()
-    {
-        return new EmailValidator(false);
-    }
-
-    public function testNullIsValid()
-    {
-        $this->validator->validate(null, new Email());
-
-        $this->assertNoViolation();
-    }
-
-    public function testEmptyStringIsValid()
-    {
-        $this->validator->validate('', new Email());
-
-        $this->assertNoViolation();
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Validator\Exception\UnexpectedTypeException
-     */
-    public function testExpectsStringCompatibleType()
-    {
-        $this->validator->validate(new \stdClass(), new Email());
-    }
-
-    /**
-     * @dataProvider getValidEmails
-     */
-    public function testValidEmails($email)
-    {
-        $this->validator->validate($email, new Email());
-
-        $this->assertNoViolation();
-    }
-
-    public function getValidEmails()
-    {
-        return array(
-            array('fabien@symfony.com'),
-            array('example@example.co.uk'),
-            array('fabien_potencier@example.fr'),
-        );
-    }
-
-    /**
-     * @dataProvider getInvalidEmails
-     */
-    public function testInvalidEmails($email)
-    {
-        $constraint = new Email(array(
-            'message' => 'myMessage',
-        ));
-
-        $this->validator->validate($email, $constraint);
-
-        $this->buildViolation('myMessage')
-            ->setParameter('{{ value }}', '"'.$email.'"')
-            ->setCode(Email::INVALID_FORMAT_ERROR)
-            ->assertRaised();
-    }
-
-    public function getInvalidEmails()
-    {
-        return array(
-            array('example'),
-            array('example@'),
-            array('example@localhost'),
-            array('foo@example.com bar'),
-        );
-    }
-
-    public function testStrict()
-    {
-        $constraint = new Email(array('strict' => true));
-
-        $this->validator->validate('example@localhost', $constraint);
-
-        $this->assertNoViolation();
-    }
-}
diff --git a/vendor/symfony/validator/Tests/Constraints/EqualToValidatorTest.php b/vendor/symfony/validator/Tests/Constraints/EqualToValidatorTest.php
deleted file mode 100644
index c20db15..0000000
--- a/vendor/symfony/validator/Tests/Constraints/EqualToValidatorTest.php
+++ /dev/null
@@ -1,69 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Constraints;
-
-use Symfony\Component\Validator\Constraints\EqualTo;
-use Symfony\Component\Validator\Constraints\EqualToValidator;
-use Symfony\Component\Validator\Validation;
-
-/**
- * @author Daniel Holmes <daniel@danielholmes.org>
- */
-class EqualToValidatorTest extends AbstractComparisonValidatorTestCase
-{
-    protected function getApiVersion()
-    {
-        return Validation::API_VERSION_2_5;
-    }
-
-    protected function createValidator()
-    {
-        return new EqualToValidator();
-    }
-
-    protected function createConstraint(array $options)
-    {
-        return new EqualTo($options);
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    public function provideValidComparisons()
-    {
-        return array(
-            array(3, 3),
-            array(3, '3'),
-            array('a', 'a'),
-            array(new \DateTime('2000-01-01'), new \DateTime('2000-01-01')),
-            array(new \DateTime('2000-01-01'), '2000-01-01'),
-            array(new \DateTime('2000-01-01 UTC'), '2000-01-01 UTC'),
-            array(new ComparisonTest_Class(5), new ComparisonTest_Class(5)),
-            array(null, 1),
-        );
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    public function provideInvalidComparisons()
-    {
-        return array(
-            array(1, '1', 2, '2', 'integer'),
-            array('22', '"22"', '333', '"333"', 'string'),
-            array(new \DateTime('2001-01-01'), 'Jan 1, 2001, 12:00 AM', new \DateTime('2000-01-01'), 'Jan 1, 2000, 12:00 AM', 'DateTime'),
-            array(new \DateTime('2001-01-01'), 'Jan 1, 2001, 12:00 AM', '2000-01-01', 'Jan 1, 2000, 12:00 AM', 'DateTime'),
-            array(new \DateTime('2001-01-01 UTC'), 'Jan 1, 2001, 12:00 AM', '2000-01-01 UTC', 'Jan 1, 2000, 12:00 AM', 'DateTime'),
-            array(new ComparisonTest_Class(4), '4', new ComparisonTest_Class(5), '5', __NAMESPACE__.'\ComparisonTest_Class'),
-        );
-    }
-}
diff --git a/vendor/symfony/validator/Tests/Constraints/ExpressionValidatorTest.php b/vendor/symfony/validator/Tests/Constraints/ExpressionValidatorTest.php
deleted file mode 100644
index 3b6de4d..0000000
--- a/vendor/symfony/validator/Tests/Constraints/ExpressionValidatorTest.php
+++ /dev/null
@@ -1,214 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Constraints;
-
-use Symfony\Component\PropertyAccess\PropertyAccess;
-use Symfony\Component\Validator\Constraints\Expression;
-use Symfony\Component\Validator\Constraints\ExpressionValidator;
-use Symfony\Component\Validator\Tests\Fixtures\Entity;
-use Symfony\Component\Validator\Validation;
-
-class ExpressionValidatorTest extends AbstractConstraintValidatorTest
-{
-    protected function getApiVersion()
-    {
-        return Validation::API_VERSION_2_5;
-    }
-
-    protected function createValidator()
-    {
-        return new ExpressionValidator(PropertyAccess::createPropertyAccessor());
-    }
-
-    public function testExpressionIsEvaluatedWithNullValue()
-    {
-        $constraint = new Expression(array(
-            'expression' => 'false',
-            'message' => 'myMessage',
-        ));
-
-        $this->validator->validate(null, $constraint);
-
-        $this->buildViolation('myMessage')
-            ->setParameter('{{ value }}', 'null')
-            ->assertRaised();
-    }
-
-    public function testExpressionIsEvaluatedWithEmptyStringValue()
-    {
-        $constraint = new Expression(array(
-            'expression' => 'false',
-            'message' => 'myMessage',
-        ));
-
-        $this->validator->validate('', $constraint);
-
-        $this->buildViolation('myMessage')
-            ->setParameter('{{ value }}', '""')
-            ->assertRaised();
-    }
-
-    public function testSucceedingExpressionAtObjectLevel()
-    {
-        $constraint = new Expression('this.data == 1');
-
-        $object = new Entity();
-        $object->data = '1';
-
-        $this->setObject($object);
-
-        $this->validator->validate($object, $constraint);
-
-        $this->assertNoViolation();
-    }
-
-    public function testFailingExpressionAtObjectLevel()
-    {
-        $constraint = new Expression(array(
-            'expression' => 'this.data == 1',
-            'message' => 'myMessage',
-        ));
-
-        $object = new Entity();
-        $object->data = '2';
-
-        $this->setObject($object);
-
-        $this->validator->validate($object, $constraint);
-
-        $this->buildViolation('myMessage')
-            ->setParameter('{{ value }}', 'object')
-            ->assertRaised();
-    }
-
-    public function testSucceedingExpressionAtPropertyLevel()
-    {
-        $constraint = new Expression('value == this.data');
-
-        $object = new Entity();
-        $object->data = '1';
-
-        $this->setRoot($object);
-        $this->setPropertyPath('data');
-        $this->setProperty($object, 'data');
-
-        $this->validator->validate('1', $constraint);
-
-        $this->assertNoViolation();
-    }
-
-    public function testFailingExpressionAtPropertyLevel()
-    {
-        $constraint = new Expression(array(
-            'expression' => 'value == this.data',
-            'message' => 'myMessage',
-        ));
-
-        $object = new Entity();
-        $object->data = '1';
-
-        $this->setRoot($object);
-        $this->setPropertyPath('data');
-        $this->setProperty($object, 'data');
-
-        $this->validator->validate('2', $constraint);
-
-        $this->buildViolation('myMessage')
-            ->setParameter('{{ value }}', '"2"')
-            ->atPath('data')
-            ->assertRaised();
-    }
-
-    public function testSucceedingExpressionAtNestedPropertyLevel()
-    {
-        $constraint = new Expression('value == this.data');
-
-        $object = new Entity();
-        $object->data = '1';
-
-        $root = new Entity();
-        $root->reference = $object;
-
-        $this->setRoot($root);
-        $this->setPropertyPath('reference.data');
-        $this->setProperty($object, 'data');
-
-        $this->validator->validate('1', $constraint);
-
-        $this->assertNoViolation();
-    }
-
-    public function testFailingExpressionAtNestedPropertyLevel()
-    {
-        $constraint = new Expression(array(
-            'expression' => 'value == this.data',
-            'message' => 'myMessage',
-        ));
-
-        $object = new Entity();
-        $object->data = '1';
-
-        $root = new Entity();
-        $root->reference = $object;
-
-        $this->setRoot($root);
-        $this->setPropertyPath('reference.data');
-        $this->setProperty($object, 'data');
-
-        $this->validator->validate('2', $constraint);
-
-        $this->buildViolation('myMessage')
-            ->setParameter('{{ value }}', '"2"')
-            ->atPath('reference.data')
-            ->assertRaised();
-    }
-
-    /**
-     * When validatePropertyValue() is called with a class name
-     * https://github.com/symfony/symfony/pull/11498.
-     */
-    public function testSucceedingExpressionAtPropertyLevelWithoutRoot()
-    {
-        $constraint = new Expression('value == "1"');
-
-        $this->setRoot('1');
-        $this->setPropertyPath('');
-        $this->setProperty(null, 'property');
-
-        $this->validator->validate('1', $constraint);
-
-        $this->assertNoViolation();
-    }
-
-    /**
-     * When validatePropertyValue() is called with a class name
-     * https://github.com/symfony/symfony/pull/11498.
-     */
-    public function testFailingExpressionAtPropertyLevelWithoutRoot()
-    {
-        $constraint = new Expression(array(
-            'expression' => 'value == "1"',
-            'message' => 'myMessage',
-        ));
-
-        $this->setRoot('2');
-        $this->setPropertyPath('');
-        $this->setProperty(null, 'property');
-
-        $this->validator->validate('2', $constraint);
-
-        $this->buildViolation('myMessage')
-            ->setParameter('{{ value }}', '"2"')
-            ->atPath('')
-            ->assertRaised();
-    }
-}
diff --git a/vendor/symfony/validator/Tests/Constraints/FileTest.php b/vendor/symfony/validator/Tests/Constraints/FileTest.php
deleted file mode 100644
index fbd4b07..0000000
--- a/vendor/symfony/validator/Tests/Constraints/FileTest.php
+++ /dev/null
@@ -1,152 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Constraints;
-
-use Symfony\Component\Validator\Constraints\File;
-use Symfony\Component\Validator\Exception\ConstraintDefinitionException;
-
-class FileTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @param mixed $maxSize
-     * @param int   $bytes
-     * @param bool  $binaryFormat
-     * @dataProvider provideValidSizes
-     */
-    public function testMaxSize($maxSize, $bytes, $binaryFormat)
-    {
-        $file = new File(array('maxSize' => $maxSize));
-
-        $this->assertSame($bytes, $file->maxSize);
-        $this->assertSame($binaryFormat, $file->binaryFormat);
-    }
-
-    /**
-     * @dataProvider provideValidSizes
-     *
-     * @param int|string $maxSize
-     * @param int        $bytes
-     * @param string     $binaryFormat
-     */
-    public function testMaxSizeCanBeSetAfterInitialization($maxSize, $bytes, $binaryFormat)
-    {
-        $file = new File();
-        $file->maxSize = $maxSize;
-
-        $this->assertSame($bytes, $file->maxSize);
-        $this->assertSame($binaryFormat, $file->binaryFormat);
-    }
-
-    /**
-     * @dataProvider provideInvalidSizes
-     * @expectedException \Symfony\Component\Validator\Exception\ConstraintDefinitionException
-     *
-     * @param int|string $maxSize
-     */
-    public function testInvalidValueForMaxSizeThrowsExceptionAfterInitialization($maxSize)
-    {
-        $file = new File(array('maxSize' => 1000));
-        $file->maxSize = $maxSize;
-    }
-
-    /**
-     * @dataProvider provideInvalidSizes
-     *
-     * @param int|string $maxSize
-     */
-    public function testMaxSizeCannotBeSetToInvalidValueAfterInitialization($maxSize)
-    {
-        $file = new File(array('maxSize' => 1000));
-
-        try {
-            $file->maxSize = $maxSize;
-        } catch (ConstraintDefinitionException $e) {
-        }
-
-        $this->assertSame(1000, $file->maxSize);
-    }
-
-    /**
-     * @param mixed $maxSize
-     * @dataProvider provideInValidSizes
-     * @expectedException \Symfony\Component\Validator\Exception\ConstraintDefinitionException
-     */
-    public function testInvalideMaxSize($maxSize)
-    {
-        $file = new File(array('maxSize' => $maxSize));
-    }
-
-    /**
-     * @return array
-     */
-    public function provideValidSizes()
-    {
-        return array(
-            array('500', 500, false),
-            array(12300, 12300, false),
-            array('1ki', 1024, true),
-            array('1KI', 1024, true),
-            array('2k', 2000, false),
-            array('2K', 2000, false),
-            array('1mi', 1048576, true),
-            array('1MI', 1048576, true),
-            array('3m', 3000000, false),
-            array('3M', 3000000, false),
-        );
-    }
-
-    /**
-     * @return array
-     */
-    public function provideInvalidSizes()
-    {
-        return array(
-            array('+100'),
-            array('foo'),
-            array('1Ko'),
-            array('1kio'),
-            array('1G'),
-            array('1Gi'),
-        );
-    }
-
-    /**
-     * @param mixed $maxSize
-     * @param bool  $guessedFormat
-     * @param bool  $binaryFormat
-     * @dataProvider provideFormats
-     */
-    public function testBinaryFormat($maxSize, $guessedFormat, $binaryFormat)
-    {
-        $file = new File(array('maxSize' => $maxSize, 'binaryFormat' => $guessedFormat));
-
-        $this->assertSame($binaryFormat, $file->binaryFormat);
-    }
-
-    /**
-     * @return array
-     */
-    public function provideFormats()
-    {
-        return array(
-            array(100, null, false),
-            array(100, true, true),
-            array(100, false, false),
-            array('100K', null, false),
-            array('100K', true, true),
-            array('100K', false, false),
-            array('100Ki', null, true),
-            array('100Ki', true, true),
-            array('100Ki', false, false),
-        );
-    }
-}
diff --git a/vendor/symfony/validator/Tests/Constraints/FileValidatorObjectTest.php b/vendor/symfony/validator/Tests/Constraints/FileValidatorObjectTest.php
deleted file mode 100644
index f35f93b..0000000
--- a/vendor/symfony/validator/Tests/Constraints/FileValidatorObjectTest.php
+++ /dev/null
@@ -1,22 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Constraints;
-
-use Symfony\Component\HttpFoundation\File\File;
-
-class FileValidatorObjectTest extends FileValidatorTest
-{
-    protected function getFile($filename)
-    {
-        return new File($filename);
-    }
-}
diff --git a/vendor/symfony/validator/Tests/Constraints/FileValidatorPathTest.php b/vendor/symfony/validator/Tests/Constraints/FileValidatorPathTest.php
deleted file mode 100644
index 11b8d4c..0000000
--- a/vendor/symfony/validator/Tests/Constraints/FileValidatorPathTest.php
+++ /dev/null
@@ -1,36 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Constraints;
-
-use Symfony\Component\Validator\Constraints\File;
-
-class FileValidatorPathTest extends FileValidatorTest
-{
-    protected function getFile($filename)
-    {
-        return $filename;
-    }
-
-    public function testFileNotFound()
-    {
-        $constraint = new File(array(
-            'notFoundMessage' => 'myMessage',
-        ));
-
-        $this->validator->validate('foobar', $constraint);
-
-        $this->buildViolation('myMessage')
-            ->setParameter('{{ file }}', '"foobar"')
-            ->setCode(File::NOT_FOUND_ERROR)
-            ->assertRaised();
-    }
-}
diff --git a/vendor/symfony/validator/Tests/Constraints/FileValidatorTest.php b/vendor/symfony/validator/Tests/Constraints/FileValidatorTest.php
deleted file mode 100644
index 686b62b..0000000
--- a/vendor/symfony/validator/Tests/Constraints/FileValidatorTest.php
+++ /dev/null
@@ -1,477 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Constraints;
-
-use Symfony\Component\HttpFoundation\File\UploadedFile;
-use Symfony\Component\Validator\Constraints\File;
-use Symfony\Component\Validator\Constraints\FileValidator;
-use Symfony\Component\Validator\Validation;
-
-abstract class FileValidatorTest extends AbstractConstraintValidatorTest
-{
-    protected $path;
-
-    protected $file;
-
-    protected function getApiVersion()
-    {
-        return Validation::API_VERSION_2_5;
-    }
-
-    protected function createValidator()
-    {
-        return new FileValidator();
-    }
-
-    protected function setUp()
-    {
-        parent::setUp();
-
-        $this->path = sys_get_temp_dir().DIRECTORY_SEPARATOR.'FileValidatorTest';
-        $this->file = fopen($this->path, 'w');
-        fwrite($this->file, ' ', 1);
-    }
-
-    protected function tearDown()
-    {
-        parent::tearDown();
-
-        if (is_resource($this->file)) {
-            fclose($this->file);
-        }
-
-        if (file_exists($this->path)) {
-            unlink($this->path);
-        }
-
-        $this->path = null;
-        $this->file = null;
-    }
-
-    public function testNullIsValid()
-    {
-        $this->validator->validate(null, new File());
-
-        $this->assertNoViolation();
-    }
-
-    public function testEmptyStringIsValid()
-    {
-        $this->validator->validate('', new File());
-
-        $this->assertNoViolation();
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Validator\Exception\UnexpectedTypeException
-     */
-    public function testExpectsStringCompatibleTypeOrFile()
-    {
-        $this->validator->validate(new \stdClass(), new File());
-    }
-
-    public function testValidFile()
-    {
-        $this->validator->validate($this->path, new File());
-
-        $this->assertNoViolation();
-    }
-
-    public function testValidUploadedfile()
-    {
-        $file = new UploadedFile($this->path, 'originalName', null, null, null, true);
-        $this->validator->validate($file, new File());
-
-        $this->assertNoViolation();
-    }
-
-    public function provideMaxSizeExceededTests()
-    {
-        // We have various interesting limit - size combinations to test.
-        // Assume a limit of 1000 bytes (1 kB). Then the following table
-        // lists the violation messages for different file sizes:
-        // -----------+--------------------------------------------------------
-        // Size       | Violation Message
-        // -----------+--------------------------------------------------------
-        // 1000 bytes | No violation
-        // 1001 bytes | "Size of 1001 bytes exceeded limit of 1000 bytes"
-        // 1004 bytes | "Size of 1004 bytes exceeded limit of 1000 bytes"
-        //            | NOT: "Size of 1 kB exceeded limit of 1 kB"
-        // 1005 bytes | "Size of 1.01 kB exceeded limit of 1 kB"
-        // -----------+--------------------------------------------------------
-
-        // As you see, we have two interesting borders:
-
-        // 1000/1001 - The border as of which a violation occurs
-        // 1004/1005 - The border as of which the message can be rounded to kB
-
-        // Analogous for kB/MB.
-
-        // Prior to Symfony 2.5, violation messages are always displayed in the
-        // same unit used to specify the limit.
-
-        // As of Symfony 2.5, the above logic is implemented.
-        return array(
-            // limit in bytes
-            array(1001, 1000, '1001', '1000', 'bytes'),
-            array(1004, 1000, '1004', '1000', 'bytes'),
-            array(1005, 1000, '1.01', '1', 'kB'),
-
-            array(1000001, 1000000, '1000001', '1000000', 'bytes'),
-            array(1004999, 1000000, '1005', '1000', 'kB'),
-            array(1005000, 1000000, '1.01', '1', 'MB'),
-
-            // limit in kB
-            array(1001, '1k', '1001', '1000', 'bytes'),
-            array(1004, '1k', '1004', '1000', 'bytes'),
-            array(1005, '1k', '1.01', '1', 'kB'),
-
-            array(1000001, '1000k', '1000001', '1000000', 'bytes'),
-            array(1004999, '1000k', '1005', '1000', 'kB'),
-            array(1005000, '1000k', '1.01', '1', 'MB'),
-
-            // limit in MB
-            array(1000001, '1M', '1000001', '1000000', 'bytes'),
-            array(1004999, '1M', '1005', '1000', 'kB'),
-            array(1005000, '1M', '1.01', '1', 'MB'),
-
-            // limit in KiB
-            array(1025, '1Ki', '1025', '1024', 'bytes'),
-            array(1029, '1Ki', '1029', '1024', 'bytes'),
-            array(1030, '1Ki', '1.01', '1', 'KiB'),
-
-            array(1048577, '1024Ki', '1048577', '1048576', 'bytes'),
-            array(1053818, '1024Ki', '1029.12', '1024', 'KiB'),
-            array(1053819, '1024Ki', '1.01', '1', 'MiB'),
-
-            // limit in MiB
-            array(1048577, '1Mi', '1048577', '1048576', 'bytes'),
-            array(1053818, '1Mi', '1029.12', '1024', 'KiB'),
-            array(1053819, '1Mi', '1.01', '1', 'MiB'),
-        );
-    }
-
-    /**
-     * @dataProvider provideMaxSizeExceededTests
-     */
-    public function testMaxSizeExceeded($bytesWritten, $limit, $sizeAsString, $limitAsString, $suffix)
-    {
-        fseek($this->file, $bytesWritten - 1, SEEK_SET);
-        fwrite($this->file, '0');
-        fclose($this->file);
-
-        $constraint = new File(array(
-            'maxSize' => $limit,
-            'maxSizeMessage' => 'myMessage',
-        ));
-
-        $this->validator->validate($this->getFile($this->path), $constraint);
-
-        $this->buildViolation('myMessage')
-            ->setParameter('{{ limit }}', $limitAsString)
-            ->setParameter('{{ size }}', $sizeAsString)
-            ->setParameter('{{ suffix }}', $suffix)
-            ->setParameter('{{ file }}', '"'.$this->path.'"')
-            ->setCode(File::TOO_LARGE_ERROR)
-            ->assertRaised();
-    }
-
-    public function provideMaxSizeNotExceededTests()
-    {
-        return array(
-            // limit in bytes
-            array(1000, 1000),
-            array(1000000, 1000000),
-
-            // limit in kB
-            array(1000, '1k'),
-            array(1000000, '1000k'),
-
-            // limit in MB
-            array(1000000, '1M'),
-
-            // limit in KiB
-            array(1024, '1Ki'),
-            array(1048576, '1024Ki'),
-
-            // limit in MiB
-            array(1048576, '1Mi'),
-        );
-    }
-
-    /**
-     * @dataProvider provideMaxSizeNotExceededTests
-     */
-    public function testMaxSizeNotExceeded($bytesWritten, $limit)
-    {
-        fseek($this->file, $bytesWritten - 1, SEEK_SET);
-        fwrite($this->file, '0');
-        fclose($this->file);
-
-        $constraint = new File(array(
-            'maxSize' => $limit,
-            'maxSizeMessage' => 'myMessage',
-        ));
-
-        $this->validator->validate($this->getFile($this->path), $constraint);
-
-        $this->assertNoViolation();
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Validator\Exception\ConstraintDefinitionException
-     */
-    public function testInvalidMaxSize()
-    {
-        $constraint = new File(array(
-            'maxSize' => '1abc',
-        ));
-
-        $this->validator->validate($this->path, $constraint);
-    }
-
-    public function provideBinaryFormatTests()
-    {
-        return array(
-            array(11, 10, null, '11', '10', 'bytes'),
-            array(11, 10, true, '11', '10', 'bytes'),
-            array(11, 10, false, '11', '10', 'bytes'),
-
-            // round(size) == 1.01kB, limit == 1kB
-            array(ceil(1000 * 1.01), 1000, null, '1.01', '1', 'kB'),
-            array(ceil(1000 * 1.01), '1k', null, '1.01', '1', 'kB'),
-            array(ceil(1024 * 1.01), '1Ki', null, '1.01', '1', 'KiB'),
-
-            array(ceil(1024 * 1.01), 1024, true, '1.01', '1', 'KiB'),
-            array(ceil(1024 * 1.01 * 1000), '1024k', true, '1010', '1000', 'KiB'),
-            array(ceil(1024 * 1.01), '1Ki', true, '1.01', '1', 'KiB'),
-
-            array(ceil(1000 * 1.01), 1000, false, '1.01', '1', 'kB'),
-            array(ceil(1000 * 1.01), '1k', false, '1.01', '1', 'kB'),
-            array(ceil(1024 * 1.01 * 10), '10Ki', false, '10.34', '10.24', 'kB'),
-        );
-    }
-
-    /**
-     * @dataProvider provideBinaryFormatTests
-     */
-    public function testBinaryFormat($bytesWritten, $limit, $binaryFormat, $sizeAsString, $limitAsString, $suffix)
-    {
-        fseek($this->file, $bytesWritten - 1, SEEK_SET);
-        fwrite($this->file, '0');
-        fclose($this->file);
-
-        $constraint = new File(array(
-            'maxSize' => $limit,
-            'binaryFormat' => $binaryFormat,
-            'maxSizeMessage' => 'myMessage',
-        ));
-
-        $this->validator->validate($this->getFile($this->path), $constraint);
-
-        $this->buildViolation('myMessage')
-            ->setParameter('{{ limit }}', $limitAsString)
-            ->setParameter('{{ size }}', $sizeAsString)
-            ->setParameter('{{ suffix }}', $suffix)
-            ->setParameter('{{ file }}', '"'.$this->path.'"')
-            ->setCode(File::TOO_LARGE_ERROR)
-            ->assertRaised();
-    }
-
-    public function testValidMimeType()
-    {
-        $file = $this
-            ->getMockBuilder('Symfony\Component\HttpFoundation\File\File')
-            ->setConstructorArgs(array(__DIR__.'/Fixtures/foo'))
-            ->getMock();
-        $file
-            ->expects($this->once())
-            ->method('getPathname')
-            ->will($this->returnValue($this->path));
-        $file
-            ->expects($this->once())
-            ->method('getMimeType')
-            ->will($this->returnValue('image/jpg'));
-
-        $constraint = new File(array(
-            'mimeTypes' => array('image/png', 'image/jpg'),
-        ));
-
-        $this->validator->validate($file, $constraint);
-
-        $this->assertNoViolation();
-    }
-
-    public function testValidWildcardMimeType()
-    {
-        $file = $this
-            ->getMockBuilder('Symfony\Component\HttpFoundation\File\File')
-            ->setConstructorArgs(array(__DIR__.'/Fixtures/foo'))
-            ->getMock();
-        $file
-            ->expects($this->once())
-            ->method('getPathname')
-            ->will($this->returnValue($this->path));
-        $file
-            ->expects($this->once())
-            ->method('getMimeType')
-            ->will($this->returnValue('image/jpg'));
-
-        $constraint = new File(array(
-            'mimeTypes' => array('image/*'),
-        ));
-
-        $this->validator->validate($file, $constraint);
-
-        $this->assertNoViolation();
-    }
-
-    public function testInvalidMimeType()
-    {
-        $file = $this
-            ->getMockBuilder('Symfony\Component\HttpFoundation\File\File')
-            ->setConstructorArgs(array(__DIR__.'/Fixtures/foo'))
-            ->getMock();
-        $file
-            ->expects($this->once())
-            ->method('getPathname')
-            ->will($this->returnValue($this->path));
-        $file
-            ->expects($this->once())
-            ->method('getMimeType')
-            ->will($this->returnValue('application/pdf'));
-
-        $constraint = new File(array(
-            'mimeTypes' => array('image/png', 'image/jpg'),
-            'mimeTypesMessage' => 'myMessage',
-        ));
-
-        $this->validator->validate($file, $constraint);
-
-        $this->buildViolation('myMessage')
-            ->setParameter('{{ type }}', '"application/pdf"')
-            ->setParameter('{{ types }}', '"image/png", "image/jpg"')
-            ->setParameter('{{ file }}', '"'.$this->path.'"')
-            ->setCode(File::INVALID_MIME_TYPE_ERROR)
-            ->assertRaised();
-    }
-
-    public function testInvalidWildcardMimeType()
-    {
-        $file = $this
-            ->getMockBuilder('Symfony\Component\HttpFoundation\File\File')
-            ->setConstructorArgs(array(__DIR__.'/Fixtures/foo'))
-            ->getMock();
-        $file
-            ->expects($this->once())
-            ->method('getPathname')
-            ->will($this->returnValue($this->path));
-        $file
-            ->expects($this->once())
-            ->method('getMimeType')
-            ->will($this->returnValue('application/pdf'));
-
-        $constraint = new File(array(
-            'mimeTypes' => array('image/*', 'image/jpg'),
-            'mimeTypesMessage' => 'myMessage',
-        ));
-
-        $this->validator->validate($file, $constraint);
-
-        $this->buildViolation('myMessage')
-            ->setParameter('{{ type }}', '"application/pdf"')
-            ->setParameter('{{ types }}', '"image/*", "image/jpg"')
-            ->setParameter('{{ file }}', '"'.$this->path.'"')
-            ->setCode(File::INVALID_MIME_TYPE_ERROR)
-            ->assertRaised();
-    }
-
-    public function testDisallowEmpty()
-    {
-        ftruncate($this->file, 0);
-
-        $constraint = new File(array(
-            'disallowEmptyMessage' => 'myMessage',
-        ));
-
-        $this->validator->validate($this->getFile($this->path), $constraint);
-
-        $this->buildViolation('myMessage')
-            ->setParameter('{{ file }}', '"'.$this->path.'"')
-            ->setCode(File::EMPTY_ERROR)
-            ->assertRaised();
-    }
-
-    /**
-     * @dataProvider uploadedFileErrorProvider
-     */
-    public function testUploadedFileError($error, $message, array $params = array(), $maxSize = null)
-    {
-        $file = new UploadedFile('/path/to/file', 'originalName', 'mime', 0, $error);
-
-        $constraint = new File(array(
-            $message => 'myMessage',
-            'maxSize' => $maxSize,
-        ));
-
-        $this->validator->validate($file, $constraint);
-
-        $this->buildViolation('myMessage')
-            ->setParameters($params)
-            ->setCode($error)
-            ->assertRaised();
-    }
-
-    public function uploadedFileErrorProvider()
-    {
-        $tests = array(
-            array(UPLOAD_ERR_FORM_SIZE, 'uploadFormSizeErrorMessage'),
-            array(UPLOAD_ERR_PARTIAL, 'uploadPartialErrorMessage'),
-            array(UPLOAD_ERR_NO_FILE, 'uploadNoFileErrorMessage'),
-            array(UPLOAD_ERR_NO_TMP_DIR, 'uploadNoTmpDirErrorMessage'),
-            array(UPLOAD_ERR_CANT_WRITE, 'uploadCantWriteErrorMessage'),
-            array(UPLOAD_ERR_EXTENSION, 'uploadExtensionErrorMessage'),
-        );
-
-        if (class_exists('Symfony\Component\HttpFoundation\File\UploadedFile')) {
-            // when no maxSize is specified on constraint, it should use the ini value
-            $tests[] = array(UPLOAD_ERR_INI_SIZE, 'uploadIniSizeErrorMessage', array(
-                '{{ limit }}' => UploadedFile::getMaxFilesize() / 1048576,
-                '{{ suffix }}' => 'MiB',
-            ));
-
-            // it should use the smaller limitation (maxSize option in this case)
-            $tests[] = array(UPLOAD_ERR_INI_SIZE, 'uploadIniSizeErrorMessage', array(
-                '{{ limit }}' => 1,
-                '{{ suffix }}' => 'bytes',
-            ), '1');
-
-            // it correctly parses the maxSize option and not only uses simple string comparison
-            // 1000M should be bigger than the ini value
-            $tests[] = array(UPLOAD_ERR_INI_SIZE, 'uploadIniSizeErrorMessage', array(
-                '{{ limit }}' => UploadedFile::getMaxFilesize() / 1048576,
-                '{{ suffix }}' => 'MiB',
-            ), '1000M');
-
-            // it correctly parses the maxSize option and not only uses simple string comparison
-            // 1000M should be bigger than the ini value
-            $tests[] = array(UPLOAD_ERR_INI_SIZE, 'uploadIniSizeErrorMessage', array(
-                '{{ limit }}' => '0.1',
-                '{{ suffix }}' => 'MB',
-            ), '100K');
-        }
-
-        return $tests;
-    }
-
-    abstract protected function getFile($filename);
-}
diff --git a/vendor/symfony/validator/Tests/Constraints/Fixtures/foo b/vendor/symfony/validator/Tests/Constraints/Fixtures/foo
deleted file mode 100644
index e69de29..0000000
diff --git a/vendor/symfony/validator/Tests/Constraints/Fixtures/test.gif b/vendor/symfony/validator/Tests/Constraints/Fixtures/test.gif
deleted file mode 100644
index 6b44fc7..0000000
--- a/vendor/symfony/validator/Tests/Constraints/Fixtures/test.gif
+++ /dev/null
@@ -1 +0,0 @@
-GIF89a                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 ,         ;
\ No newline at end of file
diff --git a/vendor/symfony/validator/Tests/Constraints/Fixtures/test_4by3.gif b/vendor/symfony/validator/Tests/Constraints/Fixtures/test_4by3.gif
deleted file mode 100644
index 64dd3ff..0000000
--- a/vendor/symfony/validator/Tests/Constraints/Fixtures/test_4by3.gif
+++ /dev/null
@@ -1 +0,0 @@
-GIF89a    !Created with GIMP ,       V ;
\ No newline at end of file
diff --git a/vendor/symfony/validator/Tests/Constraints/Fixtures/test_landscape.gif b/vendor/symfony/validator/Tests/Constraints/Fixtures/test_landscape.gif
deleted file mode 100644
index 8701235..0000000
--- a/vendor/symfony/validator/Tests/Constraints/Fixtures/test_landscape.gif
+++ /dev/null
@@ -1,3 +0,0 @@
-GIF89a    !
-  ,       L
- ;
\ No newline at end of file
diff --git a/vendor/symfony/validator/Tests/Constraints/Fixtures/test_portrait.gif b/vendor/symfony/validator/Tests/Constraints/Fixtures/test_portrait.gif
deleted file mode 100644
index cc480ca..0000000
--- a/vendor/symfony/validator/Tests/Constraints/Fixtures/test_portrait.gif
+++ /dev/null
@@ -1,3 +0,0 @@
-GIF89a    !
-  ,       L
- ;
\ No newline at end of file
diff --git a/vendor/symfony/validator/Tests/Constraints/GreaterThanOrEqualValidatorTest.php b/vendor/symfony/validator/Tests/Constraints/GreaterThanOrEqualValidatorTest.php
deleted file mode 100644
index 41708f6..0000000
--- a/vendor/symfony/validator/Tests/Constraints/GreaterThanOrEqualValidatorTest.php
+++ /dev/null
@@ -1,71 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Constraints;
-
-use Symfony\Component\Validator\Constraints\GreaterThanOrEqual;
-use Symfony\Component\Validator\Constraints\GreaterThanOrEqualValidator;
-use Symfony\Component\Validator\Validation;
-
-/**
- * @author Daniel Holmes <daniel@danielholmes.org>
- */
-class GreaterThanOrEqualValidatorTest extends AbstractComparisonValidatorTestCase
-{
-    protected function getApiVersion()
-    {
-        return Validation::API_VERSION_2_5;
-    }
-
-    protected function createValidator()
-    {
-        return new GreaterThanOrEqualValidator();
-    }
-
-    protected function createConstraint(array $options)
-    {
-        return new GreaterThanOrEqual($options);
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    public function provideValidComparisons()
-    {
-        return array(
-            array(3, 2),
-            array(1, 1),
-            array(new \DateTime('2010/01/01'), new \DateTime('2000/01/01')),
-            array(new \DateTime('2000/01/01'), new \DateTime('2000/01/01')),
-            array(new \DateTime('2010/01/01'), '2000/01/01'),
-            array(new \DateTime('2000/01/01'), '2000/01/01'),
-            array(new \DateTime('2010/01/01 UTC'), '2000/01/01 UTC'),
-            array(new \DateTime('2000/01/01 UTC'), '2000/01/01 UTC'),
-            array('a', 'a'),
-            array('z', 'a'),
-            array(null, 1),
-        );
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    public function provideInvalidComparisons()
-    {
-        return array(
-            array(1, '1', 2, '2', 'integer'),
-            array(new \DateTime('2000/01/01'), 'Jan 1, 2000, 12:00 AM', new \DateTime('2005/01/01'), 'Jan 1, 2005, 12:00 AM', 'DateTime'),
-            array(new \DateTime('2000/01/01'), 'Jan 1, 2000, 12:00 AM', '2005/01/01', 'Jan 1, 2005, 12:00 AM', 'DateTime'),
-            array(new \DateTime('2000/01/01 UTC'), 'Jan 1, 2000, 12:00 AM', '2005/01/01 UTC', 'Jan 1, 2005, 12:00 AM', 'DateTime'),
-            array('b', '"b"', 'c', '"c"', 'string'),
-        );
-    }
-}
diff --git a/vendor/symfony/validator/Tests/Constraints/GreaterThanValidatorTest.php b/vendor/symfony/validator/Tests/Constraints/GreaterThanValidatorTest.php
deleted file mode 100644
index 85a2b1d..0000000
--- a/vendor/symfony/validator/Tests/Constraints/GreaterThanValidatorTest.php
+++ /dev/null
@@ -1,74 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Constraints;
-
-use Symfony\Component\Validator\Constraints\GreaterThan;
-use Symfony\Component\Validator\Constraints\GreaterThanValidator;
-use Symfony\Component\Validator\Validation;
-
-/**
- * @author Daniel Holmes <daniel@danielholmes.org>
- */
-class GreaterThanValidatorTest extends AbstractComparisonValidatorTestCase
-{
-    protected function getApiVersion()
-    {
-        return Validation::API_VERSION_2_5;
-    }
-
-    protected function createValidator()
-    {
-        return new GreaterThanValidator();
-    }
-
-    protected function createConstraint(array $options)
-    {
-        return new GreaterThan($options);
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    public function provideValidComparisons()
-    {
-        return array(
-            array(2, 1),
-            array(new \DateTime('2005/01/01'), new \DateTime('2001/01/01')),
-            array(new \DateTime('2005/01/01'), '2001/01/01'),
-            array(new \DateTime('2005/01/01 UTC'), '2001/01/01 UTC'),
-            array(new ComparisonTest_Class(5), new ComparisonTest_Class(4)),
-            array('333', '22'),
-            array(null, 1),
-        );
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    public function provideInvalidComparisons()
-    {
-        return array(
-            array(1, '1', 2, '2', 'integer'),
-            array(2, '2', 2, '2', 'integer'),
-            array(new \DateTime('2000/01/01'), 'Jan 1, 2000, 12:00 AM', new \DateTime('2005/01/01'), 'Jan 1, 2005, 12:00 AM', 'DateTime'),
-            array(new \DateTime('2000/01/01'), 'Jan 1, 2000, 12:00 AM', new \DateTime('2000/01/01'), 'Jan 1, 2000, 12:00 AM', 'DateTime'),
-            array(new \DateTime('2000/01/01'), 'Jan 1, 2000, 12:00 AM', '2005/01/01', 'Jan 1, 2005, 12:00 AM', 'DateTime'),
-            array(new \DateTime('2000/01/01'), 'Jan 1, 2000, 12:00 AM', '2000/01/01', 'Jan 1, 2000, 12:00 AM', 'DateTime'),
-            array(new \DateTime('2000/01/01 UTC'), 'Jan 1, 2000, 12:00 AM', '2005/01/01 UTC', 'Jan 1, 2005, 12:00 AM', 'DateTime'),
-            array(new \DateTime('2000/01/01 UTC'), 'Jan 1, 2000, 12:00 AM', '2000/01/01 UTC', 'Jan 1, 2000, 12:00 AM', 'DateTime'),
-            array(new ComparisonTest_Class(4), '4', new ComparisonTest_Class(5), '5', __NAMESPACE__.'\ComparisonTest_Class'),
-            array(new ComparisonTest_Class(5), '5', new ComparisonTest_Class(5), '5', __NAMESPACE__.'\ComparisonTest_Class'),
-            array('22', '"22"', '333', '"333"', 'string'),
-            array('22', '"22"', '22', '"22"', 'string'),
-        );
-    }
-}
diff --git a/vendor/symfony/validator/Tests/Constraints/GroupSequenceTest.php b/vendor/symfony/validator/Tests/Constraints/GroupSequenceTest.php
deleted file mode 100644
index aa2d601..0000000
--- a/vendor/symfony/validator/Tests/Constraints/GroupSequenceTest.php
+++ /dev/null
@@ -1,97 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Constraints;
-
-use Symfony\Component\Validator\Constraints\GroupSequence;
-
-/**
- * @author Bernhard Schussek <bschussek@gmail.com>
- */
-class GroupSequenceTest extends \PHPUnit_Framework_TestCase
-{
-    public function testCreate()
-    {
-        $sequence = new GroupSequence(array('Group 1', 'Group 2'));
-
-        $this->assertSame(array('Group 1', 'Group 2'), $sequence->groups);
-    }
-
-    public function testCreateDoctrineStyle()
-    {
-        $sequence = new GroupSequence(array('value' => array('Group 1', 'Group 2')));
-
-        $this->assertSame(array('Group 1', 'Group 2'), $sequence->groups);
-    }
-
-    /**
-     * @group legacy
-     */
-    public function testLegacyIterate()
-    {
-        $sequence = new GroupSequence(array('Group 1', 'Group 2'));
-
-        $this->assertSame(array('Group 1', 'Group 2'), iterator_to_array($sequence));
-    }
-
-    /**
-     * @group legacy
-     */
-    public function testLegacyCount()
-    {
-        $sequence = new GroupSequence(array('Group 1', 'Group 2'));
-
-        $this->assertCount(2, $sequence);
-    }
-
-    /**
-     * @group legacy
-     */
-    public function testLegacyArrayAccess()
-    {
-        $sequence = new GroupSequence(array('Group 1', 'Group 2'));
-
-        $this->assertSame('Group 1', $sequence[0]);
-        $this->assertSame('Group 2', $sequence[1]);
-        $this->assertTrue(isset($sequence[0]));
-        $this->assertFalse(isset($sequence[2]));
-        unset($sequence[0]);
-        $this->assertFalse(isset($sequence[0]));
-        $sequence[] = 'Group 3';
-        $this->assertTrue(isset($sequence[2]));
-        $this->assertSame('Group 3', $sequence[2]);
-        $sequence[0] = 'Group 1';
-        $this->assertTrue(isset($sequence[0]));
-        $this->assertSame('Group 1', $sequence[0]);
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Validator\Exception\OutOfBoundsException
-     * @group legacy
-     */
-    public function testLegacyGetExpectsExistingKey()
-    {
-        $sequence = new GroupSequence(array('Group 1', 'Group 2'));
-
-        $sequence[2];
-    }
-
-    /**
-     * @group legacy
-     */
-    public function testLegacyUnsetIgnoresNonExistingKeys()
-    {
-        $sequence = new GroupSequence(array('Group 1', 'Group 2'));
-
-        // should not fail
-        unset($sequence[2]);
-    }
-}
diff --git a/vendor/symfony/validator/Tests/Constraints/IbanValidatorTest.php b/vendor/symfony/validator/Tests/Constraints/IbanValidatorTest.php
deleted file mode 100644
index e9deb11..0000000
--- a/vendor/symfony/validator/Tests/Constraints/IbanValidatorTest.php
+++ /dev/null
@@ -1,438 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Constraints;
-
-use Symfony\Component\Validator\Constraints\Iban;
-use Symfony\Component\Validator\Constraints\IbanValidator;
-use Symfony\Component\Validator\Validation;
-
-class IbanValidatorTest extends AbstractConstraintValidatorTest
-{
-    protected function getApiVersion()
-    {
-        return Validation::API_VERSION_2_5;
-    }
-
-    protected function createValidator()
-    {
-        return new IbanValidator();
-    }
-
-    public function testNullIsValid()
-    {
-        $this->validator->validate(null, new Iban());
-
-        $this->assertNoViolation();
-    }
-
-    public function testEmptyStringIsValid()
-    {
-        $this->validator->validate('', new Iban());
-
-        $this->assertNoViolation();
-    }
-
-    /**
-     * @dataProvider getValidIbans
-     */
-    public function testValidIbans($iban)
-    {
-        $this->validator->validate($iban, new Iban());
-
-        $this->assertNoViolation();
-    }
-
-    public function getValidIbans()
-    {
-        return array(
-            array('CH9300762011623852957'), // Switzerland without spaces
-            array('CH93  0076 2011 6238 5295 7'), // Switzerland with multiple spaces
-
-            // Country list
-            // http://www.rbs.co.uk/corporate/international/g0/guide-to-international-business/regulatory-information/iban/iban-example.ashx
-
-            array('AL47 2121 1009 0000 0002 3569 8741'), //Albania
-            array('AD12 0001 2030 2003 5910 0100'), //Andorra
-            array('AT61 1904 3002 3457 3201'), //Austria
-            array('AZ21 NABZ 0000 0000 1370 1000 1944'), //Azerbaijan
-            array('BH67 BMAG 0000 1299 1234 56'), //Bahrain
-            array('BE62 5100 0754 7061'), //Belgium
-            array('BA39 1290 0794 0102 8494'), //Bosnia and Herzegovina
-            array('BG80 BNBG 9661 1020 3456 78'), //Bulgaria
-            array('HR12 1001 0051 8630 0016 0'), //Croatia
-            array('CY17 0020 0128 0000 0012 0052 7600'), //Cyprus
-            array('CZ65 0800 0000 1920 0014 5399'), //Czech Republic
-            array('DK50 0040 0440 1162 43'), //Denmark
-            array('EE38 2200 2210 2014 5685'), //Estonia
-            array('FO97 5432 0388 8999 44'), //Faroe Islands
-            array('FI21 1234 5600 0007 85'), //Finland
-            array('FR14 2004 1010 0505 0001 3M02 606'), //France
-            array('GE29 NB00 0000 0101 9049 17'), //Georgia
-            array('DE89 3704 0044 0532 0130 00'), //Germany
-            array('GI75 NWBK 0000 0000 7099 453'), //Gibraltar
-            array('GR16 0110 1250 0000 0001 2300 695'), //Greece
-            array('GL56 0444 9876 5432 10'), //Greenland
-            array('HU42 1177 3016 1111 1018 0000 0000'), //Hungary
-            array('IS14 0159 2600 7654 5510 7303 39'), //Iceland
-            array('IE29 AIBK 9311 5212 3456 78'), //Ireland
-            array('IL62 0108 0000 0009 9999 999'), //Israel
-            array('IT40 S054 2811 1010 0000 0123 456'), //Italy
-            array('LV80 BANK 0000 4351 9500 1'), //Latvia
-            array('LB62 0999 0000 0001 0019 0122 9114'), //Lebanon
-            array('LI21 0881 0000 2324 013A A'), //Liechtenstein
-            array('LT12 1000 0111 0100 1000'), //Lithuania
-            array('LU28 0019 4006 4475 0000'), //Luxembourg
-            array('MK072 5012 0000 0589 84'), //Macedonia
-            array('MT84 MALT 0110 0001 2345 MTLC AST0 01S'), //Malta
-            array('MU17 BOMM 0101 1010 3030 0200 000M UR'), //Mauritius
-            array('MD24 AG00 0225 1000 1310 4168'), //Moldova
-            array('MC93 2005 2222 1001 1223 3M44 555'), //Monaco
-            array('ME25 5050 0001 2345 6789 51'), //Montenegro
-            array('NL39 RABO 0300 0652 64'), //Netherlands
-            array('NO93 8601 1117 947'), //Norway
-            array('PK36 SCBL 0000 0011 2345 6702'), //Pakistan
-            array('PL60 1020 1026 0000 0422 7020 1111'), //Poland
-            array('PT50 0002 0123 1234 5678 9015 4'), //Portugal
-            array('RO49 AAAA 1B31 0075 9384 0000'), //Romania
-            array('SM86 U032 2509 8000 0000 0270 100'), //San Marino
-            array('SA03 8000 0000 6080 1016 7519'), //Saudi Arabia
-            array('RS35 2600 0560 1001 6113 79'), //Serbia
-            array('SK31 1200 0000 1987 4263 7541'), //Slovak Republic
-            array('SI56 1910 0000 0123 438'), //Slovenia
-            array('ES80 2310 0001 1800 0001 2345'), //Spain
-            array('SE35 5000 0000 0549 1000 0003'), //Sweden
-            array('CH93 0076 2011 6238 5295 7'), //Switzerland
-            array('TN59 1000 6035 1835 9847 8831'), //Tunisia
-            array('TR33 0006 1005 1978 6457 8413 26'), //Turkey
-            array('AE07 0331 2345 6789 0123 456'), //UAE
-            array('GB12 CPBK 0892 9965 0449 91'), //United Kingdom
-
-            //Extended country list
-            //http://www.nordea.com/Our+services/International+products+and+services/Cash+Management/IBAN+countries/908462.html
-            // http://www.swift.com/dsp/resources/documents/IBAN_Registry.pdf
-            array('AO06000600000100037131174'), //Angola
-            array('AZ21NABZ00000000137010001944'), //Azerbaijan
-            array('BH29BMAG1299123456BH00'), //Bahrain
-            array('BJ11B00610100400271101192591'), //Benin
-            array('BR9700360305000010009795493P1'), // Brazil
-            array('BR1800000000141455123924100C2'), // Brazil
-            array('VG96VPVG0000012345678901'), //British Virgin Islands
-            array('BF1030134020015400945000643'), //Burkina Faso
-            array('BI43201011067444'), //Burundi
-            array('CM2110003001000500000605306'), //Cameroon
-            array('CV64000300004547069110176'), //Cape Verde
-            array('FR7630007000110009970004942'), //Central African Republic
-            array('CG5230011000202151234567890'), //Congo
-            array('CR0515202001026284066'), //Costa Rica
-            array('DO28BAGR00000001212453611324'), //Dominican Republic
-            array('GT82TRAJ01020000001210029690'), //Guatemala
-            array('IR580540105180021273113007'), //Iran
-            array('IL620108000000099999999'), //Israel
-            array('CI05A00060174100178530011852'), //Ivory Coast
-            array('JO94CBJO0010000000000131000302'), // Jordan
-            array('KZ176010251000042993'), //Kazakhstan
-            array('KW74NBOK0000000000001000372151'), //Kuwait
-            array('LB30099900000001001925579115'), //Lebanon
-            array('MG4600005030010101914016056'), //Madagascar
-            array('ML03D00890170001002120000447'), //Mali
-            array('MR1300012000010000002037372'), //Mauritania
-            array('MU17BOMM0101101030300200000MUR'), //Mauritius
-            array('MZ59000100000011834194157'), //Mozambique
-            array('PS92PALS000000000400123456702'), //Palestinian Territory
-            array('QA58DOHB00001234567890ABCDEFG'), //Qatar
-            array('XK051212012345678906'), //Republic of Kosovo
-            array('PT50000200000163099310355'), //Sao Tome and Principe
-            array('SA0380000000608010167519'), //Saudi Arabia
-            array('SN12K00100152000025690007542'), //Senegal
-            array('TL380080012345678910157'), //Timor-Leste
-            array('TN5914207207100707129648'), //Tunisia
-            array('TR330006100519786457841326'), //Turkey
-            array('AE260211000000230064016'), //United Arab Emirates
-        );
-    }
-
-    /**
-     * @dataProvider getIbansWithInvalidFormat
-     */
-    public function testIbansWithInvalidFormat($iban)
-    {
-        $this->assertViolationRaised($iban, Iban::INVALID_FORMAT_ERROR);
-    }
-
-    public function getIbansWithInvalidFormat()
-    {
-        return array(
-            array('AL47 2121 1009 0000 0002 3569 874'), //Albania
-            array('AD12 0001 2030 2003 5910 010'), //Andorra
-            array('AT61 1904 3002 3457 320'), //Austria
-            array('AZ21 NABZ 0000 0000 1370 1000 194'), //Azerbaijan
-            array('AZ21 N1BZ 0000 0000 1370 1000 1944'), //Azerbaijan
-            array('BH67 BMAG 0000 1299 1234 5'), //Bahrain
-            array('BH67 B2AG 0000 1299 1234 56'), //Bahrain
-            array('BE62 5100 0754 7061 2'), //Belgium
-            array('BA39 1290 0794 0102 8494 4'), //Bosnia and Herzegovina
-            array('BG80 BNBG 9661 1020 3456 7'), //Bulgaria
-            array('BG80 B2BG 9661 1020 3456 78'), //Bulgaria
-            array('HR12 1001 0051 8630 0016 01'), //Croatia
-            array('CY17 0020 0128 0000 0012 0052 7600 1'), //Cyprus
-            array('CZ65 0800 0000 1920 0014 5399 1'), //Czech Republic
-            array('DK50 0040 0440 1162 431'), //Denmark
-            array('EE38 2200 2210 2014 5685 1'), //Estonia
-            array('FO97 5432 0388 8999 441'), //Faroe Islands
-            array('FI21 1234 5600 0007 851'), //Finland
-            array('FR14 2004 1010 0505 0001 3M02 6061'), //France
-            array('GE29 NB00 0000 0101 9049 171'), //Georgia
-            array('DE89 3704 0044 0532 0130 001'), //Germany
-            array('GI75 NWBK 0000 0000 7099 4531'), //Gibraltar
-            array('GR16 0110 1250 0000 0001 2300 6951'), //Greece
-            array('GL56 0444 9876 5432 101'), //Greenland
-            array('HU42 1177 3016 1111 1018 0000 0000 1'), //Hungary
-            array('IS14 0159 2600 7654 5510 7303 391'), //Iceland
-            array('IE29 AIBK 9311 5212 3456 781'), //Ireland
-            array('IL62 0108 0000 0009 9999 9991'), //Israel
-            array('IT40 S054 2811 1010 0000 0123 4561'), //Italy
-            array('LV80 BANK 0000 4351 9500 11'), //Latvia
-            array('LB62 0999 0000 0001 0019 0122 9114 1'), //Lebanon
-            array('LI21 0881 0000 2324 013A A1'), //Liechtenstein
-            array('LT12 1000 0111 0100 1000 1'), //Lithuania
-            array('LU28 0019 4006 4475 0000 1'), //Luxembourg
-            array('MK072 5012 0000 0589 84 1'), //Macedonia
-            array('MT84 MALT 0110 0001 2345 MTLC AST0 01SA'), //Malta
-            array('MU17 BOMM 0101 1010 3030 0200 000M URA'), //Mauritius
-            array('MD24 AG00 0225 1000 1310 4168 1'), //Moldova
-            array('MC93 2005 2222 1001 1223 3M44 5551'), //Monaco
-            array('ME25 5050 0001 2345 6789 511'), //Montenegro
-            array('NL39 RABO 0300 0652 641'), //Netherlands
-            array('NO93 8601 1117 9471'), //Norway
-            array('PK36 SCBL 0000 0011 2345 6702 1'), //Pakistan
-            array('PL60 1020 1026 0000 0422 7020 1111 1'), //Poland
-            array('PT50 0002 0123 1234 5678 9015 41'), //Portugal
-            array('RO49 AAAA 1B31 0075 9384 0000 1'), //Romania
-            array('SM86 U032 2509 8000 0000 0270 1001'), //San Marino
-            array('SA03 8000 0000 6080 1016 7519 1'), //Saudi Arabia
-            array('RS35 2600 0560 1001 6113 791'), //Serbia
-            array('SK31 1200 0000 1987 4263 7541 1'), //Slovak Republic
-            array('SI56 1910 0000 0123 4381'), //Slovenia
-            array('ES80 2310 0001 1800 0001 2345 1'), //Spain
-            array('SE35 5000 0000 0549 1000 0003 1'), //Sweden
-            array('CH93 0076 2011 6238 5295 71'), //Switzerland
-            array('TN59 1000 6035 1835 9847 8831 1'), //Tunisia
-            array('TR33 0006 1005 1978 6457 8413 261'), //Turkey
-            array('AE07 0331 2345 6789 0123 4561'), //UAE
-            array('GB12 CPBK 0892 9965 0449 911'), //United Kingdom
-
-            //Extended country list
-            array('AO060006000001000371311741'), //Angola
-            array('AZ21NABZ000000001370100019441'), //Azerbaijan
-            array('BH29BMAG1299123456BH001'), //Bahrain
-            array('BJ11B006101004002711011925911'), //Benin
-            array('BR9700360305000010009795493P11'), // Brazil
-            array('BR1800000000141455123924100C21'), // Brazil
-            array('VG96VPVG00000123456789011'), //British Virgin Islands
-            array('BF10301340200154009450006431'), //Burkina Faso
-            array('BI432010110674441'), //Burundi
-            array('CM21100030010005000006053061'), //Cameroon
-            array('CV640003000045470691101761'), //Cape Verde
-            array('FR76300070001100099700049421'), //Central African Republic
-            array('CG52300110002021512345678901'), //Congo
-            array('CR05152020010262840661'), //Costa Rica
-            array('DO28BAGR000000012124536113241'), //Dominican Republic
-            array('GT82TRAJ010200000012100296901'), //Guatemala
-            array('IR5805401051800212731130071'), //Iran
-            array('IL6201080000000999999991'), //Israel
-            array('CI05A000601741001785300118521'), //Ivory Coast
-            array('JO94CBJO00100000000001310003021'), // Jordan
-            array('KZ1760102510000429931'), //Kazakhstan
-            array('KW74NBOK00000000000010003721511'), //Kuwait
-            array('LB300999000000010019255791151'), //Lebanon
-            array('MG46000050300101019140160561'), //Madagascar
-            array('ML03D008901700010021200004471'), //Mali
-            array('MR13000120000100000020373721'), //Mauritania
-            array('MU17BOMM0101101030300200000MUR1'), //Mauritius
-            array('MZ590001000000118341941571'), //Mozambique
-            array('PS92PALS0000000004001234567021'), //Palestinian Territory
-            array('QA58DOHB00001234567890ABCDEFG1'), //Qatar
-            array('XK0512120123456789061'), //Republic of Kosovo
-            array('PT500002000001630993103551'), //Sao Tome and Principe
-            array('SA03800000006080101675191'), //Saudi Arabia
-            array('SN12K001001520000256900075421'), //Senegal
-            array('TL3800800123456789101571'), //Timor-Leste
-            array('TN59142072071007071296481'), //Tunisia
-            array('TR3300061005197864578413261'), //Turkey
-            array('AE2602110000002300640161'), //United Arab Emirates
-        );
-    }
-
-    /**
-     * @dataProvider getIbansWithValidFormatButIncorrectChecksum
-     */
-    public function testIbansWithValidFormatButIncorrectChecksum($iban)
-    {
-        $this->assertViolationRaised($iban, Iban::CHECKSUM_FAILED_ERROR);
-    }
-
-    public function getIbansWithValidFormatButIncorrectChecksum()
-    {
-        return array(
-            array('AL47 2121 1009 0000 0002 3569 8742'), //Albania
-            array('AD12 0001 2030 2003 5910 0101'), //Andorra
-            array('AT61 1904 3002 3457 3202'), //Austria
-            array('AZ21 NABZ 0000 0000 1370 1000 1945'), //Azerbaijan
-            array('BH67 BMAG 0000 1299 1234 57'), //Bahrain
-            array('BE62 5100 0754 7062'), //Belgium
-            array('BA39 1290 0794 0102 8495'), //Bosnia and Herzegovina
-            array('BG80 BNBG 9661 1020 3456 79'), //Bulgaria
-            array('HR12 1001 0051 8630 0016 1'), //Croatia
-            array('CY17 0020 0128 0000 0012 0052 7601'), //Cyprus
-            array('CZ65 0800 0000 1920 0014 5398'), //Czech Republic
-            array('DK50 0040 0440 1162 44'), //Denmark
-            array('EE38 2200 2210 2014 5684'), //Estonia
-            array('FO97 5432 0388 8999 43'), //Faroe Islands
-            array('FI21 1234 5600 0007 84'), //Finland
-            array('FR14 2004 1010 0505 0001 3M02 605'), //France
-            array('GE29 NB00 0000 0101 9049 16'), //Georgia
-            array('DE89 3704 0044 0532 0130 01'), //Germany
-            array('GI75 NWBK 0000 0000 7099 452'), //Gibraltar
-            array('GR16 0110 1250 0000 0001 2300 694'), //Greece
-            array('GL56 0444 9876 5432 11'), //Greenland
-            array('HU42 1177 3016 1111 1018 0000 0001'), //Hungary
-            array('IS14 0159 2600 7654 5510 7303 38'), //Iceland
-            array('IE29 AIBK 9311 5212 3456 79'), //Ireland
-            array('IL62 0108 0000 0009 9999 998'), //Israel
-            array('IT40 S054 2811 1010 0000 0123 457'), //Italy
-            array('LV80 BANK 0000 4351 9500 2'), //Latvia
-            array('LB62 0999 0000 0001 0019 0122 9115'), //Lebanon
-            array('LI21 0881 0000 2324 013A B'), //Liechtenstein
-            array('LT12 1000 0111 0100 1001'), //Lithuania
-            array('LU28 0019 4006 4475 0001'), //Luxembourg
-            array('MK072 5012 0000 0589 85'), //Macedonia
-            array('MT84 MALT 0110 0001 2345 MTLC AST0 01T'), //Malta
-            array('MU17 BOMM 0101 1010 3030 0200 000M UP'), //Mauritius
-            array('MD24 AG00 0225 1000 1310 4169'), //Moldova
-            array('MC93 2005 2222 1001 1223 3M44 554'), //Monaco
-            array('ME25 5050 0001 2345 6789 52'), //Montenegro
-            array('NL39 RABO 0300 0652 65'), //Netherlands
-            array('NO93 8601 1117 948'), //Norway
-            array('PK36 SCBL 0000 0011 2345 6703'), //Pakistan
-            array('PL60 1020 1026 0000 0422 7020 1112'), //Poland
-            array('PT50 0002 0123 1234 5678 9015 5'), //Portugal
-            array('RO49 AAAA 1B31 0075 9384 0001'), //Romania
-            array('SM86 U032 2509 8000 0000 0270 101'), //San Marino
-            array('SA03 8000 0000 6080 1016 7518'), //Saudi Arabia
-            array('RS35 2600 0560 1001 6113 78'), //Serbia
-            array('SK31 1200 0000 1987 4263 7542'), //Slovak Republic
-            array('SI56 1910 0000 0123 439'), //Slovenia
-            array('ES80 2310 0001 1800 0001 2346'), //Spain
-            array('SE35 5000 0000 0549 1000 0004'), //Sweden
-            array('CH93 0076 2011 6238 5295 8'), //Switzerland
-            array('TN59 1000 6035 1835 9847 8832'), //Tunisia
-            array('TR33 0006 1005 1978 6457 8413 27'), //Turkey
-            array('AE07 0331 2345 6789 0123 457'), //UAE
-            array('GB12 CPBK 0892 9965 0449 92'), //United Kingdom
-
-            //Extended country list
-            array('AO06000600000100037131175'), //Angola
-            array('AZ21NABZ00000000137010001945'), //Azerbaijan
-            array('BH29BMAG1299123456BH01'), //Bahrain
-            array('BJ11B00610100400271101192592'), //Benin
-            array('BR9700360305000010009795493P2'), // Brazil
-            array('BR1800000000141455123924100C3'), // Brazil
-            array('VG96VPVG0000012345678902'), //British Virgin Islands
-            array('BF1030134020015400945000644'), //Burkina Faso
-            array('BI43201011067445'), //Burundi
-            array('CM2110003001000500000605307'), //Cameroon
-            array('CV64000300004547069110177'), //Cape Verde
-            array('FR7630007000110009970004943'), //Central African Republic
-            array('CG5230011000202151234567891'), //Congo
-            array('CR0515202001026284067'), //Costa Rica
-            array('DO28BAGR00000001212453611325'), //Dominican Republic
-            array('GT82TRAJ01020000001210029691'), //Guatemala
-            array('IR580540105180021273113008'), //Iran
-            array('IL620108000000099999998'), //Israel
-            array('CI05A00060174100178530011853'), //Ivory Coast
-            array('JO94CBJO0010000000000131000303'), // Jordan
-            array('KZ176010251000042994'), //Kazakhstan
-            array('KW74NBOK0000000000001000372152'), //Kuwait
-            array('LB30099900000001001925579116'), //Lebanon
-            array('MG4600005030010101914016057'), //Madagascar
-            array('ML03D00890170001002120000448'), //Mali
-            array('MR1300012000010000002037373'), //Mauritania
-            array('MU17BOMM0101101030300200000MUP'), //Mauritius
-            array('MZ59000100000011834194158'), //Mozambique
-            array('PS92PALS000000000400123456703'), //Palestinian Territory
-            array('QA58DOHB00001234567890ABCDEFH'), //Qatar
-            array('XK051212012345678907'), //Republic of Kosovo
-            array('PT50000200000163099310356'), //Sao Tome and Principe
-            array('SA0380000000608010167518'), //Saudi Arabia
-            array('SN12K00100152000025690007543'), //Senegal
-            array('TL380080012345678910158'), //Timor-Leste
-            array('TN5914207207100707129649'), //Tunisia
-            array('TR330006100519786457841327'), //Turkey
-            array('AE260211000000230064017'), //United Arab Emirates
-        );
-    }
-
-    /**
-     * @dataProvider getUnsupportedCountryCodes
-     */
-    public function testIbansWithUnsupportedCountryCode($countryCode)
-    {
-        $this->assertViolationRaised($countryCode.'260211000000230064016', Iban::NOT_SUPPORTED_COUNTRY_CODE_ERROR);
-    }
-
-    public function getUnsupportedCountryCodes()
-    {
-        return array(
-            array('AG'),
-            array('AI'),
-            array('AQ'),
-            array('AS'),
-            array('AW'),
-        );
-    }
-
-    public function testIbansWithInvalidCharacters()
-    {
-        $this->assertViolationRaised('CH930076201162385295]', Iban::INVALID_CHARACTERS_ERROR);
-    }
-
-    /**
-     * @dataProvider getIbansWithInvalidCountryCode
-     */
-    public function testIbansWithInvalidCountryCode($iban)
-    {
-        $this->assertViolationRaised($iban, Iban::INVALID_COUNTRY_CODE_ERROR);
-    }
-
-    public function getIbansWithInvalidCountryCode()
-    {
-        return array(
-            array('0750447346'),
-            array('2X0750447346'),
-            array('A20750447346'),
-        );
-    }
-
-    private function assertViolationRaised($iban, $code)
-    {
-        $constraint = new Iban(array(
-            'message' => 'myMessage',
-        ));
-
-        $this->validator->validate($iban, $constraint);
-
-        $this->buildViolation('myMessage')
-            ->setParameter('{{ value }}', '"'.$iban.'"')
-            ->setCode($code)
-            ->assertRaised();
-    }
-}
diff --git a/vendor/symfony/validator/Tests/Constraints/IdenticalToValidatorTest.php b/vendor/symfony/validator/Tests/Constraints/IdenticalToValidatorTest.php
deleted file mode 100644
index 1acb41a..0000000
--- a/vendor/symfony/validator/Tests/Constraints/IdenticalToValidatorTest.php
+++ /dev/null
@@ -1,89 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Constraints;
-
-use Symfony\Component\Validator\Constraints\IdenticalTo;
-use Symfony\Component\Validator\Constraints\IdenticalToValidator;
-use Symfony\Component\Validator\Validation;
-
-/**
- * @author Daniel Holmes <daniel@danielholmes.org>
- */
-class IdenticalToValidatorTest extends AbstractComparisonValidatorTestCase
-{
-    protected function getApiVersion()
-    {
-        return Validation::API_VERSION_2_5;
-    }
-
-    protected function createValidator()
-    {
-        return new IdenticalToValidator();
-    }
-
-    protected function createConstraint(array $options)
-    {
-        return new IdenticalTo($options);
-    }
-
-    public function provideAllValidComparisons()
-    {
-        $this->setDefaultTimezone('UTC');
-
-        // Don't call addPhp5Dot5Comparisons() automatically, as it does
-        // not take care of identical objects
-        $comparisons = $this->provideValidComparisons();
-
-        $this->restoreDefaultTimezone();
-
-        return $comparisons;
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    public function provideValidComparisons()
-    {
-        $date = new \DateTime('2000-01-01');
-        $object = new ComparisonTest_Class(2);
-
-        $comparisons = array(
-            array(3, 3),
-            array('a', 'a'),
-            array($date, $date),
-            array($object, $object),
-            array(null, 1),
-        );
-
-        if (PHP_VERSION_ID >= 50500) {
-            $immutableDate = new \DateTimeImmutable('2000-01-01');
-            $comparisons[] = array($immutableDate, $immutableDate);
-        }
-
-        return $comparisons;
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    public function provideInvalidComparisons()
-    {
-        return array(
-            array(1, '1', 2, '2', 'integer'),
-            array(2, '2', '2', '"2"', 'string'),
-            array('22', '"22"', '333', '"333"', 'string'),
-            array(new \DateTime('2001-01-01'), 'Jan 1, 2001, 12:00 AM', new \DateTime('2001-01-01'), 'Jan 1, 2001, 12:00 AM', 'DateTime'),
-            array(new \DateTime('2001-01-01'), 'Jan 1, 2001, 12:00 AM', new \DateTime('1999-01-01'), 'Jan 1, 1999, 12:00 AM', 'DateTime'),
-            array(new ComparisonTest_Class(4), '4', new ComparisonTest_Class(5), '5', __NAMESPACE__.'\ComparisonTest_Class'),
-        );
-    }
-}
diff --git a/vendor/symfony/validator/Tests/Constraints/ImageValidatorTest.php b/vendor/symfony/validator/Tests/Constraints/ImageValidatorTest.php
deleted file mode 100644
index 4605a06..0000000
--- a/vendor/symfony/validator/Tests/Constraints/ImageValidatorTest.php
+++ /dev/null
@@ -1,332 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Constraints;
-
-use Symfony\Component\Validator\Constraints\Image;
-use Symfony\Component\Validator\Constraints\ImageValidator;
-use Symfony\Component\Validator\Validation;
-
-/**
- * @requires extension fileinfo
- */
-class ImageValidatorTest extends AbstractConstraintValidatorTest
-{
-    protected $context;
-
-    /**
-     * @var ImageValidator
-     */
-    protected $validator;
-
-    protected $path;
-    protected $image;
-    protected $imageLandscape;
-    protected $imagePortrait;
-    protected $image4By3;
-
-    protected function getApiVersion()
-    {
-        return Validation::API_VERSION_2_5;
-    }
-
-    protected function createValidator()
-    {
-        return new ImageValidator();
-    }
-
-    protected function setUp()
-    {
-        parent::setUp();
-
-        $this->image = __DIR__.'/Fixtures/test.gif';
-        $this->imageLandscape = __DIR__.'/Fixtures/test_landscape.gif';
-        $this->imagePortrait = __DIR__.'/Fixtures/test_portrait.gif';
-        $this->image4By3 = __DIR__.'/Fixtures/test_4by3.gif';
-    }
-
-    public function testNullIsValid()
-    {
-        $this->validator->validate(null, new Image());
-
-        $this->assertNoViolation();
-    }
-
-    public function testEmptyStringIsValid()
-    {
-        $this->validator->validate('', new Image());
-
-        $this->assertNoViolation();
-    }
-
-    public function testValidImage()
-    {
-        $this->validator->validate($this->image, new Image());
-
-        $this->assertNoViolation();
-    }
-
-    public function testFileNotFound()
-    {
-        // Check that the logic from FileValidator still works
-        $constraint = new Image(array(
-            'notFoundMessage' => 'myMessage',
-        ));
-
-        $this->validator->validate('foobar', $constraint);
-
-        $this->buildViolation('myMessage')
-            ->setParameter('{{ file }}', '"foobar"')
-            ->setCode(Image::NOT_FOUND_ERROR)
-            ->assertRaised();
-    }
-
-    public function testValidSize()
-    {
-        $constraint = new Image(array(
-            'minWidth' => 1,
-            'maxWidth' => 2,
-            'minHeight' => 1,
-            'maxHeight' => 2,
-        ));
-
-        $this->validator->validate($this->image, $constraint);
-
-        $this->assertNoViolation();
-    }
-
-    public function testWidthTooSmall()
-    {
-        $constraint = new Image(array(
-            'minWidth' => 3,
-            'minWidthMessage' => 'myMessage',
-        ));
-
-        $this->validator->validate($this->image, $constraint);
-
-        $this->buildViolation('myMessage')
-            ->setParameter('{{ width }}', '2')
-            ->setParameter('{{ min_width }}', '3')
-            ->setCode(Image::TOO_NARROW_ERROR)
-            ->assertRaised();
-    }
-
-    public function testWidthTooBig()
-    {
-        $constraint = new Image(array(
-            'maxWidth' => 1,
-            'maxWidthMessage' => 'myMessage',
-        ));
-
-        $this->validator->validate($this->image, $constraint);
-
-        $this->buildViolation('myMessage')
-            ->setParameter('{{ width }}', '2')
-            ->setParameter('{{ max_width }}', '1')
-            ->setCode(Image::TOO_WIDE_ERROR)
-            ->assertRaised();
-    }
-
-    public function testHeightTooSmall()
-    {
-        $constraint = new Image(array(
-            'minHeight' => 3,
-            'minHeightMessage' => 'myMessage',
-        ));
-
-        $this->validator->validate($this->image, $constraint);
-
-        $this->buildViolation('myMessage')
-            ->setParameter('{{ height }}', '2')
-            ->setParameter('{{ min_height }}', '3')
-            ->setCode(Image::TOO_LOW_ERROR)
-            ->assertRaised();
-    }
-
-    public function testHeightTooBig()
-    {
-        $constraint = new Image(array(
-            'maxHeight' => 1,
-            'maxHeightMessage' => 'myMessage',
-        ));
-
-        $this->validator->validate($this->image, $constraint);
-
-        $this->buildViolation('myMessage')
-            ->setParameter('{{ height }}', '2')
-            ->setParameter('{{ max_height }}', '1')
-            ->setCode(Image::TOO_HIGH_ERROR)
-            ->assertRaised();
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Validator\Exception\ConstraintDefinitionException
-     */
-    public function testInvalidMinWidth()
-    {
-        $constraint = new Image(array(
-            'minWidth' => '1abc',
-        ));
-
-        $this->validator->validate($this->image, $constraint);
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Validator\Exception\ConstraintDefinitionException
-     */
-    public function testInvalidMaxWidth()
-    {
-        $constraint = new Image(array(
-            'maxWidth' => '1abc',
-        ));
-
-        $this->validator->validate($this->image, $constraint);
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Validator\Exception\ConstraintDefinitionException
-     */
-    public function testInvalidMinHeight()
-    {
-        $constraint = new Image(array(
-            'minHeight' => '1abc',
-        ));
-
-        $this->validator->validate($this->image, $constraint);
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Validator\Exception\ConstraintDefinitionException
-     */
-    public function testInvalidMaxHeight()
-    {
-        $constraint = new Image(array(
-            'maxHeight' => '1abc',
-        ));
-
-        $this->validator->validate($this->image, $constraint);
-    }
-
-    public function testRatioTooSmall()
-    {
-        $constraint = new Image(array(
-            'minRatio' => 2,
-            'minRatioMessage' => 'myMessage',
-        ));
-
-        $this->validator->validate($this->image, $constraint);
-
-        $this->buildViolation('myMessage')
-            ->setParameter('{{ ratio }}', 1)
-            ->setParameter('{{ min_ratio }}', 2)
-            ->setCode(Image::RATIO_TOO_SMALL_ERROR)
-            ->assertRaised();
-    }
-
-    public function testRatioTooBig()
-    {
-        $constraint = new Image(array(
-            'maxRatio' => 0.5,
-            'maxRatioMessage' => 'myMessage',
-        ));
-
-        $this->validator->validate($this->image, $constraint);
-
-        $this->buildViolation('myMessage')
-            ->setParameter('{{ ratio }}', 1)
-            ->setParameter('{{ max_ratio }}', 0.5)
-            ->setCode(Image::RATIO_TOO_BIG_ERROR)
-            ->assertRaised();
-    }
-
-    public function testMaxRatioUsesTwoDecimalsOnly()
-    {
-        $constraint = new Image(array(
-            'maxRatio' => 1.33,
-        ));
-
-        $this->validator->validate($this->image4By3, $constraint);
-
-        $this->assertNoViolation();
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Validator\Exception\ConstraintDefinitionException
-     */
-    public function testInvalidMinRatio()
-    {
-        $constraint = new Image(array(
-            'minRatio' => '1abc',
-        ));
-
-        $this->validator->validate($this->image, $constraint);
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Validator\Exception\ConstraintDefinitionException
-     */
-    public function testInvalidMaxRatio()
-    {
-        $constraint = new Image(array(
-            'maxRatio' => '1abc',
-        ));
-
-        $this->validator->validate($this->image, $constraint);
-    }
-
-    public function testSquareNotAllowed()
-    {
-        $constraint = new Image(array(
-            'allowSquare' => false,
-            'allowSquareMessage' => 'myMessage',
-        ));
-
-        $this->validator->validate($this->image, $constraint);
-
-        $this->buildViolation('myMessage')
-            ->setParameter('{{ width }}', 2)
-            ->setParameter('{{ height }}', 2)
-            ->setCode(Image::SQUARE_NOT_ALLOWED_ERROR)
-            ->assertRaised();
-    }
-
-    public function testLandscapeNotAllowed()
-    {
-        $constraint = new Image(array(
-            'allowLandscape' => false,
-            'allowLandscapeMessage' => 'myMessage',
-        ));
-
-        $this->validator->validate($this->imageLandscape, $constraint);
-
-        $this->buildViolation('myMessage')
-            ->setParameter('{{ width }}', 2)
-            ->setParameter('{{ height }}', 1)
-            ->setCode(Image::LANDSCAPE_NOT_ALLOWED_ERROR)
-            ->assertRaised();
-    }
-
-    public function testPortraitNotAllowed()
-    {
-        $constraint = new Image(array(
-            'allowPortrait' => false,
-            'allowPortraitMessage' => 'myMessage',
-        ));
-
-        $this->validator->validate($this->imagePortrait, $constraint);
-
-        $this->buildViolation('myMessage')
-            ->setParameter('{{ width }}', 1)
-            ->setParameter('{{ height }}', 2)
-            ->setCode(Image::PORTRAIT_NOT_ALLOWED_ERROR)
-            ->assertRaised();
-    }
-}
diff --git a/vendor/symfony/validator/Tests/Constraints/IpValidatorTest.php b/vendor/symfony/validator/Tests/Constraints/IpValidatorTest.php
deleted file mode 100644
index fc40e61..0000000
--- a/vendor/symfony/validator/Tests/Constraints/IpValidatorTest.php
+++ /dev/null
@@ -1,444 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Constraints;
-
-use Symfony\Component\Validator\Constraints\Ip;
-use Symfony\Component\Validator\Constraints\IpValidator;
-use Symfony\Component\Validator\Validation;
-
-class IpValidatorTest extends AbstractConstraintValidatorTest
-{
-    protected function getApiVersion()
-    {
-        return Validation::API_VERSION_2_5;
-    }
-
-    protected function createValidator()
-    {
-        return new IpValidator();
-    }
-
-    public function testNullIsValid()
-    {
-        $this->validator->validate(null, new Ip());
-
-        $this->assertNoViolation();
-    }
-
-    public function testEmptyStringIsValid()
-    {
-        $this->validator->validate('', new Ip());
-
-        $this->assertNoViolation();
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Validator\Exception\UnexpectedTypeException
-     */
-    public function testExpectsStringCompatibleType()
-    {
-        $this->validator->validate(new \stdClass(), new Ip());
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Validator\Exception\ConstraintDefinitionException
-     */
-    public function testInvalidValidatorVersion()
-    {
-        new Ip(array(
-            'version' => 666,
-        ));
-    }
-
-    /**
-     * @dataProvider getValidIpsV4
-     */
-    public function testValidIpsV4($ip)
-    {
-        $this->validator->validate($ip, new Ip(array(
-            'version' => Ip::V4,
-        )));
-
-        $this->assertNoViolation();
-    }
-
-    public function getValidIpsV4()
-    {
-        return array(
-            array('0.0.0.0'),
-            array('10.0.0.0'),
-            array('123.45.67.178'),
-            array('172.16.0.0'),
-            array('192.168.1.0'),
-            array('224.0.0.1'),
-            array('255.255.255.255'),
-            array('127.0.0.0'),
-        );
-    }
-
-    /**
-     * @dataProvider getValidIpsV6
-     */
-    public function testValidIpsV6($ip)
-    {
-        $this->validator->validate($ip, new Ip(array(
-            'version' => Ip::V6,
-        )));
-
-        $this->assertNoViolation();
-    }
-
-    public function getValidIpsV6()
-    {
-        return array(
-            array('2001:0db8:85a3:0000:0000:8a2e:0370:7334'),
-            array('2001:0DB8:85A3:0000:0000:8A2E:0370:7334'),
-            array('2001:0Db8:85a3:0000:0000:8A2e:0370:7334'),
-            array('fdfe:dcba:9876:ffff:fdc6:c46b:bb8f:7d4c'),
-            array('fdc6:c46b:bb8f:7d4c:fdc6:c46b:bb8f:7d4c'),
-            array('fdc6:c46b:bb8f:7d4c:0000:8a2e:0370:7334'),
-            array('fe80:0000:0000:0000:0202:b3ff:fe1e:8329'),
-            array('fe80:0:0:0:202:b3ff:fe1e:8329'),
-            array('fe80::202:b3ff:fe1e:8329'),
-            array('0:0:0:0:0:0:0:0'),
-            array('::'),
-            array('0::'),
-            array('::0'),
-            array('0::0'),
-            // IPv4 mapped to IPv6
-            array('2001:0db8:85a3:0000:0000:8a2e:0.0.0.0'),
-            array('::0.0.0.0'),
-            array('::255.255.255.255'),
-            array('::123.45.67.178'),
-        );
-    }
-
-    /**
-     * @dataProvider getValidIpsAll
-     */
-    public function testValidIpsAll($ip)
-    {
-        $this->validator->validate($ip, new Ip(array(
-            'version' => Ip::ALL,
-        )));
-
-        $this->assertNoViolation();
-    }
-
-    public function getValidIpsAll()
-    {
-        return array_merge($this->getValidIpsV4(), $this->getValidIpsV6());
-    }
-
-    /**
-     * @dataProvider getInvalidIpsV4
-     */
-    public function testInvalidIpsV4($ip)
-    {
-        $constraint = new Ip(array(
-            'version' => Ip::V4,
-            'message' => 'myMessage',
-        ));
-
-        $this->validator->validate($ip, $constraint);
-
-        $this->buildViolation('myMessage')
-            ->setParameter('{{ value }}', '"'.$ip.'"')
-            ->assertRaised();
-    }
-
-    public function getInvalidIpsV4()
-    {
-        return array(
-            array('0'),
-            array('0.0'),
-            array('0.0.0'),
-            array('256.0.0.0'),
-            array('0.256.0.0'),
-            array('0.0.256.0'),
-            array('0.0.0.256'),
-            array('-1.0.0.0'),
-            array('foobar'),
-        );
-    }
-
-    /**
-     * @dataProvider getInvalidPrivateIpsV4
-     */
-    public function testInvalidPrivateIpsV4($ip)
-    {
-        $constraint = new Ip(array(
-            'version' => Ip::V4_NO_PRIV,
-            'message' => 'myMessage',
-        ));
-
-        $this->validator->validate($ip, $constraint);
-
-        $this->buildViolation('myMessage')
-            ->setParameter('{{ value }}', '"'.$ip.'"')
-            ->assertRaised();
-    }
-
-    public function getInvalidPrivateIpsV4()
-    {
-        return array(
-            array('10.0.0.0'),
-            array('172.16.0.0'),
-            array('192.168.1.0'),
-        );
-    }
-
-    /**
-     * @dataProvider getInvalidReservedIpsV4
-     */
-    public function testInvalidReservedIpsV4($ip)
-    {
-        $constraint = new Ip(array(
-            'version' => Ip::V4_NO_RES,
-            'message' => 'myMessage',
-        ));
-
-        $this->validator->validate($ip, $constraint);
-
-        $this->buildViolation('myMessage')
-            ->setParameter('{{ value }}', '"'.$ip.'"')
-            ->assertRaised();
-    }
-
-    public function getInvalidReservedIpsV4()
-    {
-        return array(
-            array('0.0.0.0'),
-            array('224.0.0.1'),
-            array('255.255.255.255'),
-        );
-    }
-
-    /**
-     * @dataProvider getInvalidPublicIpsV4
-     */
-    public function testInvalidPublicIpsV4($ip)
-    {
-        $constraint = new Ip(array(
-            'version' => Ip::V4_ONLY_PUBLIC,
-            'message' => 'myMessage',
-        ));
-
-        $this->validator->validate($ip, $constraint);
-
-        $this->buildViolation('myMessage')
-            ->setParameter('{{ value }}', '"'.$ip.'"')
-            ->assertRaised();
-    }
-
-    public function getInvalidPublicIpsV4()
-    {
-        return array_merge($this->getInvalidPrivateIpsV4(), $this->getInvalidReservedIpsV4());
-    }
-
-    /**
-     * @dataProvider getInvalidIpsV6
-     */
-    public function testInvalidIpsV6($ip)
-    {
-        $constraint = new Ip(array(
-            'version' => Ip::V6,
-            'message' => 'myMessage',
-        ));
-
-        $this->validator->validate($ip, $constraint);
-
-        $this->buildViolation('myMessage')
-            ->setParameter('{{ value }}', '"'.$ip.'"')
-            ->assertRaised();
-    }
-
-    public function getInvalidIpsV6()
-    {
-        return array(
-            array('z001:0db8:85a3:0000:0000:8a2e:0370:7334'),
-            array('fe80'),
-            array('fe80:8329'),
-            array('fe80:::202:b3ff:fe1e:8329'),
-            array('fe80::202:b3ff::fe1e:8329'),
-            // IPv4 mapped to IPv6
-            array('2001:0db8:85a3:0000:0000:8a2e:0370:0.0.0.0'),
-            array('::0.0'),
-            array('::0.0.0'),
-            array('::256.0.0.0'),
-            array('::0.256.0.0'),
-            array('::0.0.256.0'),
-            array('::0.0.0.256'),
-        );
-    }
-
-    /**
-     * @dataProvider getInvalidPrivateIpsV6
-     */
-    public function testInvalidPrivateIpsV6($ip)
-    {
-        $constraint = new Ip(array(
-            'version' => Ip::V6_NO_PRIV,
-            'message' => 'myMessage',
-        ));
-
-        $this->validator->validate($ip, $constraint);
-
-        $this->buildViolation('myMessage')
-            ->setParameter('{{ value }}', '"'.$ip.'"')
-            ->assertRaised();
-    }
-
-    public function getInvalidPrivateIpsV6()
-    {
-        return array(
-            array('fdfe:dcba:9876:ffff:fdc6:c46b:bb8f:7d4c'),
-            array('fdc6:c46b:bb8f:7d4c:fdc6:c46b:bb8f:7d4c'),
-            array('fdc6:c46b:bb8f:7d4c:0000:8a2e:0370:7334'),
-        );
-    }
-
-    /**
-     * @dataProvider getInvalidReservedIpsV6
-     */
-    public function testInvalidReservedIpsV6($ip)
-    {
-        $constraint = new Ip(array(
-            'version' => Ip::V6_NO_RES,
-            'message' => 'myMessage',
-        ));
-
-        $this->validator->validate($ip, $constraint);
-
-        $this->buildViolation('myMessage')
-            ->setParameter('{{ value }}', '"'.$ip.'"')
-            ->assertRaised();
-    }
-
-    public function getInvalidReservedIpsV6()
-    {
-        // Quoting after official filter documentation:
-        // "FILTER_FLAG_NO_RES_RANGE = This flag does not apply to IPv6 addresses."
-        // Full description: http://php.net/manual/en/filter.filters.flags.php
-        return $this->getInvalidIpsV6();
-    }
-
-    /**
-     * @dataProvider getInvalidPublicIpsV6
-     */
-    public function testInvalidPublicIpsV6($ip)
-    {
-        $constraint = new Ip(array(
-            'version' => Ip::V6_ONLY_PUBLIC,
-            'message' => 'myMessage',
-        ));
-
-        $this->validator->validate($ip, $constraint);
-
-        $this->buildViolation('myMessage')
-            ->setParameter('{{ value }}', '"'.$ip.'"')
-            ->assertRaised();
-    }
-
-    public function getInvalidPublicIpsV6()
-    {
-        return array_merge($this->getInvalidPrivateIpsV6(), $this->getInvalidReservedIpsV6());
-    }
-
-    /**
-     * @dataProvider getInvalidIpsAll
-     */
-    public function testInvalidIpsAll($ip)
-    {
-        $constraint = new Ip(array(
-            'version' => Ip::ALL,
-            'message' => 'myMessage',
-        ));
-
-        $this->validator->validate($ip, $constraint);
-
-        $this->buildViolation('myMessage')
-            ->setParameter('{{ value }}', '"'.$ip.'"')
-            ->assertRaised();
-    }
-
-    public function getInvalidIpsAll()
-    {
-        return array_merge($this->getInvalidIpsV4(), $this->getInvalidIpsV6());
-    }
-
-    /**
-     * @dataProvider getInvalidPrivateIpsAll
-     */
-    public function testInvalidPrivateIpsAll($ip)
-    {
-        $constraint = new Ip(array(
-            'version' => Ip::ALL_NO_PRIV,
-            'message' => 'myMessage',
-        ));
-
-        $this->validator->validate($ip, $constraint);
-
-        $this->buildViolation('myMessage')
-            ->setParameter('{{ value }}', '"'.$ip.'"')
-            ->assertRaised();
-    }
-
-    public function getInvalidPrivateIpsAll()
-    {
-        return array_merge($this->getInvalidPrivateIpsV4(), $this->getInvalidPrivateIpsV6());
-    }
-
-    /**
-     * @dataProvider getInvalidReservedIpsAll
-     */
-    public function testInvalidReservedIpsAll($ip)
-    {
-        $constraint = new Ip(array(
-            'version' => Ip::ALL_NO_RES,
-            'message' => 'myMessage',
-        ));
-
-        $this->validator->validate($ip, $constraint);
-
-        $this->buildViolation('myMessage')
-            ->setParameter('{{ value }}', '"'.$ip.'"')
-            ->assertRaised();
-    }
-
-    public function getInvalidReservedIpsAll()
-    {
-        return array_merge($this->getInvalidReservedIpsV4(), $this->getInvalidReservedIpsV6());
-    }
-
-    /**
-     * @dataProvider getInvalidPublicIpsAll
-     */
-    public function testInvalidPublicIpsAll($ip)
-    {
-        $constraint = new Ip(array(
-            'version' => Ip::ALL_ONLY_PUBLIC,
-            'message' => 'myMessage',
-        ));
-
-        $this->validator->validate($ip, $constraint);
-
-        $this->buildViolation('myMessage')
-            ->setParameter('{{ value }}', '"'.$ip.'"')
-            ->assertRaised();
-    }
-
-    public function getInvalidPublicIpsAll()
-    {
-        return array_merge($this->getInvalidPublicIpsV4(), $this->getInvalidPublicIpsV6());
-    }
-}
diff --git a/vendor/symfony/validator/Tests/Constraints/IsFalseValidatorTest.php b/vendor/symfony/validator/Tests/Constraints/IsFalseValidatorTest.php
deleted file mode 100644
index a63d846..0000000
--- a/vendor/symfony/validator/Tests/Constraints/IsFalseValidatorTest.php
+++ /dev/null
@@ -1,56 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Constraints;
-
-use Symfony\Component\Validator\Constraints\IsFalse;
-use Symfony\Component\Validator\Constraints\IsFalseValidator;
-use Symfony\Component\Validator\Validation;
-
-class IsFalseValidatorTest extends AbstractConstraintValidatorTest
-{
-    protected function getApiVersion()
-    {
-        return Validation::API_VERSION_2_5;
-    }
-
-    protected function createValidator()
-    {
-        return new IsFalseValidator();
-    }
-
-    public function testNullIsValid()
-    {
-        $this->validator->validate(null, new IsFalse());
-
-        $this->assertNoViolation();
-    }
-
-    public function testFalseIsValid()
-    {
-        $this->validator->validate(false, new IsFalse());
-
-        $this->assertNoViolation();
-    }
-
-    public function testTrueIsInvalid()
-    {
-        $constraint = new IsFalse(array(
-            'message' => 'myMessage',
-        ));
-
-        $this->validator->validate(true, $constraint);
-
-        $this->buildViolation('myMessage')
-            ->setParameter('{{ value }}', 'true')
-            ->assertRaised();
-    }
-}
diff --git a/vendor/symfony/validator/Tests/Constraints/IsNullValidatorTest.php b/vendor/symfony/validator/Tests/Constraints/IsNullValidatorTest.php
deleted file mode 100644
index 885048b..0000000
--- a/vendor/symfony/validator/Tests/Constraints/IsNullValidatorTest.php
+++ /dev/null
@@ -1,66 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Constraints;
-
-use Symfony\Component\Validator\Constraints\IsNull;
-use Symfony\Component\Validator\Constraints\IsNullValidator;
-use Symfony\Component\Validator\Validation;
-
-class IsNullValidatorTest extends AbstractConstraintValidatorTest
-{
-    protected function getApiVersion()
-    {
-        return Validation::API_VERSION_2_5;
-    }
-
-    protected function createValidator()
-    {
-        return new IsNullValidator();
-    }
-
-    public function testNullIsValid()
-    {
-        $this->validator->validate(null, new IsNull());
-
-        $this->assertNoViolation();
-    }
-
-    /**
-     * @dataProvider getInvalidValues
-     */
-    public function testInvalidValues($value, $valueAsString)
-    {
-        $constraint = new IsNull(array(
-            'message' => 'myMessage',
-        ));
-
-        $this->validator->validate($value, $constraint);
-
-        $this->buildViolation('myMessage')
-            ->setParameter('{{ value }}', $valueAsString)
-            ->assertRaised();
-    }
-
-    public function getInvalidValues()
-    {
-        return array(
-            array(0, '0'),
-            array(false, 'false'),
-            array(true, 'true'),
-            array('', '""'),
-            array('foo bar', '"foo bar"'),
-            array(new \DateTime(), 'object'),
-            array(new \stdClass(), 'object'),
-            array(array(), 'array'),
-        );
-    }
-}
diff --git a/vendor/symfony/validator/Tests/Constraints/IsTrueValidatorTest.php b/vendor/symfony/validator/Tests/Constraints/IsTrueValidatorTest.php
deleted file mode 100644
index a4f0a4a..0000000
--- a/vendor/symfony/validator/Tests/Constraints/IsTrueValidatorTest.php
+++ /dev/null
@@ -1,56 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Constraints;
-
-use Symfony\Component\Validator\Constraints\IsTrue;
-use Symfony\Component\Validator\Constraints\IsTrueValidator;
-use Symfony\Component\Validator\Validation;
-
-class IsTrueValidatorTest extends AbstractConstraintValidatorTest
-{
-    protected function getApiVersion()
-    {
-        return Validation::API_VERSION_2_5;
-    }
-
-    protected function createValidator()
-    {
-        return new IsTrueValidator();
-    }
-
-    public function testNullIsValid()
-    {
-        $this->validator->validate(null, new IsTrue());
-
-        $this->assertNoViolation();
-    }
-
-    public function testTrueIsValid()
-    {
-        $this->validator->validate(true, new IsTrue());
-
-        $this->assertNoViolation();
-    }
-
-    public function testFalseIsInvalid()
-    {
-        $constraint = new IsTrue(array(
-            'message' => 'myMessage',
-        ));
-
-        $this->validator->validate(false, $constraint);
-
-        $this->buildViolation('myMessage')
-            ->setParameter('{{ value }}', 'false')
-            ->assertRaised();
-    }
-}
diff --git a/vendor/symfony/validator/Tests/Constraints/IsbnValidatorTest.php b/vendor/symfony/validator/Tests/Constraints/IsbnValidatorTest.php
deleted file mode 100644
index e73b89d..0000000
--- a/vendor/symfony/validator/Tests/Constraints/IsbnValidatorTest.php
+++ /dev/null
@@ -1,271 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Constraints;
-
-use Symfony\Component\Validator\Constraints\Isbn;
-use Symfony\Component\Validator\Constraints\IsbnValidator;
-use Symfony\Component\Validator\Validation;
-
-/**
- * @see https://en.wikipedia.org/wiki/Isbn
- */
-class IsbnValidatorTest extends AbstractConstraintValidatorTest
-{
-    protected function getApiVersion()
-    {
-        return Validation::API_VERSION_2_5;
-    }
-
-    protected function createValidator()
-    {
-        return new IsbnValidator();
-    }
-
-    public function getValidIsbn10()
-    {
-        return array(
-            array('2723442284'),
-            array('2723442276'),
-            array('2723455041'),
-            array('2070546810'),
-            array('2711858839'),
-            array('2756406767'),
-            array('2870971648'),
-            array('226623854X'),
-            array('2851806424'),
-            array('0321812700'),
-            array('0-45122-5244'),
-            array('0-4712-92311'),
-            array('0-9752298-0-X'),
-        );
-    }
-
-    public function getInvalidIsbn10()
-    {
-        return array(
-            array('27234422841', Isbn::TOO_LONG_ERROR),
-            array('272344228', Isbn::TOO_SHORT_ERROR),
-            array('0-4712-9231', Isbn::TOO_SHORT_ERROR),
-            array('1234567890', Isbn::CHECKSUM_FAILED_ERROR),
-            array('0987656789', Isbn::CHECKSUM_FAILED_ERROR),
-            array('7-35622-5444', Isbn::CHECKSUM_FAILED_ERROR),
-            array('0-4X19-92611', Isbn::CHECKSUM_FAILED_ERROR),
-            array('0_45122_5244', Isbn::INVALID_CHARACTERS_ERROR),
-            array('2870#971#648', Isbn::INVALID_CHARACTERS_ERROR),
-            array('0-9752298-0-x', Isbn::INVALID_CHARACTERS_ERROR),
-            array('1A34567890', Isbn::INVALID_CHARACTERS_ERROR),
-            // chr(1) evaluates to 0
-            // 2070546810 is valid
-            array('2'.chr(1).'70546810', Isbn::INVALID_CHARACTERS_ERROR),
-        );
-    }
-
-    public function getValidIsbn13()
-    {
-        return array(
-            array('978-2723442282'),
-            array('978-2723442275'),
-            array('978-2723455046'),
-            array('978-2070546817'),
-            array('978-2711858835'),
-            array('978-2756406763'),
-            array('978-2870971642'),
-            array('978-2266238540'),
-            array('978-2851806420'),
-            array('978-0321812704'),
-            array('978-0451225245'),
-            array('978-0471292319'),
-        );
-    }
-
-    public function getInvalidIsbn13()
-    {
-        return array(
-            array('978-27234422821', Isbn::TOO_LONG_ERROR),
-            array('978-272344228', Isbn::TOO_SHORT_ERROR),
-            array('978-2723442-82', Isbn::TOO_SHORT_ERROR),
-            array('978-2723442281', Isbn::CHECKSUM_FAILED_ERROR),
-            array('978-0321513774', Isbn::CHECKSUM_FAILED_ERROR),
-            array('979-0431225385', Isbn::CHECKSUM_FAILED_ERROR),
-            array('980-0474292319', Isbn::CHECKSUM_FAILED_ERROR),
-            array('0-4X19-92619812', Isbn::INVALID_CHARACTERS_ERROR),
-            array('978_2723442282', Isbn::INVALID_CHARACTERS_ERROR),
-            array('978#2723442282', Isbn::INVALID_CHARACTERS_ERROR),
-            array('978-272C442282', Isbn::INVALID_CHARACTERS_ERROR),
-            // chr(1) evaluates to 0
-            // 978-2070546817 is valid
-            array('978-2'.chr(1).'70546817', Isbn::INVALID_CHARACTERS_ERROR),
-        );
-    }
-
-    public function getValidIsbn()
-    {
-        return array_merge(
-            $this->getValidIsbn10(),
-            $this->getValidIsbn13()
-        );
-    }
-
-    public function getInvalidIsbn()
-    {
-        return array_merge(
-            $this->getInvalidIsbn10(),
-            $this->getInvalidIsbn13()
-        );
-    }
-
-    public function testNullIsValid()
-    {
-        $constraint = new Isbn(true);
-
-        $this->validator->validate(null, $constraint);
-
-        $this->assertNoViolation();
-    }
-
-    public function testEmptyStringIsValid()
-    {
-        $constraint = new Isbn(true);
-
-        $this->validator->validate('', $constraint);
-
-        $this->assertNoViolation();
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Validator\Exception\UnexpectedTypeException
-     */
-    public function testExpectsStringCompatibleType()
-    {
-        $constraint = new Isbn(true);
-
-        $this->validator->validate(new \stdClass(), $constraint);
-    }
-
-    /**
-     * @dataProvider getValidIsbn10
-     */
-    public function testValidIsbn10($isbn)
-    {
-        $constraint = new Isbn(array(
-            'type' => 'isbn10',
-        ));
-
-        $this->validator->validate($isbn, $constraint);
-
-        $this->assertNoViolation();
-    }
-
-    /**
-     * @dataProvider getInvalidIsbn10
-     */
-    public function testInvalidIsbn10($isbn, $code)
-    {
-        $constraint = new Isbn(array(
-            'type' => 'isbn10',
-            'isbn10Message' => 'myMessage',
-        ));
-
-        $this->validator->validate($isbn, $constraint);
-
-        $this->buildViolation('myMessage')
-            ->setParameter('{{ value }}', '"'.$isbn.'"')
-            ->setCode($code)
-            ->assertRaised();
-    }
-
-    /**
-     * @dataProvider getValidIsbn13
-     */
-    public function testValidIsbn13($isbn)
-    {
-        $constraint = new Isbn(array('type' => 'isbn13'));
-
-        $this->validator->validate($isbn, $constraint);
-
-        $this->assertNoViolation();
-    }
-
-    /**
-     * @dataProvider getInvalidIsbn13
-     */
-    public function testInvalidIsbn13($isbn, $code)
-    {
-        $constraint = new Isbn(array(
-            'type' => 'isbn13',
-            'isbn13Message' => 'myMessage',
-        ));
-
-        $this->validator->validate($isbn, $constraint);
-
-        $this->buildViolation('myMessage')
-            ->setParameter('{{ value }}', '"'.$isbn.'"')
-            ->setCode($code)
-            ->assertRaised();
-    }
-
-    /**
-     * @dataProvider getValidIsbn
-     */
-    public function testValidIsbnAny($isbn)
-    {
-        $constraint = new Isbn();
-
-        $this->validator->validate($isbn, $constraint);
-
-        $this->assertNoViolation();
-    }
-
-    /**
-     * @dataProvider getInvalidIsbn10
-     */
-    public function testInvalidIsbnAnyIsbn10($isbn, $code)
-    {
-        $constraint = new Isbn(array(
-            'bothIsbnMessage' => 'myMessage',
-        ));
-
-        $this->validator->validate($isbn, $constraint);
-
-        // Too long for an ISBN-10, but not long enough for an ISBN-13
-        if (Isbn::TOO_LONG_ERROR === $code) {
-            $code = Isbn::TYPE_NOT_RECOGNIZED_ERROR;
-        }
-
-        $this->buildViolation('myMessage')
-            ->setParameter('{{ value }}', '"'.$isbn.'"')
-            ->setCode($code)
-            ->assertRaised();
-    }
-
-    /**
-     * @dataProvider getInvalidIsbn13
-     */
-    public function testInvalidIsbnAnyIsbn13($isbn, $code)
-    {
-        $constraint = new Isbn(array(
-            'bothIsbnMessage' => 'myMessage',
-        ));
-
-        $this->validator->validate($isbn, $constraint);
-
-        // Too short for an ISBN-13, but not short enough for an ISBN-10
-        if (Isbn::TOO_SHORT_ERROR === $code) {
-            $code = Isbn::TYPE_NOT_RECOGNIZED_ERROR;
-        }
-
-        $this->buildViolation('myMessage')
-            ->setParameter('{{ value }}', '"'.$isbn.'"')
-            ->setCode($code)
-            ->assertRaised();
-    }
-}
diff --git a/vendor/symfony/validator/Tests/Constraints/IssnValidatorTest.php b/vendor/symfony/validator/Tests/Constraints/IssnValidatorTest.php
deleted file mode 100644
index a6d3994..0000000
--- a/vendor/symfony/validator/Tests/Constraints/IssnValidatorTest.php
+++ /dev/null
@@ -1,187 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Constraints;
-
-use Symfony\Component\Validator\Constraints\Issn;
-use Symfony\Component\Validator\Constraints\IssnValidator;
-use Symfony\Component\Validator\Validation;
-
-/**
- * @see https://en.wikipedia.org/wiki/Issn
- */
-class IssnValidatorTest extends AbstractConstraintValidatorTest
-{
-    protected function getApiVersion()
-    {
-        return Validation::API_VERSION_2_5;
-    }
-
-    protected function createValidator()
-    {
-        return new IssnValidator();
-    }
-
-    public function getValidLowerCasedIssn()
-    {
-        return array(
-            array('2162-321x'),
-            array('2160-200x'),
-            array('1537-453x'),
-            array('1937-710x'),
-            array('0002-922x'),
-            array('1553-345x'),
-            array('1553-619x'),
-        );
-    }
-
-    public function getValidNonHyphenatedIssn()
-    {
-        return array(
-            array('2162321X'),
-            array('01896016'),
-            array('15744647'),
-            array('14350645'),
-            array('07174055'),
-            array('20905076'),
-            array('14401592'),
-        );
-    }
-
-    public function getFullValidIssn()
-    {
-        return array(
-            array('1550-7416'),
-            array('1539-8560'),
-            array('2156-5376'),
-            array('1119-023X'),
-            array('1684-5315'),
-            array('1996-0786'),
-            array('1684-5374'),
-            array('1996-0794'),
-        );
-    }
-
-    public function getValidIssn()
-    {
-        return array_merge(
-            $this->getValidLowerCasedIssn(),
-            $this->getValidNonHyphenatedIssn(),
-            $this->getFullValidIssn()
-        );
-    }
-
-    public function getInvalidIssn()
-    {
-        return array(
-            array(0, Issn::TOO_SHORT_ERROR),
-            array('1539', Issn::TOO_SHORT_ERROR),
-            array('2156-537A', Issn::INVALID_CHARACTERS_ERROR),
-            array('1119-0231', Issn::CHECKSUM_FAILED_ERROR),
-            array('1684-5312', Issn::CHECKSUM_FAILED_ERROR),
-            array('1996-0783', Issn::CHECKSUM_FAILED_ERROR),
-            array('1684-537X', Issn::CHECKSUM_FAILED_ERROR),
-            array('1996-0795', Issn::CHECKSUM_FAILED_ERROR),
-        );
-    }
-
-    public function testNullIsValid()
-    {
-        $constraint = new Issn();
-
-        $this->validator->validate(null, $constraint);
-
-        $this->assertNoViolation();
-    }
-
-    public function testEmptyStringIsValid()
-    {
-        $constraint = new Issn();
-
-        $this->validator->validate('', $constraint);
-
-        $this->assertNoViolation();
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Validator\Exception\UnexpectedTypeException
-     */
-    public function testExpectsStringCompatibleType()
-    {
-        $constraint = new Issn();
-        $this->validator->validate(new \stdClass(), $constraint);
-    }
-
-    /**
-     * @dataProvider getValidLowerCasedIssn
-     */
-    public function testCaseSensitiveIssns($issn)
-    {
-        $constraint = new Issn(array(
-            'caseSensitive' => true,
-            'message' => 'myMessage',
-        ));
-
-        $this->validator->validate($issn, $constraint);
-
-        $this->buildViolation('myMessage')
-            ->setParameter('{{ value }}', '"'.$issn.'"')
-            ->setCode(Issn::INVALID_CASE_ERROR)
-            ->assertRaised();
-    }
-
-    /**
-     * @dataProvider getValidNonHyphenatedIssn
-     */
-    public function testRequireHyphenIssns($issn)
-    {
-        $constraint = new Issn(array(
-            'requireHyphen' => true,
-            'message' => 'myMessage',
-        ));
-
-        $this->validator->validate($issn, $constraint);
-
-        $this->buildViolation('myMessage')
-            ->setParameter('{{ value }}', '"'.$issn.'"')
-            ->setCode(Issn::MISSING_HYPHEN_ERROR)
-            ->assertRaised();
-    }
-
-    /**
-     * @dataProvider getValidIssn
-     */
-    public function testValidIssn($issn)
-    {
-        $constraint = new Issn();
-
-        $this->validator->validate($issn, $constraint);
-
-        $this->assertNoViolation();
-    }
-
-    /**
-     * @dataProvider getInvalidIssn
-     */
-    public function testInvalidIssn($issn, $code)
-    {
-        $constraint = new Issn(array(
-            'message' => 'myMessage',
-        ));
-
-        $this->validator->validate($issn, $constraint);
-
-        $this->buildViolation('myMessage')
-            ->setParameter('{{ value }}', '"'.$issn.'"')
-            ->setCode($code)
-            ->assertRaised();
-    }
-}
diff --git a/vendor/symfony/validator/Tests/Constraints/LanguageValidatorTest.php b/vendor/symfony/validator/Tests/Constraints/LanguageValidatorTest.php
deleted file mode 100644
index c10f26c..0000000
--- a/vendor/symfony/validator/Tests/Constraints/LanguageValidatorTest.php
+++ /dev/null
@@ -1,109 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Constraints;
-
-use Symfony\Component\Intl\Util\IntlTestHelper;
-use Symfony\Component\Validator\Constraints\Language;
-use Symfony\Component\Validator\Constraints\LanguageValidator;
-use Symfony\Component\Validator\Validation;
-
-class LanguageValidatorTest extends AbstractConstraintValidatorTest
-{
-    protected function getApiVersion()
-    {
-        return Validation::API_VERSION_2_5;
-    }
-
-    protected function createValidator()
-    {
-        return new LanguageValidator();
-    }
-
-    public function testNullIsValid()
-    {
-        $this->validator->validate(null, new Language());
-
-        $this->assertNoViolation();
-    }
-
-    public function testEmptyStringIsValid()
-    {
-        $this->validator->validate('', new Language());
-
-        $this->assertNoViolation();
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Validator\Exception\UnexpectedTypeException
-     */
-    public function testExpectsStringCompatibleType()
-    {
-        $this->validator->validate(new \stdClass(), new Language());
-    }
-
-    /**
-     * @dataProvider getValidLanguages
-     */
-    public function testValidLanguages($language)
-    {
-        $this->validator->validate($language, new Language());
-
-        $this->assertNoViolation();
-    }
-
-    public function getValidLanguages()
-    {
-        return array(
-            array('en'),
-            array('en_US'),
-            array('my'),
-        );
-    }
-
-    /**
-     * @dataProvider getInvalidLanguages
-     */
-    public function testInvalidLanguages($language)
-    {
-        $constraint = new Language(array(
-            'message' => 'myMessage',
-        ));
-
-        $this->validator->validate($language, $constraint);
-
-        $this->buildViolation('myMessage')
-            ->setParameter('{{ value }}', '"'.$language.'"')
-            ->assertRaised();
-    }
-
-    public function getInvalidLanguages()
-    {
-        return array(
-            array('EN'),
-            array('foobar'),
-        );
-    }
-
-    public function testValidateUsingCountrySpecificLocale()
-    {
-        IntlTestHelper::requireFullIntl($this);
-
-        \Locale::setDefault('fr_FR');
-        $existingLanguage = 'en';
-
-        $this->validator->validate($existingLanguage, new Language(array(
-            'message' => 'aMessage',
-        )));
-
-        $this->assertNoViolation();
-    }
-}
diff --git a/vendor/symfony/validator/Tests/Constraints/LengthValidatorTest.php b/vendor/symfony/validator/Tests/Constraints/LengthValidatorTest.php
deleted file mode 100644
index 24b6306..0000000
--- a/vendor/symfony/validator/Tests/Constraints/LengthValidatorTest.php
+++ /dev/null
@@ -1,255 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Constraints;
-
-use Symfony\Component\Validator\Constraints\Length;
-use Symfony\Component\Validator\Constraints\LengthValidator;
-use Symfony\Component\Validator\Validation;
-
-class LengthValidatorTest extends AbstractConstraintValidatorTest
-{
-    protected function getApiVersion()
-    {
-        return Validation::API_VERSION_2_5;
-    }
-
-    protected function createValidator()
-    {
-        return new LengthValidator();
-    }
-
-    public function testNullIsValid()
-    {
-        $this->validator->validate(null, new Length(6));
-
-        $this->assertNoViolation();
-    }
-
-    public function testEmptyStringIsValid()
-    {
-        $this->validator->validate('', new Length(6));
-
-        $this->assertNoViolation();
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Validator\Exception\UnexpectedTypeException
-     */
-    public function testExpectsStringCompatibleType()
-    {
-        $this->validator->validate(new \stdClass(), new Length(5));
-    }
-
-    public function getThreeOrLessCharacters()
-    {
-        return array(
-            array(12),
-            array('12'),
-            array('üü'),
-            array('éé'),
-            array(123),
-            array('123'),
-            array('üüü'),
-            array('ééé'),
-        );
-    }
-
-    public function getFourCharacters()
-    {
-        return array(
-            array(1234),
-            array('1234'),
-            array('üüüü'),
-            array('éééé'),
-        );
-    }
-
-    public function getFiveOrMoreCharacters()
-    {
-        return array(
-            array(12345),
-            array('12345'),
-            array('üüüüü'),
-            array('ééééé'),
-            array(123456),
-            array('123456'),
-            array('üüüüüü'),
-            array('éééééé'),
-        );
-    }
-
-    public function getOneCharset()
-    {
-        if (!function_exists('iconv') && !function_exists('mb_convert_encoding')) {
-            $this->markTestSkipped('Mbstring or iconv is required for this test.');
-        }
-
-        return array(
-            array('é', 'utf8', true),
-            array("\xE9", 'CP1252', true),
-            array("\xE9", 'XXX', false),
-            array("\xE9", 'utf8', false),
-        );
-    }
-
-    /**
-     * @dataProvider getFiveOrMoreCharacters
-     */
-    public function testValidValuesMin($value)
-    {
-        $constraint = new Length(array('min' => 5));
-        $this->validator->validate($value, $constraint);
-
-        $this->assertNoViolation();
-    }
-
-    /**
-     * @dataProvider getThreeOrLessCharacters
-     */
-    public function testValidValuesMax($value)
-    {
-        $constraint = new Length(array('max' => 3));
-        $this->validator->validate($value, $constraint);
-
-        $this->assertNoViolation();
-    }
-
-    /**
-     * @dataProvider getFourCharacters
-     */
-    public function testValidValuesExact($value)
-    {
-        $constraint = new Length(4);
-        $this->validator->validate($value, $constraint);
-
-        $this->assertNoViolation();
-    }
-
-    /**
-     * @dataProvider getThreeOrLessCharacters
-     */
-    public function testInvalidValuesMin($value)
-    {
-        $constraint = new Length(array(
-            'min' => 4,
-            'minMessage' => 'myMessage',
-        ));
-
-        $this->validator->validate($value, $constraint);
-
-        $this->buildViolation('myMessage')
-            ->setParameter('{{ value }}', '"'.$value.'"')
-            ->setParameter('{{ limit }}', 4)
-            ->setInvalidValue($value)
-            ->setPlural(4)
-            ->setCode(Length::TOO_SHORT_ERROR)
-            ->assertRaised();
-    }
-
-    /**
-     * @dataProvider getFiveOrMoreCharacters
-     */
-    public function testInvalidValuesMax($value)
-    {
-        $constraint = new Length(array(
-            'max' => 4,
-            'maxMessage' => 'myMessage',
-        ));
-
-        $this->validator->validate($value, $constraint);
-
-        $this->buildViolation('myMessage')
-            ->setParameter('{{ value }}', '"'.$value.'"')
-            ->setParameter('{{ limit }}', 4)
-            ->setInvalidValue($value)
-            ->setPlural(4)
-            ->setCode(Length::TOO_LONG_ERROR)
-            ->assertRaised();
-    }
-
-    /**
-     * @dataProvider getThreeOrLessCharacters
-     */
-    public function testInvalidValuesExactLessThanFour($value)
-    {
-        $constraint = new Length(array(
-            'min' => 4,
-            'max' => 4,
-            'exactMessage' => 'myMessage',
-        ));
-
-        $this->validator->validate($value, $constraint);
-
-        $this->buildViolation('myMessage')
-            ->setParameter('{{ value }}', '"'.$value.'"')
-            ->setParameter('{{ limit }}', 4)
-            ->setInvalidValue($value)
-            ->setPlural(4)
-            ->setCode(Length::TOO_SHORT_ERROR)
-            ->assertRaised();
-    }
-
-    /**
-     * @dataProvider getFiveOrMoreCharacters
-     */
-    public function testInvalidValuesExactMoreThanFour($value)
-    {
-        $constraint = new Length(array(
-            'min' => 4,
-            'max' => 4,
-            'exactMessage' => 'myMessage',
-        ));
-
-        $this->validator->validate($value, $constraint);
-
-        $this->buildViolation('myMessage')
-            ->setParameter('{{ value }}', '"'.$value.'"')
-            ->setParameter('{{ limit }}', 4)
-            ->setInvalidValue($value)
-            ->setPlural(4)
-            ->setCode(Length::TOO_LONG_ERROR)
-            ->assertRaised();
-    }
-
-    /**
-     * @dataProvider getOneCharset
-     */
-    public function testOneCharset($value, $charset, $isValid)
-    {
-        $constraint = new Length(array(
-            'min' => 1,
-            'max' => 1,
-            'charset' => $charset,
-            'charsetMessage' => 'myMessage',
-        ));
-
-        $this->validator->validate($value, $constraint);
-
-        if ($isValid) {
-            $this->assertNoViolation();
-        } else {
-            $this->buildViolation('myMessage')
-                ->setParameter('{{ value }}', '"'.$value.'"')
-                ->setParameter('{{ charset }}', $charset)
-                ->setInvalidValue($value)
-                ->assertRaised();
-        }
-    }
-
-    public function testConstraintGetDefaultOption()
-    {
-        $constraint = new Length(5);
-
-        $this->assertEquals(5, $constraint->min);
-        $this->assertEquals(5, $constraint->max);
-    }
-}
diff --git a/vendor/symfony/validator/Tests/Constraints/LessThanOrEqualValidatorTest.php b/vendor/symfony/validator/Tests/Constraints/LessThanOrEqualValidatorTest.php
deleted file mode 100644
index 7518135..0000000
--- a/vendor/symfony/validator/Tests/Constraints/LessThanOrEqualValidatorTest.php
+++ /dev/null
@@ -1,74 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Constraints;
-
-use Symfony\Component\Validator\Constraints\LessThanOrEqual;
-use Symfony\Component\Validator\Constraints\LessThanOrEqualValidator;
-use Symfony\Component\Validator\Validation;
-
-/**
- * @author Daniel Holmes <daniel@danielholmes.org>
- */
-class LessThanOrEqualValidatorTest extends AbstractComparisonValidatorTestCase
-{
-    protected function getApiVersion()
-    {
-        return Validation::API_VERSION_2_5;
-    }
-
-    protected function createValidator()
-    {
-        return new LessThanOrEqualValidator();
-    }
-
-    protected function createConstraint(array $options)
-    {
-        return new LessThanOrEqual($options);
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    public function provideValidComparisons()
-    {
-        return array(
-            array(1, 2),
-            array(1, 1),
-            array(new \DateTime('2000-01-01'), new \DateTime('2000-01-01')),
-            array(new \DateTime('2000-01-01'), new \DateTime('2020-01-01')),
-            array(new \DateTime('2000-01-01'), '2000-01-01'),
-            array(new \DateTime('2000-01-01'), '2020-01-01'),
-            array(new \DateTime('2000-01-01 UTC'), '2000-01-01 UTC'),
-            array(new \DateTime('2000-01-01 UTC'), '2020-01-01 UTC'),
-            array(new ComparisonTest_Class(4), new ComparisonTest_Class(5)),
-            array(new ComparisonTest_Class(5), new ComparisonTest_Class(5)),
-            array('a', 'a'),
-            array('a', 'z'),
-            array(null, 1),
-        );
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    public function provideInvalidComparisons()
-    {
-        return array(
-            array(2, '2', 1, '1', 'integer'),
-            array(new \DateTime('2010-01-01'), 'Jan 1, 2010, 12:00 AM', new \DateTime('2000-01-01'), 'Jan 1, 2000, 12:00 AM', 'DateTime'),
-            array(new \DateTime('2010-01-01'), 'Jan 1, 2010, 12:00 AM', '2000-01-01', 'Jan 1, 2000, 12:00 AM', 'DateTime'),
-            array(new \DateTime('2010-01-01 UTC'), 'Jan 1, 2010, 12:00 AM', '2000-01-01 UTC', 'Jan 1, 2000, 12:00 AM', 'DateTime'),
-            array(new ComparisonTest_Class(5), '5', new ComparisonTest_Class(4), '4', __NAMESPACE__.'\ComparisonTest_Class'),
-            array('c', '"c"', 'b', '"b"', 'string'),
-        );
-    }
-}
diff --git a/vendor/symfony/validator/Tests/Constraints/LessThanValidatorTest.php b/vendor/symfony/validator/Tests/Constraints/LessThanValidatorTest.php
deleted file mode 100644
index d555870..0000000
--- a/vendor/symfony/validator/Tests/Constraints/LessThanValidatorTest.php
+++ /dev/null
@@ -1,73 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Constraints;
-
-use Symfony\Component\Validator\Constraints\LessThan;
-use Symfony\Component\Validator\Constraints\LessThanValidator;
-use Symfony\Component\Validator\Validation;
-
-/**
- * @author Daniel Holmes <daniel@danielholmes.org>
- */
-class LessThanValidatorTest extends AbstractComparisonValidatorTestCase
-{
-    protected function getApiVersion()
-    {
-        return Validation::API_VERSION_2_5;
-    }
-
-    protected function createValidator()
-    {
-        return new LessThanValidator();
-    }
-
-    protected function createConstraint(array $options)
-    {
-        return new LessThan($options);
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    public function provideValidComparisons()
-    {
-        return array(
-            array(1, 2),
-            array(new \DateTime('2000-01-01'), new \DateTime('2010-01-01')),
-            array(new \DateTime('2000-01-01'), '2010-01-01'),
-            array(new \DateTime('2000-01-01 UTC'), '2010-01-01 UTC'),
-            array(new ComparisonTest_Class(4), new ComparisonTest_Class(5)),
-            array('22', '333'),
-            array(null, 1),
-        );
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    public function provideInvalidComparisons()
-    {
-        return array(
-            array(3, '3', 2, '2', 'integer'),
-            array(2, '2', 2, '2', 'integer'),
-            array(new \DateTime('2010-01-01'), 'Jan 1, 2010, 12:00 AM', new \DateTime('2000-01-01'), 'Jan 1, 2000, 12:00 AM', 'DateTime'),
-            array(new \DateTime('2000-01-01'), 'Jan 1, 2000, 12:00 AM', new \DateTime('2000-01-01'), 'Jan 1, 2000, 12:00 AM', 'DateTime'),
-            array(new \DateTime('2010-01-01'), 'Jan 1, 2010, 12:00 AM', '2000-01-01', 'Jan 1, 2000, 12:00 AM', 'DateTime'),
-            array(new \DateTime('2000-01-01'), 'Jan 1, 2000, 12:00 AM', '2000-01-01', 'Jan 1, 2000, 12:00 AM', 'DateTime'),
-            array(new \DateTime('2010-01-01 UTC'), 'Jan 1, 2010, 12:00 AM', '2000-01-01 UTC', 'Jan 1, 2000, 12:00 AM', 'DateTime'),
-            array(new \DateTime('2000-01-01 UTC'), 'Jan 1, 2000, 12:00 AM', '2000-01-01 UTC', 'Jan 1, 2000, 12:00 AM', 'DateTime'),
-            array(new ComparisonTest_Class(5), '5', new ComparisonTest_Class(5), '5', __NAMESPACE__.'\ComparisonTest_Class'),
-            array(new ComparisonTest_Class(6), '6', new ComparisonTest_Class(5), '5', __NAMESPACE__.'\ComparisonTest_Class'),
-            array('333', '"333"', '22', '"22"', 'string'),
-        );
-    }
-}
diff --git a/vendor/symfony/validator/Tests/Constraints/LocaleValidatorTest.php b/vendor/symfony/validator/Tests/Constraints/LocaleValidatorTest.php
deleted file mode 100644
index c019fdf..0000000
--- a/vendor/symfony/validator/Tests/Constraints/LocaleValidatorTest.php
+++ /dev/null
@@ -1,96 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Constraints;
-
-use Symfony\Component\Validator\Constraints\Locale;
-use Symfony\Component\Validator\Constraints\LocaleValidator;
-use Symfony\Component\Validator\Validation;
-
-class LocaleValidatorTest extends AbstractConstraintValidatorTest
-{
-    protected function getApiVersion()
-    {
-        return Validation::API_VERSION_2_5;
-    }
-
-    protected function createValidator()
-    {
-        return new LocaleValidator();
-    }
-
-    public function testNullIsValid()
-    {
-        $this->validator->validate(null, new Locale());
-
-        $this->assertNoViolation();
-    }
-
-    public function testEmptyStringIsValid()
-    {
-        $this->validator->validate('', new Locale());
-
-        $this->assertNoViolation();
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Validator\Exception\UnexpectedTypeException
-     */
-    public function testExpectsStringCompatibleType()
-    {
-        $this->validator->validate(new \stdClass(), new Locale());
-    }
-
-    /**
-     * @dataProvider getValidLocales
-     */
-    public function testValidLocales($locale)
-    {
-        $this->validator->validate($locale, new Locale());
-
-        $this->assertNoViolation();
-    }
-
-    public function getValidLocales()
-    {
-        return array(
-            array('en'),
-            array('en_US'),
-            array('pt'),
-            array('pt_PT'),
-            array('zh_Hans'),
-        );
-    }
-
-    /**
-     * @dataProvider getInvalidLocales
-     */
-    public function testInvalidLocales($locale)
-    {
-        $constraint = new Locale(array(
-            'message' => 'myMessage',
-        ));
-
-        $this->validator->validate($locale, $constraint);
-
-        $this->buildViolation('myMessage')
-            ->setParameter('{{ value }}', '"'.$locale.'"')
-            ->assertRaised();
-    }
-
-    public function getInvalidLocales()
-    {
-        return array(
-            array('EN'),
-            array('foobar'),
-        );
-    }
-}
diff --git a/vendor/symfony/validator/Tests/Constraints/LuhnValidatorTest.php b/vendor/symfony/validator/Tests/Constraints/LuhnValidatorTest.php
deleted file mode 100644
index b0e88c3..0000000
--- a/vendor/symfony/validator/Tests/Constraints/LuhnValidatorTest.php
+++ /dev/null
@@ -1,127 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Constraints;
-
-use Symfony\Component\Validator\Constraints\Luhn;
-use Symfony\Component\Validator\Constraints\LuhnValidator;
-use Symfony\Component\Validator\Validation;
-
-class LuhnValidatorTest extends AbstractConstraintValidatorTest
-{
-    protected function getApiVersion()
-    {
-        return Validation::API_VERSION_2_5;
-    }
-
-    protected function createValidator()
-    {
-        return new LuhnValidator();
-    }
-
-    public function testNullIsValid()
-    {
-        $this->validator->validate(null, new Luhn());
-
-        $this->assertNoViolation();
-    }
-
-    public function testEmptyStringIsValid()
-    {
-        $this->validator->validate('', new Luhn());
-
-        $this->assertNoViolation();
-    }
-
-    /**
-     * @dataProvider getValidNumbers
-     */
-    public function testValidNumbers($number)
-    {
-        $this->validator->validate($number, new Luhn());
-
-        $this->assertNoViolation();
-    }
-
-    public function getValidNumbers()
-    {
-        return array(
-            array('42424242424242424242'),
-            array('378282246310005'),
-            array('371449635398431'),
-            array('378734493671000'),
-            array('5610591081018250'),
-            array('30569309025904'),
-            array('38520000023237'),
-            array('6011111111111117'),
-            array('6011000990139424'),
-            array('3530111333300000'),
-            array('3566002020360505'),
-            array('5555555555554444'),
-            array('5105105105105100'),
-            array('4111111111111111'),
-            array('4012888888881881'),
-            array('4222222222222'),
-            array('5019717010103742'),
-            array('6331101999990016'),
-        );
-    }
-
-    /**
-     * @dataProvider getInvalidNumbers
-     */
-    public function testInvalidNumbers($number, $code)
-    {
-        $constraint = new Luhn(array(
-            'message' => 'myMessage',
-        ));
-
-        $this->validator->validate($number, $constraint);
-
-        $this->buildViolation('myMessage')
-            ->setParameter('{{ value }}', '"'.$number.'"')
-            ->setCode($code)
-            ->assertRaised();
-    }
-
-    public function getInvalidNumbers()
-    {
-        return array(
-            array('1234567812345678', Luhn::CHECKSUM_FAILED_ERROR),
-            array('4222222222222222', Luhn::CHECKSUM_FAILED_ERROR),
-            array('0000000000000000', Luhn::CHECKSUM_FAILED_ERROR),
-            array('000000!000000000', Luhn::INVALID_CHARACTERS_ERROR),
-            array('42-22222222222222', Luhn::INVALID_CHARACTERS_ERROR),
-        );
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Validator\Exception\UnexpectedTypeException
-     * @dataProvider getInvalidTypes
-     */
-    public function testInvalidTypes($number)
-    {
-        $constraint = new Luhn();
-
-        $this->validator->validate($number, $constraint);
-    }
-
-    public function getInvalidTypes()
-    {
-        return array(
-            array(0),
-            array(123),
-            array(42424242424242424242),
-            array(378282246310005),
-            array(371449635398431),
-        );
-    }
-}
diff --git a/vendor/symfony/validator/Tests/Constraints/NotBlankValidatorTest.php b/vendor/symfony/validator/Tests/Constraints/NotBlankValidatorTest.php
deleted file mode 100644
index c248246..0000000
--- a/vendor/symfony/validator/Tests/Constraints/NotBlankValidatorTest.php
+++ /dev/null
@@ -1,102 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Constraints;
-
-use Symfony\Component\Validator\Constraints\NotBlank;
-use Symfony\Component\Validator\Constraints\NotBlankValidator;
-use Symfony\Component\Validator\Validation;
-
-class NotBlankValidatorTest extends AbstractConstraintValidatorTest
-{
-    protected function getApiVersion()
-    {
-        return Validation::API_VERSION_2_5;
-    }
-
-    protected function createValidator()
-    {
-        return new NotBlankValidator();
-    }
-
-    /**
-     * @dataProvider getValidValues
-     */
-    public function testValidValues($value)
-    {
-        $this->validator->validate($value, new NotBlank());
-
-        $this->assertNoViolation();
-    }
-
-    public function getValidValues()
-    {
-        return array(
-            array('foobar'),
-            array(0),
-            array(0.0),
-            array('0'),
-            array(1234),
-        );
-    }
-
-    public function testNullIsInvalid()
-    {
-        $constraint = new NotBlank(array(
-            'message' => 'myMessage',
-        ));
-
-        $this->validator->validate(null, $constraint);
-
-        $this->buildViolation('myMessage')
-            ->setParameter('{{ value }}', 'null')
-            ->assertRaised();
-    }
-
-    public function testBlankIsInvalid()
-    {
-        $constraint = new NotBlank(array(
-            'message' => 'myMessage',
-        ));
-
-        $this->validator->validate('', $constraint);
-
-        $this->buildViolation('myMessage')
-            ->setParameter('{{ value }}', '""')
-            ->assertRaised();
-    }
-
-    public function testFalseIsInvalid()
-    {
-        $constraint = new NotBlank(array(
-            'message' => 'myMessage',
-        ));
-
-        $this->validator->validate(false, $constraint);
-
-        $this->buildViolation('myMessage')
-            ->setParameter('{{ value }}', 'false')
-            ->assertRaised();
-    }
-
-    public function testEmptyArrayIsInvalid()
-    {
-        $constraint = new NotBlank(array(
-            'message' => 'myMessage',
-        ));
-
-        $this->validator->validate(array(), $constraint);
-
-        $this->buildViolation('myMessage')
-            ->setParameter('{{ value }}', 'array')
-            ->assertRaised();
-    }
-}
diff --git a/vendor/symfony/validator/Tests/Constraints/NotEqualToValidatorTest.php b/vendor/symfony/validator/Tests/Constraints/NotEqualToValidatorTest.php
deleted file mode 100644
index bc2c348..0000000
--- a/vendor/symfony/validator/Tests/Constraints/NotEqualToValidatorTest.php
+++ /dev/null
@@ -1,69 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Constraints;
-
-use Symfony\Component\Validator\Constraints\NotEqualTo;
-use Symfony\Component\Validator\Constraints\NotEqualToValidator;
-use Symfony\Component\Validator\Validation;
-
-/**
- * @author Daniel Holmes <daniel@danielholmes.org>
- */
-class NotEqualToValidatorTest extends AbstractComparisonValidatorTestCase
-{
-    protected function getApiVersion()
-    {
-        return Validation::API_VERSION_2_5;
-    }
-
-    protected function createValidator()
-    {
-        return new NotEqualToValidator();
-    }
-
-    protected function createConstraint(array $options)
-    {
-        return new NotEqualTo($options);
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    public function provideValidComparisons()
-    {
-        return array(
-            array(1, 2),
-            array('22', '333'),
-            array(new \DateTime('2001-01-01'), new \DateTime('2000-01-01')),
-            array(new \DateTime('2001-01-01'), '2000-01-01'),
-            array(new \DateTime('2001-01-01 UTC'), '2000-01-01 UTC'),
-            array(new ComparisonTest_Class(6), new ComparisonTest_Class(5)),
-            array(null, 1),
-        );
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    public function provideInvalidComparisons()
-    {
-        return array(
-            array(3, '3', 3, '3', 'integer'),
-            array('2', '"2"', 2, '2', 'integer'),
-            array('a', '"a"', 'a', '"a"', 'string'),
-            array(new \DateTime('2000-01-01'), 'Jan 1, 2000, 12:00 AM', new \DateTime('2000-01-01'), 'Jan 1, 2000, 12:00 AM', 'DateTime'),
-            array(new \DateTime('2000-01-01'), 'Jan 1, 2000, 12:00 AM', '2000-01-01', 'Jan 1, 2000, 12:00 AM', 'DateTime'),
-            array(new \DateTime('2000-01-01 UTC'), 'Jan 1, 2000, 12:00 AM', '2000-01-01 UTC', 'Jan 1, 2000, 12:00 AM', 'DateTime'),
-            array(new ComparisonTest_Class(5), '5', new ComparisonTest_Class(5), '5', __NAMESPACE__.'\ComparisonTest_Class'),
-        );
-    }
-}
diff --git a/vendor/symfony/validator/Tests/Constraints/NotIdenticalToValidatorTest.php b/vendor/symfony/validator/Tests/Constraints/NotIdenticalToValidatorTest.php
deleted file mode 100644
index 4314984..0000000
--- a/vendor/symfony/validator/Tests/Constraints/NotIdenticalToValidatorTest.php
+++ /dev/null
@@ -1,87 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Constraints;
-
-use Symfony\Component\Validator\Constraints\NotIdenticalTo;
-use Symfony\Component\Validator\Constraints\NotIdenticalToValidator;
-use Symfony\Component\Validator\Validation;
-
-/**
- * @author Daniel Holmes <daniel@danielholmes.org>
- */
-class NotIdenticalToValidatorTest extends AbstractComparisonValidatorTestCase
-{
-    protected function getApiVersion()
-    {
-        return Validation::API_VERSION_2_5;
-    }
-
-    protected function createValidator()
-    {
-        return new NotIdenticalToValidator();
-    }
-
-    protected function createConstraint(array $options)
-    {
-        return new NotIdenticalTo($options);
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    public function provideValidComparisons()
-    {
-        return array(
-            array(1, 2),
-            array('2', 2),
-            array('22', '333'),
-            array(new \DateTime('2001-01-01'), new \DateTime('2000-01-01')),
-            array(new \DateTime('2000-01-01'), new \DateTime('2000-01-01')),
-            array(new \DateTime('2001-01-01'), '2000-01-01'),
-            array(new \DateTime('2000-01-01'), '2000-01-01'),
-            array(new \DateTime('2001-01-01'), '2000-01-01'),
-            array(new \DateTime('2000-01-01 UTC'), '2000-01-01 UTC'),
-            array(null, 1),
-        );
-    }
-
-    public function provideAllInvalidComparisons()
-    {
-        $this->setDefaultTimezone('UTC');
-
-        // Don't call addPhp5Dot5Comparisons() automatically, as it does
-        // not take care of identical objects
-        $comparisons = $this->provideInvalidComparisons();
-
-        $this->restoreDefaultTimezone();
-
-        return $comparisons;
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    public function provideInvalidComparisons()
-    {
-        $date = new \DateTime('2000-01-01');
-        $object = new ComparisonTest_Class(2);
-
-        $comparisons = array(
-            array(3, '3', 3, '3', 'integer'),
-            array('a', '"a"', 'a', '"a"', 'string'),
-            array($date, 'Jan 1, 2000, 12:00 AM', $date, 'Jan 1, 2000, 12:00 AM', 'DateTime'),
-            array($object, '2', $object, '2', __NAMESPACE__.'\ComparisonTest_Class'),
-        );
-
-        return $comparisons;
-    }
-}
diff --git a/vendor/symfony/validator/Tests/Constraints/NotNullValidatorTest.php b/vendor/symfony/validator/Tests/Constraints/NotNullValidatorTest.php
deleted file mode 100644
index d338f31..0000000
--- a/vendor/symfony/validator/Tests/Constraints/NotNullValidatorTest.php
+++ /dev/null
@@ -1,60 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Constraints;
-
-use Symfony\Component\Validator\Constraints\NotNull;
-use Symfony\Component\Validator\Constraints\NotNullValidator;
-use Symfony\Component\Validator\Validation;
-
-class NotNullValidatorTest extends AbstractConstraintValidatorTest
-{
-    protected function getApiVersion()
-    {
-        return Validation::API_VERSION_2_5;
-    }
-
-    protected function createValidator()
-    {
-        return new NotNullValidator();
-    }
-
-    /**
-     * @dataProvider getValidValues
-     */
-    public function testValidValues($value)
-    {
-        $this->validator->validate($value, new NotNull());
-
-        $this->assertNoViolation();
-    }
-
-    public function getValidValues()
-    {
-        return array(
-            array(0),
-            array(false),
-            array(true),
-            array(''),
-        );
-    }
-
-    public function testNullIsInvalid()
-    {
-        $constraint = new NotNull(array(
-            'message' => 'myMessage',
-        ));
-
-        $this->validator->validate(null, $constraint);
-
-        $this->buildViolation('myMessage')->assertRaised();
-    }
-}
diff --git a/vendor/symfony/validator/Tests/Constraints/RangeValidatorTest.php b/vendor/symfony/validator/Tests/Constraints/RangeValidatorTest.php
deleted file mode 100644
index b43cc20..0000000
--- a/vendor/symfony/validator/Tests/Constraints/RangeValidatorTest.php
+++ /dev/null
@@ -1,403 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Constraints;
-
-use Symfony\Component\Intl\Util\IntlTestHelper;
-use Symfony\Component\Validator\Constraints\Range;
-use Symfony\Component\Validator\Constraints\RangeValidator;
-use Symfony\Component\Validator\Validation;
-
-class RangeValidatorTest extends AbstractConstraintValidatorTest
-{
-    protected function getApiVersion()
-    {
-        return Validation::API_VERSION_2_5;
-    }
-
-    protected function createValidator()
-    {
-        return new RangeValidator();
-    }
-
-    public function testNullIsValid()
-    {
-        $this->validator->validate(null, new Range(array('min' => 10, 'max' => 20)));
-
-        $this->assertNoViolation();
-    }
-
-    public function getTenToTwenty()
-    {
-        return array(
-            array(10.00001),
-            array(19.99999),
-            array('10.00001'),
-            array('19.99999'),
-            array(10),
-            array(20),
-            array(10.0),
-            array(20.0),
-        );
-    }
-
-    public function getLessThanTen()
-    {
-        return array(
-            array(9.99999, '9.99999'),
-            array('9.99999', '"9.99999"'),
-            array(5, '5'),
-            array(1.0, '1.0'),
-        );
-    }
-
-    public function getMoreThanTwenty()
-    {
-        return array(
-            array(20.000001, '20.000001'),
-            array('20.000001', '"20.000001"'),
-            array(21, '21'),
-            array(30.0, '30.0'),
-        );
-    }
-
-    /**
-     * @dataProvider getTenToTwenty
-     */
-    public function testValidValuesMin($value)
-    {
-        $constraint = new Range(array('min' => 10));
-        $this->validator->validate($value, $constraint);
-
-        $this->assertNoViolation();
-    }
-
-    /**
-     * @dataProvider getTenToTwenty
-     */
-    public function testValidValuesMax($value)
-    {
-        $constraint = new Range(array('max' => 20));
-        $this->validator->validate($value, $constraint);
-
-        $this->assertNoViolation();
-    }
-
-    /**
-     * @dataProvider getTenToTwenty
-     */
-    public function testValidValuesMinMax($value)
-    {
-        $constraint = new Range(array('min' => 10, 'max' => 20));
-        $this->validator->validate($value, $constraint);
-
-        $this->assertNoViolation();
-    }
-
-    /**
-     * @dataProvider getLessThanTen
-     */
-    public function testInvalidValuesMin($value, $formattedValue)
-    {
-        $constraint = new Range(array(
-            'min' => 10,
-            'minMessage' => 'myMessage',
-        ));
-
-        $this->validator->validate($value, $constraint);
-
-        $this->buildViolation('myMessage')
-            ->setParameter('{{ value }}', $formattedValue)
-            ->setParameter('{{ limit }}', 10)
-            ->setCode(Range::BELOW_RANGE_ERROR)
-            ->assertRaised();
-    }
-
-    /**
-     * @dataProvider getMoreThanTwenty
-     */
-    public function testInvalidValuesMax($value, $formattedValue)
-    {
-        $constraint = new Range(array(
-            'max' => 20,
-            'maxMessage' => 'myMessage',
-        ));
-
-        $this->validator->validate($value, $constraint);
-
-        $this->buildViolation('myMessage')
-            ->setParameter('{{ value }}', $formattedValue)
-            ->setParameter('{{ limit }}', 20)
-            ->setCode(Range::BEYOND_RANGE_ERROR)
-            ->assertRaised();
-    }
-
-    /**
-     * @dataProvider getMoreThanTwenty
-     */
-    public function testInvalidValuesCombinedMax($value, $formattedValue)
-    {
-        $constraint = new Range(array(
-            'min' => 10,
-            'max' => 20,
-            'minMessage' => 'myMinMessage',
-            'maxMessage' => 'myMaxMessage',
-        ));
-
-        $this->validator->validate($value, $constraint);
-
-        $this->buildViolation('myMaxMessage')
-            ->setParameter('{{ value }}', $formattedValue)
-            ->setParameter('{{ limit }}', 20)
-            ->setCode(Range::BEYOND_RANGE_ERROR)
-            ->assertRaised();
-    }
-
-    /**
-     * @dataProvider getLessThanTen
-     */
-    public function testInvalidValuesCombinedMin($value, $formattedValue)
-    {
-        $constraint = new Range(array(
-            'min' => 10,
-            'max' => 20,
-            'minMessage' => 'myMinMessage',
-            'maxMessage' => 'myMaxMessage',
-        ));
-
-        $this->validator->validate($value, $constraint);
-
-        $this->buildViolation('myMinMessage')
-            ->setParameter('{{ value }}', $formattedValue)
-            ->setParameter('{{ limit }}', 10)
-            ->setCode(Range::BELOW_RANGE_ERROR)
-            ->assertRaised();
-    }
-
-    public function getTenthToTwentiethMarch2014()
-    {
-        // The provider runs before setUp(), so we need to manually fix
-        // the default timezone
-        $this->setDefaultTimezone('UTC');
-
-        $tests = array(
-            array(new \DateTime('March 10, 2014')),
-            array(new \DateTime('March 15, 2014')),
-            array(new \DateTime('March 20, 2014')),
-        );
-
-        if (PHP_VERSION_ID >= 50500) {
-            $tests[] = array(new \DateTimeImmutable('March 10, 2014'));
-            $tests[] = array(new \DateTimeImmutable('March 15, 2014'));
-            $tests[] = array(new \DateTimeImmutable('March 20, 2014'));
-        }
-
-        $this->restoreDefaultTimezone();
-
-        return $tests;
-    }
-
-    public function getSoonerThanTenthMarch2014()
-    {
-        // The provider runs before setUp(), so we need to manually fix
-        // the default timezone
-        $this->setDefaultTimezone('UTC');
-
-        $tests = array(
-            array(new \DateTime('March 20, 2013'), 'Mar 20, 2013, 12:00 AM'),
-            array(new \DateTime('March 9, 2014'), 'Mar 9, 2014, 12:00 AM'),
-        );
-
-        if (PHP_VERSION_ID >= 50500) {
-            $tests[] = array(new \DateTimeImmutable('March 20, 2013'), 'Mar 20, 2013, 12:00 AM');
-            $tests[] = array(new \DateTimeImmutable('March 9, 2014'), 'Mar 9, 2014, 12:00 AM');
-        }
-
-        $this->restoreDefaultTimezone();
-
-        return $tests;
-    }
-
-    public function getLaterThanTwentiethMarch2014()
-    {
-        // The provider runs before setUp(), so we need to manually fix
-        // the default timezone
-        $this->setDefaultTimezone('UTC');
-
-        $tests = array(
-            array(new \DateTime('March 21, 2014'), 'Mar 21, 2014, 12:00 AM'),
-            array(new \DateTime('March 9, 2015'), 'Mar 9, 2015, 12:00 AM'),
-        );
-
-        if (PHP_VERSION_ID >= 50500) {
-            $tests[] = array(new \DateTimeImmutable('March 21, 2014'), 'Mar 21, 2014, 12:00 AM');
-            $tests[] = array(new \DateTimeImmutable('March 9, 2015'), 'Mar 9, 2015, 12:00 AM');
-        }
-
-        $this->restoreDefaultTimezone();
-
-        return $tests;
-    }
-
-    /**
-     * @dataProvider getTenthToTwentiethMarch2014
-     */
-    public function testValidDatesMin($value)
-    {
-        $constraint = new Range(array('min' => 'March 10, 2014'));
-        $this->validator->validate($value, $constraint);
-
-        $this->assertNoViolation();
-    }
-
-    /**
-     * @dataProvider getTenthToTwentiethMarch2014
-     */
-    public function testValidDatesMax($value)
-    {
-        $constraint = new Range(array('max' => 'March 20, 2014'));
-        $this->validator->validate($value, $constraint);
-
-        $this->assertNoViolation();
-    }
-
-    /**
-     * @dataProvider getTenthToTwentiethMarch2014
-     */
-    public function testValidDatesMinMax($value)
-    {
-        $constraint = new Range(array('min' => 'March 10, 2014', 'max' => 'March 20, 2014'));
-        $this->validator->validate($value, $constraint);
-
-        $this->assertNoViolation();
-    }
-
-    /**
-     * @dataProvider getSoonerThanTenthMarch2014
-     */
-    public function testInvalidDatesMin($value, $dateTimeAsString)
-    {
-        // Conversion of dates to string differs between ICU versions
-        // Make sure we have the correct version loaded
-        IntlTestHelper::requireIntl($this);
-
-        $constraint = new Range(array(
-            'min' => 'March 10, 2014',
-            'minMessage' => 'myMessage',
-        ));
-
-        $this->validator->validate($value, $constraint);
-
-        $this->buildViolation('myMessage')
-            ->setParameter('{{ value }}', $dateTimeAsString)
-            ->setParameter('{{ limit }}', 'Mar 10, 2014, 12:00 AM')
-            ->setCode(Range::BELOW_RANGE_ERROR)
-            ->assertRaised();
-    }
-
-    /**
-     * @dataProvider getLaterThanTwentiethMarch2014
-     */
-    public function testInvalidDatesMax($value, $dateTimeAsString)
-    {
-        // Conversion of dates to string differs between ICU versions
-        // Make sure we have the correct version loaded
-        IntlTestHelper::requireIntl($this);
-
-        $constraint = new Range(array(
-            'max' => 'March 20, 2014',
-            'maxMessage' => 'myMessage',
-        ));
-
-        $this->validator->validate($value, $constraint);
-
-        $this->buildViolation('myMessage')
-            ->setParameter('{{ value }}', $dateTimeAsString)
-            ->setParameter('{{ limit }}', 'Mar 20, 2014, 12:00 AM')
-            ->setCode(Range::BEYOND_RANGE_ERROR)
-            ->assertRaised();
-    }
-
-    /**
-     * @dataProvider getLaterThanTwentiethMarch2014
-     */
-    public function testInvalidDatesCombinedMax($value, $dateTimeAsString)
-    {
-        // Conversion of dates to string differs between ICU versions
-        // Make sure we have the correct version loaded
-        IntlTestHelper::requireIntl($this);
-
-        $constraint = new Range(array(
-            'min' => 'March 10, 2014',
-            'max' => 'March 20, 2014',
-            'minMessage' => 'myMinMessage',
-            'maxMessage' => 'myMaxMessage',
-        ));
-
-        $this->validator->validate($value, $constraint);
-
-        $this->buildViolation('myMaxMessage')
-            ->setParameter('{{ value }}', $dateTimeAsString)
-            ->setParameter('{{ limit }}', 'Mar 20, 2014, 12:00 AM')
-            ->setCode(Range::BEYOND_RANGE_ERROR)
-            ->assertRaised();
-    }
-
-    /**
-     * @dataProvider getSoonerThanTenthMarch2014
-     */
-    public function testInvalidDatesCombinedMin($value, $dateTimeAsString)
-    {
-        // Conversion of dates to string differs between ICU versions
-        // Make sure we have the correct version loaded
-        IntlTestHelper::requireIntl($this);
-
-        $constraint = new Range(array(
-            'min' => 'March 10, 2014',
-            'max' => 'March 20, 2014',
-            'minMessage' => 'myMinMessage',
-            'maxMessage' => 'myMaxMessage',
-        ));
-
-        $this->validator->validate($value, $constraint);
-
-        $this->buildViolation('myMinMessage')
-            ->setParameter('{{ value }}', $dateTimeAsString)
-            ->setParameter('{{ limit }}', 'Mar 10, 2014, 12:00 AM')
-            ->setCode(Range::BELOW_RANGE_ERROR)
-            ->assertRaised();
-    }
-
-    public function getInvalidValues()
-    {
-        return array(
-            array(9.999999),
-            array(20.000001),
-            array('9.999999'),
-            array('20.000001'),
-            array(new \stdClass()),
-        );
-    }
-
-    public function testNonNumeric()
-    {
-        $this->validator->validate('abcd', new Range(array(
-            'min' => 10,
-            'max' => 20,
-            'invalidMessage' => 'myMessage',
-        )));
-
-        $this->buildViolation('myMessage')
-            ->setParameter('{{ value }}', '"abcd"')
-            ->setCode(Range::INVALID_VALUE_ERROR)
-            ->assertRaised();
-    }
-}
diff --git a/vendor/symfony/validator/Tests/Constraints/RegexTest.php b/vendor/symfony/validator/Tests/Constraints/RegexTest.php
deleted file mode 100644
index ea37bb4..0000000
--- a/vendor/symfony/validator/Tests/Constraints/RegexTest.php
+++ /dev/null
@@ -1,87 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Constraints;
-
-use Symfony\Component\Validator\Constraints\Regex;
-
-/**
- * @author Bernhard Schussek <bschussek@gmail.com>
- */
-class RegexTest extends \PHPUnit_Framework_TestCase
-{
-    public function testConstraintGetDefaultOption()
-    {
-        $constraint = new Regex('/^[0-9]+$/');
-
-        $this->assertSame('/^[0-9]+$/', $constraint->pattern);
-    }
-
-    public function provideHtmlPatterns()
-    {
-        return array(
-            // HTML5 wraps the pattern in ^(?:pattern)$
-            array('/^[0-9]+$/', '[0-9]+'),
-            array('/[0-9]+$/', '.*[0-9]+'),
-            array('/^[0-9]+/', '[0-9]+.*'),
-            array('/[0-9]+/', '.*[0-9]+.*'),
-            // We need a smart way to allow matching of patterns that contain
-            // ^ and $ at various sub-clauses of an or-clause
-            // .*(pattern).* seems to work correctly
-            array('/[0-9]$|[a-z]+/', '.*([0-9]$|[a-z]+).*'),
-            array('/[0-9]$|^[a-z]+/', '.*([0-9]$|^[a-z]+).*'),
-            array('/^[0-9]|[a-z]+$/', '.*(^[0-9]|[a-z]+$).*'),
-            // Unescape escaped delimiters
-            array('/^[0-9]+\/$/', '[0-9]+/'),
-            array('#^[0-9]+\#$#', '[0-9]+#'),
-            // Cannot be converted
-            array('/^[0-9]+$/i', null),
-
-            // Inverse matches are simple, just wrap in
-            // ((?!pattern).)*
-            array('/^[0-9]+$/', '((?!^[0-9]+$).)*', false),
-            array('/[0-9]+$/', '((?![0-9]+$).)*', false),
-            array('/^[0-9]+/', '((?!^[0-9]+).)*', false),
-            array('/[0-9]+/', '((?![0-9]+).)*', false),
-            array('/[0-9]$|[a-z]+/', '((?![0-9]$|[a-z]+).)*', false),
-            array('/[0-9]$|^[a-z]+/', '((?![0-9]$|^[a-z]+).)*', false),
-            array('/^[0-9]|[a-z]+$/', '((?!^[0-9]|[a-z]+$).)*', false),
-            array('/^[0-9]+\/$/', '((?!^[0-9]+/$).)*', false),
-            array('#^[0-9]+\#$#', '((?!^[0-9]+#$).)*', false),
-            array('/^[0-9]+$/i', null, false),
-        );
-    }
-
-    /**
-     * @dataProvider provideHtmlPatterns
-     */
-    public function testGetHtmlPattern($pattern, $htmlPattern, $match = true)
-    {
-        $constraint = new Regex(array(
-            'pattern' => $pattern,
-            'match' => $match,
-        ));
-
-        $this->assertSame($pattern, $constraint->pattern);
-        $this->assertSame($htmlPattern, $constraint->getHtmlPattern());
-    }
-
-    public function testGetCustomHtmlPattern()
-    {
-        $constraint = new Regex(array(
-            'pattern' => '((?![0-9]$|[a-z]+).)*',
-            'htmlPattern' => 'foobar',
-        ));
-
-        $this->assertSame('((?![0-9]$|[a-z]+).)*', $constraint->pattern);
-        $this->assertSame('foobar', $constraint->getHtmlPattern());
-    }
-}
diff --git a/vendor/symfony/validator/Tests/Constraints/RegexValidatorTest.php b/vendor/symfony/validator/Tests/Constraints/RegexValidatorTest.php
deleted file mode 100644
index 61917e3..0000000
--- a/vendor/symfony/validator/Tests/Constraints/RegexValidatorTest.php
+++ /dev/null
@@ -1,97 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Constraints;
-
-use Symfony\Component\Validator\Constraints\Regex;
-use Symfony\Component\Validator\Constraints\RegexValidator;
-use Symfony\Component\Validator\Validation;
-
-class RegexValidatorTest extends AbstractConstraintValidatorTest
-{
-    protected function getApiVersion()
-    {
-        return Validation::API_VERSION_2_5;
-    }
-
-    protected function createValidator()
-    {
-        return new RegexValidator();
-    }
-
-    public function testNullIsValid()
-    {
-        $this->validator->validate(null, new Regex(array('pattern' => '/^[0-9]+$/')));
-
-        $this->assertNoViolation();
-    }
-
-    public function testEmptyStringIsValid()
-    {
-        $this->validator->validate('', new Regex(array('pattern' => '/^[0-9]+$/')));
-
-        $this->assertNoViolation();
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Validator\Exception\UnexpectedTypeException
-     */
-    public function testExpectsStringCompatibleType()
-    {
-        $this->validator->validate(new \stdClass(), new Regex(array('pattern' => '/^[0-9]+$/')));
-    }
-
-    /**
-     * @dataProvider getValidValues
-     */
-    public function testValidValues($value)
-    {
-        $constraint = new Regex(array('pattern' => '/^[0-9]+$/'));
-        $this->validator->validate($value, $constraint);
-
-        $this->assertNoViolation();
-    }
-
-    public function getValidValues()
-    {
-        return array(
-            array(0),
-            array('0'),
-            array('090909'),
-            array(90909),
-        );
-    }
-
-    /**
-     * @dataProvider getInvalidValues
-     */
-    public function testInvalidValues($value)
-    {
-        $constraint = new Regex(array(
-            'pattern' => '/^[0-9]+$/',
-            'message' => 'myMessage',
-        ));
-
-        $this->validator->validate($value, $constraint);
-
-        $this->buildViolation('myMessage')
-            ->setParameter('{{ value }}', '"'.$value.'"')
-            ->assertRaised();
-    }
-
-    public function getInvalidValues()
-    {
-        return array(
-            array('abcd'),
-            array('090foo'),
-        );
-    }
-}
diff --git a/vendor/symfony/validator/Tests/Constraints/TimeValidatorTest.php b/vendor/symfony/validator/Tests/Constraints/TimeValidatorTest.php
deleted file mode 100644
index a6ca143..0000000
--- a/vendor/symfony/validator/Tests/Constraints/TimeValidatorTest.php
+++ /dev/null
@@ -1,107 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Constraints;
-
-use Symfony\Component\Validator\Constraints\Time;
-use Symfony\Component\Validator\Constraints\TimeValidator;
-use Symfony\Component\Validator\Validation;
-
-class TimeValidatorTest extends AbstractConstraintValidatorTest
-{
-    protected function getApiVersion()
-    {
-        return Validation::API_VERSION_2_5;
-    }
-
-    protected function createValidator()
-    {
-        return new TimeValidator();
-    }
-
-    public function testNullIsValid()
-    {
-        $this->validator->validate(null, new Time());
-
-        $this->assertNoViolation();
-    }
-
-    public function testEmptyStringIsValid()
-    {
-        $this->validator->validate('', new Time());
-
-        $this->assertNoViolation();
-    }
-
-    public function testDateTimeClassIsValid()
-    {
-        $this->validator->validate(new \DateTime(), new Time());
-
-        $this->assertNoViolation();
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Validator\Exception\UnexpectedTypeException
-     */
-    public function testExpectsStringCompatibleType()
-    {
-        $this->validator->validate(new \stdClass(), new Time());
-    }
-
-    /**
-     * @dataProvider getValidTimes
-     */
-    public function testValidTimes($time)
-    {
-        $this->validator->validate($time, new Time());
-
-        $this->assertNoViolation();
-    }
-
-    public function getValidTimes()
-    {
-        return array(
-            array('01:02:03'),
-            array('00:00:00'),
-            array('23:59:59'),
-        );
-    }
-
-    /**
-     * @dataProvider getInvalidTimes
-     */
-    public function testInvalidTimes($time, $code)
-    {
-        $constraint = new Time(array(
-            'message' => 'myMessage',
-        ));
-
-        $this->validator->validate($time, $constraint);
-
-        $this->buildViolation('myMessage')
-            ->setParameter('{{ value }}', '"'.$time.'"')
-            ->setCode($code)
-            ->assertRaised();
-    }
-
-    public function getInvalidTimes()
-    {
-        return array(
-            array('foobar', Time::INVALID_FORMAT_ERROR),
-            array('foobar 12:34:56', Time::INVALID_FORMAT_ERROR),
-            array('12:34:56 foobar', Time::INVALID_FORMAT_ERROR),
-            array('00:00', Time::INVALID_FORMAT_ERROR),
-            array('24:00:00', Time::INVALID_TIME_ERROR),
-            array('00:60:00', Time::INVALID_TIME_ERROR),
-            array('00:00:60', Time::INVALID_TIME_ERROR),
-        );
-    }
-}
diff --git a/vendor/symfony/validator/Tests/Constraints/TypeValidatorTest.php b/vendor/symfony/validator/Tests/Constraints/TypeValidatorTest.php
deleted file mode 100644
index 4836928..0000000
--- a/vendor/symfony/validator/Tests/Constraints/TypeValidatorTest.php
+++ /dev/null
@@ -1,185 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Constraints;
-
-use Symfony\Component\Validator\Constraints\Type;
-use Symfony\Component\Validator\Constraints\TypeValidator;
-use Symfony\Component\Validator\Validation;
-
-class TypeValidatorTest extends AbstractConstraintValidatorTest
-{
-    protected static $file;
-
-    protected function getApiVersion()
-    {
-        return Validation::API_VERSION_2_5;
-    }
-
-    protected function createValidator()
-    {
-        return new TypeValidator();
-    }
-
-    public function testNullIsValid()
-    {
-        $constraint = new Type(array('type' => 'integer'));
-
-        $this->validator->validate(null, $constraint);
-
-        $this->assertNoViolation();
-    }
-
-    public function testEmptyIsValidIfString()
-    {
-        $constraint = new Type(array('type' => 'string'));
-
-        $this->validator->validate('', $constraint);
-
-        $this->assertNoViolation();
-    }
-
-    public function testEmptyIsInvalidIfNoString()
-    {
-        $constraint = new Type(array(
-            'type' => 'integer',
-            'message' => 'myMessage',
-        ));
-
-        $this->validator->validate('', $constraint);
-
-        $this->buildViolation('myMessage')
-            ->setParameter('{{ value }}', '""')
-            ->setParameter('{{ type }}', 'integer')
-            ->assertRaised();
-    }
-
-    /**
-     * @dataProvider getValidValues
-     */
-    public function testValidValues($value, $type)
-    {
-        $constraint = new Type(array('type' => $type));
-
-        $this->validator->validate($value, $constraint);
-
-        $this->assertNoViolation();
-    }
-
-    public function getValidValues()
-    {
-        $object = new \stdClass();
-        $file = $this->createFile();
-
-        return array(
-            array(true, 'Boolean'),
-            array(false, 'Boolean'),
-            array(true, 'boolean'),
-            array(false, 'boolean'),
-            array(true, 'bool'),
-            array(false, 'bool'),
-            array(0, 'numeric'),
-            array('0', 'numeric'),
-            array(1.5, 'numeric'),
-            array('1.5', 'numeric'),
-            array(0, 'integer'),
-            array(1.5, 'float'),
-            array('12345', 'string'),
-            array(array(), 'array'),
-            array($object, 'object'),
-            array($object, 'stdClass'),
-            array($file, 'resource'),
-            array('12345', 'digit'),
-            array('12a34', 'alnum'),
-            array('abcde', 'alpha'),
-            array("\n\r\t", 'cntrl'),
-            array('arf12', 'graph'),
-            array('abcde', 'lower'),
-            array('ABCDE', 'upper'),
-            array('arf12', 'print'),
-            array('*&$()', 'punct'),
-            array("\n\r\t", 'space'),
-            array('AB10BC99', 'xdigit'),
-        );
-    }
-
-    /**
-     * @dataProvider getInvalidValues
-     */
-    public function testInvalidValues($value, $type, $valueAsString)
-    {
-        $constraint = new Type(array(
-            'type' => $type,
-            'message' => 'myMessage',
-        ));
-
-        $this->validator->validate($value, $constraint);
-
-        $this->buildViolation('myMessage')
-            ->setParameter('{{ value }}', $valueAsString)
-            ->setParameter('{{ type }}', $type)
-            ->assertRaised();
-    }
-
-    public function getInvalidValues()
-    {
-        $object = new \stdClass();
-        $file = $this->createFile();
-
-        return array(
-            array('foobar', 'numeric', '"foobar"'),
-            array('foobar', 'boolean', '"foobar"'),
-            array('0', 'integer', '"0"'),
-            array('1.5', 'float', '"1.5"'),
-            array(12345, 'string', '12345'),
-            array($object, 'boolean', 'object'),
-            array($object, 'numeric', 'object'),
-            array($object, 'integer', 'object'),
-            array($object, 'float', 'object'),
-            array($object, 'string', 'object'),
-            array($object, 'resource', 'object'),
-            array($file, 'boolean', 'resource'),
-            array($file, 'numeric', 'resource'),
-            array($file, 'integer', 'resource'),
-            array($file, 'float', 'resource'),
-            array($file, 'string', 'resource'),
-            array($file, 'object', 'resource'),
-            array('12a34', 'digit', '"12a34"'),
-            array('1a#23', 'alnum', '"1a#23"'),
-            array('abcd1', 'alpha', '"abcd1"'),
-            array("\nabc", 'cntrl', "\"\nabc\""),
-            array("abc\n", 'graph', "\"abc\n\""),
-            array('abCDE', 'lower', '"abCDE"'),
-            array('ABcde', 'upper', '"ABcde"'),
-            array("\nabc", 'print', "\"\nabc\""),
-            array('abc&$!', 'punct', '"abc&$!"'),
-            array("\nabc", 'space', "\"\nabc\""),
-            array('AR1012', 'xdigit', '"AR1012"'),
-        );
-    }
-
-    protected function createFile()
-    {
-        if (!static::$file) {
-            static::$file = fopen(__FILE__, 'r');
-        }
-
-        return static::$file;
-    }
-
-    public static function tearDownAfterClass()
-    {
-        if (static::$file) {
-            fclose(static::$file);
-            static::$file = null;
-        }
-    }
-}
diff --git a/vendor/symfony/validator/Tests/Constraints/UrlValidatorTest.php b/vendor/symfony/validator/Tests/Constraints/UrlValidatorTest.php
deleted file mode 100644
index 3358c79..0000000
--- a/vendor/symfony/validator/Tests/Constraints/UrlValidatorTest.php
+++ /dev/null
@@ -1,179 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Constraints;
-
-use Symfony\Component\Validator\Constraints\Url;
-use Symfony\Component\Validator\Constraints\UrlValidator;
-use Symfony\Component\Validator\Validation;
-
-class UrlValidatorTest extends AbstractConstraintValidatorTest
-{
-    protected function getApiVersion()
-    {
-        return Validation::API_VERSION_2_5;
-    }
-
-    protected function createValidator()
-    {
-        return new UrlValidator();
-    }
-
-    public function testNullIsValid()
-    {
-        $this->validator->validate(null, new Url());
-
-        $this->assertNoViolation();
-    }
-
-    public function testEmptyStringIsValid()
-    {
-        $this->validator->validate('', new Url());
-
-        $this->assertNoViolation();
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Validator\Exception\UnexpectedTypeException
-     */
-    public function testExpectsStringCompatibleType()
-    {
-        $this->validator->validate(new \stdClass(), new Url());
-    }
-
-    /**
-     * @dataProvider getValidUrls
-     */
-    public function testValidUrls($url)
-    {
-        $this->validator->validate($url, new Url());
-
-        $this->assertNoViolation();
-    }
-
-    public function getValidUrls()
-    {
-        return array(
-            array('http://a.pl'),
-            array('http://www.google.com'),
-            array('http://www.google.com.'),
-            array('http://www.google.museum'),
-            array('https://google.com/'),
-            array('https://google.com:80/'),
-            array('http://www.example.coop/'),
-            array('http://www.test-example.com/'),
-            array('http://www.symfony.com/'),
-            array('http://symfony.fake/blog/'),
-            array('http://symfony.com/?'),
-            array('http://symfony.com/search?type=&q=url+validator'),
-            array('http://symfony.com/#'),
-            array('http://symfony.com/#?'),
-            array('http://www.symfony.com/doc/current/book/validation.html#supported-constraints'),
-            array('http://very.long.domain.name.com/'),
-            array('http://localhost/'),
-            array('http://127.0.0.1/'),
-            array('http://127.0.0.1:80/'),
-            array('http://[::1]/'),
-            array('http://[::1]:80/'),
-            array('http://[1:2:3::4:5:6:7]/'),
-            array('http://sãopaulo.com/'),
-            array('http://xn--sopaulo-xwa.com/'),
-            array('http://sãopaulo.com.br/'),
-            array('http://xn--sopaulo-xwa.com.br/'),
-            array('http://пример.испытание/'),
-            array('http://xn--e1afmkfd.xn--80akhbyknj4f/'),
-            array('http://مثال.إختبار/'),
-            array('http://xn--mgbh0fb.xn--kgbechtv/'),
-            array('http://例子.测试/'),
-            array('http://xn--fsqu00a.xn--0zwm56d/'),
-            array('http://例子.測試/'),
-            array('http://xn--fsqu00a.xn--g6w251d/'),
-            array('http://例え.テスト/'),
-            array('http://xn--r8jz45g.xn--zckzah/'),
-            array('http://مثال.آزمایشی/'),
-            array('http://xn--mgbh0fb.xn--hgbk6aj7f53bba/'),
-            array('http://실례.테스트/'),
-            array('http://xn--9n2bp8q.xn--9t4b11yi5a/'),
-            array('http://العربية.idn.icann.org/'),
-            array('http://xn--ogb.idn.icann.org/'),
-            array('http://xn--e1afmkfd.xn--80akhbyknj4f.xn--e1afmkfd/'),
-            array('http://xn--espaa-rta.xn--ca-ol-fsay5a/'),
-            array('http://xn--d1abbgf6aiiy.xn--p1ai/'),
-            array('http://☎.com/'),
-            array('http://username:password@symfony.com'),
-            array('http://user-name@symfony.com'),
-        );
-    }
-
-    /**
-     * @dataProvider getInvalidUrls
-     */
-    public function testInvalidUrls($url)
-    {
-        $constraint = new Url(array(
-            'message' => 'myMessage',
-        ));
-
-        $this->validator->validate($url, $constraint);
-
-        $this->buildViolation('myMessage')
-            ->setParameter('{{ value }}', '"'.$url.'"')
-            ->assertRaised();
-    }
-
-    public function getInvalidUrls()
-    {
-        return array(
-            array('google.com'),
-            array('://google.com'),
-            array('http ://google.com'),
-            array('http:/google.com'),
-            array('http://goog_le.com'),
-            array('http://google.com::aa'),
-            array('http://google.com:aa'),
-            array('http://symfony.com?'),
-            array('http://symfony.com#'),
-            array('ftp://google.fr'),
-            array('faked://google.fr'),
-            array('http://127.0.0.1:aa/'),
-            array('ftp://[::1]/'),
-            array('http://[::1'),
-            array('http://hello.☎/'),
-            array('http://:password@symfony.com'),
-            array('http://:password@@symfony.com'),
-            array('http://username:passwordsymfony.com'),
-            array('http://usern@me:password@symfony.com'),
-        );
-    }
-
-    /**
-     * @dataProvider getValidCustomUrls
-     */
-    public function testCustomProtocolIsValid($url)
-    {
-        $constraint = new Url(array(
-            'protocols' => array('ftp', 'file', 'git'),
-        ));
-
-        $this->validator->validate($url, $constraint);
-
-        $this->assertNoViolation();
-    }
-
-    public function getValidCustomUrls()
-    {
-        return array(
-            array('ftp://google.com'),
-            array('file://127.0.0.1'),
-            array('git://[::1]/'),
-        );
-    }
-}
diff --git a/vendor/symfony/validator/Tests/Constraints/UuidValidatorTest.php b/vendor/symfony/validator/Tests/Constraints/UuidValidatorTest.php
deleted file mode 100644
index 0abda39..0000000
--- a/vendor/symfony/validator/Tests/Constraints/UuidValidatorTest.php
+++ /dev/null
@@ -1,211 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Constraints;
-
-use Symfony\Component\Validator\Constraints\Uuid;
-use Symfony\Component\Validator\Constraints\UuidValidator;
-use Symfony\Component\Validator\Validation;
-
-/**
- * @author Colin O'Dell <colinodell@gmail.com>
- */
-class UuidValidatorTest extends AbstractConstraintValidatorTest
-{
-    protected function getApiVersion()
-    {
-        return Validation::API_VERSION_2_5;
-    }
-
-    protected function createValidator()
-    {
-        return new UuidValidator();
-    }
-
-    public function testNullIsValid()
-    {
-        $this->validator->validate(null, new Uuid());
-
-        $this->assertNoViolation();
-    }
-
-    public function testEmptyStringIsValid()
-    {
-        $this->validator->validate('', new Uuid());
-
-        $this->assertNoViolation();
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Validator\Exception\UnexpectedTypeException
-     */
-    public function testExpectsStringCompatibleType()
-    {
-        $this->validator->validate(new \stdClass(), new Uuid());
-    }
-
-    /**
-     * @dataProvider getValidStrictUuids
-     */
-    public function testValidStrictUuids($uuid, $versions = null)
-    {
-        $constraint = new Uuid();
-
-        if (null !== $versions) {
-            $constraint->versions = $versions;
-        }
-
-        $this->validator->validate($uuid, $constraint);
-
-        $this->assertNoViolation();
-    }
-
-    public function getValidStrictUuids()
-    {
-        return array(
-            array('216fff40-98d9-11e3-a5e2-0800200c9a66'), // Version 1 UUID in lowercase
-            array('216fff40-98d9-11e3-a5e2-0800200c9a66', array(Uuid::V1_MAC)),
-            array('216FFF40-98D9-11E3-A5E2-0800200C9A66'), // Version 1 UUID in UPPERCASE
-            array('456daefb-5aa6-41b5-8dbc-068b05a8b201'), // Version 4 UUID in lowercase
-            array('456daEFb-5AA6-41B5-8DBC-068B05A8B201'), // Version 4 UUID in mixed case
-            array('456daEFb-5AA6-41B5-8DBC-068B05A8B201', array(Uuid::V4_RANDOM)),
-        );
-    }
-
-    /**
-     * @dataProvider getInvalidStrictUuids
-     */
-    public function testInvalidStrictUuids($uuid, $code, $versions = null)
-    {
-        $constraint = new Uuid(array(
-            'message' => 'testMessage',
-        ));
-
-        if (null !== $versions) {
-            $constraint->versions = $versions;
-        }
-
-        $this->validator->validate($uuid, $constraint);
-
-        $this->buildViolation('testMessage')
-            ->setParameter('{{ value }}', '"'.$uuid.'"')
-            ->setCode($code)
-            ->assertRaised();
-    }
-
-    public function getInvalidStrictUuids()
-    {
-        return array(
-            array('216fff40-98d9-11e3-a5e2_0800200c9a66', Uuid::INVALID_CHARACTERS_ERROR),
-            array('216gff40-98d9-11e3-a5e2-0800200c9a66', Uuid::INVALID_CHARACTERS_ERROR),
-            array('216Gff40-98d9-11e3-a5e2-0800200c9a66', Uuid::INVALID_CHARACTERS_ERROR),
-            array('216fff40-98d9-11e3-a5e-20800200c9a66', Uuid::INVALID_HYPHEN_PLACEMENT_ERROR),
-            array('216f-ff40-98d9-11e3-a5e2-0800200c9a66', Uuid::INVALID_HYPHEN_PLACEMENT_ERROR),
-            array('216fff40-98d9-11e3-a5e2-0800-200c9a66', Uuid::INVALID_HYPHEN_PLACEMENT_ERROR),
-            array('216fff40-98d9-11e3-a5e2-0800200c-9a66', Uuid::INVALID_HYPHEN_PLACEMENT_ERROR),
-            array('216fff40-98d9-11e3-a5e20800200c9a66', Uuid::INVALID_HYPHEN_PLACEMENT_ERROR),
-            array('216fff4098d911e3a5e20800200c9a66', Uuid::INVALID_HYPHEN_PLACEMENT_ERROR),
-            array('216fff40-98d9-11e3-a5e2-0800200c9a6', Uuid::TOO_SHORT_ERROR),
-            array('216fff40-98d9-11e3-a5e2-0800200c9a666', Uuid::TOO_LONG_ERROR),
-            array('216fff40-98d9-01e3-a5e2-0800200c9a66', Uuid::INVALID_VERSION_ERROR),
-            array('216fff40-98d9-61e3-a5e2-0800200c9a66', Uuid::INVALID_VERSION_ERROR),
-            array('216fff40-98d9-71e3-a5e2-0800200c9a66', Uuid::INVALID_VERSION_ERROR),
-            array('216fff40-98d9-81e3-a5e2-0800200c9a66', Uuid::INVALID_VERSION_ERROR),
-            array('216fff40-98d9-91e3-a5e2-0800200c9a66', Uuid::INVALID_VERSION_ERROR),
-            array('216fff40-98d9-a1e3-a5e2-0800200c9a66', Uuid::INVALID_VERSION_ERROR),
-            array('216fff40-98d9-b1e3-a5e2-0800200c9a66', Uuid::INVALID_VERSION_ERROR),
-            array('216fff40-98d9-c1e3-a5e2-0800200c9a66', Uuid::INVALID_VERSION_ERROR),
-            array('216fff40-98d9-d1e3-a5e2-0800200c9a66', Uuid::INVALID_VERSION_ERROR),
-            array('216fff40-98d9-e1e3-a5e2-0800200c9a66', Uuid::INVALID_VERSION_ERROR),
-            array('216fff40-98d9-f1e3-a5e2-0800200c9a66', Uuid::INVALID_VERSION_ERROR),
-            array('216fff40-98d9-11e3-a5e2-0800200c9a66', Uuid::INVALID_VERSION_ERROR, array(Uuid::V2_DCE, Uuid::V3_MD5, Uuid::V4_RANDOM, Uuid::V5_SHA1)),
-            array('216fff40-98d9-21e3-a5e2-0800200c9a66', Uuid::INVALID_VERSION_ERROR, array(Uuid::V1_MAC, Uuid::V3_MD5, Uuid::V4_RANDOM, Uuid::V5_SHA1)),
-            array('216fff40-98d9-11e3-05e2-0800200c9a66', Uuid::INVALID_VARIANT_ERROR),
-            array('216fff40-98d9-11e3-15e2-0800200c9a66', Uuid::INVALID_VARIANT_ERROR),
-            array('216fff40-98d9-11e3-25e2-0800200c9a66', Uuid::INVALID_VARIANT_ERROR),
-            array('216fff40-98d9-11e3-35e2-0800200c9a66', Uuid::INVALID_VARIANT_ERROR),
-            array('216fff40-98d9-11e3-45e2-0800200c9a66', Uuid::INVALID_VARIANT_ERROR),
-            array('216fff40-98d9-11e3-55e2-0800200c9a66', Uuid::INVALID_VARIANT_ERROR),
-            array('216fff40-98d9-11e3-65e2-0800200c9a66', Uuid::INVALID_VARIANT_ERROR),
-            array('216fff40-98d9-11e3-75e2-0800200c9a66', Uuid::INVALID_VARIANT_ERROR),
-            array('216fff40-98d9-11e3-c5e2-0800200c9a66', Uuid::INVALID_VARIANT_ERROR),
-            array('216fff40-98d9-11e3-d5e2-0800200c9a66', Uuid::INVALID_VARIANT_ERROR),
-            array('216fff40-98d9-11e3-e5e2-0800200c9a66', Uuid::INVALID_VARIANT_ERROR),
-            array('216fff40-98d9-11e3-f5e2-0800200c9a66', Uuid::INVALID_VARIANT_ERROR),
-
-            // Non-standard UUID allowed by some other systems
-            array('{216fff40-98d9-11e3-a5e2-0800200c9a66}', Uuid::INVALID_CHARACTERS_ERROR),
-            array('[216fff40-98d9-11e3-a5e2-0800200c9a66]', Uuid::INVALID_CHARACTERS_ERROR),
-        );
-    }
-
-    /**
-     * @dataProvider getValidNonStrictUuids
-     */
-    public function testValidNonStrictUuids($uuid)
-    {
-        $constraint = new Uuid(array(
-            'strict' => false,
-        ));
-
-        $this->validator->validate($uuid, $constraint);
-
-        $this->assertNoViolation();
-    }
-
-    public function getValidNonStrictUuids()
-    {
-        return array(
-            array('216fff40-98d9-11e3-a5e2-0800200c9a66'),    // Version 1 UUID in lowercase
-            array('216FFF40-98D9-11E3-A5E2-0800200C9A66'),    // Version 1 UUID in UPPERCASE
-            array('456daefb-5aa6-41b5-8dbc-068b05a8b201'),    // Version 4 UUID in lowercase
-            array('456DAEFb-5AA6-41B5-8DBC-068b05a8B201'),    // Version 4 UUID in mixed case
-
-            // Non-standard UUIDs allowed by some other systems
-            array('216f-ff40-98d9-11e3-a5e2-0800-200c-9a66'), // Non-standard dash positions (every 4 chars)
-            array('216fff40-98d911e3-a5e20800-200c9a66'),     // Non-standard dash positions (every 8 chars)
-            array('216fff4098d911e3a5e20800200c9a66'),        // No dashes at all
-            array('{216fff40-98d9-11e3-a5e2-0800200c9a66}'),  // Wrapped with curly braces
-            array('[216fff40-98d9-11e3-a5e2-0800200c9a66]'),  // Wrapped with squared braces
-        );
-    }
-
-    /**
-     * @dataProvider getInvalidNonStrictUuids
-     */
-    public function testInvalidNonStrictUuids($uuid, $code)
-    {
-        $constraint = new Uuid(array(
-            'strict' => false,
-            'message' => 'myMessage',
-        ));
-
-        $this->validator->validate($uuid, $constraint);
-
-        $this->buildViolation('myMessage')
-            ->setParameter('{{ value }}', '"'.$uuid.'"')
-            ->setCode($code)
-            ->assertRaised();
-    }
-
-    public function getInvalidNonStrictUuids()
-    {
-        return array(
-            array('216fff40-98d9-11e3-a5e2_0800200c9a66', Uuid::INVALID_CHARACTERS_ERROR),
-            array('216gff40-98d9-11e3-a5e2-0800200c9a66', Uuid::INVALID_CHARACTERS_ERROR),
-            array('216Gff40-98d9-11e3-a5e2-0800200c9a66', Uuid::INVALID_CHARACTERS_ERROR),
-            array('216fff40-98d9-11e3-a5e2_0800200c9a6', Uuid::INVALID_CHARACTERS_ERROR),
-            array('216fff40-98d9-11e3-a5e-20800200c9a66', Uuid::INVALID_HYPHEN_PLACEMENT_ERROR),
-            array('216fff40-98d9-11e3-a5e2-0800200c9a6', Uuid::TOO_SHORT_ERROR),
-            array('216fff40-98d9-11e3-a5e2-0800200c9a666', Uuid::TOO_LONG_ERROR),
-        );
-    }
-}
diff --git a/vendor/symfony/validator/Tests/Constraints/ValidTest.php b/vendor/symfony/validator/Tests/Constraints/ValidTest.php
deleted file mode 100644
index 3de6ab3..0000000
--- a/vendor/symfony/validator/Tests/Constraints/ValidTest.php
+++ /dev/null
@@ -1,28 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Constraints;
-
-use Symfony\Component\Validator\Constraints\Valid;
-
-/**
- * @author Bernhard Schussek <bschussek@gmail.com>
- */
-class ValidTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @expectedException \Symfony\Component\Validator\Exception\ConstraintDefinitionException
-     */
-    public function testRejectGroupsOption()
-    {
-        new Valid(array('groups' => 'foo'));
-    }
-}
diff --git a/vendor/symfony/validator/Tests/Fixtures/CallbackClass.php b/vendor/symfony/validator/Tests/Fixtures/CallbackClass.php
deleted file mode 100644
index 0f6a2f4..0000000
--- a/vendor/symfony/validator/Tests/Fixtures/CallbackClass.php
+++ /dev/null
@@ -1,24 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Fixtures;
-
-use Symfony\Component\Validator\ExecutionContextInterface;
-
-/**
- * @author Bernhard Schussek <bschussek@gmail.com>
- */
-class CallbackClass
-{
-    public static function callback($object, ExecutionContextInterface $context)
-    {
-    }
-}
diff --git a/vendor/symfony/validator/Tests/Fixtures/ClassConstraint.php b/vendor/symfony/validator/Tests/Fixtures/ClassConstraint.php
deleted file mode 100644
index a4dc777..0000000
--- a/vendor/symfony/validator/Tests/Fixtures/ClassConstraint.php
+++ /dev/null
@@ -1,22 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Fixtures;
-
-use Symfony\Component\Validator\Constraint;
-
-class ClassConstraint extends Constraint
-{
-    public function getTargets()
-    {
-        return self::CLASS_CONSTRAINT;
-    }
-}
diff --git a/vendor/symfony/validator/Tests/Fixtures/ConstraintA.php b/vendor/symfony/validator/Tests/Fixtures/ConstraintA.php
deleted file mode 100644
index 8a196dc..0000000
--- a/vendor/symfony/validator/Tests/Fixtures/ConstraintA.php
+++ /dev/null
@@ -1,31 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Fixtures;
-
-use Symfony\Component\Validator\Constraint;
-
-/** @Annotation */
-class ConstraintA extends Constraint
-{
-    public $property1;
-    public $property2;
-
-    public function getDefaultOption()
-    {
-        return 'property2';
-    }
-
-    public function getTargets()
-    {
-        return array(self::PROPERTY_CONSTRAINT, self::CLASS_CONSTRAINT);
-    }
-}
diff --git a/vendor/symfony/validator/Tests/Fixtures/ConstraintAValidator.php b/vendor/symfony/validator/Tests/Fixtures/ConstraintAValidator.php
deleted file mode 100644
index b3b85c8..0000000
--- a/vendor/symfony/validator/Tests/Fixtures/ConstraintAValidator.php
+++ /dev/null
@@ -1,37 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Fixtures;
-
-use Symfony\Component\Validator\Constraint;
-use Symfony\Component\Validator\ConstraintValidator;
-use Symfony\Component\Validator\ExecutionContextInterface;
-
-class ConstraintAValidator extends ConstraintValidator
-{
-    public static $passedContext;
-
-    public function initialize(ExecutionContextInterface $context)
-    {
-        parent::initialize($context);
-
-        self::$passedContext = $context;
-    }
-
-    public function validate($value, Constraint $constraint)
-    {
-        if ('VALID' != $value) {
-            $this->context->addViolation('message', array('param' => 'value'));
-
-            return;
-        }
-    }
-}
diff --git a/vendor/symfony/validator/Tests/Fixtures/ConstraintB.php b/vendor/symfony/validator/Tests/Fixtures/ConstraintB.php
deleted file mode 100644
index 6258923..0000000
--- a/vendor/symfony/validator/Tests/Fixtures/ConstraintB.php
+++ /dev/null
@@ -1,23 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Fixtures;
-
-use Symfony\Component\Validator\Constraint;
-
-/** @Annotation */
-class ConstraintB extends Constraint
-{
-    public function getTargets()
-    {
-        return array(self::PROPERTY_CONSTRAINT, self::CLASS_CONSTRAINT);
-    }
-}
diff --git a/vendor/symfony/validator/Tests/Fixtures/ConstraintC.php b/vendor/symfony/validator/Tests/Fixtures/ConstraintC.php
deleted file mode 100644
index b0418b8..0000000
--- a/vendor/symfony/validator/Tests/Fixtures/ConstraintC.php
+++ /dev/null
@@ -1,30 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Fixtures;
-
-use Symfony\Component\Validator\Constraint;
-
-/** @Annotation */
-class ConstraintC extends Constraint
-{
-    public $option1;
-
-    public function getRequiredOptions()
-    {
-        return array('option1');
-    }
-
-    public function getTargets()
-    {
-        return array(self::PROPERTY_CONSTRAINT, self::CLASS_CONSTRAINT);
-    }
-}
diff --git a/vendor/symfony/validator/Tests/Fixtures/ConstraintWithValue.php b/vendor/symfony/validator/Tests/Fixtures/ConstraintWithValue.php
deleted file mode 100644
index 4ebd981..0000000
--- a/vendor/symfony/validator/Tests/Fixtures/ConstraintWithValue.php
+++ /dev/null
@@ -1,31 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Fixtures;
-
-use Symfony\Component\Validator\Constraint;
-
-/** @Annotation */
-class ConstraintWithValue extends Constraint
-{
-    public $property;
-    public $value;
-
-    public function getDefaultOption()
-    {
-        return 'property';
-    }
-
-    public function getTargets()
-    {
-        return array(self::PROPERTY_CONSTRAINT, self::CLASS_CONSTRAINT);
-    }
-}
diff --git a/vendor/symfony/validator/Tests/Fixtures/ConstraintWithValueAsDefault.php b/vendor/symfony/validator/Tests/Fixtures/ConstraintWithValueAsDefault.php
deleted file mode 100644
index a975e07..0000000
--- a/vendor/symfony/validator/Tests/Fixtures/ConstraintWithValueAsDefault.php
+++ /dev/null
@@ -1,31 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Fixtures;
-
-use Symfony\Component\Validator\Constraint;
-
-/** @Annotation */
-class ConstraintWithValueAsDefault extends Constraint
-{
-    public $property;
-    public $value;
-
-    public function getDefaultOption()
-    {
-        return 'value';
-    }
-
-    public function getTargets()
-    {
-        return array(self::PROPERTY_CONSTRAINT, self::CLASS_CONSTRAINT);
-    }
-}
diff --git a/vendor/symfony/validator/Tests/Fixtures/Countable.php b/vendor/symfony/validator/Tests/Fixtures/Countable.php
deleted file mode 100644
index 282d78d..0000000
--- a/vendor/symfony/validator/Tests/Fixtures/Countable.php
+++ /dev/null
@@ -1,27 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Fixtures;
-
-class Countable implements \Countable
-{
-    private $content;
-
-    public function __construct(array $content)
-    {
-        $this->content = $content;
-    }
-
-    public function count()
-    {
-        return count($this->content);
-    }
-}
diff --git a/vendor/symfony/validator/Tests/Fixtures/CustomArrayObject.php b/vendor/symfony/validator/Tests/Fixtures/CustomArrayObject.php
deleted file mode 100644
index 41eac96..0000000
--- a/vendor/symfony/validator/Tests/Fixtures/CustomArrayObject.php
+++ /dev/null
@@ -1,70 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Fixtures;
-
-/**
- * This class is a hand written simplified version of PHP native `ArrayObject`
- * class, to show that it behaves differently than the PHP native implementation.
- */
-class CustomArrayObject implements \ArrayAccess, \IteratorAggregate, \Countable, \Serializable
-{
-    private $array;
-
-    public function __construct(array $array = null)
-    {
-        $this->array = $array ?: array();
-    }
-
-    public function offsetExists($offset)
-    {
-        return array_key_exists($offset, $this->array);
-    }
-
-    public function offsetGet($offset)
-    {
-        return $this->array[$offset];
-    }
-
-    public function offsetSet($offset, $value)
-    {
-        if (null === $offset) {
-            $this->array[] = $value;
-        } else {
-            $this->array[$offset] = $value;
-        }
-    }
-
-    public function offsetUnset($offset)
-    {
-        unset($this->array[$offset]);
-    }
-
-    public function getIterator()
-    {
-        return new \ArrayIterator($this->array);
-    }
-
-    public function count()
-    {
-        return count($this->array);
-    }
-
-    public function serialize()
-    {
-        return serialize($this->array);
-    }
-
-    public function unserialize($serialized)
-    {
-        $this->array = (array) unserialize((string) $serialized);
-    }
-}
diff --git a/vendor/symfony/validator/Tests/Fixtures/Entity.php b/vendor/symfony/validator/Tests/Fixtures/Entity.php
deleted file mode 100644
index 526ecc5..0000000
--- a/vendor/symfony/validator/Tests/Fixtures/Entity.php
+++ /dev/null
@@ -1,100 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Fixtures;
-
-use Symfony\Component\Validator\Constraints as Assert;
-use Symfony\Component\Validator\ExecutionContextInterface;
-
-/**
- * @Symfony\Component\Validator\Tests\Fixtures\ConstraintA
- * @Assert\GroupSequence({"Foo", "Entity"})
- * @Assert\Callback({"Symfony\Component\Validator\Tests\Fixtures\CallbackClass", "callback"})
- */
-class Entity extends EntityParent implements EntityInterface
-{
-    /**
-     * @Assert\NotNull
-     * @Assert\Range(min=3)
-     * @Assert\All({@Assert\NotNull, @Assert\Range(min=3)}),
-     * @Assert\All(constraints={@Assert\NotNull, @Assert\Range(min=3)})
-     * @Assert\Collection(fields={
-     *   "foo" = {@Assert\NotNull, @Assert\Range(min=3)},
-     *   "bar" = @Assert\Range(min=5)
-     * })
-     * @Assert\Choice(choices={"A", "B"}, message="Must be one of %choices%")
-     */
-    public $firstName;
-    protected $lastName;
-    public $reference;
-    public $reference2;
-    private $internal;
-    public $data = 'Overridden data';
-    public $initialized = false;
-
-    public function __construct($internal = null)
-    {
-        $this->internal = $internal;
-    }
-
-    public function getInternal()
-    {
-        return $this->internal.' from getter';
-    }
-
-    public function setLastName($lastName)
-    {
-        $this->lastName = $lastName;
-    }
-
-    /**
-     * @Assert\NotNull
-     */
-    public function getLastName()
-    {
-        return $this->lastName;
-    }
-
-    /**
-     * @Assert\IsTrue
-     */
-    public function isValid()
-    {
-        return 'valid';
-    }
-
-    /**
-     * @Assert\IsTrue
-     */
-    public function hasPermissions()
-    {
-        return 'permissions';
-    }
-
-    public function getData()
-    {
-        return 'Overridden data';
-    }
-
-    /**
-     * @Assert\Callback
-     */
-    public function validateMe(ExecutionContextInterface $context)
-    {
-    }
-
-    /**
-     * @Assert\Callback
-     */
-    public static function validateMeStatic($object, ExecutionContextInterface $context)
-    {
-    }
-}
diff --git a/vendor/symfony/validator/Tests/Fixtures/EntityInterface.php b/vendor/symfony/validator/Tests/Fixtures/EntityInterface.php
deleted file mode 100644
index 2901f26..0000000
--- a/vendor/symfony/validator/Tests/Fixtures/EntityInterface.php
+++ /dev/null
@@ -1,16 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Fixtures;
-
-interface EntityInterface
-{
-}
diff --git a/vendor/symfony/validator/Tests/Fixtures/EntityParent.php b/vendor/symfony/validator/Tests/Fixtures/EntityParent.php
deleted file mode 100644
index 422bb28..0000000
--- a/vendor/symfony/validator/Tests/Fixtures/EntityParent.php
+++ /dev/null
@@ -1,31 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Fixtures;
-
-use Symfony\Component\Validator\Constraints\NotNull;
-
-class EntityParent
-{
-    protected $firstName;
-    private $internal;
-    private $data = 'Data';
-
-    /**
-     * @NotNull
-     */
-    protected $other;
-
-    public function getData()
-    {
-        return 'Data';
-    }
-}
diff --git a/vendor/symfony/validator/Tests/Fixtures/FailingConstraint.php b/vendor/symfony/validator/Tests/Fixtures/FailingConstraint.php
deleted file mode 100644
index 03019fc..0000000
--- a/vendor/symfony/validator/Tests/Fixtures/FailingConstraint.php
+++ /dev/null
@@ -1,24 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Fixtures;
-
-use Symfony\Component\Validator\Constraint;
-
-class FailingConstraint extends Constraint
-{
-    public $message = 'Failed';
-
-    public function getTargets()
-    {
-        return array(self::PROPERTY_CONSTRAINT, self::CLASS_CONSTRAINT);
-    }
-}
diff --git a/vendor/symfony/validator/Tests/Fixtures/FailingConstraintValidator.php b/vendor/symfony/validator/Tests/Fixtures/FailingConstraintValidator.php
deleted file mode 100644
index a019dd6..0000000
--- a/vendor/symfony/validator/Tests/Fixtures/FailingConstraintValidator.php
+++ /dev/null
@@ -1,23 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Fixtures;
-
-use Symfony\Component\Validator\Constraint;
-use Symfony\Component\Validator\ConstraintValidator;
-
-class FailingConstraintValidator extends ConstraintValidator
-{
-    public function validate($value, Constraint $constraint)
-    {
-        $this->context->addViolation($constraint->message, array());
-    }
-}
diff --git a/vendor/symfony/validator/Tests/Fixtures/FakeClassMetadata.php b/vendor/symfony/validator/Tests/Fixtures/FakeClassMetadata.php
deleted file mode 100644
index 8c76a21..0000000
--- a/vendor/symfony/validator/Tests/Fixtures/FakeClassMetadata.php
+++ /dev/null
@@ -1,26 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Fixtures;
-
-use Symfony\Component\Validator\Mapping\ClassMetadata;
-
-class FakeClassMetadata extends ClassMetadata
-{
-    public function addCustomPropertyMetadata($propertyName, $metadata)
-    {
-        if (!isset($this->members[$propertyName])) {
-            $this->members[$propertyName] = array();
-        }
-
-        $this->members[$propertyName][] = $metadata;
-    }
-}
diff --git a/vendor/symfony/validator/Tests/Fixtures/FakeMetadataFactory.php b/vendor/symfony/validator/Tests/Fixtures/FakeMetadataFactory.php
deleted file mode 100644
index e3f0d9a..0000000
--- a/vendor/symfony/validator/Tests/Fixtures/FakeMetadataFactory.php
+++ /dev/null
@@ -1,72 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Fixtures;
-
-use Symfony\Component\Validator\Exception\NoSuchMetadataException;
-use Symfony\Component\Validator\MetadataFactoryInterface;
-use Symfony\Component\Validator\MetadataInterface;
-
-class FakeMetadataFactory implements MetadataFactoryInterface
-{
-    protected $metadatas = array();
-
-    public function getMetadataFor($class)
-    {
-        $hash = null;
-
-        if (is_object($class)) {
-            $hash = spl_object_hash($class);
-            $class = get_class($class);
-        }
-
-        if (!is_string($class)) {
-            throw new NoSuchMetadataException(sprintf('No metadata for type %s', gettype($class)));
-        }
-
-        if (!isset($this->metadatas[$class])) {
-            if (isset($this->metadatas[$hash])) {
-                return $this->metadatas[$hash];
-            }
-
-            throw new NoSuchMetadataException(sprintf('No metadata for "%s"', $class));
-        }
-
-        return $this->metadatas[$class];
-    }
-
-    public function hasMetadataFor($class)
-    {
-        $hash = null;
-
-        if (is_object($class)) {
-            $hash = spl_object_hash($class);
-            $class = get_class($class);
-        }
-
-        if (!is_string($class)) {
-            return false;
-        }
-
-        return isset($this->metadatas[$class]) || isset($this->metadatas[$hash]);
-    }
-
-    public function addMetadata($metadata)
-    {
-        $this->metadatas[$metadata->getClassName()] = $metadata;
-    }
-
-    public function addMetadataForValue($value, MetadataInterface $metadata)
-    {
-        $key = is_object($value) ? spl_object_hash($value) : $value;
-        $this->metadatas[$key] = $metadata;
-    }
-}
diff --git a/vendor/symfony/validator/Tests/Fixtures/FilesLoader.php b/vendor/symfony/validator/Tests/Fixtures/FilesLoader.php
deleted file mode 100644
index a4d6a6a..0000000
--- a/vendor/symfony/validator/Tests/Fixtures/FilesLoader.php
+++ /dev/null
@@ -1,39 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Fixtures;
-
-use Symfony\Component\Validator\Mapping\Loader\FilesLoader as BaseFilesLoader;
-use Symfony\Component\Validator\Mapping\Loader\LoaderInterface;
-
-abstract class FilesLoader extends BaseFilesLoader
-{
-    protected $timesCalled = 0;
-    protected $loader;
-
-    public function __construct(array $paths, LoaderInterface $loader)
-    {
-        $this->loader = $loader;
-        parent::__construct($paths);
-    }
-
-    protected function getFileLoaderInstance($file)
-    {
-        ++$this->timesCalled;
-
-        return $this->loader;
-    }
-
-    public function getTimesCalled()
-    {
-        return $this->timesCalled;
-    }
-}
diff --git a/vendor/symfony/validator/Tests/Fixtures/GroupSequenceProviderEntity.php b/vendor/symfony/validator/Tests/Fixtures/GroupSequenceProviderEntity.php
deleted file mode 100644
index 2b0beaf..0000000
--- a/vendor/symfony/validator/Tests/Fixtures/GroupSequenceProviderEntity.php
+++ /dev/null
@@ -1,36 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Fixtures;
-
-use Symfony\Component\Validator\Constraints as Assert;
-use Symfony\Component\Validator\GroupSequenceProviderInterface;
-
-/**
- * @Assert\GroupSequenceProvider
- */
-class GroupSequenceProviderEntity implements GroupSequenceProviderInterface
-{
-    public $firstName;
-    public $lastName;
-
-    protected $sequence = array();
-
-    public function __construct($sequence)
-    {
-        $this->sequence = $sequence;
-    }
-
-    public function getGroupSequence()
-    {
-        return $this->sequence;
-    }
-}
diff --git a/vendor/symfony/validator/Tests/Fixtures/InvalidConstraint.php b/vendor/symfony/validator/Tests/Fixtures/InvalidConstraint.php
deleted file mode 100644
index 6a9eaa7..0000000
--- a/vendor/symfony/validator/Tests/Fixtures/InvalidConstraint.php
+++ /dev/null
@@ -1,18 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Fixtures;
-
-use Symfony\Component\Validator\Constraint;
-
-class InvalidConstraint extends Constraint
-{
-}
diff --git a/vendor/symfony/validator/Tests/Fixtures/InvalidConstraintValidator.php b/vendor/symfony/validator/Tests/Fixtures/InvalidConstraintValidator.php
deleted file mode 100644
index bd9a5cf..0000000
--- a/vendor/symfony/validator/Tests/Fixtures/InvalidConstraintValidator.php
+++ /dev/null
@@ -1,16 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Fixtures;
-
-class InvalidConstraintValidator
-{
-}
diff --git a/vendor/symfony/validator/Tests/Fixtures/LegacyClassMetadata.php b/vendor/symfony/validator/Tests/Fixtures/LegacyClassMetadata.php
deleted file mode 100644
index 6a832a1..0000000
--- a/vendor/symfony/validator/Tests/Fixtures/LegacyClassMetadata.php
+++ /dev/null
@@ -1,20 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Fixtures;
-
-use Symfony\Component\Validator\ClassBasedInterface;
-use Symfony\Component\Validator\MetadataInterface;
-use Symfony\Component\Validator\PropertyMetadataContainerInterface;
-
-interface LegacyClassMetadata extends MetadataInterface, PropertyMetadataContainerInterface, ClassBasedInterface
-{
-}
diff --git a/vendor/symfony/validator/Tests/Fixtures/PropertyConstraint.php b/vendor/symfony/validator/Tests/Fixtures/PropertyConstraint.php
deleted file mode 100644
index fadb535..0000000
--- a/vendor/symfony/validator/Tests/Fixtures/PropertyConstraint.php
+++ /dev/null
@@ -1,22 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Fixtures;
-
-use Symfony\Component\Validator\Constraint;
-
-class PropertyConstraint extends Constraint
-{
-    public function getTargets()
-    {
-        return self::PROPERTY_CONSTRAINT;
-    }
-}
diff --git a/vendor/symfony/validator/Tests/Fixtures/Reference.php b/vendor/symfony/validator/Tests/Fixtures/Reference.php
deleted file mode 100644
index af29735..0000000
--- a/vendor/symfony/validator/Tests/Fixtures/Reference.php
+++ /dev/null
@@ -1,29 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Fixtures;
-
-class Reference
-{
-    public $value;
-
-    private $privateValue;
-
-    public function setPrivateValue($privateValue)
-    {
-        $this->privateValue = $privateValue;
-    }
-
-    public function getPrivateValue()
-    {
-        return $this->privateValue;
-    }
-}
diff --git a/vendor/symfony/validator/Tests/Fixtures/StubGlobalExecutionContext.php b/vendor/symfony/validator/Tests/Fixtures/StubGlobalExecutionContext.php
deleted file mode 100644
index 84c5a80..0000000
--- a/vendor/symfony/validator/Tests/Fixtures/StubGlobalExecutionContext.php
+++ /dev/null
@@ -1,70 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Fixtures;
-
-use Symfony\Component\Validator\ConstraintViolationList;
-use Symfony\Component\Validator\GlobalExecutionContextInterface;
-use Symfony\Component\Validator\ValidationVisitorInterface;
-
-/**
- * @since 2.5.3
- *
- * @author Bernhard Schussek <bschussek@gmail.com>
- *
- * @deprecated since version 2.5, to be removed in 3.0
- */
-class StubGlobalExecutionContext implements GlobalExecutionContextInterface
-{
-    private $violations;
-    private $root;
-    private $visitor;
-
-    public function __construct($root = null, ValidationVisitorInterface $visitor = null)
-    {
-        $this->violations = new ConstraintViolationList();
-        $this->root = $root;
-        $this->visitor = $visitor;
-    }
-
-    public function getViolations()
-    {
-        return $this->violations;
-    }
-
-    public function setRoot($root)
-    {
-        $this->root = $root;
-    }
-
-    public function getRoot()
-    {
-        return $this->root;
-    }
-
-    public function setVisitor(ValidationVisitorInterface $visitor)
-    {
-        $this->visitor = $visitor;
-    }
-
-    public function getVisitor()
-    {
-        return $this->visitor;
-    }
-
-    public function getValidatorFactory()
-    {
-    }
-
-    public function getMetadataFactory()
-    {
-    }
-}
diff --git a/vendor/symfony/validator/Tests/LegacyExecutionContextTest.php b/vendor/symfony/validator/Tests/LegacyExecutionContextTest.php
deleted file mode 100644
index f0139c0..0000000
--- a/vendor/symfony/validator/Tests/LegacyExecutionContextTest.php
+++ /dev/null
@@ -1,334 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests;
-
-use Symfony\Component\Validator\Constraints\Collection;
-use Symfony\Component\Validator\Constraints\All;
-use Symfony\Component\Validator\ConstraintValidatorFactory;
-use Symfony\Component\Validator\ConstraintViolation;
-use Symfony\Component\Validator\ConstraintViolationList;
-use Symfony\Component\Validator\ExecutionContext;
-use Symfony\Component\Validator\Tests\Fixtures\ConstraintA;
-use Symfony\Component\Validator\ValidationVisitor;
-
-/**
- * @group legacy
- */
-class LegacyExecutionContextTest extends \PHPUnit_Framework_TestCase
-{
-    const TRANS_DOMAIN = 'trans_domain';
-
-    private $visitor;
-    private $violations;
-    private $metadata;
-    private $metadataFactory;
-    private $globalContext;
-    private $translator;
-
-    /**
-     * @var ExecutionContext
-     */
-    private $context;
-
-    protected function setUp()
-    {
-        $this->visitor = $this->getMockBuilder('Symfony\Component\Validator\ValidationVisitor')
-            ->disableOriginalConstructor()
-            ->getMock();
-        $this->violations = new ConstraintViolationList();
-        $this->metadata = $this->getMock('Symfony\Component\Validator\MetadataInterface');
-        $this->metadataFactory = $this->getMock('Symfony\Component\Validator\MetadataFactoryInterface');
-        $this->globalContext = $this->getMock('Symfony\Component\Validator\GlobalExecutionContextInterface');
-        $this->globalContext->expects($this->any())
-            ->method('getRoot')
-            ->will($this->returnValue('Root'));
-        $this->globalContext->expects($this->any())
-            ->method('getViolations')
-            ->will($this->returnValue($this->violations));
-        $this->globalContext->expects($this->any())
-            ->method('getVisitor')
-            ->will($this->returnValue($this->visitor));
-        $this->globalContext->expects($this->any())
-            ->method('getMetadataFactory')
-            ->will($this->returnValue($this->metadataFactory));
-        $this->translator = $this->getMock('Symfony\Component\Translation\TranslatorInterface');
-        $this->context = new ExecutionContext($this->globalContext, $this->translator, self::TRANS_DOMAIN, $this->metadata, 'currentValue', 'Group', 'foo.bar');
-    }
-
-    protected function tearDown()
-    {
-        $this->globalContext = null;
-        $this->context = null;
-    }
-
-    public function testInit()
-    {
-        $this->assertCount(0, $this->context->getViolations());
-        $this->assertSame('Root', $this->context->getRoot());
-        $this->assertSame('foo.bar', $this->context->getPropertyPath());
-        $this->assertSame('Group', $this->context->getGroup());
-    }
-
-    public function testClone()
-    {
-        $clone = clone $this->context;
-
-        // Cloning the context keeps the reference to the original violation
-        // list. This way we can efficiently duplicate context instances during
-        // the validation run and only modify the properties that need to be
-        // changed.
-        $this->assertSame($this->context->getViolations(), $clone->getViolations());
-    }
-
-    public function testAddViolation()
-    {
-        $this->translator->expects($this->once())
-            ->method('trans')
-            ->with('Error', array('foo' => 'bar'))
-            ->will($this->returnValue('Translated error'));
-
-        $this->context->addViolation('Error', array('foo' => 'bar'), 'invalid');
-
-        $this->assertEquals(new ConstraintViolationList(array(
-            new ConstraintViolation(
-                'Translated error',
-                'Error',
-                array('foo' => 'bar'),
-                'Root',
-                'foo.bar',
-                'invalid'
-            ),
-        )), $this->context->getViolations());
-    }
-
-    public function testAddViolationUsesPreconfiguredValueIfNotPassed()
-    {
-        $this->translator->expects($this->once())
-            ->method('trans')
-            ->with('Error', array())
-            ->will($this->returnValue('Translated error'));
-
-        $this->context->addViolation('Error');
-
-        $this->assertEquals(new ConstraintViolationList(array(
-            new ConstraintViolation(
-                'Translated error',
-                'Error',
-                array(),
-                'Root',
-                'foo.bar',
-                'currentValue'
-            ),
-        )), $this->context->getViolations());
-    }
-
-    public function testAddViolationUsesPassedNullValue()
-    {
-        $this->translator->expects($this->once())
-            ->method('trans')
-            ->with('Error', array('foo1' => 'bar1'))
-            ->will($this->returnValue('Translated error'));
-        $this->translator->expects($this->once())
-            ->method('transChoice')
-            ->with('Choice error', 1, array('foo2' => 'bar2'))
-            ->will($this->returnValue('Translated choice error'));
-
-        // passed null value should override preconfigured value "invalid"
-        $this->context->addViolation('Error', array('foo1' => 'bar1'), null);
-        $this->context->addViolation('Choice error', array('foo2' => 'bar2'), null, 1);
-
-        $this->assertEquals(new ConstraintViolationList(array(
-            new ConstraintViolation(
-                'Translated error',
-                'Error',
-                array('foo1' => 'bar1'),
-                'Root',
-                'foo.bar',
-                null
-            ),
-            new ConstraintViolation(
-                'Translated choice error',
-                'Choice error',
-                array('foo2' => 'bar2'),
-                'Root',
-                'foo.bar',
-                null,
-                1
-            ),
-        )), $this->context->getViolations());
-    }
-
-    public function testAddViolationAt()
-    {
-        $this->translator->expects($this->once())
-            ->method('trans')
-            ->with('Error', array('foo' => 'bar'))
-            ->will($this->returnValue('Translated error'));
-
-        // override preconfigured property path
-        $this->context->addViolationAt('bam.baz', 'Error', array('foo' => 'bar'), 'invalid');
-
-        $this->assertEquals(new ConstraintViolationList(array(
-            new ConstraintViolation(
-                'Translated error',
-                'Error',
-                array('foo' => 'bar'),
-                'Root',
-                'foo.bar.bam.baz',
-                'invalid'
-            ),
-        )), $this->context->getViolations());
-    }
-
-    public function testAddViolationAtUsesPreconfiguredValueIfNotPassed()
-    {
-        $this->translator->expects($this->once())
-            ->method('trans')
-            ->with('Error', array())
-            ->will($this->returnValue('Translated error'));
-
-        $this->context->addViolationAt('bam.baz', 'Error');
-
-        $this->assertEquals(new ConstraintViolationList(array(
-            new ConstraintViolation(
-                'Translated error',
-                'Error',
-                array(),
-                'Root',
-                'foo.bar.bam.baz',
-                'currentValue'
-            ),
-        )), $this->context->getViolations());
-    }
-
-    public function testAddViolationAtUsesPassedNullValue()
-    {
-        $this->translator->expects($this->once())
-            ->method('trans')
-            ->with('Error', array('foo' => 'bar'))
-            ->will($this->returnValue('Translated error'));
-        $this->translator->expects($this->once())
-            ->method('transChoice')
-            ->with('Choice error', 2, array('foo' => 'bar'))
-            ->will($this->returnValue('Translated choice error'));
-
-        // passed null value should override preconfigured value "invalid"
-        $this->context->addViolationAt('bam.baz', 'Error', array('foo' => 'bar'), null);
-        $this->context->addViolationAt('bam.baz', 'Choice error', array('foo' => 'bar'), null, 2);
-
-        $this->assertEquals(new ConstraintViolationList(array(
-            new ConstraintViolation(
-                'Translated error',
-                'Error',
-                array('foo' => 'bar'),
-                'Root',
-                'foo.bar.bam.baz',
-                null
-            ),
-            new ConstraintViolation(
-                'Translated choice error',
-                'Choice error',
-                array('foo' => 'bar'),
-                'Root',
-                'foo.bar.bam.baz',
-                null,
-                2
-            ),
-        )), $this->context->getViolations());
-    }
-
-    public function testAddViolationPluralTranslationError()
-    {
-        $this->translator->expects($this->once())
-            ->method('transChoice')
-            ->with('foo')
-            ->will($this->throwException(new \InvalidArgumentException()));
-        $this->translator->expects($this->once())
-            ->method('trans')
-            ->with('foo');
-
-        $this->context->addViolation('foo', array(), null, 2);
-    }
-
-    public function testGetPropertyPath()
-    {
-        $this->assertEquals('foo.bar', $this->context->getPropertyPath());
-    }
-
-    public function testGetPropertyPathWithIndexPath()
-    {
-        $this->assertEquals('foo.bar[bam]', $this->context->getPropertyPath('[bam]'));
-    }
-
-    public function testGetPropertyPathWithEmptyPath()
-    {
-        $this->assertEquals('foo.bar', $this->context->getPropertyPath(''));
-    }
-
-    public function testGetPropertyPathWithEmptyCurrentPropertyPath()
-    {
-        $this->context = new ExecutionContext($this->globalContext, $this->translator, self::TRANS_DOMAIN, $this->metadata, 'currentValue', 'Group', '');
-
-        $this->assertEquals('bam.baz', $this->context->getPropertyPath('bam.baz'));
-    }
-
-    public function testGetPropertyPathWithNestedCollectionsAndAllMixed()
-    {
-        $constraints = new Collection(array(
-            'shelves' => new All(array('constraints' => array(
-                new Collection(array(
-                    'name' => new ConstraintA(),
-                    'books' => new All(array('constraints' => array(
-                        new ConstraintA(),
-                    ))),
-                )),
-            ))),
-            'name' => new ConstraintA(),
-        ));
-        $data = array(
-            'shelves' => array(
-                array(
-                    'name' => 'Research',
-                    'books' => array('foo', 'bar'),
-                ),
-                array(
-                    'name' => 'VALID',
-                    'books' => array('foozy', 'VALID', 'bazzy'),
-                ),
-            ),
-            'name' => 'Library',
-        );
-        $expectedViolationPaths = array(
-            '[shelves][0][name]',
-            '[shelves][0][books][0]',
-            '[shelves][0][books][1]',
-            '[shelves][1][books][0]',
-            '[shelves][1][books][2]',
-            '[name]',
-        );
-
-        $visitor = new ValidationVisitor('Root', $this->metadataFactory, new ConstraintValidatorFactory(), $this->translator);
-        $context = new ExecutionContext($visitor, $this->translator, self::TRANS_DOMAIN);
-        $context->validateValue($data, $constraints);
-
-        foreach ($context->getViolations() as $violation) {
-            $violationPaths[] = $violation->getPropertyPath();
-        }
-
-        $this->assertEquals($expectedViolationPaths, $violationPaths);
-    }
-}
-
-class ExecutionContextTest_TestClass
-{
-    public $myProperty;
-}
diff --git a/vendor/symfony/validator/Tests/LegacyValidatorTest.php b/vendor/symfony/validator/Tests/LegacyValidatorTest.php
deleted file mode 100644
index a38f1ab..0000000
--- a/vendor/symfony/validator/Tests/LegacyValidatorTest.php
+++ /dev/null
@@ -1,42 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests;
-
-use Symfony\Component\Translation\IdentityTranslator;
-use Symfony\Component\Validator\Constraints\Valid;
-use Symfony\Component\Validator\ConstraintValidatorFactory;
-use Symfony\Component\Validator\MetadataFactoryInterface;
-use Symfony\Component\Validator\Tests\Fixtures\Entity;
-use Symfony\Component\Validator\Tests\Validator\AbstractLegacyApiTest;
-use Symfony\Component\Validator\Validator as LegacyValidator;
-
-/**
- * @group legacy
- */
-class LegacyValidatorTest extends AbstractLegacyApiTest
-{
-    protected function createValidator(MetadataFactoryInterface $metadataFactory, array $objectInitializers = array())
-    {
-        $translator = new IdentityTranslator();
-        $translator->setLocale('en');
-
-        return new LegacyValidator($metadataFactory, new ConstraintValidatorFactory(), $translator, 'validators', $objectInitializers);
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Validator\Exception\ValidatorException
-     */
-    public function testValidateValueRejectsValid()
-    {
-        $this->validator->validateValue(new Entity(), new Valid());
-    }
-}
diff --git a/vendor/symfony/validator/Tests/Mapping/Cache/DoctrineCacheTest.php b/vendor/symfony/validator/Tests/Mapping/Cache/DoctrineCacheTest.php
deleted file mode 100644
index a2de306..0000000
--- a/vendor/symfony/validator/Tests/Mapping/Cache/DoctrineCacheTest.php
+++ /dev/null
@@ -1,84 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Mapping\Cache;
-
-use Doctrine\Common\Cache\ArrayCache;
-use Symfony\Component\Validator\Mapping\Cache\DoctrineCache;
-
-class DoctrineCacheTest extends \PHPUnit_Framework_TestCase
-{
-    private $cache;
-
-    public function testWrite()
-    {
-        $meta = $this->getMockBuilder('Symfony\\Component\\Validator\\Mapping\\ClassMetadata')
-            ->disableOriginalConstructor()
-            ->setMethods(array('getClassName'))
-            ->getMock();
-
-        $meta->expects($this->once())
-            ->method('getClassName')
-            ->will($this->returnValue('bar'));
-
-        $this->cache->write($meta);
-
-        $this->assertInstanceOf(
-            'Symfony\\Component\\Validator\\Mapping\\ClassMetadata',
-            $this->cache->read('bar'),
-            'write() stores metadata'
-        );
-    }
-
-    public function testHas()
-    {
-        $meta = $this->getMockBuilder('Symfony\\Component\\Validator\\Mapping\\ClassMetadata')
-            ->disableOriginalConstructor()
-            ->setMethods(array('getClassName'))
-            ->getMock();
-
-        $meta->expects($this->once())
-            ->method('getClassName')
-            ->will($this->returnValue('bar'));
-
-        $this->assertFalse($this->cache->has('bar'), 'has() returns false when there is no entry');
-
-        $this->cache->write($meta);
-        $this->assertTrue($this->cache->has('bar'), 'has() returns true when the is an entry');
-    }
-
-    public function testRead()
-    {
-        $meta = $this->getMockBuilder('Symfony\\Component\\Validator\\Mapping\\ClassMetadata')
-            ->disableOriginalConstructor()
-            ->setMethods(array('getClassName'))
-            ->getMock();
-
-        $meta->expects($this->once())
-            ->method('getClassName')
-            ->will($this->returnValue('bar'));
-
-        $this->assertFalse($this->cache->read('bar'), 'read() returns false when there is no entry');
-
-        $this->cache->write($meta);
-
-        $this->assertInstanceOf(
-            'Symfony\\Component\\Validator\\Mapping\\ClassMetadata',
-            $this->cache->read('bar'),
-            'read() returns metadata'
-        );
-    }
-
-    protected function setUp()
-    {
-        $this->cache = new DoctrineCache(new ArrayCache());
-    }
-}
diff --git a/vendor/symfony/validator/Tests/Mapping/Cache/LegacyApcCacheTest.php b/vendor/symfony/validator/Tests/Mapping/Cache/LegacyApcCacheTest.php
deleted file mode 100644
index 9d39784..0000000
--- a/vendor/symfony/validator/Tests/Mapping/Cache/LegacyApcCacheTest.php
+++ /dev/null
@@ -1,81 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Mapping\Cache;
-
-use Symfony\Component\Validator\Mapping\Cache\ApcCache;
-
-/**
- * @group legacy
- */
-class LegacyApcCacheTest extends \PHPUnit_Framework_TestCase
-{
-    protected function setUp()
-    {
-        if (!extension_loaded('apc') || !ini_get('apc.enable_cli')) {
-            $this->markTestSkipped('APC is not loaded.');
-        }
-    }
-
-    public function testWrite()
-    {
-        $meta = $this->getMockBuilder('Symfony\\Component\\Validator\\Mapping\\ClassMetadata')
-            ->disableOriginalConstructor()
-            ->setMethods(array('getClassName'))
-            ->getMock();
-
-        $meta->expects($this->once())
-            ->method('getClassName')
-            ->will($this->returnValue('bar'));
-
-        $cache = new ApcCache('foo');
-        $cache->write($meta);
-
-        $this->assertInstanceOf('Symfony\\Component\\Validator\\Mapping\\ClassMetadata', apc_fetch('foobar'), '->write() stores metadata in APC');
-    }
-
-    public function testHas()
-    {
-        $meta = $this->getMockBuilder('Symfony\\Component\\Validator\\Mapping\\ClassMetadata')
-            ->disableOriginalConstructor()
-            ->setMethods(array('getClassName'))
-            ->getMock();
-
-        $meta->expects($this->once())
-            ->method('getClassName')
-            ->will($this->returnValue('bar'));
-
-        apc_delete('foobar');
-
-        $cache = new ApcCache('foo');
-        $this->assertFalse($cache->has('bar'), '->has() returns false when there is no entry');
-
-        $cache->write($meta);
-        $this->assertTrue($cache->has('bar'), '->has() returns true when the is an entry');
-    }
-
-    public function testRead()
-    {
-        $meta = $this->getMockBuilder('Symfony\\Component\\Validator\\Mapping\\ClassMetadata')
-            ->disableOriginalConstructor()
-            ->setMethods(array('getClassName'))
-            ->getMock();
-
-        $meta->expects($this->once())
-            ->method('getClassName')
-            ->will($this->returnValue('bar'));
-
-        $cache = new ApcCache('foo');
-        $cache->write($meta);
-
-        $this->assertInstanceOf('Symfony\\Component\\Validator\\Mapping\\ClassMetadata', $cache->read('bar'), '->read() returns metadata');
-    }
-}
diff --git a/vendor/symfony/validator/Tests/Mapping/ClassMetadataTest.php b/vendor/symfony/validator/Tests/Mapping/ClassMetadataTest.php
deleted file mode 100644
index a238b17..0000000
--- a/vendor/symfony/validator/Tests/Mapping/ClassMetadataTest.php
+++ /dev/null
@@ -1,280 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Mapping;
-
-use Symfony\Component\Validator\Constraint;
-use Symfony\Component\Validator\Constraints\Valid;
-use Symfony\Component\Validator\Mapping\ClassMetadata;
-use Symfony\Component\Validator\Tests\Fixtures\ConstraintA;
-use Symfony\Component\Validator\Tests\Fixtures\ConstraintB;
-use Symfony\Component\Validator\Tests\Fixtures\PropertyConstraint;
-
-class ClassMetadataTest extends \PHPUnit_Framework_TestCase
-{
-    const CLASSNAME = 'Symfony\Component\Validator\Tests\Fixtures\Entity';
-    const PARENTCLASS = 'Symfony\Component\Validator\Tests\Fixtures\EntityParent';
-    const PROVIDERCLASS = 'Symfony\Component\Validator\Tests\Fixtures\GroupSequenceProviderEntity';
-
-    protected $metadata;
-
-    protected function setUp()
-    {
-        $this->metadata = new ClassMetadata(self::CLASSNAME);
-    }
-
-    protected function tearDown()
-    {
-        $this->metadata = null;
-    }
-
-    public function testAddConstraintDoesNotAcceptValid()
-    {
-        $this->setExpectedException('Symfony\Component\Validator\Exception\ConstraintDefinitionException');
-
-        $this->metadata->addConstraint(new Valid());
-    }
-
-    public function testAddConstraintRequiresClassConstraints()
-    {
-        $this->setExpectedException('Symfony\Component\Validator\Exception\ConstraintDefinitionException');
-
-        $this->metadata->addConstraint(new PropertyConstraint());
-    }
-
-    public function testAddPropertyConstraints()
-    {
-        $this->metadata->addPropertyConstraint('firstName', new ConstraintA());
-        $this->metadata->addPropertyConstraint('lastName', new ConstraintB());
-
-        $this->assertEquals(array('firstName', 'lastName'), $this->metadata->getConstrainedProperties());
-    }
-
-    public function testAddMultiplePropertyConstraints()
-    {
-        $this->metadata->addPropertyConstraints('lastName', array(new ConstraintA(), new ConstraintB()));
-
-        $constraints = array(
-            new ConstraintA(array('groups' => array('Default', 'Entity'))),
-            new ConstraintB(array('groups' => array('Default', 'Entity'))),
-        );
-
-        $properties = $this->metadata->getPropertyMetadata('lastName');
-
-        $this->assertCount(1, $properties);
-        $this->assertEquals('lastName', $properties[0]->getName());
-        $this->assertEquals($constraints, $properties[0]->getConstraints());
-    }
-
-    public function testAddGetterConstraints()
-    {
-        $this->metadata->addGetterConstraint('lastName', new ConstraintA());
-        $this->metadata->addGetterConstraint('lastName', new ConstraintB());
-
-        $constraints = array(
-            new ConstraintA(array('groups' => array('Default', 'Entity'))),
-            new ConstraintB(array('groups' => array('Default', 'Entity'))),
-        );
-
-        $properties = $this->metadata->getPropertyMetadata('lastName');
-
-        $this->assertCount(1, $properties);
-        $this->assertEquals('getLastName', $properties[0]->getName());
-        $this->assertEquals($constraints, $properties[0]->getConstraints());
-    }
-
-    public function testAddMultipleGetterConstraints()
-    {
-        $this->metadata->addGetterConstraints('lastName', array(new ConstraintA(), new ConstraintB()));
-
-        $constraints = array(
-            new ConstraintA(array('groups' => array('Default', 'Entity'))),
-            new ConstraintB(array('groups' => array('Default', 'Entity'))),
-        );
-
-        $properties = $this->metadata->getPropertyMetadata('lastName');
-
-        $this->assertCount(1, $properties);
-        $this->assertEquals('getLastName', $properties[0]->getName());
-        $this->assertEquals($constraints, $properties[0]->getConstraints());
-    }
-
-    public function testMergeConstraintsMergesClassConstraints()
-    {
-        $parent = new ClassMetadata(self::PARENTCLASS);
-        $parent->addConstraint(new ConstraintA());
-
-        $this->metadata->mergeConstraints($parent);
-        $this->metadata->addConstraint(new ConstraintA());
-
-        $constraints = array(
-            new ConstraintA(array('groups' => array(
-                'Default',
-                'EntityParent',
-                'Entity',
-            ))),
-            new ConstraintA(array('groups' => array(
-                'Default',
-                'Entity',
-            ))),
-        );
-
-        $this->assertEquals($constraints, $this->metadata->getConstraints());
-    }
-
-    public function testMergeConstraintsMergesMemberConstraints()
-    {
-        $parent = new ClassMetadata(self::PARENTCLASS);
-        $parent->addPropertyConstraint('firstName', new ConstraintA());
-
-        $this->metadata->mergeConstraints($parent);
-        $this->metadata->addPropertyConstraint('firstName', new ConstraintA());
-
-        $constraints = array(
-            new ConstraintA(array('groups' => array(
-                'Default',
-                'EntityParent',
-                'Entity',
-            ))),
-            new ConstraintA(array('groups' => array(
-                'Default',
-                'Entity',
-            ))),
-        );
-
-        $members = $this->metadata->getPropertyMetadata('firstName');
-
-        $this->assertCount(1, $members);
-        $this->assertEquals(self::PARENTCLASS, $members[0]->getClassName());
-        $this->assertEquals($constraints, $members[0]->getConstraints());
-    }
-
-    public function testMemberMetadatas()
-    {
-        $this->metadata->addPropertyConstraint('firstName', new ConstraintA());
-
-        $this->assertTrue($this->metadata->hasPropertyMetadata('firstName'));
-        $this->assertFalse($this->metadata->hasPropertyMetadata('non_existent_field'));
-    }
-
-    public function testMergeConstraintsKeepsPrivateMembersSeparate()
-    {
-        $parent = new ClassMetadata(self::PARENTCLASS);
-        $parent->addPropertyConstraint('internal', new ConstraintA());
-
-        $this->metadata->mergeConstraints($parent);
-        $this->metadata->addPropertyConstraint('internal', new ConstraintA());
-
-        $parentConstraints = array(
-            new ConstraintA(array('groups' => array(
-                'Default',
-                'EntityParent',
-                'Entity',
-            ))),
-        );
-        $constraints = array(
-            new ConstraintA(array('groups' => array(
-                'Default',
-                'Entity',
-            ))),
-        );
-
-        $members = $this->metadata->getPropertyMetadata('internal');
-
-        $this->assertCount(2, $members);
-        $this->assertEquals(self::PARENTCLASS, $members[0]->getClassName());
-        $this->assertEquals($parentConstraints, $members[0]->getConstraints());
-        $this->assertEquals(self::CLASSNAME, $members[1]->getClassName());
-        $this->assertEquals($constraints, $members[1]->getConstraints());
-    }
-
-    public function testGetReflectionClass()
-    {
-        $reflClass = new \ReflectionClass(self::CLASSNAME);
-
-        $this->assertEquals($reflClass, $this->metadata->getReflectionClass());
-    }
-
-    public function testSerialize()
-    {
-        $this->metadata->addConstraint(new ConstraintA(array('property1' => 'A')));
-        $this->metadata->addConstraint(new ConstraintB(array('groups' => 'TestGroup')));
-        $this->metadata->addPropertyConstraint('firstName', new ConstraintA());
-        $this->metadata->addGetterConstraint('lastName', new ConstraintB());
-
-        $metadata = unserialize(serialize($this->metadata));
-
-        $this->assertEquals($this->metadata, $metadata);
-    }
-
-    public function testGroupSequencesWorkIfContainingDefaultGroup()
-    {
-        $this->metadata->setGroupSequence(array('Foo', $this->metadata->getDefaultGroup()));
-    }
-
-    public function testGroupSequencesFailIfNotContainingDefaultGroup()
-    {
-        $this->setExpectedException('Symfony\Component\Validator\Exception\GroupDefinitionException');
-
-        $this->metadata->setGroupSequence(array('Foo', 'Bar'));
-    }
-
-    public function testGroupSequencesFailIfContainingDefault()
-    {
-        $this->setExpectedException('Symfony\Component\Validator\Exception\GroupDefinitionException');
-
-        $this->metadata->setGroupSequence(array('Foo', $this->metadata->getDefaultGroup(), Constraint::DEFAULT_GROUP));
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Validator\Exception\GroupDefinitionException
-     */
-    public function testGroupSequenceFailsIfGroupSequenceProviderIsSet()
-    {
-        $metadata = new ClassMetadata(self::PROVIDERCLASS);
-        $metadata->setGroupSequenceProvider(true);
-        $metadata->setGroupSequence(array('GroupSequenceProviderEntity', 'Foo'));
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Validator\Exception\GroupDefinitionException
-     */
-    public function testGroupSequenceProviderFailsIfGroupSequenceIsSet()
-    {
-        $metadata = new ClassMetadata(self::PROVIDERCLASS);
-        $metadata->setGroupSequence(array('GroupSequenceProviderEntity', 'Foo'));
-        $metadata->setGroupSequenceProvider(true);
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Validator\Exception\GroupDefinitionException
-     */
-    public function testGroupSequenceProviderFailsIfDomainClassIsInvalid()
-    {
-        $metadata = new ClassMetadata('stdClass');
-        $metadata->setGroupSequenceProvider(true);
-    }
-
-    public function testGroupSequenceProvider()
-    {
-        $metadata = new ClassMetadata(self::PROVIDERCLASS);
-        $metadata->setGroupSequenceProvider(true);
-        $this->assertTrue($metadata->isGroupSequenceProvider());
-    }
-
-    /**
-     * https://github.com/symfony/symfony/issues/11604.
-     */
-    public function testGetPropertyMetadataReturnsEmptyArrayWithoutConfiguredMetadata()
-    {
-        $this->assertCount(0, $this->metadata->getPropertyMetadata('foo'), '->getPropertyMetadata() returns an empty collection if no metadata is configured for the given property');
-    }
-}
diff --git a/vendor/symfony/validator/Tests/Mapping/Factory/BlackHoleMetadataFactoryTest.php b/vendor/symfony/validator/Tests/Mapping/Factory/BlackHoleMetadataFactoryTest.php
deleted file mode 100644
index 641bf91..0000000
--- a/vendor/symfony/validator/Tests/Mapping/Factory/BlackHoleMetadataFactoryTest.php
+++ /dev/null
@@ -1,33 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Mapping\Factory;
-
-use Symfony\Component\Validator\Mapping\Factory\BlackHoleMetadataFactory;
-
-class BlackHoleMetadataFactoryTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @expectedException \LogicException
-     */
-    public function testGetMetadataForThrowsALogicException()
-    {
-        $metadataFactory = new BlackHoleMetadataFactory();
-        $metadataFactory->getMetadataFor('foo');
-    }
-
-    public function testHasMetadataForReturnsFalse()
-    {
-        $metadataFactory = new BlackHoleMetadataFactory();
-
-        $this->assertFalse($metadataFactory->hasMetadataFor('foo'));
-    }
-}
diff --git a/vendor/symfony/validator/Tests/Mapping/Factory/LazyLoadingMetadataFactoryTest.php b/vendor/symfony/validator/Tests/Mapping/Factory/LazyLoadingMetadataFactoryTest.php
deleted file mode 100644
index 74ee912..0000000
--- a/vendor/symfony/validator/Tests/Mapping/Factory/LazyLoadingMetadataFactoryTest.php
+++ /dev/null
@@ -1,118 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Mapping\Factory;
-
-use Symfony\Component\Validator\Mapping\ClassMetadata;
-use Symfony\Component\Validator\Mapping\Factory\LazyLoadingMetadataFactory;
-use Symfony\Component\Validator\Mapping\Loader\LoaderInterface;
-use Symfony\Component\Validator\Tests\Fixtures\ConstraintA;
-
-class LazyLoadingMetadataFactoryTest extends \PHPUnit_Framework_TestCase
-{
-    const CLASSNAME = 'Symfony\Component\Validator\Tests\Fixtures\Entity';
-    const PARENTCLASS = 'Symfony\Component\Validator\Tests\Fixtures\EntityParent';
-
-    public function testLoadClassMetadata()
-    {
-        $factory = new LazyLoadingMetadataFactory(new TestLoader());
-        $metadata = $factory->getMetadataFor(self::PARENTCLASS);
-
-        $constraints = array(
-            new ConstraintA(array('groups' => array('Default', 'EntityParent'))),
-        );
-
-        $this->assertEquals($constraints, $metadata->getConstraints());
-    }
-
-    public function testMergeParentConstraints()
-    {
-        $factory = new LazyLoadingMetadataFactory(new TestLoader());
-        $metadata = $factory->getMetadataFor(self::CLASSNAME);
-
-        $constraints = array(
-            new ConstraintA(array('groups' => array(
-                'Default',
-                'EntityParent',
-                'Entity',
-            ))),
-            new ConstraintA(array('groups' => array(
-                'Default',
-                'EntityInterface',
-                'Entity',
-            ))),
-            new ConstraintA(array('groups' => array(
-                'Default',
-                'Entity',
-            ))),
-        );
-
-        $this->assertEquals($constraints, $metadata->getConstraints());
-    }
-
-    public function testWriteMetadataToCache()
-    {
-        $cache = $this->getMock('Symfony\Component\Validator\Mapping\Cache\CacheInterface');
-        $factory = new LazyLoadingMetadataFactory(new TestLoader(), $cache);
-
-        $tester = $this;
-        $constraints = array(
-            new ConstraintA(array('groups' => array('Default', 'EntityParent'))),
-        );
-
-        $cache->expects($this->never())
-              ->method('has');
-        $cache->expects($this->once())
-              ->method('read')
-              ->with($this->equalTo(self::PARENTCLASS))
-              ->will($this->returnValue(false));
-        $cache->expects($this->once())
-              ->method('write')
-              ->will($this->returnCallback(function ($metadata) use ($tester, $constraints) {
-                  $tester->assertEquals($constraints, $metadata->getConstraints());
-              }));
-
-        $metadata = $factory->getMetadataFor(self::PARENTCLASS);
-
-        $this->assertEquals(self::PARENTCLASS, $metadata->getClassName());
-        $this->assertEquals($constraints, $metadata->getConstraints());
-    }
-
-    public function testReadMetadataFromCache()
-    {
-        $loader = $this->getMock('Symfony\Component\Validator\Mapping\Loader\LoaderInterface');
-        $cache = $this->getMock('Symfony\Component\Validator\Mapping\Cache\CacheInterface');
-        $factory = new LazyLoadingMetadataFactory($loader, $cache);
-
-        $tester = $this;
-        $metadata = new ClassMetadata(self::PARENTCLASS);
-        $metadata->addConstraint(new ConstraintA());
-
-        $loader->expects($this->never())
-               ->method('loadClassMetadata');
-
-        $cache->expects($this->never())
-              ->method('has');
-        $cache->expects($this->once())
-              ->method('read')
-              ->will($this->returnValue($metadata));
-
-        $this->assertEquals($metadata, $factory->getMetadataFor(self::PARENTCLASS));
-    }
-}
-
-class TestLoader implements LoaderInterface
-{
-    public function loadClassMetadata(ClassMetadata $metadata)
-    {
-        $metadata->addConstraint(new ConstraintA());
-    }
-}
diff --git a/vendor/symfony/validator/Tests/Mapping/GetterMetadataTest.php b/vendor/symfony/validator/Tests/Mapping/GetterMetadataTest.php
deleted file mode 100644
index 0781599..0000000
--- a/vendor/symfony/validator/Tests/Mapping/GetterMetadataTest.php
+++ /dev/null
@@ -1,62 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Mapping;
-
-use Symfony\Component\Validator\Mapping\GetterMetadata;
-use Symfony\Component\Validator\Tests\Fixtures\Entity;
-
-class GetterMetadataTest extends \PHPUnit_Framework_TestCase
-{
-    const CLASSNAME = 'Symfony\Component\Validator\Tests\Fixtures\Entity';
-
-    public function testInvalidPropertyName()
-    {
-        $this->setExpectedException('Symfony\Component\Validator\Exception\ValidatorException');
-
-        new GetterMetadata(self::CLASSNAME, 'foobar');
-    }
-
-    public function testGetPropertyValueFromPublicGetter()
-    {
-        // private getters don't work yet because ReflectionMethod::setAccessible()
-        // does not exist yet in a stable PHP release
-
-        $entity = new Entity('foobar');
-        $metadata = new GetterMetadata(self::CLASSNAME, 'internal');
-
-        $this->assertEquals('foobar from getter', $metadata->getPropertyValue($entity));
-    }
-
-    public function testGetPropertyValueFromOverriddenPublicGetter()
-    {
-        $entity = new Entity();
-        $metadata = new GetterMetadata(self::CLASSNAME, 'data');
-
-        $this->assertEquals('Overridden data', $metadata->getPropertyValue($entity));
-    }
-
-    public function testGetPropertyValueFromIsser()
-    {
-        $entity = new Entity();
-        $metadata = new GetterMetadata(self::CLASSNAME, 'valid');
-
-        $this->assertEquals('valid', $metadata->getPropertyValue($entity));
-    }
-
-    public function testGetPropertyValueFromHasser()
-    {
-        $entity = new Entity();
-        $metadata = new GetterMetadata(self::CLASSNAME, 'permissions');
-
-        $this->assertEquals('permissions', $metadata->getPropertyValue($entity));
-    }
-}
diff --git a/vendor/symfony/validator/Tests/Mapping/LegacyElementMetadataTest.php b/vendor/symfony/validator/Tests/Mapping/LegacyElementMetadataTest.php
deleted file mode 100644
index b68c882..0000000
--- a/vendor/symfony/validator/Tests/Mapping/LegacyElementMetadataTest.php
+++ /dev/null
@@ -1,78 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Mapping;
-
-use Symfony\Component\Validator\Mapping\ElementMetadata;
-use Symfony\Component\Validator\Tests\Fixtures\ConstraintA;
-use Symfony\Component\Validator\Tests\Fixtures\ConstraintB;
-
-/**
- * @group legacy
- */
-class LegacyElementMetadataTest extends \PHPUnit_Framework_TestCase
-{
-    protected $metadata;
-
-    protected function setUp()
-    {
-        $this->metadata = new TestElementMetadata();
-    }
-
-    protected function tearDown()
-    {
-        $this->metadata = null;
-    }
-
-    public function testAddConstraints()
-    {
-        $this->metadata->addConstraint($constraint1 = new ConstraintA());
-        $this->metadata->addConstraint($constraint2 = new ConstraintA());
-
-        $this->assertEquals(array($constraint1, $constraint2), $this->metadata->getConstraints());
-    }
-
-    public function testMultipleConstraintsOfTheSameType()
-    {
-        $constraint1 = new ConstraintA(array('property1' => 'A'));
-        $constraint2 = new ConstraintA(array('property1' => 'B'));
-
-        $this->metadata->addConstraint($constraint1);
-        $this->metadata->addConstraint($constraint2);
-
-        $this->assertEquals(array($constraint1, $constraint2), $this->metadata->getConstraints());
-    }
-
-    public function testFindConstraintsByGroup()
-    {
-        $constraint1 = new ConstraintA(array('groups' => 'TestGroup'));
-        $constraint2 = new ConstraintB();
-
-        $this->metadata->addConstraint($constraint1);
-        $this->metadata->addConstraint($constraint2);
-
-        $this->assertEquals(array($constraint1), $this->metadata->findConstraints('TestGroup'));
-    }
-
-    public function testSerialize()
-    {
-        $this->metadata->addConstraint(new ConstraintA(array('property1' => 'A')));
-        $this->metadata->addConstraint(new ConstraintB(array('groups' => 'TestGroup')));
-
-        $metadata = unserialize(serialize($this->metadata));
-
-        $this->assertEquals($this->metadata, $metadata);
-    }
-}
-
-class TestElementMetadata extends ElementMetadata
-{
-}
diff --git a/vendor/symfony/validator/Tests/Mapping/Loader/AbstractStaticMethodLoader.php b/vendor/symfony/validator/Tests/Mapping/Loader/AbstractStaticMethodLoader.php
deleted file mode 100644
index 08f219d..0000000
--- a/vendor/symfony/validator/Tests/Mapping/Loader/AbstractStaticMethodLoader.php
+++ /dev/null
@@ -1,10 +0,0 @@
-<?php
-
-namespace Symfony\Component\Validator\Tests\Mapping\Loader;
-
-use Symfony\Component\Validator\Mapping\ClassMetadata;
-
-abstract class AbstractStaticMethodLoader
-{
-    abstract public static function loadMetadata(ClassMetadata $metadata);
-}
diff --git a/vendor/symfony/validator/Tests/Mapping/Loader/AnnotationLoaderTest.php b/vendor/symfony/validator/Tests/Mapping/Loader/AnnotationLoaderTest.php
deleted file mode 100644
index 5a2beff..0000000
--- a/vendor/symfony/validator/Tests/Mapping/Loader/AnnotationLoaderTest.php
+++ /dev/null
@@ -1,162 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Mapping\Loader;
-
-use Doctrine\Common\Annotations\AnnotationReader;
-use Symfony\Component\Validator\Constraints\All;
-use Symfony\Component\Validator\Constraints\Callback;
-use Symfony\Component\Validator\Constraints\Choice;
-use Symfony\Component\Validator\Constraints\Collection;
-use Symfony\Component\Validator\Constraints\NotNull;
-use Symfony\Component\Validator\Constraints\Range;
-use Symfony\Component\Validator\Constraints\IsTrue;
-use Symfony\Component\Validator\Mapping\ClassMetadata;
-use Symfony\Component\Validator\Mapping\Loader\AnnotationLoader;
-use Symfony\Component\Validator\Tests\Fixtures\ConstraintA;
-
-class AnnotationLoaderTest extends \PHPUnit_Framework_TestCase
-{
-    public function testLoadClassMetadataReturnsTrueIfSuccessful()
-    {
-        $reader = new AnnotationReader();
-        $loader = new AnnotationLoader($reader);
-        $metadata = new ClassMetadata('Symfony\Component\Validator\Tests\Fixtures\Entity');
-
-        $this->assertTrue($loader->loadClassMetadata($metadata));
-    }
-
-    public function testLoadClassMetadataReturnsFalseIfNotSuccessful()
-    {
-        $loader = new AnnotationLoader(new AnnotationReader());
-        $metadata = new ClassMetadata('\stdClass');
-
-        $this->assertFalse($loader->loadClassMetadata($metadata));
-    }
-
-    public function testLoadClassMetadata()
-    {
-        $loader = new AnnotationLoader(new AnnotationReader());
-        $metadata = new ClassMetadata('Symfony\Component\Validator\Tests\Fixtures\Entity');
-
-        $loader->loadClassMetadata($metadata);
-
-        $expected = new ClassMetadata('Symfony\Component\Validator\Tests\Fixtures\Entity');
-        $expected->setGroupSequence(array('Foo', 'Entity'));
-        $expected->addConstraint(new ConstraintA());
-        $expected->addConstraint(new Callback(array('Symfony\Component\Validator\Tests\Fixtures\CallbackClass', 'callback')));
-        $expected->addConstraint(new Callback('validateMe'));
-        $expected->addConstraint(new Callback('validateMeStatic'));
-        $expected->addPropertyConstraint('firstName', new NotNull());
-        $expected->addPropertyConstraint('firstName', new Range(array('min' => 3)));
-        $expected->addPropertyConstraint('firstName', new All(array(new NotNull(), new Range(array('min' => 3)))));
-        $expected->addPropertyConstraint('firstName', new All(array('constraints' => array(new NotNull(), new Range(array('min' => 3))))));
-        $expected->addPropertyConstraint('firstName', new Collection(array('fields' => array(
-            'foo' => array(new NotNull(), new Range(array('min' => 3))),
-            'bar' => new Range(array('min' => 5)),
-        ))));
-        $expected->addPropertyConstraint('firstName', new Choice(array(
-            'message' => 'Must be one of %choices%',
-            'choices' => array('A', 'B'),
-        )));
-        $expected->addGetterConstraint('lastName', new NotNull());
-        $expected->addGetterConstraint('valid', new IsTrue());
-        $expected->addGetterConstraint('permissions', new IsTrue());
-
-        // load reflection class so that the comparison passes
-        $expected->getReflectionClass();
-
-        $this->assertEquals($expected, $metadata);
-    }
-
-    /**
-     * Test MetaData merge with parent annotation.
-     */
-    public function testLoadParentClassMetadata()
-    {
-        $loader = new AnnotationLoader(new AnnotationReader());
-
-        // Load Parent MetaData
-        $parent_metadata = new ClassMetadata('Symfony\Component\Validator\Tests\Fixtures\EntityParent');
-        $loader->loadClassMetadata($parent_metadata);
-
-        $expected_parent = new ClassMetadata('Symfony\Component\Validator\Tests\Fixtures\EntityParent');
-        $expected_parent->addPropertyConstraint('other', new NotNull());
-        $expected_parent->getReflectionClass();
-
-        $this->assertEquals($expected_parent, $parent_metadata);
-    }
-    /**
-     * Test MetaData merge with parent annotation.
-     */
-    public function testLoadClassMetadataAndMerge()
-    {
-        $loader = new AnnotationLoader(new AnnotationReader());
-
-        // Load Parent MetaData
-        $parent_metadata = new ClassMetadata('Symfony\Component\Validator\Tests\Fixtures\EntityParent');
-        $loader->loadClassMetadata($parent_metadata);
-
-        $metadata = new ClassMetadata('Symfony\Component\Validator\Tests\Fixtures\Entity');
-
-        // Merge parent metaData.
-        $metadata->mergeConstraints($parent_metadata);
-
-        $loader->loadClassMetadata($metadata);
-
-        $expected_parent = new ClassMetadata('Symfony\Component\Validator\Tests\Fixtures\EntityParent');
-        $expected_parent->addPropertyConstraint('other', new NotNull());
-        $expected_parent->getReflectionClass();
-
-        $expected = new ClassMetadata('Symfony\Component\Validator\Tests\Fixtures\Entity');
-        $expected->mergeConstraints($expected_parent);
-
-        $expected->setGroupSequence(array('Foo', 'Entity'));
-        $expected->addConstraint(new ConstraintA());
-        $expected->addConstraint(new Callback(array('Symfony\Component\Validator\Tests\Fixtures\CallbackClass', 'callback')));
-        $expected->addConstraint(new Callback('validateMe'));
-        $expected->addConstraint(new Callback('validateMeStatic'));
-        $expected->addPropertyConstraint('firstName', new NotNull());
-        $expected->addPropertyConstraint('firstName', new Range(array('min' => 3)));
-        $expected->addPropertyConstraint('firstName', new All(array(new NotNull(), new Range(array('min' => 3)))));
-        $expected->addPropertyConstraint('firstName', new All(array('constraints' => array(new NotNull(), new Range(array('min' => 3))))));
-        $expected->addPropertyConstraint('firstName', new Collection(array('fields' => array(
-            'foo' => array(new NotNull(), new Range(array('min' => 3))),
-            'bar' => new Range(array('min' => 5)),
-        ))));
-        $expected->addPropertyConstraint('firstName', new Choice(array(
-            'message' => 'Must be one of %choices%',
-            'choices' => array('A', 'B'),
-        )));
-        $expected->addGetterConstraint('lastName', new NotNull());
-        $expected->addGetterConstraint('valid', new IsTrue());
-        $expected->addGetterConstraint('permissions', new IsTrue());
-
-        // load reflection class so that the comparison passes
-        $expected->getReflectionClass();
-
-        $this->assertEquals($expected, $metadata);
-    }
-
-    public function testLoadGroupSequenceProviderAnnotation()
-    {
-        $loader = new AnnotationLoader(new AnnotationReader());
-
-        $metadata = new ClassMetadata('Symfony\Component\Validator\Tests\Fixtures\GroupSequenceProviderEntity');
-        $loader->loadClassMetadata($metadata);
-
-        $expected = new ClassMetadata('Symfony\Component\Validator\Tests\Fixtures\GroupSequenceProviderEntity');
-        $expected->setGroupSequenceProvider(true);
-        $expected->getReflectionClass();
-
-        $this->assertEquals($expected, $metadata);
-    }
-}
diff --git a/vendor/symfony/validator/Tests/Mapping/Loader/FilesLoaderTest.php b/vendor/symfony/validator/Tests/Mapping/Loader/FilesLoaderTest.php
deleted file mode 100644
index 09e6e44..0000000
--- a/vendor/symfony/validator/Tests/Mapping/Loader/FilesLoaderTest.php
+++ /dev/null
@@ -1,48 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Mapping\Loader;
-
-use Symfony\Component\Validator\Mapping\ClassMetadata;
-use Symfony\Component\Validator\Mapping\Loader\LoaderInterface;
-
-class FilesLoaderTest extends \PHPUnit_Framework_TestCase
-{
-    public function testCallsGetFileLoaderInstanceForeachPath()
-    {
-        $loader = $this->getFilesLoader($this->getFileLoader());
-        $this->assertEquals(4, $loader->getTimesCalled());
-    }
-
-    public function testCallsActualFileLoaderForMetadata()
-    {
-        $fileLoader = $this->getFileLoader();
-        $fileLoader->expects($this->exactly(4))
-            ->method('loadClassMetadata');
-        $loader = $this->getFilesLoader($fileLoader);
-        $loader->loadClassMetadata(new ClassMetadata('Symfony\Component\Validator\Tests\Fixtures\Entity'));
-    }
-
-    public function getFilesLoader(LoaderInterface $loader)
-    {
-        return $this->getMockForAbstractClass('Symfony\Component\Validator\Tests\Fixtures\FilesLoader', array(array(
-            __DIR__.'/constraint-mapping.xml',
-            __DIR__.'/constraint-mapping.yaml',
-            __DIR__.'/constraint-mapping.test',
-            __DIR__.'/constraint-mapping.txt',
-        ), $loader));
-    }
-
-    public function getFileLoader()
-    {
-        return $this->getMock('Symfony\Component\Validator\Mapping\Loader\LoaderInterface');
-    }
-}
diff --git a/vendor/symfony/validator/Tests/Mapping/Loader/LoaderChainTest.php b/vendor/symfony/validator/Tests/Mapping/Loader/LoaderChainTest.php
deleted file mode 100644
index 647a568..0000000
--- a/vendor/symfony/validator/Tests/Mapping/Loader/LoaderChainTest.php
+++ /dev/null
@@ -1,84 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Mapping\Loader;
-
-use Symfony\Component\Validator\Mapping\ClassMetadata;
-use Symfony\Component\Validator\Mapping\Loader\LoaderChain;
-
-class LoaderChainTest extends \PHPUnit_Framework_TestCase
-{
-    public function testAllLoadersAreCalled()
-    {
-        $metadata = new ClassMetadata('\stdClass');
-
-        $loader1 = $this->getMock('Symfony\Component\Validator\Mapping\Loader\LoaderInterface');
-        $loader1->expects($this->once())
-                        ->method('loadClassMetadata')
-                        ->with($this->equalTo($metadata));
-
-        $loader2 = $this->getMock('Symfony\Component\Validator\Mapping\Loader\LoaderInterface');
-        $loader2->expects($this->once())
-                        ->method('loadClassMetadata')
-                        ->with($this->equalTo($metadata));
-
-        $chain = new LoaderChain(array(
-            $loader1,
-            $loader2,
-        ));
-
-        $chain->loadClassMetadata($metadata);
-    }
-
-    public function testReturnsTrueIfAnyLoaderReturnedTrue()
-    {
-        $metadata = new ClassMetadata('\stdClass');
-
-        $loader1 = $this->getMock('Symfony\Component\Validator\Mapping\Loader\LoaderInterface');
-        $loader1->expects($this->any())
-                        ->method('loadClassMetadata')
-                        ->will($this->returnValue(true));
-
-        $loader2 = $this->getMock('Symfony\Component\Validator\Mapping\Loader\LoaderInterface');
-        $loader2->expects($this->any())
-                        ->method('loadClassMetadata')
-                        ->will($this->returnValue(false));
-
-        $chain = new LoaderChain(array(
-            $loader1,
-            $loader2,
-        ));
-
-        $this->assertTrue($chain->loadClassMetadata($metadata));
-    }
-
-    public function testReturnsFalseIfNoLoaderReturnedTrue()
-    {
-        $metadata = new ClassMetadata('\stdClass');
-
-        $loader1 = $this->getMock('Symfony\Component\Validator\Mapping\Loader\LoaderInterface');
-        $loader1->expects($this->any())
-                        ->method('loadClassMetadata')
-                        ->will($this->returnValue(false));
-
-        $loader2 = $this->getMock('Symfony\Component\Validator\Mapping\Loader\LoaderInterface');
-        $loader2->expects($this->any())
-                        ->method('loadClassMetadata')
-                        ->will($this->returnValue(false));
-
-        $chain = new LoaderChain(array(
-            $loader1,
-            $loader2,
-        ));
-
-        $this->assertFalse($chain->loadClassMetadata($metadata));
-    }
-}
diff --git a/vendor/symfony/validator/Tests/Mapping/Loader/StaticMethodLoaderTest.php b/vendor/symfony/validator/Tests/Mapping/Loader/StaticMethodLoaderTest.php
deleted file mode 100644
index 5829336..0000000
--- a/vendor/symfony/validator/Tests/Mapping/Loader/StaticMethodLoaderTest.php
+++ /dev/null
@@ -1,143 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Mapping\Loader;
-
-use Symfony\Component\Validator\Mapping\ClassMetadata;
-use Symfony\Component\Validator\Mapping\Loader\StaticMethodLoader;
-use Symfony\Component\Validator\Tests\Fixtures\ConstraintA;
-
-class StaticMethodLoaderTest extends \PHPUnit_Framework_TestCase
-{
-    private $errorLevel;
-
-    protected function setUp()
-    {
-        $this->errorLevel = error_reporting();
-    }
-
-    protected function tearDown()
-    {
-        error_reporting($this->errorLevel);
-    }
-
-    public function testLoadClassMetadataReturnsTrueIfSuccessful()
-    {
-        $loader = new StaticMethodLoader('loadMetadata');
-        $metadata = new ClassMetadata(__NAMESPACE__.'\StaticLoaderEntity');
-
-        $this->assertTrue($loader->loadClassMetadata($metadata));
-    }
-
-    public function testLoadClassMetadataReturnsFalseIfNotSuccessful()
-    {
-        $loader = new StaticMethodLoader('loadMetadata');
-        $metadata = new ClassMetadata('\stdClass');
-
-        $this->assertFalse($loader->loadClassMetadata($metadata));
-    }
-
-    public function testLoadClassMetadata()
-    {
-        $loader = new StaticMethodLoader('loadMetadata');
-        $metadata = new ClassMetadata(__NAMESPACE__.'\StaticLoaderEntity');
-
-        $loader->loadClassMetadata($metadata);
-
-        $this->assertEquals(StaticLoaderEntity::$invokedWith, $metadata);
-    }
-
-    public function testLoadClassMetadataDoesNotRepeatLoadWithParentClasses()
-    {
-        $loader = new StaticMethodLoader('loadMetadata');
-        $metadata = new ClassMetadata(__NAMESPACE__.'\StaticLoaderDocument');
-        $loader->loadClassMetadata($metadata);
-        $this->assertCount(0, $metadata->getConstraints());
-
-        $loader = new StaticMethodLoader('loadMetadata');
-        $metadata = new ClassMetadata(__NAMESPACE__.'\BaseStaticLoaderDocument');
-        $loader->loadClassMetadata($metadata);
-        $this->assertCount(1, $metadata->getConstraints());
-    }
-
-    public function testLoadClassMetadataIgnoresInterfaces()
-    {
-        $loader = new StaticMethodLoader('loadMetadata');
-        $metadata = new ClassMetadata(__NAMESPACE__.'\StaticLoaderInterface');
-
-        $loader->loadClassMetadata($metadata);
-
-        $this->assertCount(0, $metadata->getConstraints());
-    }
-
-    public function testLoadClassMetadataInAbstractClasses()
-    {
-        $loader = new StaticMethodLoader('loadMetadata');
-        $metadata = new ClassMetadata(__NAMESPACE__.'\AbstractStaticLoader');
-
-        $loader->loadClassMetadata($metadata);
-
-        $this->assertCount(1, $metadata->getConstraints());
-    }
-
-    public function testLoadClassMetadataIgnoresAbstractMethods()
-    {
-        // Disable error reporting, as AbstractStaticMethodLoader produces a
-        // strict standards error
-        error_reporting(0);
-
-        if (0 !== error_reporting()) {
-            $this->markTestSkipped('Could not disable error reporting');
-        }
-
-        $metadata = new ClassMetadata(__NAMESPACE__.'\AbstractStaticMethodLoader');
-
-        $loader = new StaticMethodLoader('loadMetadata');
-        $loader->loadClassMetadata($metadata);
-
-        $this->assertCount(0, $metadata->getConstraints());
-    }
-}
-
-interface StaticLoaderInterface
-{
-    public static function loadMetadata(ClassMetadata $metadata);
-}
-
-abstract class AbstractStaticLoader
-{
-    public static function loadMetadata(ClassMetadata $metadata)
-    {
-        $metadata->addConstraint(new ConstraintA());
-    }
-}
-
-class StaticLoaderEntity
-{
-    public static $invokedWith = null;
-
-    public static function loadMetadata(ClassMetadata $metadata)
-    {
-        self::$invokedWith = $metadata;
-    }
-}
-
-class StaticLoaderDocument extends BaseStaticLoaderDocument
-{
-}
-
-class BaseStaticLoaderDocument
-{
-    public static function loadMetadata(ClassMetadata $metadata)
-    {
-        $metadata->addConstraint(new ConstraintA());
-    }
-}
diff --git a/vendor/symfony/validator/Tests/Mapping/Loader/XmlFileLoaderTest.php b/vendor/symfony/validator/Tests/Mapping/Loader/XmlFileLoaderTest.php
deleted file mode 100644
index e6326b9..0000000
--- a/vendor/symfony/validator/Tests/Mapping/Loader/XmlFileLoaderTest.php
+++ /dev/null
@@ -1,133 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Mapping\Loader;
-
-use Symfony\Component\Validator\Constraints\All;
-use Symfony\Component\Validator\Constraints\Callback;
-use Symfony\Component\Validator\Constraints\Choice;
-use Symfony\Component\Validator\Constraints\Collection;
-use Symfony\Component\Validator\Constraints\NotNull;
-use Symfony\Component\Validator\Constraints\Range;
-use Symfony\Component\Validator\Constraints\Regex;
-use Symfony\Component\Validator\Constraints\IsTrue;
-use Symfony\Component\Validator\Exception\MappingException;
-use Symfony\Component\Validator\Mapping\ClassMetadata;
-use Symfony\Component\Validator\Mapping\Loader\XmlFileLoader;
-use Symfony\Component\Validator\Tests\Fixtures\ConstraintA;
-use Symfony\Component\Validator\Tests\Fixtures\ConstraintB;
-
-class XmlFileLoaderTest extends \PHPUnit_Framework_TestCase
-{
-    public function testLoadClassMetadataReturnsTrueIfSuccessful()
-    {
-        $loader = new XmlFileLoader(__DIR__.'/constraint-mapping.xml');
-        $metadata = new ClassMetadata('Symfony\Component\Validator\Tests\Fixtures\Entity');
-
-        $this->assertTrue($loader->loadClassMetadata($metadata));
-    }
-
-    public function testLoadClassMetadataReturnsFalseIfNotSuccessful()
-    {
-        $loader = new XmlFileLoader(__DIR__.'/constraint-mapping.xml');
-        $metadata = new ClassMetadata('\stdClass');
-
-        $this->assertFalse($loader->loadClassMetadata($metadata));
-    }
-
-    public function testLoadClassMetadata()
-    {
-        $loader = new XmlFileLoader(__DIR__.'/constraint-mapping.xml');
-        $metadata = new ClassMetadata('Symfony\Component\Validator\Tests\Fixtures\Entity');
-
-        $loader->loadClassMetadata($metadata);
-
-        $expected = new ClassMetadata('Symfony\Component\Validator\Tests\Fixtures\Entity');
-        $expected->setGroupSequence(array('Foo', 'Entity'));
-        $expected->addConstraint(new ConstraintA());
-        $expected->addConstraint(new ConstraintB());
-        $expected->addConstraint(new Callback('validateMe'));
-        $expected->addConstraint(new Callback('validateMeStatic'));
-        $expected->addConstraint(new Callback(array('Symfony\Component\Validator\Tests\Fixtures\CallbackClass', 'callback')));
-        $expected->addPropertyConstraint('firstName', new NotNull());
-        $expected->addPropertyConstraint('firstName', new Range(array('min' => 3)));
-        $expected->addPropertyConstraint('firstName', new Choice(array('A', 'B')));
-        $expected->addPropertyConstraint('firstName', new All(array(new NotNull(), new Range(array('min' => 3)))));
-        $expected->addPropertyConstraint('firstName', new All(array('constraints' => array(new NotNull(), new Range(array('min' => 3))))));
-        $expected->addPropertyConstraint('firstName', new Collection(array('fields' => array(
-            'foo' => array(new NotNull(), new Range(array('min' => 3))),
-            'bar' => array(new Range(array('min' => 5))),
-        ))));
-        $expected->addPropertyConstraint('firstName', new Choice(array(
-            'message' => 'Must be one of %choices%',
-            'choices' => array('A', 'B'),
-        )));
-        $expected->addGetterConstraint('lastName', new NotNull());
-        $expected->addGetterConstraint('valid', new IsTrue());
-        $expected->addGetterConstraint('permissions', new IsTrue());
-
-        $this->assertEquals($expected, $metadata);
-    }
-
-    public function testLoadClassMetadataWithNonStrings()
-    {
-        $loader = new XmlFileLoader(__DIR__.'/constraint-mapping-non-strings.xml');
-        $metadata = new ClassMetadata('Symfony\Component\Validator\Tests\Fixtures\Entity');
-
-        $loader->loadClassMetadata($metadata);
-
-        $expected = new ClassMetadata('Symfony\Component\Validator\Tests\Fixtures\Entity');
-        $expected->addPropertyConstraint('firstName', new Regex(array('pattern' => '/^1/', 'match' => false)));
-
-        $properties = $metadata->getPropertyMetadata('firstName');
-        $constraints = $properties[0]->getConstraints();
-
-        $this->assertFalse($constraints[0]->match);
-    }
-
-    public function testLoadGroupSequenceProvider()
-    {
-        $loader = new XmlFileLoader(__DIR__.'/constraint-mapping.xml');
-        $metadata = new ClassMetadata('Symfony\Component\Validator\Tests\Fixtures\GroupSequenceProviderEntity');
-
-        $loader->loadClassMetadata($metadata);
-
-        $expected = new ClassMetadata('Symfony\Component\Validator\Tests\Fixtures\GroupSequenceProviderEntity');
-        $expected->setGroupSequenceProvider(true);
-
-        $this->assertEquals($expected, $metadata);
-    }
-
-    public function testThrowExceptionIfDocTypeIsSet()
-    {
-        $loader = new XmlFileLoader(__DIR__.'/withdoctype.xml');
-        $metadata = new ClassMetadata('Symfony\Component\Validator\Tests\Fixtures\Entity');
-
-        $this->setExpectedException('\Symfony\Component\Validator\Exception\MappingException');
-        $loader->loadClassMetadata($metadata);
-    }
-
-    /**
-     * @see https://github.com/symfony/symfony/pull/12158
-     */
-    public function testDoNotModifyStateIfExceptionIsThrown()
-    {
-        $loader = new XmlFileLoader(__DIR__.'/withdoctype.xml');
-        $metadata = new ClassMetadata('Symfony\Component\Validator\Tests\Fixtures\Entity');
-
-        try {
-            $loader->loadClassMetadata($metadata);
-        } catch (MappingException $e) {
-            $this->setExpectedException('\Symfony\Component\Validator\Exception\MappingException');
-            $loader->loadClassMetadata($metadata);
-        }
-    }
-}
diff --git a/vendor/symfony/validator/Tests/Mapping/Loader/YamlFileLoaderTest.php b/vendor/symfony/validator/Tests/Mapping/Loader/YamlFileLoaderTest.php
deleted file mode 100644
index 2ca6412..0000000
--- a/vendor/symfony/validator/Tests/Mapping/Loader/YamlFileLoaderTest.php
+++ /dev/null
@@ -1,134 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Mapping\Loader;
-
-use Symfony\Component\Validator\Constraints\All;
-use Symfony\Component\Validator\Constraints\Callback;
-use Symfony\Component\Validator\Constraints\Choice;
-use Symfony\Component\Validator\Constraints\Collection;
-use Symfony\Component\Validator\Constraints\NotNull;
-use Symfony\Component\Validator\Constraints\Range;
-use Symfony\Component\Validator\Constraints\IsTrue;
-use Symfony\Component\Validator\Mapping\ClassMetadata;
-use Symfony\Component\Validator\Mapping\Loader\YamlFileLoader;
-use Symfony\Component\Validator\Tests\Fixtures\ConstraintA;
-use Symfony\Component\Validator\Tests\Fixtures\ConstraintB;
-
-class YamlFileLoaderTest extends \PHPUnit_Framework_TestCase
-{
-    public function testLoadClassMetadataReturnsFalseIfEmpty()
-    {
-        $loader = new YamlFileLoader(__DIR__.'/empty-mapping.yml');
-        $metadata = new ClassMetadata('Symfony\Component\Validator\Tests\Fixtures\Entity');
-
-        $this->assertFalse($loader->loadClassMetadata($metadata));
-    }
-
-    /**
-     * @dataProvider provideInvalidYamlFiles
-     * @expectedException \InvalidArgumentException
-     */
-    public function testInvalidYamlFiles($path)
-    {
-        $loader = new YamlFileLoader(__DIR__.'/'.$path);
-        $metadata = new ClassMetadata('Symfony\Component\Validator\Tests\Fixtures\Entity');
-
-        $loader->loadClassMetadata($metadata);
-    }
-
-    public function provideInvalidYamlFiles()
-    {
-        return array(
-            array('nonvalid-mapping.yml'),
-            array('bad-format.yml'),
-        );
-    }
-
-    /**
-     * @see https://github.com/symfony/symfony/pull/12158
-     */
-    public function testDoNotModifyStateIfExceptionIsThrown()
-    {
-        $loader = new YamlFileLoader(__DIR__.'/nonvalid-mapping.yml');
-        $metadata = new ClassMetadata('Symfony\Component\Validator\Tests\Fixtures\Entity');
-        try {
-            $loader->loadClassMetadata($metadata);
-        } catch (\InvalidArgumentException $e) {
-            // Call again. Again an exception should be thrown
-            $this->setExpectedException('\InvalidArgumentException');
-            $loader->loadClassMetadata($metadata);
-        }
-    }
-
-    public function testLoadClassMetadataReturnsTrueIfSuccessful()
-    {
-        $loader = new YamlFileLoader(__DIR__.'/constraint-mapping.yml');
-        $metadata = new ClassMetadata('Symfony\Component\Validator\Tests\Fixtures\Entity');
-
-        $this->assertTrue($loader->loadClassMetadata($metadata));
-    }
-
-    public function testLoadClassMetadataReturnsFalseIfNotSuccessful()
-    {
-        $loader = new YamlFileLoader(__DIR__.'/constraint-mapping.yml');
-        $metadata = new ClassMetadata('\stdClass');
-
-        $this->assertFalse($loader->loadClassMetadata($metadata));
-    }
-
-    public function testLoadClassMetadata()
-    {
-        $loader = new YamlFileLoader(__DIR__.'/constraint-mapping.yml');
-        $metadata = new ClassMetadata('Symfony\Component\Validator\Tests\Fixtures\Entity');
-
-        $loader->loadClassMetadata($metadata);
-
-        $expected = new ClassMetadata('Symfony\Component\Validator\Tests\Fixtures\Entity');
-        $expected->setGroupSequence(array('Foo', 'Entity'));
-        $expected->addConstraint(new ConstraintA());
-        $expected->addConstraint(new ConstraintB());
-        $expected->addConstraint(new Callback('validateMe'));
-        $expected->addConstraint(new Callback('validateMeStatic'));
-        $expected->addConstraint(new Callback(array('Symfony\Component\Validator\Tests\Fixtures\CallbackClass', 'callback')));
-        $expected->addPropertyConstraint('firstName', new NotNull());
-        $expected->addPropertyConstraint('firstName', new Range(array('min' => 3)));
-        $expected->addPropertyConstraint('firstName', new Choice(array('A', 'B')));
-        $expected->addPropertyConstraint('firstName', new All(array(new NotNull(), new Range(array('min' => 3)))));
-        $expected->addPropertyConstraint('firstName', new All(array('constraints' => array(new NotNull(), new Range(array('min' => 3))))));
-        $expected->addPropertyConstraint('firstName', new Collection(array('fields' => array(
-            'foo' => array(new NotNull(), new Range(array('min' => 3))),
-            'bar' => array(new Range(array('min' => 5))),
-        ))));
-        $expected->addPropertyConstraint('firstName', new Choice(array(
-            'message' => 'Must be one of %choices%',
-            'choices' => array('A', 'B'),
-        )));
-        $expected->addGetterConstraint('lastName', new NotNull());
-        $expected->addGetterConstraint('valid', new IsTrue());
-        $expected->addGetterConstraint('permissions', new IsTrue());
-
-        $this->assertEquals($expected, $metadata);
-    }
-
-    public function testLoadGroupSequenceProvider()
-    {
-        $loader = new YamlFileLoader(__DIR__.'/constraint-mapping.yml');
-        $metadata = new ClassMetadata('Symfony\Component\Validator\Tests\Fixtures\GroupSequenceProviderEntity');
-
-        $loader->loadClassMetadata($metadata);
-
-        $expected = new ClassMetadata('Symfony\Component\Validator\Tests\Fixtures\GroupSequenceProviderEntity');
-        $expected->setGroupSequenceProvider(true);
-
-        $this->assertEquals($expected, $metadata);
-    }
-}
diff --git a/vendor/symfony/validator/Tests/Mapping/Loader/bad-format.yml b/vendor/symfony/validator/Tests/Mapping/Loader/bad-format.yml
deleted file mode 100644
index d2b4ad2..0000000
--- a/vendor/symfony/validator/Tests/Mapping/Loader/bad-format.yml
+++ /dev/null
@@ -1,9 +0,0 @@
-namespaces:
-	custom: Symfony\Component\Validator\Tests\Fixtures\
-
-Symfony\Component\Validator\Tests\Fixtures\Entity:
-	constraints:
-		# Custom constraint
-		- Symfony\Component\Validator\Tests\Fixtures\ConstraintA: ~
-		# Custom constraint with namespaces prefix
-		- "custom:ConstraintB": ~
diff --git a/vendor/symfony/validator/Tests/Mapping/Loader/constraint-mapping-non-strings.xml b/vendor/symfony/validator/Tests/Mapping/Loader/constraint-mapping-non-strings.xml
deleted file mode 100644
index dfd5edd..0000000
--- a/vendor/symfony/validator/Tests/Mapping/Loader/constraint-mapping-non-strings.xml
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0" ?>
-
-<constraint-mapping xmlns="http://symfony.com/schema/dic/constraint-mapping"
-    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-    xsi:schemaLocation="http://symfony.com/schema/dic/constraint-mapping http://symfony.com/schema/dic/constraint-mapping/constraint-mapping-1.0.xsd">
-
-  <namespace prefix="custom">Symfony\Component\Validator\Tests\Fixtures\</namespace>
-
-  <class name="Symfony\Component\Validator\Tests\Fixtures\Entity">
-    <property name="firstName">
-      <!-- Constraint with a Boolean -->
-      <constraint name="Regex">
-          <option name="pattern">/^1/</option>
-          <option name="match">false</option>
-      </constraint>
-    </property>
-  </class>
-
-</constraint-mapping>
diff --git a/vendor/symfony/validator/Tests/Mapping/Loader/constraint-mapping.xml b/vendor/symfony/validator/Tests/Mapping/Loader/constraint-mapping.xml
deleted file mode 100644
index 689184e..0000000
--- a/vendor/symfony/validator/Tests/Mapping/Loader/constraint-mapping.xml
+++ /dev/null
@@ -1,119 +0,0 @@
-<?xml version="1.0" ?>
-
-<constraint-mapping xmlns="http://symfony.com/schema/dic/constraint-mapping"
-    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-    xsi:schemaLocation="http://symfony.com/schema/dic/constraint-mapping http://symfony.com/schema/dic/constraint-mapping/constraint-mapping-1.0.xsd">
-
-  <namespace prefix="custom">Symfony\Component\Validator\Tests\Fixtures\</namespace>
-
-  <class name="Symfony\Component\Validator\Tests\Fixtures\Entity">
-
-    <group-sequence>
-       <value>Foo</value>
-       <value>Entity</value>
-    </group-sequence>
-
-    <!-- CLASS CONSTRAINTS -->
-
-    <!-- Custom constraint -->
-    <constraint name="Symfony\Component\Validator\Tests\Fixtures\ConstraintA" />
-
-    <!-- Custom constraint with namespace abbreviation-->
-    <constraint name="custom:ConstraintB" />
-
-    <!-- Callbacks -->
-    <constraint name="Callback">validateMe</constraint>
-
-    <constraint name="Callback">validateMeStatic</constraint>
-
-    <constraint name="Callback">
-        <value>Symfony\Component\Validator\Tests\Fixtures\CallbackClass</value>
-        <value>callback</value>
-    </constraint>
-
-    <!-- PROPERTY CONSTRAINTS -->
-
-    <property name="firstName">
-
-      <!-- Constraint without value -->
-      <constraint name="NotNull" />
-
-      <!-- Constraint with single value -->
-      <constraint name="Range">
-         <option name="min">3</option>
-      </constraint>
-
-      <!-- Constraint with multiple values -->
-      <constraint name="Choice">
-        <value>A</value>
-        <value>B</value>
-      </constraint>
-
-      <!-- Constraint with child constraints -->
-      <constraint name="All">
-        <constraint name="NotNull" />
-        <constraint name="Range">
-           <option name="min">3</option>
-        </constraint>
-
-      </constraint>
-
-      <!-- Option with child constraints -->
-      <constraint name="All">
-        <option name="constraints">
-          <constraint name="NotNull" />
-          <constraint name="Range">
-             <option name="min">3</option>
-          </constraint>
-        </option>
-      </constraint>
-
-      <!-- Value with child constraints -->
-      <constraint name="Collection">
-        <option name="fields">
-          <value key="foo">
-            <constraint name="NotNull" />
-            <constraint name="Range">
-               <option name="min">3</option>
-            </constraint>
-          </value>
-          <value key="bar">
-            <constraint name="Range">
-               <option name="min">5</option>
-            </constraint>
-          </value>
-        </option>
-      </constraint>
-
-      <!-- Constraint with options -->
-      <constraint name="Choice">
-        <!-- Option with single value -->
-        <option name="message"> Must be one of %choices% </option>
-        <!-- Option with multiple values -->
-        <option name="choices">
-          <value>A</value>
-          <value>B</value>
-        </option>
-      </constraint>
-    </property>
-
-    <!-- GETTER CONSTRAINTS -->
-
-    <getter property="lastName">
-      <constraint name="NotNull" />
-    </getter>
-    <getter property="valid">
-      <constraint name="IsTrue" />
-    </getter>
-    <getter property="permissions">
-      <constraint name="IsTrue" />
-    </getter>
-  </class>
-
-  <class name="Symfony\Component\Validator\Tests\Fixtures\GroupSequenceProviderEntity">
-
-    <!-- GROUP SEQUENCE PROVIDER -->
-    <group-sequence-provider />
-
-  </class>
-</constraint-mapping>
diff --git a/vendor/symfony/validator/Tests/Mapping/Loader/constraint-mapping.yml b/vendor/symfony/validator/Tests/Mapping/Loader/constraint-mapping.yml
deleted file mode 100644
index c39168c..0000000
--- a/vendor/symfony/validator/Tests/Mapping/Loader/constraint-mapping.yml
+++ /dev/null
@@ -1,62 +0,0 @@
-namespaces:
-  custom: Symfony\Component\Validator\Tests\Fixtures\
-
-Symfony\Component\Validator\Tests\Fixtures\Entity:
-  group_sequence:
-    - Foo
-    - Entity
-
-  constraints:
-    # Custom constraint
-    - Symfony\Component\Validator\Tests\Fixtures\ConstraintA: ~
-    # Custom constraint with namespaces prefix
-    - "custom:ConstraintB": ~
-    # Callbacks
-    - Callback: validateMe
-    - Callback: validateMeStatic
-    - Callback: [Symfony\Component\Validator\Tests\Fixtures\CallbackClass, callback]
-
-  properties:
-    firstName:
-      # Constraint without value
-      - NotNull: ~
-      # Constraint with single value
-      - Range:
-          min: 3
-      # Constraint with multiple values
-      - Choice: [A, B]
-      # Constraint with child constraints
-      - All:
-          - NotNull: ~
-          - Range:
-              min: 3
-      # Option with child constraints
-      - All:
-          constraints:
-            - NotNull: ~
-            - Range:
-                min: 3
-      # Value with child constraints
-      - Collection:
-          fields:
-            foo:
-              - NotNull: ~
-              - Range:
-                  min: 3
-            bar:
-              - Range:
-                  min: 5
-      # Constraint with options
-      - Choice: { choices: [A, B], message: Must be one of %choices% }
-    dummy:
-
-  getters:
-    lastName:
-      - NotNull: ~
-    valid:
-      - "IsTrue": ~
-    permissions:
-      - "IsTrue": ~
-
-Symfony\Component\Validator\Tests\Fixtures\GroupSequenceProviderEntity:
-  group_sequence_provider: true
diff --git a/vendor/symfony/validator/Tests/Mapping/Loader/empty-mapping.yml b/vendor/symfony/validator/Tests/Mapping/Loader/empty-mapping.yml
deleted file mode 100644
index e69de29..0000000
diff --git a/vendor/symfony/validator/Tests/Mapping/Loader/nonvalid-mapping.yml b/vendor/symfony/validator/Tests/Mapping/Loader/nonvalid-mapping.yml
deleted file mode 100644
index 257cc56..0000000
--- a/vendor/symfony/validator/Tests/Mapping/Loader/nonvalid-mapping.yml
+++ /dev/null
@@ -1 +0,0 @@
-foo
diff --git a/vendor/symfony/validator/Tests/Mapping/Loader/withdoctype.xml b/vendor/symfony/validator/Tests/Mapping/Loader/withdoctype.xml
deleted file mode 100644
index 0beacc3..0000000
--- a/vendor/symfony/validator/Tests/Mapping/Loader/withdoctype.xml
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0"?>
-<!DOCTYPE foo>
-<constraint-mapping xmlns="http://symfony.com/schema/dic/constraint-mapping"
-    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-    xsi:schemaLocation="http://symfony.com/schema/dic/constraint-mapping http://symfony.com/schema/dic/constraint-mapping/constraint-mapping-1.0.xsd">
-  <class name="Symfony\Component\Validator\Tests\Fixtures\Entity" />
-</constraint-mapping>
diff --git a/vendor/symfony/validator/Tests/Mapping/MemberMetadataTest.php b/vendor/symfony/validator/Tests/Mapping/MemberMetadataTest.php
deleted file mode 100644
index fafde34..0000000
--- a/vendor/symfony/validator/Tests/Mapping/MemberMetadataTest.php
+++ /dev/null
@@ -1,119 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Mapping;
-
-use Symfony\Component\Validator\Constraints\Valid;
-use Symfony\Component\Validator\Mapping\MemberMetadata;
-use Symfony\Component\Validator\Tests\Fixtures\ClassConstraint;
-use Symfony\Component\Validator\Tests\Fixtures\ConstraintA;
-use Symfony\Component\Validator\Tests\Fixtures\ConstraintB;
-
-class MemberMetadataTest extends \PHPUnit_Framework_TestCase
-{
-    protected $metadata;
-
-    protected function setUp()
-    {
-        $this->metadata = new TestMemberMetadata(
-            'Symfony\Component\Validator\Tests\Fixtures\Entity',
-            'getLastName',
-            'lastName'
-        );
-    }
-
-    protected function tearDown()
-    {
-        $this->metadata = null;
-    }
-
-    /**
-     * @group legacy
-     */
-    public function testLegacyAddValidSetsMemberToCascaded()
-    {
-        $result = $this->metadata->addConstraint(new Valid());
-
-        $this->assertEquals(array(), $this->metadata->getConstraints());
-        $this->assertEquals($result, $this->metadata);
-        $this->assertTrue($this->metadata->isCascaded());
-    }
-
-    /**
-     * @group legacy
-     */
-    public function testLegacyAddOtherConstraintDoesNotSetMemberToCascaded()
-    {
-        $result = $this->metadata->addConstraint($constraint = new ConstraintA());
-
-        $this->assertEquals(array($constraint), $this->metadata->getConstraints());
-        $this->assertEquals($result, $this->metadata);
-        $this->assertFalse($this->metadata->isCascaded());
-    }
-
-    public function testAddConstraintRequiresClassConstraints()
-    {
-        $this->setExpectedException('Symfony\Component\Validator\Exception\ConstraintDefinitionException');
-
-        $this->metadata->addConstraint(new ClassConstraint());
-    }
-
-    public function testSerialize()
-    {
-        $this->metadata->addConstraint(new ConstraintA(array('property1' => 'A')));
-        $this->metadata->addConstraint(new ConstraintB(array('groups' => 'TestGroup')));
-
-        $metadata = unserialize(serialize($this->metadata));
-
-        $this->assertEquals($this->metadata, $metadata);
-    }
-
-    public function testSerializeCollectionCascaded()
-    {
-        $this->metadata->addConstraint(new Valid(array('traverse' => true)));
-
-        $metadata = unserialize(serialize($this->metadata));
-
-        $this->assertEquals($this->metadata, $metadata);
-    }
-
-    /**
-     * @group legacy
-     */
-    public function testLegacySerializeCollectionCascadedDeeply()
-    {
-        $this->metadata->addConstraint(new Valid(array('traverse' => true)));
-
-        $metadata = unserialize(serialize($this->metadata));
-
-        $this->assertEquals($this->metadata, $metadata);
-    }
-
-    public function testSerializeCollectionNotCascaded()
-    {
-        $this->metadata->addConstraint(new Valid(array('traverse' => false)));
-
-        $metadata = unserialize(serialize($this->metadata));
-
-        $this->assertEquals($this->metadata, $metadata);
-    }
-}
-
-class TestMemberMetadata extends MemberMetadata
-{
-    public function getPropertyValue($object)
-    {
-    }
-
-    protected function newReflectionMember($object)
-    {
-    }
-}
diff --git a/vendor/symfony/validator/Tests/Mapping/PropertyMetadataTest.php b/vendor/symfony/validator/Tests/Mapping/PropertyMetadataTest.php
deleted file mode 100644
index f411d95..0000000
--- a/vendor/symfony/validator/Tests/Mapping/PropertyMetadataTest.php
+++ /dev/null
@@ -1,45 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Mapping;
-
-use Symfony\Component\Validator\Mapping\PropertyMetadata;
-use Symfony\Component\Validator\Tests\Fixtures\Entity;
-
-class PropertyMetadataTest extends \PHPUnit_Framework_TestCase
-{
-    const CLASSNAME = 'Symfony\Component\Validator\Tests\Fixtures\Entity';
-    const PARENTCLASS = 'Symfony\Component\Validator\Tests\Fixtures\EntityParent';
-
-    public function testInvalidPropertyName()
-    {
-        $this->setExpectedException('Symfony\Component\Validator\Exception\ValidatorException');
-
-        new PropertyMetadata(self::CLASSNAME, 'foobar');
-    }
-
-    public function testGetPropertyValueFromPrivateProperty()
-    {
-        $entity = new Entity('foobar');
-        $metadata = new PropertyMetadata(self::CLASSNAME, 'internal');
-
-        $this->assertEquals('foobar', $metadata->getPropertyValue($entity));
-    }
-
-    public function testGetPropertyValueFromOverriddenPrivateProperty()
-    {
-        $entity = new Entity('foobar');
-        $metadata = new PropertyMetadata(self::PARENTCLASS, 'data');
-
-        $this->assertTrue($metadata->isPublic($entity));
-        $this->assertEquals('Overridden data', $metadata->getPropertyValue($entity));
-    }
-}
diff --git a/vendor/symfony/validator/Tests/Util/PropertyPathTest.php b/vendor/symfony/validator/Tests/Util/PropertyPathTest.php
deleted file mode 100644
index a8b9af9..0000000
--- a/vendor/symfony/validator/Tests/Util/PropertyPathTest.php
+++ /dev/null
@@ -1,36 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Util;
-
-use Symfony\Component\Validator\Util\PropertyPath;
-
-class PropertyPathTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @dataProvider provideAppendPaths
-     */
-    public function testAppend($basePath, $subPath, $expectedPath, $message)
-    {
-        $this->assertSame($expectedPath, PropertyPath::append($basePath, $subPath), $message);
-    }
-
-    public function provideAppendPaths()
-    {
-        return array(
-            array('foo', '', 'foo', 'It returns the basePath if subPath is empty'),
-            array('', 'bar', 'bar', 'It returns the subPath if basePath is empty'),
-            array('foo', 'bar', 'foo.bar', 'It append the subPath to the basePath'),
-            array('foo', '[bar]', 'foo[bar]', 'It does not include the dot separator if subPath uses the array notation'),
-            array('0', 'bar', '0.bar', 'Leading zeros are kept.'),
-        );
-    }
-}
diff --git a/vendor/symfony/validator/Tests/Validator/Abstract2Dot5ApiTest.php b/vendor/symfony/validator/Tests/Validator/Abstract2Dot5ApiTest.php
deleted file mode 100644
index 6995d25..0000000
--- a/vendor/symfony/validator/Tests/Validator/Abstract2Dot5ApiTest.php
+++ /dev/null
@@ -1,724 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Validator;
-
-use Symfony\Component\Validator\Constraints\Callback;
-use Symfony\Component\Validator\Constraints\GroupSequence;
-use Symfony\Component\Validator\Constraints\NotNull;
-use Symfony\Component\Validator\Constraints\Traverse;
-use Symfony\Component\Validator\Constraints\Valid;
-use Symfony\Component\Validator\ConstraintViolationInterface;
-use Symfony\Component\Validator\Context\ExecutionContextInterface;
-use Symfony\Component\Validator\Mapping\ClassMetadata;
-use Symfony\Component\Validator\MetadataFactoryInterface;
-use Symfony\Component\Validator\Tests\Fixtures\Entity;
-use Symfony\Component\Validator\Tests\Fixtures\FailingConstraint;
-use Symfony\Component\Validator\Tests\Fixtures\FakeClassMetadata;
-use Symfony\Component\Validator\Tests\Fixtures\Reference;
-use Symfony\Component\Validator\Validator\ValidatorInterface;
-
-/**
- * Verifies that a validator satisfies the API of Symfony 2.5+.
- *
- * @since  2.5
- *
- * @author Bernhard Schussek <bschussek@gmail.com>
- */
-abstract class Abstract2Dot5ApiTest extends AbstractValidatorTest
-{
-    /**
-     * @var ValidatorInterface
-     */
-    protected $validator;
-
-    /**
-     * @param MetadataFactoryInterface $metadataFactory
-     *
-     * @return ValidatorInterface
-     */
-    abstract protected function createValidator(MetadataFactoryInterface $metadataFactory, array $objectInitializers = array());
-
-    protected function setUp()
-    {
-        parent::setUp();
-
-        $this->validator = $this->createValidator($this->metadataFactory);
-    }
-
-    protected function validate($value, $constraints = null, $groups = null)
-    {
-        return $this->validator->validate($value, $constraints, $groups);
-    }
-
-    protected function validateProperty($object, $propertyName, $groups = null)
-    {
-        return $this->validator->validateProperty($object, $propertyName, $groups);
-    }
-
-    protected function validatePropertyValue($object, $propertyName, $value, $groups = null)
-    {
-        return $this->validator->validatePropertyValue($object, $propertyName, $value, $groups);
-    }
-
-    public function testValidateConstraintWithoutGroup()
-    {
-        $violations = $this->validator->validate(null, new NotNull());
-
-        $this->assertCount(1, $violations);
-    }
-
-    public function testValidateWithEmptyArrayAsConstraint()
-    {
-        $violations = $this->validator->validate('value', array());
-        $this->assertCount(0, $violations);
-    }
-
-    public function testGroupSequenceAbortsAfterFailedGroup()
-    {
-        $entity = new Entity();
-
-        $callback1 = function ($value, ExecutionContextInterface $context) {
-            $context->addViolation('Message 1');
-        };
-        $callback2 = function ($value, ExecutionContextInterface $context) {
-            $context->addViolation('Message 2');
-        };
-
-        $this->metadata->addConstraint(new Callback(array(
-            'callback' => function () {},
-            'groups' => 'Group 1',
-        )));
-        $this->metadata->addConstraint(new Callback(array(
-            'callback' => $callback1,
-            'groups' => 'Group 2',
-        )));
-        $this->metadata->addConstraint(new Callback(array(
-            'callback' => $callback2,
-            'groups' => 'Group 3',
-        )));
-
-        $sequence = new GroupSequence(array('Group 1', 'Group 2', 'Group 3'));
-        $violations = $this->validator->validate($entity, new Valid(), $sequence);
-
-        /* @var ConstraintViolationInterface[] $violations */
-        $this->assertCount(1, $violations);
-        $this->assertSame('Message 1', $violations[0]->getMessage());
-    }
-
-    public function testGroupSequenceIncludesReferences()
-    {
-        $entity = new Entity();
-        $entity->reference = new Reference();
-
-        $callback1 = function ($value, ExecutionContextInterface $context) {
-            $context->addViolation('Reference violation 1');
-        };
-        $callback2 = function ($value, ExecutionContextInterface $context) {
-            $context->addViolation('Reference violation 2');
-        };
-
-        $this->metadata->addPropertyConstraint('reference', new Valid());
-        $this->referenceMetadata->addConstraint(new Callback(array(
-            'callback' => $callback1,
-            'groups' => 'Group 1',
-        )));
-        $this->referenceMetadata->addConstraint(new Callback(array(
-            'callback' => $callback2,
-            'groups' => 'Group 2',
-        )));
-
-        $sequence = new GroupSequence(array('Group 1', 'Entity'));
-        $violations = $this->validator->validate($entity, new Valid(), $sequence);
-
-        /* @var ConstraintViolationInterface[] $violations */
-        $this->assertCount(1, $violations);
-        $this->assertSame('Reference violation 1', $violations[0]->getMessage());
-    }
-
-    public function testValidateInSeparateContext()
-    {
-        $test = $this;
-        $entity = new Entity();
-        $entity->reference = new Reference();
-
-        $callback1 = function ($value, ExecutionContextInterface $context) use ($test, $entity) {
-            $violations = $context
-                ->getValidator()
-                // Since the validator is not context aware, the group must
-                // be passed explicitly
-                ->validate($value->reference, new Valid(), 'Group')
-            ;
-
-            /* @var ConstraintViolationInterface[] $violations */
-            $test->assertCount(1, $violations);
-            $test->assertSame('Message value', $violations[0]->getMessage());
-            $test->assertSame('Message %param%', $violations[0]->getMessageTemplate());
-            $test->assertSame(array('%param%' => 'value'), $violations[0]->getParameters());
-            $test->assertSame('', $violations[0]->getPropertyPath());
-            // The root is different as we're in a new context
-            $test->assertSame($entity->reference, $violations[0]->getRoot());
-            $test->assertSame($entity->reference, $violations[0]->getInvalidValue());
-            $test->assertNull($violations[0]->getPlural());
-            $test->assertNull($violations[0]->getCode());
-
-            // Verify that this method is called
-            $context->addViolation('Separate violation');
-        };
-
-        $callback2 = function ($value, ExecutionContextInterface $context) use ($test, $entity) {
-            $test->assertSame($test::REFERENCE_CLASS, $context->getClassName());
-            $test->assertNull($context->getPropertyName());
-            $test->assertSame('', $context->getPropertyPath());
-            $test->assertSame('Group', $context->getGroup());
-            $test->assertSame($test->referenceMetadata, $context->getMetadata());
-            $test->assertSame($entity->reference, $context->getRoot());
-            $test->assertSame($entity->reference, $context->getValue());
-            $test->assertSame($entity->reference, $value);
-
-            $context->addViolation('Message %param%', array('%param%' => 'value'));
-        };
-
-        $this->metadata->addConstraint(new Callback(array(
-            'callback' => $callback1,
-            'groups' => 'Group',
-        )));
-        $this->referenceMetadata->addConstraint(new Callback(array(
-            'callback' => $callback2,
-            'groups' => 'Group',
-        )));
-
-        $violations = $this->validator->validate($entity, new Valid(), 'Group');
-
-        /* @var ConstraintViolationInterface[] $violations */
-        $this->assertCount(1, $violations);
-        $test->assertSame('Separate violation', $violations[0]->getMessage());
-    }
-
-    public function testValidateInContext()
-    {
-        $test = $this;
-        $entity = new Entity();
-        $entity->reference = new Reference();
-
-        $callback1 = function ($value, ExecutionContextInterface $context) use ($test) {
-            $previousValue = $context->getValue();
-            $previousObject = $context->getObject();
-            $previousMetadata = $context->getMetadata();
-            $previousPath = $context->getPropertyPath();
-            $previousGroup = $context->getGroup();
-
-            $context
-                ->getValidator()
-                ->inContext($context)
-                ->atPath('subpath')
-                ->validate($value->reference)
-            ;
-
-            // context changes shouldn't leak out of the validate() call
-            $test->assertSame($previousValue, $context->getValue());
-            $test->assertSame($previousObject, $context->getObject());
-            $test->assertSame($previousMetadata, $context->getMetadata());
-            $test->assertSame($previousPath, $context->getPropertyPath());
-            $test->assertSame($previousGroup, $context->getGroup());
-        };
-
-        $callback2 = function ($value, ExecutionContextInterface $context) use ($test, $entity) {
-            $test->assertSame($test::REFERENCE_CLASS, $context->getClassName());
-            $test->assertNull($context->getPropertyName());
-            $test->assertSame('subpath', $context->getPropertyPath());
-            $test->assertSame('Group', $context->getGroup());
-            $test->assertSame($test->referenceMetadata, $context->getMetadata());
-            $test->assertSame($entity, $context->getRoot());
-            $test->assertSame($entity->reference, $context->getValue());
-            $test->assertSame($entity->reference, $value);
-
-            $context->addViolation('Message %param%', array('%param%' => 'value'));
-        };
-
-        $this->metadata->addConstraint(new Callback(array(
-            'callback' => $callback1,
-            'groups' => 'Group',
-        )));
-        $this->referenceMetadata->addConstraint(new Callback(array(
-            'callback' => $callback2,
-            'groups' => 'Group',
-        )));
-
-        $violations = $this->validator->validate($entity, new Valid(), 'Group');
-
-        /* @var ConstraintViolationInterface[] $violations */
-        $this->assertCount(1, $violations);
-        $this->assertSame('Message value', $violations[0]->getMessage());
-        $this->assertSame('Message %param%', $violations[0]->getMessageTemplate());
-        $this->assertSame(array('%param%' => 'value'), $violations[0]->getParameters());
-        $this->assertSame('subpath', $violations[0]->getPropertyPath());
-        $this->assertSame($entity, $violations[0]->getRoot());
-        $this->assertSame($entity->reference, $violations[0]->getInvalidValue());
-        $this->assertNull($violations[0]->getPlural());
-        $this->assertNull($violations[0]->getCode());
-    }
-
-    public function testValidateArrayInContext()
-    {
-        $test = $this;
-        $entity = new Entity();
-        $entity->reference = new Reference();
-
-        $callback1 = function ($value, ExecutionContextInterface $context) use ($test) {
-            $previousValue = $context->getValue();
-            $previousObject = $context->getObject();
-            $previousMetadata = $context->getMetadata();
-            $previousPath = $context->getPropertyPath();
-            $previousGroup = $context->getGroup();
-
-            $context
-                ->getValidator()
-                ->inContext($context)
-                ->atPath('subpath')
-                ->validate(array('key' => $value->reference))
-            ;
-
-            // context changes shouldn't leak out of the validate() call
-            $test->assertSame($previousValue, $context->getValue());
-            $test->assertSame($previousObject, $context->getObject());
-            $test->assertSame($previousMetadata, $context->getMetadata());
-            $test->assertSame($previousPath, $context->getPropertyPath());
-            $test->assertSame($previousGroup, $context->getGroup());
-        };
-
-        $callback2 = function ($value, ExecutionContextInterface $context) use ($test, $entity) {
-            $test->assertSame($test::REFERENCE_CLASS, $context->getClassName());
-            $test->assertNull($context->getPropertyName());
-            $test->assertSame('subpath[key]', $context->getPropertyPath());
-            $test->assertSame('Group', $context->getGroup());
-            $test->assertSame($test->referenceMetadata, $context->getMetadata());
-            $test->assertSame($entity, $context->getRoot());
-            $test->assertSame($entity->reference, $context->getValue());
-            $test->assertSame($entity->reference, $value);
-
-            $context->addViolation('Message %param%', array('%param%' => 'value'));
-        };
-
-        $this->metadata->addConstraint(new Callback(array(
-            'callback' => $callback1,
-            'groups' => 'Group',
-        )));
-        $this->referenceMetadata->addConstraint(new Callback(array(
-            'callback' => $callback2,
-            'groups' => 'Group',
-        )));
-
-        $violations = $this->validator->validate($entity, new Valid(), 'Group');
-
-        /* @var ConstraintViolationInterface[] $violations */
-        $this->assertCount(1, $violations);
-        $this->assertSame('Message value', $violations[0]->getMessage());
-        $this->assertSame('Message %param%', $violations[0]->getMessageTemplate());
-        $this->assertSame(array('%param%' => 'value'), $violations[0]->getParameters());
-        $this->assertSame('subpath[key]', $violations[0]->getPropertyPath());
-        $this->assertSame($entity, $violations[0]->getRoot());
-        $this->assertSame($entity->reference, $violations[0]->getInvalidValue());
-        $this->assertNull($violations[0]->getPlural());
-        $this->assertNull($violations[0]->getCode());
-    }
-
-    public function testTraverseTraversableByDefault()
-    {
-        $test = $this;
-        $entity = new Entity();
-        $traversable = new \ArrayIterator(array('key' => $entity));
-
-        $callback = function ($value, ExecutionContextInterface $context) use ($test, $entity, $traversable) {
-            $test->assertSame($test::ENTITY_CLASS, $context->getClassName());
-            $test->assertNull($context->getPropertyName());
-            $test->assertSame('[key]', $context->getPropertyPath());
-            $test->assertSame('Group', $context->getGroup());
-            $test->assertSame($test->metadata, $context->getMetadata());
-            $test->assertSame($traversable, $context->getRoot());
-            $test->assertSame($entity, $context->getValue());
-            $test->assertSame($entity, $value);
-
-            $context->addViolation('Message %param%', array('%param%' => 'value'));
-        };
-
-        $this->metadataFactory->addMetadata(new ClassMetadata('ArrayIterator'));
-        $this->metadata->addConstraint(new Callback(array(
-            'callback' => $callback,
-            'groups' => 'Group',
-        )));
-
-        $violations = $this->validate($traversable, new Valid(), 'Group');
-
-        /* @var ConstraintViolationInterface[] $violations */
-        $this->assertCount(1, $violations);
-        $this->assertSame('Message value', $violations[0]->getMessage());
-        $this->assertSame('Message %param%', $violations[0]->getMessageTemplate());
-        $this->assertSame(array('%param%' => 'value'), $violations[0]->getParameters());
-        $this->assertSame('[key]', $violations[0]->getPropertyPath());
-        $this->assertSame($traversable, $violations[0]->getRoot());
-        $this->assertSame($entity, $violations[0]->getInvalidValue());
-        $this->assertNull($violations[0]->getPlural());
-        $this->assertNull($violations[0]->getCode());
-    }
-
-    public function testTraversalEnabledOnClass()
-    {
-        $entity = new Entity();
-        $traversable = new \ArrayIterator(array('key' => $entity));
-
-        $callback = function ($value, ExecutionContextInterface $context) {
-            $context->addViolation('Message');
-        };
-
-        $traversableMetadata = new ClassMetadata('ArrayIterator');
-        $traversableMetadata->addConstraint(new Traverse(true));
-
-        $this->metadataFactory->addMetadata($traversableMetadata);
-        $this->metadata->addConstraint(new Callback(array(
-            'callback' => $callback,
-            'groups' => 'Group',
-        )));
-
-        $violations = $this->validate($traversable, new Valid(), 'Group');
-
-        /* @var ConstraintViolationInterface[] $violations */
-        $this->assertCount(1, $violations);
-    }
-
-    public function testTraversalDisabledOnClass()
-    {
-        $test = $this;
-        $entity = new Entity();
-        $traversable = new \ArrayIterator(array('key' => $entity));
-
-        $callback = function ($value, ExecutionContextInterface $context) use ($test) {
-            $test->fail('Should not be called');
-        };
-
-        $traversableMetadata = new ClassMetadata('ArrayIterator');
-        $traversableMetadata->addConstraint(new Traverse(false));
-
-        $this->metadataFactory->addMetadata($traversableMetadata);
-        $this->metadata->addConstraint(new Callback(array(
-            'callback' => $callback,
-            'groups' => 'Group',
-        )));
-
-        $violations = $this->validate($traversable, new Valid(), 'Group');
-
-        /* @var ConstraintViolationInterface[] $violations */
-        $this->assertCount(0, $violations);
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Validator\Exception\ConstraintDefinitionException
-     */
-    public function testExpectTraversableIfTraversalEnabledOnClass()
-    {
-        $entity = new Entity();
-
-        $this->metadata->addConstraint(new Traverse(true));
-
-        $this->validator->validate($entity);
-    }
-
-    public function testReferenceTraversalDisabledOnClass()
-    {
-        $test = $this;
-        $entity = new Entity();
-        $entity->reference = new \ArrayIterator(array('key' => new Reference()));
-
-        $callback = function ($value, ExecutionContextInterface $context) use ($test) {
-            $test->fail('Should not be called');
-        };
-
-        $traversableMetadata = new ClassMetadata('ArrayIterator');
-        $traversableMetadata->addConstraint(new Traverse(false));
-
-        $this->metadataFactory->addMetadata($traversableMetadata);
-        $this->referenceMetadata->addConstraint(new Callback(array(
-            'callback' => $callback,
-            'groups' => 'Group',
-        )));
-        $this->metadata->addPropertyConstraint('reference', new Valid());
-
-        $violations = $this->validate($entity, new Valid(), 'Group');
-
-        /* @var ConstraintViolationInterface[] $violations */
-        $this->assertCount(0, $violations);
-    }
-
-    public function testReferenceTraversalEnabledOnReferenceDisabledOnClass()
-    {
-        $test = $this;
-        $entity = new Entity();
-        $entity->reference = new \ArrayIterator(array('key' => new Reference()));
-
-        $callback = function ($value, ExecutionContextInterface $context) use ($test) {
-            $test->fail('Should not be called');
-        };
-
-        $traversableMetadata = new ClassMetadata('ArrayIterator');
-        $traversableMetadata->addConstraint(new Traverse(false));
-
-        $this->metadataFactory->addMetadata($traversableMetadata);
-        $this->referenceMetadata->addConstraint(new Callback(array(
-            'callback' => $callback,
-            'groups' => 'Group',
-        )));
-        $this->metadata->addPropertyConstraint('reference', new Valid(array(
-            'traverse' => true,
-        )));
-
-        $violations = $this->validate($entity, new Valid(), 'Group');
-
-        /* @var ConstraintViolationInterface[] $violations */
-        $this->assertCount(0, $violations);
-    }
-
-    public function testReferenceTraversalDisabledOnReferenceEnabledOnClass()
-    {
-        $test = $this;
-        $entity = new Entity();
-        $entity->reference = new \ArrayIterator(array('key' => new Reference()));
-
-        $callback = function ($value, ExecutionContextInterface $context) use ($test) {
-            $test->fail('Should not be called');
-        };
-
-        $traversableMetadata = new ClassMetadata('ArrayIterator');
-        $traversableMetadata->addConstraint(new Traverse(true));
-
-        $this->metadataFactory->addMetadata($traversableMetadata);
-        $this->referenceMetadata->addConstraint(new Callback(array(
-            'callback' => $callback,
-            'groups' => 'Group',
-        )));
-        $this->metadata->addPropertyConstraint('reference', new Valid(array(
-            'traverse' => false,
-        )));
-
-        $violations = $this->validate($entity, new Valid(), 'Group');
-
-        /* @var ConstraintViolationInterface[] $violations */
-        $this->assertCount(0, $violations);
-    }
-
-    public function testAddCustomizedViolation()
-    {
-        $entity = new Entity();
-
-        $callback = function ($value, ExecutionContextInterface $context) {
-            $context->buildViolation('Message %param%')
-                ->setParameter('%param%', 'value')
-                ->setInvalidValue('Invalid value')
-                ->setPlural(2)
-                ->setCode(42)
-                ->addViolation();
-        };
-
-        $this->metadata->addConstraint(new Callback($callback));
-
-        $violations = $this->validator->validate($entity);
-
-        /* @var ConstraintViolationInterface[] $violations */
-        $this->assertCount(1, $violations);
-        $this->assertSame('Message value', $violations[0]->getMessage());
-        $this->assertSame('Message %param%', $violations[0]->getMessageTemplate());
-        $this->assertSame(array('%param%' => 'value'), $violations[0]->getParameters());
-        $this->assertSame('', $violations[0]->getPropertyPath());
-        $this->assertSame($entity, $violations[0]->getRoot());
-        $this->assertSame('Invalid value', $violations[0]->getInvalidValue());
-        $this->assertSame(2, $violations[0]->getPlural());
-        $this->assertSame(42, $violations[0]->getCode());
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Validator\Exception\UnsupportedMetadataException
-     * @group legacy
-     */
-    public function testMetadataMustImplementClassMetadataInterface()
-    {
-        $entity = new Entity();
-
-        $metadata = $this->getMock('Symfony\Component\Validator\Tests\Fixtures\LegacyClassMetadata');
-        $metadata->expects($this->any())
-            ->method('getClassName')
-            ->will($this->returnValue(get_class($entity)));
-
-        $this->metadataFactory->addMetadata($metadata);
-
-        $this->validator->validate($entity);
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Validator\Exception\UnsupportedMetadataException
-     * @group legacy
-     */
-    public function testReferenceMetadataMustImplementClassMetadataInterface()
-    {
-        $entity = new Entity();
-        $entity->reference = new Reference();
-
-        $metadata = $this->getMock('Symfony\Component\Validator\Tests\Fixtures\LegacyClassMetadata');
-        $metadata->expects($this->any())
-            ->method('getClassName')
-            ->will($this->returnValue(get_class($entity->reference)));
-
-        $this->metadataFactory->addMetadata($metadata);
-
-        $this->metadata->addPropertyConstraint('reference', new Valid());
-
-        $this->validator->validate($entity);
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Validator\Exception\UnsupportedMetadataException
-     * @group legacy
-     */
-    public function testLegacyPropertyMetadataMustImplementPropertyMetadataInterface()
-    {
-        $entity = new Entity();
-
-        // Legacy interface
-        $propertyMetadata = $this->getMock('Symfony\Component\Validator\MetadataInterface');
-        $metadata = new FakeClassMetadata(get_class($entity));
-        $metadata->addCustomPropertyMetadata('firstName', $propertyMetadata);
-
-        $this->metadataFactory->addMetadata($metadata);
-
-        $this->validator->validate($entity);
-    }
-
-    public function testNoDuplicateValidationIfClassConstraintInMultipleGroups()
-    {
-        $entity = new Entity();
-
-        $callback = function ($value, ExecutionContextInterface $context) {
-            $context->addViolation('Message');
-        };
-
-        $this->metadata->addConstraint(new Callback(array(
-            'callback' => $callback,
-            'groups' => array('Group 1', 'Group 2'),
-        )));
-
-        $violations = $this->validator->validate($entity, new Valid(), array('Group 1', 'Group 2'));
-
-        /* @var ConstraintViolationInterface[] $violations */
-        $this->assertCount(1, $violations);
-    }
-
-    public function testNoDuplicateValidationIfPropertyConstraintInMultipleGroups()
-    {
-        $entity = new Entity();
-
-        $callback = function ($value, ExecutionContextInterface $context) {
-            $context->addViolation('Message');
-        };
-
-        $this->metadata->addPropertyConstraint('firstName', new Callback(array(
-            'callback' => $callback,
-            'groups' => array('Group 1', 'Group 2'),
-        )));
-
-        $violations = $this->validator->validate($entity, new Valid(), array('Group 1', 'Group 2'));
-
-        /* @var ConstraintViolationInterface[] $violations */
-        $this->assertCount(1, $violations);
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Validator\Exception\RuntimeException
-     */
-    public function testValidateFailsIfNoConstraintsAndNoObjectOrArray()
-    {
-        $this->validate('Foobar');
-    }
-
-    public function testAccessCurrentObject()
-    {
-        $test = $this;
-        $called = false;
-        $entity = new Entity();
-        $entity->firstName = 'Bernhard';
-
-        $callback = function ($value, ExecutionContextInterface $context) use ($test, $entity, &$called) {
-            $called = true;
-            $test->assertSame($entity, $context->getObject());
-        };
-
-        $this->metadata->addConstraint(new Callback($callback));
-        $this->metadata->addPropertyConstraint('firstName', new Callback($callback));
-
-        $this->validator->validate($entity);
-
-        $this->assertTrue($called);
-    }
-
-    public function testInitializeObjectsOnFirstValidation()
-    {
-        $test = $this;
-        $entity = new Entity();
-        $entity->initialized = false;
-
-        // prepare initializers that set "initialized" to true
-        $initializer1 = $this->getMock('Symfony\\Component\\Validator\\ObjectInitializerInterface');
-        $initializer2 = $this->getMock('Symfony\\Component\\Validator\\ObjectInitializerInterface');
-
-        $initializer1->expects($this->once())
-            ->method('initialize')
-            ->with($entity)
-            ->will($this->returnCallback(function ($object) {
-                $object->initialized = true;
-            }));
-
-        $initializer2->expects($this->once())
-            ->method('initialize')
-            ->with($entity);
-
-        $this->validator = $this->createValidator($this->metadataFactory, array(
-            $initializer1,
-            $initializer2,
-        ));
-
-        // prepare constraint which
-        // * checks that "initialized" is set to true
-        // * validates the object again
-        $callback = function ($object, ExecutionContextInterface $context) use ($test) {
-            $test->assertTrue($object->initialized);
-
-            // validate again in same group
-            $validator = $context->getValidator()->inContext($context);
-
-            $validator->validate($object);
-
-            // validate again in other group
-            $validator->validate($object, null, 'SomeGroup');
-        };
-
-        $this->metadata->addConstraint(new Callback($callback));
-
-        $this->validate($entity);
-
-        $this->assertTrue($entity->initialized);
-    }
-
-    public function testPassConstraintToViolation()
-    {
-        $constraint = new FailingConstraint();
-        $violations = $this->validate('Foobar', $constraint);
-
-        $this->assertCount(1, $violations);
-        $this->assertSame($constraint, $violations[0]->getConstraint());
-    }
-}
diff --git a/vendor/symfony/validator/Tests/Validator/AbstractLegacyApiTest.php b/vendor/symfony/validator/Tests/Validator/AbstractLegacyApiTest.php
deleted file mode 100644
index d78b67b..0000000
--- a/vendor/symfony/validator/Tests/Validator/AbstractLegacyApiTest.php
+++ /dev/null
@@ -1,315 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Validator;
-
-use Symfony\Component\Validator\Constraints\Callback;
-use Symfony\Component\Validator\Constraints\Valid;
-use Symfony\Component\Validator\ConstraintViolationInterface;
-use Symfony\Component\Validator\ExecutionContextInterface;
-use Symfony\Component\Validator\MetadataFactoryInterface;
-use Symfony\Component\Validator\Tests\Fixtures\Entity;
-use Symfony\Component\Validator\Tests\Fixtures\Reference;
-use Symfony\Component\Validator\ValidatorInterface as LegacyValidatorInterface;
-
-/**
- * Verifies that a validator satisfies the API of Symfony < 2.5.
- *
- * @since  2.5
- *
- * @author Bernhard Schussek <bschussek@gmail.com>
- * @group legacy
- */
-abstract class AbstractLegacyApiTest extends AbstractValidatorTest
-{
-    /**
-     * @var LegacyValidatorInterface
-     */
-    protected $validator;
-
-    /**
-     * @param MetadataFactoryInterface $metadataFactory
-     *
-     * @return LegacyValidatorInterface
-     */
-    abstract protected function createValidator(MetadataFactoryInterface $metadataFactory, array $objectInitializers = array());
-
-    protected function setUp()
-    {
-        parent::setUp();
-
-        $this->validator = $this->createValidator($this->metadataFactory);
-    }
-
-    protected function validate($value, $constraints = null, $groups = null)
-    {
-        if (null === $constraints) {
-            $constraints = new Valid();
-        }
-
-        if ($constraints instanceof Valid) {
-            return $this->validator->validate($value, $groups, $constraints->traverse, $constraints->deep);
-        }
-
-        return $this->validator->validateValue($value, $constraints, $groups);
-    }
-
-    protected function validateProperty($object, $propertyName, $groups = null)
-    {
-        return $this->validator->validateProperty($object, $propertyName, $groups);
-    }
-
-    protected function validatePropertyValue($object, $propertyName, $value, $groups = null)
-    {
-        return $this->validator->validatePropertyValue($object, $propertyName, $value, $groups);
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Validator\Exception\NoSuchMetadataException
-     */
-    public function testTraversableTraverseDisabled()
-    {
-        $test = $this;
-        $entity = new Entity();
-        $traversable = new \ArrayIterator(array('key' => $entity));
-
-        $callback = function () use ($test) {
-            $test->fail('Should not be called');
-        };
-
-        $this->metadata->addConstraint(new Callback(array(
-            'callback' => $callback,
-            'groups' => 'Group',
-        )));
-
-        $this->validator->validate($traversable, 'Group');
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Validator\Exception\NoSuchMetadataException
-     */
-    public function testRecursiveTraversableRecursiveTraversalDisabled()
-    {
-        $test = $this;
-        $entity = new Entity();
-        $traversable = new \ArrayIterator(array(
-            2 => new \ArrayIterator(array('key' => $entity)),
-        ));
-
-        $callback = function () use ($test) {
-            $test->fail('Should not be called');
-        };
-
-        $this->metadata->addConstraint(new Callback(array(
-            'callback' => $callback,
-            'groups' => 'Group',
-        )));
-
-        $this->validator->validate($traversable, 'Group');
-    }
-
-    public function testValidateInContext()
-    {
-        $test = $this;
-        $entity = new Entity();
-        $entity->reference = new Reference();
-
-        $callback1 = function ($value, ExecutionContextInterface $context) use ($test) {
-            $previousValue = $context->getValue();
-            $previousMetadata = $context->getMetadata();
-            $previousPath = $context->getPropertyPath();
-            $previousGroup = $context->getGroup();
-
-            $context->validate($value->reference, 'subpath');
-
-            // context changes shouldn't leak out of the validate() call
-            $test->assertSame($previousValue, $context->getValue());
-            $test->assertSame($previousMetadata, $context->getMetadata());
-            $test->assertSame($previousPath, $context->getPropertyPath());
-            $test->assertSame($previousGroup, $context->getGroup());
-        };
-
-        $callback2 = function ($value, ExecutionContextInterface $context) use ($test, $entity) {
-            $test->assertSame($test::REFERENCE_CLASS, $context->getClassName());
-            $test->assertNull($context->getPropertyName());
-            $test->assertSame('subpath', $context->getPropertyPath());
-            $test->assertSame('Group', $context->getGroup());
-            $test->assertSame($test->referenceMetadata, $context->getMetadata());
-            $test->assertSame($test->metadataFactory, $context->getMetadataFactory());
-            $test->assertSame($entity, $context->getRoot());
-            $test->assertSame($entity->reference, $context->getValue());
-            $test->assertSame($entity->reference, $value);
-
-            $context->addViolation('Message %param%', array('%param%' => 'value'));
-        };
-
-        $this->metadata->addConstraint(new Callback(array(
-            'callback' => $callback1,
-            'groups' => 'Group',
-        )));
-        $this->referenceMetadata->addConstraint(new Callback(array(
-            'callback' => $callback2,
-            'groups' => 'Group',
-        )));
-
-        $violations = $this->validator->validate($entity, 'Group');
-
-        /* @var ConstraintViolationInterface[] $violations */
-        $this->assertCount(1, $violations);
-        $this->assertSame('Message value', $violations[0]->getMessage());
-        $this->assertSame('Message %param%', $violations[0]->getMessageTemplate());
-        $this->assertSame(array('%param%' => 'value'), $violations[0]->getParameters());
-        $this->assertSame('subpath', $violations[0]->getPropertyPath());
-        $this->assertSame($entity, $violations[0]->getRoot());
-        $this->assertSame($entity->reference, $violations[0]->getInvalidValue());
-        $this->assertNull($violations[0]->getPlural());
-        $this->assertNull($violations[0]->getCode());
-    }
-
-    public function testValidateArrayInContext()
-    {
-        $test = $this;
-        $entity = new Entity();
-        $entity->reference = new Reference();
-
-        $callback1 = function ($value, ExecutionContextInterface $context) use ($test) {
-            $previousValue = $context->getValue();
-            $previousMetadata = $context->getMetadata();
-            $previousPath = $context->getPropertyPath();
-            $previousGroup = $context->getGroup();
-
-            $context->validate(array('key' => $value->reference), 'subpath');
-
-            // context changes shouldn't leak out of the validate() call
-            $test->assertSame($previousValue, $context->getValue());
-            $test->assertSame($previousMetadata, $context->getMetadata());
-            $test->assertSame($previousPath, $context->getPropertyPath());
-            $test->assertSame($previousGroup, $context->getGroup());
-        };
-
-        $callback2 = function ($value, ExecutionContextInterface $context) use ($test, $entity) {
-            $test->assertSame($test::REFERENCE_CLASS, $context->getClassName());
-            $test->assertNull($context->getPropertyName());
-            $test->assertSame('subpath[key]', $context->getPropertyPath());
-            $test->assertSame('Group', $context->getGroup());
-            $test->assertSame($test->referenceMetadata, $context->getMetadata());
-            $test->assertSame($test->metadataFactory, $context->getMetadataFactory());
-            $test->assertSame($entity, $context->getRoot());
-            $test->assertSame($entity->reference, $context->getValue());
-            $test->assertSame($entity->reference, $value);
-
-            $context->addViolation('Message %param%', array('%param%' => 'value'));
-        };
-
-        $this->metadata->addConstraint(new Callback(array(
-            'callback' => $callback1,
-            'groups' => 'Group',
-        )));
-        $this->referenceMetadata->addConstraint(new Callback(array(
-            'callback' => $callback2,
-            'groups' => 'Group',
-        )));
-
-        $violations = $this->validator->validate($entity, 'Group');
-
-        /* @var ConstraintViolationInterface[] $violations */
-        $this->assertCount(1, $violations);
-        $this->assertSame('Message value', $violations[0]->getMessage());
-        $this->assertSame('Message %param%', $violations[0]->getMessageTemplate());
-        $this->assertSame(array('%param%' => 'value'), $violations[0]->getParameters());
-        $this->assertSame('subpath[key]', $violations[0]->getPropertyPath());
-        $this->assertSame($entity, $violations[0]->getRoot());
-        $this->assertSame($entity->reference, $violations[0]->getInvalidValue());
-        $this->assertNull($violations[0]->getPlural());
-        $this->assertNull($violations[0]->getCode());
-    }
-
-    public function testAddCustomizedViolation()
-    {
-        $entity = new Entity();
-
-        $callback = function ($value, ExecutionContextInterface $context) {
-            $context->addViolation(
-                'Message %param%',
-                array('%param%' => 'value'),
-                'Invalid value',
-                2,
-                'Code'
-            );
-        };
-
-        $this->metadata->addConstraint(new Callback($callback));
-
-        $violations = $this->validator->validate($entity);
-
-        /* @var ConstraintViolationInterface[] $violations */
-        $this->assertCount(1, $violations);
-        $this->assertSame('Message value', $violations[0]->getMessage());
-        $this->assertSame('Message %param%', $violations[0]->getMessageTemplate());
-        $this->assertSame(array('%param%' => 'value'), $violations[0]->getParameters());
-        $this->assertSame('', $violations[0]->getPropertyPath());
-        $this->assertSame($entity, $violations[0]->getRoot());
-        $this->assertSame('Invalid value', $violations[0]->getInvalidValue());
-        $this->assertSame(2, $violations[0]->getPlural());
-        $this->assertSame('Code', $violations[0]->getCode());
-    }
-
-    public function testInitializeObjectsOnFirstValidation()
-    {
-        $test = $this;
-        $entity = new Entity();
-        $entity->initialized = false;
-
-        // prepare initializers that set "initialized" to true
-        $initializer1 = $this->getMock('Symfony\\Component\\Validator\\ObjectInitializerInterface');
-        $initializer2 = $this->getMock('Symfony\\Component\\Validator\\ObjectInitializerInterface');
-
-        $initializer1->expects($this->once())
-            ->method('initialize')
-            ->with($entity)
-            ->will($this->returnCallback(function ($object) {
-                $object->initialized = true;
-            }));
-
-        $initializer2->expects($this->once())
-            ->method('initialize')
-            ->with($entity);
-
-        $this->validator = $this->createValidator($this->metadataFactory, array(
-            $initializer1,
-            $initializer2,
-        ));
-
-        // prepare constraint which
-        // * checks that "initialized" is set to true
-        // * validates the object again
-        $callback = function ($object, ExecutionContextInterface $context) use ($test) {
-            $test->assertTrue($object->initialized);
-
-            // validate again in same group
-            $context->validate($object);
-
-            // validate again in other group
-            $context->validate($object, '', 'SomeGroup');
-        };
-
-        $this->metadata->addConstraint(new Callback($callback));
-
-        $this->validate($entity);
-
-        $this->assertTrue($entity->initialized);
-    }
-
-    public function testGetMetadataFactory()
-    {
-        $this->assertSame($this->metadataFactory, $this->validator->getMetadataFactory());
-    }
-}
diff --git a/vendor/symfony/validator/Tests/Validator/AbstractValidatorTest.php b/vendor/symfony/validator/Tests/Validator/AbstractValidatorTest.php
deleted file mode 100644
index 678a325..0000000
--- a/vendor/symfony/validator/Tests/Validator/AbstractValidatorTest.php
+++ /dev/null
@@ -1,1285 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Validator;
-
-use Symfony\Component\Validator\Constraints\Callback;
-use Symfony\Component\Validator\Constraints\GroupSequence;
-use Symfony\Component\Validator\Constraints\Valid;
-use Symfony\Component\Validator\ConstraintViolationInterface;
-use Symfony\Component\Validator\ExecutionContextInterface;
-use Symfony\Component\Validator\Mapping\ClassMetadata;
-use Symfony\Component\Validator\Tests\Fixtures\Entity;
-use Symfony\Component\Validator\Tests\Fixtures\FakeMetadataFactory;
-use Symfony\Component\Validator\Tests\Fixtures\GroupSequenceProviderEntity;
-use Symfony\Component\Validator\Tests\Fixtures\Reference;
-
-/**
- * @since  2.5
- *
- * @author Bernhard Schussek <bschussek@gmail.com>
- */
-abstract class AbstractValidatorTest extends \PHPUnit_Framework_TestCase
-{
-    const ENTITY_CLASS = 'Symfony\Component\Validator\Tests\Fixtures\Entity';
-
-    const REFERENCE_CLASS = 'Symfony\Component\Validator\Tests\Fixtures\Reference';
-
-    /**
-     * @var FakeMetadataFactory
-     */
-    public $metadataFactory;
-
-    /**
-     * @var ClassMetadata
-     */
-    public $metadata;
-
-    /**
-     * @var ClassMetadata
-     */
-    public $referenceMetadata;
-
-    protected function setUp()
-    {
-        $this->metadataFactory = new FakeMetadataFactory();
-        $this->metadata = new ClassMetadata(self::ENTITY_CLASS);
-        $this->referenceMetadata = new ClassMetadata(self::REFERENCE_CLASS);
-        $this->metadataFactory->addMetadata($this->metadata);
-        $this->metadataFactory->addMetadata($this->referenceMetadata);
-    }
-
-    protected function tearDown()
-    {
-        $this->metadataFactory = null;
-        $this->metadata = null;
-        $this->referenceMetadata = null;
-    }
-
-    abstract protected function validate($value, $constraints = null, $groups = null);
-
-    abstract protected function validateProperty($object, $propertyName, $groups = null);
-
-    abstract protected function validatePropertyValue($object, $propertyName, $value, $groups = null);
-
-    public function testValidate()
-    {
-        $test = $this;
-
-        $callback = function ($value, ExecutionContextInterface $context) use ($test) {
-            $test->assertNull($context->getClassName());
-            $test->assertNull($context->getPropertyName());
-            $test->assertSame('', $context->getPropertyPath());
-            $test->assertSame('Group', $context->getGroup());
-            $test->assertSame('Bernhard', $context->getRoot());
-            $test->assertSame('Bernhard', $context->getValue());
-            $test->assertSame('Bernhard', $value);
-
-            $context->addViolation('Message %param%', array('%param%' => 'value'));
-        };
-
-        $constraint = new Callback(array(
-            'callback' => $callback,
-            'groups' => 'Group',
-        ));
-
-        $violations = $this->validate('Bernhard', $constraint, 'Group');
-
-        /* @var ConstraintViolationInterface[] $violations */
-        $this->assertCount(1, $violations);
-        $this->assertSame('Message value', $violations[0]->getMessage());
-        $this->assertSame('Message %param%', $violations[0]->getMessageTemplate());
-        $this->assertSame(array('%param%' => 'value'), $violations[0]->getParameters());
-        $this->assertSame('', $violations[0]->getPropertyPath());
-        $this->assertSame('Bernhard', $violations[0]->getRoot());
-        $this->assertSame('Bernhard', $violations[0]->getInvalidValue());
-        $this->assertNull($violations[0]->getPlural());
-        $this->assertNull($violations[0]->getCode());
-    }
-
-    public function testClassConstraint()
-    {
-        $test = $this;
-        $entity = new Entity();
-
-        $callback = function ($value, ExecutionContextInterface $context) use ($test, $entity) {
-            $test->assertSame($test::ENTITY_CLASS, $context->getClassName());
-            $test->assertNull($context->getPropertyName());
-            $test->assertSame('', $context->getPropertyPath());
-            $test->assertSame('Group', $context->getGroup());
-            $test->assertSame($test->metadata, $context->getMetadata());
-            $test->assertSame($entity, $context->getRoot());
-            $test->assertSame($entity, $context->getValue());
-            $test->assertSame($entity, $value);
-
-            $context->addViolation('Message %param%', array('%param%' => 'value'));
-        };
-
-        $this->metadata->addConstraint(new Callback(array(
-            'callback' => $callback,
-            'groups' => 'Group',
-        )));
-
-        $violations = $this->validate($entity, null, 'Group');
-
-        /* @var ConstraintViolationInterface[] $violations */
-        $this->assertCount(1, $violations);
-        $this->assertSame('Message value', $violations[0]->getMessage());
-        $this->assertSame('Message %param%', $violations[0]->getMessageTemplate());
-        $this->assertSame(array('%param%' => 'value'), $violations[0]->getParameters());
-        $this->assertSame('', $violations[0]->getPropertyPath());
-        $this->assertSame($entity, $violations[0]->getRoot());
-        $this->assertSame($entity, $violations[0]->getInvalidValue());
-        $this->assertNull($violations[0]->getPlural());
-        $this->assertNull($violations[0]->getCode());
-    }
-
-    public function testPropertyConstraint()
-    {
-        $test = $this;
-        $entity = new Entity();
-        $entity->firstName = 'Bernhard';
-
-        $callback = function ($value, ExecutionContextInterface $context) use ($test, $entity) {
-            $propertyMetadatas = $test->metadata->getPropertyMetadata('firstName');
-
-            $test->assertSame($test::ENTITY_CLASS, $context->getClassName());
-            $test->assertSame('firstName', $context->getPropertyName());
-            $test->assertSame('firstName', $context->getPropertyPath());
-            $test->assertSame('Group', $context->getGroup());
-            $test->assertSame($propertyMetadatas[0], $context->getMetadata());
-            $test->assertSame($entity, $context->getRoot());
-            $test->assertSame('Bernhard', $context->getValue());
-            $test->assertSame('Bernhard', $value);
-
-            $context->addViolation('Message %param%', array('%param%' => 'value'));
-        };
-
-        $this->metadata->addPropertyConstraint('firstName', new Callback(array(
-            'callback' => $callback,
-            'groups' => 'Group',
-        )));
-
-        $violations = $this->validate($entity, null, 'Group');
-
-        /* @var ConstraintViolationInterface[] $violations */
-        $this->assertCount(1, $violations);
-        $this->assertSame('Message value', $violations[0]->getMessage());
-        $this->assertSame('Message %param%', $violations[0]->getMessageTemplate());
-        $this->assertSame(array('%param%' => 'value'), $violations[0]->getParameters());
-        $this->assertSame('firstName', $violations[0]->getPropertyPath());
-        $this->assertSame($entity, $violations[0]->getRoot());
-        $this->assertSame('Bernhard', $violations[0]->getInvalidValue());
-        $this->assertNull($violations[0]->getPlural());
-        $this->assertNull($violations[0]->getCode());
-    }
-
-    public function testGetterConstraint()
-    {
-        $test = $this;
-        $entity = new Entity();
-        $entity->setLastName('Schussek');
-
-        $callback = function ($value, ExecutionContextInterface $context) use ($test, $entity) {
-            $propertyMetadatas = $test->metadata->getPropertyMetadata('lastName');
-
-            $test->assertSame($test::ENTITY_CLASS, $context->getClassName());
-            $test->assertSame('lastName', $context->getPropertyName());
-            $test->assertSame('lastName', $context->getPropertyPath());
-            $test->assertSame('Group', $context->getGroup());
-            $test->assertSame($propertyMetadatas[0], $context->getMetadata());
-            $test->assertSame($entity, $context->getRoot());
-            $test->assertSame('Schussek', $context->getValue());
-            $test->assertSame('Schussek', $value);
-
-            $context->addViolation('Message %param%', array('%param%' => 'value'));
-        };
-
-        $this->metadata->addGetterConstraint('lastName', new Callback(array(
-            'callback' => $callback,
-            'groups' => 'Group',
-        )));
-
-        $violations = $this->validate($entity, null, 'Group');
-
-        /* @var ConstraintViolationInterface[] $violations */
-        $this->assertCount(1, $violations);
-        $this->assertSame('Message value', $violations[0]->getMessage());
-        $this->assertSame('Message %param%', $violations[0]->getMessageTemplate());
-        $this->assertSame(array('%param%' => 'value'), $violations[0]->getParameters());
-        $this->assertSame('lastName', $violations[0]->getPropertyPath());
-        $this->assertSame($entity, $violations[0]->getRoot());
-        $this->assertSame('Schussek', $violations[0]->getInvalidValue());
-        $this->assertNull($violations[0]->getPlural());
-        $this->assertNull($violations[0]->getCode());
-    }
-
-    public function testArray()
-    {
-        $test = $this;
-        $entity = new Entity();
-        $array = array('key' => $entity);
-
-        $callback = function ($value, ExecutionContextInterface $context) use ($test, $entity, $array) {
-            $test->assertSame($test::ENTITY_CLASS, $context->getClassName());
-            $test->assertNull($context->getPropertyName());
-            $test->assertSame('[key]', $context->getPropertyPath());
-            $test->assertSame('Group', $context->getGroup());
-            $test->assertSame($test->metadata, $context->getMetadata());
-            $test->assertSame($array, $context->getRoot());
-            $test->assertSame($entity, $context->getValue());
-            $test->assertSame($entity, $value);
-
-            $context->addViolation('Message %param%', array('%param%' => 'value'));
-        };
-
-        $this->metadata->addConstraint(new Callback(array(
-            'callback' => $callback,
-            'groups' => 'Group',
-        )));
-
-        $violations = $this->validate($array, null, 'Group');
-
-        /* @var ConstraintViolationInterface[] $violations */
-        $this->assertCount(1, $violations);
-        $this->assertSame('Message value', $violations[0]->getMessage());
-        $this->assertSame('Message %param%', $violations[0]->getMessageTemplate());
-        $this->assertSame(array('%param%' => 'value'), $violations[0]->getParameters());
-        $this->assertSame('[key]', $violations[0]->getPropertyPath());
-        $this->assertSame($array, $violations[0]->getRoot());
-        $this->assertSame($entity, $violations[0]->getInvalidValue());
-        $this->assertNull($violations[0]->getPlural());
-        $this->assertNull($violations[0]->getCode());
-    }
-
-    public function testRecursiveArray()
-    {
-        $test = $this;
-        $entity = new Entity();
-        $array = array(2 => array('key' => $entity));
-
-        $callback = function ($value, ExecutionContextInterface $context) use ($test, $entity, $array) {
-            $test->assertSame($test::ENTITY_CLASS, $context->getClassName());
-            $test->assertNull($context->getPropertyName());
-            $test->assertSame('[2][key]', $context->getPropertyPath());
-            $test->assertSame('Group', $context->getGroup());
-            $test->assertSame($test->metadata, $context->getMetadata());
-            $test->assertSame($array, $context->getRoot());
-            $test->assertSame($entity, $context->getValue());
-            $test->assertSame($entity, $value);
-
-            $context->addViolation('Message %param%', array('%param%' => 'value'));
-        };
-
-        $this->metadata->addConstraint(new Callback(array(
-            'callback' => $callback,
-            'groups' => 'Group',
-        )));
-
-        $violations = $this->validate($array, null, 'Group');
-
-        /* @var ConstraintViolationInterface[] $violations */
-        $this->assertCount(1, $violations);
-        $this->assertSame('Message value', $violations[0]->getMessage());
-        $this->assertSame('Message %param%', $violations[0]->getMessageTemplate());
-        $this->assertSame(array('%param%' => 'value'), $violations[0]->getParameters());
-        $this->assertSame('[2][key]', $violations[0]->getPropertyPath());
-        $this->assertSame($array, $violations[0]->getRoot());
-        $this->assertSame($entity, $violations[0]->getInvalidValue());
-        $this->assertNull($violations[0]->getPlural());
-        $this->assertNull($violations[0]->getCode());
-    }
-
-    public function testTraversable()
-    {
-        $test = $this;
-        $entity = new Entity();
-        $traversable = new \ArrayIterator(array('key' => $entity));
-
-        $callback = function ($value, ExecutionContextInterface $context) use ($test, $entity, $traversable) {
-            $test->assertSame($test::ENTITY_CLASS, $context->getClassName());
-            $test->assertNull($context->getPropertyName());
-            $test->assertSame('[key]', $context->getPropertyPath());
-            $test->assertSame('Group', $context->getGroup());
-            $test->assertSame($test->metadata, $context->getMetadata());
-            $test->assertSame($traversable, $context->getRoot());
-            $test->assertSame($entity, $context->getValue());
-            $test->assertSame($entity, $value);
-
-            $context->addViolation('Message %param%', array('%param%' => 'value'));
-        };
-
-        $this->metadata->addConstraint(new Callback(array(
-            'callback' => $callback,
-            'groups' => 'Group',
-        )));
-
-        $violations = $this->validate($traversable, null, 'Group');
-
-        /* @var ConstraintViolationInterface[] $violations */
-        $this->assertCount(1, $violations);
-        $this->assertSame('Message value', $violations[0]->getMessage());
-        $this->assertSame('Message %param%', $violations[0]->getMessageTemplate());
-        $this->assertSame(array('%param%' => 'value'), $violations[0]->getParameters());
-        $this->assertSame('[key]', $violations[0]->getPropertyPath());
-        $this->assertSame($traversable, $violations[0]->getRoot());
-        $this->assertSame($entity, $violations[0]->getInvalidValue());
-        $this->assertNull($violations[0]->getPlural());
-        $this->assertNull($violations[0]->getCode());
-    }
-
-    public function testRecursiveTraversable()
-    {
-        $test = $this;
-        $entity = new Entity();
-        $traversable = new \ArrayIterator(array(
-            2 => new \ArrayIterator(array('key' => $entity)),
-        ));
-
-        $callback = function ($value, ExecutionContextInterface $context) use ($test, $entity, $traversable) {
-            $test->assertSame($test::ENTITY_CLASS, $context->getClassName());
-            $test->assertNull($context->getPropertyName());
-            $test->assertSame('[2][key]', $context->getPropertyPath());
-            $test->assertSame('Group', $context->getGroup());
-            $test->assertSame($test->metadata, $context->getMetadata());
-            $test->assertSame($traversable, $context->getRoot());
-            $test->assertSame($entity, $context->getValue());
-            $test->assertSame($entity, $value);
-
-            $context->addViolation('Message %param%', array('%param%' => 'value'));
-        };
-
-        $this->metadata->addConstraint(new Callback(array(
-            'callback' => $callback,
-            'groups' => 'Group',
-        )));
-
-        $violations = $this->validate($traversable, null, 'Group');
-
-        /* @var ConstraintViolationInterface[] $violations */
-        $this->assertCount(1, $violations);
-        $this->assertSame('Message value', $violations[0]->getMessage());
-        $this->assertSame('Message %param%', $violations[0]->getMessageTemplate());
-        $this->assertSame(array('%param%' => 'value'), $violations[0]->getParameters());
-        $this->assertSame('[2][key]', $violations[0]->getPropertyPath());
-        $this->assertSame($traversable, $violations[0]->getRoot());
-        $this->assertSame($entity, $violations[0]->getInvalidValue());
-        $this->assertNull($violations[0]->getPlural());
-        $this->assertNull($violations[0]->getCode());
-    }
-
-    public function testReferenceClassConstraint()
-    {
-        $test = $this;
-        $entity = new Entity();
-        $entity->reference = new Reference();
-
-        $callback = function ($value, ExecutionContextInterface $context) use ($test, $entity) {
-            $test->assertSame($test::REFERENCE_CLASS, $context->getClassName());
-            $test->assertNull($context->getPropertyName());
-            $test->assertSame('reference', $context->getPropertyPath());
-            $test->assertSame('Group', $context->getGroup());
-            $test->assertSame($test->referenceMetadata, $context->getMetadata());
-            $test->assertSame($entity, $context->getRoot());
-            $test->assertSame($entity->reference, $context->getValue());
-            $test->assertSame($entity->reference, $value);
-
-            $context->addViolation('Message %param%', array('%param%' => 'value'));
-        };
-
-        $this->metadata->addPropertyConstraint('reference', new Valid());
-        $this->referenceMetadata->addConstraint(new Callback(array(
-            'callback' => $callback,
-            'groups' => 'Group',
-        )));
-
-        $violations = $this->validate($entity, null, 'Group');
-
-        /* @var ConstraintViolationInterface[] $violations */
-        $this->assertCount(1, $violations);
-        $this->assertSame('Message value', $violations[0]->getMessage());
-        $this->assertSame('Message %param%', $violations[0]->getMessageTemplate());
-        $this->assertSame(array('%param%' => 'value'), $violations[0]->getParameters());
-        $this->assertSame('reference', $violations[0]->getPropertyPath());
-        $this->assertSame($entity, $violations[0]->getRoot());
-        $this->assertSame($entity->reference, $violations[0]->getInvalidValue());
-        $this->assertNull($violations[0]->getPlural());
-        $this->assertNull($violations[0]->getCode());
-    }
-
-    public function testReferencePropertyConstraint()
-    {
-        $test = $this;
-        $entity = new Entity();
-        $entity->reference = new Reference();
-        $entity->reference->value = 'Foobar';
-
-        $callback = function ($value, ExecutionContextInterface $context) use ($test, $entity) {
-            $propertyMetadatas = $test->referenceMetadata->getPropertyMetadata('value');
-
-            $test->assertSame($test::REFERENCE_CLASS, $context->getClassName());
-            $test->assertSame('value', $context->getPropertyName());
-            $test->assertSame('reference.value', $context->getPropertyPath());
-            $test->assertSame('Group', $context->getGroup());
-            $test->assertSame($propertyMetadatas[0], $context->getMetadata());
-            $test->assertSame($entity, $context->getRoot());
-            $test->assertSame('Foobar', $context->getValue());
-            $test->assertSame('Foobar', $value);
-
-            $context->addViolation('Message %param%', array('%param%' => 'value'));
-        };
-
-        $this->metadata->addPropertyConstraint('reference', new Valid());
-        $this->referenceMetadata->addPropertyConstraint('value', new Callback(array(
-            'callback' => $callback,
-            'groups' => 'Group',
-        )));
-
-        $violations = $this->validate($entity, null, 'Group');
-
-        /* @var ConstraintViolationInterface[] $violations */
-        $this->assertCount(1, $violations);
-        $this->assertSame('Message value', $violations[0]->getMessage());
-        $this->assertSame('Message %param%', $violations[0]->getMessageTemplate());
-        $this->assertSame(array('%param%' => 'value'), $violations[0]->getParameters());
-        $this->assertSame('reference.value', $violations[0]->getPropertyPath());
-        $this->assertSame($entity, $violations[0]->getRoot());
-        $this->assertSame('Foobar', $violations[0]->getInvalidValue());
-        $this->assertNull($violations[0]->getPlural());
-        $this->assertNull($violations[0]->getCode());
-    }
-
-    public function testReferenceGetterConstraint()
-    {
-        $test = $this;
-        $entity = new Entity();
-        $entity->reference = new Reference();
-        $entity->reference->setPrivateValue('Bamboo');
-
-        $callback = function ($value, ExecutionContextInterface $context) use ($test, $entity) {
-            $propertyMetadatas = $test->referenceMetadata->getPropertyMetadata('privateValue');
-
-            $test->assertSame($test::REFERENCE_CLASS, $context->getClassName());
-            $test->assertSame('privateValue', $context->getPropertyName());
-            $test->assertSame('reference.privateValue', $context->getPropertyPath());
-            $test->assertSame('Group', $context->getGroup());
-            $test->assertSame($propertyMetadatas[0], $context->getMetadata());
-            $test->assertSame($entity, $context->getRoot());
-            $test->assertSame('Bamboo', $context->getValue());
-            $test->assertSame('Bamboo', $value);
-
-            $context->addViolation('Message %param%', array('%param%' => 'value'));
-        };
-
-        $this->metadata->addPropertyConstraint('reference', new Valid());
-        $this->referenceMetadata->addPropertyConstraint('privateValue', new Callback(array(
-            'callback' => $callback,
-            'groups' => 'Group',
-        )));
-
-        $violations = $this->validate($entity, null, 'Group');
-
-        /* @var ConstraintViolationInterface[] $violations */
-        $this->assertCount(1, $violations);
-        $this->assertSame('Message value', $violations[0]->getMessage());
-        $this->assertSame('Message %param%', $violations[0]->getMessageTemplate());
-        $this->assertSame(array('%param%' => 'value'), $violations[0]->getParameters());
-        $this->assertSame('reference.privateValue', $violations[0]->getPropertyPath());
-        $this->assertSame($entity, $violations[0]->getRoot());
-        $this->assertSame('Bamboo', $violations[0]->getInvalidValue());
-        $this->assertNull($violations[0]->getPlural());
-        $this->assertNull($violations[0]->getCode());
-    }
-
-    public function testsIgnoreNullReference()
-    {
-        $entity = new Entity();
-        $entity->reference = null;
-
-        $this->metadata->addPropertyConstraint('reference', new Valid());
-
-        $violations = $this->validate($entity);
-
-        /* @var ConstraintViolationInterface[] $violations */
-        $this->assertCount(0, $violations);
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Validator\Exception\NoSuchMetadataException
-     */
-    public function testFailOnScalarReferences()
-    {
-        $entity = new Entity();
-        $entity->reference = 'string';
-
-        $this->metadata->addPropertyConstraint('reference', new Valid());
-
-        $this->validate($entity);
-    }
-
-    public function testArrayReference()
-    {
-        $test = $this;
-        $entity = new Entity();
-        $entity->reference = array('key' => new Reference());
-
-        $callback = function ($value, ExecutionContextInterface $context) use ($test, $entity) {
-            $test->assertSame($test::REFERENCE_CLASS, $context->getClassName());
-            $test->assertNull($context->getPropertyName());
-            $test->assertSame('reference[key]', $context->getPropertyPath());
-            $test->assertSame('Group', $context->getGroup());
-            $test->assertSame($test->referenceMetadata, $context->getMetadata());
-            $test->assertSame($entity, $context->getRoot());
-            $test->assertSame($entity->reference['key'], $context->getValue());
-            $test->assertSame($entity->reference['key'], $value);
-
-            $context->addViolation('Message %param%', array('%param%' => 'value'));
-        };
-
-        $this->metadata->addPropertyConstraint('reference', new Valid());
-        $this->referenceMetadata->addConstraint(new Callback(array(
-            'callback' => $callback,
-            'groups' => 'Group',
-        )));
-
-        $violations = $this->validate($entity, null, 'Group');
-
-        /* @var ConstraintViolationInterface[] $violations */
-        $this->assertCount(1, $violations);
-        $this->assertSame('Message value', $violations[0]->getMessage());
-        $this->assertSame('Message %param%', $violations[0]->getMessageTemplate());
-        $this->assertSame(array('%param%' => 'value'), $violations[0]->getParameters());
-        $this->assertSame('reference[key]', $violations[0]->getPropertyPath());
-        $this->assertSame($entity, $violations[0]->getRoot());
-        $this->assertSame($entity->reference['key'], $violations[0]->getInvalidValue());
-        $this->assertNull($violations[0]->getPlural());
-        $this->assertNull($violations[0]->getCode());
-    }
-
-    // https://github.com/symfony/symfony/issues/6246
-    public function testRecursiveArrayReference()
-    {
-        $test = $this;
-        $entity = new Entity();
-        $entity->reference = array(2 => array('key' => new Reference()));
-
-        $callback = function ($value, ExecutionContextInterface $context) use ($test, $entity) {
-            $test->assertSame($test::REFERENCE_CLASS, $context->getClassName());
-            $test->assertNull($context->getPropertyName());
-            $test->assertSame('reference[2][key]', $context->getPropertyPath());
-            $test->assertSame('Group', $context->getGroup());
-            $test->assertSame($test->referenceMetadata, $context->getMetadata());
-            $test->assertSame($entity, $context->getRoot());
-            $test->assertSame($entity->reference[2]['key'], $context->getValue());
-            $test->assertSame($entity->reference[2]['key'], $value);
-
-            $context->addViolation('Message %param%', array('%param%' => 'value'));
-        };
-
-        $this->metadata->addPropertyConstraint('reference', new Valid());
-        $this->referenceMetadata->addConstraint(new Callback(array(
-            'callback' => $callback,
-            'groups' => 'Group',
-        )));
-
-        $violations = $this->validate($entity, null, 'Group');
-
-        /* @var ConstraintViolationInterface[] $violations */
-        $this->assertCount(1, $violations);
-        $this->assertSame('Message value', $violations[0]->getMessage());
-        $this->assertSame('Message %param%', $violations[0]->getMessageTemplate());
-        $this->assertSame(array('%param%' => 'value'), $violations[0]->getParameters());
-        $this->assertSame('reference[2][key]', $violations[0]->getPropertyPath());
-        $this->assertSame($entity, $violations[0]->getRoot());
-        $this->assertSame($entity->reference[2]['key'], $violations[0]->getInvalidValue());
-        $this->assertNull($violations[0]->getPlural());
-        $this->assertNull($violations[0]->getCode());
-    }
-
-    public function testArrayTraversalCannotBeDisabled()
-    {
-        $entity = new Entity();
-        $entity->reference = array('key' => new Reference());
-
-        $callback = function ($value, ExecutionContextInterface $context) {
-            $context->addViolation('Message %param%', array('%param%' => 'value'));
-        };
-
-        $this->metadata->addPropertyConstraint('reference', new Valid(array(
-            'traverse' => false,
-        )));
-        $this->referenceMetadata->addConstraint(new Callback($callback));
-
-        $violations = $this->validate($entity);
-
-        /* @var ConstraintViolationInterface[] $violations */
-        $this->assertCount(1, $violations);
-    }
-
-    public function testRecursiveArrayTraversalCannotBeDisabled()
-    {
-        $entity = new Entity();
-        $entity->reference = array(2 => array('key' => new Reference()));
-
-        $callback = function ($value, ExecutionContextInterface $context) {
-            $context->addViolation('Message %param%', array('%param%' => 'value'));
-        };
-
-        $this->metadata->addPropertyConstraint('reference', new Valid(array(
-            'traverse' => false,
-        )));
-        $this->referenceMetadata->addConstraint(new Callback($callback));
-
-        $violations = $this->validate($entity);
-
-        /* @var ConstraintViolationInterface[] $violations */
-        $this->assertCount(1, $violations);
-    }
-
-    public function testIgnoreScalarsDuringArrayTraversal()
-    {
-        $entity = new Entity();
-        $entity->reference = array('string', 1234);
-
-        $this->metadata->addPropertyConstraint('reference', new Valid());
-
-        $violations = $this->validate($entity);
-
-        /* @var ConstraintViolationInterface[] $violations */
-        $this->assertCount(0, $violations);
-    }
-
-    public function testIgnoreNullDuringArrayTraversal()
-    {
-        $entity = new Entity();
-        $entity->reference = array(null);
-
-        $this->metadata->addPropertyConstraint('reference', new Valid());
-
-        $violations = $this->validate($entity);
-
-        /* @var ConstraintViolationInterface[] $violations */
-        $this->assertCount(0, $violations);
-    }
-
-    public function testTraversableReference()
-    {
-        $test = $this;
-        $entity = new Entity();
-        $entity->reference = new \ArrayIterator(array('key' => new Reference()));
-
-        $callback = function ($value, ExecutionContextInterface $context) use ($test, $entity) {
-            $test->assertSame($test::REFERENCE_CLASS, $context->getClassName());
-            $test->assertNull($context->getPropertyName());
-            $test->assertSame('reference[key]', $context->getPropertyPath());
-            $test->assertSame('Group', $context->getGroup());
-            $test->assertSame($test->referenceMetadata, $context->getMetadata());
-            $test->assertSame($entity, $context->getRoot());
-            $test->assertSame($entity->reference['key'], $context->getValue());
-            $test->assertSame($entity->reference['key'], $value);
-
-            $context->addViolation('Message %param%', array('%param%' => 'value'));
-        };
-
-        $this->metadata->addPropertyConstraint('reference', new Valid());
-        $this->referenceMetadata->addConstraint(new Callback(array(
-            'callback' => $callback,
-            'groups' => 'Group',
-        )));
-
-        $violations = $this->validate($entity, null, 'Group');
-
-        /* @var ConstraintViolationInterface[] $violations */
-        $this->assertCount(1, $violations);
-        $this->assertSame('Message value', $violations[0]->getMessage());
-        $this->assertSame('Message %param%', $violations[0]->getMessageTemplate());
-        $this->assertSame(array('%param%' => 'value'), $violations[0]->getParameters());
-        $this->assertSame('reference[key]', $violations[0]->getPropertyPath());
-        $this->assertSame($entity, $violations[0]->getRoot());
-        $this->assertSame($entity->reference['key'], $violations[0]->getInvalidValue());
-        $this->assertNull($violations[0]->getPlural());
-        $this->assertNull($violations[0]->getCode());
-    }
-
-    public function testDisableTraversableTraversal()
-    {
-        $entity = new Entity();
-        $entity->reference = new \ArrayIterator(array('key' => new Reference()));
-
-        $callback = function ($value, ExecutionContextInterface $context) {
-            $context->addViolation('Message %param%', array('%param%' => 'value'));
-        };
-
-        $this->metadataFactory->addMetadata(new ClassMetadata('ArrayIterator'));
-        $this->metadata->addPropertyConstraint('reference', new Valid(array(
-            'traverse' => false,
-        )));
-        $this->referenceMetadata->addConstraint(new Callback($callback));
-
-        $violations = $this->validate($entity);
-
-        /* @var ConstraintViolationInterface[] $violations */
-        $this->assertCount(0, $violations);
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Validator\Exception\NoSuchMetadataException
-     */
-    public function testMetadataMustExistIfTraversalIsDisabled()
-    {
-        $entity = new Entity();
-        $entity->reference = new \ArrayIterator();
-
-        $this->metadata->addPropertyConstraint('reference', new Valid(array(
-            'traverse' => false,
-        )));
-
-        $this->validate($entity);
-    }
-
-    public function testEnableRecursiveTraversableTraversal()
-    {
-        $test = $this;
-        $entity = new Entity();
-        $entity->reference = new \ArrayIterator(array(
-            2 => new \ArrayIterator(array('key' => new Reference())),
-        ));
-
-        $callback = function ($value, ExecutionContextInterface $context) use ($test, $entity) {
-            $test->assertSame($test::REFERENCE_CLASS, $context->getClassName());
-            $test->assertNull($context->getPropertyName());
-            $test->assertSame('reference[2][key]', $context->getPropertyPath());
-            $test->assertSame('Group', $context->getGroup());
-            $test->assertSame($test->referenceMetadata, $context->getMetadata());
-            $test->assertSame($entity, $context->getRoot());
-            $test->assertSame($entity->reference[2]['key'], $context->getValue());
-            $test->assertSame($entity->reference[2]['key'], $value);
-
-            $context->addViolation('Message %param%', array('%param%' => 'value'));
-        };
-
-        $this->metadata->addPropertyConstraint('reference', new Valid(array(
-            'traverse' => true,
-        )));
-        $this->referenceMetadata->addConstraint(new Callback(array(
-            'callback' => $callback,
-            'groups' => 'Group',
-        )));
-
-        $violations = $this->validate($entity, null, 'Group');
-
-        /* @var ConstraintViolationInterface[] $violations */
-        $this->assertCount(1, $violations);
-        $this->assertSame('Message value', $violations[0]->getMessage());
-        $this->assertSame('Message %param%', $violations[0]->getMessageTemplate());
-        $this->assertSame(array('%param%' => 'value'), $violations[0]->getParameters());
-        $this->assertSame('reference[2][key]', $violations[0]->getPropertyPath());
-        $this->assertSame($entity, $violations[0]->getRoot());
-        $this->assertSame($entity->reference[2]['key'], $violations[0]->getInvalidValue());
-        $this->assertNull($violations[0]->getPlural());
-        $this->assertNull($violations[0]->getCode());
-    }
-
-    public function testValidateProperty()
-    {
-        $test = $this;
-        $entity = new Entity();
-        $entity->firstName = 'Bernhard';
-        $entity->setLastName('Schussek');
-
-        $callback1 = function ($value, ExecutionContextInterface $context) use ($test, $entity) {
-            $propertyMetadatas = $test->metadata->getPropertyMetadata('firstName');
-
-            $test->assertSame($test::ENTITY_CLASS, $context->getClassName());
-            $test->assertSame('firstName', $context->getPropertyName());
-            $test->assertSame('firstName', $context->getPropertyPath());
-            $test->assertSame('Group', $context->getGroup());
-            $test->assertSame($propertyMetadatas[0], $context->getMetadata());
-            $test->assertSame($entity, $context->getRoot());
-            $test->assertSame('Bernhard', $context->getValue());
-            $test->assertSame('Bernhard', $value);
-
-            $context->addViolation('Message %param%', array('%param%' => 'value'));
-        };
-
-        $callback2 = function ($value, ExecutionContextInterface $context) {
-            $context->addViolation('Other violation');
-        };
-
-        $this->metadata->addPropertyConstraint('firstName', new Callback(array(
-            'callback' => $callback1,
-            'groups' => 'Group',
-        )));
-        $this->metadata->addPropertyConstraint('lastName', new Callback(array(
-            'callback' => $callback2,
-            'groups' => 'Group',
-        )));
-
-        $violations = $this->validateProperty($entity, 'firstName', 'Group');
-
-        /* @var ConstraintViolationInterface[] $violations */
-        $this->assertCount(1, $violations);
-        $this->assertSame('Message value', $violations[0]->getMessage());
-        $this->assertSame('Message %param%', $violations[0]->getMessageTemplate());
-        $this->assertSame(array('%param%' => 'value'), $violations[0]->getParameters());
-        $this->assertSame('firstName', $violations[0]->getPropertyPath());
-        $this->assertSame($entity, $violations[0]->getRoot());
-        $this->assertSame('Bernhard', $violations[0]->getInvalidValue());
-        $this->assertNull($violations[0]->getPlural());
-        $this->assertNull($violations[0]->getCode());
-    }
-
-    /**
-     * Cannot be UnsupportedMetadataException for BC with Symfony < 2.5.
-     *
-     * @expectedException \Symfony\Component\Validator\Exception\ValidatorException
-     * @group legacy
-     */
-    public function testLegacyValidatePropertyFailsIfPropertiesNotSupported()
-    {
-        // $metadata does not implement PropertyMetadataContainerInterface
-        $metadata = $this->getMock('Symfony\Component\Validator\MetadataInterface');
-
-        $this->metadataFactory->addMetadataForValue('VALUE', $metadata);
-
-        $this->validateProperty('VALUE', 'someProperty');
-    }
-
-    /**
-     * https://github.com/symfony/symfony/issues/11604.
-     */
-    public function testValidatePropertyWithoutConstraints()
-    {
-        $entity = new Entity();
-        $violations = $this->validateProperty($entity, 'lastName');
-
-        $this->assertCount(0, $violations, '->validateProperty() returns no violations if no constraints have been configured for the property being validated');
-    }
-
-    public function testValidatePropertyValue()
-    {
-        $test = $this;
-        $entity = new Entity();
-        $entity->setLastName('Schussek');
-
-        $callback1 = function ($value, ExecutionContextInterface $context) use ($test, $entity) {
-            $propertyMetadatas = $test->metadata->getPropertyMetadata('firstName');
-
-            $test->assertSame($test::ENTITY_CLASS, $context->getClassName());
-            $test->assertSame('firstName', $context->getPropertyName());
-            $test->assertSame('firstName', $context->getPropertyPath());
-            $test->assertSame('Group', $context->getGroup());
-            $test->assertSame($propertyMetadatas[0], $context->getMetadata());
-            $test->assertSame($entity, $context->getRoot());
-            $test->assertSame('Bernhard', $context->getValue());
-            $test->assertSame('Bernhard', $value);
-
-            $context->addViolation('Message %param%', array('%param%' => 'value'));
-        };
-
-        $callback2 = function ($value, ExecutionContextInterface $context) {
-            $context->addViolation('Other violation');
-        };
-
-        $this->metadata->addPropertyConstraint('firstName', new Callback(array(
-            'callback' => $callback1,
-            'groups' => 'Group',
-        )));
-        $this->metadata->addPropertyConstraint('lastName', new Callback(array(
-            'callback' => $callback2,
-            'groups' => 'Group',
-        )));
-
-        $violations = $this->validatePropertyValue(
-            $entity,
-            'firstName',
-            'Bernhard',
-            'Group'
-        );
-
-        /* @var ConstraintViolationInterface[] $violations */
-        $this->assertCount(1, $violations);
-        $this->assertSame('Message value', $violations[0]->getMessage());
-        $this->assertSame('Message %param%', $violations[0]->getMessageTemplate());
-        $this->assertSame(array('%param%' => 'value'), $violations[0]->getParameters());
-        $this->assertSame('firstName', $violations[0]->getPropertyPath());
-        $this->assertSame($entity, $violations[0]->getRoot());
-        $this->assertSame('Bernhard', $violations[0]->getInvalidValue());
-        $this->assertNull($violations[0]->getPlural());
-        $this->assertNull($violations[0]->getCode());
-    }
-
-    public function testValidatePropertyValueWithClassName()
-    {
-        $test = $this;
-
-        $callback1 = function ($value, ExecutionContextInterface $context) use ($test) {
-            $propertyMetadatas = $test->metadata->getPropertyMetadata('firstName');
-
-            $test->assertSame($test::ENTITY_CLASS, $context->getClassName());
-            $test->assertSame('firstName', $context->getPropertyName());
-            $test->assertSame('', $context->getPropertyPath());
-            $test->assertSame('Group', $context->getGroup());
-            $test->assertSame($propertyMetadatas[0], $context->getMetadata());
-            $test->assertSame('Bernhard', $context->getRoot());
-            $test->assertSame('Bernhard', $context->getValue());
-            $test->assertSame('Bernhard', $value);
-
-            $context->addViolation('Message %param%', array('%param%' => 'value'));
-        };
-
-        $callback2 = function ($value, ExecutionContextInterface $context) {
-            $context->addViolation('Other violation');
-        };
-
-        $this->metadata->addPropertyConstraint('firstName', new Callback(array(
-            'callback' => $callback1,
-            'groups' => 'Group',
-        )));
-        $this->metadata->addPropertyConstraint('lastName', new Callback(array(
-            'callback' => $callback2,
-            'groups' => 'Group',
-        )));
-
-        $violations = $this->validatePropertyValue(
-            self::ENTITY_CLASS,
-            'firstName',
-            'Bernhard',
-            'Group'
-        );
-
-        /* @var ConstraintViolationInterface[] $violations */
-        $this->assertCount(1, $violations);
-        $this->assertSame('Message value', $violations[0]->getMessage());
-        $this->assertSame('Message %param%', $violations[0]->getMessageTemplate());
-        $this->assertSame(array('%param%' => 'value'), $violations[0]->getParameters());
-        $this->assertSame('', $violations[0]->getPropertyPath());
-        $this->assertSame('Bernhard', $violations[0]->getRoot());
-        $this->assertSame('Bernhard', $violations[0]->getInvalidValue());
-        $this->assertNull($violations[0]->getPlural());
-        $this->assertNull($violations[0]->getCode());
-    }
-
-    /**
-     * Cannot be UnsupportedMetadataException for BC with Symfony < 2.5.
-     *
-     * @expectedException \Symfony\Component\Validator\Exception\ValidatorException
-     * @group legacy
-     */
-    public function testLegacyValidatePropertyValueFailsIfPropertiesNotSupported()
-    {
-        // $metadata does not implement PropertyMetadataContainerInterface
-        $metadata = $this->getMock('Symfony\Component\Validator\MetadataInterface');
-
-        $this->metadataFactory->addMetadataForValue('VALUE', $metadata);
-
-        $this->validatePropertyValue('VALUE', 'someProperty', 'someValue');
-    }
-
-    /**
-     * https://github.com/symfony/symfony/issues/11604.
-     */
-    public function testValidatePropertyValueWithoutConstraints()
-    {
-        $entity = new Entity();
-        $violations = $this->validatePropertyValue($entity, 'lastName', 'foo');
-
-        $this->assertCount(0, $violations, '->validatePropertyValue() returns no violations if no constraints have been configured for the property being validated');
-    }
-
-    public function testValidateObjectOnlyOncePerGroup()
-    {
-        $entity = new Entity();
-        $entity->reference = new Reference();
-        $entity->reference2 = $entity->reference;
-
-        $callback = function ($value, ExecutionContextInterface $context) {
-            $context->addViolation('Message');
-        };
-
-        $this->metadata->addPropertyConstraint('reference', new Valid());
-        $this->metadata->addPropertyConstraint('reference2', new Valid());
-        $this->referenceMetadata->addConstraint(new Callback($callback));
-
-        $violations = $this->validate($entity);
-
-        /* @var ConstraintViolationInterface[] $violations */
-        $this->assertCount(1, $violations);
-    }
-
-    public function testValidateDifferentObjectsSeparately()
-    {
-        $entity = new Entity();
-        $entity->reference = new Reference();
-        $entity->reference2 = new Reference();
-
-        $callback = function ($value, ExecutionContextInterface $context) {
-            $context->addViolation('Message');
-        };
-
-        $this->metadata->addPropertyConstraint('reference', new Valid());
-        $this->metadata->addPropertyConstraint('reference2', new Valid());
-        $this->referenceMetadata->addConstraint(new Callback($callback));
-
-        $violations = $this->validate($entity);
-
-        /* @var ConstraintViolationInterface[] $violations */
-        $this->assertCount(2, $violations);
-    }
-
-    public function testValidateSingleGroup()
-    {
-        $entity = new Entity();
-
-        $callback = function ($value, ExecutionContextInterface $context) {
-            $context->addViolation('Message');
-        };
-
-        $this->metadata->addConstraint(new Callback(array(
-            'callback' => $callback,
-            'groups' => 'Group 1',
-        )));
-        $this->metadata->addConstraint(new Callback(array(
-            'callback' => $callback,
-            'groups' => 'Group 2',
-        )));
-
-        $violations = $this->validate($entity, null, 'Group 2');
-
-        /* @var ConstraintViolationInterface[] $violations */
-        $this->assertCount(1, $violations);
-    }
-
-    public function testValidateMultipleGroups()
-    {
-        $entity = new Entity();
-
-        $callback = function ($value, ExecutionContextInterface $context) {
-            $context->addViolation('Message');
-        };
-
-        $this->metadata->addConstraint(new Callback(array(
-            'callback' => $callback,
-            'groups' => 'Group 1',
-        )));
-        $this->metadata->addConstraint(new Callback(array(
-            'callback' => $callback,
-            'groups' => 'Group 2',
-        )));
-
-        $violations = $this->validate($entity, null, array('Group 1', 'Group 2'));
-
-        /* @var ConstraintViolationInterface[] $violations */
-        $this->assertCount(2, $violations);
-    }
-
-    public function testReplaceDefaultGroupByGroupSequenceObject()
-    {
-        $entity = new Entity();
-
-        $callback1 = function ($value, ExecutionContextInterface $context) {
-            $context->addViolation('Violation in Group 2');
-        };
-        $callback2 = function ($value, ExecutionContextInterface $context) {
-            $context->addViolation('Violation in Group 3');
-        };
-
-        $this->metadata->addConstraint(new Callback(array(
-            'callback' => function () {},
-            'groups' => 'Group 1',
-        )));
-        $this->metadata->addConstraint(new Callback(array(
-            'callback' => $callback1,
-            'groups' => 'Group 2',
-        )));
-        $this->metadata->addConstraint(new Callback(array(
-            'callback' => $callback2,
-            'groups' => 'Group 3',
-        )));
-
-        $sequence = new GroupSequence(array('Group 1', 'Group 2', 'Group 3', 'Entity'));
-        $this->metadata->setGroupSequence($sequence);
-
-        $violations = $this->validate($entity, null, 'Default');
-
-        /* @var ConstraintViolationInterface[] $violations */
-        $this->assertCount(1, $violations);
-        $this->assertSame('Violation in Group 2', $violations[0]->getMessage());
-    }
-
-    public function testReplaceDefaultGroupByGroupSequenceArray()
-    {
-        $entity = new Entity();
-
-        $callback1 = function ($value, ExecutionContextInterface $context) {
-            $context->addViolation('Violation in Group 2');
-        };
-        $callback2 = function ($value, ExecutionContextInterface $context) {
-            $context->addViolation('Violation in Group 3');
-        };
-
-        $this->metadata->addConstraint(new Callback(array(
-            'callback' => function () {},
-            'groups' => 'Group 1',
-        )));
-        $this->metadata->addConstraint(new Callback(array(
-            'callback' => $callback1,
-            'groups' => 'Group 2',
-        )));
-        $this->metadata->addConstraint(new Callback(array(
-            'callback' => $callback2,
-            'groups' => 'Group 3',
-        )));
-
-        $sequence = array('Group 1', 'Group 2', 'Group 3', 'Entity');
-        $this->metadata->setGroupSequence($sequence);
-
-        $violations = $this->validate($entity, null, 'Default');
-
-        /* @var ConstraintViolationInterface[] $violations */
-        $this->assertCount(1, $violations);
-        $this->assertSame('Violation in Group 2', $violations[0]->getMessage());
-    }
-
-    public function testPropagateDefaultGroupToReferenceWhenReplacingDefaultGroup()
-    {
-        $entity = new Entity();
-        $entity->reference = new Reference();
-
-        $callback1 = function ($value, ExecutionContextInterface $context) {
-            $context->addViolation('Violation in Default group');
-        };
-        $callback2 = function ($value, ExecutionContextInterface $context) {
-            $context->addViolation('Violation in group sequence');
-        };
-
-        $this->metadata->addPropertyConstraint('reference', new Valid());
-        $this->referenceMetadata->addConstraint(new Callback(array(
-            'callback' => $callback1,
-            'groups' => 'Default',
-        )));
-        $this->referenceMetadata->addConstraint(new Callback(array(
-            'callback' => $callback2,
-            'groups' => 'Group 1',
-        )));
-
-        $sequence = new GroupSequence(array('Group 1', 'Entity'));
-        $this->metadata->setGroupSequence($sequence);
-
-        $violations = $this->validate($entity, null, 'Default');
-
-        /* @var ConstraintViolationInterface[] $violations */
-        $this->assertCount(1, $violations);
-        $this->assertSame('Violation in Default group', $violations[0]->getMessage());
-    }
-
-    public function testValidateCustomGroupWhenDefaultGroupWasReplaced()
-    {
-        $entity = new Entity();
-
-        $callback1 = function ($value, ExecutionContextInterface $context) {
-            $context->addViolation('Violation in other group');
-        };
-        $callback2 = function ($value, ExecutionContextInterface $context) {
-            $context->addViolation('Violation in group sequence');
-        };
-
-        $this->metadata->addConstraint(new Callback(array(
-            'callback' => $callback1,
-            'groups' => 'Other Group',
-        )));
-        $this->metadata->addConstraint(new Callback(array(
-            'callback' => $callback2,
-            'groups' => 'Group 1',
-        )));
-
-        $sequence = new GroupSequence(array('Group 1', 'Entity'));
-        $this->metadata->setGroupSequence($sequence);
-
-        $violations = $this->validate($entity, null, 'Other Group');
-
-        /* @var ConstraintViolationInterface[] $violations */
-        $this->assertCount(1, $violations);
-        $this->assertSame('Violation in other group', $violations[0]->getMessage());
-    }
-
-    public function testReplaceDefaultGroupWithObjectFromGroupSequenceProvider()
-    {
-        $sequence = new GroupSequence(array('Group 1', 'Group 2', 'Group 3', 'Entity'));
-        $entity = new GroupSequenceProviderEntity($sequence);
-
-        $callback1 = function ($value, ExecutionContextInterface $context) {
-            $context->addViolation('Violation in Group 2');
-        };
-        $callback2 = function ($value, ExecutionContextInterface $context) {
-            $context->addViolation('Violation in Group 3');
-        };
-
-        $metadata = new ClassMetadata(get_class($entity));
-        $metadata->addConstraint(new Callback(array(
-            'callback' => function () {},
-            'groups' => 'Group 1',
-        )));
-        $metadata->addConstraint(new Callback(array(
-            'callback' => $callback1,
-            'groups' => 'Group 2',
-        )));
-        $metadata->addConstraint(new Callback(array(
-            'callback' => $callback2,
-            'groups' => 'Group 3',
-        )));
-        $metadata->setGroupSequenceProvider(true);
-
-        $this->metadataFactory->addMetadata($metadata);
-
-        $violations = $this->validate($entity, null, 'Default');
-
-        /* @var ConstraintViolationInterface[] $violations */
-        $this->assertCount(1, $violations);
-        $this->assertSame('Violation in Group 2', $violations[0]->getMessage());
-    }
-
-    public function testReplaceDefaultGroupWithArrayFromGroupSequenceProvider()
-    {
-        $sequence = array('Group 1', 'Group 2', 'Group 3', 'Entity');
-        $entity = new GroupSequenceProviderEntity($sequence);
-
-        $callback1 = function ($value, ExecutionContextInterface $context) {
-            $context->addViolation('Violation in Group 2');
-        };
-        $callback2 = function ($value, ExecutionContextInterface $context) {
-            $context->addViolation('Violation in Group 3');
-        };
-
-        $metadata = new ClassMetadata(get_class($entity));
-        $metadata->addConstraint(new Callback(array(
-            'callback' => function () {},
-            'groups' => 'Group 1',
-        )));
-        $metadata->addConstraint(new Callback(array(
-            'callback' => $callback1,
-            'groups' => 'Group 2',
-        )));
-        $metadata->addConstraint(new Callback(array(
-            'callback' => $callback2,
-            'groups' => 'Group 3',
-        )));
-        $metadata->setGroupSequenceProvider(true);
-
-        $this->metadataFactory->addMetadata($metadata);
-
-        $violations = $this->validate($entity, null, 'Default');
-
-        /* @var ConstraintViolationInterface[] $violations */
-        $this->assertCount(1, $violations);
-        $this->assertSame('Violation in Group 2', $violations[0]->getMessage());
-    }
-}
diff --git a/vendor/symfony/validator/Tests/Validator/LegacyValidator2Dot5ApiTest.php b/vendor/symfony/validator/Tests/Validator/LegacyValidator2Dot5ApiTest.php
deleted file mode 100644
index fd1287f..0000000
--- a/vendor/symfony/validator/Tests/Validator/LegacyValidator2Dot5ApiTest.php
+++ /dev/null
@@ -1,35 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Validator;
-
-use Symfony\Component\Translation\IdentityTranslator;
-use Symfony\Component\Validator\ConstraintValidatorFactory;
-use Symfony\Component\Validator\Context\LegacyExecutionContextFactory;
-use Symfony\Component\Validator\MetadataFactoryInterface;
-use Symfony\Component\Validator\Validator\LegacyValidator;
-
-/**
- * @group legacy
- */
-class LegacyValidator2Dot5ApiTest extends Abstract2Dot5ApiTest
-{
-    protected function createValidator(MetadataFactoryInterface $metadataFactory, array $objectInitializers = array())
-    {
-        $translator = new IdentityTranslator();
-        $translator->setLocale('en');
-
-        $contextFactory = new LegacyExecutionContextFactory($metadataFactory, $translator);
-        $validatorFactory = new ConstraintValidatorFactory();
-
-        return new LegacyValidator($contextFactory, $metadataFactory, $validatorFactory, $objectInitializers);
-    }
-}
diff --git a/vendor/symfony/validator/Tests/Validator/LegacyValidatorLegacyApiTest.php b/vendor/symfony/validator/Tests/Validator/LegacyValidatorLegacyApiTest.php
deleted file mode 100644
index 0b51a11..0000000
--- a/vendor/symfony/validator/Tests/Validator/LegacyValidatorLegacyApiTest.php
+++ /dev/null
@@ -1,35 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Validator;
-
-use Symfony\Component\Translation\IdentityTranslator;
-use Symfony\Component\Validator\ConstraintValidatorFactory;
-use Symfony\Component\Validator\Context\LegacyExecutionContextFactory;
-use Symfony\Component\Validator\MetadataFactoryInterface;
-use Symfony\Component\Validator\Validator\LegacyValidator;
-
-/**
- * @group legacy
- */
-class LegacyValidatorLegacyApiTest extends AbstractLegacyApiTest
-{
-    protected function createValidator(MetadataFactoryInterface $metadataFactory, array $objectInitializers = array())
-    {
-        $translator = new IdentityTranslator();
-        $translator->setLocale('en');
-
-        $contextFactory = new LegacyExecutionContextFactory($metadataFactory, $translator);
-        $validatorFactory = new ConstraintValidatorFactory();
-
-        return new LegacyValidator($contextFactory, $metadataFactory, $validatorFactory, $objectInitializers);
-    }
-}
diff --git a/vendor/symfony/validator/Tests/Validator/RecursiveValidator2Dot5ApiTest.php b/vendor/symfony/validator/Tests/Validator/RecursiveValidator2Dot5ApiTest.php
deleted file mode 100644
index b27e645..0000000
--- a/vendor/symfony/validator/Tests/Validator/RecursiveValidator2Dot5ApiTest.php
+++ /dev/null
@@ -1,57 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests\Validator;
-
-use Symfony\Component\Translation\IdentityTranslator;
-use Symfony\Component\Validator\ConstraintValidatorFactory;
-use Symfony\Component\Validator\Context\ExecutionContextFactory;
-use Symfony\Component\Validator\MetadataFactoryInterface;
-use Symfony\Component\Validator\Tests\Fixtures\Entity;
-use Symfony\Component\Validator\Validator\RecursiveValidator;
-
-class RecursiveValidator2Dot5ApiTest extends Abstract2Dot5ApiTest
-{
-    protected function createValidator(MetadataFactoryInterface $metadataFactory, array $objectInitializers = array())
-    {
-        $translator = new IdentityTranslator();
-        $translator->setLocale('en');
-
-        $contextFactory = new ExecutionContextFactory($translator);
-        $validatorFactory = new ConstraintValidatorFactory();
-
-        return new RecursiveValidator($contextFactory, $metadataFactory, $validatorFactory, $objectInitializers);
-    }
-
-    public function testEmptyGroupsArrayDoesNotTriggerDeprecation()
-    {
-        $entity = new Entity();
-
-        $validatorContext = $this->getMock('Symfony\Component\Validator\Validator\ContextualValidatorInterface');
-        $validatorContext
-            ->expects($this->once())
-            ->method('validate')
-            ->with($entity, null, array())
-            ->willReturnSelf();
-
-        $validator = $this
-            ->getMockBuilder('Symfony\Component\Validator\Validator\RecursiveValidator')
-            ->disableOriginalConstructor()
-            ->setMethods(array('startContext'))
-            ->getMock();
-        $validator
-            ->expects($this->once())
-            ->method('startContext')
-            ->willReturn($validatorContext);
-
-        $validator->validate($entity, null, array());
-    }
-}
diff --git a/vendor/symfony/validator/Tests/ValidatorBuilderTest.php b/vendor/symfony/validator/Tests/ValidatorBuilderTest.php
deleted file mode 100644
index fbc8631..0000000
--- a/vendor/symfony/validator/Tests/ValidatorBuilderTest.php
+++ /dev/null
@@ -1,116 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Validator\Tests;
-
-use Symfony\Component\Validator\ValidatorBuilder;
-use Symfony\Component\Validator\ValidatorBuilderInterface;
-
-class ValidatorBuilderTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @var ValidatorBuilderInterface
-     */
-    protected $builder;
-
-    protected function setUp()
-    {
-        $this->builder = new ValidatorBuilder();
-    }
-
-    protected function tearDown()
-    {
-        $this->builder = null;
-    }
-
-    public function testAddObjectInitializer()
-    {
-        $this->assertSame($this->builder, $this->builder->addObjectInitializer(
-            $this->getMock('Symfony\Component\Validator\ObjectInitializerInterface')
-        ));
-    }
-
-    public function testAddObjectInitializers()
-    {
-        $this->assertSame($this->builder, $this->builder->addObjectInitializers(array()));
-    }
-
-    public function testAddXmlMapping()
-    {
-        $this->assertSame($this->builder, $this->builder->addXmlMapping('mapping'));
-    }
-
-    public function testAddXmlMappings()
-    {
-        $this->assertSame($this->builder, $this->builder->addXmlMappings(array()));
-    }
-
-    public function testAddYamlMapping()
-    {
-        $this->assertSame($this->builder, $this->builder->addYamlMapping('mapping'));
-    }
-
-    public function testAddYamlMappings()
-    {
-        $this->assertSame($this->builder, $this->builder->addYamlMappings(array()));
-    }
-
-    public function testAddMethodMapping()
-    {
-        $this->assertSame($this->builder, $this->builder->addMethodMapping('mapping'));
-    }
-
-    public function testAddMethodMappings()
-    {
-        $this->assertSame($this->builder, $this->builder->addMethodMappings(array()));
-    }
-
-    public function testEnableAnnotationMapping()
-    {
-        $this->assertSame($this->builder, $this->builder->enableAnnotationMapping());
-    }
-
-    public function testDisableAnnotationMapping()
-    {
-        $this->assertSame($this->builder, $this->builder->disableAnnotationMapping());
-    }
-
-    public function testSetMetadataCache()
-    {
-        $this->assertSame($this->builder, $this->builder->setMetadataCache(
-            $this->getMock('Symfony\Component\Validator\Mapping\Cache\CacheInterface'))
-        );
-    }
-
-    public function testSetConstraintValidatorFactory()
-    {
-        $this->assertSame($this->builder, $this->builder->setConstraintValidatorFactory(
-            $this->getMock('Symfony\Component\Validator\ConstraintValidatorFactoryInterface'))
-        );
-    }
-
-    public function testSetTranslator()
-    {
-        $this->assertSame($this->builder, $this->builder->setTranslator(
-            $this->getMock('Symfony\Component\Translation\TranslatorInterface'))
-        );
-    }
-
-    public function testSetTranslationDomain()
-    {
-        $this->assertSame($this->builder, $this->builder->setTranslationDomain('TRANS_DOMAIN'));
-    }
-
-    public function testGetValidator()
-    {
-        $this->assertInstanceOf('Symfony\Component\Validator\Validator\RecursiveValidator', $this->builder->getValidator());
-    }
-}
diff --git a/vendor/symfony/yaml/Tests/DumperTest.php b/vendor/symfony/yaml/Tests/DumperTest.php
deleted file mode 100644
index b103b9a..0000000
--- a/vendor/symfony/yaml/Tests/DumperTest.php
+++ /dev/null
@@ -1,236 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Yaml\Tests;
-
-use Symfony\Component\Yaml\Parser;
-use Symfony\Component\Yaml\Dumper;
-
-class DumperTest extends \PHPUnit_Framework_TestCase
-{
-    protected $parser;
-    protected $dumper;
-    protected $path;
-
-    protected $array = array(
-        '' => 'bar',
-        'foo' => '#bar',
-        'foo\'bar' => array(),
-        'bar' => array(1, 'foo'),
-        'foobar' => array(
-            'foo' => 'bar',
-            'bar' => array(1, 'foo'),
-            'foobar' => array(
-                'foo' => 'bar',
-                'bar' => array(1, 'foo'),
-            ),
-        ),
-    );
-
-    protected function setUp()
-    {
-        $this->parser = new Parser();
-        $this->dumper = new Dumper();
-        $this->path = __DIR__.'/Fixtures';
-    }
-
-    protected function tearDown()
-    {
-        $this->parser = null;
-        $this->dumper = null;
-        $this->path = null;
-        $this->array = null;
-    }
-
-    public function testSetIndentation()
-    {
-        $this->dumper->setIndentation(7);
-
-        $expected = <<<EOF
-'': bar
-foo: '#bar'
-'foo''bar': {  }
-bar:
-       - 1
-       - foo
-foobar:
-       foo: bar
-       bar:
-              - 1
-              - foo
-       foobar:
-              foo: bar
-              bar:
-                     - 1
-                     - foo
-
-EOF;
-        $this->assertEquals($expected, $this->dumper->dump($this->array, 4, 0));
-    }
-
-    public function testSpecifications()
-    {
-        $files = $this->parser->parse(file_get_contents($this->path.'/index.yml'));
-        foreach ($files as $file) {
-            $yamls = file_get_contents($this->path.'/'.$file.'.yml');
-
-            // split YAMLs documents
-            foreach (preg_split('/^---( %YAML\:1\.0)?/m', $yamls) as $yaml) {
-                if (!$yaml) {
-                    continue;
-                }
-
-                $test = $this->parser->parse($yaml);
-                if (isset($test['dump_skip']) && $test['dump_skip']) {
-                    continue;
-                } elseif (isset($test['todo']) && $test['todo']) {
-                    // TODO
-                } else {
-                    eval('$expected = '.trim($test['php']).';');
-                    $this->assertSame($expected, $this->parser->parse($this->dumper->dump($expected, 10)), $test['test']);
-                }
-            }
-        }
-    }
-
-    public function testInlineLevel()
-    {
-        $expected = <<<EOF
-{ '': bar, foo: '#bar', 'foo''bar': {  }, bar: [1, foo], foobar: { foo: bar, bar: [1, foo], foobar: { foo: bar, bar: [1, foo] } } }
-EOF;
-        $this->assertEquals($expected, $this->dumper->dump($this->array, -10), '->dump() takes an inline level argument');
-        $this->assertEquals($expected, $this->dumper->dump($this->array, 0), '->dump() takes an inline level argument');
-
-        $expected = <<<EOF
-'': bar
-foo: '#bar'
-'foo''bar': {  }
-bar: [1, foo]
-foobar: { foo: bar, bar: [1, foo], foobar: { foo: bar, bar: [1, foo] } }
-
-EOF;
-        $this->assertEquals($expected, $this->dumper->dump($this->array, 1), '->dump() takes an inline level argument');
-
-        $expected = <<<EOF
-'': bar
-foo: '#bar'
-'foo''bar': {  }
-bar:
-    - 1
-    - foo
-foobar:
-    foo: bar
-    bar: [1, foo]
-    foobar: { foo: bar, bar: [1, foo] }
-
-EOF;
-        $this->assertEquals($expected, $this->dumper->dump($this->array, 2), '->dump() takes an inline level argument');
-
-        $expected = <<<EOF
-'': bar
-foo: '#bar'
-'foo''bar': {  }
-bar:
-    - 1
-    - foo
-foobar:
-    foo: bar
-    bar:
-        - 1
-        - foo
-    foobar:
-        foo: bar
-        bar: [1, foo]
-
-EOF;
-        $this->assertEquals($expected, $this->dumper->dump($this->array, 3), '->dump() takes an inline level argument');
-
-        $expected = <<<EOF
-'': bar
-foo: '#bar'
-'foo''bar': {  }
-bar:
-    - 1
-    - foo
-foobar:
-    foo: bar
-    bar:
-        - 1
-        - foo
-    foobar:
-        foo: bar
-        bar:
-            - 1
-            - foo
-
-EOF;
-        $this->assertEquals($expected, $this->dumper->dump($this->array, 4), '->dump() takes an inline level argument');
-        $this->assertEquals($expected, $this->dumper->dump($this->array, 10), '->dump() takes an inline level argument');
-    }
-
-    public function testObjectSupportEnabled()
-    {
-        $dump = $this->dumper->dump(array('foo' => new A(), 'bar' => 1), 0, 0, false, true);
-
-        $this->assertEquals('{ foo: !!php/object:O:30:"Symfony\Component\Yaml\Tests\A":1:{s:1:"a";s:3:"foo";}, bar: 1 }', $dump, '->dump() is able to dump objects');
-    }
-
-    public function testObjectSupportDisabledButNoExceptions()
-    {
-        $dump = $this->dumper->dump(array('foo' => new A(), 'bar' => 1));
-
-        $this->assertEquals('{ foo: null, bar: 1 }', $dump, '->dump() does not dump objects when disabled');
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Yaml\Exception\DumpException
-     */
-    public function testObjectSupportDisabledWithExceptions()
-    {
-        $this->dumper->dump(array('foo' => new A(), 'bar' => 1), 0, 0, true, false);
-    }
-
-    /**
-     * @dataProvider getEscapeSequences
-     */
-    public function testEscapedEscapeSequencesInQuotedScalar($input, $expected)
-    {
-        $this->assertEquals($expected, $this->dumper->dump($input));
-    }
-
-    public function getEscapeSequences()
-    {
-        return array(
-            'null' => array("\t\\0", '"\t\\\\0"'),
-            'bell' => array("\t\\a", '"\t\\\\a"'),
-            'backspace' => array("\t\\b", '"\t\\\\b"'),
-            'horizontal-tab' => array("\t\\t", '"\t\\\\t"'),
-            'line-feed' => array("\t\\n", '"\t\\\\n"'),
-            'vertical-tab' => array("\t\\v", '"\t\\\\v"'),
-            'form-feed' => array("\t\\f", '"\t\\\\f"'),
-            'carriage-return' => array("\t\\r", '"\t\\\\r"'),
-            'escape' => array("\t\\e", '"\t\\\\e"'),
-            'space' => array("\t\\ ", '"\t\\\\ "'),
-            'double-quote' => array("\t\\\"", '"\t\\\\\\""'),
-            'slash' => array("\t\\/", '"\t\\\\/"'),
-            'backslash' => array("\t\\\\", '"\t\\\\\\\\"'),
-            'next-line' => array("\t\\N", '"\t\\\\N"'),
-            'non-breaking-space' => array("\t\\�", '"\t\\\\�"'),
-            'line-separator' => array("\t\\L", '"\t\\\\L"'),
-            'paragraph-separator' => array("\t\\P", '"\t\\\\P"'),
-        );
-    }
-}
-
-class A
-{
-    public $a = 'foo';
-}
diff --git a/vendor/symfony/yaml/Tests/Fixtures/YtsAnchorAlias.yml b/vendor/symfony/yaml/Tests/Fixtures/YtsAnchorAlias.yml
deleted file mode 100644
index 5f9c942..0000000
--- a/vendor/symfony/yaml/Tests/Fixtures/YtsAnchorAlias.yml
+++ /dev/null
@@ -1,31 +0,0 @@
---- %YAML:1.0
-test: Simple Alias Example
-brief: >
-    If you need to refer to the same item of data twice,
-    you can give that item an alias.  The alias is a plain
-    string, starting with an ampersand.  The item may then
-    be referred to by the alias throughout your document
-    by using an asterisk before the name of the alias.
-    This is called an anchor.
-yaml: |
-    - &showell Steve
-    - Clark
-    - Brian
-    - Oren
-    - *showell
-php: |
-    array('Steve', 'Clark', 'Brian', 'Oren', 'Steve')
-
----
-test: Alias of a Mapping
-brief: >
-    An alias can be used on any item of data, including
-    sequences, mappings, and other complex data types.
-yaml: |
-    - &hello
-        Meat: pork
-        Starch: potato
-    - banana
-    - *hello
-php: |
-    array(array('Meat'=>'pork', 'Starch'=>'potato'), 'banana', array('Meat'=>'pork', 'Starch'=>'potato'))
diff --git a/vendor/symfony/yaml/Tests/Fixtures/YtsBasicTests.yml b/vendor/symfony/yaml/Tests/Fixtures/YtsBasicTests.yml
deleted file mode 100644
index dfd9302..0000000
--- a/vendor/symfony/yaml/Tests/Fixtures/YtsBasicTests.yml
+++ /dev/null
@@ -1,202 +0,0 @@
---- %YAML:1.0
-test: Simple Sequence
-brief: |
-    You can specify a list in YAML by placing each
-    member of the list on a new line with an opening
-    dash. These lists are called sequences.
-yaml: |
-    - apple
-    - banana
-    - carrot
-php: |
-    array('apple', 'banana', 'carrot')
----
-test: Sequence With Item Being Null In The Middle
-brief: |
-    You can specify a list in YAML by placing each
-    member of the list on a new line with an opening
-    dash. These lists are called sequences.
-yaml: |
-    - apple
-    -
-    - carrot
-php: |
-    array('apple', null, 'carrot')
----
-test: Sequence With Last Item Being Null
-brief: |
-    You can specify a list in YAML by placing each
-    member of the list on a new line with an opening
-    dash. These lists are called sequences.
-yaml: |
-    - apple
-    - banana
-    -
-php: |
-    array('apple', 'banana', null)
----
-test: Nested Sequences
-brief: |
-    You can include a sequence within another
-    sequence by giving the sequence an empty
-    dash, followed by an indented list.
-yaml: |
-    -
-     - foo
-     - bar
-     - baz
-php: |
-    array(array('foo', 'bar', 'baz'))
----
-test: Mixed Sequences
-brief: |
-    Sequences can contain any YAML data,
-    including strings and other sequences.
-yaml: |
-    - apple
-    -
-     - foo
-     - bar
-     - x123
-    - banana
-    - carrot
-php: |
-    array('apple', array('foo', 'bar', 'x123'), 'banana', 'carrot')
----
-test: Deeply Nested Sequences
-brief: |
-    Sequences can be nested even deeper, with each
-    level of indentation representing a level of
-    depth.
-yaml: |
-    -
-     -
-      - uno
-      - dos
-php: |
-    array(array(array('uno', 'dos')))
----
-test: Simple Mapping
-brief: |
-    You can add a keyed list (also known as a dictionary or
-    hash) to your document by placing each member of the
-    list on a new line, with a colon separating the key
-    from its value.  In YAML, this type of list is called
-    a mapping.
-yaml: |
-    foo: whatever
-    bar: stuff
-php: |
-    array('foo' => 'whatever', 'bar' => 'stuff')
----
-test: Sequence in a Mapping
-brief: |
-    A value in a mapping can be a sequence.
-yaml: |
-    foo: whatever
-    bar:
-     - uno
-     - dos
-php: |
-    array('foo' => 'whatever', 'bar' => array('uno', 'dos'))
----
-test: Nested Mappings
-brief: |
-    A value in a mapping can be another mapping.
-yaml: |
-    foo: whatever
-    bar:
-     fruit: apple
-     name: steve
-     sport: baseball
-php: |
-    array(
-      'foo' => 'whatever',
-      'bar' => array(
-         'fruit' => 'apple',
-         'name' => 'steve',
-         'sport' => 'baseball'
-       )
-    )
----
-test: Mixed Mapping
-brief: |
-    A mapping can contain any assortment
-    of mappings and sequences as values.
-yaml: |
-    foo: whatever
-    bar:
-     -
-       fruit: apple
-       name: steve
-       sport: baseball
-     - more
-     -
-       python: rocks
-       perl: papers
-       ruby: scissorses
-php: |
-    array(
-      'foo' => 'whatever',
-      'bar' => array(
-        array(
-            'fruit' => 'apple',
-            'name' => 'steve',
-            'sport' => 'baseball'
-        ),
-        'more',
-        array(
-            'python' => 'rocks',
-            'perl' => 'papers',
-            'ruby' => 'scissorses'
-        )
-      )
-    )
----
-test: Mapping-in-Sequence Shortcut
-todo: true
-brief: |
-     If you are adding a mapping to a sequence, you
-     can place the mapping on the same line as the
-     dash as a shortcut.
-yaml: |
-     - work on YAML.py:
-        - work on Store
-php: |
-    array(array('work on YAML.py' => array('work on Store')))
----
-test: Sequence-in-Mapping Shortcut
-todo: true
-brief: |
-     The dash in a sequence counts as indentation, so
-     you can add a sequence inside of a mapping without
-     needing spaces as indentation.
-yaml: |
-     allow:
-     - 'localhost'
-     - '%.sourceforge.net'
-     - '%.freepan.org'
-php: |
-     array('allow' => array('localhost', '%.sourceforge.net', '%.freepan.org'))
----
-todo: true
-test: Merge key
-brief: |
-     A merge key ('<<') can be used in a mapping to insert other mappings.  If
-     the value associated with the merge key is a mapping, each of its key/value
-     pairs is inserted into the current mapping.
-yaml: |
-     mapping:
-       name: Joe
-       job: Accountant
-       <<:
-         age: 38
-php: |
-     array(
-       'mapping' =>
-       array(
-         'name' => 'Joe',
-         'job' => 'Accountant',
-         'age' => 38
-       )
-     )
diff --git a/vendor/symfony/yaml/Tests/Fixtures/YtsBlockMapping.yml b/vendor/symfony/yaml/Tests/Fixtures/YtsBlockMapping.yml
deleted file mode 100644
index f7ca469..0000000
--- a/vendor/symfony/yaml/Tests/Fixtures/YtsBlockMapping.yml
+++ /dev/null
@@ -1,51 +0,0 @@
----
-test: One Element Mapping
-brief: |
-    A mapping with one key/value pair
-yaml: |
-    foo: bar
-php: |
-    array('foo' => 'bar')
----
-test: Multi Element Mapping
-brief: |
-    More than one key/value pair
-yaml: |
-    red: baron
-    white: walls
-    blue: berries
-php: |
-    array(
-     'red' => 'baron',
-     'white' => 'walls',
-     'blue' => 'berries',
-    )
----
-test: Values aligned
-brief: |
-    Often times human editors of documents will align the values even
-    though YAML emitters generally don't.
-yaml: |
-    red:   baron
-    white: walls
-    blue:  berries
-php: |
-    array(
-     'red' => 'baron',
-     'white' => 'walls',
-     'blue' => 'berries',
-    )
----
-test: Colons aligned
-brief: |
-    Spaces can come before the ': ' key/value separator.
-yaml: |
-    red   : baron
-    white : walls
-    blue  : berries
-php: |
-    array(
-     'red' => 'baron',
-     'white' => 'walls',
-     'blue' => 'berries',
-    )
diff --git a/vendor/symfony/yaml/Tests/Fixtures/YtsDocumentSeparator.yml b/vendor/symfony/yaml/Tests/Fixtures/YtsDocumentSeparator.yml
deleted file mode 100644
index d988102..0000000
--- a/vendor/symfony/yaml/Tests/Fixtures/YtsDocumentSeparator.yml
+++ /dev/null
@@ -1,85 +0,0 @@
---- %YAML:1.0
-test: Trailing Document Separator
-todo: true
-brief: >
-    You can separate YAML documents
-    with a string of three dashes.
-yaml: |
-    - foo: 1
-      bar: 2
-    ---
-    more: stuff
-python: |
-    [
-        [ { 'foo': 1, 'bar': 2 } ],
-        { 'more': 'stuff' }
-    ]
-ruby: |
-    [ { 'foo' => 1, 'bar' => 2 } ]
-
----
-test: Leading Document Separator
-todo: true
-brief: >
-    You can explicitly give an opening
-    document separator to your YAML stream.
-yaml: |
-    ---
-    - foo: 1
-      bar: 2
-    ---
-    more: stuff
-python: |
-    [
-        [ {'foo': 1, 'bar': 2}],
-        {'more': 'stuff'}
-    ]
-ruby: |
-    [ { 'foo' => 1, 'bar' => 2 } ]
-
----
-test: YAML Header
-todo: true
-brief: >
-    The opening separator can contain directives
-    to the YAML parser, such as the version
-    number.
-yaml: |
-    --- %YAML:1.0
-    foo: 1
-    bar: 2
-php: |
-    array('foo' => 1, 'bar' => 2)
-documents: 1
-
----
-test: Red Herring Document Separator
-brief: >
-    Separators included in blocks or strings
-    are treated as blocks or strings, as the
-    document separator should have no indentation
-    preceding it.
-yaml: |
-    foo: |
-        ---
-php: |
-    array('foo' => "---\n")
-
----
-test: Multiple Document Separators in Block
-brief: >
-    This technique allows you to embed other YAML
-    documents within literal blocks.
-yaml: |
-    foo: |
-        ---
-        foo: bar
-        ---
-        yo: baz
-    bar: |
-        fooness
-php: |
-    array(
-       'foo' => "---\nfoo: bar\n---\nyo: baz\n",
-       'bar' => "fooness\n"
-    )
diff --git a/vendor/symfony/yaml/Tests/Fixtures/YtsErrorTests.yml b/vendor/symfony/yaml/Tests/Fixtures/YtsErrorTests.yml
deleted file mode 100644
index e8506fc..0000000
--- a/vendor/symfony/yaml/Tests/Fixtures/YtsErrorTests.yml
+++ /dev/null
@@ -1,25 +0,0 @@
----
-test: Missing value for hash item
-todo: true
-brief: |
-    Third item in this hash doesn't have a value
-yaml: |
-    okay: value
-    also okay: ~
-    causes error because no value specified
-    last key: value okay here too
-python-error: causes error because no value specified
-
----
-test: Not indenting enough
-brief: |
-    There was a bug in PyYaml where it was off by one
-    in the indentation check.  It was allowing the YAML
-    below.
-# This is actually valid YAML now. Someone should tell showell.
-yaml: |
-    foo:
-    firstline: 1
-    secondline: 2
-php: |
-  array('foo' => null, 'firstline' => 1, 'secondline' => 2)
diff --git a/vendor/symfony/yaml/Tests/Fixtures/YtsFlowCollections.yml b/vendor/symfony/yaml/Tests/Fixtures/YtsFlowCollections.yml
deleted file mode 100644
index 03090e4..0000000
--- a/vendor/symfony/yaml/Tests/Fixtures/YtsFlowCollections.yml
+++ /dev/null
@@ -1,60 +0,0 @@
----
-test: Simple Inline Array
-brief: >
-    Sequences can be contained on a
-    single line, using the inline syntax.
-    Separate each entry with commas and
-    enclose in square brackets.
-yaml: |
-    seq: [ a, b, c ]
-php: |
-    array('seq' => array('a', 'b', 'c'))
----
-test: Simple Inline Hash
-brief: >
-    Mapping can also be contained on
-    a single line, using the inline
-    syntax.  Each key-value pair is
-    separated by a colon, with a comma
-    between each entry in the mapping.
-    Enclose with curly braces.
-yaml: |
-    hash: { name: Steve, foo: bar }
-php: |
-    array('hash' => array('name' => 'Steve', 'foo' => 'bar'))
----
-test: Multi-line Inline Collections
-todo: true
-brief: >
-    Both inline sequences and inline mappings
-    can span multiple lines, provided that you
-    indent the additional lines.
-yaml: |
-    languages: [ Ruby,
-                 Perl,
-                 Python ]
-    websites: { YAML: yaml.org,
-                Ruby: ruby-lang.org,
-                Python: python.org,
-                Perl: use.perl.org }
-php: |
-    array(
-      'languages' => array('Ruby', 'Perl', 'Python'),
-      'websites' => array(
-        'YAML' => 'yaml.org',
-        'Ruby' => 'ruby-lang.org',
-        'Python' => 'python.org',
-        'Perl' => 'use.perl.org'
-      )
-    )
----
-test: Commas in Values (not in the spec!)
-todo: true
-brief: >
-    List items in collections are delimited by commas, but
-    there must be a space after each comma.  This allows you
-    to add numbers without quoting.
-yaml: |
-    attendances: [ 45,123, 70,000, 17,222 ]
-php: |
-    array('attendances' => array(45123, 70000, 17222))
diff --git a/vendor/symfony/yaml/Tests/Fixtures/YtsFoldedScalars.yml b/vendor/symfony/yaml/Tests/Fixtures/YtsFoldedScalars.yml
deleted file mode 100644
index a14735a..0000000
--- a/vendor/symfony/yaml/Tests/Fixtures/YtsFoldedScalars.yml
+++ /dev/null
@@ -1,176 +0,0 @@
---- %YAML:1.0
-test: Single ending newline
-brief: >
-    A pipe character, followed by an indented
-    block of text is treated as a literal
-    block, in which newlines are preserved
-    throughout the block, including the final
-    newline.
-yaml: |
-    ---
-    this: |
-        Foo
-        Bar
-php: |
-    array('this' => "Foo\nBar\n")
----
-test: The '+' indicator
-brief: >
-    The '+' indicator says to keep newlines at the end of text
-    blocks.
-yaml: |
-    normal: |
-      extra new lines not kept
-
-    preserving: |+
-      extra new lines are kept
-
-
-    dummy: value
-php: |
-    array(
-        'normal' => "extra new lines not kept\n",
-        'preserving' => "extra new lines are kept\n\n\n",
-        'dummy' => 'value'
-    )
----
-test: Three trailing newlines in literals
-brief: >
-    To give you more control over how space
-    is preserved in text blocks, YAML has
-    the keep '+' and chomp '-' indicators.
-    The keep indicator will preserve all
-    ending newlines, while the chomp indicator
-    will strip all ending newlines.
-yaml: |
-    clipped: |
-        This has one newline.
-
-
-
-    same as "clipped" above: "This has one newline.\n"
-
-    stripped: |-
-        This has no newline.
-
-
-
-    same as "stripped" above: "This has no newline."
-
-    kept: |+
-        This has four newlines.
-
-
-
-    same as "kept" above: "This has four newlines.\n\n\n\n"
-php: |
-    array(
-      'clipped' => "This has one newline.\n",
-      'same as "clipped" above' => "This has one newline.\n",
-      'stripped' => 'This has no newline.',
-      'same as "stripped" above' => 'This has no newline.',
-      'kept' => "This has four newlines.\n\n\n\n",
-      'same as "kept" above' => "This has four newlines.\n\n\n\n"
-    )
----
-test: Extra trailing newlines with spaces
-todo: true
-brief: >
-    Normally, only a single newline is kept
-    from the end of a literal block, unless the
-    keep '+' character is used in combination
-    with the pipe.  The following example
-    will preserve all ending whitespace
-    since the last line of both literal blocks
-    contains spaces which extend past the indentation
-    level.
-yaml: |
-    ---
-    this: |
-        Foo
-
-
-    kept: |+
-        Foo
-
-
-php: |
-    array('this' => "Foo\n\n  \n",
-      'kept' => "Foo\n\n  \n" )
-
----
-test: Folded Block in a Sequence
-brief: >
-    A greater-then character, followed by an indented
-    block of text is treated as a folded block, in
-    which lines of text separated by a single newline
-    are concatenated as a single line.
-yaml: |
-    ---
-    - apple
-    - banana
-    - >
-        can't you see
-        the beauty of yaml?
-        hmm
-    - dog
-php: |
-    array(
-        'apple',
-        'banana',
-        "can't you see the beauty of yaml? hmm\n",
-        'dog'
-    )
----
-test: Folded Block as a Mapping Value
-brief: >
-    Both literal and folded blocks can be
-    used in collections, as values in a
-    sequence or a mapping.
-yaml: |
-    ---
-    quote: >
-        Mark McGwire's
-        year was crippled
-        by a knee injury.
-    source: espn
-php: |
-    array(
-        'quote' => "Mark McGwire's year was crippled by a knee injury.\n",
-        'source' => 'espn'
-    )
----
-test: Three trailing newlines in folded blocks
-brief: >
-    The keep and chomp indicators can also
-    be applied to folded blocks.
-yaml: |
-    clipped: >
-        This has one newline.
-
-
-
-    same as "clipped" above: "This has one newline.\n"
-
-    stripped: >-
-        This has no newline.
-
-
-
-    same as "stripped" above: "This has no newline."
-
-    kept: >+
-        This has four newlines.
-
-
-
-    same as "kept" above: "This has four newlines.\n\n\n\n"
-php: |
-    array(
-      'clipped' => "This has one newline.\n",
-      'same as "clipped" above' => "This has one newline.\n",
-      'stripped' => 'This has no newline.',
-      'same as "stripped" above' => 'This has no newline.',
-      'kept' => "This has four newlines.\n\n\n\n",
-      'same as "kept" above' => "This has four newlines.\n\n\n\n"
-    )
diff --git a/vendor/symfony/yaml/Tests/Fixtures/YtsNullsAndEmpties.yml b/vendor/symfony/yaml/Tests/Fixtures/YtsNullsAndEmpties.yml
deleted file mode 100644
index 9a5300f..0000000
--- a/vendor/symfony/yaml/Tests/Fixtures/YtsNullsAndEmpties.yml
+++ /dev/null
@@ -1,45 +0,0 @@
---- %YAML:1.0
-test: Empty Sequence
-brief: >
-    You can represent the empty sequence
-    with an empty inline sequence.
-yaml: |
-    empty: []
-php: |
-    array('empty' => array())
----
-test: Empty Mapping
-brief: >
-    You can represent the empty mapping
-    with an empty inline mapping.
-yaml: |
-    empty: {}
-php: |
-    array('empty' => array())
----
-test: Empty Sequence as Entire Document
-yaml: |
-    []
-php: |
-    array()
----
-test: Empty Mapping as Entire Document
-yaml: |
-    {}
-php: |
-    array()
----
-test: Null as Document
-yaml: |
-    ~
-php: |
-    null
----
-test: Empty String
-brief: >
-    You can represent an empty string
-    with a pair of quotes.
-yaml: |
-    ''
-php: |
-    ''
diff --git a/vendor/symfony/yaml/Tests/Fixtures/YtsSpecificationExamples.yml b/vendor/symfony/yaml/Tests/Fixtures/YtsSpecificationExamples.yml
deleted file mode 100644
index 0a8b5de..0000000
--- a/vendor/symfony/yaml/Tests/Fixtures/YtsSpecificationExamples.yml
+++ /dev/null
@@ -1,1697 +0,0 @@
---- %YAML:1.0
-test: Sequence of scalars
-spec: 2.1
-yaml: |
-  - Mark McGwire
-  - Sammy Sosa
-  - Ken Griffey
-php: |
-  array('Mark McGwire', 'Sammy Sosa', 'Ken Griffey')
----
-test: Mapping of scalars to scalars
-spec: 2.2
-yaml: |
-  hr:  65
-  avg: 0.278
-  rbi: 147
-php: |
-  array('hr' => 65, 'avg' => 0.278, 'rbi' => 147)
----
-test: Mapping of scalars to sequences
-spec: 2.3
-yaml: |
-    american:
-       - Boston Red Sox
-       - Detroit Tigers
-       - New York Yankees
-    national:
-       - New York Mets
-       - Chicago Cubs
-       - Atlanta Braves
-php: |
-    array('american' =>
-        array( 'Boston Red Sox', 'Detroit Tigers',
-          'New York Yankees' ),
-      'national' =>
-        array( 'New York Mets', 'Chicago Cubs',
-          'Atlanta Braves' )
-    )
----
-test: Sequence of mappings
-spec: 2.4
-yaml: |
-    -
-      name: Mark McGwire
-      hr:   65
-      avg:  0.278
-    -
-      name: Sammy Sosa
-      hr:   63
-      avg:  0.288
-php: |
-    array(
-      array('name' => 'Mark McGwire', 'hr' => 65, 'avg' => 0.278),
-      array('name' => 'Sammy Sosa', 'hr' => 63, 'avg' => 0.288)
-    )
----
-test: Legacy A5
-todo: true
-spec: legacy_A5
-yaml: |
-    ?
-        - New York Yankees
-        - Atlanta Braves
-    :
-      - 2001-07-02
-      - 2001-08-12
-      - 2001-08-14
-    ?
-        - Detroit Tigers
-        - Chicago Cubs
-    :
-      - 2001-07-23
-perl-busted: >
-    YAML.pm will be able to emulate this behavior soon. In this regard
-    it may be somewhat more correct than Python's native behaviour which
-    can only use tuples as mapping keys. PyYAML will also need to figure
-    out some clever way to roundtrip structured keys.
-python: |
-    [
-    {
-        ('New York Yankees', 'Atlanta Braves'):
-            [yaml.timestamp('2001-07-02'),
-             yaml.timestamp('2001-08-12'),
-             yaml.timestamp('2001-08-14')],
-        ('Detroit Tigers', 'Chicago Cubs'):
-        [yaml.timestamp('2001-07-23')]
-    }
-    ]
-ruby: |
-    {
-      [ 'New York Yankees', 'Atlanta Braves' ] =>
-        [ Date.new( 2001, 7, 2 ), Date.new( 2001, 8, 12 ), Date.new( 2001, 8, 14 ) ],
-      [ 'Detroit Tigers', 'Chicago Cubs' ] =>
-        [ Date.new( 2001, 7, 23 ) ]
-    }
-syck: |
-  struct test_node seq1[] = {
-      { T_STR, 0, "New York Yankees" },
-      { T_STR, 0, "Atlanta Braves" },
-      end_node
-  };
-  struct test_node seq2[] = {
-      { T_STR, 0, "2001-07-02" },
-      { T_STR, 0, "2001-08-12" },
-      { T_STR, 0, "2001-08-14" },
-      end_node
-  };
-  struct test_node seq3[] = {
-      { T_STR, 0, "Detroit Tigers" },
-      { T_STR, 0, "Chicago Cubs" },
-      end_node
-  };
-  struct test_node seq4[] = {
-      { T_STR, 0, "2001-07-23" },
-      end_node
-  };
-  struct test_node map[] = {
-      { T_SEQ, 0, 0, seq1 },
-      { T_SEQ, 0, 0, seq2 },
-      { T_SEQ, 0, 0, seq3 },
-      { T_SEQ, 0, 0, seq4 },
-      end_node
-  };
-  struct test_node stream[] = {
-      { T_MAP, 0, 0, map },
-      end_node
-  };
-
----
-test: Sequence of sequences
-spec: 2.5
-yaml: |
-  - [ name         , hr , avg   ]
-  - [ Mark McGwire , 65 , 0.278 ]
-  - [ Sammy Sosa   , 63 , 0.288 ]
-php: |
-  array(
-    array( 'name', 'hr', 'avg' ),
-    array( 'Mark McGwire', 65, 0.278 ),
-    array( 'Sammy Sosa', 63, 0.288 )
-  )
----
-test: Mapping of mappings
-todo: true
-spec: 2.6
-yaml: |
-  Mark McGwire: {hr: 65, avg: 0.278}
-  Sammy Sosa: {
-      hr: 63,
-      avg: 0.288
-    }
-php: |
-  array(
-    'Mark McGwire' =>
-      array( 'hr' => 65, 'avg' => 0.278 ),
-    'Sammy Sosa' =>
-      array( 'hr' => 63, 'avg' => 0.288 )
-  )
----
-test: Two documents in a stream each with a leading comment
-todo: true
-spec: 2.7
-yaml: |
-  # Ranking of 1998 home runs
-  ---
-  - Mark McGwire
-  - Sammy Sosa
-  - Ken Griffey
-
-  # Team ranking
-  ---
-  - Chicago Cubs
-  - St Louis Cardinals
-ruby: |
-  y = YAML::Stream.new
-  y.add( [ 'Mark McGwire', 'Sammy Sosa', 'Ken Griffey' ] )
-  y.add( [ 'Chicago Cubs', 'St Louis Cardinals' ] )
-documents: 2
-
----
-test: Play by play feed from a game
-todo: true
-spec: 2.8
-yaml: |
-  ---
-  time: 20:03:20
-  player: Sammy Sosa
-  action: strike (miss)
-  ...
-  ---
-  time: 20:03:47
-  player: Sammy Sosa
-  action: grand slam
-  ...
-perl: |
-  [ 'Mark McGwire', 'Sammy Sosa', 'Ken Griffey' ]
-documents: 2
-
----
-test: Single document with two comments
-spec: 2.9
-yaml: |
-  hr: # 1998 hr ranking
-    - Mark McGwire
-    - Sammy Sosa
-  rbi:
-    # 1998 rbi ranking
-    - Sammy Sosa
-    - Ken Griffey
-php: |
-  array(
-    'hr' => array( 'Mark McGwire', 'Sammy Sosa' ),
-    'rbi' => array( 'Sammy Sosa', 'Ken Griffey' )
-  )
----
-test: Node for Sammy Sosa appears twice in this document
-spec: 2.10
-yaml: |
-   ---
-   hr:
-      - Mark McGwire
-      # Following node labeled SS
-      - &SS Sammy Sosa
-   rbi:
-      - *SS # Subsequent occurrence
-      - Ken Griffey
-php: |
-   array(
-      'hr' =>
-         array('Mark McGwire', 'Sammy Sosa'),
-      'rbi' =>
-         array('Sammy Sosa', 'Ken Griffey')
-   )
----
-test: Mapping between sequences
-todo: true
-spec: 2.11
-yaml: |
-   ? # PLAY SCHEDULE
-     - Detroit Tigers
-     - Chicago Cubs
-   :
-     - 2001-07-23
-
-   ? [ New York Yankees,
-       Atlanta Braves ]
-   : [ 2001-07-02, 2001-08-12,
-       2001-08-14 ]
-ruby: |
-   {
-      [ 'Detroit Tigers', 'Chicago Cubs' ] => [ Date.new( 2001, 7, 23 ) ],
-      [ 'New York Yankees', 'Atlanta Braves' ] => [ Date.new( 2001, 7, 2 ), Date.new( 2001, 8, 12 ), Date.new( 2001, 8, 14 ) ]
-   }
-syck: |
-  struct test_node seq1[] = {
-      { T_STR, 0, "New York Yankees" },
-      { T_STR, 0, "Atlanta Braves" },
-      end_node
-  };
-  struct test_node seq2[] = {
-      { T_STR, 0, "2001-07-02" },
-      { T_STR, 0, "2001-08-12" },
-      { T_STR, 0, "2001-08-14" },
-      end_node
-  };
-  struct test_node seq3[] = {
-      { T_STR, 0, "Detroit Tigers" },
-      { T_STR, 0, "Chicago Cubs" },
-      end_node
-  };
-  struct test_node seq4[] = {
-      { T_STR, 0, "2001-07-23" },
-      end_node
-  };
-  struct test_node map[] = {
-      { T_SEQ, 0, 0, seq3 },
-      { T_SEQ, 0, 0, seq4 },
-      { T_SEQ, 0, 0, seq1 },
-      { T_SEQ, 0, 0, seq2 },
-      end_node
-  };
-  struct test_node stream[] = {
-      { T_MAP, 0, 0, map },
-      end_node
-  };
-
----
-test: Sequence key shortcut
-spec: 2.12
-yaml: |
-  ---
-  # products purchased
-  - item    : Super Hoop
-    quantity: 1
-  - item    : Basketball
-    quantity: 4
-  - item    : Big Shoes
-    quantity: 1
-php: |
-  array (
-    array (
-      'item' => 'Super Hoop',
-      'quantity' => 1,
-    ),
-    array (
-      'item' => 'Basketball',
-      'quantity' => 4,
-    ),
-    array (
-      'item' => 'Big Shoes',
-      'quantity' => 1,
-    )
-  )
-perl: |
-  [
-     { item => 'Super Hoop', quantity => 1 },
-     { item => 'Basketball', quantity => 4 },
-     { item => 'Big Shoes',  quantity => 1 }
-  ]
-
-ruby: |
-  [
-     { 'item' => 'Super Hoop', 'quantity' => 1 },
-     { 'item' => 'Basketball', 'quantity' => 4 },
-     { 'item' => 'Big Shoes', 'quantity' => 1 }
-  ]
-python: |
-  [
-       { 'item': 'Super Hoop', 'quantity': 1 },
-       { 'item': 'Basketball', 'quantity': 4 },
-       { 'item': 'Big Shoes',  'quantity': 1 }
-  ]
-syck: |
-  struct test_node map1[] = {
-      { T_STR, 0, "item" },
-          { T_STR, 0, "Super Hoop" },
-      { T_STR, 0, "quantity" },
-          { T_STR, 0, "1" },
-      end_node
-  };
-  struct test_node map2[] = {
-      { T_STR, 0, "item" },
-          { T_STR, 0, "Basketball" },
-      { T_STR, 0, "quantity" },
-          { T_STR, 0, "4" },
-      end_node
-  };
-  struct test_node map3[] = {
-      { T_STR, 0, "item" },
-          { T_STR, 0, "Big Shoes" },
-      { T_STR, 0, "quantity" },
-          { T_STR, 0, "1" },
-      end_node
-  };
-  struct test_node seq[] = {
-      { T_MAP, 0, 0, map1 },
-      { T_MAP, 0, 0, map2 },
-      { T_MAP, 0, 0, map3 },
-      end_node
-  };
-  struct test_node stream[] = {
-      { T_SEQ, 0, 0, seq },
-      end_node
-  };
-
-
----
-test: Literal perserves newlines
-todo: true
-spec: 2.13
-yaml: |
-  # ASCII Art
-  --- |
-    \//||\/||
-    // ||  ||_
-perl: |
-  "\\//||\\/||\n// ||  ||_\n"
-ruby: |
-  "\\//||\\/||\n// ||  ||_\n"
-python: |
-    [
-        flushLeft(
-        """
-        \//||\/||
-        // ||  ||_
-        """
-        )
-    ]
-syck: |
-  struct test_node stream[] = {
-      { T_STR, 0, "\\//||\\/||\n// ||  ||_\n" },
-      end_node
-  };
-
----
-test: Folded treats newlines as a space
-todo: true
-spec: 2.14
-yaml: |
-  ---
-    Mark McGwire's
-    year was crippled
-    by a knee injury.
-perl: |
-  "Mark McGwire's year was crippled by a knee injury."
-ruby: |
-  "Mark McGwire's year was crippled by a knee injury."
-python: |
-    [ "Mark McGwire's year was crippled by a knee injury." ]
-syck: |
-  struct test_node stream[] = {
-      { T_STR, 0, "Mark McGwire's year was crippled by a knee injury." },
-      end_node
-  };
-
----
-test: Newlines preserved for indented and blank lines
-todo: true
-spec: 2.15
-yaml: |
-  --- >
-   Sammy Sosa completed another
-   fine season with great stats.
-
-     63 Home Runs
-     0.288 Batting Average
-
-   What a year!
-perl: |
-  "Sammy Sosa completed another fine season with great stats.\n\n  63 Home Runs\n  0.288 Batting Average\n\nWhat a year!\n"
-ruby: |
-  "Sammy Sosa completed another fine season with great stats.\n\n  63 Home Runs\n  0.288 Batting Average\n\nWhat a year!\n"
-python: |
-    [
-        flushLeft(
-        """
-        Sammy Sosa completed another fine season with great stats.
-
-          63 Home Runs
-          0.288 Batting Average
-
-        What a year!
-        """
-        )
-    ]
-syck: |
-  struct test_node stream[] = {
-      { T_STR, 0, "Sammy Sosa completed another fine season with great stats.\n\n  63 Home Runs\n  0.288 Batting Average\n\nWhat a year!\n" },
-      end_node
-  };
-
-
----
-test: Indentation determines scope
-spec: 2.16
-yaml: |
-  name: Mark McGwire
-  accomplishment: >
-     Mark set a major league
-     home run record in 1998.
-  stats: |
-     65 Home Runs
-     0.278 Batting Average
-php: |
-  array(
-    'name' => 'Mark McGwire',
-    'accomplishment' => "Mark set a major league home run record in 1998.\n",
-    'stats' => "65 Home Runs\n0.278 Batting Average\n"
-  )
----
-test: Quoted scalars
-todo: true
-spec: 2.17
-yaml: |
-  unicode: "Sosa did fine.\u263A"
-  control: "\b1998\t1999\t2000\n"
-  hexesc:  "\x0D\x0A is \r\n"
-
-  single: '"Howdy!" he cried.'
-  quoted: ' # not a ''comment''.'
-  tie-fighter: '|\-*-/|'
-ruby: |
-  {
-    "tie-fighter" => "|\\-*-/|",
-    "control"=>"\0101998\t1999\t2000\n",
-    "unicode"=>"Sosa did fine." + ["263A".hex ].pack('U*'),
-    "quoted"=>" # not a 'comment'.",
-    "single"=>"\"Howdy!\" he cried.",
-    "hexesc"=>"\r\n is \r\n"
-  }
----
-test: Multiline flow scalars
-todo: true
-spec: 2.18
-yaml: |
-  plain:
-    This unquoted scalar
-    spans many lines.
-
-  quoted: "So does this
-    quoted scalar.\n"
-ruby: |
-  {
-    'plain' => 'This unquoted scalar spans many lines.',
-    'quoted' => "So does this quoted scalar.\n"
-  }
----
-test: Integers
-spec: 2.19
-yaml: |
-  canonical: 12345
-  decimal: +12,345
-  octal: 014
-  hexadecimal: 0xC
-php: |
-  array(
-    'canonical' => 12345,
-    'decimal' => 12345,
-    'octal' => 014,
-    'hexadecimal' => 0xC
-  )
----
-# FIX: spec shows parens around -inf and NaN
-test: Floating point
-spec: 2.20
-yaml: |
-  canonical: 1.23015e+3
-  exponential: 12.3015e+02
-  fixed: 1,230.15
-  negative infinity: -.inf
-  not a number: .NaN
-  float as whole number: !!float 1
-php: |
-  array(
-    'canonical' => 1230.15,
-    'exponential' => 1230.15,
-    'fixed' => 1230.15,
-    'negative infinity' => log(0),
-    'not a number' => -log(0),
-    'float as whole number' => (float) 1
-  )
----
-test: Miscellaneous
-spec: 2.21
-yaml: |
-  null: ~
-  true: true
-  false: false
-  string: '12345'
-php: |
-  array(
-    '' => null,
-    1 => true,
-    0 => false,
-    'string' => '12345'
-  )
----
-test: Timestamps
-todo: true
-spec: 2.22
-yaml: |
-  canonical: 2001-12-15T02:59:43.1Z
-  iso8601:  2001-12-14t21:59:43.10-05:00
-  spaced:  2001-12-14 21:59:43.10 -05:00
-  date:   2002-12-14 # Time is noon UTC
-php: |
-  array(
-    'canonical' => YAML::mktime( 2001, 12, 15, 2, 59, 43, 0.10 ),
-    'iso8601' => YAML::mktime( 2001, 12, 14, 21, 59, 43, 0.10, "-05:00" ),
-    'spaced' => YAML::mktime( 2001, 12, 14, 21, 59, 43, 0.10, "-05:00" ),
-    'date' => Date.new( 2002, 12, 14 )
-  )
----
-test: legacy Timestamps test
-todo: true
-spec: legacy D4
-yaml: |
-    canonical: 2001-12-15T02:59:43.00Z
-    iso8601:  2001-02-28t21:59:43.00-05:00
-    spaced:  2001-12-14 21:59:43.00 -05:00
-    date:   2002-12-14
-php: |
-   array(
-     'canonical' => Time::utc( 2001, 12, 15, 2, 59, 43, 0 ),
-     'iso8601' => YAML::mktime( 2001, 2, 28, 21, 59, 43, 0, "-05:00" ),
-     'spaced' => YAML::mktime( 2001, 12, 14, 21, 59, 43, 0, "-05:00" ),
-     'date' => Date.new( 2002, 12, 14 )
-   )
----
-test: Various explicit families
-todo: true
-spec: 2.23
-yaml: |
-  not-date: !str 2002-04-28
-  picture: !binary |
-   R0lGODlhDAAMAIQAAP//9/X
-   17unp5WZmZgAAAOfn515eXv
-   Pz7Y6OjuDg4J+fn5OTk6enp
-   56enmleECcgggoBADs=
-
-  application specific tag: !!something |
-   The semantics of the tag
-   above may be different for
-   different documents.
-
-ruby-setup: |
-  YAML.add_private_type( "something" ) do |type, val|
-    "SOMETHING: #{val}"
-  end
-ruby: |
-  {
-    'not-date' => '2002-04-28',
-    'picture' => "GIF89a\f\000\f\000\204\000\000\377\377\367\365\365\356\351\351\345fff\000\000\000\347\347\347^^^\363\363\355\216\216\216\340\340\340\237\237\237\223\223\223\247\247\247\236\236\236i^\020' \202\n\001\000;",
-    'application specific tag' => "SOMETHING: The semantics of the tag\nabove may be different for\ndifferent documents.\n"
-  }
----
-test: Application specific family
-todo: true
-spec: 2.24
-yaml: |
-  # Establish a tag prefix
-  --- !clarkevans.com,2002/graph/^shape
-    # Use the prefix: shorthand for
-    # !clarkevans.com,2002/graph/circle
-  - !^circle
-    center: &ORIGIN {x: 73, 'y': 129}
-    radius: 7
-  - !^line # !clarkevans.com,2002/graph/line
-    start: *ORIGIN
-    finish: { x: 89, 'y': 102 }
-  - !^label
-    start: *ORIGIN
-    color: 0xFFEEBB
-    value: Pretty vector drawing.
-ruby-setup: |
-  YAML.add_domain_type( "clarkevans.com,2002", 'graph/shape' ) { |type, val|
-    if Array === val
-      val << "Shape Container"
-      val
-    else
-      raise YAML::Error, "Invalid graph of class #{ val.class }: " + val.inspect
-    end
-  }
-  one_shape_proc = Proc.new { |type, val|
-    scheme, domain, type = type.split( /:/, 3 )
-    if val.is_a? ::Hash
-      val['TYPE'] = "Shape: #{type}"
-      val
-    else
-      raise YAML::Error, "Invalid graph of class #{ val.class }: " + val.inspect
-    end
-  }
-  YAML.add_domain_type( "clarkevans.com,2002", 'graph/circle', &one_shape_proc )
-  YAML.add_domain_type( "clarkevans.com,2002", 'graph/line', &one_shape_proc )
-  YAML.add_domain_type( "clarkevans.com,2002", 'graph/label', &one_shape_proc )
-ruby: |
-  [
-    {
-      "radius" => 7,
-      "center"=>
-      {
-        "x" => 73,
-        "y" => 129
-      },
-      "TYPE" => "Shape: graph/circle"
-    }, {
-      "finish" =>
-      {
-        "x" => 89,
-        "y" => 102
-      },
-      "TYPE" => "Shape: graph/line",
-      "start" =>
-      {
-        "x" => 73,
-        "y" => 129
-      }
-    }, {
-      "TYPE" => "Shape: graph/label",
-      "value" => "Pretty vector drawing.",
-      "start" =>
-      {
-        "x" => 73,
-        "y" => 129
-      },
-      "color" => 16772795
-    },
-    "Shape Container"
-  ]
-# ---
-# test: Unordered set
-# spec: 2.25
-# yaml: |
-#   # sets are represented as a
-#   # mapping where each key is
-#   # associated with the empty string
-#   --- !set
-#   ? Mark McGwire
-#   ? Sammy Sosa
-#   ? Ken Griff
----
-test: Ordered mappings
-todo: true
-spec: 2.26
-yaml: |
-  # ordered maps are represented as
-  # a sequence of mappings, with
-  # each mapping having one key
-  --- !omap
-  - Mark McGwire: 65
-  - Sammy Sosa: 63
-  - Ken Griffy: 58
-ruby: |
-  YAML::Omap[
-    'Mark McGwire', 65,
-    'Sammy Sosa', 63,
-    'Ken Griffy', 58
-  ]
----
-test: Invoice
-dump_skip: true
-spec: 2.27
-yaml: |
-  --- !clarkevans.com,2002/^invoice
-  invoice: 34843
-  date   : 2001-01-23
-  bill-to: &id001
-      given  : Chris
-      family : Dumars
-      address:
-          lines: |
-              458 Walkman Dr.
-              Suite #292
-          city    : Royal Oak
-          state   : MI
-          postal  : 48046
-  ship-to: *id001
-  product:
-      -
-        sku         : BL394D
-        quantity    : 4
-        description : Basketball
-        price       : 450.00
-      -
-        sku         : BL4438H
-        quantity    : 1
-        description : Super Hoop
-        price       : 2392.00
-  tax  : 251.42
-  total: 4443.52
-  comments: >
-    Late afternoon is best.
-    Backup contact is Nancy
-    Billsmer @ 338-4338.
-php: |
-  array(
-     'invoice' => 34843, 'date' => mktime(0, 0, 0, 1, 23, 2001),
-     'bill-to' =>
-      array( 'given' => 'Chris', 'family' => 'Dumars', 'address' => array( 'lines' => "458 Walkman Dr.\nSuite #292\n", 'city' => 'Royal Oak', 'state' => 'MI', 'postal' => 48046 ) )
-     , 'ship-to' =>
-      array( 'given' => 'Chris', 'family' => 'Dumars', 'address' => array( 'lines' => "458 Walkman Dr.\nSuite #292\n", 'city' => 'Royal Oak', 'state' => 'MI', 'postal' => 48046 ) )
-     , 'product' =>
-       array(
-        array( 'sku' => 'BL394D', 'quantity' => 4, 'description' => 'Basketball', 'price' => 450.00 ),
-        array( 'sku' => 'BL4438H', 'quantity' => 1, 'description' => 'Super Hoop', 'price' => 2392.00 )
-      ),
-     'tax' => 251.42, 'total' => 4443.52,
-     'comments' => "Late afternoon is best. Backup contact is Nancy Billsmer @ 338-4338.\n"
-  )
----
-test: Log file
-todo: true
-spec: 2.28
-yaml: |
-  ---
-  Time: 2001-11-23 15:01:42 -05:00
-  User: ed
-  Warning: >
-    This is an error message
-    for the log file
-  ---
-  Time: 2001-11-23 15:02:31 -05:00
-  User: ed
-  Warning: >
-    A slightly different error
-    message.
-  ---
-  Date: 2001-11-23 15:03:17 -05:00
-  User: ed
-  Fatal: >
-    Unknown variable "bar"
-  Stack:
-    - file: TopClass.py
-      line: 23
-      code: |
-        x = MoreObject("345\n")
-    - file: MoreClass.py
-      line: 58
-      code: |-
-        foo = bar
-ruby: |
-  y = YAML::Stream.new
-  y.add( { 'Time' => YAML::mktime( 2001, 11, 23, 15, 01, 42, 00, "-05:00" ),
-           'User' => 'ed', 'Warning' => "This is an error message for the log file\n" } )
-  y.add( { 'Time' => YAML::mktime( 2001, 11, 23, 15, 02, 31, 00, "-05:00" ),
-           'User' => 'ed', 'Warning' => "A slightly different error message.\n" } )
-  y.add( { 'Date' => YAML::mktime( 2001, 11, 23, 15, 03, 17, 00, "-05:00" ),
-           'User' => 'ed', 'Fatal' => "Unknown variable \"bar\"\n",
-           'Stack' => [
-           { 'file' => 'TopClass.py', 'line' => 23, 'code' => "x = MoreObject(\"345\\n\")\n" },
-           { 'file' => 'MoreClass.py', 'line' => 58, 'code' => "foo = bar" } ] } )
-documents: 3
-
----
-test: Throwaway comments
-yaml: |
-   ### These are four throwaway comment  ###
-
-   ### lines (the second line is empty). ###
-   this: |   # Comments may trail lines.
-      contains three lines of text.
-      The third one starts with a
-      # character. This isn't a comment.
-
-   # These are three throwaway comment
-   # lines (the first line is empty).
-php: |
-   array(
-     'this' => "contains three lines of text.\nThe third one starts with a\n# character. This isn't a comment.\n"
-   )
----
-test: Document with a single value
-todo: true
-yaml: |
-   --- >
-   This YAML stream contains a single text value.
-   The next stream is a log file - a sequence of
-   log entries. Adding an entry to the log is a
-   simple matter of appending it at the end.
-ruby: |
-   "This YAML stream contains a single text value. The next stream is a log file - a sequence of log entries. Adding an entry to the log is a simple matter of appending it at the end.\n"
----
-test: Document stream
-todo: true
-yaml: |
-   ---
-   at: 2001-08-12 09:25:00.00 Z
-   type: GET
-   HTTP: '1.0'
-   url: '/index.html'
-   ---
-   at: 2001-08-12 09:25:10.00 Z
-   type: GET
-   HTTP: '1.0'
-   url: '/toc.html'
-ruby: |
-   y = YAML::Stream.new
-   y.add( {
-      'at' => Time::utc( 2001, 8, 12, 9, 25, 00 ),
-      'type' => 'GET',
-      'HTTP' => '1.0',
-      'url' => '/index.html'
-   } )
-   y.add( {
-      'at' => Time::utc( 2001, 8, 12, 9, 25, 10 ),
-      'type' => 'GET',
-      'HTTP' => '1.0',
-      'url' => '/toc.html'
-   } )
-documents: 2
-
----
-test: Top level mapping
-yaml: |
-   # This stream is an example of a top-level mapping.
-   invoice : 34843
-   date    : 2001-01-23
-   total   : 4443.52
-php: |
-   array(
-      'invoice' => 34843,
-      'date' => mktime(0, 0, 0, 1, 23, 2001),
-      'total' => 4443.52
-   )
----
-test: Single-line documents
-todo: true
-yaml: |
-  # The following is a sequence of three documents.
-  # The first contains an empty mapping, the second
-  # an empty sequence, and the last an empty string.
-  --- {}
-  --- [ ]
-  --- ''
-ruby: |
-  y = YAML::Stream.new
-  y.add( {} )
-  y.add( [] )
-  y.add( '' )
-documents: 3
-
----
-test: Document with pause
-todo: true
-yaml: |
-  # A communication channel based on a YAML stream.
-  ---
-  sent at: 2002-06-06 11:46:25.10 Z
-  payload: Whatever
-  # Receiver can process this as soon as the following is sent:
-  ...
-  # Even if the next message is sent long after:
-  ---
-  sent at: 2002-06-06 12:05:53.47 Z
-  payload: Whatever
-  ...
-ruby: |
-  y = YAML::Stream.new
-  y.add(
-    { 'sent at' => YAML::mktime( 2002, 6, 6, 11, 46, 25, 0.10 ),
-      'payload' => 'Whatever' }
-  )
-  y.add(
-    { "payload" => "Whatever", "sent at" => YAML::mktime( 2002, 6, 6, 12, 5, 53, 0.47 ) }
-  )
-documents: 2
-
----
-test: Explicit typing
-yaml: |
-   integer: 12
-   also int: ! "12"
-   string: !str 12
-php: |
-   array( 'integer' => 12, 'also int' => 12, 'string' => '12' )
----
-test: Private types
-todo: true
-yaml: |
-  # Both examples below make use of the 'x-private:ball'
-  # type family URI, but with different semantics.
-  ---
-  pool: !!ball
-    number: 8
-    color: black
-  ---
-  bearing: !!ball
-    material: steel
-ruby: |
-  y = YAML::Stream.new
-  y.add( { 'pool' =>
-    YAML::PrivateType.new( 'ball',
-      { 'number' => 8, 'color' => 'black' } ) }
-  )
-  y.add( { 'bearing' =>
-    YAML::PrivateType.new( 'ball',
-      { 'material' => 'steel' } ) }
-  )
-documents: 2
-
----
-test: Type family under yaml.org
-yaml: |
-  # The URI is 'tag:yaml.org,2002:str'
-  - !str a Unicode string
-php: |
-  array( 'a Unicode string' )
----
-test: Type family under perl.yaml.org
-todo: true
-yaml: |
-  # The URI is 'tag:perl.yaml.org,2002:Text::Tabs'
-  - !perl/Text::Tabs {}
-ruby: |
-  [ YAML::DomainType.new( 'perl.yaml.org,2002', 'Text::Tabs', {} ) ]
----
-test: Type family under clarkevans.com
-todo: true
-yaml: |
-  # The URI is 'tag:clarkevans.com,2003-02:timesheet'
-  - !clarkevans.com,2003-02/timesheet {}
-ruby: |
-  [ YAML::DomainType.new( 'clarkevans.com,2003-02', 'timesheet', {} ) ]
----
-test: URI Escaping
-todo: true
-yaml: |
-  same:
-    - !domain.tld,2002/type\x30 value
-    - !domain.tld,2002/type0 value
-  different: # As far as the YAML parser is concerned
-    - !domain.tld,2002/type%30 value
-    - !domain.tld,2002/type0 value
-ruby-setup: |
-  YAML.add_domain_type( "domain.tld,2002", "type0" ) { |type, val|
-    "ONE: #{val}"
-  }
-  YAML.add_domain_type( "domain.tld,2002", "type%30" ) { |type, val|
-    "TWO: #{val}"
-  }
-ruby: |
-  { 'same' => [ 'ONE: value', 'ONE: value' ], 'different' => [ 'TWO: value', 'ONE: value' ] }
----
-test: URI Prefixing
-todo: true
-yaml: |
-  # 'tag:domain.tld,2002:invoice' is some type family.
-  invoice: !domain.tld,2002/^invoice
-    # 'seq' is shorthand for 'tag:yaml.org,2002:seq'.
-    # This does not effect '^customer' below
-    # because it is does not specify a prefix.
-    customers: !seq
-      # '^customer' is shorthand for the full
-      # notation 'tag:domain.tld,2002:customer'.
-      - !^customer
-        given : Chris
-        family : Dumars
-ruby-setup: |
-  YAML.add_domain_type( "domain.tld,2002", /(invoice|customer)/ ) { |type, val|
-    if val.is_a? ::Hash
-      scheme, domain, type = type.split( /:/, 3 )
-      val['type'] = "domain #{type}"
-      val
-    else
-      raise YAML::Error, "Not a Hash in domain.tld/invoice: " + val.inspect
-    end
-  }
-ruby: |
-  { "invoice"=> { "customers"=> [ { "given"=>"Chris", "type"=>"domain customer", "family"=>"Dumars" } ], "type"=>"domain invoice" } }
-
----
-test: Overriding anchors
-yaml: |
-  anchor : &A001 This scalar has an anchor.
-  override : &A001 >
-   The alias node below is a
-   repeated use of this value.
-  alias : *A001
-php: |
-  array( 'anchor' => 'This scalar has an anchor.',
-    'override' => "The alias node below is a repeated use of this value.\n",
-    'alias' => "The alias node below is a repeated use of this value.\n" )
----
-test: Flow and block formatting
-todo: true
-yaml: |
-  empty: []
-  flow: [ one, two, three # May span lines,
-           , four,           # indentation is
-             five ]          # mostly ignored.
-  block:
-   - First item in top sequence
-   -
-    - Subordinate sequence entry
-   - >
-     A folded sequence entry
-   - Sixth item in top sequence
-ruby: |
-  { 'empty' => [], 'flow' => [ 'one', 'two', 'three', 'four', 'five' ],
-    'block' => [ 'First item in top sequence', [ 'Subordinate sequence entry' ],
-    "A folded sequence entry\n", 'Sixth item in top sequence' ] }
----
-test: Complete mapping test
-todo: true
-yaml: |
- empty: {}
- flow: { one: 1, two: 2 }
- spanning: { one: 1,
-    two: 2 }
- block:
-  first : First entry
-  second:
-   key: Subordinate mapping
-  third:
-   - Subordinate sequence
-   - { }
-   - Previous mapping is empty.
-   - A key: value pair in a sequence.
-     A second: key:value pair.
-   - The previous entry is equal to the following one.
-   -
-     A key: value pair in a sequence.
-     A second: key:value pair.
-  !float 12 : This key is a float.
-  ? >
-   ?
-  : This key had to be protected.
-  "\a" : This key had to be escaped.
-  ? >
-   This is a
-   multi-line
-   folded key
-  : Whose value is
-    also multi-line.
-  ? this also works as a key
-  : with a value at the next line.
-  ?
-   - This key
-   - is a sequence
-  :
-   - With a sequence value.
-  ?
-   This: key
-   is a: mapping
-  :
-   with a: mapping value.
-ruby: |
-  { 'empty' => {}, 'flow' => { 'one' => 1, 'two' => 2 },
-    'spanning' => { 'one' => 1, 'two' => 2 },
-    'block' => { 'first' => 'First entry', 'second' =>
-    { 'key' => 'Subordinate mapping' }, 'third' =>
-      [ 'Subordinate sequence', {}, 'Previous mapping is empty.',
-        { 'A key' => 'value pair in a sequence.', 'A second' => 'key:value pair.' },
-        'The previous entry is equal to the following one.',
-        { 'A key' => 'value pair in a sequence.', 'A second' => 'key:value pair.' } ],
-    12.0 => 'This key is a float.', "?\n" => 'This key had to be protected.',
-    "\a" => 'This key had to be escaped.',
-    "This is a multi-line folded key\n" => "Whose value is also multi-line.",
-    'this also works as a key' => 'with a value at the next line.',
-    [ 'This key', 'is a sequence' ] => [ 'With a sequence value.' ] } }
-  # Couldn't recreate map exactly, so we'll do a detailed check to be sure it's entact
-  obj_y['block'].keys.each { |k|
-    if Hash === k
-      v = obj_y['block'][k]
-      if k['This'] == 'key' and k['is a'] == 'mapping' and v['with a'] == 'mapping value.'
-         obj_r['block'][k] = v
-      end
-    end
-  }
----
-test: Literal explicit indentation
-yaml: |
-   # Explicit indentation must
-   # be given in all the three
-   # following cases.
-   leading spaces: |2
-         This value starts with four spaces.
-
-   leading line break: |2
-
-     This value starts with a line break.
-
-   leading comment indicator: |2
-     # first line starts with a
-     # character.
-
-   # Explicit indentation may
-   # also be given when it is
-   # not required.
-   redundant: |2
-     This value is indented 2 spaces.
-php: |
-   array(
-      'leading spaces' => "    This value starts with four spaces.\n",
-      'leading line break' => "\nThis value starts with a line break.\n",
-      'leading comment indicator' => "# first line starts with a\n# character.\n",
-      'redundant' => "This value is indented 2 spaces.\n"
-   )
----
-test: Chomping and keep modifiers
-yaml: |
-    clipped: |
-        This has one newline.
-
-    same as "clipped" above: "This has one newline.\n"
-
-    stripped: |-
-        This has no newline.
-
-    same as "stripped" above: "This has no newline."
-
-    kept: |+
-        This has two newlines.
-
-    same as "kept" above: "This has two newlines.\n\n"
-php: |
-    array(
-      'clipped' => "This has one newline.\n",
-      'same as "clipped" above' => "This has one newline.\n",
-      'stripped' => 'This has no newline.',
-      'same as "stripped" above' => 'This has no newline.',
-      'kept' => "This has two newlines.\n\n",
-      'same as "kept" above' => "This has two newlines.\n\n"
-    )
----
-test: Literal combinations
-todo: true
-yaml: |
-   empty: |
-
-   literal: |
-    The \ ' " characters may be
-    freely used. Leading white
-       space is significant.
-
-    Line breaks are significant.
-    Thus this value contains one
-    empty line and ends with a
-    single line break, but does
-    not start with one.
-
-   is equal to: "The \\ ' \" characters may \
-    be\nfreely used. Leading white\n   space \
-    is significant.\n\nLine breaks are \
-    significant.\nThus this value contains \
-    one\nempty line and ends with a\nsingle \
-    line break, but does\nnot start with one.\n"
-
-   # Comments may follow a block
-   # scalar value. They must be
-   # less indented.
-
-   # Modifiers may be combined in any order.
-   indented and chomped: |2-
-       This has no newline.
-
-   also written as: |-2
-       This has no newline.
-
-   both are equal to: "  This has no newline."
-php: |
-   array(
-     'empty' => '',
-     'literal' => "The \\ ' \" characters may be\nfreely used. Leading white\n   space " +
-       "is significant.\n\nLine breaks are significant.\nThus this value contains one\n" +
-       "empty line and ends with a\nsingle line break, but does\nnot start with one.\n",
-     'is equal to' => "The \\ ' \" characters may be\nfreely used. Leading white\n   space " +
-       "is significant.\n\nLine breaks are significant.\nThus this value contains one\n" +
-       "empty line and ends with a\nsingle line break, but does\nnot start with one.\n",
-     'indented and chomped' => '  This has no newline.',
-     'also written as' => '  This has no newline.',
-     'both are equal to' => '  This has no newline.'
-   )
----
-test: Folded combinations
-todo: true
-yaml: |
-   empty: >
-
-   one paragraph: >
-    Line feeds are converted
-    to spaces, so this value
-    contains no line breaks
-    except for the final one.
-
-   multiple paragraphs: >2
-
-     An empty line, either
-     at the start or in
-     the value:
-
-     Is interpreted as a
-     line break. Thus this
-     value contains three
-     line breaks.
-
-   indented text: >
-       This is a folded
-       paragraph followed
-       by a list:
-        * first entry
-        * second entry
-       Followed by another
-       folded paragraph,
-       another list:
-
-        * first entry
-
-        * second entry
-
-       And a final folded
-       paragraph.
-
-   above is equal to: |
-       This is a folded paragraph followed by a list:
-        * first entry
-        * second entry
-       Followed by another folded paragraph, another list:
-
-        * first entry
-
-        * second entry
-
-       And a final folded paragraph.
-
-   # Explicit comments may follow
-   # but must be less indented.
-php: |
-   array(
-     'empty' => '',
-     'one paragraph' => 'Line feeds are converted to spaces, so this value'.
-       " contains no line breaks except for the final one.\n",
-     'multiple paragraphs' => "\nAn empty line, either at the start or in the value:\n".
-       "Is interpreted as a line break. Thus this value contains three line breaks.\n",
-     'indented text' => "This is a folded paragraph followed by a list:\n".
-       " * first entry\n * second entry\nFollowed by another folded paragraph, ".
-       "another list:\n\n * first entry\n\n * second entry\n\nAnd a final folded paragraph.\n",
-     'above is equal to' => "This is a folded paragraph followed by a list:\n".
-       " * first entry\n * second entry\nFollowed by another folded paragraph, ".
-       "another list:\n\n * first entry\n\n * second entry\n\nAnd a final folded paragraph.\n"
-   )
----
-test: Single quotes
-todo: true
-yaml: |
-   empty: ''
-   second: '! : \ etc. can be used freely.'
-   third: 'a single quote '' must be escaped.'
-   span: 'this contains
-         six spaces
-
-         and one
-         line break'
-   is same as: "this contains six spaces\nand one line break"
-php: |
-   array(
-     'empty' => '',
-     'second' => '! : \\ etc. can be used freely.',
-     'third' => "a single quote ' must be escaped.",
-     'span' => "this contains six spaces\nand one line break",
-     'is same as' => "this contains six spaces\nand one line break"
-   )
----
-test: Double quotes
-todo: true
-yaml: |
-   empty: ""
-   second: "! : etc. can be used freely."
-   third: "a \" or a \\ must be escaped."
-   fourth: "this value ends with an LF.\n"
-   span: "this contains
-     four  \
-         spaces"
-   is equal to: "this contains four  spaces"
-php: |
-   array(
-     'empty' => '',
-     'second' => '! : etc. can be used freely.',
-     'third' => 'a " or a \\ must be escaped.',
-     'fourth' => "this value ends with an LF.\n",
-     'span' => "this contains four  spaces",
-     'is equal to' => "this contains four  spaces"
-   )
----
-test: Unquoted strings
-todo: true
-yaml: |
-   first: There is no unquoted empty string.
-
-   second: 12          ## This is an integer.
-
-   third: !str 12      ## This is a string.
-
-   span: this contains
-         six spaces
-
-         and one
-         line break
-
-   indicators: this has no comments.
-               #:foo and bar# are
-               both text.
-
-   flow: [ can span
-              lines, # comment
-              like
-              this ]
-
-   note: { one-line keys: but multi-line values }
-
-php: |
-   array(
-     'first' => 'There is no unquoted empty string.',
-     'second' => 12,
-     'third' => '12',
-     'span' => "this contains six spaces\nand one line break",
-     'indicators' => "this has no comments. #:foo and bar# are both text.",
-     'flow' => [ 'can span lines', 'like this' ],
-     'note' => { 'one-line keys' => 'but multi-line values' }
-   )
----
-test: Spanning sequences
-todo: true
-yaml: |
-   # The following are equal seqs
-   # with different identities.
-   flow: [ one, two ]
-   spanning: [ one,
-        two ]
-   block:
-     - one
-     - two
-php: |
-   array(
-     'flow' => [ 'one', 'two' ],
-     'spanning' => [ 'one', 'two' ],
-     'block' => [ 'one', 'two' ]
-   )
----
-test: Flow mappings
-yaml: |
-   # The following are equal maps
-   # with different identities.
-   flow: { one: 1, two: 2 }
-   block:
-       one: 1
-       two: 2
-php: |
-   array(
-     'flow' => array( 'one' => 1, 'two' => 2 ),
-     'block' => array( 'one' => 1, 'two' => 2 )
-   )
----
-test: Representations of 12
-todo: true
-yaml: |
-   - 12 # An integer
-   # The following scalars
-   # are loaded to the
-   # string value '1' '2'.
-   - !str 12
-   - '12'
-   - "12"
-   - "\
-     1\
-     2\
-     "
-   # Strings containing paths and regexps can be unquoted:
-   - /foo/bar
-   - d:/foo/bar
-   - foo/bar
-   - /a.*b/
-php: |
-   array( 12, '12', '12', '12', '12', '/foo/bar', 'd:/foo/bar', 'foo/bar', '/a.*b/' )
----
-test: "Null"
-todo: true
-yaml: |
-   canonical: ~
-
-   english: null
-
-   # This sequence has five
-   # entries, two with values.
-   sparse:
-     - ~
-     - 2nd entry
-     - Null
-     - 4th entry
-     -
-
-   four: This mapping has five keys,
-         only two with values.
-
-php: |
-   array (
-     'canonical' => null,
-     'english' => null,
-     'sparse' => array( null, '2nd entry', null, '4th entry', null ]),
-     'four' => 'This mapping has five keys, only two with values.'
-   )
----
-test: Omap
-todo: true
-yaml: |
-   # Explicitly typed dictionary.
-   Bestiary: !omap
-     - aardvark: African pig-like ant eater. Ugly.
-     - anteater: South-American ant eater. Two species.
-     - anaconda: South-American constrictor snake. Scary.
-     # Etc.
-ruby: |
-   {
-     'Bestiary' => YAML::Omap[
-       'aardvark', 'African pig-like ant eater. Ugly.',
-       'anteater', 'South-American ant eater. Two species.',
-       'anaconda', 'South-American constrictor snake. Scary.'
-     ]
-   }
-
----
-test: Pairs
-todo: true
-yaml: |
-  # Explicitly typed pairs.
-  tasks: !pairs
-    - meeting: with team.
-    - meeting: with boss.
-    - break: lunch.
-    - meeting: with client.
-ruby: |
-  {
-    'tasks' => YAML::Pairs[
-      'meeting', 'with team.',
-      'meeting', 'with boss.',
-      'break', 'lunch.',
-      'meeting', 'with client.'
-    ]
-  }
-
----
-test: Set
-todo: true
-yaml: |
-  # Explicitly typed set.
-  baseball players: !set
-    Mark McGwire:
-    Sammy Sosa:
-    Ken Griffey:
-ruby: |
-  {
-    'baseball players' => YAML::Set[
-      'Mark McGwire', nil,
-      'Sammy Sosa', nil,
-      'Ken Griffey', nil
-    ]
-  }
-
----
-test: Boolean
-yaml: |
-   false: used as key
-   logical:  true
-   answer: false
-php: |
-   array(
-     false => 'used as key',
-     'logical' => true,
-     'answer' => false
-   )
----
-test: Integer
-yaml: |
-   canonical: 12345
-   decimal: +12,345
-   octal: 014
-   hexadecimal: 0xC
-php: |
-   array(
-     'canonical' => 12345,
-     'decimal' => 12345,
-     'octal' => 12,
-     'hexadecimal' => 12
-   )
----
-test: Float
-yaml: |
-   canonical: 1.23015e+3
-   exponential: 12.3015e+02
-   fixed: 1,230.15
-   negative infinity: -.inf
-   not a number: .NaN
-php: |
-  array(
-    'canonical' => 1230.15,
-    'exponential' => 1230.15,
-    'fixed' => 1230.15,
-    'negative infinity' => log(0),
-    'not a number' => -log(0)
-  )
----
-test: Timestamp
-todo: true
-yaml: |
-   canonical:       2001-12-15T02:59:43.1Z
-   valid iso8601:   2001-12-14t21:59:43.10-05:00
-   space separated: 2001-12-14 21:59:43.10 -05:00
-   date (noon UTC): 2002-12-14
-ruby: |
-   array(
-     'canonical' => YAML::mktime( 2001, 12, 15, 2, 59, 43, 0.10 ),
-     'valid iso8601' => YAML::mktime( 2001, 12, 14, 21, 59, 43, 0.10, "-05:00" ),
-     'space separated' => YAML::mktime( 2001, 12, 14, 21, 59, 43, 0.10, "-05:00" ),
-     'date (noon UTC)' => Date.new( 2002, 12, 14 )
-   )
----
-test: Binary
-todo: true
-yaml: |
-   canonical: !binary "\
-    R0lGODlhDAAMAIQAAP//9/X17unp5WZmZgAAAOfn515eXvPz7Y6OjuDg4J+fn5\
-    OTk6enp56enmlpaWNjY6Ojo4SEhP/++f/++f/++f/++f/++f/++f/++f/++f/+\
-    +f/++f/++f/++f/++f/++SH+Dk1hZGUgd2l0aCBHSU1QACwAAAAADAAMAAAFLC\
-    AgjoEwnuNAFOhpEMTRiggcz4BNJHrv/zCFcLiwMWYNG84BwwEeECcgggoBADs="
-   base64: !binary |
-    R0lGODlhDAAMAIQAAP//9/X17unp5WZmZgAAAOfn515eXvPz7Y6OjuDg4J+fn5
-    OTk6enp56enmlpaWNjY6Ojo4SEhP/++f/++f/++f/++f/++f/++f/++f/++f/+
-    +f/++f/++f/++f/++f/++SH+Dk1hZGUgd2l0aCBHSU1QACwAAAAADAAMAAAFLC
-    AgjoEwnuNAFOhpEMTRiggcz4BNJHrv/zCFcLiwMWYNG84BwwEeECcgggoBADs=
-   description: >
-    The binary value above is a tiny arrow
-    encoded as a gif image.
-ruby-setup: |
-   arrow_gif = "GIF89a\f\000\f\000\204\000\000\377\377\367\365\365\356\351\351\345fff\000\000\000\347\347\347^^^\363\363\355\216\216\216\340\340\340\237\237\237\223\223\223\247\247\247\236\236\236iiiccc\243\243\243\204\204\204\377\376\371\377\376\371\377\376\371\377\376\371\377\376\371\377\376\371\377\376\371\377\376\371\377\376\371\377\376\371\377\376\371\377\376\371\377\376\371\377\376\371!\376\016Made with GIMP\000,\000\000\000\000\f\000\f\000\000\005,  \216\2010\236\343@\024\350i\020\304\321\212\010\034\317\200M$z\357\3770\205p\270\2601f\r\e\316\001\303\001\036\020' \202\n\001\000;"
-ruby: |
-   {
-     'canonical' => arrow_gif,
-     'base64' => arrow_gif,
-     'description' => "The binary value above is a tiny arrow encoded as a gif image.\n"
-   }
-
----
-test: Merge key
-todo: true
-yaml: |
-  ---
-  - &CENTER { x: 1, y: 2 }
-  - &LEFT { x: 0, y: 2 }
-  - &BIG { r: 10 }
-  - &SMALL { r: 1 }
-
-  # All the following maps are equal:
-
-  - # Explicit keys
-    x: 1
-    y: 2
-    r: 10
-    label: center/big
-
-  - # Merge one map
-    << : *CENTER
-    r: 10
-    label: center/big
-
-  - # Merge multiple maps
-    << : [ *CENTER, *BIG ]
-    label: center/big
-
-  - # Override
-    << : [ *BIG, *LEFT, *SMALL ]
-    x: 1
-    label: center/big
-
-ruby-setup: |
-  center = { 'x' => 1, 'y' => 2 }
-  left = { 'x' => 0, 'y' => 2 }
-  big = { 'r' => 10 }
-  small = { 'r' => 1 }
-  node1 = { 'x' => 1, 'y' => 2, 'r' => 10, 'label' => 'center/big' }
-  node2 = center.dup
-  node2.update( { 'r' => 10, 'label' => 'center/big' } )
-  node3 = big.dup
-  node3.update( center )
-  node3.update( { 'label' => 'center/big' } )
-  node4 = small.dup
-  node4.update( left )
-  node4.update( big )
-  node4.update( { 'x' => 1, 'label' => 'center/big' } )
-
-ruby: |
-  [
-    center, left, big, small, node1, node2, node3, node4
-  ]
-
----
-test: Default key
-todo: true
-yaml: |
-   ---     # Old schema
-   link with:
-     - library1.dll
-     - library2.dll
-   ---     # New schema
-   link with:
-     - = : library1.dll
-       version: 1.2
-     - = : library2.dll
-       version: 2.3
-ruby: |
-   y = YAML::Stream.new
-   y.add( { 'link with' => [ 'library1.dll', 'library2.dll' ] } )
-   obj_h = Hash[ 'version' => 1.2 ]
-   obj_h.default = 'library1.dll'
-   obj_h2 = Hash[ 'version' => 2.3 ]
-   obj_h2.default = 'library2.dll'
-   y.add( { 'link with' => [ obj_h, obj_h2 ] } )
-documents: 2
-
----
-test: Special keys
-todo: true
-yaml: |
-   "!": These three keys
-   "&": had to be quoted
-   "=": and are normal strings.
-   # NOTE: the following node should NOT be serialized this way.
-   encoded node :
-    !special '!' : '!type'
-    !special|canonical '&' : 12
-    = : value
-   # The proper way to serialize the above node is as follows:
-   node : !!type &12 value
-ruby: |
-   { '!' => 'These three keys', '&' => 'had to be quoted',
-     '=' => 'and are normal strings.',
-     'encoded node' => YAML::PrivateType.new( 'type', 'value' ),
-     'node' => YAML::PrivateType.new( 'type', 'value' ) }
diff --git a/vendor/symfony/yaml/Tests/Fixtures/YtsTypeTransfers.yml b/vendor/symfony/yaml/Tests/Fixtures/YtsTypeTransfers.yml
deleted file mode 100644
index aac4e68..0000000
--- a/vendor/symfony/yaml/Tests/Fixtures/YtsTypeTransfers.yml
+++ /dev/null
@@ -1,244 +0,0 @@
---- %YAML:1.0
-test: Strings
-brief: >
-    Any group of characters beginning with an
-    alphabetic or numeric character is a string,
-    unless it belongs to one of the groups below
-    (such as an Integer or Time).
-yaml: |
-    String
-php: |
-    'String'
----
-test: String characters
-brief: >
-    A string can contain any alphabetic or
-    numeric character, along with many
-    punctuation characters, including the
-    period, dash, space, quotes, exclamation, and
-    question mark.
-yaml: |
-    - What's Yaml?
-    - It's for writing data structures in plain text.
-    - And?
-    - And what? That's not good enough for you?
-    - No, I mean, "And what about Yaml?"
-    - Oh, oh yeah. Uh.. Yaml for Ruby.
-php: |
-    array(
-      "What's Yaml?",
-      "It's for writing data structures in plain text.",
-      "And?",
-      "And what? That's not good enough for you?",
-      "No, I mean, \"And what about Yaml?\"",
-      "Oh, oh yeah. Uh.. Yaml for Ruby."
-    )
----
-test: Indicators in Strings
-brief: >
-    Be careful using indicators in strings.  In particular,
-    the comma, colon, and pound sign must be used carefully.
-yaml: |
-    the colon followed by space is an indicator: but is a string:right here
-    same for the pound sign: here we have it#in a string
-    the comma can, honestly, be used in most cases: [ but not in, inline collections ]
-php: |
-    array(
-      'the colon followed by space is an indicator' => 'but is a string:right here',
-      'same for the pound sign' => 'here we have it#in a string',
-      'the comma can, honestly, be used in most cases' => array('but not in', 'inline collections')
-    )
----
-test: Forcing Strings
-brief: >
-    Any YAML type can be forced into a string using the
-    explicit !str method.
-yaml: |
-    date string: !str 2001-08-01
-    number string: !str 192
-php: |
-    array(
-      'date string' => '2001-08-01',
-      'number string' => '192'
-    )
----
-test: Single-quoted Strings
-brief: >
-    You can also enclose your strings within single quotes,
-    which allows use of slashes, colons, and other indicators
-    freely.  Inside single quotes, you can represent a single
-    quote in your string by using two single quotes next to
-    each other.
-yaml: |
-    all my favorite symbols: '#:!/%.)'
-    a few i hate: '&(*'
-    why do i hate them?: 'it''s very hard to explain'
-    entities: '&pound; me'
-php: |
-    array(
-      'all my favorite symbols' => '#:!/%.)',
-      'a few i hate' => '&(*',
-      'why do i hate them?' => 'it\'s very hard to explain',
-      'entities' => '&pound; me'
-    )
----
-test: Double-quoted Strings
-brief: >
-    Enclosing strings in double quotes allows you
-    to use escapings to represent ASCII and
-    Unicode characters.
-yaml: |
-    i know where i want my line breaks: "one here\nand another here\n"
-php: |
-    array(
-      'i know where i want my line breaks' => "one here\nand another here\n"
-    )
----
-test: Multi-line Quoted Strings
-todo: true
-brief: >
-    Both single- and double-quoted strings may be
-    carried on to new lines in your YAML document.
-    They must be indented a step and indentation
-    is interpreted as a single space.
-yaml: |
-    i want a long string: "so i'm going to
-      let it go on and on to other lines
-      until i end it with a quote."
-php: |
-    array('i want a long string' => "so i'm going to ".
-         "let it go on and on to other lines ".
-         "until i end it with a quote."
-    )
-
----
-test: Plain scalars
-todo: true
-brief: >
-    Unquoted strings may also span multiple lines, if they
-    are free of YAML space indicators and indented.
-yaml: |
-    - My little toe is broken in two places;
-    - I'm crazy to have skied this way;
-    - I'm not the craziest he's seen, since there was always the German guy
-      who skied for 3 hours on a broken shin bone (just below the kneecap);
-    - Nevertheless, second place is respectable, and he doesn't
-      recommend going for the record;
-    - He's going to put my foot in plaster for a month;
-    - This would impair my skiing ability somewhat for the
-      duration, as can be imagined.
-php: |
-    array(
-      "My little toe is broken in two places;",
-      "I'm crazy to have skied this way;",
-      "I'm not the craziest he's seen, since there was always ".
-         "the German guy who skied for 3 hours on a broken shin ".
-         "bone (just below the kneecap);",
-      "Nevertheless, second place is respectable, and he doesn't ".
-         "recommend going for the record;",
-      "He's going to put my foot in plaster for a month;",
-      "This would impair my skiing ability somewhat for the duration, ".
-         "as can be imagined."
-    )
----
-test: 'Null'
-brief: >
-    You can use the tilde '~' character for a null value.
-yaml: |
-    name: Mr. Show
-    hosted by: Bob and David
-    date of next season: ~
-php: |
-    array(
-      'name' => 'Mr. Show',
-      'hosted by' => 'Bob and David',
-      'date of next season' => null
-    )
----
-test: Boolean
-brief: >
-    You can use 'true' and 'false' for Boolean values.
-yaml: |
-    Is Gus a Liar?: true
-    Do I rely on Gus for Sustenance?: false
-php: |
-    array(
-      'Is Gus a Liar?' => true,
-      'Do I rely on Gus for Sustenance?' => false
-    )
----
-test: Integers
-dump_skip: true
-brief: >
-    An integer is a series of numbers, optionally
-    starting with a positive or negative sign.  Integers
-    may also contain commas for readability.
-yaml: |
-    zero: 0
-    simple: 12
-    one-thousand: 1,000
-    negative one-thousand: -1,000
-php: |
-    array(
-      'zero' => 0,
-      'simple' => 12,
-      'one-thousand' => 1000,
-      'negative one-thousand' => -1000
-    )
----
-test: Integers as Map Keys
-brief: >
-    An integer can be used a dictionary key.
-yaml: |
-    1: one
-    2: two
-    3: three
-php: |
-    array(
-        1 => 'one',
-        2 => 'two',
-        3 => 'three'
-    )
----
-test: Floats
-dump_skip: true
-brief: >
-     Floats are represented by numbers with decimals,
-     allowing for scientific notation, as well as
-     positive and negative infinity and "not a number."
-yaml: |
-     a simple float: 2.00
-     larger float: 1,000.09
-     scientific notation: 1.00009e+3
-php: |
-     array(
-       'a simple float' => 2.0,
-       'larger float' => 1000.09,
-       'scientific notation' => 1000.09
-     )
----
-test: Time
-todo: true
-brief: >
-    You can represent timestamps by using
-    ISO8601 format, or a variation which
-    allows spaces between the date, time and
-    time zone.
-yaml: |
-    iso8601: 2001-12-14t21:59:43.10-05:00
-    space separated: 2001-12-14 21:59:43.10 -05:00
-php: |
-    array(
-      'iso8601' => mktime( 2001, 12, 14, 21, 59, 43, 0.10, "-05:00" ),
-      'space separated' => mktime( 2001, 12, 14, 21, 59, 43, 0.10, "-05:00" )
-    )
----
-test: Date
-todo: true
-brief: >
-    A date can be represented by its year,
-    month and day in ISO8601 order.
-yaml: |
-    1976-07-31
-php: |
-    date( 1976, 7, 31 )
diff --git a/vendor/symfony/yaml/Tests/Fixtures/embededPhp.yml b/vendor/symfony/yaml/Tests/Fixtures/embededPhp.yml
deleted file mode 100644
index ec456ed..0000000
--- a/vendor/symfony/yaml/Tests/Fixtures/embededPhp.yml
+++ /dev/null
@@ -1 +0,0 @@
-value: <?php echo 1 + 2 + 3 ?>
diff --git a/vendor/symfony/yaml/Tests/Fixtures/escapedCharacters.yml b/vendor/symfony/yaml/Tests/Fixtures/escapedCharacters.yml
deleted file mode 100644
index 09bf86e..0000000
--- a/vendor/symfony/yaml/Tests/Fixtures/escapedCharacters.yml
+++ /dev/null
@@ -1,147 +0,0 @@
-test: outside double quotes
-yaml: |
-    \0 \ \a \b \n
-php: |
-    "\\0 \\ \\a \\b \\n"
----
-test: null
-yaml: |
-    "\0"
-php: |
-    "\x00"
----
-test: bell
-yaml: |
-    "\a"
-php: |
-    "\x07"
----
-test: backspace
-yaml: |
-    "\b"
-php: |
-    "\x08"
----
-test: horizontal tab (1)
-yaml: |
-    "\t"
-php: |
-    "\x09"
----
-test: horizontal tab (2)
-yaml: |
-    "\	"
-php: |
-    "\x09"
----
-test: line feed
-yaml: |
-    "\n"
-php: |
-    "\x0a"
----
-test: vertical tab
-yaml: |
-    "\v"
-php: |
-    "\x0b"
----
-test: form feed
-yaml: |
-    "\f"
-php: |
-    "\x0c"
----
-test: carriage return
-yaml: |
-    "\r"
-php: |
-    "\x0d"
----
-test: escape
-yaml: |
-    "\e"
-php: |
-   "\x1b"
----
-test: space
-yaml: |
-    "\ "
-php: |
-    "\x20"
----
-test: slash
-yaml: |
-    "\/"
-php: |
-    "\x2f"
----
-test: backslash
-yaml: |
-    "\\"
-php: |
-    "\\"
----
-test: Unicode next line
-yaml: |
-    "\N"
-php: |
-    "\xc2\x85"
----
-test: Unicode non-breaking space
-yaml: |
-    "\_"
-php: |
-    "\xc2\xa0"
----
-test: Unicode line separator
-yaml: |
-    "\L"
-php: |
-    "\xe2\x80\xa8"
----
-test: Unicode paragraph separator
-yaml: |
-    "\P"
-php: |
-    "\xe2\x80\xa9"
----
-test: Escaped 8-bit Unicode
-yaml: |
-    "\x42"
-php: |
-    "B"
----
-test: Escaped 16-bit Unicode
-yaml: |
-    "\u20ac"
-php: |
-    "\xe2\x82\xac"
----
-test: Escaped 32-bit Unicode
-yaml: |
-    "\U00000043"
-php: |
-    "C"
----
-test: Example 5.13 Escaped Characters
-note: |
-    Currently throws an error parsing first line. Maybe Symfony Yaml doesn't support
-    continuation of string across multiple lines? Keeping test here but disabled.
-todo: true
-yaml: |
-    "Fun with \\
-    \" \a \b \e \f \
-    \n \r \t \v \0 \
-    \  \_ \N \L \P \
-    \x41 \u0041 \U00000041"
-php: |
-    "Fun with \x5C\n\x22 \x07 \x08 \x1B \x0C\n\x0A \x0D \x09 \x0B \x00\n\x20 \xA0 \x85 \xe2\x80\xa8 \xe2\x80\xa9\nA A A"
----
-test: Double quotes with a line feed
-yaml: |
-   { double: "some value\n \"some quoted string\" and 'some single quotes one'" }
-php: |
-    array(
-        'double' => "some value\n \"some quoted string\" and 'some single quotes one'"
-    )
diff --git a/vendor/symfony/yaml/Tests/Fixtures/index.yml b/vendor/symfony/yaml/Tests/Fixtures/index.yml
deleted file mode 100644
index 3216a89..0000000
--- a/vendor/symfony/yaml/Tests/Fixtures/index.yml
+++ /dev/null
@@ -1,18 +0,0 @@
-- escapedCharacters
-- sfComments
-- sfCompact
-- sfTests
-- sfObjects
-- sfMergeKey
-- sfQuotes
-- YtsAnchorAlias
-- YtsBasicTests
-- YtsBlockMapping
-- YtsDocumentSeparator
-- YtsErrorTests
-- YtsFlowCollections
-- YtsFoldedScalars
-- YtsNullsAndEmpties
-- YtsSpecificationExamples
-- YtsTypeTransfers
-- unindentedCollections
diff --git a/vendor/symfony/yaml/Tests/Fixtures/sfComments.yml b/vendor/symfony/yaml/Tests/Fixtures/sfComments.yml
deleted file mode 100644
index 6a7ffec..0000000
--- a/vendor/symfony/yaml/Tests/Fixtures/sfComments.yml
+++ /dev/null
@@ -1,73 +0,0 @@
---- %YAML:1.0
-test: Comments at the end of a line
-brief: >
-    Comments at the end of a line
-yaml: |
-    ex1: "foo # bar"
-    ex2: "foo # bar" # comment
-    ex3: 'foo # bar' # comment
-    ex4: foo # comment
-php: |
-    array('ex1' => 'foo # bar', 'ex2' => 'foo # bar', 'ex3' => 'foo # bar', 'ex4' => 'foo')
----
-test: Comments in the middle
-brief: >
-  Comments in the middle
-yaml: |
-    foo:
-    # some comment
-    # some comment
-      bar: foo
-    # some comment
-    # some comment
-php: |
-    array('foo' => array('bar' => 'foo'))
----
-test: Comments on a hash line
-brief: >
-  Comments on a hash line
-yaml: |
-    foo:   # a comment
-      foo: bar # a comment
-php: |
-    array('foo' => array('foo' => 'bar'))
----
-test: 'Value starting with a #'
-brief: >
-  'Value starting with a #'
-yaml: |
-    foo:   '#bar'
-php: |
-    array('foo' => '#bar')
----
-test: Document starting with a comment and a separator
-brief: >
-  Commenting before document start is allowed
-yaml: |
-    # document comment
-    ---
-    foo: bar # a comment
-php: |
-    array('foo' => 'bar')
----
-test: Comment containing a colon on a hash line
-brief: >
-    Comment containing a colon on a scalar line
-yaml: 'foo # comment: this is also part of the comment'
-php: |
-    'foo'
----
-test: 'Hash key containing a #'
-brief: >
-    'Hash key containing a #'
-yaml: 'foo#bar: baz'
-php: |
-    array('foo#bar' => 'baz')
----
-test: 'Hash key ending with a space and a #'
-brief: >
-    'Hash key ending with a space and a #'
-yaml: |
-    'foo #': baz
-php: |
-    array('foo #' => 'baz')
diff --git a/vendor/symfony/yaml/Tests/Fixtures/sfCompact.yml b/vendor/symfony/yaml/Tests/Fixtures/sfCompact.yml
deleted file mode 100644
index 1339d23..0000000
--- a/vendor/symfony/yaml/Tests/Fixtures/sfCompact.yml
+++ /dev/null
@@ -1,159 +0,0 @@
---- %YAML:1.0
-test: Compact notation
-brief: |
-    Compact notation for sets of mappings with single element
-yaml: |
-  ---
-  # products purchased
-  - item    : Super Hoop
-  - item    : Basketball
-    quantity: 1
-  - item:
-      name: Big Shoes
-      nick: Biggies
-    quantity: 1
-php: |
-  array (
-    array (
-      'item' => 'Super Hoop',
-    ),
-    array (
-      'item' => 'Basketball',
-      'quantity' => 1,
-    ),
-    array (
-      'item' => array(
-        'name' => 'Big Shoes',
-        'nick' => 'Biggies'
-      ),
-      'quantity' => 1
-    )
-  )
----
-test: Compact notation combined with inline notation
-brief: |
-    Combinations of compact and inline notation are allowed
-yaml: |
-  ---
-  items:
-    - { item: Super Hoop, quantity: 1 }
-    - [ Basketball, Big Shoes ]
-php: |
-  array (
-    'items' => array (
-      array (
-        'item' => 'Super Hoop',
-        'quantity' => 1,
-      ),
-      array (
-        'Basketball',
-        'Big Shoes'
-      )
-    )
-  )
---- %YAML:1.0
-test: Compact notation
-brief: |
-    Compact notation for sets of mappings with single element
-yaml: |
-  ---
-  # products purchased
-  - item    : Super Hoop
-  - item    : Basketball
-    quantity: 1
-  - item:
-      name: Big Shoes
-      nick: Biggies
-    quantity: 1
-php: |
-  array (
-    array (
-      'item' => 'Super Hoop',
-    ),
-    array (
-      'item' => 'Basketball',
-      'quantity' => 1,
-    ),
-    array (
-      'item' => array(
-        'name' => 'Big Shoes',
-        'nick' => 'Biggies'
-      ),
-      'quantity' => 1
-    )
-  )
----
-test: Compact notation combined with inline notation
-brief: |
-    Combinations of compact and inline notation are allowed
-yaml: |
-  ---
-  items:
-    - { item: Super Hoop, quantity: 1 }
-    - [ Basketball, Big Shoes ]
-php: |
-  array (
-    'items' => array (
-      array (
-        'item' => 'Super Hoop',
-        'quantity' => 1,
-      ),
-      array (
-        'Basketball',
-        'Big Shoes'
-      )
-    )
-  )
---- %YAML:1.0
-test: Compact notation
-brief: |
-    Compact notation for sets of mappings with single element
-yaml: |
-  ---
-  # products purchased
-  - item    : Super Hoop
-  - item    : Basketball
-    quantity: 1
-  - item:
-      name: Big Shoes
-      nick: Biggies
-    quantity: 1
-php: |
-  array (
-    array (
-      'item' => 'Super Hoop',
-    ),
-    array (
-      'item' => 'Basketball',
-      'quantity' => 1,
-    ),
-    array (
-      'item' => array(
-        'name' => 'Big Shoes',
-        'nick' => 'Biggies'
-      ),
-      'quantity' => 1
-    )
-  )
----
-test: Compact notation combined with inline notation
-brief: |
-    Combinations of compact and inline notation are allowed
-yaml: |
-  ---
-  items:
-    - { item: Super Hoop, quantity: 1 }
-    - [ Basketball, Big Shoes ]
-php: |
-  array (
-    'items' => array (
-      array (
-        'item' => 'Super Hoop',
-        'quantity' => 1,
-      ),
-      array (
-        'Basketball',
-        'Big Shoes'
-      )
-    )
-  )
diff --git a/vendor/symfony/yaml/Tests/Fixtures/sfMergeKey.yml b/vendor/symfony/yaml/Tests/Fixtures/sfMergeKey.yml
deleted file mode 100644
index 4b67d34..0000000
--- a/vendor/symfony/yaml/Tests/Fixtures/sfMergeKey.yml
+++ /dev/null
@@ -1,58 +0,0 @@
---- %YAML:1.0
-test: Simple In Place Substitution
-brief: >
-    If you want to reuse an entire alias, only overwriting what is different
-    you can use a << in place substitution. This is not part of the official
-    YAML spec, but a widely implemented extension. See the following URL for
-    details: http://yaml.org/type/merge.html
-yaml: |
-    foo: &foo
-        a: Steve
-        b: Clark
-        c: Brian
-    bar:
-        a: before
-        d: other
-        <<: *foo
-        b: new
-        x: Oren
-        c:
-            foo: bar
-            foo: ignore
-            bar: foo
-    duplicate:
-        foo: bar
-        foo: ignore
-    foo2: &foo2
-        a: Ballmer
-    ding: &dong [ fi, fei, fo, fam]
-    check:
-        <<:
-            - *foo
-            - *dong
-        isit: tested
-    head:
-        <<: [ *foo , *dong , *foo2 ]
-    taz: &taz
-        a: Steve
-        w:
-            p: 1234
-    nested:
-        <<: *taz
-        d: Doug
-        w: &nestedref
-            p: 12345
-        z:
-            <<: *nestedref
-php: |
-    array(
-        'foo' => array('a' => 'Steve', 'b' => 'Clark', 'c' => 'Brian'),
-        'bar' => array('a' => 'before', 'd' => 'other', 'b' => 'new', 'c' => array('foo' => 'bar', 'bar' => 'foo'), 'x' => 'Oren'),
-        'duplicate' => array('foo' => 'bar'),
-        'foo2' => array('a' => 'Ballmer'),
-        'ding' => array('fi', 'fei', 'fo', 'fam'),
-        'check' => array('a' => 'Steve', 'b' => 'Clark', 'c' => 'Brian', 'fi', 'fei', 'fo', 'fam', 'isit' => 'tested'),
-        'head' => array('a' => 'Steve', 'b' => 'Clark', 'c' => 'Brian', 'fi', 'fei', 'fo', 'fam'),
-        'taz' => array('a' => 'Steve', 'w' => array('p' => 1234)),
-        'nested' => array('a' => 'Steve', 'w' => array('p' => 12345), 'd' => 'Doug', 'z' => array('p' => 12345))
-    )
diff --git a/vendor/symfony/yaml/Tests/Fixtures/sfObjects.yml b/vendor/symfony/yaml/Tests/Fixtures/sfObjects.yml
deleted file mode 100644
index ee124b2..0000000
--- a/vendor/symfony/yaml/Tests/Fixtures/sfObjects.yml
+++ /dev/null
@@ -1,11 +0,0 @@
---- %YAML:1.0
-test: Objects
-brief: >
-    Comments at the end of a line
-yaml: |
-    ex1: "foo # bar"
-    ex2: "foo # bar" # comment
-    ex3: 'foo # bar' # comment
-    ex4: foo # comment
-php: |
-    array('ex1' => 'foo # bar', 'ex2' => 'foo # bar', 'ex3' => 'foo # bar', 'ex4' => 'foo')
diff --git a/vendor/symfony/yaml/Tests/Fixtures/sfQuotes.yml b/vendor/symfony/yaml/Tests/Fixtures/sfQuotes.yml
deleted file mode 100644
index 741f1be..0000000
--- a/vendor/symfony/yaml/Tests/Fixtures/sfQuotes.yml
+++ /dev/null
@@ -1,33 +0,0 @@
---- %YAML:1.0
-test: Some characters at the beginning of a string must be escaped
-brief: >
-    Some characters at the beginning of a string must be escaped
-yaml: |
-    foo: | bar
-php: |
-    array('foo' => '| bar')
----
-test: A key can be a quoted string
-brief: >
-  A key can be a quoted string
-yaml: |
-    "foo1": bar
-    'foo2': bar
-    "foo \" bar": bar
-    'foo '' bar': bar
-    'foo3: ': bar
-    "foo4: ": bar
-    foo5: { "foo \" bar: ": bar, 'foo '' bar: ': bar }
-php: |
-    array(
-      'foo1' => 'bar',
-      'foo2' => 'bar',
-      'foo " bar' => 'bar',
-      'foo \' bar' => 'bar',
-      'foo3: ' => 'bar',
-      'foo4: ' => 'bar',
-      'foo5' => array(
-        'foo " bar: ' => 'bar',
-        'foo \' bar: ' => 'bar',
-      ),
-    )
diff --git a/vendor/symfony/yaml/Tests/Fixtures/sfTests.yml b/vendor/symfony/yaml/Tests/Fixtures/sfTests.yml
deleted file mode 100644
index 7a54f16..0000000
--- a/vendor/symfony/yaml/Tests/Fixtures/sfTests.yml
+++ /dev/null
@@ -1,135 +0,0 @@
---- %YAML:1.0
-test: Multiple quoted string on one line
-brief: >
-    Multiple quoted string on one line
-yaml: |
-    stripped_title: { name: "foo bar", help: "bar foo" }
-php: |
-    array('stripped_title' => array('name' => 'foo bar', 'help' => 'bar foo'))
----
-test: Empty sequence
-yaml: |
-    foo: [ ]
-php: |
-    array('foo' => array())
----
-test: Empty value
-yaml: |
-    foo:
-php: |
-    array('foo' => null)
----
-test: Inline string parsing
-brief: >
-    Inline string parsing
-yaml: |
-    test: ['complex: string', 'another [string]']
-php: |
-    array('test' => array('complex: string', 'another [string]'))
----
-test: Boolean
-brief: >
-    Boolean
-yaml: |
-    - false
-    - true
-    - null
-    - ~
-    - 'false'
-    - 'true'
-    - 'null'
-    - '~'
-php: |
-    array(
-      false,
-      true,
-      null,
-      null,
-      'false',
-      'true',
-      'null',
-      '~',
-    )
----
-test: Empty lines in folded blocks
-brief: >
-  Empty lines in folded blocks
-yaml: |
-  foo:
-    bar: |
-      foo
-
-
-        
-      bar
-php: |
-  array('foo' => array('bar' => "foo\n\n\n  \nbar\n"))
----
-test: IP addresses
-brief: >
-  IP addresses
-yaml: |
-  foo: 10.0.0.2
-php: |
-  array('foo' => '10.0.0.2')
----
-test: A sequence with an embedded mapping
-brief: >
-  A sequence with an embedded mapping
-yaml: |
-  - foo
-  - bar: { bar: foo }
-php: |
-  array('foo', array('bar' => array('bar' => 'foo')))
----
-test: A sequence with an unordered array
-brief: >
-  A sequence with an unordered array
-yaml: |
-  1: foo
-  0: bar
-php: |
-  array(1 => 'foo', 0 => 'bar')
----
-test: Octal
-brief: as in spec example 2.19, octal value is converted
-yaml: |
-  foo: 0123
-php: |
-  array('foo' => 83)
----
-test: Octal strings
-brief: Octal notation in a string must remain a string
-yaml: |
-  foo: "0123"
-php: |
-  array('foo' => '0123')
----
-test: Octal strings
-brief: Octal notation in a string must remain a string
-yaml: |
-  foo: '0123'
-php: |
-  array('foo' => '0123')
----
-test: Octal strings
-brief: Octal notation in a string must remain a string
-yaml: |
-  foo: |
-    0123
-php: |
-  array('foo' => "0123\n")
----
-test: Document as a simple hash
-brief: Document as a simple hash
-yaml: |
-  { foo: bar }
-php: |
-  array('foo' => 'bar')
----
-test: Document as a simple array
-brief: Document as a simple array
-yaml: |
-  [ foo, bar ]
-php: |
-  array('foo', 'bar')
diff --git a/vendor/symfony/yaml/Tests/Fixtures/unindentedCollections.yml b/vendor/symfony/yaml/Tests/Fixtures/unindentedCollections.yml
deleted file mode 100644
index 0c96108..0000000
--- a/vendor/symfony/yaml/Tests/Fixtures/unindentedCollections.yml
+++ /dev/null
@@ -1,82 +0,0 @@
---- %YAML:1.0
-test: Unindented collection
-brief: >
-    Unindented collection
-yaml: |
-    collection:
-    - item1
-    - item2
-    - item3
-php: |
-    array('collection' => array('item1', 'item2', 'item3'))
----
-test: Nested unindented collection (two levels)
-brief: >
-    Nested unindented collection
-yaml: |
-    collection:
-        key:
-        - a
-        - b
-        - c
-php: |
-    array('collection' => array('key' => array('a', 'b', 'c')))
----
-test: Nested unindented collection (three levels)
-brief: >
-    Nested unindented collection
-yaml: |
-    collection:
-        key:
-            subkey:
-            - one
-            - two
-            - three
-php: |
-    array('collection' => array('key' => array('subkey' => array('one', 'two', 'three'))))
----
-test: Key/value after unindented collection (1)
-brief: >
-    Key/value after unindented collection (1)
-yaml: |
-    collection:
-        key:
-        - a
-        - b
-        - c
-    foo: bar
-php: |
-    array('collection' => array('key' => array('a', 'b', 'c')), 'foo' => 'bar')
----
-test: Key/value after unindented collection (at the same level)
-brief: >
-    Key/value after unindented collection
-yaml: |
-    collection:
-        key:
-        - a
-        - b
-        - c
-        foo: bar
-php: |
-    array('collection' => array('key' => array('a', 'b', 'c'), 'foo' => 'bar'))
----
-test: Shortcut Key after unindented collection
-brief: >
-    Key/value after unindented collection
-yaml: |
-    collection:
-    - key: foo
-      foo: bar
-php: |
-    array('collection' => array(array('key' => 'foo', 'foo' => 'bar')))
----
-test: Shortcut Key after unindented collection with custom spaces
-brief: >
-    Key/value after unindented collection
-yaml: |
-    collection:
-    -  key: foo
-       foo: bar
-php: |
-    array('collection' => array(array('key' => 'foo', 'foo' => 'bar')))
diff --git a/vendor/symfony/yaml/Tests/InlineTest.php b/vendor/symfony/yaml/Tests/InlineTest.php
deleted file mode 100644
index 522d770..0000000
--- a/vendor/symfony/yaml/Tests/InlineTest.php
+++ /dev/null
@@ -1,384 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Yaml\Tests;
-
-use Symfony\Component\Yaml\Inline;
-
-class InlineTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @dataProvider getTestsForParse
-     */
-    public function testParse($yaml, $value)
-    {
-        $this->assertSame($value, Inline::parse($yaml), sprintf('::parse() converts an inline YAML to a PHP structure (%s)', $yaml));
-    }
-
-    /**
-     * @dataProvider getTestsForParseWithMapObjects
-     */
-    public function testParseWithMapObjects($yaml, $value)
-    {
-        $actual = Inline::parse($yaml, false, false, true);
-
-        $this->assertSame(serialize($value), serialize($actual));
-    }
-
-    /**
-     * @dataProvider getTestsForDump
-     */
-    public function testDump($yaml, $value)
-    {
-        $this->assertEquals($yaml, Inline::dump($value), sprintf('::dump() converts a PHP structure to an inline YAML (%s)', $yaml));
-
-        $this->assertSame($value, Inline::parse(Inline::dump($value)), 'check consistency');
-    }
-
-    public function testDumpNumericValueWithLocale()
-    {
-        $locale = setlocale(LC_NUMERIC, 0);
-        if (false === $locale) {
-            $this->markTestSkipped('Your platform does not support locales.');
-        }
-
-        try {
-            $requiredLocales = array('fr_FR.UTF-8', 'fr_FR.UTF8', 'fr_FR.utf-8', 'fr_FR.utf8', 'French_France.1252');
-            if (false === setlocale(LC_NUMERIC, $requiredLocales)) {
-                $this->markTestSkipped('Could not set any of required locales: '.implode(', ', $requiredLocales));
-            }
-
-            $this->assertEquals('1.2', Inline::dump(1.2));
-            $this->assertContains('fr', strtolower(setlocale(LC_NUMERIC, 0)));
-            setlocale(LC_NUMERIC, $locale);
-        } catch (\Exception $e) {
-            setlocale(LC_NUMERIC, $locale);
-            throw $e;
-        }
-    }
-
-    public function testHashStringsResemblingExponentialNumericsShouldNotBeChangedToINF()
-    {
-        $value = '686e444';
-
-        $this->assertSame($value, Inline::parse(Inline::dump($value)));
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Yaml\Exception\ParseException
-     */
-    public function testParseScalarWithIncorrectlyQuotedStringShouldThrowException()
-    {
-        $value = "'don't do somthin' like that'";
-        Inline::parse($value);
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Yaml\Exception\ParseException
-     */
-    public function testParseScalarWithIncorrectlyDoubleQuotedStringShouldThrowException()
-    {
-        $value = '"don"t do somthin" like that"';
-        Inline::parse($value);
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Yaml\Exception\ParseException
-     */
-    public function testParseInvalidMappingKeyShouldThrowException()
-    {
-        $value = '{ "foo " bar": "bar" }';
-        Inline::parse($value);
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Yaml\Exception\ParseException
-     */
-    public function testParseInvalidMappingShouldThrowException()
-    {
-        Inline::parse('[foo] bar');
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Yaml\Exception\ParseException
-     */
-    public function testParseInvalidSequenceShouldThrowException()
-    {
-        Inline::parse('{ foo: bar } bar');
-    }
-
-    public function testParseScalarWithCorrectlyQuotedStringShouldReturnString()
-    {
-        $value = "'don''t do somthin'' like that'";
-        $expect = "don't do somthin' like that";
-
-        $this->assertSame($expect, Inline::parseScalar($value));
-    }
-
-    /**
-     * @dataProvider getDataForParseReferences
-     */
-    public function testParseReferences($yaml, $expected)
-    {
-        $this->assertSame($expected, Inline::parse($yaml, false, false, false, array('var' => 'var-value')));
-    }
-
-    public function getDataForParseReferences()
-    {
-        return array(
-            'scalar' => array('*var', 'var-value'),
-            'list' => array('[ *var ]', array('var-value')),
-            'list-in-list' => array('[[ *var ]]', array(array('var-value'))),
-            'map-in-list' => array('[ { key: *var } ]', array(array('key' => 'var-value'))),
-            'embedded-mapping-in-list' => array('[ key: *var ]', array(array('key' => 'var-value'))),
-            'map' => array('{ key: *var }', array('key' => 'var-value')),
-            'list-in-map' => array('{ key: [*var] }', array('key' => array('var-value'))),
-            'map-in-map' => array('{ foo: { bar: *var } }', array('foo' => array('bar' => 'var-value'))),
-        );
-    }
-
-    public function testParseMapReferenceInSequence()
-    {
-        $foo = array(
-            'a' => 'Steve',
-            'b' => 'Clark',
-            'c' => 'Brian',
-        );
-        $this->assertSame(array($foo), Inline::parse('[*foo]', false, false, false, array('foo' => $foo)));
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Yaml\Exception\ParseException
-     * @expectedExceptionMessage A reference must contain at least one character.
-     */
-    public function testParseUnquotedAsterisk()
-    {
-        Inline::parse('{ foo: * }');
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Yaml\Exception\ParseException
-     * @expectedExceptionMessage A reference must contain at least one character.
-     */
-    public function testParseUnquotedAsteriskFollowedByAComment()
-    {
-        Inline::parse('{ foo: * #foo }');
-    }
-
-    public function getTestsForParse()
-    {
-        return array(
-            array('', ''),
-            array('null', null),
-            array('false', false),
-            array('true', true),
-            array('12', 12),
-            array('-12', -12),
-            array('"quoted string"', 'quoted string'),
-            array("'quoted string'", 'quoted string'),
-            array('12.30e+02', 12.30e+02),
-            array('0x4D2', 0x4D2),
-            array('02333', 02333),
-            array('.Inf', -log(0)),
-            array('-.Inf', log(0)),
-            array("'686e444'", '686e444'),
-            array('686e444', 646e444),
-            array('123456789123456789123456789123456789', '123456789123456789123456789123456789'),
-            array('"foo\r\nbar"', "foo\r\nbar"),
-            array("'foo#bar'", 'foo#bar'),
-            array("'foo # bar'", 'foo # bar'),
-            array("'#cfcfcf'", '#cfcfcf'),
-            array('::form_base.html.twig', '::form_base.html.twig'),
-
-            // Pre-YAML-1.2 booleans
-            array("'y'", 'y'),
-            array("'n'", 'n'),
-            array("'yes'", 'yes'),
-            array("'no'", 'no'),
-            array("'on'", 'on'),
-            array("'off'", 'off'),
-
-            array('2007-10-30', mktime(0, 0, 0, 10, 30, 2007)),
-            array('2007-10-30T02:59:43Z', gmmktime(2, 59, 43, 10, 30, 2007)),
-            array('2007-10-30 02:59:43 Z', gmmktime(2, 59, 43, 10, 30, 2007)),
-            array('1960-10-30 02:59:43 Z', gmmktime(2, 59, 43, 10, 30, 1960)),
-            array('1730-10-30T02:59:43Z', gmmktime(2, 59, 43, 10, 30, 1730)),
-
-            array('"a \\"string\\" with \'quoted strings inside\'"', 'a "string" with \'quoted strings inside\''),
-            array("'a \"string\" with ''quoted strings inside'''", 'a "string" with \'quoted strings inside\''),
-
-            // sequences
-            // urls are no key value mapping. see #3609. Valid yaml "key: value" mappings require a space after the colon
-            array('[foo, http://urls.are/no/mappings, false, null, 12]', array('foo', 'http://urls.are/no/mappings', false, null, 12)),
-            array('[  foo  ,   bar , false  ,  null     ,  12  ]', array('foo', 'bar', false, null, 12)),
-            array('[\'foo,bar\', \'foo bar\']', array('foo,bar', 'foo bar')),
-
-            // mappings
-            array('{foo:bar,bar:foo,false:false,null:null,integer:12}', array('foo' => 'bar', 'bar' => 'foo', 'false' => false, 'null' => null, 'integer' => 12)),
-            array('{ foo  : bar, bar : foo,  false  :   false,  null  :   null,  integer :  12  }', array('foo' => 'bar', 'bar' => 'foo', 'false' => false, 'null' => null, 'integer' => 12)),
-            array('{foo: \'bar\', bar: \'foo: bar\'}', array('foo' => 'bar', 'bar' => 'foo: bar')),
-            array('{\'foo\': \'bar\', "bar": \'foo: bar\'}', array('foo' => 'bar', 'bar' => 'foo: bar')),
-            array('{\'foo\'\'\': \'bar\', "bar\"": \'foo: bar\'}', array('foo\'' => 'bar', 'bar"' => 'foo: bar')),
-            array('{\'foo: \': \'bar\', "bar: ": \'foo: bar\'}', array('foo: ' => 'bar', 'bar: ' => 'foo: bar')),
-
-            // nested sequences and mappings
-            array('[foo, [bar, foo]]', array('foo', array('bar', 'foo'))),
-            array('[foo, {bar: foo}]', array('foo', array('bar' => 'foo'))),
-            array('{ foo: {bar: foo} }', array('foo' => array('bar' => 'foo'))),
-            array('{ foo: [bar, foo] }', array('foo' => array('bar', 'foo'))),
-
-            array('[  foo, [  bar, foo  ]  ]', array('foo', array('bar', 'foo'))),
-
-            array('[{ foo: {bar: foo} }]', array(array('foo' => array('bar' => 'foo')))),
-
-            array('[foo, [bar, [foo, [bar, foo]], foo]]', array('foo', array('bar', array('foo', array('bar', 'foo')), 'foo'))),
-
-            array('[foo, {bar: foo, foo: [foo, {bar: foo}]}, [foo, {bar: foo}]]', array('foo', array('bar' => 'foo', 'foo' => array('foo', array('bar' => 'foo'))), array('foo', array('bar' => 'foo')))),
-
-            array('[foo, bar: { foo: bar }]', array('foo', '1' => array('bar' => array('foo' => 'bar')))),
-            array('[foo, \'@foo.baz\', { \'%foo%\': \'foo is %foo%\', bar: \'%foo%\' }, true, \'@service_container\']', array('foo', '@foo.baz', array('%foo%' => 'foo is %foo%', 'bar' => '%foo%'), true, '@service_container')),
-        );
-    }
-
-    public function getTestsForParseWithMapObjects()
-    {
-        return array(
-            array('', ''),
-            array('null', null),
-            array('false', false),
-            array('true', true),
-            array('12', 12),
-            array('-12', -12),
-            array('"quoted string"', 'quoted string'),
-            array("'quoted string'", 'quoted string'),
-            array('12.30e+02', 12.30e+02),
-            array('0x4D2', 0x4D2),
-            array('02333', 02333),
-            array('.Inf', -log(0)),
-            array('-.Inf', log(0)),
-            array("'686e444'", '686e444'),
-            array('686e444', 646e444),
-            array('123456789123456789123456789123456789', '123456789123456789123456789123456789'),
-            array('"foo\r\nbar"', "foo\r\nbar"),
-            array("'foo#bar'", 'foo#bar'),
-            array("'foo # bar'", 'foo # bar'),
-            array("'#cfcfcf'", '#cfcfcf'),
-            array('::form_base.html.twig', '::form_base.html.twig'),
-
-            array('2007-10-30', mktime(0, 0, 0, 10, 30, 2007)),
-            array('2007-10-30T02:59:43Z', gmmktime(2, 59, 43, 10, 30, 2007)),
-            array('2007-10-30 02:59:43 Z', gmmktime(2, 59, 43, 10, 30, 2007)),
-            array('1960-10-30 02:59:43 Z', gmmktime(2, 59, 43, 10, 30, 1960)),
-            array('1730-10-30T02:59:43Z', gmmktime(2, 59, 43, 10, 30, 1730)),
-
-            array('"a \\"string\\" with \'quoted strings inside\'"', 'a "string" with \'quoted strings inside\''),
-            array("'a \"string\" with ''quoted strings inside'''", 'a "string" with \'quoted strings inside\''),
-
-            // sequences
-            // urls are no key value mapping. see #3609. Valid yaml "key: value" mappings require a space after the colon
-            array('[foo, http://urls.are/no/mappings, false, null, 12]', array('foo', 'http://urls.are/no/mappings', false, null, 12)),
-            array('[  foo  ,   bar , false  ,  null     ,  12  ]', array('foo', 'bar', false, null, 12)),
-            array('[\'foo,bar\', \'foo bar\']', array('foo,bar', 'foo bar')),
-
-            // mappings
-            array('{foo:bar,bar:foo,false:false,null:null,integer:12}', (object) array('foo' => 'bar', 'bar' => 'foo', 'false' => false, 'null' => null, 'integer' => 12)),
-            array('{ foo  : bar, bar : foo,  false  :   false,  null  :   null,  integer :  12  }', (object) array('foo' => 'bar', 'bar' => 'foo', 'false' => false, 'null' => null, 'integer' => 12)),
-            array('{foo: \'bar\', bar: \'foo: bar\'}', (object) array('foo' => 'bar', 'bar' => 'foo: bar')),
-            array('{\'foo\': \'bar\', "bar": \'foo: bar\'}', (object) array('foo' => 'bar', 'bar' => 'foo: bar')),
-            array('{\'foo\'\'\': \'bar\', "bar\"": \'foo: bar\'}', (object) array('foo\'' => 'bar', 'bar"' => 'foo: bar')),
-            array('{\'foo: \': \'bar\', "bar: ": \'foo: bar\'}', (object) array('foo: ' => 'bar', 'bar: ' => 'foo: bar')),
-
-            // nested sequences and mappings
-            array('[foo, [bar, foo]]', array('foo', array('bar', 'foo'))),
-            array('[foo, {bar: foo}]', array('foo', (object) array('bar' => 'foo'))),
-            array('{ foo: {bar: foo} }', (object) array('foo' => (object) array('bar' => 'foo'))),
-            array('{ foo: [bar, foo] }', (object) array('foo' => array('bar', 'foo'))),
-
-            array('[  foo, [  bar, foo  ]  ]', array('foo', array('bar', 'foo'))),
-
-            array('[{ foo: {bar: foo} }]', array((object) array('foo' => (object) array('bar' => 'foo')))),
-
-            array('[foo, [bar, [foo, [bar, foo]], foo]]', array('foo', array('bar', array('foo', array('bar', 'foo')), 'foo'))),
-
-            array('[foo, {bar: foo, foo: [foo, {bar: foo}]}, [foo, {bar: foo}]]', array('foo', (object) array('bar' => 'foo', 'foo' => array('foo', (object) array('bar' => 'foo'))), array('foo', (object) array('bar' => 'foo')))),
-
-            array('[foo, bar: { foo: bar }]', array('foo', '1' => (object) array('bar' => (object) array('foo' => 'bar')))),
-            array('[foo, \'@foo.baz\', { \'%foo%\': \'foo is %foo%\', bar: \'%foo%\' }, true, \'@service_container\']', array('foo', '@foo.baz', (object) array('%foo%' => 'foo is %foo%', 'bar' => '%foo%'), true, '@service_container')),
-
-            array('{}', new \stdClass()),
-            array('{ foo  : bar, bar : {}  }', (object) array('foo' => 'bar', 'bar' => new \stdClass())),
-            array('{ foo  : [], bar : {}  }', (object) array('foo' => array(), 'bar' => new \stdClass())),
-            array('{foo: \'bar\', bar: {} }', (object) array('foo' => 'bar', 'bar' => new \stdClass())),
-            array('{\'foo\': \'bar\', "bar": {}}', (object) array('foo' => 'bar', 'bar' => new \stdClass())),
-            array('{\'foo\': \'bar\', "bar": \'{}\'}', (object) array('foo' => 'bar', 'bar' => '{}')),
-
-            array('[foo, [{}, {}]]', array('foo', array(new \stdClass(), new \stdClass()))),
-            array('[foo, [[], {}]]', array('foo', array(array(), new \stdClass()))),
-            array('[foo, [[{}, {}], {}]]', array('foo', array(array(new \stdClass(), new \stdClass()), new \stdClass()))),
-            array('[foo, {bar: {}}]', array('foo', '1' => (object) array('bar' => new \stdClass()))),
-        );
-    }
-
-    public function getTestsForDump()
-    {
-        return array(
-            array('null', null),
-            array('false', false),
-            array('true', true),
-            array('12', 12),
-            array("'quoted string'", 'quoted string'),
-            array('!!float 1230', 12.30e+02),
-            array('1234', 0x4D2),
-            array('1243', 02333),
-            array('.Inf', -log(0)),
-            array('-.Inf', log(0)),
-            array("'686e444'", '686e444'),
-            array('"foo\r\nbar"', "foo\r\nbar"),
-            array("'foo#bar'", 'foo#bar'),
-            array("'foo # bar'", 'foo # bar'),
-            array("'#cfcfcf'", '#cfcfcf'),
-
-            array("'a \"string\" with ''quoted strings inside'''", 'a "string" with \'quoted strings inside\''),
-
-            array("'-dash'", '-dash'),
-            array("'-'", '-'),
-
-            // Pre-YAML-1.2 booleans
-            array("'y'", 'y'),
-            array("'n'", 'n'),
-            array("'yes'", 'yes'),
-            array("'no'", 'no'),
-            array("'on'", 'on'),
-            array("'off'", 'off'),
-
-            // sequences
-            array('[foo, bar, false, null, 12]', array('foo', 'bar', false, null, 12)),
-            array('[\'foo,bar\', \'foo bar\']', array('foo,bar', 'foo bar')),
-
-            // mappings
-            array('{ foo: bar, bar: foo, \'false\': false, \'null\': null, integer: 12 }', array('foo' => 'bar', 'bar' => 'foo', 'false' => false, 'null' => null, 'integer' => 12)),
-            array('{ foo: bar, bar: \'foo: bar\' }', array('foo' => 'bar', 'bar' => 'foo: bar')),
-
-            // nested sequences and mappings
-            array('[foo, [bar, foo]]', array('foo', array('bar', 'foo'))),
-
-            array('[foo, [bar, [foo, [bar, foo]], foo]]', array('foo', array('bar', array('foo', array('bar', 'foo')), 'foo'))),
-
-            array('{ foo: { bar: foo } }', array('foo' => array('bar' => 'foo'))),
-
-            array('[foo, { bar: foo }]', array('foo', array('bar' => 'foo'))),
-
-            array('[foo, { bar: foo, foo: [foo, { bar: foo }] }, [foo, { bar: foo }]]', array('foo', array('bar' => 'foo', 'foo' => array('foo', array('bar' => 'foo'))), array('foo', array('bar' => 'foo')))),
-
-            array('[foo, \'@foo.baz\', { \'%foo%\': \'foo is %foo%\', bar: \'%foo%\' }, true, \'@service_container\']', array('foo', '@foo.baz', array('%foo%' => 'foo is %foo%', 'bar' => '%foo%'), true, '@service_container')),
-        );
-    }
-}
diff --git a/vendor/symfony/yaml/Tests/ParseExceptionTest.php b/vendor/symfony/yaml/Tests/ParseExceptionTest.php
deleted file mode 100644
index e4eb9c9..0000000
--- a/vendor/symfony/yaml/Tests/ParseExceptionTest.php
+++ /dev/null
@@ -1,41 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Yaml\Tests;
-
-use Symfony\Component\Yaml\Exception\ParseException;
-
-class ParseExceptionTest extends \PHPUnit_Framework_TestCase
-{
-    public function testGetMessage()
-    {
-        $exception = new ParseException('Error message', 42, 'foo: bar', '/var/www/app/config.yml');
-        if (PHP_VERSION_ID >= 50400) {
-            $message = 'Error message in "/var/www/app/config.yml" at line 42 (near "foo: bar")';
-        } else {
-            $message = 'Error message in "\\/var\\/www\\/app\\/config.yml" at line 42 (near "foo: bar")';
-        }
-
-        $this->assertEquals($message, $exception->getMessage());
-    }
-
-    public function testGetMessageWithUnicodeInFilename()
-    {
-        $exception = new ParseException('Error message', 42, 'foo: bar', 'äöü.yml');
-        if (PHP_VERSION_ID >= 50400) {
-            $message = 'Error message in "äöü.yml" at line 42 (near "foo: bar")';
-        } else {
-            $message = 'Error message in "\u00e4\u00f6\u00fc.yml" at line 42 (near "foo: bar")';
-        }
-
-        $this->assertEquals($message, $exception->getMessage());
-    }
-}
diff --git a/vendor/symfony/yaml/Tests/ParserTest.php b/vendor/symfony/yaml/Tests/ParserTest.php
deleted file mode 100644
index 08ef43f..0000000
--- a/vendor/symfony/yaml/Tests/ParserTest.php
+++ /dev/null
@@ -1,773 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Yaml\Tests;
-
-use Symfony\Component\Yaml\Yaml;
-use Symfony\Component\Yaml\Parser;
-
-class ParserTest extends \PHPUnit_Framework_TestCase
-{
-    protected $parser;
-
-    protected function setUp()
-    {
-        $this->parser = new Parser();
-    }
-
-    protected function tearDown()
-    {
-        $this->parser = null;
-    }
-
-    /**
-     * @dataProvider getDataFormSpecifications
-     */
-    public function testSpecifications($file, $expected, $yaml, $comment)
-    {
-        $this->assertEquals($expected, var_export($this->parser->parse($yaml), true), $comment);
-    }
-
-    public function getDataFormSpecifications()
-    {
-        $parser = new Parser();
-        $path = __DIR__.'/Fixtures';
-
-        $tests = array();
-        $files = $parser->parse(file_get_contents($path.'/index.yml'));
-        foreach ($files as $file) {
-            $yamls = file_get_contents($path.'/'.$file.'.yml');
-
-            // split YAMLs documents
-            foreach (preg_split('/^---( %YAML\:1\.0)?/m', $yamls) as $yaml) {
-                if (!$yaml) {
-                    continue;
-                }
-
-                $test = $parser->parse($yaml);
-                if (isset($test['todo']) && $test['todo']) {
-                    // TODO
-                } else {
-                    eval('$expected = '.trim($test['php']).';');
-
-                    $tests[] = array($file, var_export($expected, true), $test['yaml'], $test['test']);
-                }
-            }
-        }
-
-        return $tests;
-    }
-
-    public function testTabsInYaml()
-    {
-        // test tabs in YAML
-        $yamls = array(
-            "foo:\n	bar",
-            "foo:\n 	bar",
-            "foo:\n	 bar",
-            "foo:\n 	 bar",
-        );
-
-        foreach ($yamls as $yaml) {
-            try {
-                $content = $this->parser->parse($yaml);
-
-                $this->fail('YAML files must not contain tabs');
-            } catch (\Exception $e) {
-                $this->assertInstanceOf('\Exception', $e, 'YAML files must not contain tabs');
-                $this->assertEquals('A YAML file cannot contain tabs as indentation at line 2 (near "'.strpbrk($yaml, "\t").'").', $e->getMessage(), 'YAML files must not contain tabs');
-            }
-        }
-    }
-
-    public function testEndOfTheDocumentMarker()
-    {
-        $yaml = <<<EOF
---- %YAML:1.0
-foo
-...
-EOF;
-
-        $this->assertEquals('foo', $this->parser->parse($yaml));
-    }
-
-    public function getBlockChompingTests()
-    {
-        $tests = array();
-
-        $yaml = <<<'EOF'
-foo: |-
-    one
-    two
-bar: |-
-    one
-    two
-
-EOF;
-        $expected = array(
-            'foo' => "one\ntwo",
-            'bar' => "one\ntwo",
-        );
-        $tests['Literal block chomping strip with single trailing newline'] = array($expected, $yaml);
-
-        $yaml = <<<'EOF'
-foo: |-
-    one
-    two
-
-bar: |-
-    one
-    two
-
-
-EOF;
-        $expected = array(
-            'foo' => "one\ntwo",
-            'bar' => "one\ntwo",
-        );
-        $tests['Literal block chomping strip with multiple trailing newlines'] = array($expected, $yaml);
-
-        $yaml = <<<'EOF'
-{}
-
-
-EOF;
-        $expected = array();
-        $tests['Literal block chomping strip with multiple trailing newlines after a 1-liner'] = array($expected, $yaml);
-
-        $yaml = <<<'EOF'
-foo: |-
-    one
-    two
-bar: |-
-    one
-    two
-EOF;
-        $expected = array(
-            'foo' => "one\ntwo",
-            'bar' => "one\ntwo",
-        );
-        $tests['Literal block chomping strip without trailing newline'] = array($expected, $yaml);
-
-        $yaml = <<<'EOF'
-foo: |
-    one
-    two
-bar: |
-    one
-    two
-
-EOF;
-        $expected = array(
-            'foo' => "one\ntwo\n",
-            'bar' => "one\ntwo\n",
-        );
-        $tests['Literal block chomping clip with single trailing newline'] = array($expected, $yaml);
-
-        $yaml = <<<'EOF'
-foo: |
-    one
-    two
-
-bar: |
-    one
-    two
-
-
-EOF;
-        $expected = array(
-            'foo' => "one\ntwo\n",
-            'bar' => "one\ntwo\n",
-        );
-        $tests['Literal block chomping clip with multiple trailing newlines'] = array($expected, $yaml);
-
-        $yaml = <<<'EOF'
-foo: |
-    one
-    two
-bar: |
-    one
-    two
-EOF;
-        $expected = array(
-            'foo' => "one\ntwo\n",
-            'bar' => "one\ntwo",
-        );
-        $tests['Literal block chomping clip without trailing newline'] = array($expected, $yaml);
-
-        $yaml = <<<'EOF'
-foo: |+
-    one
-    two
-bar: |+
-    one
-    two
-
-EOF;
-        $expected = array(
-            'foo' => "one\ntwo\n",
-            'bar' => "one\ntwo\n",
-        );
-        $tests['Literal block chomping keep with single trailing newline'] = array($expected, $yaml);
-
-        $yaml = <<<'EOF'
-foo: |+
-    one
-    two
-
-bar: |+
-    one
-    two
-
-
-EOF;
-        $expected = array(
-            'foo' => "one\ntwo\n\n",
-            'bar' => "one\ntwo\n\n",
-        );
-        $tests['Literal block chomping keep with multiple trailing newlines'] = array($expected, $yaml);
-
-        $yaml = <<<'EOF'
-foo: |+
-    one
-    two
-bar: |+
-    one
-    two
-EOF;
-        $expected = array(
-            'foo' => "one\ntwo\n",
-            'bar' => "one\ntwo",
-        );
-        $tests['Literal block chomping keep without trailing newline'] = array($expected, $yaml);
-
-        $yaml = <<<'EOF'
-foo: >-
-    one
-    two
-bar: >-
-    one
-    two
-
-EOF;
-        $expected = array(
-            'foo' => 'one two',
-            'bar' => 'one two',
-        );
-        $tests['Folded block chomping strip with single trailing newline'] = array($expected, $yaml);
-
-        $yaml = <<<'EOF'
-foo: >-
-    one
-    two
-
-bar: >-
-    one
-    two
-
-
-EOF;
-        $expected = array(
-            'foo' => 'one two',
-            'bar' => 'one two',
-        );
-        $tests['Folded block chomping strip with multiple trailing newlines'] = array($expected, $yaml);
-
-        $yaml = <<<'EOF'
-foo: >-
-    one
-    two
-bar: >-
-    one
-    two
-EOF;
-        $expected = array(
-            'foo' => 'one two',
-            'bar' => 'one two',
-        );
-        $tests['Folded block chomping strip without trailing newline'] = array($expected, $yaml);
-
-        $yaml = <<<'EOF'
-foo: >
-    one
-    two
-bar: >
-    one
-    two
-
-EOF;
-        $expected = array(
-            'foo' => "one two\n",
-            'bar' => "one two\n",
-        );
-        $tests['Folded block chomping clip with single trailing newline'] = array($expected, $yaml);
-
-        $yaml = <<<'EOF'
-foo: >
-    one
-    two
-
-bar: >
-    one
-    two
-
-
-EOF;
-        $expected = array(
-            'foo' => "one two\n",
-            'bar' => "one two\n",
-        );
-        $tests['Folded block chomping clip with multiple trailing newlines'] = array($expected, $yaml);
-
-        $yaml = <<<'EOF'
-foo: >
-    one
-    two
-bar: >
-    one
-    two
-EOF;
-        $expected = array(
-            'foo' => "one two\n",
-            'bar' => 'one two',
-        );
-        $tests['Folded block chomping clip without trailing newline'] = array($expected, $yaml);
-
-        $yaml = <<<'EOF'
-foo: >+
-    one
-    two
-bar: >+
-    one
-    two
-
-EOF;
-        $expected = array(
-            'foo' => "one two\n",
-            'bar' => "one two\n",
-        );
-        $tests['Folded block chomping keep with single trailing newline'] = array($expected, $yaml);
-
-        $yaml = <<<'EOF'
-foo: >+
-    one
-    two
-
-bar: >+
-    one
-    two
-
-
-EOF;
-        $expected = array(
-            'foo' => "one two\n\n",
-            'bar' => "one two\n\n",
-        );
-        $tests['Folded block chomping keep with multiple trailing newlines'] = array($expected, $yaml);
-
-        $yaml = <<<'EOF'
-foo: >+
-    one
-    two
-bar: >+
-    one
-    two
-EOF;
-        $expected = array(
-            'foo' => "one two\n",
-            'bar' => 'one two',
-        );
-        $tests['Folded block chomping keep without trailing newline'] = array($expected, $yaml);
-
-        return $tests;
-    }
-
-    /**
-     * @dataProvider getBlockChompingTests
-     */
-    public function testBlockChomping($expected, $yaml)
-    {
-        $this->assertSame($expected, $this->parser->parse($yaml));
-    }
-
-    /**
-     * Regression test for issue #7989.
-     *
-     * @see https://github.com/symfony/symfony/issues/7989
-     */
-    public function testBlockLiteralWithLeadingNewlines()
-    {
-        $yaml = <<<'EOF'
-foo: |-
-
-
-    bar
-
-EOF;
-        $expected = array(
-            'foo' => "\n\nbar",
-        );
-
-        $this->assertSame($expected, $this->parser->parse($yaml));
-    }
-
-    public function testObjectSupportEnabled()
-    {
-        $input = <<<EOF
-foo: !!php/object:O:30:"Symfony\Component\Yaml\Tests\B":1:{s:1:"b";s:3:"foo";}
-bar: 1
-EOF;
-        $this->assertEquals(array('foo' => new B(), 'bar' => 1), $this->parser->parse($input, false, true), '->parse() is able to parse objects');
-    }
-
-    public function testObjectSupportDisabledButNoExceptions()
-    {
-        $input = <<<EOF
-foo: !!php/object:O:30:"Symfony\Tests\Component\Yaml\B":1:{s:1:"b";s:3:"foo";}
-bar: 1
-EOF;
-
-        $this->assertEquals(array('foo' => null, 'bar' => 1), $this->parser->parse($input), '->parse() does not parse objects');
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Yaml\Exception\ParseException
-     */
-    public function testObjectsSupportDisabledWithExceptions()
-    {
-        $this->parser->parse('foo: !!php/object:O:30:"Symfony\Tests\Component\Yaml\B":1:{s:1:"b";s:3:"foo";}', true, false);
-    }
-
-    public function testNonUtf8Exception()
-    {
-        if (!function_exists('iconv')) {
-            $this->markTestSkipped('Exceptions for non-utf8 charsets require the iconv() function.');
-
-            return;
-        }
-
-        $yamls = array(
-            iconv('UTF-8', 'ISO-8859-1', "foo: 'äöüß'"),
-            iconv('UTF-8', 'ISO-8859-15', "euro: '€'"),
-            iconv('UTF-8', 'CP1252', "cp1252: '©ÉÇáñ'"),
-        );
-
-        foreach ($yamls as $yaml) {
-            try {
-                $this->parser->parse($yaml);
-
-                $this->fail('charsets other than UTF-8 are rejected.');
-            } catch (\Exception $e) {
-                $this->assertInstanceOf('Symfony\Component\Yaml\Exception\ParseException', $e, 'charsets other than UTF-8 are rejected.');
-            }
-        }
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Yaml\Exception\ParseException
-     */
-    public function testUnindentedCollectionException()
-    {
-        $yaml = <<<EOF
-
-collection:
--item1
--item2
--item3
-
-EOF;
-
-        $this->parser->parse($yaml);
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Yaml\Exception\ParseException
-     */
-    public function testShortcutKeyUnindentedCollectionException()
-    {
-        $yaml = <<<EOF
-
-collection:
--  key: foo
-  foo: bar
-
-EOF;
-
-        $this->parser->parse($yaml);
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Yaml\Exception\ParseException
-     * @expectedExceptionMessage Multiple documents are not supported.
-     */
-    public function testMultipleDocumentsNotSupportedException()
-    {
-        Yaml::parse(<<<EOL
-# Ranking of 1998 home runs
----
-- Mark McGwire
-- Sammy Sosa
-- Ken Griffey
-
-# Team ranking
----
-- Chicago Cubs
-- St Louis Cardinals
-EOL
-        );
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Yaml\Exception\ParseException
-     */
-    public function testSequenceInAMapping()
-    {
-        Yaml::parse(<<<EOF
-yaml:
-  hash: me
-  - array stuff
-EOF
-        );
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Yaml\Exception\ParseException
-     */
-    public function testMappingInASequence()
-    {
-        Yaml::parse(<<<EOF
-yaml:
-  - array stuff
-  hash: me
-EOF
-        );
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Yaml\Exception\ParseException
-     * @expectedExceptionMessage missing colon
-     */
-    public function testScalarInSequence()
-    {
-        Yaml::parse(<<<EOF
-foo:
-    - bar
-"missing colon"
-    foo: bar
-EOF
-        );
-    }
-
-    /**
-     * > It is an error for two equal keys to appear in the same mapping node.
-     * > In such a case the YAML processor may continue, ignoring the second
-     * > `key: value` pair and issuing an appropriate warning. This strategy
-     * > preserves a consistent information model for one-pass and random access
-     * > applications.
-     *
-     * @see http://yaml.org/spec/1.2/spec.html#id2759572
-     * @see http://yaml.org/spec/1.1/#id932806
-     *
-     * @covers \Symfony\Component\Yaml\Parser::parse
-     */
-    public function testMappingDuplicateKeyBlock()
-    {
-        $input = <<<EOD
-parent:
-    child: first
-    child: duplicate
-parent:
-    child: duplicate
-    child: duplicate
-EOD;
-        $expected = array(
-            'parent' => array(
-                'child' => 'first',
-            ),
-        );
-        $this->assertSame($expected, Yaml::parse($input));
-    }
-
-    /**
-     * @covers \Symfony\Component\Yaml\Inline::parseMapping
-     */
-    public function testMappingDuplicateKeyFlow()
-    {
-        $input = <<<EOD
-parent: { child: first, child: duplicate }
-parent: { child: duplicate, child: duplicate }
-EOD;
-        $expected = array(
-            'parent' => array(
-                'child' => 'first',
-            ),
-        );
-        $this->assertSame($expected, Yaml::parse($input));
-    }
-
-    public function testEmptyValue()
-    {
-        $input = <<<EOF
-hash:
-EOF;
-
-        $this->assertEquals(array('hash' => null), Yaml::parse($input));
-    }
-
-    public function testStringBlockWithComments()
-    {
-        $this->assertEquals(array('content' => <<<EOT
-# comment 1
-header
-
-    # comment 2
-    <body>
-        <h1>title</h1>
-    </body>
-
-footer # comment3
-EOT
-        ), Yaml::parse(<<<EOF
-content: |
-    # comment 1
-    header
-
-        # comment 2
-        <body>
-            <h1>title</h1>
-        </body>
-
-    footer # comment3
-EOF
-        ));
-    }
-
-    public function testFoldedStringBlockWithComments()
-    {
-        $this->assertEquals(array(array('content' => <<<EOT
-# comment 1
-header
-
-    # comment 2
-    <body>
-        <h1>title</h1>
-    </body>
-
-footer # comment3
-EOT
-        )), Yaml::parse(<<<EOF
--
-    content: |
-        # comment 1
-        header
-
-            # comment 2
-            <body>
-                <h1>title</h1>
-            </body>
-
-        footer # comment3
-EOF
-        ));
-    }
-
-    public function testNestedFoldedStringBlockWithComments()
-    {
-        $this->assertEquals(array(array(
-            'title' => 'some title',
-            'content' => <<<EOT
-# comment 1
-header
-
-    # comment 2
-    <body>
-        <h1>title</h1>
-    </body>
-
-footer # comment3
-EOT
-        )), Yaml::parse(<<<EOF
--
-    title: some title
-    content: |
-        # comment 1
-        header
-
-            # comment 2
-            <body>
-                <h1>title</h1>
-            </body>
-
-        footer # comment3
-EOF
-        ));
-    }
-
-    public function testReferenceResolvingInInlineStrings()
-    {
-        $this->assertEquals(array(
-            'var' => 'var-value',
-            'scalar' => 'var-value',
-            'list' => array('var-value'),
-            'list_in_list' => array(array('var-value')),
-            'map_in_list' => array(array('key' => 'var-value')),
-            'embedded_mapping' => array(array('key' => 'var-value')),
-            'map' => array('key' => 'var-value'),
-            'list_in_map' => array('key' => array('var-value')),
-            'map_in_map' => array('foo' => array('bar' => 'var-value')),
-        ), Yaml::parse(<<<EOF
-var:  &var var-value
-scalar: *var
-list: [ *var ]
-list_in_list: [[ *var ]]
-map_in_list: [ { key: *var } ]
-embedded_mapping: [ key: *var ]
-map: { key: *var }
-list_in_map: { key: [*var] }
-map_in_map: { foo: { bar: *var } }
-EOF
-        ));
-    }
-
-    public function testYamlDirective()
-    {
-        $yaml = <<<EOF
-%YAML 1.2
----
-foo: 1
-bar: 2
-EOF;
-        $this->assertEquals(array('foo' => 1, 'bar' => 2), $this->parser->parse($yaml));
-    }
-
-    public function testFloatKeys()
-    {
-        $yaml = <<<EOF
-foo:
-    1.2: "bar"
-    1.3: "baz"
-EOF;
-
-        $expected = array(
-            'foo' => array(
-                '1.2' => 'bar',
-                '1.3' => 'baz',
-            ),
-        );
-
-        $this->assertEquals($expected, $this->parser->parse($yaml));
-    }
-}
-
-class B
-{
-    public $b = 'foo';
-}
diff --git a/vendor/symfony/yaml/Tests/YamlTest.php b/vendor/symfony/yaml/Tests/YamlTest.php
deleted file mode 100644
index 8db65e3..0000000
--- a/vendor/symfony/yaml/Tests/YamlTest.php
+++ /dev/null
@@ -1,37 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Yaml\Tests;
-
-use Symfony\Component\Yaml\Yaml;
-
-class YamlTest extends \PHPUnit_Framework_TestCase
-{
-    public function testParseAndDump()
-    {
-        $data = array('lorem' => 'ipsum', 'dolor' => 'sit');
-        $yml = Yaml::dump($data);
-        $parsed = Yaml::parse($yml);
-        $this->assertEquals($data, $parsed);
-    }
-
-    /**
-     * @group legacy
-     */
-    public function testLegacyParseFromFile()
-    {
-        $filename = __DIR__.'/Fixtures/index.yml';
-        $contents = file_get_contents($filename);
-        $parsedByFilename = Yaml::parse($filename);
-        $parsedByContents = Yaml::parse($contents);
-        $this->assertEquals($parsedByFilename, $parsedByContents);
-    }
-}
diff --git a/vendor/twig/twig/doc/advanced.rst b/vendor/twig/twig/doc/advanced.rst
deleted file mode 100644
index a20eab0..0000000
--- a/vendor/twig/twig/doc/advanced.rst
+++ /dev/null
@@ -1,872 +0,0 @@
-Extending Twig
-==============
-
-.. caution::
-
-    This section describes how to extend Twig as of **Twig 1.12**. If you are
-    using an older version, read the :doc:`legacy<advanced_legacy>` chapter
-    instead.
-
-Twig can be extended in many ways; you can add extra tags, filters, tests,
-operators, global variables, and functions. You can even extend the parser
-itself with node visitors.
-
-.. note::
-
-    The first section of this chapter describes how to extend Twig easily. If
-    you want to reuse your changes in different projects or if you want to
-    share them with others, you should then create an extension as described
-    in the following section.
-
-.. caution::
-
-    When extending Twig without creating an extension, Twig won't be able to
-    recompile your templates when the PHP code is updated. To see your changes
-    in real-time, either disable template caching or package your code into an
-    extension (see the next section of this chapter).
-
-Before extending Twig, you must understand the differences between all the
-different possible extension points and when to use them.
-
-First, remember that Twig has two main language constructs:
-
-* ``{{ }}``: used to print the result of an expression evaluation;
-
-* ``{% %}``: used to execute statements.
-
-To understand why Twig exposes so many extension points, let's see how to
-implement a *Lorem ipsum* generator (it needs to know the number of words to
-generate).
-
-You can use a ``lipsum`` *tag*:
-
-.. code-block:: jinja
-
-    {% lipsum 40 %}
-
-That works, but using a tag for ``lipsum`` is not a good idea for at least
-three main reasons:
-
-* ``lipsum`` is not a language construct;
-* The tag outputs something;
-* The tag is not flexible as you cannot use it in an expression:
-
-  .. code-block:: jinja
-
-      {{ 'some text' ~ {% lipsum 40 %} ~ 'some more text' }}
-
-In fact, you rarely need to create tags; and that's good news because tags are
-the most complex extension point of Twig.
-
-Now, let's use a ``lipsum`` *filter*:
-
-.. code-block:: jinja
-
-    {{ 40|lipsum }}
-
-Again, it works, but it looks weird. A filter transforms the passed value to
-something else but here we use the value to indicate the number of words to
-generate (so, ``40`` is an argument of the filter, not the value we want to
-transform).
-
-Next, let's use a ``lipsum`` *function*:
-
-.. code-block:: jinja
-
-    {{ lipsum(40) }}
-
-Here we go. For this specific example, the creation of a function is the
-extension point to use. And you can use it anywhere an expression is accepted:
-
-.. code-block:: jinja
-
-    {{ 'some text' ~ lipsum(40) ~ 'some more text' }}
-
-    {% set lipsum = lipsum(40) %}
-
-Last but not the least, you can also use a *global* object with a method able
-to generate lorem ipsum text:
-
-.. code-block:: jinja
-
-    {{ text.lipsum(40) }}
-
-As a rule of thumb, use functions for frequently used features and global
-objects for everything else.
-
-Keep in mind the following when you want to extend Twig:
-
-========== ========================== ========== =========================
-What?      Implementation difficulty? How often? When?
-========== ========================== ========== =========================
-*macro*    trivial                    frequent   Content generation
-*global*   trivial                    frequent   Helper object
-*function* trivial                    frequent   Content generation
-*filter*   trivial                    frequent   Value transformation
-*tag*      complex                    rare       DSL language construct
-*test*     trivial                    rare       Boolean decision
-*operator* trivial                    rare       Values transformation
-========== ========================== ========== =========================
-
-Globals
--------
-
-A global variable is like any other template variable, except that it's
-available in all templates and macros::
-
-    $twig = new Twig_Environment($loader);
-    $twig->addGlobal('text', new Text());
-
-You can then use the ``text`` variable anywhere in a template:
-
-.. code-block:: jinja
-
-    {{ text.lipsum(40) }}
-
-Filters
--------
-
-Creating a filter is as simple as associating a name with a PHP callable::
-
-    // an anonymous function
-    $filter = new Twig_SimpleFilter('rot13', function ($string) {
-        return str_rot13($string);
-    });
-
-    // or a simple PHP function
-    $filter = new Twig_SimpleFilter('rot13', 'str_rot13');
-
-    // or a class method
-    $filter = new Twig_SimpleFilter('rot13', array('SomeClass', 'rot13Filter'));
-
-The first argument passed to the ``Twig_SimpleFilter`` constructor is the name
-of the filter you will use in templates and the second one is the PHP callable
-to associate with it.
-
-Then, add the filter to your Twig environment::
-
-    $twig = new Twig_Environment($loader);
-    $twig->addFilter($filter);
-
-And here is how to use it in a template:
-
-.. code-block:: jinja
-
-    {{ 'Twig'|rot13 }}
-
-    {# will output Gjvt #}
-
-When called by Twig, the PHP callable receives the left side of the filter
-(before the pipe ``|``) as the first argument and the extra arguments passed
-to the filter (within parentheses ``()``) as extra arguments.
-
-For instance, the following code:
-
-.. code-block:: jinja
-
-    {{ 'TWIG'|lower }}
-    {{ now|date('d/m/Y') }}
-
-is compiled to something like the following::
-
-    <?php echo strtolower('TWIG') ?>
-    <?php echo twig_date_format_filter($now, 'd/m/Y') ?>
-
-The ``Twig_SimpleFilter`` class takes an array of options as its last
-argument::
-
-    $filter = new Twig_SimpleFilter('rot13', 'str_rot13', $options);
-
-Environment-aware Filters
-~~~~~~~~~~~~~~~~~~~~~~~~~
-
-If you want to access the current environment instance in your filter, set the
-``needs_environment`` option to ``true``; Twig will pass the current
-environment as the first argument to the filter call::
-
-    $filter = new Twig_SimpleFilter('rot13', function (Twig_Environment $env, $string) {
-        // get the current charset for instance
-        $charset = $env->getCharset();
-
-        return str_rot13($string);
-    }, array('needs_environment' => true));
-
-Context-aware Filters
-~~~~~~~~~~~~~~~~~~~~~
-
-If you want to access the current context in your filter, set the
-``needs_context`` option to ``true``; Twig will pass the current context as
-the first argument to the filter call (or the second one if
-``needs_environment`` is also set to ``true``)::
-
-    $filter = new Twig_SimpleFilter('rot13', function ($context, $string) {
-        // ...
-    }, array('needs_context' => true));
-
-    $filter = new Twig_SimpleFilter('rot13', function (Twig_Environment $env, $context, $string) {
-        // ...
-    }, array('needs_context' => true, 'needs_environment' => true));
-
-Automatic Escaping
-~~~~~~~~~~~~~~~~~~
-
-If automatic escaping is enabled, the output of the filter may be escaped
-before printing. If your filter acts as an escaper (or explicitly outputs HTML
-or JavaScript code), you will want the raw output to be printed. In such a
-case, set the ``is_safe`` option::
-
-    $filter = new Twig_SimpleFilter('nl2br', 'nl2br', array('is_safe' => array('html')));
-
-Some filters may need to work on input that is already escaped or safe, for
-example when adding (safe) HTML tags to originally unsafe output. In such a
-case, set the ``pre_escape`` option to escape the input data before it is run
-through your filter::
-
-    $filter = new Twig_SimpleFilter('somefilter', 'somefilter', array('pre_escape' => 'html', 'is_safe' => array('html')));
-
-Variadic Filters
-~~~~~~~~~~~~~~~~
-
-.. versionadded:: 1.19
-    Support for variadic filters was added in Twig 1.19.
-
-When a filter should accept an arbitrary number of arguments, set the
-``is_variadic`` option to ``true``; Twig will pass the extra arguments as the
-last argument to the filter call as an array::
-
-    $filter = new Twig_SimpleFilter('thumbnail', function ($file, array $options = array()) {
-        // ...
-    }, array('is_variadic' => true));
-
-Be warned that named arguments passed to a variadic filter cannot be checked
-for validity as they will automatically end up in the option array.
-
-Dynamic Filters
-~~~~~~~~~~~~~~~
-
-A filter name containing the special ``*`` character is a dynamic filter as
-the ``*`` can be any string::
-
-    $filter = new Twig_SimpleFilter('*_path', function ($name, $arguments) {
-        // ...
-    });
-
-The following filters will be matched by the above defined dynamic filter:
-
-* ``product_path``
-* ``category_path``
-
-A dynamic filter can define more than one dynamic parts::
-
-    $filter = new Twig_SimpleFilter('*_path_*', function ($name, $suffix, $arguments) {
-        // ...
-    });
-
-The filter will receive all dynamic part values before the normal filter
-arguments, but after the environment and the context. For instance, a call to
-``'foo'|a_path_b()`` will result in the following arguments to be passed to
-the filter: ``('a', 'b', 'foo')``.
-
-Deprecated Filters
-~~~~~~~~~~~~~~~~~~
-
-.. versionadded:: 1.21
-    Support for deprecated filters was added in Twig 1.21.
-
-You can mark a filter as being deprecated by setting the ``deprecated`` option
-to ``true``. You can also give an alternative filter that replaces the
-deprecated one when that makes sense::
-
-    $filter = new Twig_SimpleFilter('obsolete', function () {
-        // ...
-    }, array('deprecated' => true, 'alternative' => 'new_one'));
-
-When a filter is deprecated, Twig emits a deprecation notice when compiling a
-template using it. See :ref:`deprecation-notices` for more information.
-
-Functions
----------
-
-Functions are defined in the exact same way as filters, but you need to create
-an instance of ``Twig_SimpleFunction``::
-
-    $twig = new Twig_Environment($loader);
-    $function = new Twig_SimpleFunction('function_name', function () {
-        // ...
-    });
-    $twig->addFunction($function);
-
-Functions support the same features as filters, except for the ``pre_escape``
-and ``preserves_safety`` options.
-
-Tests
------
-
-Tests are defined in the exact same way as filters and functions, but you need
-to create an instance of ``Twig_SimpleTest``::
-
-    $twig = new Twig_Environment($loader);
-    $test = new Twig_SimpleTest('test_name', function () {
-        // ...
-    });
-    $twig->addTest($test);
-
-Tests allow you to create custom application specific logic for evaluating
-boolean conditions. As a simple example, let's create a Twig test that checks if
-objects are 'red'::
-
-    $twig = new Twig_Environment($loader);
-    $test = new Twig_SimpleTest('red', function ($value) {
-        if (isset($value->color) && $value->color == 'red') {
-            return true;
-        }
-        if (isset($value->paint) && $value->paint == 'red') {
-            return true;
-        }
-        return false;
-    });
-    $twig->addTest($test);
-
-Test functions should always return true/false.
-
-When creating tests you can use the ``node_class`` option to provide custom test
-compilation. This is useful if your test can be compiled into PHP primitives.
-This is used by many of the tests built into Twig::
-
-    $twig = new Twig_Environment($loader);
-    $test = new Twig_SimpleTest(
-        'odd',
-        null,
-        array('node_class' => 'Twig_Node_Expression_Test_Odd'));
-    $twig->addTest($test);
-
-    class Twig_Node_Expression_Test_Odd extends Twig_Node_Expression_Test
-    {
-        public function compile(Twig_Compiler $compiler)
-        {
-            $compiler
-                ->raw('(')
-                ->subcompile($this->getNode('node'))
-                ->raw(' % 2 == 1')
-                ->raw(')')
-            ;
-        }
-    }
-
-The above example shows how you can create tests that use a node class. The
-node class has access to one sub-node called 'node'. This sub-node contains the
-value that is being tested. When the ``odd`` filter is used in code such as:
-
-.. code-block:: jinja
-
-    {% if my_value is odd %}
-
-The ``node`` sub-node will contain an expression of ``my_value``. Node-based
-tests also have access to the ``arguments`` node. This node will contain the
-various other arguments that have been provided to your test.
-
-If you want to pass a variable number of positional or named arguments to the
-test, set the ``is_variadic`` option to ``true``. Tests also support dynamic
-name feature as filters and functions.
-
-Tags
-----
-
-One of the most exciting features of a template engine like Twig is the
-possibility to define new language constructs. This is also the most complex
-feature as you need to understand how Twig's internals work.
-
-Let's create a simple ``set`` tag that allows the definition of simple
-variables from within a template. The tag can be used like follows:
-
-.. code-block:: jinja
-
-    {% set name = "value" %}
-
-    {{ name }}
-
-    {# should output value #}
-
-.. note::
-
-    The ``set`` tag is part of the Core extension and as such is always
-    available. The built-in version is slightly more powerful and supports
-    multiple assignments by default (cf. the template designers chapter for
-    more information).
-
-Three steps are needed to define a new tag:
-
-* Defining a Token Parser class (responsible for parsing the template code);
-
-* Defining a Node class (responsible for converting the parsed code to PHP);
-
-* Registering the tag.
-
-Registering a new tag
-~~~~~~~~~~~~~~~~~~~~~
-
-Adding a tag is as simple as calling the ``addTokenParser`` method on the
-``Twig_Environment`` instance::
-
-    $twig = new Twig_Environment($loader);
-    $twig->addTokenParser(new Project_Set_TokenParser());
-
-Defining a Token Parser
-~~~~~~~~~~~~~~~~~~~~~~~
-
-Now, let's see the actual code of this class::
-
-    class Project_Set_TokenParser extends Twig_TokenParser
-    {
-        public function parse(Twig_Token $token)
-        {
-            $parser = $this->parser;
-            $stream = $parser->getStream();
-
-            $name = $stream->expect(Twig_Token::NAME_TYPE)->getValue();
-            $stream->expect(Twig_Token::OPERATOR_TYPE, '=');
-            $value = $parser->getExpressionParser()->parseExpression();
-            $stream->expect(Twig_Token::BLOCK_END_TYPE);
-
-            return new Project_Set_Node($name, $value, $token->getLine(), $this->getTag());
-        }
-
-        public function getTag()
-        {
-            return 'set';
-        }
-    }
-
-The ``getTag()`` method must return the tag we want to parse, here ``set``.
-
-The ``parse()`` method is invoked whenever the parser encounters a ``set``
-tag. It should return a ``Twig_Node`` instance that represents the node (the
-``Project_Set_Node`` calls creating is explained in the next section).
-
-The parsing process is simplified thanks to a bunch of methods you can call
-from the token stream (``$this->parser->getStream()``):
-
-* ``getCurrent()``: Gets the current token in the stream.
-
-* ``next()``: Moves to the next token in the stream, *but returns the old one*.
-
-* ``test($type)``, ``test($value)`` or ``test($type, $value)``: Determines whether
-  the current token is of a particular type or value (or both). The value may be an
-  array of several possible values.
-
-* ``expect($type[, $value[, $message]])``: If the current token isn't of the given
-  type/value a syntax error is thrown. Otherwise, if the type and value are correct,
-  the token is returned and the stream moves to the next token.
-
-* ``look()``: Looks a the next token without consuming it.
-
-Parsing expressions is done by calling the ``parseExpression()`` like we did for
-the ``set`` tag.
-
-.. tip::
-
-    Reading the existing ``TokenParser`` classes is the best way to learn all
-    the nitty-gritty details of the parsing process.
-
-Defining a Node
-~~~~~~~~~~~~~~~
-
-The ``Project_Set_Node`` class itself is rather simple::
-
-    class Project_Set_Node extends Twig_Node
-    {
-        public function __construct($name, Twig_Node_Expression $value, $line, $tag = null)
-        {
-            parent::__construct(array('value' => $value), array('name' => $name), $line, $tag);
-        }
-
-        public function compile(Twig_Compiler $compiler)
-        {
-            $compiler
-                ->addDebugInfo($this)
-                ->write('$context[\''.$this->getAttribute('name').'\'] = ')
-                ->subcompile($this->getNode('value'))
-                ->raw(";\n")
-            ;
-        }
-    }
-
-The compiler implements a fluid interface and provides methods that helps the
-developer generate beautiful and readable PHP code:
-
-* ``subcompile()``: Compiles a node.
-
-* ``raw()``: Writes the given string as is.
-
-* ``write()``: Writes the given string by adding indentation at the beginning
-  of each line.
-
-* ``string()``: Writes a quoted string.
-
-* ``repr()``: Writes a PHP representation of a given value (see
-  ``Twig_Node_For`` for a usage example).
-
-* ``addDebugInfo()``: Adds the line of the original template file related to
-  the current node as a comment.
-
-* ``indent()``: Indents the generated code (see ``Twig_Node_Block`` for a
-  usage example).
-
-* ``outdent()``: Outdents the generated code (see ``Twig_Node_Block`` for a
-  usage example).
-
-.. _creating_extensions:
-
-Creating an Extension
----------------------
-
-The main motivation for writing an extension is to move often used code into a
-reusable class like adding support for internationalization. An extension can
-define tags, filters, tests, operators, global variables, functions, and node
-visitors.
-
-Creating an extension also makes for a better separation of code that is
-executed at compilation time and code needed at runtime. As such, it makes
-your code faster.
-
-Most of the time, it is useful to create a single extension for your project,
-to host all the specific tags and filters you want to add to Twig.
-
-.. tip::
-
-    When packaging your code into an extension, Twig is smart enough to
-    recompile your templates whenever you make a change to it (when
-    ``auto_reload`` is enabled).
-
-.. note::
-
-    Before writing your own extensions, have a look at the Twig official
-    extension repository: http://github.com/twigphp/Twig-extensions.
-
-An extension is a class that implements the following interface::
-
-    interface Twig_ExtensionInterface
-    {
-        /**
-         * Initializes the runtime environment.
-         *
-         * This is where you can load some file that contains filter functions for instance.
-         *
-         * @param Twig_Environment $environment The current Twig_Environment instance
-         */
-        function initRuntime(Twig_Environment $environment);
-
-        /**
-         * Returns the token parser instances to add to the existing list.
-         *
-         * @return array An array of Twig_TokenParserInterface or Twig_TokenParserBrokerInterface instances
-         */
-        function getTokenParsers();
-
-        /**
-         * Returns the node visitor instances to add to the existing list.
-         *
-         * @return array An array of Twig_NodeVisitorInterface instances
-         */
-        function getNodeVisitors();
-
-        /**
-         * Returns a list of filters to add to the existing list.
-         *
-         * @return array An array of filters
-         */
-        function getFilters();
-
-        /**
-         * Returns a list of tests to add to the existing list.
-         *
-         * @return array An array of tests
-         */
-        function getTests();
-
-        /**
-         * Returns a list of functions to add to the existing list.
-         *
-         * @return array An array of functions
-         */
-        function getFunctions();
-
-        /**
-         * Returns a list of operators to add to the existing list.
-         *
-         * @return array An array of operators
-         */
-        function getOperators();
-
-        /**
-         * Returns a list of global variables to add to the existing list.
-         *
-         * @return array An array of global variables
-         */
-        function getGlobals();
-
-        /**
-         * Returns the name of the extension.
-         *
-         * @return string The extension name
-         */
-        function getName();
-    }
-
-To keep your extension class clean and lean, it can inherit from the built-in
-``Twig_Extension`` class instead of implementing the whole interface. That
-way, you just need to implement the ``getName()`` method as the
-``Twig_Extension`` provides empty implementations for all other methods.
-
-The ``getName()`` method must return a unique identifier for your extension.
-
-Now, with this information in mind, let's create the most basic extension
-possible::
-
-    class Project_Twig_Extension extends Twig_Extension
-    {
-        public function getName()
-        {
-            return 'project';
-        }
-    }
-
-.. note::
-
-    Of course, this extension does nothing for now. We will customize it in
-    the next sections.
-
-Twig does not care where you save your extension on the filesystem, as all
-extensions must be registered explicitly to be available in your templates.
-
-You can register an extension by using the ``addExtension()`` method on your
-main ``Environment`` object::
-
-    $twig = new Twig_Environment($loader);
-    $twig->addExtension(new Project_Twig_Extension());
-
-Of course, you need to first load the extension file by either using
-``require_once()`` or by using an autoloader (see `spl_autoload_register()`_).
-
-.. tip::
-
-    The bundled extensions are great examples of how extensions work.
-
-Globals
-~~~~~~~
-
-Global variables can be registered in an extension via the ``getGlobals()``
-method::
-
-    class Project_Twig_Extension extends Twig_Extension
-    {
-        public function getGlobals()
-        {
-            return array(
-                'text' => new Text(),
-            );
-        }
-
-        // ...
-    }
-
-Functions
-~~~~~~~~~
-
-Functions can be registered in an extension via the ``getFunctions()``
-method::
-
-    class Project_Twig_Extension extends Twig_Extension
-    {
-        public function getFunctions()
-        {
-            return array(
-                new Twig_SimpleFunction('lipsum', 'generate_lipsum'),
-            );
-        }
-
-        // ...
-    }
-
-Filters
-~~~~~~~
-
-To add a filter to an extension, you need to override the ``getFilters()``
-method. This method must return an array of filters to add to the Twig
-environment::
-
-    class Project_Twig_Extension extends Twig_Extension
-    {
-        public function getFilters()
-        {
-            return array(
-                new Twig_SimpleFilter('rot13', 'str_rot13'),
-            );
-        }
-
-        // ...
-    }
-
-Tags
-~~~~
-
-Adding a tag in an extension can be done by overriding the
-``getTokenParsers()`` method. This method must return an array of tags to add
-to the Twig environment::
-
-    class Project_Twig_Extension extends Twig_Extension
-    {
-        public function getTokenParsers()
-        {
-            return array(new Project_Set_TokenParser());
-        }
-
-        // ...
-    }
-
-In the above code, we have added a single new tag, defined by the
-``Project_Set_TokenParser`` class. The ``Project_Set_TokenParser`` class is
-responsible for parsing the tag and compiling it to PHP.
-
-Operators
-~~~~~~~~~
-
-The ``getOperators()`` methods lets you add new operators. Here is how to add
-``!``, ``||``, and ``&&`` operators::
-
-    class Project_Twig_Extension extends Twig_Extension
-    {
-        public function getOperators()
-        {
-            return array(
-                array(
-                    '!' => array('precedence' => 50, 'class' => 'Twig_Node_Expression_Unary_Not'),
-                ),
-                array(
-                    '||' => array('precedence' => 10, 'class' => 'Twig_Node_Expression_Binary_Or', 'associativity' => Twig_ExpressionParser::OPERATOR_LEFT),
-                    '&&' => array('precedence' => 15, 'class' => 'Twig_Node_Expression_Binary_And', 'associativity' => Twig_ExpressionParser::OPERATOR_LEFT),
-                ),
-            );
-        }
-
-        // ...
-    }
-
-Tests
-~~~~~
-
-The ``getTests()`` method lets you add new test functions::
-
-    class Project_Twig_Extension extends Twig_Extension
-    {
-        public function getTests()
-        {
-            return array(
-                new Twig_SimpleTest('even', 'twig_test_even'),
-            );
-        }
-
-        // ...
-    }
-
-Overloading
------------
-
-To overload an already defined filter, test, operator, global variable, or
-function, re-define it in an extension and register it **as late as
-possible** (order matters)::
-
-    class MyCoreExtension extends Twig_Extension
-    {
-        public function getFilters()
-        {
-            return array(
-                new Twig_SimpleFilter('date', array($this, 'dateFilter')),
-            );
-        }
-
-        public function dateFilter($timestamp, $format = 'F j, Y H:i')
-        {
-            // do something different from the built-in date filter
-        }
-
-        public function getName()
-        {
-            return 'project';
-        }
-    }
-
-    $twig = new Twig_Environment($loader);
-    $twig->addExtension(new MyCoreExtension());
-
-Here, we have overloaded the built-in ``date`` filter with a custom one.
-
-If you do the same on the Twig_Environment itself, beware that it takes
-precedence over any other registered extensions::
-
-    $twig = new Twig_Environment($loader);
-    $twig->addFilter(new Twig_SimpleFilter('date', function ($timestamp, $format = 'F j, Y H:i') {
-        // do something different from the built-in date filter
-    }));
-    // the date filter will come from the above registration, not
-    // from the registered extension below
-    $twig->addExtension(new MyCoreExtension());
-
-.. caution::
-
-    Note that overloading the built-in Twig elements is not recommended as it
-    might be confusing.
-
-Testing an Extension
---------------------
-
-Functional Tests
-~~~~~~~~~~~~~~~~
-
-You can create functional tests for extensions simply by creating the
-following file structure in your test directory::
-
-    Fixtures/
-        filters/
-            foo.test
-            bar.test
-        functions/
-            foo.test
-            bar.test
-        tags/
-            foo.test
-            bar.test
-    IntegrationTest.php
-
-The ``IntegrationTest.php`` file should look like this::
-
-    class Project_Tests_IntegrationTest extends Twig_Test_IntegrationTestCase
-    {
-        public function getExtensions()
-        {
-            return array(
-                new Project_Twig_Extension1(),
-                new Project_Twig_Extension2(),
-            );
-        }
-
-        public function getFixturesDir()
-        {
-            return dirname(__FILE__).'/Fixtures/';
-        }
-    }
-
-Fixtures examples can be found within the Twig repository
-`tests/Twig/Fixtures`_ directory.
-
-Node Tests
-~~~~~~~~~~
-
-Testing the node visitors can be complex, so extend your test cases from
-``Twig_Test_NodeTestCase``. Examples can be found in the Twig repository
-`tests/Twig/Node`_ directory.
-
-.. _`spl_autoload_register()`: http://www.php.net/spl_autoload_register
-.. _`rot13`:                   http://www.php.net/manual/en/function.str-rot13.php
-.. _`tests/Twig/Fixtures`:     https://github.com/twigphp/Twig/tree/master/test/Twig/Tests/Fixtures
-.. _`tests/Twig/Node`:         https://github.com/twigphp/Twig/tree/master/test/Twig/Tests/Node
diff --git a/vendor/twig/twig/doc/advanced_legacy.rst b/vendor/twig/twig/doc/advanced_legacy.rst
deleted file mode 100644
index 2ef6bfd..0000000
--- a/vendor/twig/twig/doc/advanced_legacy.rst
+++ /dev/null
@@ -1,887 +0,0 @@
-Extending Twig
-==============
-
-.. caution::
-
-    This section describes how to extends Twig for versions **older than
-    1.12**. If you are using a newer version, read the :doc:`newer<advanced>`
-    chapter instead.
-
-Twig can be extended in many ways; you can add extra tags, filters, tests,
-operators, global variables, and functions. You can even extend the parser
-itself with node visitors.
-
-.. note::
-
-    The first section of this chapter describes how to extend Twig easily. If
-    you want to reuse your changes in different projects or if you want to
-    share them with others, you should then create an extension as described
-    in the following section.
-
-.. caution::
-
-    When extending Twig by calling methods on the Twig environment instance,
-    Twig won't be able to recompile your templates when the PHP code is
-    updated. To see your changes in real-time, either disable template caching
-    or package your code into an extension (see the next section of this
-    chapter).
-
-Before extending Twig, you must understand the differences between all the
-different possible extension points and when to use them.
-
-First, remember that Twig has two main language constructs:
-
-* ``{{ }}``: used to print the result of an expression evaluation;
-
-* ``{% %}``: used to execute statements.
-
-To understand why Twig exposes so many extension points, let's see how to
-implement a *Lorem ipsum* generator (it needs to know the number of words to
-generate).
-
-You can use a ``lipsum`` *tag*:
-
-.. code-block:: jinja
-
-    {% lipsum 40 %}
-
-That works, but using a tag for ``lipsum`` is not a good idea for at least
-three main reasons:
-
-* ``lipsum`` is not a language construct;
-* The tag outputs something;
-* The tag is not flexible as you cannot use it in an expression:
-
-  .. code-block:: jinja
-
-      {{ 'some text' ~ {% lipsum 40 %} ~ 'some more text' }}
-
-In fact, you rarely need to create tags; and that's good news because tags are
-the most complex extension point of Twig.
-
-Now, let's use a ``lipsum`` *filter*:
-
-.. code-block:: jinja
-
-    {{ 40|lipsum }}
-
-Again, it works, but it looks weird. A filter transforms the passed value to
-something else but here we use the value to indicate the number of words to
-generate (so, ``40`` is an argument of the filter, not the value we want to
-transform).
-
-Next, let's use a ``lipsum`` *function*:
-
-.. code-block:: jinja
-
-    {{ lipsum(40) }}
-
-Here we go. For this specific example, the creation of a function is the
-extension point to use. And you can use it anywhere an expression is accepted:
-
-.. code-block:: jinja
-
-    {{ 'some text' ~ ipsum(40) ~ 'some more text' }}
-
-    {% set ipsum = ipsum(40) %}
-
-Last but not the least, you can also use a *global* object with a method able
-to generate lorem ipsum text:
-
-.. code-block:: jinja
-
-    {{ text.lipsum(40) }}
-
-As a rule of thumb, use functions for frequently used features and global
-objects for everything else.
-
-Keep in mind the following when you want to extend Twig:
-
-========== ========================== ========== =========================
-What?      Implementation difficulty? How often? When?
-========== ========================== ========== =========================
-*macro*    trivial                    frequent   Content generation
-*global*   trivial                    frequent   Helper object
-*function* trivial                    frequent   Content generation
-*filter*   trivial                    frequent   Value transformation
-*tag*      complex                    rare       DSL language construct
-*test*     trivial                    rare       Boolean decision
-*operator* trivial                    rare       Values transformation
-========== ========================== ========== =========================
-
-Globals
--------
-
-A global variable is like any other template variable, except that it's
-available in all templates and macros::
-
-    $twig = new Twig_Environment($loader);
-    $twig->addGlobal('text', new Text());
-
-You can then use the ``text`` variable anywhere in a template:
-
-.. code-block:: jinja
-
-    {{ text.lipsum(40) }}
-
-Filters
--------
-
-A filter is a regular PHP function or an object method that takes the left
-side of the filter (before the pipe ``|``) as first argument and the extra
-arguments passed to the filter (within parentheses ``()``) as extra arguments.
-
-Defining a filter is as easy as associating the filter name with a PHP
-callable. For instance, let's say you have the following code in a template:
-
-.. code-block:: jinja
-
-    {{ 'TWIG'|lower }}
-
-When compiling this template to PHP, Twig looks for the PHP callable
-associated with the ``lower`` filter. The ``lower`` filter is a built-in Twig
-filter, and it is simply mapped to the PHP ``strtolower()`` function. After
-compilation, the generated PHP code is roughly equivalent to:
-
-.. code-block:: html+php
-
-    <?php echo strtolower('TWIG') ?>
-
-As you can see, the ``'TWIG'`` string is passed as a first argument to the PHP
-function.
-
-A filter can also take extra arguments like in the following example:
-
-.. code-block:: jinja
-
-    {{ now|date('d/m/Y') }}
-
-In this case, the extra arguments are passed to the function after the main
-argument, and the compiled code is equivalent to:
-
-.. code-block:: html+php
-
-    <?php echo twig_date_format_filter($now, 'd/m/Y') ?>
-
-Let's see how to create a new filter.
-
-In this section, we will create a ``rot13`` filter, which should return the
-`rot13`_ transformation of a string. Here is an example of its usage and the
-expected output:
-
-.. code-block:: jinja
-
-    {{ "Twig"|rot13 }}
-
-    {# should displays Gjvt #}
-
-Adding a filter is as simple as calling the ``addFilter()`` method on the
-``Twig_Environment`` instance::
-
-    $twig = new Twig_Environment($loader);
-    $twig->addFilter('rot13', new Twig_Filter_Function('str_rot13'));
-
-The second argument of ``addFilter()`` is an instance of ``Twig_Filter``.
-Here, we use ``Twig_Filter_Function`` as the filter is a PHP function. The
-first argument passed to the ``Twig_Filter_Function`` constructor is the name
-of the PHP function to call, here ``str_rot13``, a native PHP function.
-
-Let's say I now want to be able to add a prefix before the converted string:
-
-.. code-block:: jinja
-
-    {{ "Twig"|rot13('prefix_') }}
-
-    {# should displays prefix_Gjvt #}
-
-As the PHP ``str_rot13()`` function does not support this requirement, let's
-create a new PHP function::
-
-    function project_compute_rot13($string, $prefix = '')
-    {
-        return $prefix.str_rot13($string);
-    }
-
-As you can see, the ``prefix`` argument of the filter is passed as an extra
-argument to the ``project_compute_rot13()`` function.
-
-Adding this filter is as easy as before::
-
-    $twig->addFilter('rot13', new Twig_Filter_Function('project_compute_rot13'));
-
-For better encapsulation, a filter can also be defined as a static method of a
-class. The ``Twig_Filter_Function`` class can also be used to register such
-static methods as filters::
-
-    $twig->addFilter('rot13', new Twig_Filter_Function('SomeClass::rot13Filter'));
-
-.. tip::
-
-    In an extension, you can also define a filter as a static method of the
-    extension class.
-
-Environment aware Filters
-~~~~~~~~~~~~~~~~~~~~~~~~~
-
-The ``Twig_Filter`` classes take options as their last argument. For instance,
-if you want access to the current environment instance in your filter, set the
-``needs_environment`` option to ``true``::
-
-    $filter = new Twig_Filter_Function('str_rot13', array('needs_environment' => true));
-
-Twig will then pass the current environment as the first argument to the
-filter call::
-
-    function twig_compute_rot13(Twig_Environment $env, $string)
-    {
-        // get the current charset for instance
-        $charset = $env->getCharset();
-
-        return str_rot13($string);
-    }
-
-Automatic Escaping
-~~~~~~~~~~~~~~~~~~
-
-If automatic escaping is enabled, the output of the filter may be escaped
-before printing. If your filter acts as an escaper (or explicitly outputs HTML
-or JavaScript code), you will want the raw output to be printed. In such a
-case, set the ``is_safe`` option::
-
-    $filter = new Twig_Filter_Function('nl2br', array('is_safe' => array('html')));
-
-Some filters may need to work on input that is already escaped or safe, for
-example when adding (safe) HTML tags to originally unsafe output. In such a
-case, set the ``pre_escape`` option to escape the input data before it is run
-through your filter::
-
-    $filter = new Twig_Filter_Function('somefilter', array('pre_escape' => 'html', 'is_safe' => array('html')));
-
-Dynamic Filters
-~~~~~~~~~~~~~~~
-
-.. versionadded:: 1.5
-    Dynamic filters support was added in Twig 1.5.
-
-A filter name containing the special ``*`` character is a dynamic filter as
-the ``*`` can be any string::
-
-    $twig->addFilter('*_path_*', new Twig_Filter_Function('twig_path'));
-
-    function twig_path($name, $arguments)
-    {
-        // ...
-    }
-
-The following filters will be matched by the above defined dynamic filter:
-
-* ``product_path``
-* ``category_path``
-
-A dynamic filter can define more than one dynamic parts::
-
-    $twig->addFilter('*_path_*', new Twig_Filter_Function('twig_path'));
-
-    function twig_path($name, $suffix, $arguments)
-    {
-        // ...
-    }
-
-The filter will receive all dynamic part values before the normal filters
-arguments. For instance, a call to ``'foo'|a_path_b()`` will result in the
-following PHP call: ``twig_path('a', 'b', 'foo')``.
-
-Functions
----------
-
-A function is a regular PHP function or an object method that can be called from
-templates.
-
-.. code-block:: jinja
-
-    {{ constant("DATE_W3C") }}
-
-When compiling this template to PHP, Twig looks for the PHP callable
-associated with the ``constant`` function. The ``constant`` function is a built-in Twig
-function, and it is simply mapped to the PHP ``constant()`` function. After
-compilation, the generated PHP code is roughly equivalent to:
-
-.. code-block:: html+php
-
-    <?php echo constant('DATE_W3C') ?>
-
-Adding a function is similar to adding a filter. This can be done by calling the
-``addFunction()`` method on the ``Twig_Environment`` instance::
-
-    $twig = new Twig_Environment($loader);
-    $twig->addFunction('functionName', new Twig_Function_Function('someFunction'));
-
-You can also expose extension methods as functions in your templates::
-
-    // $this is an object that implements Twig_ExtensionInterface.
-    $twig = new Twig_Environment($loader);
-    $twig->addFunction('otherFunction', new Twig_Function_Method($this, 'someMethod'));
-
-Functions also support ``needs_environment`` and ``is_safe`` parameters.
-
-Dynamic Functions
-~~~~~~~~~~~~~~~~~
-
-.. versionadded:: 1.5
-    Dynamic functions support was added in Twig 1.5.
-
-A function name containing the special ``*`` character is a dynamic function
-as the ``*`` can be any string::
-
-    $twig->addFunction('*_path', new Twig_Function_Function('twig_path'));
-
-    function twig_path($name, $arguments)
-    {
-        // ...
-    }
-
-The following functions will be matched by the above defined dynamic function:
-
-* ``product_path``
-* ``category_path``
-
-A dynamic function can define more than one dynamic parts::
-
-    $twig->addFilter('*_path_*', new Twig_Filter_Function('twig_path'));
-
-    function twig_path($name, $suffix, $arguments)
-    {
-        // ...
-    }
-
-The function will receive all dynamic part values before the normal functions
-arguments. For instance, a call to ``a_path_b('foo')`` will result in the
-following PHP call: ``twig_path('a', 'b', 'foo')``.
-
-Tags
-----
-
-One of the most exciting feature of a template engine like Twig is the
-possibility to define new language constructs. This is also the most complex
-feature as you need to understand how Twig's internals work.
-
-Let's create a simple ``set`` tag that allows the definition of simple
-variables from within a template. The tag can be used like follows:
-
-.. code-block:: jinja
-
-    {% set name = "value" %}
-
-    {{ name }}
-
-    {# should output value #}
-
-.. note::
-
-    The ``set`` tag is part of the Core extension and as such is always
-    available. The built-in version is slightly more powerful and supports
-    multiple assignments by default (cf. the template designers chapter for
-    more information).
-
-Three steps are needed to define a new tag:
-
-* Defining a Token Parser class (responsible for parsing the template code);
-
-* Defining a Node class (responsible for converting the parsed code to PHP);
-
-* Registering the tag.
-
-Registering a new tag
-~~~~~~~~~~~~~~~~~~~~~
-
-Adding a tag is as simple as calling the ``addTokenParser`` method on the
-``Twig_Environment`` instance::
-
-    $twig = new Twig_Environment($loader);
-    $twig->addTokenParser(new Project_Set_TokenParser());
-
-Defining a Token Parser
-~~~~~~~~~~~~~~~~~~~~~~~
-
-Now, let's see the actual code of this class::
-
-    class Project_Set_TokenParser extends Twig_TokenParser
-    {
-        public function parse(Twig_Token $token)
-        {
-            $lineno = $token->getLine();
-            $name = $this->parser->getStream()->expect(Twig_Token::NAME_TYPE)->getValue();
-            $this->parser->getStream()->expect(Twig_Token::OPERATOR_TYPE, '=');
-            $value = $this->parser->getExpressionParser()->parseExpression();
-
-            $this->parser->getStream()->expect(Twig_Token::BLOCK_END_TYPE);
-
-            return new Project_Set_Node($name, $value, $lineno, $this->getTag());
-        }
-
-        public function getTag()
-        {
-            return 'set';
-        }
-    }
-
-The ``getTag()`` method must return the tag we want to parse, here ``set``.
-
-The ``parse()`` method is invoked whenever the parser encounters a ``set``
-tag. It should return a ``Twig_Node`` instance that represents the node (the
-``Project_Set_Node`` calls creating is explained in the next section).
-
-The parsing process is simplified thanks to a bunch of methods you can call
-from the token stream (``$this->parser->getStream()``):
-
-* ``getCurrent()``: Gets the current token in the stream.
-
-* ``next()``: Moves to the next token in the stream, *but returns the old one*.
-
-* ``test($type)``, ``test($value)`` or ``test($type, $value)``: Determines whether
-  the current token is of a particular type or value (or both). The value may be an
-  array of several possible values.
-
-* ``expect($type[, $value[, $message]])``: If the current token isn't of the given
-  type/value a syntax error is thrown. Otherwise, if the type and value are correct,
-  the token is returned and the stream moves to the next token.
-
-* ``look()``: Looks a the next token without consuming it.
-
-Parsing expressions is done by calling the ``parseExpression()`` like we did for
-the ``set`` tag.
-
-.. tip::
-
-    Reading the existing ``TokenParser`` classes is the best way to learn all
-    the nitty-gritty details of the parsing process.
-
-Defining a Node
-~~~~~~~~~~~~~~~
-
-The ``Project_Set_Node`` class itself is rather simple::
-
-    class Project_Set_Node extends Twig_Node
-    {
-        public function __construct($name, Twig_Node_Expression $value, $lineno, $tag = null)
-        {
-            parent::__construct(array('value' => $value), array('name' => $name), $lineno, $tag);
-        }
-
-        public function compile(Twig_Compiler $compiler)
-        {
-            $compiler
-                ->addDebugInfo($this)
-                ->write('$context[\''.$this->getAttribute('name').'\'] = ')
-                ->subcompile($this->getNode('value'))
-                ->raw(";\n")
-            ;
-        }
-    }
-
-The compiler implements a fluid interface and provides methods that helps the
-developer generate beautiful and readable PHP code:
-
-* ``subcompile()``: Compiles a node.
-
-* ``raw()``: Writes the given string as is.
-
-* ``write()``: Writes the given string by adding indentation at the beginning
-  of each line.
-
-* ``string()``: Writes a quoted string.
-
-* ``repr()``: Writes a PHP representation of a given value (see
-  ``Twig_Node_For`` for a usage example).
-
-* ``addDebugInfo()``: Adds the line of the original template file related to
-  the current node as a comment.
-
-* ``indent()``: Indents the generated code (see ``Twig_Node_Block`` for a
-  usage example).
-
-* ``outdent()``: Outdents the generated code (see ``Twig_Node_Block`` for a
-  usage example).
-
-.. _creating_extensions:
-
-Creating an Extension
----------------------
-
-The main motivation for writing an extension is to move often used code into a
-reusable class like adding support for internationalization. An extension can
-define tags, filters, tests, operators, global variables, functions, and node
-visitors.
-
-Creating an extension also makes for a better separation of code that is
-executed at compilation time and code needed at runtime. As such, it makes
-your code faster.
-
-Most of the time, it is useful to create a single extension for your project,
-to host all the specific tags and filters you want to add to Twig.
-
-.. tip::
-
-    When packaging your code into an extension, Twig is smart enough to
-    recompile your templates whenever you make a change to it (when the
-    ``auto_reload`` is enabled).
-
-.. note::
-
-    Before writing your own extensions, have a look at the Twig official
-    extension repository: http://github.com/twigphp/Twig-extensions.
-
-An extension is a class that implements the following interface::
-
-    interface Twig_ExtensionInterface
-    {
-        /**
-         * Initializes the runtime environment.
-         *
-         * This is where you can load some file that contains filter functions for instance.
-         *
-         * @param Twig_Environment $environment The current Twig_Environment instance
-         */
-        function initRuntime(Twig_Environment $environment);
-
-        /**
-         * Returns the token parser instances to add to the existing list.
-         *
-         * @return array An array of Twig_TokenParserInterface or Twig_TokenParserBrokerInterface instances
-         */
-        function getTokenParsers();
-
-        /**
-         * Returns the node visitor instances to add to the existing list.
-         *
-         * @return array An array of Twig_NodeVisitorInterface instances
-         */
-        function getNodeVisitors();
-
-        /**
-         * Returns a list of filters to add to the existing list.
-         *
-         * @return array An array of filters
-         */
-        function getFilters();
-
-        /**
-         * Returns a list of tests to add to the existing list.
-         *
-         * @return array An array of tests
-         */
-        function getTests();
-
-        /**
-         * Returns a list of functions to add to the existing list.
-         *
-         * @return array An array of functions
-         */
-        function getFunctions();
-
-        /**
-         * Returns a list of operators to add to the existing list.
-         *
-         * @return array An array of operators
-         */
-        function getOperators();
-
-        /**
-         * Returns a list of global variables to add to the existing list.
-         *
-         * @return array An array of global variables
-         */
-        function getGlobals();
-
-        /**
-         * Returns the name of the extension.
-         *
-         * @return string The extension name
-         */
-        function getName();
-    }
-
-To keep your extension class clean and lean, it can inherit from the built-in
-``Twig_Extension`` class instead of implementing the whole interface. That
-way, you just need to implement the ``getName()`` method as the
-``Twig_Extension`` provides empty implementations for all other methods.
-
-The ``getName()`` method must return a unique identifier for your extension.
-
-Now, with this information in mind, let's create the most basic extension
-possible::
-
-    class Project_Twig_Extension extends Twig_Extension
-    {
-        public function getName()
-        {
-            return 'project';
-        }
-    }
-
-.. note::
-
-    Of course, this extension does nothing for now. We will customize it in
-    the next sections.
-
-Twig does not care where you save your extension on the filesystem, as all
-extensions must be registered explicitly to be available in your templates.
-
-You can register an extension by using the ``addExtension()`` method on your
-main ``Environment`` object::
-
-    $twig = new Twig_Environment($loader);
-    $twig->addExtension(new Project_Twig_Extension());
-
-Of course, you need to first load the extension file by either using
-``require_once()`` or by using an autoloader (see `spl_autoload_register()`_).
-
-.. tip::
-
-    The bundled extensions are great examples of how extensions work.
-
-Globals
-~~~~~~~
-
-Global variables can be registered in an extension via the ``getGlobals()``
-method::
-
-    class Project_Twig_Extension extends Twig_Extension
-    {
-        public function getGlobals()
-        {
-            return array(
-                'text' => new Text(),
-            );
-        }
-
-        // ...
-    }
-
-Functions
-~~~~~~~~~
-
-Functions can be registered in an extension via the ``getFunctions()``
-method::
-
-    class Project_Twig_Extension extends Twig_Extension
-    {
-        public function getFunctions()
-        {
-            return array(
-                'lipsum' => new Twig_Function_Function('generate_lipsum'),
-            );
-        }
-
-        // ...
-    }
-
-Filters
-~~~~~~~
-
-To add a filter to an extension, you need to override the ``getFilters()``
-method. This method must return an array of filters to add to the Twig
-environment::
-
-    class Project_Twig_Extension extends Twig_Extension
-    {
-        public function getFilters()
-        {
-            return array(
-                'rot13' => new Twig_Filter_Function('str_rot13'),
-            );
-        }
-
-        // ...
-    }
-
-As you can see in the above code, the ``getFilters()`` method returns an array
-where keys are the name of the filters (``rot13``) and the values the
-definition of the filter (``new Twig_Filter_Function('str_rot13')``).
-
-As seen in the previous chapter, you can also define filters as static methods
-on the extension class::
-
-$twig->addFilter('rot13', new Twig_Filter_Function('Project_Twig_Extension::rot13Filter'));
-
-You can also use ``Twig_Filter_Method`` instead of ``Twig_Filter_Function``
-when defining a filter to use a method::
-
-    class Project_Twig_Extension extends Twig_Extension
-    {
-        public function getFilters()
-        {
-            return array(
-                'rot13' => new Twig_Filter_Method($this, 'rot13Filter'),
-            );
-        }
-
-        public function rot13Filter($string)
-        {
-            return str_rot13($string);
-        }
-
-        // ...
-    }
-
-The first argument of the ``Twig_Filter_Method`` constructor is always
-``$this``, the current extension object. The second one is the name of the
-method to call.
-
-Using methods for filters is a great way to package your filter without
-polluting the global namespace. This also gives the developer more flexibility
-at the cost of a small overhead.
-
-Overriding default Filters
-..........................
-
-If some default core filters do not suit your needs, you can easily override
-them by creating your own extension. Just use the same names as the one you
-want to override::
-
-    class MyCoreExtension extends Twig_Extension
-    {
-        public function getFilters()
-        {
-            return array(
-                'date' => new Twig_Filter_Method($this, 'dateFilter'),
-                // ...
-            );
-        }
-
-        public function dateFilter($timestamp, $format = 'F j, Y H:i')
-        {
-            return '...'.twig_date_format_filter($timestamp, $format);
-        }
-
-        public function getName()
-        {
-            return 'project';
-        }
-    }
-
-Here, we override the ``date`` filter with a custom one. Using this extension
-is as simple as registering the ``MyCoreExtension`` extension by calling the
-``addExtension()`` method on the environment instance::
-
-    $twig = new Twig_Environment($loader);
-    $twig->addExtension(new MyCoreExtension());
-
-Tags
-~~~~
-
-Adding a tag in an extension can be done by overriding the
-``getTokenParsers()`` method. This method must return an array of tags to add
-to the Twig environment::
-
-    class Project_Twig_Extension extends Twig_Extension
-    {
-        public function getTokenParsers()
-        {
-            return array(new Project_Set_TokenParser());
-        }
-
-        // ...
-    }
-
-In the above code, we have added a single new tag, defined by the
-``Project_Set_TokenParser`` class. The ``Project_Set_TokenParser`` class is
-responsible for parsing the tag and compiling it to PHP.
-
-Operators
-~~~~~~~~~
-
-The ``getOperators()`` methods allows to add new operators. Here is how to add
-``!``, ``||``, and ``&&`` operators::
-
-    class Project_Twig_Extension extends Twig_Extension
-    {
-        public function getOperators()
-        {
-            return array(
-                array(
-                    '!' => array('precedence' => 50, 'class' => 'Twig_Node_Expression_Unary_Not'),
-                ),
-                array(
-                    '||' => array('precedence' => 10, 'class' => 'Twig_Node_Expression_Binary_Or', 'associativity' => Twig_ExpressionParser::OPERATOR_LEFT),
-                    '&&' => array('precedence' => 15, 'class' => 'Twig_Node_Expression_Binary_And', 'associativity' => Twig_ExpressionParser::OPERATOR_LEFT),
-                ),
-            );
-        }
-
-        // ...
-    }
-
-Tests
-~~~~~
-
-The ``getTests()`` methods allows to add new test functions::
-
-    class Project_Twig_Extension extends Twig_Extension
-    {
-        public function getTests()
-        {
-            return array(
-                'even' => new Twig_Test_Function('twig_test_even'),
-            );
-        }
-
-        // ...
-    }
-
-Testing an Extension
---------------------
-
-.. versionadded:: 1.10
-    Support for functional tests was added in Twig 1.10.
-
-Functional Tests
-~~~~~~~~~~~~~~~~
-
-You can create functional tests for extensions simply by creating the
-following file structure in your test directory::
-
-    Fixtures/
-        filters/
-            foo.test
-            bar.test
-        functions/
-            foo.test
-            bar.test
-        tags/
-            foo.test
-            bar.test
-    IntegrationTest.php
-
-The ``IntegrationTest.php`` file should look like this::
-
-    class Project_Tests_IntegrationTest extends Twig_Test_IntegrationTestCase
-    {
-        public function getExtensions()
-        {
-            return array(
-                new Project_Twig_Extension1(),
-                new Project_Twig_Extension2(),
-            );
-        }
-
-        public function getFixturesDir()
-        {
-            return dirname(__FILE__).'/Fixtures/';
-        }
-    }
-
-Fixtures examples can be found within the Twig repository
-`tests/Twig/Fixtures`_ directory.
-
-Node Tests
-~~~~~~~~~~
-
-Testing the node visitors can be complex, so extend your test cases from
-``Twig_Test_NodeTestCase``. Examples can be found in the Twig repository
-`tests/Twig/Node`_ directory.
-
-.. _`spl_autoload_register()`: http://www.php.net/spl_autoload_register
-.. _`rot13`:                   http://www.php.net/manual/en/function.str-rot13.php
-.. _`tests/Twig/Fixtures`:     https://github.com/twigphp/Twig/tree/master/test/Twig/Tests/Fixtures
-.. _`tests/Twig/Node`:         https://github.com/twigphp/Twig/tree/master/test/Twig/Tests/Node
diff --git a/vendor/twig/twig/doc/api.rst b/vendor/twig/twig/doc/api.rst
deleted file mode 100644
index f367db0..0000000
--- a/vendor/twig/twig/doc/api.rst
+++ /dev/null
@@ -1,552 +0,0 @@
-Twig for Developers
-===================
-
-This chapter describes the API to Twig and not the template language. It will
-be most useful as reference to those implementing the template interface to
-the application and not those who are creating Twig templates.
-
-Basics
-------
-
-Twig uses a central object called the **environment** (of class
-``Twig_Environment``). Instances of this class are used to store the
-configuration and extensions, and are used to load templates from the file
-system or other locations.
-
-Most applications will create one ``Twig_Environment`` object on application
-initialization and use that to load templates. In some cases it's however
-useful to have multiple environments side by side, if different configurations
-are in use.
-
-The simplest way to configure Twig to load templates for your application
-looks roughly like this::
-
-    require_once '/path/to/lib/Twig/Autoloader.php';
-    Twig_Autoloader::register();
-
-    $loader = new Twig_Loader_Filesystem('/path/to/templates');
-    $twig = new Twig_Environment($loader, array(
-        'cache' => '/path/to/compilation_cache',
-    ));
-
-This will create a template environment with the default settings and a loader
-that looks up the templates in the ``/path/to/templates/`` folder. Different
-loaders are available and you can also write your own if you want to load
-templates from a database or other resources.
-
-.. note::
-
-    Notice that the second argument of the environment is an array of options.
-    The ``cache`` option is a compilation cache directory, where Twig caches
-    the compiled templates to avoid the parsing phase for sub-sequent
-    requests. It is very different from the cache you might want to add for
-    the evaluated templates. For such a need, you can use any available PHP
-    cache library.
-
-To load a template from this environment you just have to call the
-``loadTemplate()`` method which then returns a ``Twig_Template`` instance::
-
-    $template = $twig->loadTemplate('index.html');
-
-To render the template with some variables, call the ``render()`` method::
-
-    echo $template->render(array('the' => 'variables', 'go' => 'here'));
-
-.. note::
-
-    The ``display()`` method is a shortcut to output the template directly.
-
-You can also load and render the template in one fell swoop::
-
-    echo $twig->render('index.html', array('the' => 'variables', 'go' => 'here'));
-
-.. _environment_options:
-
-Environment Options
--------------------
-
-When creating a new ``Twig_Environment`` instance, you can pass an array of
-options as the constructor second argument::
-
-    $twig = new Twig_Environment($loader, array('debug' => true));
-
-The following options are available:
-
-* ``debug`` *boolean*
-
-  When set to ``true``, the generated templates have a
-  ``__toString()`` method that you can use to display the generated nodes
-  (default to ``false``).
-
-* ``charset`` *string (default to ``utf-8``)*
-
-  The charset used by the templates.
-
-* ``base_template_class`` *string (default to ``Twig_Template``)*
-
-  The base template class to use for generated
-  templates.
-
-* ``cache`` *string|false*
-
-  An absolute path where to store the compiled templates, or
-  ``false`` to disable caching (which is the default).
-
-* ``auto_reload`` *boolean*
-
-  When developing with Twig, it's useful to recompile the
-  template whenever the source code changes. If you don't provide a value for
-  the ``auto_reload`` option, it will be determined automatically based on the
-  ``debug`` value.
-
-* ``strict_variables`` *boolean*
-
-  If set to ``false``, Twig will silently ignore invalid
-  variables (variables and or attributes/methods that do not exist) and
-  replace them with a ``null`` value. When set to ``true``, Twig throws an
-  exception instead (default to ``false``).
-
-* ``autoescape`` *string|boolean*
-
-  If set to ``true``, HTML auto-escaping will be enabled by
-  default for all templates (default to ``true``).
-
-  As of Twig 1.8, you can set the escaping strategy to use (``html``, ``js``,
-  ``false`` to disable).
-
-  As of Twig 1.9, you can set the escaping strategy to use (``css``, ``url``,
-  ``html_attr``, or a PHP callback that takes the template "filename" and must
-  return the escaping strategy to use -- the callback cannot be a function name
-  to avoid collision with built-in escaping strategies).
-
-  As of Twig 1.17, the ``filename`` escaping strategy determines the escaping
-  strategy to use for a template based on the template filename extension (this
-  strategy does not incur any overhead at runtime as auto-escaping is done at
-  compilation time.)
-
-* ``optimizations`` *integer*
-
-  A flag that indicates which optimizations to apply
-  (default to ``-1`` -- all optimizations are enabled; set it to ``0`` to
-  disable).
-
-Loaders
--------
-
-Loaders are responsible for loading templates from a resource such as the file
-system.
-
-Compilation Cache
-~~~~~~~~~~~~~~~~~
-
-All template loaders can cache the compiled templates on the filesystem for
-future reuse. It speeds up Twig a lot as templates are only compiled once; and
-the performance boost is even larger if you use a PHP accelerator such as APC.
-See the ``cache`` and ``auto_reload`` options of ``Twig_Environment`` above
-for more information.
-
-Built-in Loaders
-~~~~~~~~~~~~~~~~
-
-Here is a list of the built-in loaders Twig provides:
-
-``Twig_Loader_Filesystem``
-..........................
-
-.. versionadded:: 1.10
-    The ``prependPath()`` and support for namespaces were added in Twig 1.10.
-
-``Twig_Loader_Filesystem`` loads templates from the file system. This loader
-can find templates in folders on the file system and is the preferred way to
-load them::
-
-    $loader = new Twig_Loader_Filesystem($templateDir);
-
-It can also look for templates in an array of directories::
-
-    $loader = new Twig_Loader_Filesystem(array($templateDir1, $templateDir2));
-
-With such a configuration, Twig will first look for templates in
-``$templateDir1`` and if they do not exist, it will fallback to look for them
-in the ``$templateDir2``.
-
-You can add or prepend paths via the ``addPath()`` and ``prependPath()``
-methods::
-
-    $loader->addPath($templateDir3);
-    $loader->prependPath($templateDir4);
-
-The filesystem loader also supports namespaced templates. This allows to group
-your templates under different namespaces which have their own template paths.
-
-When using the ``setPaths()``, ``addPath()``, and ``prependPath()`` methods,
-specify the namespace as the second argument (when not specified, these
-methods act on the "main" namespace)::
-
-    $loader->addPath($templateDir, 'admin');
-
-Namespaced templates can be accessed via the special
-``@namespace_name/template_path`` notation::
-
-    $twig->render('@admin/index.html', array());
-
-``Twig_Loader_Array``
-.....................
-
-``Twig_Loader_Array`` loads a template from a PHP array. It's passed an array
-of strings bound to template names::
-
-    $loader = new Twig_Loader_Array(array(
-        'index.html' => 'Hello {{ name }}!',
-    ));
-    $twig = new Twig_Environment($loader);
-
-    echo $twig->render('index.html', array('name' => 'Fabien'));
-
-This loader is very useful for unit testing. It can also be used for small
-projects where storing all templates in a single PHP file might make sense.
-
-.. tip::
-
-    When using the ``Array`` or ``String`` loaders with a cache mechanism, you
-    should know that a new cache key is generated each time a template content
-    "changes" (the cache key being the source code of the template). If you
-    don't want to see your cache grows out of control, you need to take care
-    of clearing the old cache file by yourself.
-
-``Twig_Loader_Chain``
-.....................
-
-``Twig_Loader_Chain`` delegates the loading of templates to other loaders::
-
-    $loader1 = new Twig_Loader_Array(array(
-        'base.html' => '{% block content %}{% endblock %}',
-    ));
-    $loader2 = new Twig_Loader_Array(array(
-        'index.html' => '{% extends "base.html" %}{% block content %}Hello {{ name }}{% endblock %}',
-        'base.html'  => 'Will never be loaded',
-    ));
-
-    $loader = new Twig_Loader_Chain(array($loader1, $loader2));
-
-    $twig = new Twig_Environment($loader);
-
-When looking for a template, Twig will try each loader in turn and it will
-return as soon as the template is found. When rendering the ``index.html``
-template from the above example, Twig will load it with ``$loader2`` but the
-``base.html`` template will be loaded from ``$loader1``.
-
-``Twig_Loader_Chain`` accepts any loader that implements
-``Twig_LoaderInterface``.
-
-.. note::
-
-    You can also add loaders via the ``addLoader()`` method.
-
-Create your own Loader
-~~~~~~~~~~~~~~~~~~~~~~
-
-All loaders implement the ``Twig_LoaderInterface``::
-
-    interface Twig_LoaderInterface
-    {
-        /**
-         * Gets the source code of a template, given its name.
-         *
-         * @param  string $name string The name of the template to load
-         *
-         * @return string The template source code
-         */
-        function getSource($name);
-
-        /**
-         * Gets the cache key to use for the cache for a given template name.
-         *
-         * @param  string $name string The name of the template to load
-         *
-         * @return string The cache key
-         */
-        function getCacheKey($name);
-
-        /**
-         * Returns true if the template is still fresh.
-         *
-         * @param string    $name The template name
-         * @param timestamp $time The last modification time of the cached template
-         */
-        function isFresh($name, $time);
-    }
-
-The ``isFresh()`` method must return ``true`` if the current cached template
-is still fresh, given the last modification time, or ``false`` otherwise.
-
-.. tip::
-
-    As of Twig 1.11.0, you can also implement ``Twig_ExistsLoaderInterface``
-    to make your loader faster when used with the chain loader.
-
-Using Extensions
-----------------
-
-Twig extensions are packages that add new features to Twig. Using an
-extension is as simple as using the ``addExtension()`` method::
-
-    $twig->addExtension(new Twig_Extension_Sandbox());
-
-Twig comes bundled with the following extensions:
-
-* *Twig_Extension_Core*: Defines all the core features of Twig.
-
-* *Twig_Extension_Escaper*: Adds automatic output-escaping and the possibility
-  to escape/unescape blocks of code.
-
-* *Twig_Extension_Sandbox*: Adds a sandbox mode to the default Twig
-  environment, making it safe to evaluate untrusted code.
-
-* *Twig_Extension_Profiler*: Enabled the built-in Twig profiler (as of Twig
-  1.18).
-
-* *Twig_Extension_Optimizer*: Optimizes the node tree before compilation.
-
-The core, escaper, and optimizer extensions do not need to be added to the
-Twig environment, as they are registered by default.
-
-Built-in Extensions
--------------------
-
-This section describes the features added by the built-in extensions.
-
-.. tip::
-
-    Read the chapter about extending Twig to learn how to create your own
-    extensions.
-
-Core Extension
-~~~~~~~~~~~~~~
-
-The ``core`` extension defines all the core features of Twig:
-
-* :doc:`Tags <tags/index>`;
-* :doc:`Filters <filters/index>`;
-* :doc:`Functions <functions/index>`;
-* :doc:`Tests <tests/index>`.
-
-Escaper Extension
-~~~~~~~~~~~~~~~~~
-
-The ``escaper`` extension adds automatic output escaping to Twig. It defines a
-tag, ``autoescape``, and a filter, ``raw``.
-
-When creating the escaper extension, you can switch on or off the global
-output escaping strategy::
-
-    $escaper = new Twig_Extension_Escaper('html');
-    $twig->addExtension($escaper);
-
-If set to ``html``, all variables in templates are escaped (using the ``html``
-escaping strategy), except those using the ``raw`` filter:
-
-.. code-block:: jinja
-
-    {{ article.to_html|raw }}
-
-You can also change the escaping mode locally by using the ``autoescape`` tag
-(see the :doc:`autoescape<tags/autoescape>` doc for the syntax used before
-Twig 1.8):
-
-.. code-block:: jinja
-
-    {% autoescape 'html' %}
-        {{ var }}
-        {{ var|raw }}      {# var won't be escaped #}
-        {{ var|escape }}   {# var won't be double-escaped #}
-    {% endautoescape %}
-
-.. warning::
-
-    The ``autoescape`` tag has no effect on included files.
-
-The escaping rules are implemented as follows:
-
-* Literals (integers, booleans, arrays, ...) used in the template directly as
-  variables or filter arguments are never automatically escaped:
-
-  .. code-block:: jinja
-
-        {{ "Twig<br />" }} {# won't be escaped #}
-
-        {% set text = "Twig<br />" %}
-        {{ text }} {# will be escaped #}
-
-* Expressions which the result is always a literal or a variable marked safe
-  are never automatically escaped:
-
-  .. code-block:: jinja
-
-        {{ foo ? "Twig<br />" : "<br />Twig" }} {# won't be escaped #}
-
-        {% set text = "Twig<br />" %}
-        {{ foo ? text : "<br />Twig" }} {# will be escaped #}
-
-        {% set text = "Twig<br />" %}
-        {{ foo ? text|raw : "<br />Twig" }} {# won't be escaped #}
-
-        {% set text = "Twig<br />" %}
-        {{ foo ? text|escape : "<br />Twig" }} {# the result of the expression won't be escaped #}
-
-* Escaping is applied before printing, after any other filter is applied:
-
-  .. code-block:: jinja
-
-        {{ var|upper }} {# is equivalent to {{ var|upper|escape }} #}
-
-* The `raw` filter should only be used at the end of the filter chain:
-
-  .. code-block:: jinja
-
-        {{ var|raw|upper }} {# will be escaped #}
-
-        {{ var|upper|raw }} {# won't be escaped #}
-
-* Automatic escaping is not applied if the last filter in the chain is marked
-  safe for the current context (e.g. ``html`` or ``js``). ``escape`` and
-  ``escape('html')`` are marked safe for HTML, ``escape('js')`` is marked
-  safe for JavaScript, ``raw`` is marked safe for everything.
-
-  .. code-block:: jinja
-
-        {% autoescape 'js' %}
-            {{ var|escape('html') }} {# will be escaped for HTML and JavaScript #}
-            {{ var }} {# will be escaped for JavaScript #}
-            {{ var|escape('js') }} {# won't be double-escaped #}
-        {% endautoescape %}
-
-.. note::
-
-    Note that autoescaping has some limitations as escaping is applied on
-    expressions after evaluation. For instance, when working with
-    concatenation, ``{{ foo|raw ~ bar }}`` won't give the expected result as
-    escaping is applied on the result of the concatenation, not on the
-    individual variables (so, the ``raw`` filter won't have any effect here).
-
-Sandbox Extension
-~~~~~~~~~~~~~~~~~
-
-The ``sandbox`` extension can be used to evaluate untrusted code. Access to
-unsafe attributes and methods is prohibited. The sandbox security is managed
-by a policy instance. By default, Twig comes with one policy class:
-``Twig_Sandbox_SecurityPolicy``. This class allows you to white-list some
-tags, filters, properties, and methods::
-
-    $tags = array('if');
-    $filters = array('upper');
-    $methods = array(
-        'Article' => array('getTitle', 'getBody'),
-    );
-    $properties = array(
-        'Article' => array('title', 'body'),
-    );
-    $functions = array('range');
-    $policy = new Twig_Sandbox_SecurityPolicy($tags, $filters, $methods, $properties, $functions);
-
-With the previous configuration, the security policy will only allow usage of
-the ``if`` tag, and the ``upper`` filter. Moreover, the templates will only be
-able to call the ``getTitle()`` and ``getBody()`` methods on ``Article``
-objects, and the ``title`` and ``body`` public properties. Everything else
-won't be allowed and will generate a ``Twig_Sandbox_SecurityError`` exception.
-
-The policy object is the first argument of the sandbox constructor::
-
-    $sandbox = new Twig_Extension_Sandbox($policy);
-    $twig->addExtension($sandbox);
-
-By default, the sandbox mode is disabled and should be enabled when including
-untrusted template code by using the ``sandbox`` tag:
-
-.. code-block:: jinja
-
-    {% sandbox %}
-        {% include 'user.html' %}
-    {% endsandbox %}
-
-You can sandbox all templates by passing ``true`` as the second argument of
-the extension constructor::
-
-    $sandbox = new Twig_Extension_Sandbox($policy, true);
-
-Profiler Extension
-~~~~~~~~~~~~~~~~~~
-
-.. versionadded:: 1.18
-    The Profile extension was added in Twig 1.18.
-
-The ``profiler`` extension enables a profiler for Twig templates; it should
-only be used on your development machines as it adds some overhead::
-
-    $profile = new Twig_Profiler_Profile();
-    $twig->addExtension(new Twig_Extension_Profiler($profile));
-
-    $dumper = new Twig_Profiler_Dumper_Text();
-    echo $dumper->dump($profile);
-
-A profile contains information about time and memory consumption for template,
-block, and macro executions.
-
-You can also dump the data in a `Blackfire.io <https://blackfire.io/>`_
-compatible format::
-
-    $dumper = new Twig_Profiler_Dumper_Blackfire();
-    file_put_contents('/path/to/profile.prof', $dumper->dump($profile));
-
-Upload the profile to visualize it (create a `free account
-<https://blackfire.io/signup>`_ first):
-
-.. code-block:: sh
-
-    blackfire --slot=7 upload /path/to/profile.prof
-
-Optimizer Extension
-~~~~~~~~~~~~~~~~~~~
-
-The ``optimizer`` extension optimizes the node tree before compilation::
-
-    $twig->addExtension(new Twig_Extension_Optimizer());
-
-By default, all optimizations are turned on. You can select the ones you want
-to enable by passing them to the constructor::
-
-    $optimizer = new Twig_Extension_Optimizer(Twig_NodeVisitor_Optimizer::OPTIMIZE_FOR);
-
-    $twig->addExtension($optimizer);
-
-Twig supports the following optimizations:
-
-* ``Twig_NodeVisitor_Optimizer::OPTIMIZE_ALL``, enables all optimizations
-  (this is the default value).
-* ``Twig_NodeVisitor_Optimizer::OPTIMIZE_NONE``, disables all optimizations.
-  This reduces the compilation time, but it can increase the execution time
-  and the consumed memory.
-* ``Twig_NodeVisitor_Optimizer::OPTIMIZE_FOR``, optimizes the ``for`` tag by
-  removing the ``loop`` variable creation whenever possible.
-* ``Twig_NodeVisitor_Optimizer::OPTIMIZE_RAW_FILTER``, removes the ``raw``
-  filter whenever possible.
-* ``Twig_NodeVisitor_Optimizer::OPTIMIZE_VAR_ACCESS``, simplifies the creation
-  and access of variables in the compiled templates whenever possible.
-
-Exceptions
-----------
-
-Twig can throw exceptions:
-
-* ``Twig_Error``: The base exception for all errors.
-
-* ``Twig_Error_Syntax``: Thrown to tell the user that there is a problem with
-  the template syntax.
-
-* ``Twig_Error_Runtime``: Thrown when an error occurs at runtime (when a filter
-  does not exist for instance).
-
-* ``Twig_Error_Loader``: Thrown when an error occurs during template loading.
-
-* ``Twig_Sandbox_SecurityError``: Thrown when an unallowed tag, filter, or
-  method is called in a sandboxed template.
diff --git a/vendor/twig/twig/doc/coding_standards.rst b/vendor/twig/twig/doc/coding_standards.rst
deleted file mode 100644
index f435df4..0000000
--- a/vendor/twig/twig/doc/coding_standards.rst
+++ /dev/null
@@ -1,101 +0,0 @@
-Coding Standards
-================
-
-When writing Twig templates, we recommend you to follow these official coding
-standards:
-
-* Put one (and only one) space after the start of a delimiter (``{{``, ``{%``,
-  and ``{#``) and before the end of a delimiter (``}}``, ``%}``, and ``#}``):
-
-  .. code-block:: jinja
-
-    {{ foo }}
-    {# comment #}
-    {% if foo %}{% endif %}
-
-  When using the whitespace control character, do not put any spaces between
-  it and the delimiter:
-
-  .. code-block:: jinja
-
-    {{- foo -}}
-    {#- comment -#}
-    {%- if foo -%}{%- endif -%}
-
-* Put one (and only one) space before and after the following operators:
-  comparison operators (``==``, ``!=``, ``<``, ``>``, ``>=``, ``<=``), math
-  operators (``+``, ``-``, ``/``, ``*``, ``%``, ``//``, ``**``), logic
-  operators (``not``, ``and``, ``or``), ``~``, ``is``, ``in``, and the ternary
-  operator (``?:``):
-
-  .. code-block:: jinja
-
-     {{ 1 + 2 }}
-     {{ foo ~ bar }}
-     {{ true ? true : false }}
-
-* Put one (and only one) space after the ``:`` sign in hashes and ``,`` in
-  arrays and hashes:
-
-  .. code-block:: jinja
-
-     {{ [1, 2, 3] }}
-     {{ {'foo': 'bar'} }}
-
-* Do not put any spaces after an opening parenthesis and before a closing
-  parenthesis in expressions:
-
-  .. code-block:: jinja
-
-    {{ 1 + (2 * 3) }}
-
-* Do not put any spaces before and after string delimiters:
-
-  .. code-block:: jinja
-
-    {{ 'foo' }}
-    {{ "foo" }}
-
-* Do not put any spaces before and after the following operators: ``|``,
-  ``.``, ``..``, ``[]``:
-
-  .. code-block:: jinja
-
-    {{ foo|upper|lower }}
-    {{ user.name }}
-    {{ user[name] }}
-    {% for i in 1..12 %}{% endfor %}
-
-* Do not put any spaces before and after the parenthesis used for filter and
-  function calls:
-
-  .. code-block:: jinja
-
-     {{ foo|default('foo') }}
-     {{ range(1..10) }}
-
-* Do not put any spaces before and after the opening and the closing of arrays
-  and hashes:
-
-  .. code-block:: jinja
-
-     {{ [1, 2, 3] }}
-     {{ {'foo': 'bar'} }}
-
-* Use lower cased and underscored variable names:
-
-  .. code-block:: jinja
-
-     {% set foo = 'foo' %}
-     {% set foo_bar = 'foo' %}
-
-* Indent your code inside tags (use the same indentation as the one used for
-  the target language of the rendered template):
-
-  .. code-block:: jinja
-
-     {% block foo %}
-        {% if true %}
-            true
-        {% endif %}
-     {% endblock %}
diff --git a/vendor/twig/twig/doc/deprecated.rst b/vendor/twig/twig/doc/deprecated.rst
deleted file mode 100644
index 23b22de..0000000
--- a/vendor/twig/twig/doc/deprecated.rst
+++ /dev/null
@@ -1,149 +0,0 @@
-Deprecated Features
-===================
-
-This document lists all deprecated features in Twig. Deprecated features are
-kept for backward compatibility and removed in the next major release (a
-feature that was deprecated in Twig 1.x is removed in Twig 2.0).
-
-Deprecation Notices
--------------------
-
-As of Twig 1.21, Twig generates deprecation notices when a template uses
-deprecated features. See :ref:`deprecation-notices` for more information.
-
-Token Parsers
--------------
-
-* As of Twig 1.x, the token parser broker sub-system is deprecated. The
-  following class and interface will be removed in 2.0:
-
-  * ``Twig_TokenParserBrokerInterface``
-  * ``Twig_TokenParserBroker``
-
-Extensions
-----------
-
-* As of Twig 1.x, the ability to remove an extension is deprecated and the
-  ``Twig_Environment::removeExtension()`` method will be removed in 2.0.
-
-PEAR
-----
-
-PEAR support has been discontinued in Twig 1.15.1, and no PEAR packages are
-provided anymore. Use Composer instead.
-
-Filters
--------
-
-* As of Twig 1.x, use ``Twig_SimpleFilter`` to add a filter. The following
-  classes and interfaces will be removed in 2.0:
-
-  * ``Twig_FilterInterface``
-  * ``Twig_FilterCallableInterface``
-  * ``Twig_Filter``
-  * ``Twig_Filter_Function``
-  * ``Twig_Filter_Method``
-  * ``Twig_Filter_Node``
-
-* As of Twig 2.x, the ``Twig_SimpleFilter`` class is deprecated and will be
-  removed in Twig 3.x (use ``Twig_Filter`` instead). In Twig 2.x,
-  ``Twig_SimpleFilter`` is just an alias for ``Twig_Filter``.
-
-Functions
----------
-
-* As of Twig 1.x, use ``Twig_SimpleFunction`` to add a function. The following
-  classes and interfaces will be removed in 2.0:
-
-  * ``Twig_FunctionInterface``
-  * ``Twig_FunctionCallableInterface``
-  * ``Twig_Function``
-  * ``Twig_Function_Function``
-  * ``Twig_Function_Method``
-  * ``Twig_Function_Node``
-
-* As of Twig 2.x, the ``Twig_SimpleFunction`` class is deprecated and will be
-  removed in Twig 3.x (use ``Twig_Function`` instead). In Twig 2.x,
-  ``Twig_SimpleFunction`` is just an alias for ``Twig_Function``.
-
-Tests
------
-
-* As of Twig 1.x, use ``Twig_SimpleTest`` to add a test. The following classes
-  and interfaces will be removed in 2.0:
-
-  * ``Twig_TestInterface``
-  * ``Twig_TestCallableInterface``
-  * ``Twig_Test``
-  * ``Twig_Test_Function``
-  * ``Twig_Test_Method``
-  * ``Twig_Test_Node``
-
-* As of Twig 2.x, the ``Twig_SimpleTest`` class is deprecated and will be
-  removed in Twig 3.x (use ``Twig_Test`` instead). In Twig 2.x,
-  ``Twig_SimpleTest`` is just an alias for ``Twig_Test``.
-
-* The ``sameas`` and ``divisibleby`` tests are deprecated in favor of ``same
-  as`` and ``divisible by`` respectively.
-
-Tags
-----
-
-* As of Twig 1.x, the ``raw`` tag is deprecated. You should use ``verbatim``
-  instead.
-
-Nodes
------
-
-* As of Twig 1.x, ``Node::toXml()`` is deprecated and will be removed in Twig
-  2.0.
-
-Interfaces
-----------
-
-* As of Twig 2.x, the following interfaces are deprecated and empty (they will
-  be removed in Twig 3.0):
-
-* ``Twig_CompilerInterface``     (use ``Twig_Compiler`` instead)
-* ``Twig_LexerInterface``        (use ``Twig_Lexer`` instead)
-* ``Twig_NodeInterface``         (use ``Twig_Node`` instead)
-* ``Twig_ParserInterface``       (use ``Twig_Parser`` instead)
-* ``Twig_ExistsLoaderInterface`` (merged with ``Twig_LoaderInterface``)
-* ``Twig_TemplateInterface``     (use ``Twig_Template`` instead, and use
-  those constants Twig_Template::ANY_CALL, Twig_Template::ARRAY_CALL,
-  Twig_Template::METHOD_CALL)
-
-Loaders
--------
-
-* As of Twig 1.x, ``Twig_Loader_String`` is deprecated and will be removed in
-  2.0. You can render a string via ``Twig_Environment::createTemplate()``.
-
-Node Visitors
--------------
-
-* Because of the removal of ``Twig_NodeInterface`` in 2.0, you need to extend
-  ``Twig_BaseNodeVistor`` instead of implementing ``Twig_NodeVisitorInterface``
-  directly to make your node visitors compatible with both Twig 1.x and 2.x.
-
-Globals
--------
-
-* As of Twig 2.x, the ability to register a global variable after the runtime
-  or the extensions have been initialized is not possible anymore (but
-  changing the value of an already registered global is possible).
-
-* As of Twig 1.x, the ``_self`` global variable is deprecated except for usage
-  in the ``from`` and the ``import`` tags. In Twig 2.0, ``_self`` is not
-  exposed anymore but still usable in the ``from`` and the ``import`` tags.
-
-Miscellaneous
--------------
-
-* As of Twig 1.x, ``Twig_Environment::clearTemplateCache()``, ``Twig_Environment::writeCacheFile()``,
-  ``Twig_Environment::clearCacheFiles()``, ``Twig_Environment::getCacheFilename()``, and
-  ``Twig_Environment::getTemplateClassPrefix()`` are deprecated and will be removed in 2.0.
-
-* As of Twig 1.x, ``Twig_Template::getEnvironment()`` and
-  ``Twig_TemplateInterface::getEnvironment()`` are deprecated and will be
-  removed in 2.0.
diff --git a/vendor/twig/twig/doc/filters/abs.rst b/vendor/twig/twig/doc/filters/abs.rst
deleted file mode 100644
index 22fa59d..0000000
--- a/vendor/twig/twig/doc/filters/abs.rst
+++ /dev/null
@@ -1,18 +0,0 @@
-``abs``
-=======
-
-The ``abs`` filter returns the absolute value.
-
-.. code-block:: jinja
-
-    {# number = -5 #}
-
-    {{ number|abs }}
-
-    {# outputs 5 #}
-
-.. note::
-
-    Internally, Twig uses the PHP `abs`_ function.
-
-.. _`abs`: http://php.net/abs
diff --git a/vendor/twig/twig/doc/filters/batch.rst b/vendor/twig/twig/doc/filters/batch.rst
deleted file mode 100644
index f8b6fa9..0000000
--- a/vendor/twig/twig/doc/filters/batch.rst
+++ /dev/null
@@ -1,51 +0,0 @@
-``batch``
-=========
-
-.. versionadded:: 1.12.3
-    The ``batch`` filter was added in Twig 1.12.3.
-
-The ``batch`` filter "batches" items by returning a list of lists with the
-given number of items. A second parameter can be provided and used to fill in
-missing items:
-
-.. code-block:: jinja
-
-    {% set items = ['a', 'b', 'c', 'd', 'e', 'f', 'g'] %}
-
-    <table>
-    {% for row in items|batch(3, 'No item') %}
-        <tr>
-            {% for column in row %}
-                <td>{{ column }}</td>
-            {% endfor %}
-        </tr>
-    {% endfor %}
-    </table>
-
-The above example will be rendered as:
-
-.. code-block:: jinja
-
-    <table>
-        <tr>
-            <td>a</td>
-            <td>b</td>
-            <td>c</td>
-        </tr>
-        <tr>
-            <td>d</td>
-            <td>e</td>
-            <td>f</td>
-        </tr>
-        <tr>
-            <td>g</td>
-            <td>No item</td>
-            <td>No item</td>
-        </tr>
-    </table>
-
-Arguments
----------
-
-* ``size``: The size of the batch; fractional numbers will be rounded up
-* ``fill``: Used to fill in missing items
diff --git a/vendor/twig/twig/doc/filters/capitalize.rst b/vendor/twig/twig/doc/filters/capitalize.rst
deleted file mode 100644
index 10546a1..0000000
--- a/vendor/twig/twig/doc/filters/capitalize.rst
+++ /dev/null
@@ -1,11 +0,0 @@
-``capitalize``
-==============
-
-The ``capitalize`` filter capitalizes a value. The first character will be
-uppercase, all others lowercase:
-
-.. code-block:: jinja
-
-    {{ 'my first car'|capitalize }}
-
-    {# outputs 'My first car' #}
diff --git a/vendor/twig/twig/doc/filters/convert_encoding.rst b/vendor/twig/twig/doc/filters/convert_encoding.rst
deleted file mode 100644
index f4ebe58..0000000
--- a/vendor/twig/twig/doc/filters/convert_encoding.rst
+++ /dev/null
@@ -1,28 +0,0 @@
-``convert_encoding``
-====================
-
-.. versionadded:: 1.4
-    The ``convert_encoding`` filter was added in Twig 1.4.
-
-The ``convert_encoding`` filter converts a string from one encoding to
-another. The first argument is the expected output charset and the second one
-is the input charset:
-
-.. code-block:: jinja
-
-    {{ data|convert_encoding('UTF-8', 'iso-2022-jp') }}
-
-.. note::
-
-    This filter relies on the `iconv`_ or `mbstring`_ extension, so one of
-    them must be installed. In case both are installed, `mbstring`_ is used by
-    default (Twig before 1.8.1 uses `iconv`_ by default).
-
-Arguments
----------
-
-* ``to``:   The output charset
-* ``from``: The input charset
-
-.. _`iconv`:    http://php.net/iconv
-.. _`mbstring`: http://php.net/mbstring
diff --git a/vendor/twig/twig/doc/filters/date.rst b/vendor/twig/twig/doc/filters/date.rst
deleted file mode 100644
index c86d42b..0000000
--- a/vendor/twig/twig/doc/filters/date.rst
+++ /dev/null
@@ -1,94 +0,0 @@
-``date``
-========
-
-.. versionadded:: 1.1
-    The timezone support has been added in Twig 1.1.
-
-.. versionadded:: 1.5
-    The default date format support has been added in Twig 1.5.
-
-.. versionadded:: 1.6.1
-    The default timezone support has been added in Twig 1.6.1.
-
-.. versionadded:: 1.11.0
-    The introduction of the false value for the timezone was introduced in Twig 1.11.0
-
-The ``date`` filter formats a date to a given format:
-
-.. code-block:: jinja
-
-    {{ post.published_at|date("m/d/Y") }}
-
-The format specifier is the same as supported by `date`_,
-except when the filtered data is of type `DateInterval`_, when the format must conform to
-`DateInterval::format`_ instead.
-
-The ``date`` filter accepts strings (it must be in a format supported by the
-`strtotime`_ function), `DateTime`_ instances, or `DateInterval`_ instances. For
-instance, to display the current date, filter the word "now":
-
-.. code-block:: jinja
-
-    {{ "now"|date("m/d/Y") }}
-
-To escape words and characters in the date format use ``\\`` in front of each
-character:
-
-.. code-block:: jinja
-
-    {{ post.published_at|date("F jS \\a\\t g:ia") }}
-
-If the value passed to the ``date`` filter is ``null``, it will return the
-current date by default. If an empty string is desired instead of the current
-date, use a ternary operator:
-
-.. code-block:: jinja
-
-    {{ post.published_at is empty ? "" : post.published_at|date("m/d/Y") }}
-
-If no format is provided, Twig will use the default one: ``F j, Y H:i``. This
-default can be easily changed by calling the ``setDateFormat()`` method on the
-``core`` extension instance. The first argument is the default format for
-dates and the second one is the default format for date intervals:
-
-.. code-block:: php
-
-    $twig = new Twig_Environment($loader);
-    $twig->getExtension('core')->setDateFormat('d/m/Y', '%d days');
-
-Timezone
---------
-
-By default, the date is displayed by applying the default timezone (the one
-specified in php.ini or declared in Twig -- see below), but you can override
-it by explicitly specifying a timezone:
-
-.. code-block:: jinja
-
-    {{ post.published_at|date("m/d/Y", "Europe/Paris") }}
-
-If the date is already a DateTime object, and if you want to keep its current
-timezone, pass ``false`` as the timezone value:
-
-.. code-block:: jinja
-
-    {{ post.published_at|date("m/d/Y", false) }}
-
-The default timezone can also be set globally by calling ``setTimezone()``:
-
-.. code-block:: php
-
-    $twig = new Twig_Environment($loader);
-    $twig->getExtension('core')->setTimezone('Europe/Paris');
-
-Arguments
----------
-
-* ``format``:   The date format
-* ``timezone``: The date timezone
-
-.. _`strtotime`:            http://www.php.net/strtotime
-.. _`DateTime`:             http://www.php.net/DateTime
-.. _`DateInterval`:         http://www.php.net/DateInterval
-.. _`date`:                 http://www.php.net/date
-.. _`DateInterval::format`: http://www.php.net/DateInterval.format
diff --git a/vendor/twig/twig/doc/filters/date_modify.rst b/vendor/twig/twig/doc/filters/date_modify.rst
deleted file mode 100644
index add40b5..0000000
--- a/vendor/twig/twig/doc/filters/date_modify.rst
+++ /dev/null
@@ -1,23 +0,0 @@
-``date_modify``
-===============
-
-.. versionadded:: 1.9.0
-    The date_modify filter has been added in Twig 1.9.0.
-
-The ``date_modify`` filter modifies a date with a given modifier string:
-
-.. code-block:: jinja
-
-    {{ post.published_at|date_modify("+1 day")|date("m/d/Y") }}
-
-The ``date_modify`` filter accepts strings (it must be in a format supported
-by the `strtotime`_ function) or `DateTime`_ instances. You can easily combine
-it with the :doc:`date<date>` filter for formatting.
-
-Arguments
----------
-
-* ``modifier``: The modifier
-
-.. _`strtotime`: http://www.php.net/strtotime
-.. _`DateTime`:  http://www.php.net/DateTime
diff --git a/vendor/twig/twig/doc/filters/default.rst b/vendor/twig/twig/doc/filters/default.rst
deleted file mode 100644
index 641ac6e..0000000
--- a/vendor/twig/twig/doc/filters/default.rst
+++ /dev/null
@@ -1,33 +0,0 @@
-``default``
-===========
-
-The ``default`` filter returns the passed default value if the value is
-undefined or empty, otherwise the value of the variable:
-
-.. code-block:: jinja
-
-    {{ var|default('var is not defined') }}
-
-    {{ var.foo|default('foo item on var is not defined') }}
-
-    {{ var['foo']|default('foo item on var is not defined') }}
-
-    {{ ''|default('passed var is empty')  }}
-
-When using the ``default`` filter on an expression that uses variables in some
-method calls, be sure to use the ``default`` filter whenever a variable can be
-undefined:
-
-.. code-block:: jinja
-
-    {{ var.method(foo|default('foo'))|default('foo') }}
-
-.. note::
-
-    Read the documentation for the :doc:`defined<../tests/defined>` and
-    :doc:`empty<../tests/empty>` tests to learn more about their semantics.
-
-Arguments
----------
-
-* ``default``: The default value
diff --git a/vendor/twig/twig/doc/filters/escape.rst b/vendor/twig/twig/doc/filters/escape.rst
deleted file mode 100644
index fc9771a..0000000
--- a/vendor/twig/twig/doc/filters/escape.rst
+++ /dev/null
@@ -1,116 +0,0 @@
-``escape``
-==========
-
-.. versionadded:: 1.9.0
-    The ``css``, ``url``, and ``html_attr`` strategies were added in Twig
-    1.9.0.
-
-.. versionadded:: 1.14.0
-    The ability to define custom escapers was added in Twig 1.14.0.
-
-The ``escape`` filter escapes a string for safe insertion into the final
-output. It supports different escaping strategies depending on the template
-context.
-
-By default, it uses the HTML escaping strategy:
-
-.. code-block:: jinja
-
-    {{ user.username|escape }}
-
-For convenience, the ``e`` filter is defined as an alias:
-
-.. code-block:: jinja
-
-    {{ user.username|e }}
-
-The ``escape`` filter can also be used in other contexts than HTML thanks to
-an optional argument which defines the escaping strategy to use:
-
-.. code-block:: jinja
-
-    {{ user.username|e }}
-    {# is equivalent to #}
-    {{ user.username|e('html') }}
-
-And here is how to escape variables included in JavaScript code:
-
-.. code-block:: jinja
-
-    {{ user.username|escape('js') }}
-    {{ user.username|e('js') }}
-
-The ``escape`` filter supports the following escaping strategies:
-
-* ``html``: escapes a string for the **HTML body** context.
-
-* ``js``: escapes a string for the **JavaScript context**.
-
-* ``css``: escapes a string for the **CSS context**. CSS escaping can be
-  applied to any string being inserted into CSS and escapes everything except
-  alphanumerics.
-
-* ``url``: escapes a string for the **URI or parameter contexts**. This should
-  not be used to escape an entire URI; only a subcomponent being inserted.
-
-* ``html_attr``: escapes a string for the **HTML attribute** context.
-
-.. note::
-
-    Internally, ``escape`` uses the PHP native `htmlspecialchars`_ function
-    for the HTML escaping strategy.
-
-.. caution::
-
-    When using automatic escaping, Twig tries to not double-escape a variable
-    when the automatic escaping strategy is the same as the one applied by the
-    escape filter; but that does not work when using a variable as the
-    escaping strategy:
-
-    .. code-block:: jinja
-
-        {% set strategy = 'html' %}
-
-        {% autoescape 'html' %}
-            {{ var|escape('html') }}   {# won't be double-escaped #}
-            {{ var|escape(strategy) }} {# will be double-escaped #}
-        {% endautoescape %}
-
-    When using a variable as the escaping strategy, you should disable
-    automatic escaping:
-
-    .. code-block:: jinja
-
-        {% set strategy = 'html' %}
-
-        {% autoescape 'html' %}
-            {{ var|escape(strategy)|raw }} {# won't be double-escaped #}
-        {% endautoescape %}
-
-Custom Escapers
----------------
-
-You can define custom escapers by calling the ``setEscaper()`` method on the
-``core`` extension instance. The first argument is the escaper name (to be
-used in the ``escape`` call) and the second one must be a valid PHP callable:
-
-.. code-block:: php
-
-    $twig = new Twig_Environment($loader);
-    $twig->getExtension('core')->setEscaper('csv', 'csv_escaper'));
-
-When called by Twig, the callable receives the Twig environment instance, the
-string to escape, and the charset.
-
-.. note::
-
-    Built-in escapers cannot be overridden mainly they should be considered as
-    the final implementation and also for better performance.
-
-Arguments
----------
-
-* ``strategy``: The escaping strategy
-* ``charset``:  The string charset
-
-.. _`htmlspecialchars`: http://php.net/htmlspecialchars
diff --git a/vendor/twig/twig/doc/filters/first.rst b/vendor/twig/twig/doc/filters/first.rst
deleted file mode 100644
index 674c1f9..0000000
--- a/vendor/twig/twig/doc/filters/first.rst
+++ /dev/null
@@ -1,25 +0,0 @@
-``first``
-=========
-
-.. versionadded:: 1.12.2
-    The ``first`` filter was added in Twig 1.12.2.
-
-The ``first`` filter returns the first "element" of a sequence, a mapping, or
-a string:
-
-.. code-block:: jinja
-
-    {{ [1, 2, 3, 4]|first }}
-    {# outputs 1 #}
-
-    {{ { a: 1, b: 2, c: 3, d: 4 }|first }}
-    {# outputs 1 #}
-
-    {{ '1234'|first }}
-    {# outputs 1 #}
-
-.. note::
-
-    It also works with objects implementing the `Traversable`_ interface.
-
-.. _`Traversable`: http://php.net/manual/en/class.traversable.php
diff --git a/vendor/twig/twig/doc/filters/format.rst b/vendor/twig/twig/doc/filters/format.rst
deleted file mode 100644
index f8effd9..0000000
--- a/vendor/twig/twig/doc/filters/format.rst
+++ /dev/null
@@ -1,16 +0,0 @@
-``format``
-==========
-
-The ``format`` filter formats a given string by replacing the placeholders
-(placeholders follows the `sprintf`_ notation):
-
-.. code-block:: jinja
-
-    {{ "I like %s and %s."|format(foo, "bar") }}
-
-    {# outputs I like foo and bar
-       if the foo parameter equals to the foo string. #}
-
-.. _`sprintf`: http://www.php.net/sprintf
-
-.. seealso:: :doc:`replace<replace>`
diff --git a/vendor/twig/twig/doc/filters/index.rst b/vendor/twig/twig/doc/filters/index.rst
deleted file mode 100644
index 8daa961..0000000
--- a/vendor/twig/twig/doc/filters/index.rst
+++ /dev/null
@@ -1,37 +0,0 @@
-Filters
-=======
-
-.. toctree::
-    :maxdepth: 1
-
-    abs
-    batch
-    capitalize
-    convert_encoding
-    date
-    date_modify
-    default
-    escape
-    first
-    format
-    join
-    json_encode
-    keys
-    last
-    length
-    lower
-    merge
-    nl2br
-    number_format
-    raw
-    replace
-    reverse
-    round
-    slice
-    sort
-    split
-    striptags
-    title
-    trim
-    upper
-    url_encode
diff --git a/vendor/twig/twig/doc/filters/join.rst b/vendor/twig/twig/doc/filters/join.rst
deleted file mode 100644
index 2fab945..0000000
--- a/vendor/twig/twig/doc/filters/join.rst
+++ /dev/null
@@ -1,23 +0,0 @@
-``join``
-========
-
-The ``join`` filter returns a string which is the concatenation of the items
-of a sequence:
-
-.. code-block:: jinja
-
-    {{ [1, 2, 3]|join }}
-    {# returns 123 #}
-
-The separator between elements is an empty string per default, but you can
-define it with the optional first parameter:
-
-.. code-block:: jinja
-
-    {{ [1, 2, 3]|join('|') }}
-    {# outputs 1|2|3 #}
-
-Arguments
----------
-
-* ``glue``: The separator
diff --git a/vendor/twig/twig/doc/filters/json_encode.rst b/vendor/twig/twig/doc/filters/json_encode.rst
deleted file mode 100644
index a39bb47..0000000
--- a/vendor/twig/twig/doc/filters/json_encode.rst
+++ /dev/null
@@ -1,21 +0,0 @@
-``json_encode``
-===============
-
-The ``json_encode`` filter returns the JSON representation of a value:
-
-.. code-block:: jinja
-
-    {{ data|json_encode() }}
-
-.. note::
-
-    Internally, Twig uses the PHP `json_encode`_ function.
-
-Arguments
----------
-
-* ``options``: A bitmask of `json_encode options`_ (``{{
-  data|json_encode(constant('JSON_PRETTY_PRINT')) }}``)
-
-.. _`json_encode`: http://php.net/json_encode
-.. _`json_encode options`: http://www.php.net/manual/en/json.constants.php
diff --git a/vendor/twig/twig/doc/filters/keys.rst b/vendor/twig/twig/doc/filters/keys.rst
deleted file mode 100644
index e4f090c..0000000
--- a/vendor/twig/twig/doc/filters/keys.rst
+++ /dev/null
@@ -1,11 +0,0 @@
-``keys``
-========
-
-The ``keys`` filter returns the keys of an array. It is useful when you want to
-iterate over the keys of an array:
-
-.. code-block:: jinja
-
-    {% for key in array|keys %}
-        ...
-    {% endfor %}
diff --git a/vendor/twig/twig/doc/filters/last.rst b/vendor/twig/twig/doc/filters/last.rst
deleted file mode 100644
index 345b657..0000000
--- a/vendor/twig/twig/doc/filters/last.rst
+++ /dev/null
@@ -1,25 +0,0 @@
-``last``
-========
-
-.. versionadded:: 1.12.2
-    The ``last`` filter was added in Twig 1.12.2.
-
-The ``last`` filter returns the last "element" of a sequence, a mapping, or
-a string:
-
-.. code-block:: jinja
-
-    {{ [1, 2, 3, 4]|last }}
-    {# outputs 4 #}
-
-    {{ { a: 1, b: 2, c: 3, d: 4 }|last }}
-    {# outputs 4 #}
-
-    {{ '1234'|last }}
-    {# outputs 4 #}
-
-.. note::
-
-    It also works with objects implementing the `Traversable`_ interface.
-
-.. _`Traversable`: http://php.net/manual/en/class.traversable.php
diff --git a/vendor/twig/twig/doc/filters/length.rst b/vendor/twig/twig/doc/filters/length.rst
deleted file mode 100644
index 1f783b3..0000000
--- a/vendor/twig/twig/doc/filters/length.rst
+++ /dev/null
@@ -1,11 +0,0 @@
-``length``
-==========
-
-The ``length`` filter returns the number of items of a sequence or mapping, or
-the length of a string:
-
-.. code-block:: jinja
-
-    {% if users|length > 10 %}
-        ...
-    {% endif %}
diff --git a/vendor/twig/twig/doc/filters/lower.rst b/vendor/twig/twig/doc/filters/lower.rst
deleted file mode 100644
index ef9faa9..0000000
--- a/vendor/twig/twig/doc/filters/lower.rst
+++ /dev/null
@@ -1,10 +0,0 @@
-``lower``
-=========
-
-The ``lower`` filter converts a value to lowercase:
-
-.. code-block:: jinja
-
-    {{ 'WELCOME'|lower }}
-
-    {# outputs 'welcome' #}
diff --git a/vendor/twig/twig/doc/filters/merge.rst b/vendor/twig/twig/doc/filters/merge.rst
deleted file mode 100644
index 88780dd..0000000
--- a/vendor/twig/twig/doc/filters/merge.rst
+++ /dev/null
@@ -1,48 +0,0 @@
-``merge``
-=========
-
-The ``merge`` filter merges an array with another array:
-
-.. code-block:: jinja
-
-    {% set values = [1, 2] %}
-
-    {% set values = values|merge(['apple', 'orange']) %}
-
-    {# values now contains [1, 2, 'apple', 'orange'] #}
-
-New values are added at the end of the existing ones.
-
-The ``merge`` filter also works on hashes:
-
-.. code-block:: jinja
-
-    {% set items = { 'apple': 'fruit', 'orange': 'fruit', 'peugeot': 'unknown' } %}
-
-    {% set items = items|merge({ 'peugeot': 'car', 'renault': 'car' }) %}
-
-    {# items now contains { 'apple': 'fruit', 'orange': 'fruit', 'peugeot': 'car', 'renault': 'car' } #}
-
-For hashes, the merging process occurs on the keys: if the key does not
-already exist, it is added but if the key already exists, its value is
-overridden.
-
-.. tip::
-
-    If you want to ensure that some values are defined in an array (by given
-    default values), reverse the two elements in the call:
-
-    .. code-block:: jinja
-
-        {% set items = { 'apple': 'fruit', 'orange': 'fruit' } %}
-
-        {% set items = { 'apple': 'unknown' }|merge(items) %}
-
-        {# items now contains { 'apple': 'fruit', 'orange': 'fruit' } #}
-        
-.. note::
-
-    Internally, Twig uses the PHP `array_merge`_ function. It supports
-    Traversable objects by transforming those to arrays.
-
-.. _`array_merge`: http://php.net/array_merge
diff --git a/vendor/twig/twig/doc/filters/nl2br.rst b/vendor/twig/twig/doc/filters/nl2br.rst
deleted file mode 100644
index 5c923e1..0000000
--- a/vendor/twig/twig/doc/filters/nl2br.rst
+++ /dev/null
@@ -1,22 +0,0 @@
-``nl2br``
-=========
-
-.. versionadded:: 1.5
-    The ``nl2br`` filter was added in Twig 1.5.
-
-The ``nl2br`` filter inserts HTML line breaks before all newlines in a string:
-
-.. code-block:: jinja
-
-    {{ "I like Twig.\nYou will like it too."|nl2br }}
-    {# outputs
-
-        I like Twig.<br />
-        You will like it too.
-
-    #}
-
-.. note::
-
-    The ``nl2br`` filter pre-escapes the input before applying the
-    transformation.
diff --git a/vendor/twig/twig/doc/filters/number_format.rst b/vendor/twig/twig/doc/filters/number_format.rst
deleted file mode 100644
index 3114e84..0000000
--- a/vendor/twig/twig/doc/filters/number_format.rst
+++ /dev/null
@@ -1,45 +0,0 @@
-``number_format``
-=================
-
-.. versionadded:: 1.5
-    The ``number_format`` filter was added in Twig 1.5
-
-The ``number_format`` filter formats numbers.  It is a wrapper around PHP's
-`number_format`_ function:
-
-.. code-block:: jinja
-
-    {{ 200.35|number_format }}
-
-You can control the number of decimal places, decimal point, and thousands
-separator using the additional arguments:
-
-.. code-block:: jinja
-
-    {{ 9800.333|number_format(2, '.', ',') }}
-
-If no formatting options are provided then Twig will use the default formatting
-options of:
-
-* 0 decimal places.
-* ``.`` as the decimal point.
-* ``,`` as the thousands separator.
-
-These defaults can be easily changed through the core extension:
-
-.. code-block:: php
-
-    $twig = new Twig_Environment($loader);
-    $twig->getExtension('core')->setNumberFormat(3, '.', ',');
-
-The defaults set for ``number_format`` can be over-ridden upon each call using the
-additional parameters.
-
-Arguments
----------
-
-* ``decimal``:       The number of decimal points to display
-* ``decimal_point``: The character(s) to use for the decimal point
-* ``thousand_sep``:   The character(s) to use for the thousands separator
-
-.. _`number_format`: http://php.net/number_format
diff --git a/vendor/twig/twig/doc/filters/raw.rst b/vendor/twig/twig/doc/filters/raw.rst
deleted file mode 100644
index e5e5b12..0000000
--- a/vendor/twig/twig/doc/filters/raw.rst
+++ /dev/null
@@ -1,36 +0,0 @@
-``raw``
-=======
-
-The ``raw`` filter marks the value as being "safe", which means that in an
-environment with automatic escaping enabled this variable will not be escaped
-if ``raw`` is the last filter applied to it:
-
-.. code-block:: jinja
-
-    {% autoescape %}
-        {{ var|raw }} {# var won't be escaped #}
-    {% endautoescape %}
-
-.. note::
-
-    Be careful when using the ``raw`` filter inside expressions:
-
-    .. code-block:: jinja
-
-        {% autoescape %}
-            {% set hello = '<strong>Hello</strong>' %}
-            {% set hola = '<strong>Hola</strong>' %}
-
-            {{ false ? '<strong>Hola</strong>' : hello|raw }}
-            does not render the same as
-            {{ false ? hola : hello|raw }}
-            but renders the same as
-            {{ (false ? hola : hello)|raw }}
-        {% endautoescape %}
-
-    The first ternary statement is not escaped: ``hello`` is marked as being
-    safe and Twig does not escape static values (see
-    :doc:`escape<../tags/autoescape>`). In the second ternary statement, even
-    if ``hello`` is marked as safe, ``hola`` remains unsafe and so is the whole
-    expression. The third ternary statement is marked as safe and the result is
-    not escaped.
diff --git a/vendor/twig/twig/doc/filters/replace.rst b/vendor/twig/twig/doc/filters/replace.rst
deleted file mode 100644
index 1227957..0000000
--- a/vendor/twig/twig/doc/filters/replace.rst
+++ /dev/null
@@ -1,19 +0,0 @@
-``replace``
-===========
-
-The ``replace`` filter formats a given string by replacing the placeholders
-(placeholders are free-form):
-
-.. code-block:: jinja
-
-    {{ "I like %this% and %that%."|replace({'%this%': foo, '%that%': "bar"}) }}
-
-    {# outputs I like foo and bar
-       if the foo parameter equals to the foo string. #}
-
-Arguments
----------
-
-* ``replace_pairs``: The placeholder values
-
-.. seealso:: :doc:`format<format>`
diff --git a/vendor/twig/twig/doc/filters/reverse.rst b/vendor/twig/twig/doc/filters/reverse.rst
deleted file mode 100644
index 76fd2c1..0000000
--- a/vendor/twig/twig/doc/filters/reverse.rst
+++ /dev/null
@@ -1,47 +0,0 @@
-``reverse``
-===========
-
-.. versionadded:: 1.6
-    Support for strings has been added in Twig 1.6.
-
-The ``reverse`` filter reverses a sequence, a mapping, or a string:
-
-.. code-block:: jinja
-
-    {% for user in users|reverse %}
-        ...
-    {% endfor %}
-
-    {{ '1234'|reverse }}
-
-    {# outputs 4321 #}
-
-.. tip::
-
-    For sequences and mappings, numeric keys are not preserved. To reverse
-    them as well, pass ``true`` as an argument to the ``reverse`` filter:
-
-    .. code-block:: jinja
-
-        {% for key, value in {1: "a", 2: "b", 3: "c"}|reverse %}
-            {{ key }}: {{ value }}
-        {%- endfor %}
-
-        {# output: 0: c    1: b    2: a #}
-
-        {% for key, value in {1: "a", 2: "b", 3: "c"}|reverse(true) %}
-            {{ key }}: {{ value }}
-        {%- endfor %}
-
-        {# output: 3: c    2: b    1: a #}
-
-.. note::
-
-    It also works with objects implementing the `Traversable`_ interface.
-
-Arguments
----------
-
-* ``preserve_keys``: Preserve keys when reversing a mapping or a sequence.
-
-.. _`Traversable`: http://php.net/Traversable
diff --git a/vendor/twig/twig/doc/filters/round.rst b/vendor/twig/twig/doc/filters/round.rst
deleted file mode 100644
index 2521cf1..0000000
--- a/vendor/twig/twig/doc/filters/round.rst
+++ /dev/null
@@ -1,37 +0,0 @@
-``round``
-=========
-
-.. versionadded:: 1.15.0
-    The ``round`` filter was added in Twig 1.15.0.
-
-The ``round`` filter rounds a number to a given precision:
-
-.. code-block:: jinja
-
-    {{ 42.55|round }}
-    {# outputs 43 #}
-
-    {{ 42.55|round(1, 'floor') }}
-    {# outputs 42.5 #}
-
-The ``round`` filter takes two optional arguments; the first one specifies the
-precision (default is ``0``) and the second the rounding method (default is
-``common``):
-
-* ``common`` rounds either up or down (rounds the value up to precision decimal
-  places away from zero, when it is half way there -- making 1.5 into 2 and
-  -1.5 into -2);
-
-* ``ceil`` always rounds up;
-
-* ``floor`` always rounds down.
-
-.. note::
-
-    The ``//`` operator is equivalent to ``|round(0, 'floor')``.
-
-Arguments
----------
-
-* ``precision``: The rounding precision
-* ``method``: The rounding method
diff --git a/vendor/twig/twig/doc/filters/slice.rst b/vendor/twig/twig/doc/filters/slice.rst
deleted file mode 100644
index 70bf139..0000000
--- a/vendor/twig/twig/doc/filters/slice.rst
+++ /dev/null
@@ -1,71 +0,0 @@
-``slice``
-===========
-
-.. versionadded:: 1.6
-    The ``slice`` filter was added in Twig 1.6.
-
-The ``slice`` filter extracts a slice of a sequence, a mapping, or a string:
-
-.. code-block:: jinja
-
-    {% for i in [1, 2, 3, 4, 5]|slice(1, 2) %}
-        {# will iterate over 2 and 3 #}
-    {% endfor %}
-
-    {{ '12345'|slice(1, 2) }}
-
-    {# outputs 23 #}
-
-You can use any valid expression for both the start and the length:
-
-.. code-block:: jinja
-
-    {% for i in [1, 2, 3, 4, 5]|slice(start, length) %}
-        {# ... #}
-    {% endfor %}
-
-As syntactic sugar, you can also use the ``[]`` notation:
-
-.. code-block:: jinja
-
-    {% for i in [1, 2, 3, 4, 5][start:length] %}
-        {# ... #}
-    {% endfor %}
-
-    {{ '12345'[1:2] }} {# will display "23" #}
-
-    {# you can omit the first argument -- which is the same as 0 #}
-    {{ '12345'[:2] }} {# will display "12" #}
-
-    {# you can omit the last argument -- which will select everything till the end #}
-    {{ '12345'[2:] }} {# will display "345" #}
-
-The ``slice`` filter works as the `array_slice`_ PHP function for arrays and
-`mb_substr`_ for strings with a fallback to `substr`_.
-
-If the start is non-negative, the sequence will start at that start in the
-variable. If start is negative, the sequence will start that far from the end
-of the variable.
-
-If length is given and is positive, then the sequence will have up to that
-many elements in it. If the variable is shorter than the length, then only the
-available variable elements will be present. If length is given and is
-negative then the sequence will stop that many elements from the end of the
-variable. If it is omitted, then the sequence will have everything from offset
-up until the end of the variable.
-
-.. note::
-
-    It also works with objects implementing the `Traversable`_ interface.
-
-Arguments
----------
-
-* ``start``:         The start of the slice
-* ``length``:        The size of the slice
-* ``preserve_keys``: Whether to preserve key or not (when the input is an array)
-
-.. _`Traversable`: http://php.net/manual/en/class.traversable.php
-.. _`array_slice`: http://php.net/array_slice
-.. _`mb_substr` :  http://php.net/mb-substr
-.. _`substr`:      http://php.net/substr
diff --git a/vendor/twig/twig/doc/filters/sort.rst b/vendor/twig/twig/doc/filters/sort.rst
deleted file mode 100644
index 350207f..0000000
--- a/vendor/twig/twig/doc/filters/sort.rst
+++ /dev/null
@@ -1,18 +0,0 @@
-``sort``
-========
-
-The ``sort`` filter sorts an array:
-
-.. code-block:: jinja
-
-    {% for user in users|sort %}
-        ...
-    {% endfor %}
-
-.. note::
-
-    Internally, Twig uses the PHP `asort`_ function to maintain index
-    association. It supports Traversable objects by transforming
-    those to arrays.
-
-.. _`asort`: http://php.net/asort
diff --git a/vendor/twig/twig/doc/filters/split.rst b/vendor/twig/twig/doc/filters/split.rst
deleted file mode 100644
index bbc6d79..0000000
--- a/vendor/twig/twig/doc/filters/split.rst
+++ /dev/null
@@ -1,53 +0,0 @@
-``split``
-=========
-
-.. versionadded:: 1.10.3
-    The ``split`` filter was added in Twig 1.10.3.
-
-The ``split`` filter splits a string by the given delimiter and returns a list
-of strings:
-
-.. code-block:: jinja
-
-    {% set foo = "one,two,three"|split(',') %}
-    {# foo contains ['one', 'two', 'three'] #}
-
-You can also pass a ``limit`` argument:
-
- * If ``limit`` is positive, the returned array will contain a maximum of
-   limit elements with the last element containing the rest of string;
-
- * If ``limit`` is negative, all components except the last -limit are
-   returned;
-
- * If ``limit`` is zero, then this is treated as 1.
-
-.. code-block:: jinja
-
-    {% set foo = "one,two,three,four,five"|split(',', 3) %}
-    {# foo contains ['one', 'two', 'three,four,five'] #}
-
-If the ``delimiter`` is an empty string, then value will be split by equal
-chunks. Length is set by the ``limit`` argument (one character by default).
-
-.. code-block:: jinja
-
-    {% set foo = "123"|split('') %}
-    {# foo contains ['1', '2', '3'] #}
-
-    {% set bar = "aabbcc"|split('', 2) %}
-    {# bar contains ['aa', 'bb', 'cc'] #}
-
-.. note::
-
-    Internally, Twig uses the PHP `explode`_ or `str_split`_ (if delimiter is
-    empty) functions for string splitting.
-
-Arguments
----------
-
-* ``delimiter``: The delimiter
-* ``limit``:     The limit argument
-
-.. _`explode`:   http://php.net/explode
-.. _`str_split`: http://php.net/str_split
diff --git a/vendor/twig/twig/doc/filters/striptags.rst b/vendor/twig/twig/doc/filters/striptags.rst
deleted file mode 100644
index 72c6f25..0000000
--- a/vendor/twig/twig/doc/filters/striptags.rst
+++ /dev/null
@@ -1,15 +0,0 @@
-``striptags``
-=============
-
-The ``striptags`` filter strips SGML/XML tags and replace adjacent whitespace
-by one space:
-
-.. code-block:: jinja
-
-    {{ some_html|striptags }}
-
-.. note::
-
-    Internally, Twig uses the PHP `strip_tags`_ function.
-
-.. _`strip_tags`: http://php.net/strip_tags
diff --git a/vendor/twig/twig/doc/filters/title.rst b/vendor/twig/twig/doc/filters/title.rst
deleted file mode 100644
index c5a318e..0000000
--- a/vendor/twig/twig/doc/filters/title.rst
+++ /dev/null
@@ -1,11 +0,0 @@
-``title``
-=========
-
-The ``title`` filter returns a titlecased version of the value. Words will
-start with uppercase letters, all remaining characters are lowercase:
-
-.. code-block:: jinja
-
-    {{ 'my first car'|title }}
-
-    {# outputs 'My First Car' #}
diff --git a/vendor/twig/twig/doc/filters/trim.rst b/vendor/twig/twig/doc/filters/trim.rst
deleted file mode 100644
index 4ddb208..0000000
--- a/vendor/twig/twig/doc/filters/trim.rst
+++ /dev/null
@@ -1,29 +0,0 @@
-``trim``
-========
-
-.. versionadded:: 1.6.2
-    The ``trim`` filter was added in Twig 1.6.2.
-
-The ``trim`` filter strips whitespace (or other characters) from the beginning
-and end of a string:
-
-.. code-block:: jinja
-
-    {{ '  I like Twig.  '|trim }}
-
-    {# outputs 'I like Twig.' #}
-
-    {{ '  I like Twig.'|trim('.') }}
-
-    {# outputs '  I like Twig' #}
-
-.. note::
-
-    Internally, Twig uses the PHP `trim`_ function.
-
-Arguments
----------
-
-* ``character_mask``: The characters to strip
-
-.. _`trim`: http://php.net/trim
diff --git a/vendor/twig/twig/doc/filters/upper.rst b/vendor/twig/twig/doc/filters/upper.rst
deleted file mode 100644
index 561cebe..0000000
--- a/vendor/twig/twig/doc/filters/upper.rst
+++ /dev/null
@@ -1,10 +0,0 @@
-``upper``
-=========
-
-The ``upper`` filter converts a value to uppercase:
-
-.. code-block:: jinja
-
-    {{ 'welcome'|upper }}
-
-    {# outputs 'WELCOME' #}
diff --git a/vendor/twig/twig/doc/filters/url_encode.rst b/vendor/twig/twig/doc/filters/url_encode.rst
deleted file mode 100644
index 5944e59..0000000
--- a/vendor/twig/twig/doc/filters/url_encode.rst
+++ /dev/null
@@ -1,34 +0,0 @@
-``url_encode``
-==============
-
-.. versionadded:: 1.12.3
-    Support for encoding an array as query string was added in Twig 1.12.3.
-
-.. versionadded:: 1.16.0
-    The ``raw`` argument was removed in Twig 1.16.0. Twig now always encodes
-    according to RFC 3986.
-
-The ``url_encode`` filter percent encodes a given string as URL segment
-or an array as query string:
-
-.. code-block:: jinja
-
-    {{ "path-seg*ment"|url_encode }}
-    {# outputs "path-seg%2Ament" #}
-
-    {{ "string with spaces"|url_encode }}
-    {# outputs "string%20with%20spaces" #}
-
-    {{ {'param': 'value', 'foo': 'bar'}|url_encode }}
-    {# outputs "param=value&foo=bar" #}
-
-.. note::
-
-    Internally, Twig uses the PHP `urlencode`_ (or `rawurlencode`_ if you pass
-    ``true`` as the first parameter) or the `http_build_query`_ function. Note
-    that as of Twig 1.16.0, ``urlencode`` **always** uses ``rawurlencode`` (the
-    ``raw`` argument was removed.)
-
-.. _`urlencode`:        http://php.net/urlencode
-.. _`rawurlencode`:     http://php.net/rawurlencode
-.. _`http_build_query`: http://php.net/http_build_query
diff --git a/vendor/twig/twig/doc/functions/attribute.rst b/vendor/twig/twig/doc/functions/attribute.rst
deleted file mode 100644
index ceba96b..0000000
--- a/vendor/twig/twig/doc/functions/attribute.rst
+++ /dev/null
@@ -1,26 +0,0 @@
-``attribute``
-=============
-
-.. versionadded:: 1.2
-    The ``attribute`` function was added in Twig 1.2.
-
-The ``attribute`` function can be used to access a "dynamic" attribute of a
-variable:
-
-.. code-block:: jinja
-
-    {{ attribute(object, method) }}
-    {{ attribute(object, method, arguments) }}
-    {{ attribute(array, item) }}
-
-In addition, the ``defined`` test can check for the existence of a dynamic
-attribute:
-
-.. code-block:: jinja
-
-    {{ attribute(object, method) is defined ? 'Method exists' : 'Method does not exist' }}
-
-.. note::
-
-    The resolution algorithm is the same as the one used for the ``.``
-    notation, except that the item can be any valid expression.
diff --git a/vendor/twig/twig/doc/functions/block.rst b/vendor/twig/twig/doc/functions/block.rst
deleted file mode 100644
index fd571ef..0000000
--- a/vendor/twig/twig/doc/functions/block.rst
+++ /dev/null
@@ -1,15 +0,0 @@
-``block``
-=========
-
-When a template uses inheritance and if you want to print a block multiple
-times, use the ``block`` function:
-
-.. code-block:: jinja
-
-    <title>{% block title %}{% endblock %}</title>
-
-    <h1>{{ block('title') }}</h1>
-
-    {% block body %}{% endblock %}
-
-.. seealso:: :doc:`extends<../tags/extends>`, :doc:`parent<../functions/parent>`
diff --git a/vendor/twig/twig/doc/functions/constant.rst b/vendor/twig/twig/doc/functions/constant.rst
deleted file mode 100644
index bea0e9f..0000000
--- a/vendor/twig/twig/doc/functions/constant.rst
+++ /dev/null
@@ -1,18 +0,0 @@
-``constant``
-============
-
-.. versionadded: 1.12.1
-    constant now accepts object instances as the second argument.
-
-``constant`` returns the constant value for a given string:
-
-.. code-block:: jinja
-
-    {{ some_date|date(constant('DATE_W3C')) }}
-    {{ constant('Namespace\\Classname::CONSTANT_NAME') }}
-
-As of 1.12.1 you can read constants from object instances as well:
-
-.. code-block:: jinja
-
-    {{ constant('RSS', date) }}
diff --git a/vendor/twig/twig/doc/functions/cycle.rst b/vendor/twig/twig/doc/functions/cycle.rst
deleted file mode 100644
index e343493..0000000
--- a/vendor/twig/twig/doc/functions/cycle.rst
+++ /dev/null
@@ -1,28 +0,0 @@
-``cycle``
-=========
-
-The ``cycle`` function cycles on an array of values:
-
-.. code-block:: jinja
-
-    {% set start_year = date() | date('Y') %}
-    {% set end_year = start_year + 5 %}
-
-    {% for year in start_year..end_year %}
-        {{ cycle(['odd', 'even'], loop.index0) }}
-    {% endfor %}
-
-The array can contain any number of values:
-
-.. code-block:: jinja
-
-    {% set fruits = ['apple', 'orange', 'citrus'] %}
-
-    {% for i in 0..10 %}
-        {{ cycle(fruits, i) }}
-    {% endfor %}
-
-Arguments
----------
-
-* ``position``: The cycle position
diff --git a/vendor/twig/twig/doc/functions/date.rst b/vendor/twig/twig/doc/functions/date.rst
deleted file mode 100644
index 714e08c..0000000
--- a/vendor/twig/twig/doc/functions/date.rst
+++ /dev/null
@@ -1,52 +0,0 @@
-``date``
-========
-
-.. versionadded:: 1.6
-    The date function has been added in Twig 1.6.
-
-.. versionadded:: 1.6.1
-    The default timezone support has been added in Twig 1.6.1.
-
-Converts an argument to a date to allow date comparison:
-
-.. code-block:: jinja
-
-    {% if date(user.created_at) < date('-2days') %}
-        {# do something #}
-    {% endif %}
-
-The argument must be in one of PHP’s supported `date and time formats`_.
-
-You can pass a timezone as the second argument:
-
-.. code-block:: jinja
-
-    {% if date(user.created_at) < date('-2days', 'Europe/Paris') %}
-        {# do something #}
-    {% endif %}
-
-If no argument is passed, the function returns the current date:
-
-.. code-block:: jinja
-
-    {% if date(user.created_at) < date() %}
-        {# always! #}
-    {% endif %}
-
-.. note::
-
-    You can set the default timezone globally by calling ``setTimezone()`` on
-    the ``core`` extension instance:
-
-    .. code-block:: php
-
-        $twig = new Twig_Environment($loader);
-        $twig->getExtension('core')->setTimezone('Europe/Paris');
-
-Arguments
----------
-
-* ``date``:     The date
-* ``timezone``: The timezone
-
-.. _`date and time formats`: http://php.net/manual/en/datetime.formats.php
diff --git a/vendor/twig/twig/doc/functions/dump.rst b/vendor/twig/twig/doc/functions/dump.rst
deleted file mode 100644
index a231f08..0000000
--- a/vendor/twig/twig/doc/functions/dump.rst
+++ /dev/null
@@ -1,69 +0,0 @@
-``dump``
-========
-
-.. versionadded:: 1.5
-    The ``dump`` function was added in Twig 1.5.
-
-The ``dump`` function dumps information about a template variable. This is
-mostly useful to debug a template that does not behave as expected by
-introspecting its variables:
-
-.. code-block:: jinja
-
-    {{ dump(user) }}
-
-.. note::
-
-    The ``dump`` function is not available by default. You must add the
-    ``Twig_Extension_Debug`` extension explicitly when creating your Twig
-    environment::
-
-        $twig = new Twig_Environment($loader, array(
-            'debug' => true,
-            // ...
-        ));
-        $twig->addExtension(new Twig_Extension_Debug());
-
-    Even when enabled, the ``dump`` function won't display anything if the
-    ``debug`` option on the environment is not enabled (to avoid leaking debug
-    information on a production server).
-
-In an HTML context, wrap the output with a ``pre`` tag to make it easier to
-read:
-
-.. code-block:: jinja
-
-    <pre>
-        {{ dump(user) }}
-    </pre>
-
-.. tip::
-
-    Using a ``pre`` tag is not needed when `XDebug`_ is enabled and
-    ``html_errors`` is ``on``; as a bonus, the output is also nicer with
-    XDebug enabled.
-
-You can debug several variables by passing them as additional arguments:
-
-.. code-block:: jinja
-
-    {{ dump(user, categories) }}
-
-If you don't pass any value, all variables from the current context are
-dumped:
-
-.. code-block:: jinja
-
-    {{ dump() }}
-
-.. note::
-
-    Internally, Twig uses the PHP `var_dump`_ function.
-
-Arguments
----------
-
-* ``context``: The context to dump
-
-.. _`XDebug`:   http://xdebug.org/docs/display
-.. _`var_dump`: http://php.net/var_dump
diff --git a/vendor/twig/twig/doc/functions/include.rst b/vendor/twig/twig/doc/functions/include.rst
deleted file mode 100644
index 33bd56d..0000000
--- a/vendor/twig/twig/doc/functions/include.rst
+++ /dev/null
@@ -1,80 +0,0 @@
-``include``
-===========
-
-.. versionadded:: 1.12
-    The ``include`` function was added in Twig 1.12.
-
-The ``include`` function returns the rendered content of a template:
-
-.. code-block:: jinja
-
-    {{ include('template.html') }}
-    {{ include(some_var) }}
-
-Included templates have access to the variables of the active context.
-
-If you are using the filesystem loader, the templates are looked for in the
-paths defined by it.
-
-The context is passed by default to the template but you can also pass
-additional variables:
-
-.. code-block:: jinja
-
-    {# template.html will have access to the variables from the current context and the additional ones provided #}
-    {{ include('template.html', {foo: 'bar'}) }}
-
-You can disable access to the context by setting ``with_context`` to
-``false``:
-
-.. code-block:: jinja
-
-    {# only the foo variable will be accessible #}
-    {{ include('template.html', {foo: 'bar'}, with_context = false) }}
-
-.. code-block:: jinja
-
-    {# no variables will be accessible #}
-    {{ include('template.html', with_context = false) }}
-
-And if the expression evaluates to a ``Twig_Template`` object, Twig will use it
-directly::
-
-    // {{ include(template) }}
-
-    $template = $twig->loadTemplate('some_template.twig');
-
-    $twig->loadTemplate('template.twig')->display(array('template' => $template));
-
-When you set the ``ignore_missing`` flag, Twig will return an empty string if
-the template does not exist:
-
-.. code-block:: jinja
-
-    {{ include('sidebar.html', ignore_missing = true) }}
-
-You can also provide a list of templates that are checked for existence before
-inclusion. The first template that exists will be rendered:
-
-.. code-block:: jinja
-
-    {{ include(['page_detailed.html', 'page.html']) }}
-
-If ``ignore_missing`` is set, it will fall back to rendering nothing if none
-of the templates exist, otherwise it will throw an exception.
-
-When including a template created by an end user, you should consider
-sandboxing it:
-
-.. code-block:: jinja
-
-    {{ include('page.html', sandboxed = true) }}
-
-Arguments
----------
-
-* ``template``:       The template to render
-* ``variables``:      The variables to pass to the template
-* ``with_context``:   Whether to pass the current context variables or not
-* ``ignore_missing``: Whether to ignore missing templates or not
-* ``sandboxed``:      Whether to sandbox the template or not
diff --git a/vendor/twig/twig/doc/functions/index.rst b/vendor/twig/twig/doc/functions/index.rst
deleted file mode 100644
index 07214a7..0000000
--- a/vendor/twig/twig/doc/functions/index.rst
+++ /dev/null
@@ -1,20 +0,0 @@
-Functions
-=========
-
-.. toctree::
-    :maxdepth: 1
-
-    attribute
-    block
-    constant
-    cycle
-    date
-    dump
-    include
-    max
-    min
-    parent
-    random
-    range
-    source
-    template_from_string
diff --git a/vendor/twig/twig/doc/functions/max.rst b/vendor/twig/twig/doc/functions/max.rst
deleted file mode 100644
index 6f3cfc5..0000000
--- a/vendor/twig/twig/doc/functions/max.rst
+++ /dev/null
@@ -1,20 +0,0 @@
-``max``
-=======
-
-.. versionadded:: 1.15
-    The ``max`` function was added in Twig 1.15.
-
-``max`` returns the biggest value of a sequence or a set of values:
-
-.. code-block:: jinja
-
-    {{ max(1, 3, 2) }}
-    {{ max([1, 3, 2]) }}
-
-When called with a mapping, max ignores keys and only compares values:
-
-.. code-block:: jinja
-
-    {{ max({2: "e", 1: "a", 3: "b", 5: "d", 4: "c"}) }}
-    {# returns "e" #}
-
diff --git a/vendor/twig/twig/doc/functions/min.rst b/vendor/twig/twig/doc/functions/min.rst
deleted file mode 100644
index 7b6a65e..0000000
--- a/vendor/twig/twig/doc/functions/min.rst
+++ /dev/null
@@ -1,20 +0,0 @@
-``min``
-=======
-
-.. versionadded:: 1.15
-    The ``min`` function was added in Twig 1.15.
-
-``min`` returns the lowest value of a sequence or a set of values:
-
-.. code-block:: jinja
-
-    {{ min(1, 3, 2) }}
-    {{ min([1, 3, 2]) }}
-
-When called with a mapping, min ignores keys and only compares values:
-
-.. code-block:: jinja
-
-    {{ min({2: "e", 3: "a", 1: "b", 5: "d", 4: "c"}) }}
-    {# returns "a" #}
-
diff --git a/vendor/twig/twig/doc/functions/parent.rst b/vendor/twig/twig/doc/functions/parent.rst
deleted file mode 100644
index f5bd200..0000000
--- a/vendor/twig/twig/doc/functions/parent.rst
+++ /dev/null
@@ -1,20 +0,0 @@
-``parent``
-==========
-
-When a template uses inheritance, it's possible to render the contents of the
-parent block when overriding a block by using the ``parent`` function:
-
-.. code-block:: jinja
-
-    {% extends "base.html" %}
-
-    {% block sidebar %}
-        <h3>Table Of Contents</h3>
-        ...
-        {{ parent() }}
-    {% endblock %}
-
-The ``parent()`` call will return the content of the ``sidebar`` block as
-defined in the ``base.html`` template.
-
-.. seealso:: :doc:`extends<../tags/extends>`, :doc:`block<../functions/block>`, :doc:`block<../tags/block>`
diff --git a/vendor/twig/twig/doc/functions/random.rst b/vendor/twig/twig/doc/functions/random.rst
deleted file mode 100644
index 168e74f..0000000
--- a/vendor/twig/twig/doc/functions/random.rst
+++ /dev/null
@@ -1,29 +0,0 @@
-``random``
-==========
-
-.. versionadded:: 1.5
-    The ``random`` function was added in Twig 1.5.
-
-.. versionadded:: 1.6
-    String and integer handling was added in Twig 1.6.
-
-The ``random`` function returns a random value depending on the supplied
-parameter type:
-
-* a random item from a sequence;
-* a random character from a string;
-* a random integer between 0 and the integer parameter (inclusive).
-
-.. code-block:: jinja
-
-    {{ random(['apple', 'orange', 'citrus']) }} {# example output: orange #}
-    {{ random('ABC') }}                         {# example output: C #}
-    {{ random() }}                              {# example output: 15386094 (works as the native PHP mt_rand function) #}
-    {{ random(5) }}                             {# example output: 3 #}
-
-Arguments
----------
-
-* ``values``: The values
-
-.. _`mt_rand`: http://php.net/mt_rand
diff --git a/vendor/twig/twig/doc/functions/range.rst b/vendor/twig/twig/doc/functions/range.rst
deleted file mode 100644
index b7cd011..0000000
--- a/vendor/twig/twig/doc/functions/range.rst
+++ /dev/null
@@ -1,45 +0,0 @@
-``range``
-=========
-
-Returns a list containing an arithmetic progression of integers:
-
-.. code-block:: jinja
-
-    {% for i in range(0, 3) %}
-        {{ i }},
-    {% endfor %}
-
-    {# outputs 0, 1, 2, 3, #}
-
-When step is given (as the third parameter), it specifies the increment (or
-decrement):
-
-.. code-block:: jinja
-
-    {% for i in range(0, 6, 2) %}
-        {{ i }},
-    {% endfor %}
-
-    {# outputs 0, 2, 4, 6, #}
-
-The Twig built-in ``..`` operator is just syntactic sugar for the ``range``
-function (with a step of 1):
-
-.. code-block:: jinja
-
-    {% for i in 0..3 %}
-        {{ i }},
-    {% endfor %}
-
-.. tip::
-
-    The ``range`` function works as the native PHP `range`_ function.
-
-Arguments
----------
-
-* ``low``:  The first value of the sequence.
-* ``high``: The highest possible value of the sequence.
-* ``step``: The increment between elements of the sequence.
-
-.. _`range`: http://php.net/range
diff --git a/vendor/twig/twig/doc/functions/source.rst b/vendor/twig/twig/doc/functions/source.rst
deleted file mode 100644
index 3c921b1..0000000
--- a/vendor/twig/twig/doc/functions/source.rst
+++ /dev/null
@@ -1,32 +0,0 @@
-``source``
-==========
-
-.. versionadded:: 1.15
-    The ``source`` function was added in Twig 1.15.
-
-.. versionadded:: 1.18.3
-    The ``ignore_missing`` flag was added in Twig 1.18.3.
-
-The ``source`` function returns the content of a template without rendering it:
-
-.. code-block:: jinja
-
-    {{ source('template.html') }}
-    {{ source(some_var) }}
-
-When you set the ``ignore_missing`` flag, Twig will return an empty string if
-the template does not exist:
-
-.. code-block:: jinja
-
-    {{ source('template.html', ignore_missing = true) }}
-
-The function uses the same template loaders as the ones used to include
-templates. So, if you are using the filesystem loader, the templates are looked
-for in the paths defined by it.
-
-Arguments
----------
-
-* ``name``: The name of the template to read
-* ``ignore_missing``: Whether to ignore missing templates or not
diff --git a/vendor/twig/twig/doc/functions/template_from_string.rst b/vendor/twig/twig/doc/functions/template_from_string.rst
deleted file mode 100644
index ce6a60d..0000000
--- a/vendor/twig/twig/doc/functions/template_from_string.rst
+++ /dev/null
@@ -1,32 +0,0 @@
-``template_from_string``
-========================
-
-.. versionadded:: 1.11
-    The ``template_from_string`` function was added in Twig 1.11.
-
-The ``template_from_string`` function loads a template from a string:
-
-.. code-block:: jinja
-
-    {{ include(template_from_string("Hello {{ name }}")) }}
-    {{ include(template_from_string(page.template)) }}
-
-.. note::
-
-    The ``template_from_string`` function is not available by default. You
-    must add the ``Twig_Extension_StringLoader`` extension explicitly when
-    creating your Twig environment::
-
-        $twig = new Twig_Environment(...);
-        $twig->addExtension(new Twig_Extension_StringLoader());
-
-.. note::
-
-    Even if you will probably always use the ``template_from_string`` function
-    with the ``include`` function, you can use it with any tag or function that
-    takes a template as an argument (like the ``embed`` or ``extends`` tags).
-
-Arguments
----------
-
-* ``template``: The template
diff --git a/vendor/twig/twig/doc/index.rst b/vendor/twig/twig/doc/index.rst
deleted file mode 100644
index 358bd73..0000000
--- a/vendor/twig/twig/doc/index.rst
+++ /dev/null
@@ -1,19 +0,0 @@
-Twig
-====
-
-.. toctree::
-    :maxdepth: 2
-
-    intro
-    installation
-    templates
-    api
-    advanced
-    internals
-    deprecated
-    recipes
-    coding_standards
-    tags/index
-    filters/index
-    functions/index
-    tests/index
diff --git a/vendor/twig/twig/doc/installation.rst b/vendor/twig/twig/doc/installation.rst
deleted file mode 100644
index afdcf16..0000000
--- a/vendor/twig/twig/doc/installation.rst
+++ /dev/null
@@ -1,116 +0,0 @@
-Installation
-============
-
-You have multiple ways to install Twig.
-
-Installing the Twig PHP package
--------------------------------
-
-Installing via Composer (recommended)
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-
-Install `Composer`_ and run the following command to get the latest version:
-
-.. code-block:: bash
-
-    composer require twig/twig:~1.0
-
-Installing from the tarball release
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-
-1. Download the most recent tarball from the `download page`_
-2. Verify the integrity of the tarball http://fabien.potencier.org/article/73/signing-project-releases
-3. Unpack the tarball
-4. Move the files somewhere in your project
-
-Installing the development version
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-
-.. code-block:: bash
-
-    git clone git://github.com/twigphp/Twig.git
-
-Installing the PEAR package
-~~~~~~~~~~~~~~~~~~~~~~~~~~~
-
-.. note::
-
-    Using PEAR for installing Twig is deprecated and Twig 1.15.1 was the last
-    version published on the PEAR channel; use Composer instead.
-
-.. code-block:: bash
-
-    pear channel-discover pear.twig-project.org
-    pear install twig/Twig
-
-Installing the C extension
---------------------------
-
-.. versionadded:: 1.4
-    The C extension was added in Twig 1.4.
-
-.. note::
-
-    The C extension is **optional** but it brings some nice performance
-    improvements. Note that the extension is not a replacement for the PHP
-    code; it only implements a small part of the PHP code to improve the
-    performance at runtime; you must still install the regular PHP code.
-
-Twig comes with a C extension that enhances the performance of the Twig
-runtime engine; install it like any other PHP extensions:
-
-.. code-block:: bash
-
-    cd ext/twig
-    phpize
-    ./configure
-    make
-    make install
-
-.. note::
-
-    You can also install the C extension via PEAR (note that this method is
-    deprecated and newer versions of Twig are not available on the PEAR
-    channel):
-
-    .. code-block:: bash
-
-        pear channel-discover pear.twig-project.org
-        pear install twig/CTwig
-
-For Windows:
-
-1. Setup the build environment following the `PHP documentation`_
-2. Put Twig's C extension source code into ``C:\php-sdk\phpdev\vcXX\x86\php-source-directory\ext\twig``
-3. Use the ``configure --disable-all --enable-cli --enable-twig=shared`` command instead of step 14
-4. ``nmake``
-5. Copy the ``C:\php-sdk\phpdev\vcXX\x86\php-source-directory\Release_TS\php_twig.dll`` file to your PHP setup.
-
-.. tip::
-
-    For Windows ZendServer, ZTS is not enabled as mentioned in `Zend Server
-    FAQ`_.
-
-    You have to use ``configure --disable-all --disable-zts --enable-cli
-    --enable-twig=shared`` to be able to build the twig C extension for
-    ZendServer.
-
-    The built DLL will be available in
-    ``C:\\php-sdk\\phpdev\\vcXX\\x86\\php-source-directory\\Release``
-
-Finally, enable the extension in your ``php.ini`` configuration file:
-
-.. code-block:: ini
-
-    extension=twig.so #For Unix systems
-    extension=php_twig.dll #For Windows systems
-
-And from now on, Twig will automatically compile your templates to take
-advantage of the C extension. Note that this extension does not replace the
-PHP code but only provides an optimized version of the
-``Twig_Template::getAttribute()`` method.
-
-.. _`download page`:     https://github.com/twigphp/Twig/tags
-.. _`Composer`:          https://getcomposer.org/download/
-.. _`PHP documentation`: https://wiki.php.net/internals/windows/stepbystepbuild
-.. _`Zend Server FAQ`:   http://www.zend.com/en/products/server/faq#faqD6
diff --git a/vendor/twig/twig/doc/internals.rst b/vendor/twig/twig/doc/internals.rst
deleted file mode 100644
index ef1174d..0000000
--- a/vendor/twig/twig/doc/internals.rst
+++ /dev/null
@@ -1,138 +0,0 @@
-Twig Internals
-==============
-
-Twig is very extensible and you can easily hack it. Keep in mind that you
-should probably try to create an extension before hacking the core, as most
-features and enhancements can be handled with extensions. This chapter is also
-useful for people who want to understand how Twig works under the hood.
-
-How does Twig work?
--------------------
-
-The rendering of a Twig template can be summarized into four key steps:
-
-* **Load** the template: If the template is already compiled, load it and go
-  to the *evaluation* step, otherwise:
-
-  * First, the **lexer** tokenizes the template source code into small pieces
-    for easier processing;
-  * Then, the **parser** converts the token stream into a meaningful tree
-    of nodes (the Abstract Syntax Tree);
-  * Eventually, the *compiler* transforms the AST into PHP code.
-
-* **Evaluate** the template: It basically means calling the ``display()``
-  method of the compiled template and passing it the context.
-
-The Lexer
----------
-
-The lexer tokenizes a template source code into a token stream (each token is
-an instance of ``Twig_Token``, and the stream is an instance of
-``Twig_TokenStream``). The default lexer recognizes 13 different token types:
-
-* ``Twig_Token::BLOCK_START_TYPE``, ``Twig_Token::BLOCK_END_TYPE``: Delimiters for blocks (``{% %}``)
-* ``Twig_Token::VAR_START_TYPE``, ``Twig_Token::VAR_END_TYPE``: Delimiters for variables (``{{ }}``)
-* ``Twig_Token::TEXT_TYPE``: A text outside an expression;
-* ``Twig_Token::NAME_TYPE``: A name in an expression;
-* ``Twig_Token::NUMBER_TYPE``: A number in an expression;
-* ``Twig_Token::STRING_TYPE``: A string in an expression;
-* ``Twig_Token::OPERATOR_TYPE``: An operator;
-* ``Twig_Token::PUNCTUATION_TYPE``: A punctuation sign;
-* ``Twig_Token::INTERPOLATION_START_TYPE``, ``Twig_Token::INTERPOLATION_END_TYPE`` (as of Twig 1.5): Delimiters for string interpolation;
-* ``Twig_Token::EOF_TYPE``: Ends of template.
-
-You can manually convert a source code into a token stream by calling the
-``tokenize()`` method of an environment::
-
-    $stream = $twig->tokenize($source, $identifier);
-
-As the stream has a ``__toString()`` method, you can have a textual
-representation of it by echoing the object::
-
-    echo $stream."\n";
-
-Here is the output for the ``Hello {{ name }}`` template:
-
-.. code-block:: text
-
-    TEXT_TYPE(Hello )
-    VAR_START_TYPE()
-    NAME_TYPE(name)
-    VAR_END_TYPE()
-    EOF_TYPE()
-
-.. note::
-
-    The default lexer (``Twig_Lexer``) can be changed by calling
-    the ``setLexer()`` method::
-
-        $twig->setLexer($lexer);
-
-The Parser
-----------
-
-The parser converts the token stream into an AST (Abstract Syntax Tree), or a
-node tree (an instance of ``Twig_Node_Module``). The core extension defines
-the basic nodes like: ``for``, ``if``, ... and the expression nodes.
-
-You can manually convert a token stream into a node tree by calling the
-``parse()`` method of an environment::
-
-    $nodes = $twig->parse($stream);
-
-Echoing the node object gives you a nice representation of the tree::
-
-    echo $nodes."\n";
-
-Here is the output for the ``Hello {{ name }}`` template:
-
-.. code-block:: text
-
-    Twig_Node_Module(
-      Twig_Node_Text(Hello )
-      Twig_Node_Print(
-        Twig_Node_Expression_Name(name)
-      )
-    )
-
-.. note::
-
-    The default parser (``Twig_TokenParser``) can be changed by calling the
-    ``setParser()`` method::
-
-        $twig->setParser($parser);
-
-The Compiler
-------------
-
-The last step is done by the compiler. It takes a node tree as an input and
-generates PHP code usable for runtime execution of the template.
-
-You can manually compile a node tree to PHP code with the ``compile()`` method
-of an environment::
-
-    $php = $twig->compile($nodes);
-
-The generated template for a ``Hello {{ name }}`` template reads as follows
-(the actual output can differ depending on the version of Twig you are
-using)::
-
-    /* Hello {{ name }} */
-    class __TwigTemplate_1121b6f109fe93ebe8c6e22e3712bceb extends Twig_Template
-    {
-        protected function doDisplay(array $context, array $blocks = array())
-        {
-            // line 1
-            echo "Hello ";
-            echo twig_escape_filter($this->env, isset($context["name"]) ? $context["name"] : null), "html", null, true);
-        }
-
-        // some more code
-    }
-
-.. note::
-
-    The default compiler (``Twig_Compiler``) can be changed by calling the
-    ``setCompiler()`` method::
-
-        $twig->setCompiler($compiler);
diff --git a/vendor/twig/twig/doc/intro.rst b/vendor/twig/twig/doc/intro.rst
deleted file mode 100644
index 9b38c97..0000000
--- a/vendor/twig/twig/doc/intro.rst
+++ /dev/null
@@ -1,85 +0,0 @@
-Introduction
-============
-
-This is the documentation for Twig, the flexible, fast, and secure template
-engine for PHP.
-
-If you have any exposure to other text-based template languages, such as
-Smarty, Django, or Jinja, you should feel right at home with Twig. It's both
-designer and developer friendly by sticking to PHP's principles and adding
-functionality useful for templating environments.
-
-The key-features are...
-
-* *Fast*: Twig compiles templates down to plain optimized PHP code. The
-  overhead compared to regular PHP code was reduced to the very minimum.
-
-* *Secure*: Twig has a sandbox mode to evaluate untrusted template code. This
-  allows Twig to be used as a template language for applications where users
-  may modify the template design.
-
-* *Flexible*: Twig is powered by a flexible lexer and parser. This allows the
-  developer to define its own custom tags and filters, and create its own DSL.
-
-Twig is used by many Open-Source projects like Symfony, Drupal8, eZPublish,
-phpBB, Piwik, OroCRM, and many frameworks have support for it as well like
-Slim, Yii, Laravel, Codeigniter, and Kohana, just to name a few.
-
-Prerequisites
--------------
-
-Twig needs at least **PHP 5.2.7** to run.
-
-Installation
-------------
-
-The recommended way to install Twig is via Composer:
-
-.. code-block:: bash
-
-    composer require "twig/twig:~1.0"
-
-.. note::
-
-    To learn more about the other installation methods, read the
-    :doc:`installation<installation>` chapter; it also explains how to install
-    the Twig C extension.
-
-Basic API Usage
----------------
-
-This section gives you a brief introduction to the PHP API for Twig.
-
-.. code-block:: php
-
-    require_once '/path/to/vendor/autoload.php';
-
-    $loader = new Twig_Loader_Array(array(
-        'index' => 'Hello {{ name }}!',
-    ));
-    $twig = new Twig_Environment($loader);
-
-    echo $twig->render('index', array('name' => 'Fabien'));
-
-Twig uses a loader (``Twig_Loader_Array``) to locate templates, and an
-environment (``Twig_Environment``) to store the configuration.
-
-The ``render()`` method loads the template passed as a first argument and
-renders it with the variables passed as a second argument.
-
-As templates are generally stored on the filesystem, Twig also comes with a
-filesystem loader::
-
-    $loader = new Twig_Loader_Filesystem('/path/to/templates');
-    $twig = new Twig_Environment($loader, array(
-        'cache' => '/path/to/compilation_cache',
-    ));
-
-    echo $twig->render('index.html', array('name' => 'Fabien'));
-
-.. tip::
-
-    If you are not using Composer, use the Twig built-in autoloader::
-
-        require_once '/path/to/lib/Twig/Autoloader.php';
-        Twig_Autoloader::register();
diff --git a/vendor/twig/twig/doc/recipes.rst b/vendor/twig/twig/doc/recipes.rst
deleted file mode 100644
index 6ad5327..0000000
--- a/vendor/twig/twig/doc/recipes.rst
+++ /dev/null
@@ -1,518 +0,0 @@
-Recipes
-=======
-
-.. _deprecation-notices:
-
-Displaying Deprecation Notices
-------------------------------
-
-.. versionadded:: 1.21
-    This works as of Twig 1.21.
-
-Deprecated features generate deprecation notices (via a call to the
-``trigger_error()`` PHP function). By default, they are silenced and never
-displayed nor logged.
-
-To easily remove all deprecated feature usages from your templates, write and
-run a script along the lines of the following::
-
-    require_once __DIR__.'/vendor/autoload.php';
-
-    $twig = create_your_twig_env();
-
-    $deprecations = new Twig_Util_DeprecationCollector($twig);
-
-    print_r($deprecations->collectDir(__DIR__.'/templates'));
-
-The ``collectDir()`` method compiles all templates found in a directory,
-catches deprecation notices, and return them.
-
-.. tip::
-
-    If your templates are not stored on the filesystem, use the ``collect()``
-    method instead which takes an ``Iterator``; the iterator must return
-    template names as keys and template contents as values (as done by
-    ``Twig_Util_TemplateDirIterator``).
-
-However, this code won't find all deprecations (like using deprecated some Twig
-classes). To catch all notices, register a custom error handler like the one
-below::
-
-    $deprecations = array();
-    set_error_handler(function ($type, $msg) use (&$deprecations) {
-        if (E_USER_DEPRECATED === $type) {
-            $deprecations[] = $msg;
-        }
-    });
-
-    // run your application
-
-    print_r($deprecations);
-
-Note that most deprecation notices are triggered during **compilation**, so
-they won't be generated when templates are already cached.
-
-.. tip::
-
-    If you want to manage the deprecation notices from your PHPUnit tests, have
-    a look at the `symfony/phpunit-bridge
-    <https://github.com/symfony/phpunit-bridge>`_ package, which eases the
-    process a lot.
-
-Making a Layout conditional
----------------------------
-
-Working with Ajax means that the same content is sometimes displayed as is,
-and sometimes decorated with a layout. As Twig layout template names can be
-any valid expression, you can pass a variable that evaluates to ``true`` when
-the request is made via Ajax and choose the layout accordingly:
-
-.. code-block:: jinja
-
-    {% extends request.ajax ? "base_ajax.html" : "base.html" %}
-
-    {% block content %}
-        This is the content to be displayed.
-    {% endblock %}
-
-Making an Include dynamic
--------------------------
-
-When including a template, its name does not need to be a string. For
-instance, the name can depend on the value of a variable:
-
-.. code-block:: jinja
-
-    {% include var ~ '_foo.html' %}
-
-If ``var`` evaluates to ``index``, the ``index_foo.html`` template will be
-rendered.
-
-As a matter of fact, the template name can be any valid expression, such as
-the following:
-
-.. code-block:: jinja
-
-    {% include var|default('index') ~ '_foo.html' %}
-
-Overriding a Template that also extends itself
-----------------------------------------------
-
-A template can be customized in two different ways:
-
-* *Inheritance*: A template *extends* a parent template and overrides some
-  blocks;
-
-* *Replacement*: If you use the filesystem loader, Twig loads the first
-  template it finds in a list of configured directories; a template found in a
-  directory *replaces* another one from a directory further in the list.
-
-But how do you combine both: *replace* a template that also extends itself
-(aka a template in a directory further in the list)?
-
-Let's say that your templates are loaded from both ``.../templates/mysite``
-and ``.../templates/default`` in this order. The ``page.twig`` template,
-stored in ``.../templates/default`` reads as follows:
-
-.. code-block:: jinja
-
-    {# page.twig #}
-    {% extends "layout.twig" %}
-
-    {% block content %}
-    {% endblock %}
-
-You can replace this template by putting a file with the same name in
-``.../templates/mysite``. And if you want to extend the original template, you
-might be tempted to write the following:
-
-.. code-block:: jinja
-
-    {# page.twig in .../templates/mysite #}
-    {% extends "page.twig" %} {# from .../templates/default #}
-
-Of course, this will not work as Twig will always load the template from
-``.../templates/mysite``.
-
-It turns out it is possible to get this to work, by adding a directory right
-at the end of your template directories, which is the parent of all of the
-other directories: ``.../templates`` in our case. This has the effect of
-making every template file within our system uniquely addressable. Most of the
-time you will use the "normal" paths, but in the special case of wanting to
-extend a template with an overriding version of itself we can reference its
-parent's full, unambiguous template path in the extends tag:
-
-.. code-block:: jinja
-
-    {# page.twig in .../templates/mysite #}
-    {% extends "default/page.twig" %} {# from .../templates #}
-
-.. note::
-
-    This recipe was inspired by the following Django wiki page:
-    http://code.djangoproject.com/wiki/ExtendingTemplates
-
-Customizing the Syntax
-----------------------
-
-Twig allows some syntax customization for the block delimiters. It's not
-recommended to use this feature as templates will be tied with your custom
-syntax. But for specific projects, it can make sense to change the defaults.
-
-To change the block delimiters, you need to create your own lexer object::
-
-    $twig = new Twig_Environment();
-
-    $lexer = new Twig_Lexer($twig, array(
-        'tag_comment'   => array('{#', '#}'),
-        'tag_block'     => array('{%', '%}'),
-        'tag_variable'  => array('{{', '}}'),
-        'interpolation' => array('#{', '}'),
-    ));
-    $twig->setLexer($lexer);
-
-Here are some configuration example that simulates some other template engines
-syntax::
-
-    // Ruby erb syntax
-    $lexer = new Twig_Lexer($twig, array(
-        'tag_comment'  => array('<%#', '%>'),
-        'tag_block'    => array('<%', '%>'),
-        'tag_variable' => array('<%=', '%>'),
-    ));
-
-    // SGML Comment Syntax
-    $lexer = new Twig_Lexer($twig, array(
-        'tag_comment'  => array('<!--#', '-->'),
-        'tag_block'    => array('<!--', '-->'),
-        'tag_variable' => array('${', '}'),
-    ));
-
-    // Smarty like
-    $lexer = new Twig_Lexer($twig, array(
-        'tag_comment'  => array('{*', '*}'),
-        'tag_block'    => array('{', '}'),
-        'tag_variable' => array('{$', '}'),
-    ));
-
-Using dynamic Object Properties
--------------------------------
-
-When Twig encounters a variable like ``article.title``, it tries to find a
-``title`` public property in the ``article`` object.
-
-It also works if the property does not exist but is rather defined dynamically
-thanks to the magic ``__get()`` method; you just need to also implement the
-``__isset()`` magic method like shown in the following snippet of code::
-
-    class Article
-    {
-        public function __get($name)
-        {
-            if ('title' == $name) {
-                return 'The title';
-            }
-
-            // throw some kind of error
-        }
-
-        public function __isset($name)
-        {
-            if ('title' == $name) {
-                return true;
-            }
-
-            return false;
-        }
-    }
-
-Accessing the parent Context in Nested Loops
---------------------------------------------
-
-Sometimes, when using nested loops, you need to access the parent context. The
-parent context is always accessible via the ``loop.parent`` variable. For
-instance, if you have the following template data::
-
-    $data = array(
-        'topics' => array(
-            'topic1' => array('Message 1 of topic 1', 'Message 2 of topic 1'),
-            'topic2' => array('Message 1 of topic 2', 'Message 2 of topic 2'),
-        ),
-    );
-
-And the following template to display all messages in all topics:
-
-.. code-block:: jinja
-
-    {% for topic, messages in topics %}
-        * {{ loop.index }}: {{ topic }}
-      {% for message in messages %}
-          - {{ loop.parent.loop.index }}.{{ loop.index }}: {{ message }}
-      {% endfor %}
-    {% endfor %}
-
-The output will be similar to:
-
-.. code-block:: text
-
-    * 1: topic1
-      - 1.1: The message 1 of topic 1
-      - 1.2: The message 2 of topic 1
-    * 2: topic2
-      - 2.1: The message 1 of topic 2
-      - 2.2: The message 2 of topic 2
-
-In the inner loop, the ``loop.parent`` variable is used to access the outer
-context. So, the index of the current ``topic`` defined in the outer for loop
-is accessible via the ``loop.parent.loop.index`` variable.
-
-Defining undefined Functions and Filters on the Fly
----------------------------------------------------
-
-When a function (or a filter) is not defined, Twig defaults to throw a
-``Twig_Error_Syntax`` exception. However, it can also call a `callback`_ (any
-valid PHP callable) which should return a function (or a filter).
-
-For filters, register callbacks with ``registerUndefinedFilterCallback()``.
-For functions, use ``registerUndefinedFunctionCallback()``::
-
-    // auto-register all native PHP functions as Twig functions
-    // don't try this at home as it's not secure at all!
-    $twig->registerUndefinedFunctionCallback(function ($name) {
-        if (function_exists($name)) {
-            return new Twig_Function_Function($name);
-        }
-
-        return false;
-    });
-
-If the callable is not able to return a valid function (or filter), it must
-return ``false``.
-
-If you register more than one callback, Twig will call them in turn until one
-does not return ``false``.
-
-.. tip::
-
-    As the resolution of functions and filters is done during compilation,
-    there is no overhead when registering these callbacks.
-
-Validating the Template Syntax
-------------------------------
-
-When template code is provided by a third-party (through a web interface for
-instance), it might be interesting to validate the template syntax before
-saving it. If the template code is stored in a `$template` variable, here is
-how you can do it::
-
-    try {
-        $twig->parse($twig->tokenize($template));
-
-        // the $template is valid
-    } catch (Twig_Error_Syntax $e) {
-        // $template contains one or more syntax errors
-    }
-
-If you iterate over a set of files, you can pass the filename to the
-``tokenize()`` method to get the filename in the exception message::
-
-    foreach ($files as $file) {
-        try {
-            $twig->parse($twig->tokenize($template, $file));
-
-            // the $template is valid
-        } catch (Twig_Error_Syntax $e) {
-            // $template contains one or more syntax errors
-        }
-    }
-
-.. note::
-
-    This method won't catch any sandbox policy violations because the policy
-    is enforced during template rendering (as Twig needs the context for some
-    checks like allowed methods on objects).
-
-Refreshing modified Templates when OPcache or APC is enabled
-------------------------------------------------------------
-
-When using OPcache with ``opcache.validate_timestamps`` set to ``0`` or APC
-with ``apc.stat`` set to ``0`` and Twig cache enabled, clearing the template
-cache won't update the cache.
-
-To get around this, force Twig to invalidate the bytecode cache::
-
-    $twig = new Twig_Environment($loader, array(
-        'cache' => new Twig_Cache_Filesystem('/some/cache/path', Twig_Cache_Filesystem::FORCE_BYTECODE_INVALIDATION),
-        // ...
-    ));
-
-.. note::
-
-    Before Twig 1.22, you should extend ``Twig_Environment`` instead::
-
-        class OpCacheAwareTwigEnvironment extends Twig_Environment
-        {
-            protected function writeCacheFile($file, $content)
-            {
-                parent::writeCacheFile($file, $content);
-
-                // Compile cached file into bytecode cache
-                if (function_exists('opcache_invalidate')) {
-                    opcache_invalidate($file, true);
-                } elseif (function_exists('apc_compile_file')) {
-                    apc_compile_file($file);
-                }
-            }
-        }
-
-Reusing a stateful Node Visitor
--------------------------------
-
-When attaching a visitor to a ``Twig_Environment`` instance, Twig uses it to
-visit *all* templates it compiles. If you need to keep some state information
-around, you probably want to reset it when visiting a new template.
-
-This can be easily achieved with the following code::
-
-    protected $someTemplateState = array();
-
-    public function enterNode(Twig_NodeInterface $node, Twig_Environment $env)
-    {
-        if ($node instanceof Twig_Node_Module) {
-            // reset the state as we are entering a new template
-            $this->someTemplateState = array();
-        }
-
-        // ...
-
-        return $node;
-    }
-
-Using a Database to store Templates
------------------------------------
-
-If you are developing a CMS, templates are usually stored in a database. This
-recipe gives you a simple PDO template loader you can use as a starting point
-for your own.
-
-First, let's create a temporary in-memory SQLite3 database to work with::
-
-    $dbh = new PDO('sqlite::memory:');
-    $dbh->exec('CREATE TABLE templates (name STRING, source STRING, last_modified INTEGER)');
-    $base = '{% block content %}{% endblock %}';
-    $index = '
-    {% extends "base.twig" %}
-    {% block content %}Hello {{ name }}{% endblock %}
-    ';
-    $now = time();
-    $dbh->exec("INSERT INTO templates (name, source, last_modified) VALUES ('base.twig', '$base', $now)");
-    $dbh->exec("INSERT INTO templates (name, source, last_modified) VALUES ('index.twig', '$index', $now)");
-
-We have created a simple ``templates`` table that hosts two templates:
-``base.twig`` and ``index.twig``.
-
-Now, let's define a loader able to use this database::
-
-    class DatabaseTwigLoader implements Twig_LoaderInterface, Twig_ExistsLoaderInterface
-    {
-        protected $dbh;
-
-        public function __construct(PDO $dbh)
-        {
-            $this->dbh = $dbh;
-        }
-
-        public function getSource($name)
-        {
-            if (false === $source = $this->getValue('source', $name)) {
-                throw new Twig_Error_Loader(sprintf('Template "%s" does not exist.', $name));
-            }
-
-            return $source;
-        }
-
-        // Twig_ExistsLoaderInterface as of Twig 1.11
-        public function exists($name)
-        {
-            return $name === $this->getValue('name', $name);
-        }
-
-        public function getCacheKey($name)
-        {
-            return $name;
-        }
-
-        public function isFresh($name, $time)
-        {
-            if (false === $lastModified = $this->getValue('last_modified', $name)) {
-                return false;
-            }
-
-            return $lastModified <= $time;
-        }
-
-        protected function getValue($column, $name)
-        {
-            $sth = $this->dbh->prepare('SELECT '.$column.' FROM templates WHERE name = :name');
-            $sth->execute(array(':name' => (string) $name));
-
-            return $sth->fetchColumn();
-        }
-    }
-
-Finally, here is an example on how you can use it::
-
-    $loader = new DatabaseTwigLoader($dbh);
-    $twig = new Twig_Environment($loader);
-
-    echo $twig->render('index.twig', array('name' => 'Fabien'));
-
-Using different Template Sources
---------------------------------
-
-This recipe is the continuation of the previous one. Even if you store the
-contributed templates in a database, you might want to keep the original/base
-templates on the filesystem. When templates can be loaded from different
-sources, you need to use the ``Twig_Loader_Chain`` loader.
-
-As you can see in the previous recipe, we reference the template in the exact
-same way as we would have done it with a regular filesystem loader. This is
-the key to be able to mix and match templates coming from the database, the
-filesystem, or any other loader for that matter: the template name should be a
-logical name, and not the path from the filesystem::
-
-    $loader1 = new DatabaseTwigLoader($dbh);
-    $loader2 = new Twig_Loader_Array(array(
-        'base.twig' => '{% block content %}{% endblock %}',
-    ));
-    $loader = new Twig_Loader_Chain(array($loader1, $loader2));
-
-    $twig = new Twig_Environment($loader);
-
-    echo $twig->render('index.twig', array('name' => 'Fabien'));
-
-Now that the ``base.twig`` templates is defined in an array loader, you can
-remove it from the database, and everything else will still work as before.
-
-Loading a Template from a String
---------------------------------
-
-From a template, you can easily load a template stored in a string via the
-``template_from_string`` function (available as of Twig 1.11 via the
-``Twig_Extension_StringLoader`` extension)::
-
-.. code-block:: jinja
-
-    {{ include(template_from_string("Hello {{ name }}")) }}
-
-From PHP, it's also possible to load a template stored in a string via
-``Twig_Environment::createTemplate()`` (available as of Twig 1.18)::
-
-    $template = $twig->createTemplate('hello {{ name }}');
-    echo $template->render(array('name' => 'Fabien'));
-
-.. note::
-
-    Never use the ``Twig_Loader_String`` loader, which has severe limitations.
-
-.. _callback: http://www.php.net/manual/en/function.is-callable.php
diff --git a/vendor/twig/twig/doc/tags/autoescape.rst b/vendor/twig/twig/doc/tags/autoescape.rst
deleted file mode 100644
index 4208d1a..0000000
--- a/vendor/twig/twig/doc/tags/autoescape.rst
+++ /dev/null
@@ -1,83 +0,0 @@
-``autoescape``
-==============
-
-Whether automatic escaping is enabled or not, you can mark a section of a
-template to be escaped or not by using the ``autoescape`` tag:
-
-.. code-block:: jinja
-
-    {# The following syntax works as of Twig 1.8 -- see the note below for previous versions #}
-
-    {% autoescape %}
-        Everything will be automatically escaped in this block
-        using the HTML strategy
-    {% endautoescape %}
-
-    {% autoescape 'html' %}
-        Everything will be automatically escaped in this block
-        using the HTML strategy
-    {% endautoescape %}
-
-    {% autoescape 'js' %}
-        Everything will be automatically escaped in this block
-        using the js escaping strategy
-    {% endautoescape %}
-
-    {% autoescape false %}
-        Everything will be outputted as is in this block
-    {% endautoescape %}
-
-.. note::
-
-    Before Twig 1.8, the syntax was different:
-
-    .. code-block:: jinja
-
-        {% autoescape true %}
-            Everything will be automatically escaped in this block
-            using the HTML strategy
-        {% endautoescape %}
-
-        {% autoescape false %}
-            Everything will be outputted as is in this block
-        {% endautoescape %}
-
-        {% autoescape true js %}
-            Everything will be automatically escaped in this block
-            using the js escaping strategy
-        {% endautoescape %}
-
-When automatic escaping is enabled everything is escaped by default except for
-values explicitly marked as safe. Those can be marked in the template by using
-the :doc:`raw<../filters/raw>` filter:
-
-.. code-block:: jinja
-
-    {% autoescape %}
-        {{ safe_value|raw }}
-    {% endautoescape %}
-
-Functions returning template data (like :doc:`macros<macro>` and
-:doc:`parent<../functions/parent>`) always return safe markup.
-
-.. note::
-
-    Twig is smart enough to not escape an already escaped value by the
-    :doc:`escape<../filters/escape>` filter.
-
-.. note::
-
-    Twig does not escape static expressions:
-
-    .. code-block:: jinja
-
-        {% set hello = "<strong>Hello</strong>" %}
-        {{ hello }}
-        {{ "<strong>world</strong>" }}
-
-    Will be rendered "<strong>Hello</strong> **world**".
-
-.. note::
-
-    The chapter :doc:`Twig for Developers<../api>` gives more information
-    about when and how automatic escaping is applied.
diff --git a/vendor/twig/twig/doc/tags/block.rst b/vendor/twig/twig/doc/tags/block.rst
deleted file mode 100644
index e380482..0000000
--- a/vendor/twig/twig/doc/tags/block.rst
+++ /dev/null
@@ -1,11 +0,0 @@
-``block``
-=========
-
-Blocks are used for inheritance and act as placeholders and replacements at
-the same time. They are documented in detail in the documentation for the
-:doc:`extends<../tags/extends>` tag.
-
-Block names should consist of alphanumeric characters, and underscores. Dashes
-are not permitted.
-
-.. seealso:: :doc:`block<../functions/block>`, :doc:`parent<../functions/parent>`, :doc:`use<../tags/use>`, :doc:`extends<../tags/extends>`
diff --git a/vendor/twig/twig/doc/tags/do.rst b/vendor/twig/twig/doc/tags/do.rst
deleted file mode 100644
index 1c344e3..0000000
--- a/vendor/twig/twig/doc/tags/do.rst
+++ /dev/null
@@ -1,12 +0,0 @@
-``do``
-======
-
-.. versionadded:: 1.5
-    The ``do`` tag was added in Twig 1.5.
-
-The ``do`` tag works exactly like the regular variable expression (``{{ ...
-}}``) just that it doesn't print anything:
-
-.. code-block:: jinja
-
-    {% do 1 + 2 %}
diff --git a/vendor/twig/twig/doc/tags/embed.rst b/vendor/twig/twig/doc/tags/embed.rst
deleted file mode 100644
index 5a6a029..0000000
--- a/vendor/twig/twig/doc/tags/embed.rst
+++ /dev/null
@@ -1,178 +0,0 @@
-``embed``
-=========
-
-.. versionadded:: 1.8
-    The ``embed`` tag was added in Twig 1.8.
-
-The ``embed`` tag combines the behaviour of :doc:`include<include>` and
-:doc:`extends<extends>`.
-It allows you to include another template's contents, just like ``include``
-does. But it also allows you to override any block defined inside the
-included template, like when extending a template.
-
-Think of an embedded template as a "micro layout skeleton".
-
-.. code-block:: jinja
-
-    {% embed "teasers_skeleton.twig" %}
-        {# These blocks are defined in "teasers_skeleton.twig" #}
-        {# and we override them right here:                    #}
-        {% block left_teaser %}
-            Some content for the left teaser box
-        {% endblock %}
-        {% block right_teaser %}
-            Some content for the right teaser box
-        {% endblock %}
-    {% endembed %}
-
-The ``embed`` tag takes the idea of template inheritance to the level of
-content fragments. While template inheritance allows for "document skeletons",
-which are filled with life by child templates, the ``embed`` tag allows you to
-create "skeletons" for smaller units of content and re-use and fill them
-anywhere you like.
-
-Since the use case may not be obvious, let's look at a simplified example.
-Imagine a base template shared by multiple HTML pages, defining a single block
-named "content":
-
-.. code-block:: text
-
-    ┌─── page layout ─────────────────────┐
-    │                                     │
-    │           ┌── block "content" ──┐   │
-    │           │                     │   │
-    │           │                     │   │
-    │           │ (child template to  │   │
-    │           │  put content here)  │   │
-    │           │                     │   │
-    │           │                     │   │
-    │           └─────────────────────┘   │
-    │                                     │
-    └─────────────────────────────────────┘
-
-Some pages ("foo" and "bar") share the same content structure -
-two vertically stacked boxes:
-
-.. code-block:: text
-
-    ┌─── page layout ─────────────────────┐
-    │                                     │
-    │           ┌── block "content" ──┐   │
-    │           │ ┌─ block "top" ───┐ │   │
-    │           │ │                 │ │   │
-    │           │ └─────────────────┘ │   │
-    │           │ ┌─ block "bottom" ┐ │   │
-    │           │ │                 │ │   │
-    │           │ └─────────────────┘ │   │
-    │           └─────────────────────┘   │
-    │                                     │
-    └─────────────────────────────────────┘
-
-While other pages ("boom" and "baz") share a different content structure -
-two boxes side by side:
-
-.. code-block:: text
-
-    ┌─── page layout ─────────────────────┐
-    │                                     │
-    │           ┌── block "content" ──┐   │
-    │           │                     │   │    
-    │           │ ┌ block ┐ ┌ block ┐ │   │
-    │           │ │"left" │ │"right"│ │   │
-    │           │ │       │ │       │ │   │
-    │           │ │       │ │       │ │   │
-    │           │ └───────┘ └───────┘ │   │
-    │           └─────────────────────┘   │
-    │                                     │
-    └─────────────────────────────────────┘
-
-Without the ``embed`` tag, you have two ways to design your templates:
-
- * Create two "intermediate" base templates that extend the master layout
-   template: one with vertically stacked boxes to be used by the "foo" and
-   "bar" pages and another one with side-by-side boxes for the "boom" and
-   "baz" pages.
-
- * Embed the markup for the top/bottom and left/right boxes into each page 
-   template directly.
-
-These two solutions do not scale well because they each have a major drawback:
-
- * The first solution may indeed work for this simplified example. But imagine
-   we add a sidebar, which may again contain different, recurring structures
-   of content. Now we would need to create intermediate base templates for
-   all occurring combinations of content structure and sidebar structure...
-   and so on.
-
- * The second solution involves duplication of common code with all its negative
-   consequences: any change involves finding and editing all affected copies
-   of the structure, correctness has to be verified for each copy, copies may
-   go out of sync by careless modifications etc.
-
-In such a situation, the ``embed`` tag comes in handy. The common layout
-code can live in a single base template, and the two different content structures,
-let's call them "micro layouts" go into separate templates which are embedded
-as necessary:
-
-Page template ``foo.twig``:
-
-.. code-block:: jinja
-
-    {% extends "layout_skeleton.twig" %}
-
-    {% block content %}
-        {% embed "vertical_boxes_skeleton.twig" %}
-            {% block top %}
-                Some content for the top box
-            {% endblock %}
-
-            {% block bottom %}
-                Some content for the bottom box
-            {% endblock %}
-        {% endembed %}
-    {% endblock %}
-
-And here is the code for ``vertical_boxes_skeleton.twig``:
-
-.. code-block:: html+jinja
-
-    <div class="top_box">
-        {% block top %}
-            Top box default content
-        {% endblock %}
-    </div>
-
-    <div class="bottom_box">
-        {% block bottom %}
-            Bottom box default content
-        {% endblock %}
-    </div>
-
-The goal of the ``vertical_boxes_skeleton.twig`` template being to factor
-out the HTML markup for the boxes.
-
-The ``embed`` tag takes the exact same arguments as the ``include`` tag:
-
-.. code-block:: jinja
-
-    {% embed "base" with {'foo': 'bar'} %}
-        ...
-    {% endembed %}
-
-    {% embed "base" with {'foo': 'bar'} only %}
-        ...
-    {% endembed %}
-
-    {% embed "base" ignore missing %}
-        ...
-    {% endembed %}
-
-.. warning::
-
-    As embedded templates do not have "names", auto-escaping strategies based
-    on the template "filename" won't work as expected if you change the
-    context (for instance, if you embed a CSS/JavaScript template into an HTML
-    one). In that case, explicitly set the default auto-escaping strategy with
-    the ``autoescape`` tag.
-
-.. seealso:: :doc:`include<../tags/include>`
diff --git a/vendor/twig/twig/doc/tags/extends.rst b/vendor/twig/twig/doc/tags/extends.rst
deleted file mode 100644
index 1ad2b12..0000000
--- a/vendor/twig/twig/doc/tags/extends.rst
+++ /dev/null
@@ -1,268 +0,0 @@
-``extends``
-===========
-
-The ``extends`` tag can be used to extend a template from another one.
-
-.. note::
-
-    Like PHP, Twig does not support multiple inheritance. So you can only have
-    one extends tag called per rendering. However, Twig supports horizontal
-    :doc:`reuse<use>`.
-
-Let's define a base template, ``base.html``, which defines a simple HTML
-skeleton document:
-
-.. code-block:: html+jinja
-
-    <!DOCTYPE html>
-    <html>
-        <head>
-            {% block head %}
-                <link rel="stylesheet" href="style.css" />
-                <title>{% block title %}{% endblock %} - My Webpage</title>
-            {% endblock %}
-        </head>
-        <body>
-            <div id="content">{% block content %}{% endblock %}</div>
-            <div id="footer">
-                {% block footer %}
-                    &copy; Copyright 2011 by <a href="http://domain.invalid/">you</a>.
-                {% endblock %}
-            </div>
-        </body>
-    </html>
-
-In this example, the :doc:`block<block>` tags define four blocks that child
-templates can fill in.
-
-All the ``block`` tag does is to tell the template engine that a child
-template may override those portions of the template.
-
-Child Template
---------------
-
-A child template might look like this:
-
-.. code-block:: jinja
-
-    {% extends "base.html" %}
-
-    {% block title %}Index{% endblock %}
-    {% block head %}
-        {{ parent() }}
-        <style type="text/css">
-            .important { color: #336699; }
-        </style>
-    {% endblock %}
-    {% block content %}
-        <h1>Index</h1>
-        <p class="important">
-            Welcome on my awesome homepage.
-        </p>
-    {% endblock %}
-
-The ``extends`` tag is the key here. It tells the template engine that this
-template "extends" another template. When the template system evaluates this
-template, first it locates the parent. The extends tag should be the first tag
-in the template.
-
-Note that since the child template doesn't define the ``footer`` block, the
-value from the parent template is used instead.
-
-You can't define multiple ``block`` tags with the same name in the same
-template. This limitation exists because a block tag works in "both"
-directions. That is, a block tag doesn't just provide a hole to fill - it also
-defines the content that fills the hole in the *parent*. If there were two
-similarly-named ``block`` tags in a template, that template's parent wouldn't
-know which one of the blocks' content to use.
-
-If you want to print a block multiple times you can however use the
-``block`` function:
-
-.. code-block:: jinja
-
-    <title>{% block title %}{% endblock %}</title>
-    <h1>{{ block('title') }}</h1>
-    {% block body %}{% endblock %}
-
-Parent Blocks
--------------
-
-It's possible to render the contents of the parent block by using the
-:doc:`parent<../functions/parent>` function. This gives back the results of
-the parent block:
-
-.. code-block:: jinja
-
-    {% block sidebar %}
-        <h3>Table Of Contents</h3>
-        ...
-        {{ parent() }}
-    {% endblock %}
-
-Named Block End-Tags
---------------------
-
-Twig allows you to put the name of the block after the end tag for better
-readability:
-
-.. code-block:: jinja
-
-    {% block sidebar %}
-        {% block inner_sidebar %}
-            ...
-        {% endblock inner_sidebar %}
-    {% endblock sidebar %}
-
-Of course, the name after the ``endblock`` word must match the block name.
-
-Block Nesting and Scope
------------------------
-
-Blocks can be nested for more complex layouts. Per default, blocks have access
-to variables from outer scopes:
-
-.. code-block:: jinja
-
-    {% for item in seq %}
-        <li>{% block loop_item %}{{ item }}{% endblock %}</li>
-    {% endfor %}
-
-Block Shortcuts
----------------
-
-For blocks with few content, it's possible to use a shortcut syntax. The
-following constructs do the same:
-
-.. code-block:: jinja
-
-    {% block title %}
-        {{ page_title|title }}
-    {% endblock %}
-
-.. code-block:: jinja
-
-    {% block title page_title|title %}
-
-Dynamic Inheritance
--------------------
-
-Twig supports dynamic inheritance by using a variable as the base template:
-
-.. code-block:: jinja
-
-    {% extends some_var %}
-
-If the variable evaluates to a ``Twig_Template`` object, Twig will use it as
-the parent template::
-
-    // {% extends layout %}
-
-    $layout = $twig->loadTemplate('some_layout_template.twig');
-
-    $twig->display('template.twig', array('layout' => $layout));
-
-.. versionadded:: 1.2
-    The possibility to pass an array of templates has been added in Twig 1.2.
-
-You can also provide a list of templates that are checked for existence. The
-first template that exists will be used as a parent:
-
-.. code-block:: jinja
-
-    {% extends ['layout.html', 'base_layout.html'] %}
-
-Conditional Inheritance
------------------------
-
-As the template name for the parent can be any valid Twig expression, it's
-possible to make the inheritance mechanism conditional:
-
-.. code-block:: jinja
-
-    {% extends standalone ? "minimum.html" : "base.html" %}
-
-In this example, the template will extend the "minimum.html" layout template
-if the ``standalone`` variable evaluates to ``true``, and "base.html"
-otherwise.
-
-How do blocks work?
--------------------
-
-A block provides a way to change how a certain part of a template is rendered
-but it does not interfere in any way with the logic around it.
-
-Let's take the following example to illustrate how a block works and more
-importantly, how it does not work:
-
-.. code-block:: jinja
-
-    {# base.twig #}
-
-    {% for post in posts %}
-        {% block post %}
-            <h1>{{ post.title }}</h1>
-            <p>{{ post.body }}</p>
-        {% endblock %}
-    {% endfor %}
-
-If you render this template, the result would be exactly the same with or
-without the ``block`` tag. The ``block`` inside the ``for`` loop is just a way
-to make it overridable by a child template:
-
-.. code-block:: jinja
-
-    {# child.twig #}
-
-    {% extends "base.twig" %}
-
-    {% block post %}
-        <article>
-            <header>{{ post.title }}</header>
-            <section>{{ post.text }}</section>
-        </article>
-    {% endblock %}
-
-Now, when rendering the child template, the loop is going to use the block
-defined in the child template instead of the one defined in the base one; the
-executed template is then equivalent to the following one:
-
-.. code-block:: jinja
-
-    {% for post in posts %}
-        <article>
-            <header>{{ post.title }}</header>
-            <section>{{ post.text }}</section>
-        </article>
-    {% endfor %}
-
-Let's take another example: a block included within an ``if`` statement:
-
-.. code-block:: jinja
-
-    {% if posts is empty %}
-        {% block head %}
-            {{ parent() }}
-
-            <meta name="robots" content="noindex, follow">
-        {% endblock head %}
-    {% endif %}
-
-Contrary to what you might think, this template does not define a block
-conditionally; it just makes overridable by a child template the output of
-what will be rendered when the condition is ``true``.
-
-If you want the output to be displayed conditionally, use the following
-instead:
-
-.. code-block:: jinja
-
-    {% block head %}
-        {{ parent() }}
-
-        {% if posts is empty %}
-            <meta name="robots" content="noindex, follow">
-        {% endif %}
-    {% endblock head %}
-
-.. seealso:: :doc:`block<../functions/block>`, :doc:`block<../tags/block>`, :doc:`parent<../functions/parent>`, :doc:`use<../tags/use>`
diff --git a/vendor/twig/twig/doc/tags/filter.rst b/vendor/twig/twig/doc/tags/filter.rst
deleted file mode 100644
index 82ca5c6..0000000
--- a/vendor/twig/twig/doc/tags/filter.rst
+++ /dev/null
@@ -1,21 +0,0 @@
-``filter``
-==========
-
-Filter sections allow you to apply regular Twig filters on a block of template
-data. Just wrap the code in the special ``filter`` section:
-
-.. code-block:: jinja
-
-    {% filter upper %}
-        This text becomes uppercase
-    {% endfilter %}
-
-You can also chain filters:
-
-.. code-block:: jinja
-
-    {% filter lower|escape %}
-        <strong>SOME TEXT</strong>
-    {% endfilter %}
-
-    {# outputs "&lt;strong&gt;some text&lt;/strong&gt;" #}
diff --git a/vendor/twig/twig/doc/tags/flush.rst b/vendor/twig/twig/doc/tags/flush.rst
deleted file mode 100644
index 55ef593..0000000
--- a/vendor/twig/twig/doc/tags/flush.rst
+++ /dev/null
@@ -1,17 +0,0 @@
-``flush``
-=========
-
-.. versionadded:: 1.5
-    The flush tag was added in Twig 1.5.
-
-The ``flush`` tag tells Twig to flush the output buffer:
-
-.. code-block:: jinja
-
-    {% flush %}
-
-.. note::
-
-    Internally, Twig uses the PHP `flush`_ function.
-
-.. _`flush`: http://php.net/flush
diff --git a/vendor/twig/twig/doc/tags/for.rst b/vendor/twig/twig/doc/tags/for.rst
deleted file mode 100644
index 0673b55..0000000
--- a/vendor/twig/twig/doc/tags/for.rst
+++ /dev/null
@@ -1,172 +0,0 @@
-``for``
-=======
-
-Loop over each item in a sequence. For example, to display a list of users
-provided in a variable called ``users``:
-
-.. code-block:: jinja
-
-    <h1>Members</h1>
-    <ul>
-        {% for user in users %}
-            <li>{{ user.username|e }}</li>
-        {% endfor %}
-    </ul>
-
-.. note::
-
-    A sequence can be either an array or an object implementing the
-    ``Traversable`` interface.
-
-If you do need to iterate over a sequence of numbers, you can use the ``..``
-operator:
-
-.. code-block:: jinja
-
-    {% for i in 0..10 %}
-        * {{ i }}
-    {% endfor %}
-
-The above snippet of code would print all numbers from 0 to 10.
-
-It can be also useful with letters:
-
-.. code-block:: jinja
-
-    {% for letter in 'a'..'z' %}
-        * {{ letter }}
-    {% endfor %}
-
-The ``..`` operator can take any expression at both sides:
-
-.. code-block:: jinja
-
-    {% for letter in 'a'|upper..'z'|upper %}
-        * {{ letter }}
-    {% endfor %}
-
-.. tip:
-
-    If you need a step different from 1, you can use the ``range`` function
-    instead.
-
-The `loop` variable
--------------------
-
-Inside of a ``for`` loop block you can access some special variables:
-
-===================== =============================================================
-Variable              Description
-===================== =============================================================
-``loop.index``        The current iteration of the loop. (1 indexed)
-``loop.index0``       The current iteration of the loop. (0 indexed)
-``loop.revindex``     The number of iterations from the end of the loop (1 indexed)
-``loop.revindex0``    The number of iterations from the end of the loop (0 indexed)
-``loop.first``        True if first iteration
-``loop.last``         True if last iteration
-``loop.length``       The number of items in the sequence
-``loop.parent``       The parent context
-===================== =============================================================
-
-.. code-block:: jinja
-
-    {% for user in users %}
-        {{ loop.index }} - {{ user.username }}
-    {% endfor %}
-
-.. note::
-
-    The ``loop.length``, ``loop.revindex``, ``loop.revindex0``, and
-    ``loop.last`` variables are only available for PHP arrays, or objects that
-    implement the ``Countable`` interface. They are also not available when
-    looping with a condition.
-
-.. versionadded:: 1.2
-    The ``if`` modifier support has been added in Twig 1.2.
-
-Adding a condition
-------------------
-
-Unlike in PHP, it's not possible to ``break`` or ``continue`` in a loop. You
-can however filter the sequence during iteration which allows you to skip
-items. The following example skips all the users which are not active:
-
-.. code-block:: jinja
-
-    <ul>
-        {% for user in users if user.active %}
-            <li>{{ user.username|e }}</li>
-        {% endfor %}
-    </ul>
-
-The advantage is that the special loop variable will count correctly thus not
-counting the users not iterated over. Keep in mind that properties like
-``loop.last`` will not be defined when using loop conditions.
-
-.. note::
-
-    Using the ``loop`` variable within the condition is not recommended as it
-    will probably not be doing what you expect it to. For instance, adding a
-    condition like ``loop.index > 4`` won't work as the index is only
-    incremented when the condition is true (so the condition will never
-    match).
-
-The `else` Clause
------------------
-
-If no iteration took place because the sequence was empty, you can render a
-replacement block by using ``else``:
-
-.. code-block:: jinja
-
-    <ul>
-        {% for user in users %}
-            <li>{{ user.username|e }}</li>
-        {% else %}
-            <li><em>no user found</em></li>
-        {% endfor %}
-    </ul>
-
-Iterating over Keys
--------------------
-
-By default, a loop iterates over the values of the sequence. You can iterate
-on keys by using the ``keys`` filter:
-
-.. code-block:: jinja
-
-    <h1>Members</h1>
-    <ul>
-        {% for key in users|keys %}
-            <li>{{ key }}</li>
-        {% endfor %}
-    </ul>
-
-Iterating over Keys and Values
-------------------------------
-
-You can also access both keys and values:
-
-.. code-block:: jinja
-
-    <h1>Members</h1>
-    <ul>
-        {% for key, user in users %}
-            <li>{{ key }}: {{ user.username|e }}</li>
-        {% endfor %}
-    </ul>
-
-Iterating over a Subset
------------------------
-
-You might want to iterate over a subset of values. This can be achieved using
-the :doc:`slice <../filters/slice>` filter:
-
-.. code-block:: jinja
-
-    <h1>Top Ten Members</h1>
-    <ul>
-        {% for user in users|slice(0, 10) %}
-            <li>{{ user.username|e }}</li>
-        {% endfor %}
-    </ul>
diff --git a/vendor/twig/twig/doc/tags/from.rst b/vendor/twig/twig/doc/tags/from.rst
deleted file mode 100644
index 39334fd..0000000
--- a/vendor/twig/twig/doc/tags/from.rst
+++ /dev/null
@@ -1,8 +0,0 @@
-``from``
-========
-
-The ``from`` tag imports :doc:`macro<../tags/macro>` names into the current
-namespace. The tag is documented in detail in the documentation for the
-:doc:`import<../tags/import>` tag.
-
-.. seealso:: :doc:`macro<../tags/macro>`, :doc:`import<../tags/import>`
diff --git a/vendor/twig/twig/doc/tags/if.rst b/vendor/twig/twig/doc/tags/if.rst
deleted file mode 100644
index 12edf98..0000000
--- a/vendor/twig/twig/doc/tags/if.rst
+++ /dev/null
@@ -1,76 +0,0 @@
-``if``
-======
-
-The ``if`` statement in Twig is comparable with the if statements of PHP.
-
-In the simplest form you can use it to test if an expression evaluates to
-``true``:
-
-.. code-block:: jinja
-
-    {% if online == false %}
-        <p>Our website is in maintenance mode. Please, come back later.</p>
-    {% endif %}
-
-You can also test if an array is not empty:
-
-.. code-block:: jinja
-
-    {% if users %}
-        <ul>
-            {% for user in users %}
-                <li>{{ user.username|e }}</li>
-            {% endfor %}
-        </ul>
-    {% endif %}
-
-.. note::
-
-    If you want to test if the variable is defined, use ``if users is
-    defined`` instead.
-
-You can also use ``not`` to check for values that evaluate to ``false``:
-
-.. code-block:: jinja
-
-    {% if not user.subscribed %}
-        <p>You are not subscribed to our mailing list.</p>
-    {% endif %}
-
-For multiple conditions, ``and`` and ``or`` can be used:
-
-.. code-block:: jinja
-
-    {% if temperature > 18 and temperature < 27 %}
-        <p>It's a nice day for a walk in the park.</p>
-    {% endif %}
-
-For multiple branches ``elseif`` and ``else`` can be used like in PHP. You can
-use more complex ``expressions`` there too:
-
-.. code-block:: jinja
-
-    {% if kenny.sick %}
-        Kenny is sick.
-    {% elseif kenny.dead %}
-        You killed Kenny! You bastard!!!
-    {% else %}
-        Kenny looks okay --- so far
-    {% endif %}
-
-.. note::
-
-    The rules to determine if an expression is ``true`` or ``false`` are the
-    same as in PHP; here are the edge cases rules:
-
-    ====================== ====================
-    Value                  Boolean evaluation
-    ====================== ====================
-    empty string           false
-    numeric zero           false
-    whitespace-only string true
-    empty array            false
-    null                   false
-    non-empty array        true
-    object                 true
-    ====================== ====================
diff --git a/vendor/twig/twig/doc/tags/import.rst b/vendor/twig/twig/doc/tags/import.rst
deleted file mode 100644
index 21a1e19..0000000
--- a/vendor/twig/twig/doc/tags/import.rst
+++ /dev/null
@@ -1,57 +0,0 @@
-``import``
-==========
-
-Twig supports putting often used code into :doc:`macros<../tags/macro>`. These
-macros can go into different templates and get imported from there.
-
-There are two ways to import templates. You can import the complete template
-into a variable or request specific macros from it.
-
-Imagine we have a helper module that renders forms (called ``forms.html``):
-
-.. code-block:: jinja
-
-    {% macro input(name, value, type, size) %}
-        <input type="{{ type|default('text') }}" name="{{ name }}" value="{{ value|e }}" size="{{ size|default(20) }}" />
-    {% endmacro %}
-
-    {% macro textarea(name, value, rows, cols) %}
-        <textarea name="{{ name }}" rows="{{ rows|default(10) }}" cols="{{ cols|default(40) }}">{{ value|e }}</textarea>
-    {% endmacro %}
-
-The easiest and most flexible is importing the whole module into a variable.
-That way you can access the attributes:
-
-.. code-block:: jinja
-
-    {% import 'forms.html' as forms %}
-
-    <dl>
-        <dt>Username</dt>
-        <dd>{{ forms.input('username') }}</dd>
-        <dt>Password</dt>
-        <dd>{{ forms.input('password', null, 'password') }}</dd>
-    </dl>
-    <p>{{ forms.textarea('comment') }}</p>
-
-Alternatively you can import names from the template into the current
-namespace:
-
-.. code-block:: jinja
-
-    {% from 'forms.html' import input as input_field, textarea %}
-
-    <dl>
-        <dt>Username</dt>
-        <dd>{{ input_field('username') }}</dd>
-        <dt>Password</dt>
-        <dd>{{ input_field('password', '', 'password') }}</dd>
-    </dl>
-    <p>{{ textarea('comment') }}</p>
-
-.. tip::
-
-    To import macros from the current file, use the special ``_self`` variable
-    for the source.
-
-.. seealso:: :doc:`macro<../tags/macro>`, :doc:`from<../tags/from>`
diff --git a/vendor/twig/twig/doc/tags/include.rst b/vendor/twig/twig/doc/tags/include.rst
deleted file mode 100644
index da18dc6..0000000
--- a/vendor/twig/twig/doc/tags/include.rst
+++ /dev/null
@@ -1,86 +0,0 @@
-``include``
-===========
-
-The ``include`` statement includes a template and returns the rendered content
-of that file into the current namespace:
-
-.. code-block:: jinja
-
-    {% include 'header.html' %}
-        Body
-    {% include 'footer.html' %}
-
-Included templates have access to the variables of the active context.
-
-If you are using the filesystem loader, the templates are looked for in the
-paths defined by it.
-
-You can add additional variables by passing them after the ``with`` keyword:
-
-.. code-block:: jinja
-
-    {# template.html will have access to the variables from the current context and the additional ones provided #}
-    {% include 'template.html' with {'foo': 'bar'} %}
-
-    {% set vars = {'foo': 'bar'} %}
-    {% include 'template.html' with vars %}
-
-You can disable access to the context by appending the ``only`` keyword:
-
-.. code-block:: jinja
-
-    {# only the foo variable will be accessible #}
-    {% include 'template.html' with {'foo': 'bar'} only %}
-
-.. code-block:: jinja
-
-    {# no variables will be accessible #}
-    {% include 'template.html' only %}
-
-.. tip::
-
-    When including a template created by an end user, you should consider
-    sandboxing it. More information in the :doc:`Twig for Developers<../api>`
-    chapter and in the :doc:`sandbox<../tags/sandbox>` tag documentation.
-
-The template name can be any valid Twig expression:
-
-.. code-block:: jinja
-
-    {% include some_var %}
-    {% include ajax ? 'ajax.html' : 'not_ajax.html' %}
-
-And if the expression evaluates to a ``Twig_Template`` object, Twig will use it
-directly::
-
-    // {% include template %}
-
-    $template = $twig->loadTemplate('some_template.twig');
-
-    $twig->loadTemplate('template.twig')->display(array('template' => $template));
-
-.. versionadded:: 1.2
-    The ``ignore missing`` feature has been added in Twig 1.2.
-
-You can mark an include with ``ignore missing`` in which case Twig will ignore
-the statement if the template to be included does not exist. It has to be
-placed just after the template name. Here some valid examples:
-
-.. code-block:: jinja
-
-    {% include 'sidebar.html' ignore missing %}
-    {% include 'sidebar.html' ignore missing with {'foo': 'bar'} %}
-    {% include 'sidebar.html' ignore missing only %}
-
-.. versionadded:: 1.2
-    The possibility to pass an array of templates has been added in Twig 1.2.
-
-You can also provide a list of templates that are checked for existence before
-inclusion. The first template that exists will be included:
-
-.. code-block:: jinja
-
-    {% include ['page_detailed.html', 'page.html'] %}
-
-If ``ignore missing`` is given, it will fall back to rendering nothing if none
-of the templates exist, otherwise it will throw an exception.
diff --git a/vendor/twig/twig/doc/tags/index.rst b/vendor/twig/twig/doc/tags/index.rst
deleted file mode 100644
index e6a632b..0000000
--- a/vendor/twig/twig/doc/tags/index.rst
+++ /dev/null
@@ -1,24 +0,0 @@
-Tags
-====
-
-.. toctree::
-    :maxdepth: 1
-
-    autoescape
-    block
-    do
-    embed
-    extends
-    filter
-    flush
-    for
-    from
-    if
-    import
-    include
-    macro
-    sandbox
-    set
-    spaceless
-    use
-    verbatim
diff --git a/vendor/twig/twig/doc/tags/macro.rst b/vendor/twig/twig/doc/tags/macro.rst
deleted file mode 100644
index 60a1567..0000000
--- a/vendor/twig/twig/doc/tags/macro.rst
+++ /dev/null
@@ -1,86 +0,0 @@
-``macro``
-=========
-
-Macros are comparable with functions in regular programming languages. They
-are useful to put often used HTML idioms into reusable elements to not repeat
-yourself.
-
-Here is a small example of a macro that renders a form element:
-
-.. code-block:: jinja
-
-    {% macro input(name, value, type, size) %}
-        <input type="{{ type|default('text') }}" name="{{ name }}" value="{{ value|e }}" size="{{ size|default(20) }}" />
-    {% endmacro %}
-
-Macros differs from native PHP functions in a few ways:
-
-* Default argument values are defined by using the ``default`` filter in the
-  macro body;
-
-* Arguments of a macro are always optional.
-
-* If extra positional arguments are passed to a macro, they end up in the
-  special ``varargs`` variable as a list of values.
-
-But as with PHP functions, macros don't have access to the current template
-variables.
-
-.. tip::
-
-    You can pass the whole context as an argument by using the special
-    ``_context`` variable.
-
-Macros can be defined in any template, and need to be "imported" before being
-used (see the documentation for the :doc:`import<../tags/import>` tag for more
-information):
-
-.. code-block:: jinja
-
-    {% import "forms.html" as forms %}
-
-The above ``import`` call imports the "forms.html" file (which can contain only
-macros, or a template and some macros), and import the functions as items of
-the ``forms`` variable.
-
-The macro can then be called at will:
-
-.. code-block:: jinja
-
-    <p>{{ forms.input('username') }}</p>
-    <p>{{ forms.input('password', null, 'password') }}</p>
-
-If macros are defined and used in the same template, you can use the
-special ``_self`` variable to import them:
-
-.. code-block:: jinja
-
-    {% import _self as forms %}
-
-    <p>{{ forms.input('username') }}</p>
-
-.. warning::
-
-    When you define a macro in the template where you are going to use it, you
-    might be tempted to call the macro directly via ``_self.input()`` instead
-    of importing it; even if seems to work, this is just a side-effect of the
-    current implementation and it won't work anymore in Twig 2.x.
-
-When you want to use a macro in another macro from the same file, you need to
-import it locally:
-
-.. code-block:: jinja
-
-    {% macro input(name, value, type, size) %}
-        <input type="{{ type|default('text') }}" name="{{ name }}" value="{{ value|e }}" size="{{ size|default(20) }}" />
-    {% endmacro %}
-
-    {% macro wrapped_input(name, value, type, size) %}
-        {% import _self as forms %}
-
-        <div class="field">
-            {{ forms.input(name, value, type, size) }}
-        </div>
-    {% endmacro %}
-
-.. seealso:: :doc:`from<../tags/from>`, :doc:`import<../tags/import>`
diff --git a/vendor/twig/twig/doc/tags/sandbox.rst b/vendor/twig/twig/doc/tags/sandbox.rst
deleted file mode 100644
index e186726..0000000
--- a/vendor/twig/twig/doc/tags/sandbox.rst
+++ /dev/null
@@ -1,30 +0,0 @@
-``sandbox``
-===========
-
-The ``sandbox`` tag can be used to enable the sandboxing mode for an included
-template, when sandboxing is not enabled globally for the Twig environment:
-
-.. code-block:: jinja
-
-    {% sandbox %}
-        {% include 'user.html' %}
-    {% endsandbox %}
-
-.. warning::
-
-    The ``sandbox`` tag is only available when the sandbox extension is
-    enabled (see the :doc:`Twig for Developers<../api>` chapter).
-
-.. note::
-
-    The ``sandbox`` tag can only be used to sandbox an include tag and it
-    cannot be used to sandbox a section of a template. The following example
-    won't work:
-
-    .. code-block:: jinja
-
-        {% sandbox %}
-            {% for i in 1..2 %}
-                {{ i }}
-            {% endfor %}
-        {% endsandbox %}
diff --git a/vendor/twig/twig/doc/tags/set.rst b/vendor/twig/twig/doc/tags/set.rst
deleted file mode 100644
index 3eba239..0000000
--- a/vendor/twig/twig/doc/tags/set.rst
+++ /dev/null
@@ -1,78 +0,0 @@
-``set``
-=======
-
-Inside code blocks you can also assign values to variables. Assignments use
-the ``set`` tag and can have multiple targets.
-
-Here is how you can assign the ``bar`` value to the ``foo`` variable:
-
-.. code-block:: jinja
-
-    {% set foo = 'bar' %}
-
-After the ``set`` call, the ``foo`` variable is available in the template like
-any other ones:
-
-.. code-block:: jinja
-
-    {# displays bar #}
-    {{ foo }}
-
-The assigned value can be any valid :ref:`Twig expressions
-<twig-expressions>`:
-
-.. code-block:: jinja
-
-    {% set foo = [1, 2] %}
-    {% set foo = {'foo': 'bar'} %}
-    {% set foo = 'foo' ~ 'bar' %}
-
-Several variables can be assigned in one block:
-
-.. code-block:: jinja
-
-    {% set foo, bar = 'foo', 'bar' %}
-
-    {# is equivalent to #}
-
-    {% set foo = 'foo' %}
-    {% set bar = 'bar' %}
-
-The ``set`` tag can also be used to 'capture' chunks of text:
-
-.. code-block:: jinja
-
-    {% set foo %}
-        <div id="pagination">
-            ...
-        </div>
-    {% endset %}
-
-.. caution::
-
-    If you enable automatic output escaping, Twig will only consider the
-    content to be safe when capturing chunks of text.
-
-.. note::
-
-    Note that loops are scoped in Twig; therefore a variable declared inside a
-    ``for`` loop is not accessible outside the loop itself:
-
-    .. code-block:: jinja
-
-        {% for item in list %}
-            {% set foo = item %}
-        {% endfor %}
-
-        {# foo is NOT available #}
-
-    If you want to access the variable, just declare it before the loop:
-
-    .. code-block:: jinja
-
-        {% set foo = "" %}
-        {% for item in list %}
-            {% set foo = item %}
-        {% endfor %}
-
-        {# foo is available #}
diff --git a/vendor/twig/twig/doc/tags/spaceless.rst b/vendor/twig/twig/doc/tags/spaceless.rst
deleted file mode 100644
index b39cb27..0000000
--- a/vendor/twig/twig/doc/tags/spaceless.rst
+++ /dev/null
@@ -1,37 +0,0 @@
-``spaceless``
-=============
-
-Use the ``spaceless`` tag to remove whitespace *between HTML tags*, not
-whitespace within HTML tags or whitespace in plain text:
-
-.. code-block:: jinja
-
-    {% spaceless %}
-        <div>
-            <strong>foo</strong>
-        </div>
-    {% endspaceless %}
-
-    {# output will be <div><strong>foo</strong></div> #}
-
-This tag is not meant to "optimize" the size of the generated HTML content but
-merely to avoid extra whitespace between HTML tags to avoid browser rendering
-quirks under some circumstances.
-
-.. tip::
-
-    If you want to optimize the size of the generated HTML content, gzip
-    compress the output instead.
-
-.. tip::
-
-    If you want to create a tag that actually removes all extra whitespace in
-    an HTML string, be warned that this is not as easy as it seems to be
-    (think of ``textarea`` or ``pre`` tags for instance). Using a third-party
-    library like Tidy is probably a better idea.
-
-.. tip::
-
-    For more information on whitespace control, read the
-    :ref:`dedicated section <templates-whitespace-control>` of the documentation and learn how
-    you can also use the whitespace control modifier on your tags.
diff --git a/vendor/twig/twig/doc/tags/use.rst b/vendor/twig/twig/doc/tags/use.rst
deleted file mode 100644
index 071b197..0000000
--- a/vendor/twig/twig/doc/tags/use.rst
+++ /dev/null
@@ -1,124 +0,0 @@
-``use``
-=======
-
-.. versionadded:: 1.1
-    Horizontal reuse was added in Twig 1.1.
-
-.. note::
-
-    Horizontal reuse is an advanced Twig feature that is hardly ever needed in
-    regular templates. It is mainly used by projects that need to make
-    template blocks reusable without using inheritance.
-
-Template inheritance is one of the most powerful Twig's feature but it is
-limited to single inheritance; a template can only extend one other template.
-This limitation makes template inheritance simple to understand and easy to
-debug:
-
-.. code-block:: jinja
-
-    {% extends "base.html" %}
-
-    {% block title %}{% endblock %}
-    {% block content %}{% endblock %}
-
-Horizontal reuse is a way to achieve the same goal as multiple inheritance,
-but without the associated complexity:
-
-.. code-block:: jinja
-
-    {% extends "base.html" %}
-
-    {% use "blocks.html" %}
-
-    {% block title %}{% endblock %}
-    {% block content %}{% endblock %}
-
-The ``use`` statement tells Twig to import the blocks defined in
-``blocks.html`` into the current template (it's like macros, but for blocks):
-
-.. code-block:: jinja
-
-    {# blocks.html #}
-    
-    {% block sidebar %}{% endblock %}
-
-In this example, the ``use`` statement imports the ``sidebar`` block into the
-main template. The code is mostly equivalent to the following one (the
-imported blocks are not outputted automatically):
-
-.. code-block:: jinja
-
-    {% extends "base.html" %}
-
-    {% block sidebar %}{% endblock %}
-    {% block title %}{% endblock %}
-    {% block content %}{% endblock %}
-
-.. note::
-
-    The ``use`` tag only imports a template if it does not extend another
-    template, if it does not define macros, and if the body is empty. But it
-    can *use* other templates.
-
-.. note::
-
-    Because ``use`` statements are resolved independently of the context
-    passed to the template, the template reference cannot be an expression.
-
-The main template can also override any imported block. If the template
-already defines the ``sidebar`` block, then the one defined in ``blocks.html``
-is ignored. To avoid name conflicts, you can rename imported blocks:
-
-.. code-block:: jinja
-
-    {% extends "base.html" %}
-
-    {% use "blocks.html" with sidebar as base_sidebar, title as base_title %}
-
-    {% block sidebar %}{% endblock %}
-    {% block title %}{% endblock %}
-    {% block content %}{% endblock %}
-
-.. versionadded:: 1.3
-    The ``parent()`` support was added in Twig 1.3.
-
-The ``parent()`` function automatically determines the correct inheritance
-tree, so it can be used when overriding a block defined in an imported
-template:
-
-.. code-block:: jinja
-
-    {% extends "base.html" %}
-
-    {% use "blocks.html" %}
-
-    {% block sidebar %}
-        {{ parent() }}
-    {% endblock %}
-
-    {% block title %}{% endblock %}
-    {% block content %}{% endblock %}
-
-In this example, ``parent()`` will correctly call the ``sidebar`` block from
-the ``blocks.html`` template.
-
-.. tip::
-
-    In Twig 1.2, renaming allows you to simulate inheritance by calling the
-    "parent" block:
-
-    .. code-block:: jinja
-
-        {% extends "base.html" %}
-
-        {% use "blocks.html" with sidebar as parent_sidebar %}
-
-        {% block sidebar %}
-            {{ block('parent_sidebar') }}
-        {% endblock %}
-
-.. note::
-
-    You can use as many ``use`` statements as you want in any given template.
-    If two imported templates define the same block, the latest one wins.
diff --git a/vendor/twig/twig/doc/tags/verbatim.rst b/vendor/twig/twig/doc/tags/verbatim.rst
deleted file mode 100644
index fe61ca1..0000000
--- a/vendor/twig/twig/doc/tags/verbatim.rst
+++ /dev/null
@@ -1,24 +0,0 @@
-``verbatim``
-============
-
-.. versionadded:: 1.12
-    The ``verbatim`` tag was added in Twig 1.12 (it was named ``raw`` before).
-
-The ``verbatim`` tag marks sections as being raw text that should not be
-parsed. For example to put Twig syntax as example into a template you can use
-this snippet:
-
-.. code-block:: jinja
-
-    {% verbatim %}
-        <ul>
-        {% for item in seq %}
-            <li>{{ item }}</li>
-        {% endfor %}
-        </ul>
-    {% endverbatim %}
-
-.. note::
-
-    The ``verbatim`` tag works in the exact same way as the old ``raw`` tag,
-    but was renamed to avoid confusion with the ``raw`` filter.
\ No newline at end of file
diff --git a/vendor/twig/twig/doc/templates.rst b/vendor/twig/twig/doc/templates.rst
deleted file mode 100644
index 2d59b1a..0000000
--- a/vendor/twig/twig/doc/templates.rst
+++ /dev/null
@@ -1,888 +0,0 @@
-Twig for Template Designers
-===========================
-
-This document describes the syntax and semantics of the template engine and
-will be most useful as reference to those creating Twig templates.
-
-Synopsis
---------
-
-A template is simply a text file. It can generate any text-based format (HTML,
-XML, CSV, LaTeX, etc.). It doesn't have a specific extension, ``.html`` or
-``.xml`` are just fine.
-
-A template contains **variables** or **expressions**, which get replaced with
-values when the template is evaluated, and **tags**, which control the logic
-of the template.
-
-Below is a minimal template that illustrates a few basics. We will cover further
-details later on:
-
-.. code-block:: html+jinja
-
-    <!DOCTYPE html>
-    <html>
-        <head>
-            <title>My Webpage</title>
-        </head>
-        <body>
-            <ul id="navigation">
-            {% for item in navigation %}
-                <li><a href="{{ item.href }}">{{ item.caption }}</a></li>
-            {% endfor %}
-            </ul>
-
-            <h1>My Webpage</h1>
-            {{ a_variable }}
-        </body>
-    </html>
-
-There are two kinds of delimiters: ``{% ... %}`` and ``{{ ... }}``. The first
-one is used to execute statements such as for-loops, the latter prints the
-result of an expression to the template.
-
-IDEs Integration
-----------------
-
-Many IDEs support syntax highlighting and auto-completion for Twig:
-
-* *Textmate* via the `Twig bundle`_
-* *Vim* via the `Jinja syntax plugin`_ or the `vim-twig plugin`_
-* *Netbeans* via the `Twig syntax plugin`_ (until 7.1, native as of 7.2)
-* *PhpStorm* (native as of 2.1)
-* *Eclipse* via the `Twig plugin`_
-* *Sublime Text* via the `Twig bundle`_
-* *GtkSourceView* via the `Twig language definition`_ (used by gedit and other projects)
-* *Coda* and *SubEthaEdit* via the `Twig syntax mode`_
-* *Coda 2* via the `other Twig syntax mode`_
-* *Komodo* and *Komodo Edit* via the Twig highlight/syntax check mode
-* *Notepad++* via the `Notepad++ Twig Highlighter`_
-* *Emacs* via `web-mode.el`_
-* *Atom* via the `PHP-twig for atom`_
-
-Also, `TwigFiddle`_ is an online service that allows you to execute Twig templates
-from a browser; it supports all versions of Twig.
-
-Variables
----------
-
-The application passes variables to the templates for manipulation in the
-template. Variables may have attributes or elements you can access,
-too. The visual representation of a variable depends heavily on the application providing
-it.
-
-You can use a dot (``.``) to access attributes of a variable (methods or
-properties of a PHP object, or items of a PHP array), or the so-called
-"subscript" syntax (``[]``):
-
-.. code-block:: jinja
-
-    {{ foo.bar }}
-    {{ foo['bar'] }}
-
-When the attribute contains special characters (like ``-`` that would be
-interpreted as the minus operator), use the ``attribute`` function instead to
-access the variable attribute:
-
-.. code-block:: jinja
-
-    {# equivalent to the non-working foo.data-foo #}
-    {{ attribute(foo, 'data-foo') }}
-
-.. note::
-
-    It's important to know that the curly braces are *not* part of the
-    variable but the print statement. When accessing variables inside tags,
-    don't put the braces around them.
-
-If a variable or attribute does not exist, you will receive a ``null`` value
-when the ``strict_variables`` option is set to ``false``; alternatively, if ``strict_variables``
-is set, Twig will throw an error (see :ref:`environment options<environment_options>`).
-
-.. sidebar:: Implementation
-
-    For convenience's sake ``foo.bar`` does the following things on the PHP
-    layer:
-
-    * check if ``foo`` is an array and ``bar`` a valid element;
-    * if not, and if ``foo`` is an object, check that ``bar`` is a valid property;
-    * if not, and if ``foo`` is an object, check that ``bar`` is a valid method
-      (even if ``bar`` is the constructor - use ``__construct()`` instead);
-    * if not, and if ``foo`` is an object, check that ``getBar`` is a valid method;
-    * if not, and if ``foo`` is an object, check that ``isBar`` is a valid method;
-    * if not, return a ``null`` value.
-
-    ``foo['bar']`` on the other hand only works with PHP arrays:
-
-    * check if ``foo`` is an array and ``bar`` a valid element;
-    * if not, return a ``null`` value.
-
-.. note::
-
-    If you want to access a dynamic attribute of a variable, use the
-    :doc:`attribute<functions/attribute>` function instead.
-
-Global Variables
-~~~~~~~~~~~~~~~~
-
-The following variables are always available in templates:
-
-* ``_self``: references the current template (deprecated since Twig 1.20);
-* ``_context``: references the current context;
-* ``_charset``: references the current charset.
-
-Setting Variables
-~~~~~~~~~~~~~~~~~
-
-You can assign values to variables inside code blocks. Assignments use the
-:doc:`set<tags/set>` tag:
-
-.. code-block:: jinja
-
-    {% set foo = 'foo' %}
-    {% set foo = [1, 2] %}
-    {% set foo = {'foo': 'bar'} %}
-
-Filters
--------
-
-Variables can be modified by **filters**. Filters are separated from the
-variable by a pipe symbol (``|``) and may have optional arguments in
-parentheses. Multiple filters can be chained. The output of one filter is
-applied to the next.
-
-The following example removes all HTML tags from the ``name`` and title-cases
-it:
-
-.. code-block:: jinja
-
-    {{ name|striptags|title }}
-
-Filters that accept arguments have parentheses around the arguments. This
-example will join a list by commas:
-
-.. code-block:: jinja
-
-    {{ list|join(', ') }}
-
-To apply a filter on a section of code, wrap it in the
-:doc:`filter<tags/filter>` tag:
-
-.. code-block:: jinja
-
-    {% filter upper %}
-        This text becomes uppercase
-    {% endfilter %}
-
-Go to the :doc:`filters<filters/index>` page to learn more about built-in
-filters.
-
-Functions
----------
-
-Functions can be called to generate content. Functions are called by their
-name followed by parentheses (``()``) and may have arguments.
-
-For instance, the ``range`` function returns a list containing an arithmetic
-progression of integers:
-
-.. code-block:: jinja
-
-    {% for i in range(0, 3) %}
-        {{ i }},
-    {% endfor %}
-
-Go to the :doc:`functions<functions/index>` page to learn more about the
-built-in functions.
-
-Named Arguments
----------------
-
-.. versionadded:: 1.12
-    Support for named arguments was added in Twig 1.12.
-
-.. code-block:: jinja
-
-    {% for i in range(low=1, high=10, step=2) %}
-        {{ i }},
-    {% endfor %}
-
-Using named arguments makes your templates more explicit about the meaning of
-the values you pass as arguments:
-
-.. code-block:: jinja
-
-    {{ data|convert_encoding('UTF-8', 'iso-2022-jp') }}
-
-    {# versus #}
-
-    {{ data|convert_encoding(from='iso-2022-jp', to='UTF-8') }}
-
-Named arguments also allow you to skip some arguments for which you don't want
-to change the default value:
-
-.. code-block:: jinja
-
-    {# the first argument is the date format, which defaults to the global date format if null is passed #}
-    {{ "now"|date(null, "Europe/Paris") }}
-
-    {# or skip the format value by using a named argument for the time zone #}
-    {{ "now"|date(timezone="Europe/Paris") }}
-
-You can also use both positional and named arguments in one call, in which
-case positional arguments must always come before named arguments:
-
-.. code-block:: jinja
-
-    {{ "now"|date('d/m/Y H:i', timezone="Europe/Paris") }}
-
-.. tip::
-
-    Each function and filter documentation page has a section where the names
-    of all arguments are listed when supported.
-
-Control Structure
------------------
-
-A control structure refers to all those things that control the flow of a
-program - conditionals (i.e. ``if``/``elseif``/``else``), ``for``-loops, as
-well as things like blocks. Control structures appear inside ``{% ... %}``
-blocks.
-
-For example, to display a list of users provided in a variable called
-``users``, use the :doc:`for<tags/for>` tag:
-
-.. code-block:: jinja
-
-    <h1>Members</h1>
-    <ul>
-        {% for user in users %}
-            <li>{{ user.username|e }}</li>
-        {% endfor %}
-    </ul>
-
-The :doc:`if<tags/if>` tag can be used to test an expression:
-
-.. code-block:: jinja
-
-    {% if users|length > 0 %}
-        <ul>
-            {% for user in users %}
-                <li>{{ user.username|e }}</li>
-            {% endfor %}
-        </ul>
-    {% endif %}
-
-Go to the :doc:`tags<tags/index>` page to learn more about the built-in tags.
-
-Comments
---------
-
-To comment-out part of a line in a template, use the comment syntax ``{# ...
-#}``. This is useful for debugging or to add information for other template
-designers or yourself:
-
-.. code-block:: jinja
-
-    {# note: disabled template because we no longer use this
-        {% for user in users %}
-            ...
-        {% endfor %}
-    #}
-
-Including other Templates
--------------------------
-
-The :doc:`include<tags/include>` tag is useful to include a template and
-return the rendered content of that template into the current one:
-
-.. code-block:: jinja
-
-    {% include 'sidebar.html' %}
-
-Per default included templates are passed the current context.
-
-The context that is passed to the included template includes variables defined
-in the template:
-
-.. code-block:: jinja
-
-    {% for box in boxes %}
-        {% include "render_box.html" %}
-    {% endfor %}
-
-The included template ``render_box.html`` is able to access ``box``.
-
-The filename of the template depends on the template loader. For instance, the
-``Twig_Loader_Filesystem`` allows you to access other templates by giving the
-filename. You can access templates in subdirectories with a slash:
-
-.. code-block:: jinja
-
-    {% include "sections/articles/sidebar.html" %}
-
-This behavior depends on the application embedding Twig.
-
-Template Inheritance
---------------------
-
-The most powerful part of Twig is template inheritance. Template inheritance
-allows you to build a base "skeleton" template that contains all the common
-elements of your site and defines **blocks** that child templates can
-override.
-
-Sounds complicated but it is very basic. It's easier to understand it by
-starting with an example.
-
-Let's define a base template, ``base.html``, which defines a simple HTML
-skeleton document that you might use for a simple two-column page:
-
-.. code-block:: html+jinja
-
-    <!DOCTYPE html>
-    <html>
-        <head>
-            {% block head %}
-                <link rel="stylesheet" href="style.css" />
-                <title>{% block title %}{% endblock %} - My Webpage</title>
-            {% endblock %}
-        </head>
-        <body>
-            <div id="content">{% block content %}{% endblock %}</div>
-            <div id="footer">
-                {% block footer %}
-                    &copy; Copyright 2011 by <a href="http://domain.invalid/">you</a>.
-                {% endblock %}
-            </div>
-        </body>
-    </html>
-
-In this example, the :doc:`block<tags/block>` tags define four blocks that
-child templates can fill in. All the ``block`` tag does is to tell the
-template engine that a child template may override those portions of the
-template.
-
-A child template might look like this:
-
-.. code-block:: jinja
-
-    {% extends "base.html" %}
-
-    {% block title %}Index{% endblock %}
-    {% block head %}
-        {{ parent() }}
-        <style type="text/css">
-            .important { color: #336699; }
-        </style>
-    {% endblock %}
-    {% block content %}
-        <h1>Index</h1>
-        <p class="important">
-            Welcome to my awesome homepage.
-        </p>
-    {% endblock %}
-
-The :doc:`extends<tags/extends>` tag is the key here. It tells the template
-engine that this template "extends" another template. When the template system
-evaluates this template, first it locates the parent. The extends tag should
-be the first tag in the template.
-
-Note that since the child template doesn't define the ``footer`` block, the
-value from the parent template is used instead.
-
-It's possible to render the contents of the parent block by using the
-:doc:`parent<functions/parent>` function. This gives back the results of the
-parent block:
-
-.. code-block:: jinja
-
-    {% block sidebar %}
-        <h3>Table Of Contents</h3>
-        ...
-        {{ parent() }}
-    {% endblock %}
-
-.. tip::
-
-    The documentation page for the :doc:`extends<tags/extends>` tag describes
-    more advanced features like block nesting, scope, dynamic inheritance, and
-    conditional inheritance.
-
-.. note::
-
-    Twig also supports multiple inheritance with the so called horizontal reuse
-    with the help of the :doc:`use<tags/use>` tag. This is an advanced feature
-    hardly ever needed in regular templates.
-
-HTML Escaping
--------------
-
-When generating HTML from templates, there's always a risk that a variable
-will include characters that affect the resulting HTML. There are two
-approaches: manually escaping each variable or automatically escaping
-everything by default.
-
-Twig supports both, automatic escaping is enabled by default.
-
-.. note::
-
-    Automatic escaping is only supported if the *escaper* extension has been
-    enabled (which is the default).
-
-Working with Manual Escaping
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-
-If manual escaping is enabled, it is **your** responsibility to escape
-variables if needed. What to escape? Any variable you don't trust.
-
-Escaping works by piping the variable through the
-:doc:`escape<filters/escape>` or ``e`` filter:
-
-.. code-block:: jinja
-
-    {{ user.username|e }}
-
-By default, the ``escape`` filter uses the ``html`` strategy, but depending on
-the escaping context, you might want to explicitly use any other available
-strategies:
-
-.. code-block:: jinja
-
-    {{ user.username|e('js') }}
-    {{ user.username|e('css') }}
-    {{ user.username|e('url') }}
-    {{ user.username|e('html_attr') }}
-
-Working with Automatic Escaping
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-
-Whether automatic escaping is enabled or not, you can mark a section of a
-template to be escaped or not by using the :doc:`autoescape<tags/autoescape>`
-tag:
-
-.. code-block:: jinja
-
-    {% autoescape %}
-        Everything will be automatically escaped in this block (using the HTML strategy)
-    {% endautoescape %}
-
-By default, auto-escaping uses the ``html`` escaping strategy. If you output
-variables in other contexts, you need to explicitly escape them with the
-appropriate escaping strategy:
-
-.. code-block:: jinja
-
-    {% autoescape 'js' %}
-        Everything will be automatically escaped in this block (using the JS strategy)
-    {% endautoescape %}
-
-Escaping
---------
-
-It is sometimes desirable or even necessary to have Twig ignore parts it would
-otherwise handle as variables or blocks. For example if the default syntax is
-used and you want to use ``{{`` as raw string in the template and not start a
-variable you have to use a trick.
-
-The easiest way is to output the variable delimiter (``{{``) by using a variable
-expression:
-
-.. code-block:: jinja
-
-    {{ '{{' }}
-
-For bigger sections it makes sense to mark a block
-:doc:`verbatim<tags/verbatim>`.
-
-Macros
-------
-
-.. versionadded:: 1.12
-    Support for default argument values was added in Twig 1.12.
-
-Macros are comparable with functions in regular programming languages. They
-are useful to reuse often used HTML fragments to not repeat yourself.
-
-A macro is defined via the :doc:`macro<tags/macro>` tag. Here is a small example
-(subsequently called ``forms.html``) of a macro that renders a form element:
-
-.. code-block:: jinja
-
-    {% macro input(name, value, type, size) %}
-        <input type="{{ type|default('text') }}" name="{{ name }}" value="{{ value|e }}" size="{{ size|default(20) }}" />
-    {% endmacro %}
-
-Macros can be defined in any template, and need to be "imported" via the
-:doc:`import<tags/import>` tag before being used:
-
-.. code-block:: jinja
-
-    {% import "forms.html" as forms %}
-
-    <p>{{ forms.input('username') }}</p>
-
-Alternatively, you can import individual macro names from a template into the
-current namespace via the :doc:`from<tags/from>` tag and optionally alias them:
-
-.. code-block:: jinja
-
-    {% from 'forms.html' import input as input_field %}
-
-    <dl>
-        <dt>Username</dt>
-        <dd>{{ input_field('username') }}</dd>
-        <dt>Password</dt>
-        <dd>{{ input_field('password', '', 'password') }}</dd>
-    </dl>
-
-A default value can also be defined for macro arguments when not provided in a
-macro call:
-
-.. code-block:: jinja
-
-    {% macro input(name, value = "", type = "text", size = 20) %}
-        <input type="{{ type }}" name="{{ name }}" value="{{ value|e }}" size="{{ size }}" />
-    {% endmacro %}
-
-If extra positional arguments are passed to a macro call, they end up in the
-special ``varargs`` variable as a list of values.
-
-.. _twig-expressions:
-
-Expressions
------------
-
-Twig allows expressions everywhere. These work very similar to regular PHP and
-even if you're not working with PHP you should feel comfortable with it.
-
-.. note::
-
-    The operator precedence is as follows, with the lowest-precedence
-    operators listed first: ``b-and``, ``b-xor``, ``b-or``, ``or``, ``and``,
-    ``==``, ``!=``, ``<``, ``>``, ``>=``, ``<=``, ``in``, ``matches``,
-    ``starts with``, ``ends with``, ``..``, ``+``, ``-``, ``~``, ``*``, ``/``,
-    ``//``, ``%``, ``is``, ``**``, ``|``, ``[]``, and ``.``:
-
-    .. code-block:: jinja
-
-        {% set greeting = 'Hello ' %}
-        {% set name = 'Fabien' %}
-
-        {{ greeting ~ name|lower }}   {# Hello fabien #}
-
-        {# use parenthesis to change precedence #}
-        {{ (greeting ~ name)|lower }} {# hello fabien #}
-
-Literals
-~~~~~~~~
-
-.. versionadded:: 1.5
-    Support for hash keys as names and expressions was added in Twig 1.5.
-
-The simplest form of expressions are literals. Literals are representations
-for PHP types such as strings, numbers, and arrays. The following literals
-exist:
-
-* ``"Hello World"``: Everything between two double or single quotes is a
-  string. They are useful whenever you need a string in the template (for
-  example as arguments to function calls, filters or just to extend or include
-  a template). A string can contain a delimiter if it is preceded by a
-  backslash (``\``) -- like in ``'It\'s good'``.
-
-* ``42`` / ``42.23``: Integers and floating point numbers are created by just
-  writing the number down. If a dot is present the number is a float,
-  otherwise an integer.
-
-* ``["foo", "bar"]``: Arrays are defined by a sequence of expressions
-  separated by a comma (``,``) and wrapped with squared brackets (``[]``).
-
-* ``{"foo": "bar"}``: Hashes are defined by a list of keys and values
-  separated by a comma (``,``) and wrapped with curly braces (``{}``):
-
-  .. code-block:: jinja
-
-    {# keys as string #}
-    { 'foo': 'foo', 'bar': 'bar' }
-
-    {# keys as names (equivalent to the previous hash) -- as of Twig 1.5 #}
-    { foo: 'foo', bar: 'bar' }
-
-    {# keys as integer #}
-    { 2: 'foo', 4: 'bar' }
-
-    {# keys as expressions (the expression must be enclosed into parentheses) -- as of Twig 1.5 #}
-    { (1 + 1): 'foo', (a ~ 'b'): 'bar' }
-
-* ``true`` / ``false``: ``true`` represents the true value, ``false``
-  represents the false value.
-
-* ``null``: ``null`` represents no specific value. This is the value returned
-  when a variable does not exist. ``none`` is an alias for ``null``.
-
-Arrays and hashes can be nested:
-
-.. code-block:: jinja
-
-    {% set foo = [1, {"foo": "bar"}] %}
-
-.. tip::
-
-    Using double-quoted or single-quoted strings has no impact on performance
-    but string interpolation is only supported in double-quoted strings.
-
-Math
-~~~~
-
-Twig allows you to calculate with values. This is rarely useful in templates
-but exists for completeness' sake. The following operators are supported:
-
-* ``+``: Adds two objects together (the operands are casted to numbers). ``{{
-  1 + 1 }}`` is ``2``.
-
-* ``-``: Subtracts the second number from the first one. ``{{ 3 - 2 }}`` is
-  ``1``.
-
-* ``/``: Divides two numbers. The returned value will be a floating point
-  number. ``{{ 1 / 2 }}`` is ``{{ 0.5 }}``.
-
-* ``%``: Calculates the remainder of an integer division. ``{{ 11 % 7 }}`` is
-  ``4``.
-
-* ``//``: Divides two numbers and returns the floored integer result. ``{{ 20
-  // 7 }}`` is ``2``, ``{{ -20  // 7 }}`` is ``-3`` (this is just syntactic
-  sugar for the :doc:`round<filters/round>` filter).
-
-* ``*``: Multiplies the left operand with the right one. ``{{ 2 * 2 }}`` would
-  return ``4``.
-
-* ``**``: Raises the left operand to the power of the right operand. ``{{ 2 **
-  3 }}`` would return ``8``.
-
-Logic
-~~~~~
-
-You can combine multiple expressions with the following operators:
-
-* ``and``: Returns true if the left and the right operands are both true.
-
-* ``or``: Returns true if the left or the right operand is true.
-
-* ``not``: Negates a statement.
-
-* ``(expr)``: Groups an expression.
-
-.. note::
-
-    Twig also support bitwise operators (``b-and``, ``b-xor``, and ``b-or``).
-
-.. note::
-
-    Operators are case sensitive.
-
-Comparisons
-~~~~~~~~~~~
-
-The following comparison operators are supported in any expression: ``==``,
-``!=``, ``<``, ``>``, ``>=``, and ``<=``.
-
-You can also check if a string ``starts with`` or ``ends with`` another
-string:
-
-.. code-block:: jinja
-
-    {% if 'Fabien' starts with 'F' %}
-    {% endif %}
-
-    {% if 'Fabien' ends with 'n' %}
-    {% endif %}
-
-.. note::
-
-    For complex string comparisons, the ``matches`` operator allows you to use
-    `regular expressions`_:
-
-    .. code-block:: jinja
-
-        {% if phone matches '/^[\\d\\.]+$/' %}
-        {% endif %}
-
-Containment Operator
-~~~~~~~~~~~~~~~~~~~~
-
-The ``in`` operator performs containment test.
-
-It returns ``true`` if the left operand is contained in the right:
-
-.. code-block:: jinja
-
-    {# returns true #}
-
-    {{ 1 in [1, 2, 3] }}
-
-    {{ 'cd' in 'abcde' }}
-
-.. tip::
-
-    You can use this filter to perform a containment test on strings, arrays,
-    or objects implementing the ``Traversable`` interface.
-
-To perform a negative test, use the ``not in`` operator:
-
-.. code-block:: jinja
-
-    {% if 1 not in [1, 2, 3] %}
-
-    {# is equivalent to #}
-    {% if not (1 in [1, 2, 3]) %}
-
-Test Operator
-~~~~~~~~~~~~~
-
-The ``is`` operator performs tests. Tests can be used to test a variable against
-a common expression. The right operand is name of the test:
-
-.. code-block:: jinja
-
-    {# find out if a variable is odd #}
-
-    {{ name is odd }}
-
-Tests can accept arguments too:
-
-.. code-block:: jinja
-
-    {% if post.status is constant('Post::PUBLISHED') %}
-
-Tests can be negated by using the ``is not`` operator:
-
-.. code-block:: jinja
-
-    {% if post.status is not constant('Post::PUBLISHED') %}
-
-    {# is equivalent to #}
-    {% if not (post.status is constant('Post::PUBLISHED')) %}
-
-Go to the :doc:`tests<tests/index>` page to learn more about the built-in
-tests.
-
-Other Operators
-~~~~~~~~~~~~~~~
-
-.. versionadded:: 1.12.0
-    Support for the extended ternary operator was added in Twig 1.12.0.
-
-The following operators are very useful but don't fit into any of the other
-categories:
-
-* ``..``: Creates a sequence based on the operand before and after the
-  operator (this is just syntactic sugar for the :doc:`range<functions/range>`
-  function).
-
-* ``|``: Applies a filter.
-
-* ``~``: Converts all operands into strings and concatenates them. ``{{ "Hello
-  " ~ name ~ "!" }}`` would return (assuming ``name`` is ``'John'``) ``Hello
-  John!``.
-
-* ``.``, ``[]``: Gets an attribute of an object.
-
-* ``?:``: The ternary operator:
-
-  .. code-block:: jinja
-
-      {{ foo ? 'yes' : 'no' }}
-
-      {# as of Twig 1.12.0 #}
-      {{ foo ?: 'no' }} is the same as {{ foo ? foo : 'no' }}
-      {{ foo ? 'yes' }} is the same as {{ foo ? 'yes' : '' }}
-
-String Interpolation
-~~~~~~~~~~~~~~~~~~~~
-
-.. versionadded:: 1.5
-    String interpolation was added in Twig 1.5.
-
-String interpolation (`#{expression}`) allows any valid expression to appear
-within a *double-quoted string*. The result of evaluating that expression is
-inserted into the string:
-
-.. code-block:: jinja
-
-    {{ "foo #{bar} baz" }}
-    {{ "foo #{1 + 2} baz" }}
-
-.. _templates-whitespace-control:
-
-Whitespace Control
-------------------
-
-.. versionadded:: 1.1
-    Tag level whitespace control was added in Twig 1.1.
-
-The first newline after a template tag is removed automatically (like in PHP.)
-Whitespace is not further modified by the template engine, so each whitespace
-(spaces, tabs, newlines etc.) is returned unchanged.
-
-Use the ``spaceless`` tag to remove whitespace *between HTML tags*:
-
-.. code-block:: jinja
-
-    {% spaceless %}
-        <div>
-            <strong>foo bar</strong>
-        </div>
-    {% endspaceless %}
-
-    {# output will be <div><strong>foo bar</strong></div> #}
-
-In addition to the spaceless tag you can also control whitespace on a per tag
-level. By using the whitespace control modifier on your tags, you can trim
-leading and or trailing whitespace:
-
-.. code-block:: jinja
-
-    {% set value = 'no spaces' %}
-    {#- No leading/trailing whitespace -#}
-    {%- if true -%}
-        {{- value -}}
-    {%- endif -%}
-
-    {# output 'no spaces' #}
-
-The above sample shows the default whitespace control modifier, and how you can
-use it to remove whitespace around tags.  Trimming space will consume all whitespace
-for that side of the tag.  It is possible to use whitespace trimming on one side
-of a tag:
-
-.. code-block:: jinja
-
-    {% set value = 'no spaces' %}
-    <li>    {{- value }}    </li>
-
-    {# outputs '<li>no spaces    </li>' #}
-
-Extensions
-----------
-
-Twig can be easily extended.
-
-If you are looking for new tags, filters, or functions, have a look at the Twig official
-`extension repository`_.
-
-If you want to create your own, read the :ref:`Creating an
-Extension<creating_extensions>` chapter.
-
-.. _`Twig bundle`:                https://github.com/Anomareh/PHP-Twig.tmbundle
-.. _`Jinja syntax plugin`:        http://jinja.pocoo.org/docs/integration/#vim
-.. _`vim-twig plugin`:            https://github.com/evidens/vim-twig
-.. _`Twig syntax plugin`:         http://plugins.netbeans.org/plugin/37069/php-twig
-.. _`Twig plugin`:                https://github.com/pulse00/Twig-Eclipse-Plugin
-.. _`Twig language definition`:   https://github.com/gabrielcorpse/gedit-twig-template-language
-.. _`extension repository`:       http://github.com/twigphp/Twig-extensions
-.. _`Twig syntax mode`:           https://github.com/bobthecow/Twig-HTML.mode
-.. _`other Twig syntax mode`:     https://github.com/muxx/Twig-HTML.mode
-.. _`Notepad++ Twig Highlighter`: https://github.com/Banane9/notepadplusplus-twig
-.. _`web-mode.el`:                http://web-mode.org/
-.. _`regular expressions`:        http://php.net/manual/en/pcre.pattern.php
-.. _`PHP-twig for atom`:          https://github.com/reesef/php-twig
-.. _`TwigFiddle`:                 http://twigfiddle.com/
diff --git a/vendor/twig/twig/doc/tests/constant.rst b/vendor/twig/twig/doc/tests/constant.rst
deleted file mode 100644
index 8d0724a..0000000
--- a/vendor/twig/twig/doc/tests/constant.rst
+++ /dev/null
@@ -1,22 +0,0 @@
-``constant``
-============
-
-.. versionadded: 1.13.1
-    constant now accepts object instances as the second argument.
-
-``constant`` checks if a variable has the exact same value as a constant. You
-can use either global constants or class constants:
-
-.. code-block:: jinja
-
-    {% if post.status is constant('Post::PUBLISHED') %}
-        the status attribute is exactly the same as Post::PUBLISHED
-    {% endif %}
-
-You can test constants from object instances as well:
-
-.. code-block:: jinja
-
-    {% if post.status is constant('PUBLISHED', post) %}
-        the status attribute is exactly the same as Post::PUBLISHED
-    {% endif %}
diff --git a/vendor/twig/twig/doc/tests/defined.rst b/vendor/twig/twig/doc/tests/defined.rst
deleted file mode 100644
index 702ce72..0000000
--- a/vendor/twig/twig/doc/tests/defined.rst
+++ /dev/null
@@ -1,30 +0,0 @@
-``defined``
-===========
-
-``defined`` checks if a variable is defined in the current context. This is very
-useful if you use the ``strict_variables`` option:
-
-.. code-block:: jinja
-
-    {# defined works with variable names #}
-    {% if foo is defined %}
-        ...
-    {% endif %}
-
-    {# and attributes on variables names #}
-    {% if foo.bar is defined %}
-        ...
-    {% endif %}
-
-    {% if foo['bar'] is defined %}
-        ...
-    {% endif %}
-
-When using the ``defined`` test on an expression that uses variables in some
-method calls, be sure that they are all defined first:
-
-.. code-block:: jinja
-
-    {% if var is defined and foo.method(var) is defined %}
-        ...
-    {% endif %}
diff --git a/vendor/twig/twig/doc/tests/divisibleby.rst b/vendor/twig/twig/doc/tests/divisibleby.rst
deleted file mode 100644
index 6c693b2..0000000
--- a/vendor/twig/twig/doc/tests/divisibleby.rst
+++ /dev/null
@@ -1,14 +0,0 @@
-``divisible by``
-================
-
-.. versionadded:: 1.14.2
-    The ``divisible by`` test was added in Twig 1.14.2 as an alias for
-    ``divisibleby``.
-
-``divisible by`` checks if a variable is divisible by a number:
-
-.. code-block:: jinja
-
-    {% if loop.index is divisible by(3) %}
-        ...
-    {% endif %}
diff --git a/vendor/twig/twig/doc/tests/empty.rst b/vendor/twig/twig/doc/tests/empty.rst
deleted file mode 100644
index e5b5599..0000000
--- a/vendor/twig/twig/doc/tests/empty.rst
+++ /dev/null
@@ -1,11 +0,0 @@
-``empty``
-=========
-
-``empty`` checks if a variable is empty:
-
-.. code-block:: jinja
-
-    {# evaluates to true if the foo variable is null, false, an empty array, or the empty string #}
-    {% if foo is empty %}
-        ...
-    {% endif %}
diff --git a/vendor/twig/twig/doc/tests/even.rst b/vendor/twig/twig/doc/tests/even.rst
deleted file mode 100644
index 6ab5cc3..0000000
--- a/vendor/twig/twig/doc/tests/even.rst
+++ /dev/null
@@ -1,10 +0,0 @@
-``even``
-========
-
-``even`` returns ``true`` if the given number is even:
-
-.. code-block:: jinja
-
-    {{ var is even }}
-
-.. seealso:: :doc:`odd<../tests/odd>`
diff --git a/vendor/twig/twig/doc/tests/index.rst b/vendor/twig/twig/doc/tests/index.rst
deleted file mode 100644
index c63208e..0000000
--- a/vendor/twig/twig/doc/tests/index.rst
+++ /dev/null
@@ -1,15 +0,0 @@
-Tests
-=====
-
-.. toctree::
-    :maxdepth: 1
-
-    constant
-    defined
-    divisibleby
-    empty
-    even
-    iterable
-    null
-    odd
-    sameas
diff --git a/vendor/twig/twig/doc/tests/iterable.rst b/vendor/twig/twig/doc/tests/iterable.rst
deleted file mode 100644
index 89a172f..0000000
--- a/vendor/twig/twig/doc/tests/iterable.rst
+++ /dev/null
@@ -1,19 +0,0 @@
-``iterable``
-============
-
-.. versionadded:: 1.7
-    The iterable test was added in Twig 1.7.
-
-``iterable`` checks if a variable is an array or a traversable object:
-
-.. code-block:: jinja
-
-    {# evaluates to true if the foo variable is iterable #}
-    {% if users is iterable %}
-        {% for user in users %}
-            Hello {{ user }}!
-        {% endfor %}
-    {% else %}
-        {# users is probably a string #}
-        Hello {{ users }}!
-    {% endif %}
diff --git a/vendor/twig/twig/doc/tests/null.rst b/vendor/twig/twig/doc/tests/null.rst
deleted file mode 100644
index 44eec62..0000000
--- a/vendor/twig/twig/doc/tests/null.rst
+++ /dev/null
@@ -1,12 +0,0 @@
-``null``
-========
-
-``null`` returns ``true`` if the variable is ``null``:
-
-.. code-block:: jinja
-
-    {{ var is null }}
-
-.. note::
-
-    ``none`` is an alias for ``null``.
diff --git a/vendor/twig/twig/doc/tests/odd.rst b/vendor/twig/twig/doc/tests/odd.rst
deleted file mode 100644
index 9eece77..0000000
--- a/vendor/twig/twig/doc/tests/odd.rst
+++ /dev/null
@@ -1,10 +0,0 @@
-``odd``
-=======
-
-``odd`` returns ``true`` if the given number is odd:
-
-.. code-block:: jinja
-
-    {{ var is odd }}
-
-.. seealso:: :doc:`even<../tests/even>`
diff --git a/vendor/twig/twig/doc/tests/sameas.rst b/vendor/twig/twig/doc/tests/sameas.rst
deleted file mode 100644
index 16f904d..0000000
--- a/vendor/twig/twig/doc/tests/sameas.rst
+++ /dev/null
@@ -1,14 +0,0 @@
-``same as``
-===========
-
-.. versionadded:: 1.14.2
-    The ``same as`` test was added in Twig 1.14.2 as an alias for ``sameas``.
-
-``same as`` checks if a variable is the same as another variable.
-This is the equivalent to ``===`` in PHP:
-
-.. code-block:: jinja
-
-    {% if foo.attribute is same as(false) %}
-        the foo attribute really is the 'false' PHP value
-    {% endif %}
diff --git a/vendor/twig/twig/ext/twig/.gitignore b/vendor/twig/twig/ext/twig/.gitignore
deleted file mode 100644
index 56ea76c..0000000
--- a/vendor/twig/twig/ext/twig/.gitignore
+++ /dev/null
@@ -1,30 +0,0 @@
-*.sw*
-.deps
-Makefile
-Makefile.fragments
-Makefile.global
-Makefile.objects
-acinclude.m4
-aclocal.m4
-build/
-config.cache
-config.guess
-config.h
-config.h.in
-config.log
-config.nice
-config.status
-config.sub
-configure
-configure.in
-install-sh
-libtool
-ltmain.sh
-missing
-mkinstalldirs
-run-tests.php
-twig.loT
-.libs/
-modules/
-twig.la
-twig.lo
diff --git a/vendor/twig/twig/ext/twig/config.m4 b/vendor/twig/twig/ext/twig/config.m4
deleted file mode 100644
index 83486be..0000000
--- a/vendor/twig/twig/ext/twig/config.m4
+++ /dev/null
@@ -1,8 +0,0 @@
-dnl config.m4 for extension twig
-
-PHP_ARG_ENABLE(twig, whether to enable twig support,
-[  --enable-twig           Enable twig support])
-
-if test "$PHP_TWIG" != "no"; then
-  PHP_NEW_EXTENSION(twig, twig.c, $ext_shared)
-fi
diff --git a/vendor/twig/twig/ext/twig/config.w32 b/vendor/twig/twig/ext/twig/config.w32
deleted file mode 100644
index cb287b9..0000000
--- a/vendor/twig/twig/ext/twig/config.w32
+++ /dev/null
@@ -1,8 +0,0 @@
-// vim:ft=javascript
-
-ARG_ENABLE("twig", "Twig support", "no");
-
-if (PHP_TWIG != "no") {
-	AC_DEFINE('HAVE_TWIG', 1);
-	EXTENSION('twig', 'twig.c');
-}
diff --git a/vendor/twig/twig/ext/twig/php_twig.h b/vendor/twig/twig/ext/twig/php_twig.h
deleted file mode 100644
index 359cd43..0000000
--- a/vendor/twig/twig/ext/twig/php_twig.h
+++ /dev/null
@@ -1,35 +0,0 @@
-/*
-   +----------------------------------------------------------------------+
-   | Twig Extension                                                       |
-   +----------------------------------------------------------------------+
-   | Copyright (c) 2011 Derick Rethans                                    |
-   +----------------------------------------------------------------------+
-   | Redistribution and use in source and binary forms, with or without   |
-   | modification, are permitted provided that the conditions mentioned   |
-   | in the accompanying LICENSE file are met (BSD-3-Clause).             |
-   +----------------------------------------------------------------------+
-   | Author: Derick Rethans <derick@derickrethans.nl>                     |
-   +----------------------------------------------------------------------+
- */
-
-#ifndef PHP_TWIG_H
-#define PHP_TWIG_H
-
-#define PHP_TWIG_VERSION "1.22.2"
-
-#include "php.h"
-
-extern zend_module_entry twig_module_entry;
-#define phpext_twig_ptr &twig_module_entry
-#ifndef PHP_WIN32
-zend_module_entry *get_module(void);
-#endif
-
-#ifdef ZTS
-#include "TSRM.h"
-#endif
-
-PHP_FUNCTION(twig_template_get_attributes);
-PHP_RSHUTDOWN_FUNCTION(twig);
-
-#endif
diff --git a/vendor/twig/twig/ext/twig/twig.c b/vendor/twig/twig/ext/twig/twig.c
deleted file mode 100644
index 92d1add..0000000
--- a/vendor/twig/twig/ext/twig/twig.c
+++ /dev/null
@@ -1,1127 +0,0 @@
-/*
-   +----------------------------------------------------------------------+
-   | Twig Extension                                                       |
-   +----------------------------------------------------------------------+
-   | Copyright (c) 2011 Derick Rethans                                    |
-   +----------------------------------------------------------------------+
-   | Redistribution and use in source and binary forms, with or without   |
-   | modification, are permitted provided that the conditions mentioned   |
-   | in the accompanying LICENSE file are met (BSD-3-Clause).             |
-   +----------------------------------------------------------------------+
-   | Author: Derick Rethans <derick@derickrethans.nl>                     |
-   +----------------------------------------------------------------------+
- */
-
-#ifdef HAVE_CONFIG_H
-#include "config.h"
-#endif
-
-#include "php.h"
-#include "php_twig.h"
-#include "ext/standard/php_var.h"
-#include "ext/standard/php_string.h"
-#include "ext/standard/php_smart_str.h"
-#include "ext/spl/spl_exceptions.h"
-
-#include "Zend/zend_object_handlers.h"
-#include "Zend/zend_interfaces.h"
-#include "Zend/zend_exceptions.h"
-
-#ifndef Z_ADDREF_P
-#define Z_ADDREF_P(pz)                (pz)->refcount++
-#endif
-
-#define FREE_DTOR(z) 	\
-	zval_dtor(z); 		\
-	efree(z);
-
-#if PHP_VERSION_ID >= 50300
-	#define APPLY_TSRMLS_DC TSRMLS_DC
-	#define APPLY_TSRMLS_CC TSRMLS_CC
-	#define APPLY_TSRMLS_FETCH()
-#else
-	#define APPLY_TSRMLS_DC
-	#define APPLY_TSRMLS_CC
-	#define APPLY_TSRMLS_FETCH() TSRMLS_FETCH()
-#endif
-
-ZEND_BEGIN_ARG_INFO_EX(twig_template_get_attribute_args, ZEND_SEND_BY_VAL, ZEND_RETURN_VALUE, 6)
-	ZEND_ARG_INFO(0, template)
-	ZEND_ARG_INFO(0, object)
-	ZEND_ARG_INFO(0, item)
-	ZEND_ARG_INFO(0, arguments)
-	ZEND_ARG_INFO(0, type)
-	ZEND_ARG_INFO(0, isDefinedTest)
-ZEND_END_ARG_INFO()
-
-#ifndef PHP_FE_END
-#define PHP_FE_END { NULL, NULL, NULL}
-#endif
-
-static const zend_function_entry twig_functions[] = {
-	PHP_FE(twig_template_get_attributes, twig_template_get_attribute_args)
-	PHP_FE_END
-};
-
-PHP_RSHUTDOWN_FUNCTION(twig)
-{
-#if ZEND_DEBUG
-	CG(unclean_shutdown) = 0; /* get rid of PHPUnit's exit() and report memleaks */
-#endif
-	return SUCCESS;
-}
-
-zend_module_entry twig_module_entry = {
-	STANDARD_MODULE_HEADER,
-	"twig",
-	twig_functions,
-	NULL,
-	NULL,
-	NULL,
-	PHP_RSHUTDOWN(twig),
-	NULL,
-	PHP_TWIG_VERSION,
-	STANDARD_MODULE_PROPERTIES
-};
-
-
-#ifdef COMPILE_DL_TWIG
-ZEND_GET_MODULE(twig)
-#endif
-
-static int TWIG_ARRAY_KEY_EXISTS(zval *array, zval *key)
-{
-	if (Z_TYPE_P(array) != IS_ARRAY) {
-		return 0;
-	}
-
-	switch (Z_TYPE_P(key)) {
-		case IS_NULL:
-			return zend_hash_exists(Z_ARRVAL_P(array), "", 1);
-
-		case IS_BOOL:
-		case IS_DOUBLE:
-			convert_to_long(key);
-		case IS_LONG:
-			return zend_hash_index_exists(Z_ARRVAL_P(array), Z_LVAL_P(key));
-
-		default:
-			convert_to_string(key);
-			return zend_symtable_exists(Z_ARRVAL_P(array), Z_STRVAL_P(key), Z_STRLEN_P(key) + 1);
-	}
-}
-
-static int TWIG_INSTANCE_OF(zval *object, zend_class_entry *interface TSRMLS_DC)
-{
-	if (Z_TYPE_P(object) != IS_OBJECT) {
-		return 0;
-	}
-	return instanceof_function(Z_OBJCE_P(object), interface TSRMLS_CC);
-}
-
-static int TWIG_INSTANCE_OF_USERLAND(zval *object, char *interface TSRMLS_DC)
-{
-	zend_class_entry **pce;
-	if (Z_TYPE_P(object) != IS_OBJECT) {
-		return 0;
-	}
-	if (zend_lookup_class(interface, strlen(interface), &pce TSRMLS_CC) == FAILURE) {
-		return 0;
-	}
-	return instanceof_function(Z_OBJCE_P(object), *pce TSRMLS_CC);
-}
-
-static zval *TWIG_GET_ARRAYOBJECT_ELEMENT(zval *object, zval *offset TSRMLS_DC)
-{
-	zend_class_entry *ce = Z_OBJCE_P(object);
-	zval *retval;
-
-	if (Z_TYPE_P(object) == IS_OBJECT) {
-		SEPARATE_ARG_IF_REF(offset);
-		zend_call_method_with_1_params(&object, ce, NULL, "offsetget", &retval, offset);
-
-		zval_ptr_dtor(&offset);
-
-		if (!retval) {
-			if (!EG(exception)) {
-				zend_error(E_ERROR, "Undefined offset for object of type %s used as array", ce->name);
-			}
-			return NULL;
-		}
-
-		return retval;
-	}
-	return NULL;
-}
-
-static int TWIG_ISSET_ARRAYOBJECT_ELEMENT(zval *object, zval *offset TSRMLS_DC)
-{
-	zend_class_entry *ce = Z_OBJCE_P(object);
-	zval *retval;
-
-	if (Z_TYPE_P(object) == IS_OBJECT) {
-		SEPARATE_ARG_IF_REF(offset);
-		zend_call_method_with_1_params(&object, ce, NULL, "offsetexists", &retval, offset);
-
-		zval_ptr_dtor(&offset);
-
-		if (!retval) {
-			if (!EG(exception)) {
-				zend_error(E_ERROR, "Undefined offset for object of type %s used as array", ce->name);
-			}
-			return 0;
-		}
-
-		return (retval && Z_TYPE_P(retval) == IS_BOOL && Z_LVAL_P(retval));
-	}
-	return 0;
-}
-
-static char *TWIG_STRTOLOWER(const char *str, int str_len)
-{
-	char *item_dup;
-
-	item_dup = estrndup(str, str_len);
-	php_strtolower(item_dup, str_len);
-	return item_dup;
-}
-
-static zval *TWIG_CALL_USER_FUNC_ARRAY(zval *object, char *function, zval *arguments TSRMLS_DC)
-{
-	zend_fcall_info fci;
-	zval ***args = NULL;
-	int arg_count = 0;
-	HashTable *table;
-	HashPosition pos;
-	int i = 0;
-	zval *retval_ptr;
-	zval *zfunction;
-
-	if (arguments) {
-		table = HASH_OF(arguments);
-		args = safe_emalloc(sizeof(zval **), table->nNumOfElements, 0);
-
-		zend_hash_internal_pointer_reset_ex(table, &pos);
-
-		while (zend_hash_get_current_data_ex(table, (void **)&args[i], &pos) == SUCCESS) {
-			i++;
-			zend_hash_move_forward_ex(table, &pos);
-		}
-		arg_count = table->nNumOfElements;
-	}
-
-	MAKE_STD_ZVAL(zfunction);
-	ZVAL_STRING(zfunction, function, 1);
-	fci.size = sizeof(fci);
-	fci.function_table = EG(function_table);
-	fci.function_name = zfunction;
-	fci.symbol_table = NULL;
-#if PHP_VERSION_ID >= 50300
-	fci.object_ptr = object;
-#else
-	fci.object_pp = &object;
-#endif
-	fci.retval_ptr_ptr = &retval_ptr;
-	fci.param_count = arg_count;
-	fci.params = args;
-	fci.no_separation = 0;
-
-	if (zend_call_function(&fci, NULL TSRMLS_CC) == FAILURE) {
-		ALLOC_INIT_ZVAL(retval_ptr);
-		ZVAL_BOOL(retval_ptr, 0);
-	}
-
-	if (args) {
-		efree(fci.params);
-	}
-	FREE_DTOR(zfunction);
-	return retval_ptr;
-}
-
-static int TWIG_CALL_BOOLEAN(zval *object, char *functionName TSRMLS_DC)
-{
-	zval *ret;
-	int   res;
-
-	ret = TWIG_CALL_USER_FUNC_ARRAY(object, functionName, NULL TSRMLS_CC);
-	res = Z_LVAL_P(ret);
-	zval_ptr_dtor(&ret);
-	return res;
-}
-
-static zval *TWIG_GET_STATIC_PROPERTY(zval *class, char *prop_name TSRMLS_DC)
-{
-	zval **tmp_zval;
-	zend_class_entry *ce;
-
-	if (class == NULL || Z_TYPE_P(class) != IS_OBJECT) {
-		return NULL;
-	}
-
-	ce = zend_get_class_entry(class TSRMLS_CC);
-#if PHP_VERSION_ID >= 50400
-	tmp_zval = zend_std_get_static_property(ce, prop_name, strlen(prop_name), 0, NULL TSRMLS_CC);
-#else
-	tmp_zval = zend_std_get_static_property(ce, prop_name, strlen(prop_name), 0 TSRMLS_CC);
-#endif
-	return *tmp_zval;
-}
-
-static zval *TWIG_GET_ARRAY_ELEMENT_ZVAL(zval *class, zval *prop_name TSRMLS_DC)
-{
-	zval **tmp_zval;
-
-	if (class == NULL || Z_TYPE_P(class) != IS_ARRAY) {
-		if (class != NULL && Z_TYPE_P(class) == IS_OBJECT && TWIG_INSTANCE_OF(class, zend_ce_arrayaccess TSRMLS_CC)) {
-			// array access object
-			return TWIG_GET_ARRAYOBJECT_ELEMENT(class, prop_name TSRMLS_CC);
-		}
-		return NULL;
-	}
-
-	switch(Z_TYPE_P(prop_name)) {
-		case IS_NULL:
-			zend_hash_find(HASH_OF(class), "", 1, (void**) &tmp_zval);
-			return *tmp_zval;
-
-		case IS_BOOL:
-		case IS_DOUBLE:
-			convert_to_long(prop_name);
-		case IS_LONG:
-			zend_hash_index_find(HASH_OF(class), Z_LVAL_P(prop_name), (void **) &tmp_zval);
-			return *tmp_zval;
-
-		case IS_STRING:
-			zend_symtable_find(HASH_OF(class), Z_STRVAL_P(prop_name), Z_STRLEN_P(prop_name) + 1, (void**) &tmp_zval);
-			return *tmp_zval;
-	}
-
-	return NULL;
-}
-
-static zval *TWIG_GET_ARRAY_ELEMENT(zval *class, char *prop_name, int prop_name_length TSRMLS_DC)
-{
-	zval **tmp_zval;
-
-	if (class == NULL/* || Z_TYPE_P(class) != IS_ARRAY*/) {
-		return NULL;
-	}
-
-	if (class != NULL && Z_TYPE_P(class) == IS_OBJECT && TWIG_INSTANCE_OF(class, zend_ce_arrayaccess TSRMLS_CC)) {
-		// array access object
-		zval *tmp_name_zval;
-		zval *tmp_ret_zval;
-
-		ALLOC_INIT_ZVAL(tmp_name_zval);
-		ZVAL_STRING(tmp_name_zval, prop_name, 1);
-		tmp_ret_zval = TWIG_GET_ARRAYOBJECT_ELEMENT(class, tmp_name_zval TSRMLS_CC);
-		FREE_DTOR(tmp_name_zval);
-		return tmp_ret_zval;
-	}
-
-	if (zend_symtable_find(HASH_OF(class), prop_name, prop_name_length+1, (void**)&tmp_zval) == SUCCESS) {
-		return *tmp_zval;
-	}
-	return NULL;
-}
-
-static zval *TWIG_PROPERTY(zval *object, zval *propname TSRMLS_DC)
-{
-	zval *tmp = NULL;
-
-	if (Z_OBJ_HT_P(object)->read_property) {
-#if PHP_VERSION_ID >= 50400
-		tmp = Z_OBJ_HT_P(object)->read_property(object, propname, BP_VAR_IS, NULL TSRMLS_CC);
-#else
-		tmp = Z_OBJ_HT_P(object)->read_property(object, propname, BP_VAR_IS TSRMLS_CC);
-#endif
-		if (tmp == EG(uninitialized_zval_ptr)) {
-		        ZVAL_NULL(tmp);
-		}
-	}
-	return tmp;
-}
-
-static int TWIG_HAS_PROPERTY(zval *object, zval *propname TSRMLS_DC)
-{
-	if (Z_OBJ_HT_P(object)->has_property) {
-#if PHP_VERSION_ID >= 50400
-		return Z_OBJ_HT_P(object)->has_property(object, propname, 0, NULL TSRMLS_CC);
-#else
-		return Z_OBJ_HT_P(object)->has_property(object, propname, 0 TSRMLS_CC);
-#endif
-	}
-	return 0;
-}
-
-static int TWIG_HAS_DYNAMIC_PROPERTY(zval *object, char *prop, int prop_len TSRMLS_DC)
-{
-	if (Z_OBJ_HT_P(object)->get_properties) {
-		return zend_hash_quick_exists(
-				Z_OBJ_HT_P(object)->get_properties(object TSRMLS_CC), // the properties hash
-				prop,                                                 // property name
-				prop_len + 1,                                         // property length
-				zend_get_hash_value(prop, prop_len + 1)               // hash value
-			);
-	}
-	return 0;
-}
-
-static zval *TWIG_PROPERTY_CHAR(zval *object, char *propname TSRMLS_DC)
-{
-	zval *tmp_name_zval, *tmp;
-
-	ALLOC_INIT_ZVAL(tmp_name_zval);
-	ZVAL_STRING(tmp_name_zval, propname, 1);
-	tmp = TWIG_PROPERTY(object, tmp_name_zval TSRMLS_CC);
-	FREE_DTOR(tmp_name_zval);
-	return tmp;
-}
-
-static zval *TWIG_CALL_S(zval *object, char *method, char *arg0 TSRMLS_DC)
-{
-	zend_fcall_info fci;
-	zval **args[1];
-	zval *argument;
-	zval *zfunction;
-	zval *retval_ptr;
-
-	MAKE_STD_ZVAL(argument);
-	ZVAL_STRING(argument, arg0, 1);
-	args[0] = &argument;
-
-	MAKE_STD_ZVAL(zfunction);
-	ZVAL_STRING(zfunction, method, 1);
-	fci.size = sizeof(fci);
-	fci.function_table = EG(function_table);
-	fci.function_name = zfunction;
-	fci.symbol_table = NULL;
-#if PHP_VERSION_ID >= 50300
-	fci.object_ptr = object;
-#else
-	fci.object_pp = &object;
-#endif
-	fci.retval_ptr_ptr = &retval_ptr;
-	fci.param_count = 1;
-	fci.params = args;
-	fci.no_separation = 0;
-
-	if (zend_call_function(&fci, NULL TSRMLS_CC) == FAILURE) {
-		FREE_DTOR(zfunction);
-		zval_ptr_dtor(&argument);
-		return 0;
-	}
-	FREE_DTOR(zfunction);
-	zval_ptr_dtor(&argument);
-	return retval_ptr;
-}
-
-static int TWIG_CALL_SB(zval *object, char *method, char *arg0 TSRMLS_DC)
-{
-	zval *retval_ptr;
-	int success;
-
-	retval_ptr = TWIG_CALL_S(object, method, arg0 TSRMLS_CC);
-	success = (retval_ptr && (Z_TYPE_P(retval_ptr) == IS_BOOL) && Z_LVAL_P(retval_ptr));
-
-	if (retval_ptr) {
-		zval_ptr_dtor(&retval_ptr);
-	}
-
-	return success;
-}
-
-static int TWIG_CALL_ZZ(zval *object, char *method, zval *arg1, zval *arg2 TSRMLS_DC)
-{
-	zend_fcall_info fci;
-	zval **args[2];
-	zval *zfunction;
-	zval *retval_ptr;
-	int   success;
-
-	args[0] = &arg1;
-	args[1] = &arg2;
-
-	MAKE_STD_ZVAL(zfunction);
-	ZVAL_STRING(zfunction, method, 1);
-	fci.size = sizeof(fci);
-	fci.function_table = EG(function_table);
-	fci.function_name = zfunction;
-	fci.symbol_table = NULL;
-#if PHP_VERSION_ID >= 50300
-	fci.object_ptr = object;
-#else
-	fci.object_pp = &object;
-#endif
-	fci.retval_ptr_ptr = &retval_ptr;
-	fci.param_count = 2;
-	fci.params = args;
-	fci.no_separation = 0;
-
-	if (zend_call_function(&fci, NULL TSRMLS_CC) == FAILURE) {
-		FREE_DTOR(zfunction);
-		return 0;
-	}
-
-	FREE_DTOR(zfunction);
-
-	success = (retval_ptr && (Z_TYPE_P(retval_ptr) == IS_BOOL) && Z_LVAL_P(retval_ptr));
-	if (retval_ptr) {
-		zval_ptr_dtor(&retval_ptr);
-	}
-
-	return success;
-}
-
-#ifndef Z_SET_REFCOUNT_P
-# define Z_SET_REFCOUNT_P(pz, rc)  pz->refcount = rc
-# define Z_UNSET_ISREF_P(pz) pz->is_ref = 0
-#endif
-
-static void TWIG_NEW(zval *object, char *class, zval *arg0, zval *arg1 TSRMLS_DC)
-{
-	zend_class_entry **pce;
-
-	if (zend_lookup_class(class, strlen(class), &pce TSRMLS_CC) == FAILURE) {
-		return;
-	}
-
-	Z_TYPE_P(object) = IS_OBJECT;
-	object_init_ex(object, *pce);
-	Z_SET_REFCOUNT_P(object, 1);
-	Z_UNSET_ISREF_P(object);
-
-	TWIG_CALL_ZZ(object, "__construct", arg0, arg1 TSRMLS_CC);
-}
-
-static int twig_add_array_key_to_string(void *pDest APPLY_TSRMLS_DC, int num_args, va_list args, zend_hash_key *hash_key)
-{
-	smart_str *buf;
-	char *joiner;
-	APPLY_TSRMLS_FETCH();
-
-	buf = va_arg(args, smart_str*);
-	joiner = va_arg(args, char*);
-
-	if (buf->len != 0) {
-		smart_str_appends(buf, joiner);
-	}
-
-	if (hash_key->nKeyLength == 0) {
-		smart_str_append_long(buf, (long) hash_key->h);
-	} else {
-		char *key, *tmp_str;
-		int key_len, tmp_len;
-		key = php_addcslashes(hash_key->arKey, hash_key->nKeyLength - 1, &key_len, 0, "'\\", 2 TSRMLS_CC);
-		tmp_str = php_str_to_str_ex(key, key_len, "\0", 1, "' . \"\\0\" . '", 12, &tmp_len, 0, NULL);
-
-		smart_str_appendl(buf, tmp_str, tmp_len);
-		efree(key);
-		efree(tmp_str);
-	}
-
-	return 0;
-}
-
-static char *TWIG_IMPLODE_ARRAY_KEYS(char *joiner, zval *array TSRMLS_DC)
-{
-	smart_str collector = { 0, 0, 0 };
-
-	smart_str_appendl(&collector, "", 0);
-	zend_hash_apply_with_arguments(HASH_OF(array) APPLY_TSRMLS_CC, twig_add_array_key_to_string, 2, &collector, joiner);
-	smart_str_0(&collector);
-
-	return collector.c;
-}
-
-static void TWIG_RUNTIME_ERROR(zval *template TSRMLS_DC, char *message, ...)
-{
-	char *buffer;
-	va_list args;
-	zend_class_entry **pce;
-	zval *ex;
-	zval *constructor;
-	zval *zmessage;
-	zval *lineno;
-	zval *filename_func;
-	zval *filename;
-	zval *constructor_args[3];
-	zval *constructor_retval;
-
-	if (zend_lookup_class("Twig_Error_Runtime", strlen("Twig_Error_Runtime"), &pce TSRMLS_CC) == FAILURE) {
-		return;
-	}
-
-	va_start(args, message);
-	vspprintf(&buffer, 0, message, args);
-	va_end(args);
-
-	MAKE_STD_ZVAL(ex);
-	object_init_ex(ex, *pce);
-
-	// Call Twig_Error constructor
-	MAKE_STD_ZVAL(constructor);
-	MAKE_STD_ZVAL(zmessage);
-	MAKE_STD_ZVAL(lineno);
-	MAKE_STD_ZVAL(filename);
-	MAKE_STD_ZVAL(filename_func);
-	MAKE_STD_ZVAL(constructor_retval);
-
-	ZVAL_STRINGL(constructor, "__construct", sizeof("__construct")-1, 1);
-	ZVAL_STRING(zmessage, buffer, 1);
-	ZVAL_LONG(lineno, -1);
-
-	// Get template filename
-	ZVAL_STRINGL(filename_func, "getTemplateName", sizeof("getTemplateName")-1, 1);
-	call_user_function(EG(function_table), &template, filename_func, filename, 0, 0 TSRMLS_CC);
-
-	constructor_args[0] = zmessage;
-	constructor_args[1] = lineno;
-	constructor_args[2] = filename;
-	call_user_function(EG(function_table), &ex, constructor, constructor_retval, 3, constructor_args TSRMLS_CC);
-
-	zval_ptr_dtor(&constructor_retval);
-	zval_ptr_dtor(&zmessage);
-	zval_ptr_dtor(&lineno);
-	zval_ptr_dtor(&filename);
-	FREE_DTOR(constructor);
-	FREE_DTOR(filename_func);
-	efree(buffer);
-
-	zend_throw_exception_object(ex TSRMLS_CC);
-}
-
-static char *TWIG_GET_CLASS_NAME(zval *object TSRMLS_DC)
-{
-	char *class_name;
-	zend_uint class_name_len;
-
-	if (Z_TYPE_P(object) != IS_OBJECT) {
-		return "";
-	}
-#if PHP_API_VERSION >= 20100412
-	zend_get_object_classname(object, (const char **) &class_name, &class_name_len TSRMLS_CC);
-#else
-	zend_get_object_classname(object, &class_name, &class_name_len TSRMLS_CC);
-#endif
-	return class_name;
-}
-
-static int twig_add_method_to_class(void *pDest APPLY_TSRMLS_DC, int num_args, va_list args, zend_hash_key *hash_key)
-{
-	zend_class_entry *ce;
-	zval *retval;
-	char *item;
-	size_t item_len;
-	zend_function *mptr = (zend_function *) pDest;
-	APPLY_TSRMLS_FETCH();
-
-	if (!(mptr->common.fn_flags & ZEND_ACC_PUBLIC)) {
-		return 0;
-	}
-
-	ce = *va_arg(args, zend_class_entry**);
-	retval = va_arg(args, zval*);
-
-	item_len = strlen(mptr->common.function_name);
-	item = estrndup(mptr->common.function_name, item_len);
-	php_strtolower(item, item_len);
-
-	if (strcmp("getenvironment", item) == 0) {
-		zend_class_entry **twig_template_ce;
-		if (zend_lookup_class("Twig_Template", strlen("Twig_Template"), &twig_template_ce TSRMLS_CC) == FAILURE) {
-			return 0;
-		}
-		if (instanceof_function(ce, *twig_template_ce TSRMLS_CC)) {
-			return 0;
-		}
-	}
-
-	add_assoc_stringl_ex(retval, item, item_len+1, item, item_len, 0);
-
-	return 0;
-}
-
-static int twig_add_property_to_class(void *pDest APPLY_TSRMLS_DC, int num_args, va_list args, zend_hash_key *hash_key)
-{
-	zend_class_entry *ce;
-	zval *retval;
-	char *class_name, *prop_name;
-	zend_property_info *pptr = (zend_property_info *) pDest;
-	APPLY_TSRMLS_FETCH();
-
-	if (!(pptr->flags & ZEND_ACC_PUBLIC) || (pptr->flags & ZEND_ACC_STATIC)) {
-		return 0;
-	}
-
-	ce = *va_arg(args, zend_class_entry**);
-	retval = va_arg(args, zval*);
-
-#if PHP_API_VERSION >= 20100412
-	zend_unmangle_property_name(pptr->name, pptr->name_length, (const char **) &class_name, (const char **) &prop_name);
-#else
-	zend_unmangle_property_name(pptr->name, pptr->name_length, &class_name, &prop_name);
-#endif
-
-	add_assoc_string(retval, prop_name, prop_name, 1);
-
-	return 0;
-}
-
-static void twig_add_class_to_cache(zval *cache, zval *object, char *class_name TSRMLS_DC)
-{
-	zval *class_info, *class_methods, *class_properties;
-	zend_class_entry *class_ce;
-
-	class_ce = zend_get_class_entry(object TSRMLS_CC);
-
-	ALLOC_INIT_ZVAL(class_info);
-	ALLOC_INIT_ZVAL(class_methods);
-	ALLOC_INIT_ZVAL(class_properties);
-	array_init(class_info);
-	array_init(class_methods);
-	array_init(class_properties);
-	// add all methods to self::cache[$class]['methods']
-	zend_hash_apply_with_arguments(&class_ce->function_table APPLY_TSRMLS_CC, twig_add_method_to_class, 2, &class_ce, class_methods);
-	zend_hash_apply_with_arguments(&class_ce->properties_info APPLY_TSRMLS_CC, twig_add_property_to_class, 2, &class_ce, class_properties);
-
-	add_assoc_zval(class_info, "methods", class_methods);
-	add_assoc_zval(class_info, "properties", class_properties);
-	add_assoc_zval(cache, class_name, class_info);
-}
-
-/* {{{ proto mixed twig_template_get_attributes(TwigTemplate template, mixed object, mixed item, array arguments, string type, boolean isDefinedTest, boolean ignoreStrictCheck)
-   A C implementation of TwigTemplate::getAttribute() */
-PHP_FUNCTION(twig_template_get_attributes)
-{
-	zval *template;
-	zval *object;
-	char *item;
-	int  item_len;
-	zval *zitem, ztmpitem;
-	zval *arguments = NULL;
-	zval *ret = NULL;
-	char *type = NULL;
-	int   type_len = 0;
-	zend_bool isDefinedTest = 0;
-	zend_bool ignoreStrictCheck = 0;
-	int free_ret = 0;
-	zval *tmp_self_cache;
-	char *class_name = NULL;
-	zval *tmp_class;
-	char *type_name;
-
-	if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "ozz|asbb", &template, &object, &zitem, &arguments, &type, &type_len, &isDefinedTest, &ignoreStrictCheck) == FAILURE) {
-		return;
-	}
-
-	// convert the item to a string
-	ztmpitem = *zitem;
-	zval_copy_ctor(&ztmpitem);
-	convert_to_string(&ztmpitem);
-	item_len = Z_STRLEN(ztmpitem);
-	item = estrndup(Z_STRVAL(ztmpitem), item_len);
-	zval_dtor(&ztmpitem);
-
-	if (!type) {
-		type = "any";
-	}
-
-/*
-	// array
-	if (Twig_Template::METHOD_CALL !== $type) {
-		$arrayItem = is_bool($item) || is_float($item) ? (int) $item : $item;
-
-		if ((is_array($object) && array_key_exists($arrayItem, $object))
-			|| ($object instanceof ArrayAccess && isset($object[$arrayItem]))
-		) {
-			if ($isDefinedTest) {
-				return true;
-			}
-
-			return $object[$arrayItem];
-		}
-*/
-
-
-	if (strcmp("method", type) != 0) {
-		if ((TWIG_ARRAY_KEY_EXISTS(object, zitem))
-			|| (TWIG_INSTANCE_OF(object, zend_ce_arrayaccess TSRMLS_CC) && TWIG_ISSET_ARRAYOBJECT_ELEMENT(object, zitem TSRMLS_CC))
-		) {
-
-			if (isDefinedTest) {
-				efree(item);
-				RETURN_TRUE;
-			}
-
-			ret = TWIG_GET_ARRAY_ELEMENT_ZVAL(object, zitem TSRMLS_CC);
-
-			if (!ret) {
-				ret = &EG(uninitialized_zval);
-			}
-			RETVAL_ZVAL(ret, 1, 0);
-			if (free_ret) {
-				zval_ptr_dtor(&ret);
-			}
-			efree(item);
-			return;
-		}
-/*
-		if (Twig_Template::ARRAY_CALL === $type) {
-			if ($isDefinedTest) {
-				return false;
-			}
-			if ($ignoreStrictCheck || !$this->env->isStrictVariables()) {
-				return null;
-			}
-*/
-		if (strcmp("array", type) == 0 || Z_TYPE_P(object) != IS_OBJECT) {
-			if (isDefinedTest) {
-				efree(item);
-				RETURN_FALSE;
-			}
-			if (ignoreStrictCheck || !TWIG_CALL_BOOLEAN(TWIG_PROPERTY_CHAR(template, "env" TSRMLS_CC), "isStrictVariables" TSRMLS_CC)) {
-				efree(item);
-				return;
-			}
-/*
-			if ($object instanceof ArrayAccess) {
-				$message = sprintf('Key "%s" in object with ArrayAccess of class "%s" does not exist', $arrayItem, get_class($object));
-			} elseif (is_object($object)) {
-				$message = sprintf('Impossible to access a key "%s" on an object of class "%s" that does not implement ArrayAccess interface', $item, get_class($object));
-			} elseif (is_array($object)) {
-				if (empty($object)) {
-					$message = sprintf('Key "%s" does not exist as the array is empty', $arrayItem);
-				} else {
-					$message = sprintf('Key "%s" for array with keys "%s" does not exist', $arrayItem, implode(', ', array_keys($object)));
-				}
-			} elseif (Twig_Template::ARRAY_CALL === $type) {
-				if (null === $object) {
-					$message = sprintf('Impossible to access a key ("%s") on a null variable', $item);
-				} else {
-					$message = sprintf('Impossible to access a key ("%s") on a %s variable ("%s")', $item, gettype($object), $object);
-				}
-			} elseif (null === $object) {
-				$message = sprintf('Impossible to access an attribute ("%s") on a null variable', $item);
-			} else {
-				$message = sprintf('Impossible to access an attribute ("%s") on a %s variable ("%s")', $item, gettype($object), $object);
-			}
-			throw new Twig_Error_Runtime($message, -1, $this->getTemplateName());
-		}
-	}
-*/
-			if (TWIG_INSTANCE_OF(object, zend_ce_arrayaccess TSRMLS_CC)) {
-				TWIG_RUNTIME_ERROR(template TSRMLS_CC, "Key \"%s\" in object with ArrayAccess of class \"%s\" does not exist", item, TWIG_GET_CLASS_NAME(object TSRMLS_CC));
-			} else if (Z_TYPE_P(object) == IS_OBJECT) {
-				TWIG_RUNTIME_ERROR(template TSRMLS_CC, "Impossible to access a key \"%s\" on an object of class \"%s\" that does not implement ArrayAccess interface", item, TWIG_GET_CLASS_NAME(object TSRMLS_CC));
-			} else if (Z_TYPE_P(object) == IS_ARRAY) {
-				if (0 == zend_hash_num_elements(Z_ARRVAL_P(object))) {
-					TWIG_RUNTIME_ERROR(template TSRMLS_CC, "Key \"%s\" does not exist as the array is empty", item);
-				} else {
-					char *array_keys = TWIG_IMPLODE_ARRAY_KEYS(", ", object TSRMLS_CC);
-					TWIG_RUNTIME_ERROR(template TSRMLS_CC, "Key \"%s\" for array with keys \"%s\" does not exist", item, array_keys);
-					efree(array_keys);
-				}
-			} else {
-				char *type_name = zend_zval_type_name(object);
-				Z_ADDREF_P(object);
-				if (Z_TYPE_P(object) == IS_NULL) {
-					convert_to_string(object);
-					TWIG_RUNTIME_ERROR(template TSRMLS_CC,
-						(strcmp("array", type) == 0)
-							? "Impossible to access a key (\"%s\") on a %s variable"
-							: "Impossible to access an attribute (\"%s\") on a %s variable",
-						item, type_name);
-				} else {
-					convert_to_string(object);
-					TWIG_RUNTIME_ERROR(template TSRMLS_CC,
-						(strcmp("array", type) == 0)
-							? "Impossible to access a key (\"%s\") on a %s variable (\"%s\")"
-							: "Impossible to access an attribute (\"%s\") on a %s variable (\"%s\")",
-						item, type_name, Z_STRVAL_P(object));
-				}
-				zval_ptr_dtor(&object);
-			}
-			efree(item);
-			return;
-		}
-	}
-
-/*
-	if (!is_object($object)) {
-		if ($isDefinedTest) {
-			return false;
-		}
-*/
-
-	if (Z_TYPE_P(object) != IS_OBJECT) {
-		if (isDefinedTest) {
-			efree(item);
-			RETURN_FALSE;
-		}
-/*
-		if ($ignoreStrictCheck || !$this->env->isStrictVariables()) {
-			return null;
-		}
-
-		if (null === $object) {
-			$message = sprintf('Impossible to invoke a method ("%s") on a null variable', $item);
-		} else {
-			$message = sprintf('Impossible to invoke a method ("%s") on a %s variable ("%s")', $item, gettype($object), $object);
-		}
-
-		throw new Twig_Error_Runtime($message, -1, $this->getTemplateName());
-	}
-*/
-		if (ignoreStrictCheck || !TWIG_CALL_BOOLEAN(TWIG_PROPERTY_CHAR(template, "env" TSRMLS_CC), "isStrictVariables" TSRMLS_CC)) {
-			efree(item);
-			return;
-		}
-
-		type_name = zend_zval_type_name(object);
-		Z_ADDREF_P(object);
-		if (Z_TYPE_P(object) == IS_NULL) {
-			convert_to_string_ex(&object);
-
-			TWIG_RUNTIME_ERROR(template TSRMLS_CC, "Impossible to invoke a method (\"%s\") on a %s variable", item, type_name);
-		} else {
-			convert_to_string_ex(&object);
-
-			TWIG_RUNTIME_ERROR(template TSRMLS_CC, "Impossible to invoke a method (\"%s\") on a %s variable (\"%s\")", item, type_name, Z_STRVAL_P(object));
-		}
-
-		zval_ptr_dtor(&object);
-		efree(item);
-		return;
-	}
-/*
-	$class = get_class($object);
-*/
-
-	class_name = TWIG_GET_CLASS_NAME(object TSRMLS_CC);
-	tmp_self_cache = TWIG_GET_STATIC_PROPERTY(template, "cache" TSRMLS_CC);
-	tmp_class = TWIG_GET_ARRAY_ELEMENT(tmp_self_cache, class_name, strlen(class_name) TSRMLS_CC);
-
-	if (!tmp_class) {
-		twig_add_class_to_cache(tmp_self_cache, object, class_name TSRMLS_CC);
-		tmp_class = TWIG_GET_ARRAY_ELEMENT(tmp_self_cache, class_name, strlen(class_name) TSRMLS_CC);
-	}
-	efree(class_name);
-
-/*
-	// object property
-	if (Twig_Template::METHOD_CALL !== $type && !$object instanceof Twig_Template) {
-		if (isset($object->$item) || array_key_exists((string) $item, $object)) {
-			if ($isDefinedTest) {
-				return true;
-			}
-
-			if ($this->env->hasExtension('sandbox')) {
-				$this->env->getExtension('sandbox')->checkPropertyAllowed($object, $item);
-			}
-
-			return $object->$item;
-		}
-	}
-*/
-	if (strcmp("method", type) != 0 && !TWIG_INSTANCE_OF_USERLAND(object, "Twig_Template" TSRMLS_CC)) {
-		zval *tmp_properties, *tmp_item;
-
-		tmp_properties = TWIG_GET_ARRAY_ELEMENT(tmp_class, "properties", strlen("properties") TSRMLS_CC);
-		tmp_item = TWIG_GET_ARRAY_ELEMENT(tmp_properties, item, item_len TSRMLS_CC);
-
-		if (tmp_item || TWIG_HAS_PROPERTY(object, zitem TSRMLS_CC) || TWIG_HAS_DYNAMIC_PROPERTY(object, item, item_len TSRMLS_CC)) {
-			if (isDefinedTest) {
-				efree(item);
-				RETURN_TRUE;
-			}
-			if (TWIG_CALL_SB(TWIG_PROPERTY_CHAR(template, "env" TSRMLS_CC), "hasExtension", "sandbox" TSRMLS_CC)) {
-				TWIG_CALL_ZZ(TWIG_CALL_S(TWIG_PROPERTY_CHAR(template, "env" TSRMLS_CC), "getExtension", "sandbox" TSRMLS_CC), "checkPropertyAllowed", object, zitem TSRMLS_CC);
-			}
-			if (EG(exception)) {
-				efree(item);
-				return;
-			}
-
-			ret = TWIG_PROPERTY(object, zitem TSRMLS_CC);
-			efree(item);
-			RETURN_ZVAL(ret, 1, 0);
-		}
-	}
-/*
-	// object method
-	if (!isset(self::$cache[$class]['methods'])) {
-		if ($object instanceof self) {
-			$ref = new ReflectionClass($class);
-			$methods = array();
-
-			foreach ($ref->getMethods(ReflectionMethod::IS_PUBLIC) as $refMethod) {
-				$methodName = strtolower($refMethod->name);
-
-				// Accessing the environment from templates is forbidden to prevent untrusted changes to the environment
-				if ('getenvironment' !== $methodName) {
-					$methods[$methodName] = true;
-				}
-			}
-
-			self::$cache[$class]['methods'] = $methods;
-        } else {
-			self::$cache[$class]['methods'] = array_change_key_case(array_flip(get_class_methods($object)));
-        }
-	}
-
-	$call = false;
-	$lcItem = strtolower($item);
-	if (isset(self::$cache[$class]['methods'][$lcItem])) {
-		$method = (string) $item;
-	} elseif (isset(self::$cache[$class]['methods']['get'.$lcItem])) {
-		$method = 'get'.$item;
-	} elseif (isset(self::$cache[$class]['methods']['is'.$lcItem])) {
-		$method = 'is'.$item;
-	} elseif (isset(self::$cache[$class]['methods']['__call'])) {
-		$method = (string) $item;
-		$call = true;
-*/
-	{
-		int call = 0;
-		char *lcItem = TWIG_STRTOLOWER(item, item_len);
-		int   lcItem_length;
-		char *method = NULL;
-		char *tmp_method_name_get;
-		char *tmp_method_name_is;
-		zval *zmethod;
-		zval *tmp_methods;
-
-		lcItem_length = strlen(lcItem);
-		tmp_method_name_get = emalloc(4 + lcItem_length);
-		tmp_method_name_is  = emalloc(3 + lcItem_length);
-
-		sprintf(tmp_method_name_get, "get%s", lcItem);
-		sprintf(tmp_method_name_is, "is%s", lcItem);
-
-		tmp_methods = TWIG_GET_ARRAY_ELEMENT(tmp_class, "methods", strlen("methods") TSRMLS_CC);
-
-		if (TWIG_GET_ARRAY_ELEMENT(tmp_methods, lcItem, lcItem_length TSRMLS_CC)) {
-			method = item;
-		} else if (TWIG_GET_ARRAY_ELEMENT(tmp_methods, tmp_method_name_get, lcItem_length + 3 TSRMLS_CC)) {
-			method = tmp_method_name_get;
-		} else if (TWIG_GET_ARRAY_ELEMENT(tmp_methods, tmp_method_name_is, lcItem_length + 2 TSRMLS_CC)) {
-			method = tmp_method_name_is;
-		} else if (TWIG_GET_ARRAY_ELEMENT(tmp_methods, "__call", 6 TSRMLS_CC)) {
-			method = item;
-			call = 1;
-/*
-	} else {
-		if ($isDefinedTest) {
-			return false;
-		}
-
-		if ($ignoreStrictCheck || !$this->env->isStrictVariables()) {
-			return null;
-		}
-
-		throw new Twig_Error_Runtime(sprintf('Method "%s" for object "%s" does not exist', $item, get_class($object)), -1, $this->getTemplateName());
-	}
-
-	if ($isDefinedTest) {
-		return true;
-	}
-*/
-		} else {
-			efree(tmp_method_name_get);
-			efree(tmp_method_name_is);
-			efree(lcItem);
-
-			if (isDefinedTest) {
-				efree(item);
-				RETURN_FALSE;
-			}
-			if (ignoreStrictCheck || !TWIG_CALL_BOOLEAN(TWIG_PROPERTY_CHAR(template, "env" TSRMLS_CC), "isStrictVariables" TSRMLS_CC)) {
-				efree(item);
-				return;
-			}
-			TWIG_RUNTIME_ERROR(template TSRMLS_CC, "Method \"%s\" for object \"%s\" does not exist", item, TWIG_GET_CLASS_NAME(object TSRMLS_CC));
-			efree(item);
-			return;
-		}
-
-		if (isDefinedTest) {
-			efree(tmp_method_name_get);
-			efree(tmp_method_name_is);
-			efree(lcItem);efree(item);
-			RETURN_TRUE;
-		}
-/*
-	if ($this->env->hasExtension('sandbox')) {
-		$this->env->getExtension('sandbox')->checkMethodAllowed($object, $method);
-	}
-*/
-		MAKE_STD_ZVAL(zmethod);
-		ZVAL_STRING(zmethod, method, 1);
-		if (TWIG_CALL_SB(TWIG_PROPERTY_CHAR(template, "env" TSRMLS_CC), "hasExtension", "sandbox" TSRMLS_CC)) {
-			TWIG_CALL_ZZ(TWIG_CALL_S(TWIG_PROPERTY_CHAR(template, "env" TSRMLS_CC), "getExtension", "sandbox" TSRMLS_CC), "checkMethodAllowed", object, zmethod TSRMLS_CC);
-		}
-		zval_ptr_dtor(&zmethod);
-		if (EG(exception)) {
-			efree(tmp_method_name_get);
-			efree(tmp_method_name_is);
-			efree(lcItem);efree(item);
-			return;
-		}
-/*
-	// Some objects throw exceptions when they have __call, and the method we try
-	// to call is not supported. If ignoreStrictCheck is true, we should return null.
-	try {
-	    $ret = call_user_func_array(array($object, $method), $arguments);
-	} catch (BadMethodCallException $e) {
-	    if ($call && ($ignoreStrictCheck || !$this->env->isStrictVariables())) {
-	        return null;
-	    }
-	    throw $e;
-	}
-*/
-		ret = TWIG_CALL_USER_FUNC_ARRAY(object, method, arguments TSRMLS_CC);
-		if (EG(exception) && TWIG_INSTANCE_OF(EG(exception), spl_ce_BadMethodCallException TSRMLS_CC)) {
-			if (ignoreStrictCheck || !TWIG_CALL_BOOLEAN(TWIG_PROPERTY_CHAR(template, "env" TSRMLS_CC), "isStrictVariables" TSRMLS_CC)) {
-				efree(tmp_method_name_get);
-				efree(tmp_method_name_is);
-				efree(lcItem);efree(item);
-				zend_clear_exception(TSRMLS_C);
-				return;
-			}
-		}
-		free_ret = 1;
-		efree(tmp_method_name_get);
-		efree(tmp_method_name_is);
-		efree(lcItem);
-	}
-/*
-	// useful when calling a template method from a template
-	// this is not supported but unfortunately heavily used in the Symfony profiler
-	if ($object instanceof Twig_TemplateInterface) {
-		return $ret === '' ? '' : new Twig_Markup($ret, $this->env->getCharset());
-	}
-
-	return $ret;
-*/
-	efree(item);
-	// ret can be null, if e.g. the called method throws an exception
-	if (ret) {
-		if (TWIG_INSTANCE_OF_USERLAND(object, "Twig_TemplateInterface" TSRMLS_CC)) {
-			if (Z_STRLEN_P(ret) != 0) {
-				zval *charset = TWIG_CALL_USER_FUNC_ARRAY(TWIG_PROPERTY_CHAR(template, "env" TSRMLS_CC), "getCharset", NULL TSRMLS_CC);
-				TWIG_NEW(return_value, "Twig_Markup", ret, charset TSRMLS_CC);
-				zval_ptr_dtor(&charset);
-				if (ret) {
-					zval_ptr_dtor(&ret);
-				}
-				return;
-			}
-		}
-
-		RETVAL_ZVAL(ret, 1, 0);
-		if (free_ret) {
-			zval_ptr_dtor(&ret);
-		}
-	}
-}
diff --git a/vendor/twig/twig/test/Twig/Tests/AutoloaderTest.php b/vendor/twig/twig/test/Twig/Tests/AutoloaderTest.php
deleted file mode 100644
index 52107c0..0000000
--- a/vendor/twig/twig/test/Twig/Tests/AutoloaderTest.php
+++ /dev/null
@@ -1,24 +0,0 @@
-<?php
-
-/*
- * This file is part of Twig.
- *
- * (c) Fabien Potencier
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-class Twig_Tests_AutoloaderTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @group legacy
-     */
-    public function testAutoload()
-    {
-        $this->assertFalse(class_exists('FooBarFoo'), '->autoload() does not try to load classes that does not begin with Twig');
-
-        $autoloader = new Twig_Autoloader();
-        $this->assertNull($autoloader->autoload('Foo'), '->autoload() returns false if it is not able to load a class');
-    }
-}
diff --git a/vendor/twig/twig/test/Twig/Tests/CompilerTest.php b/vendor/twig/twig/test/Twig/Tests/CompilerTest.php
deleted file mode 100644
index bc25f11..0000000
--- a/vendor/twig/twig/test/Twig/Tests/CompilerTest.php
+++ /dev/null
@@ -1,33 +0,0 @@
-<?php
-
-/*
- * This file is part of Twig.
- *
- * (c) Fabien Potencier
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-class Twig_Tests_CompilerTest extends PHPUnit_Framework_TestCase
-{
-    public function testReprNumericValueWithLocale()
-    {
-        $compiler = new Twig_Compiler(new Twig_Environment($this->getMock('Twig_LoaderInterface')));
-
-        $locale = setlocale(LC_NUMERIC, 0);
-        if (false === $locale) {
-            $this->markTestSkipped('Your platform does not support locales.');
-        }
-
-        $required_locales = array('fr_FR.UTF-8', 'fr_FR.UTF8', 'fr_FR.utf-8', 'fr_FR.utf8', 'French_France.1252');
-        if (false === setlocale(LC_NUMERIC, $required_locales)) {
-            $this->markTestSkipped('Could not set any of required locales: '.implode(', ', $required_locales));
-        }
-
-        $this->assertEquals('1.2', $compiler->repr(1.2)->getSource());
-        $this->assertContains('fr', strtolower(setlocale(LC_NUMERIC, 0)));
-
-        setlocale(LC_NUMERIC, $locale);
-    }
-}
diff --git a/vendor/twig/twig/test/Twig/Tests/EnvironmentTest.php b/vendor/twig/twig/test/Twig/Tests/EnvironmentTest.php
deleted file mode 100644
index 83a98ef..0000000
--- a/vendor/twig/twig/test/Twig/Tests/EnvironmentTest.php
+++ /dev/null
@@ -1,303 +0,0 @@
-<?php
-
-/*
- * This file is part of Twig.
- *
- * (c) Fabien Potencier
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-class Twig_Tests_EnvironmentTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @expectedException        LogicException
-     * @expectedExceptionMessage You must set a loader first.
-     * @group legacy
-     */
-    public function testRenderNoLoader()
-    {
-        $env = new Twig_Environment();
-        $env->render('test');
-    }
-
-    public function testAutoescapeOption()
-    {
-        $loader = new Twig_Loader_Array(array(
-            'html' => '{{ foo }} {{ foo }}',
-            'js' => '{{ bar }} {{ bar }}',
-        ));
-
-        $twig = new Twig_Environment($loader, array(
-            'debug' => true,
-            'cache' => false,
-            'autoescape' => array($this, 'escapingStrategyCallback'),
-        ));
-
-        $this->assertEquals('foo&lt;br/ &gt; foo&lt;br/ &gt;', $twig->render('html', array('foo' => 'foo<br/ >')));
-        $this->assertEquals('foo\x3Cbr\x2F\x20\x3E foo\x3Cbr\x2F\x20\x3E', $twig->render('js', array('bar' => 'foo<br/ >')));
-    }
-
-    public function escapingStrategyCallback($filename)
-    {
-        return $filename;
-    }
-
-    public function testGlobals()
-    {
-        // globals can be added after calling getGlobals
-        $twig = new Twig_Environment($this->getMock('Twig_LoaderInterface'));
-        $twig->addGlobal('foo', 'foo');
-        $twig->getGlobals();
-        $twig->addGlobal('foo', 'bar');
-        $globals = $twig->getGlobals();
-        $this->assertEquals('bar', $globals['foo']);
-
-        // globals can be modified after runtime init
-        $twig = new Twig_Environment($this->getMock('Twig_LoaderInterface'));
-        $twig->addGlobal('foo', 'foo');
-        $twig->getGlobals();
-        $twig->initRuntime();
-        $twig->addGlobal('foo', 'bar');
-        $globals = $twig->getGlobals();
-        $this->assertEquals('bar', $globals['foo']);
-
-        // globals can be modified after extensions init
-        $twig = new Twig_Environment($this->getMock('Twig_LoaderInterface'));
-        $twig->addGlobal('foo', 'foo');
-        $twig->getGlobals();
-        $twig->getFunctions();
-        $twig->addGlobal('foo', 'bar');
-        $globals = $twig->getGlobals();
-        $this->assertEquals('bar', $globals['foo']);
-
-        // globals can be modified after extensions and runtime init
-        $twig = new Twig_Environment($loader = new Twig_Loader_Array(array('index' => '{{foo}}')));
-        $twig->addGlobal('foo', 'foo');
-        $twig->getGlobals();
-        $twig->getFunctions();
-        $twig->initRuntime();
-        $twig->addGlobal('foo', 'bar');
-        $globals = $twig->getGlobals();
-        $this->assertEquals('bar', $globals['foo']);
-
-        $twig = new Twig_Environment($loader);
-        $twig->getGlobals();
-        $twig->addGlobal('foo', 'bar');
-        $template = $twig->loadTemplate('index');
-        $this->assertEquals('bar', $template->render(array()));
-
-        /* to be uncomment in Twig 2.0
-        // globals cannot be added after runtime init
-        $twig = new Twig_Environment($this->getMock('Twig_LoaderInterface'));
-        $twig->addGlobal('foo', 'foo');
-        $twig->getGlobals();
-        $twig->initRuntime();
-        try {
-            $twig->addGlobal('bar', 'bar');
-            $this->fail();
-        } catch (LogicException $e) {
-            $this->assertFalse(array_key_exists('bar', $twig->getGlobals()));
-        }
-
-        // globals cannot be added after extensions init
-        $twig = new Twig_Environment($this->getMock('Twig_LoaderInterface'));
-        $twig->addGlobal('foo', 'foo');
-        $twig->getGlobals();
-        $twig->getFunctions();
-        try {
-            $twig->addGlobal('bar', 'bar');
-            $this->fail();
-        } catch (LogicException $e) {
-            $this->assertFalse(array_key_exists('bar', $twig->getGlobals()));
-        }
-
-        // globals cannot be added after extensions and runtime init
-        $twig = new Twig_Environment($this->getMock('Twig_LoaderInterface'));
-        $twig->addGlobal('foo', 'foo');
-        $twig->getGlobals();
-        $twig->getFunctions();
-        $twig->initRuntime();
-        try {
-            $twig->addGlobal('bar', 'bar');
-            $this->fail();
-        } catch (LogicException $e) {
-            $this->assertFalse(array_key_exists('bar', $twig->getGlobals()));
-        }
-
-        // test adding globals after initRuntime without call to getGlobals
-        $twig = new Twig_Environment($this->getMock('Twig_LoaderInterface'));
-        $twig->initRuntime();
-        try {
-            $twig->addGlobal('bar', 'bar');
-            $this->fail();
-        } catch (LogicException $e) {
-            $this->assertFalse(array_key_exists('bar', $twig->getGlobals()));
-        }
-        */
-    }
-
-    public function testCompileSourceInlinesSource()
-    {
-        $twig = new Twig_Environment($this->getMock('Twig_LoaderInterface'));
-
-        $source = "<? */*foo*/ ?>\r\nbar\n";
-        $expected = "/* <? *//* *foo*//*  ?>*/\n/* bar*/\n/* */\n";
-        $compiled = $twig->compileSource($source, 'index');
-
-        $this->assertContains($expected, $compiled);
-        $this->assertNotContains('/**', $compiled);
-    }
-
-    public function testExtensionsAreNotInitializedWhenRenderingACompiledTemplate()
-    {
-        $cache = new Twig_Cache_Filesystem($dir = sys_get_temp_dir().'/twig');
-        $options = array('cache' => $cache, 'auto_reload' => false, 'debug' => false);
-
-        // force compilation
-        $twig = new Twig_Environment($loader = new Twig_Loader_Array(array('index' => '{{ foo }}')), $options);
-
-        $key = $cache->generateKey('index', $twig->getTemplateClass('index'));
-        $cache->write($key, $twig->compileSource('{{ foo }}', 'index'));
-
-        // check that extensions won't be initialized when rendering a template that is already in the cache
-        $twig = $this
-            ->getMockBuilder('Twig_Environment')
-            ->setConstructorArgs(array($loader, $options))
-            ->setMethods(array('initExtensions'))
-            ->getMock()
-        ;
-
-        $twig->expects($this->never())->method('initExtensions');
-
-        // render template
-        $output = $twig->render('index', array('foo' => 'bar'));
-        $this->assertEquals('bar', $output);
-
-        unlink($key);
-    }
-
-    public function testAddExtension()
-    {
-        $twig = new Twig_Environment($this->getMock('Twig_LoaderInterface'));
-        $twig->addExtension(new Twig_Tests_EnvironmentTest_Extension());
-
-        $this->assertArrayHasKey('test', $twig->getTags());
-        $this->assertArrayHasKey('foo_filter', $twig->getFilters());
-        $this->assertArrayHasKey('foo_function', $twig->getFunctions());
-        $this->assertArrayHasKey('foo_test', $twig->getTests());
-        $this->assertArrayHasKey('foo_unary', $twig->getUnaryOperators());
-        $this->assertArrayHasKey('foo_binary', $twig->getBinaryOperators());
-        $this->assertArrayHasKey('foo_global', $twig->getGlobals());
-        $visitors = $twig->getNodeVisitors();
-        $this->assertEquals('Twig_Tests_EnvironmentTest_NodeVisitor', get_class($visitors[2]));
-    }
-
-    /**
-     * @group legacy
-     */
-    public function testRemoveExtension()
-    {
-        $twig = new Twig_Environment($this->getMock('Twig_LoaderInterface'));
-        $twig->addExtension(new Twig_Tests_EnvironmentTest_Extension());
-        $twig->removeExtension('environment_test');
-
-        $this->assertFalse(array_key_exists('test', $twig->getTags()));
-        $this->assertFalse(array_key_exists('foo_filter', $twig->getFilters()));
-        $this->assertFalse(array_key_exists('foo_function', $twig->getFunctions()));
-        $this->assertFalse(array_key_exists('foo_test', $twig->getTests()));
-        $this->assertFalse(array_key_exists('foo_unary', $twig->getUnaryOperators()));
-        $this->assertFalse(array_key_exists('foo_binary', $twig->getBinaryOperators()));
-        $this->assertFalse(array_key_exists('foo_global', $twig->getGlobals()));
-        $this->assertCount(2, $twig->getNodeVisitors());
-    }
-}
-
-class Twig_Tests_EnvironmentTest_Extension extends Twig_Extension
-{
-    public function getTokenParsers()
-    {
-        return array(
-            new Twig_Tests_EnvironmentTest_TokenParser(),
-        );
-    }
-
-    public function getNodeVisitors()
-    {
-        return array(
-            new Twig_Tests_EnvironmentTest_NodeVisitor(),
-        );
-    }
-
-    public function getFilters()
-    {
-        return array(
-            new Twig_SimpleFilter('foo_filter', 'foo_filter'),
-        );
-    }
-
-    public function getTests()
-    {
-        return array(
-            new Twig_SimpleTest('foo_test', 'foo_test'),
-        );
-    }
-
-    public function getFunctions()
-    {
-        return array(
-            new Twig_SimpleFunction('foo_function', 'foo_function'),
-        );
-    }
-
-    public function getOperators()
-    {
-        return array(
-            array('foo_unary' => array()),
-            array('foo_binary' => array()),
-        );
-    }
-
-    public function getGlobals()
-    {
-        return array(
-            'foo_global' => 'foo_global',
-        );
-    }
-
-    public function getName()
-    {
-        return 'environment_test';
-    }
-}
-
-class Twig_Tests_EnvironmentTest_TokenParser extends Twig_TokenParser
-{
-    public function parse(Twig_Token $token)
-    {
-    }
-
-    public function getTag()
-    {
-        return 'test';
-    }
-}
-
-class Twig_Tests_EnvironmentTest_NodeVisitor implements Twig_NodeVisitorInterface
-{
-    public function enterNode(Twig_NodeInterface $node, Twig_Environment $env)
-    {
-        return $node;
-    }
-
-    public function leaveNode(Twig_NodeInterface $node, Twig_Environment $env)
-    {
-        return $node;
-    }
-
-    public function getPriority()
-    {
-        return 0;
-    }
-}
diff --git a/vendor/twig/twig/test/Twig/Tests/ErrorTest.php b/vendor/twig/twig/test/Twig/Tests/ErrorTest.php
deleted file mode 100644
index d58c40b..0000000
--- a/vendor/twig/twig/test/Twig/Tests/ErrorTest.php
+++ /dev/null
@@ -1,144 +0,0 @@
-<?php
-
-/*
- * This file is part of Twig.
- *
- * (c) Fabien Potencier
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-class Twig_Tests_ErrorTest extends PHPUnit_Framework_TestCase
-{
-    public function testErrorWithObjectFilename()
-    {
-        $error = new Twig_Error('foo');
-        $error->setTemplateFile(new SplFileInfo(__FILE__));
-
-        $this->assertContains('test'.DIRECTORY_SEPARATOR.'Twig'.DIRECTORY_SEPARATOR.'Tests'.DIRECTORY_SEPARATOR.'ErrorTest.php', $error->getMessage());
-    }
-
-    public function testErrorWithArrayFilename()
-    {
-        $error = new Twig_Error('foo');
-        $error->setTemplateFile(array('foo' => 'bar'));
-
-        $this->assertEquals('foo in {"foo":"bar"}', $error->getMessage());
-    }
-
-    public function testTwigExceptionAddsFileAndLineWhenMissingWithInheritanceOnDisk()
-    {
-        $loader = new Twig_Loader_Filesystem(dirname(__FILE__).'/Fixtures/errors');
-        $twig = new Twig_Environment($loader, array('strict_variables' => true, 'debug' => true, 'cache' => false));
-
-        $template = $twig->loadTemplate('index.html');
-        try {
-            $template->render(array());
-
-            $this->fail();
-        } catch (Twig_Error_Runtime $e) {
-            $this->assertEquals('Variable "foo" does not exist in "index.html" at line 3', $e->getMessage());
-            $this->assertEquals(3, $e->getTemplateLine());
-            $this->assertEquals('index.html', $e->getTemplateFile());
-        }
-
-        try {
-            $template->render(array('foo' => new Twig_Tests_ErrorTest_Foo()));
-
-            $this->fail();
-        } catch (Twig_Error_Runtime $e) {
-            $this->assertEquals('An exception has been thrown during the rendering of a template ("Runtime error...") in "index.html" at line 3.', $e->getMessage());
-            $this->assertEquals(3, $e->getTemplateLine());
-            $this->assertEquals('index.html', $e->getTemplateFile());
-        }
-    }
-
-    /**
-     * @dataProvider getErroredTemplates
-     */
-    public function testTwigExceptionAddsFileAndLine($templates, $name, $line)
-    {
-        $loader = new Twig_Loader_Array($templates);
-        $twig = new Twig_Environment($loader, array('strict_variables' => true, 'debug' => true, 'cache' => false));
-
-        $template = $twig->loadTemplate('index');
-
-        try {
-            $template->render(array());
-
-            $this->fail();
-        } catch (Twig_Error_Runtime $e) {
-            $this->assertEquals(sprintf('Variable "foo" does not exist in "%s" at line %d', $name, $line), $e->getMessage());
-            $this->assertEquals($line, $e->getTemplateLine());
-            $this->assertEquals($name, $e->getTemplateFile());
-        }
-
-        try {
-            $template->render(array('foo' => new Twig_Tests_ErrorTest_Foo()));
-
-            $this->fail();
-        } catch (Twig_Error_Runtime $e) {
-            $this->assertEquals(sprintf('An exception has been thrown during the rendering of a template ("Runtime error...") in "%s" at line %d.', $name, $line), $e->getMessage());
-            $this->assertEquals($line, $e->getTemplateLine());
-            $this->assertEquals($name, $e->getTemplateFile());
-        }
-    }
-
-    public function getErroredTemplates()
-    {
-        return array(
-            // error occurs in a template
-            array(
-                array(
-                    'index' => "\n\n{{ foo.bar }}\n\n\n{{ 'foo' }}",
-                ),
-                'index', 3,
-            ),
-
-            // error occurs in an included template
-            array(
-                array(
-                    'index' => "{% include 'partial' %}",
-                    'partial' => '{{ foo.bar }}',
-                ),
-                'partial', 1,
-            ),
-
-            // error occurs in a parent block when called via parent()
-            array(
-                array(
-                    'index' => "{% extends 'base' %}
-                    {% block content %}
-                        {{ parent() }}
-                    {% endblock %}",
-                    'base' => '{% block content %}{{ foo.bar }}{% endblock %}',
-                ),
-                'base', 1,
-            ),
-
-            // error occurs in a block from the child
-            array(
-                array(
-                    'index' => "{% extends 'base' %}
-                    {% block content %}
-                        {{ foo.bar }}
-                    {% endblock %}
-                    {% block foo %}
-                        {{ foo.bar }}
-                    {% endblock %}",
-                    'base' => '{% block content %}{% endblock %}',
-                ),
-                'index', 3,
-            ),
-        );
-    }
-}
-
-class Twig_Tests_ErrorTest_Foo
-{
-    public function bar()
-    {
-        throw new Exception('Runtime error...');
-    }
-}
diff --git a/vendor/twig/twig/test/Twig/Tests/ExpressionParserTest.php b/vendor/twig/twig/test/Twig/Tests/ExpressionParserTest.php
deleted file mode 100644
index ff263cf..0000000
--- a/vendor/twig/twig/test/Twig/Tests/ExpressionParserTest.php
+++ /dev/null
@@ -1,332 +0,0 @@
-<?php
-
-/*
- * This file is part of Twig.
- *
- * (c) Fabien Potencier
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-class Twig_Tests_ExpressionParserTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @expectedException Twig_Error_Syntax
-     * @dataProvider getFailingTestsForAssignment
-     */
-    public function testCanOnlyAssignToNames($template)
-    {
-        $env = new Twig_Environment($this->getMock('Twig_LoaderInterface'), array('cache' => false, 'autoescape' => false));
-        $parser = new Twig_Parser($env);
-
-        $parser->parse($env->tokenize($template, 'index'));
-    }
-
-    public function getFailingTestsForAssignment()
-    {
-        return array(
-            array('{% set false = "foo" %}'),
-            array('{% set true = "foo" %}'),
-            array('{% set none = "foo" %}'),
-            array('{% set 3 = "foo" %}'),
-            array('{% set 1 + 2 = "foo" %}'),
-            array('{% set "bar" = "foo" %}'),
-            array('{% set %}{% endset %}'),
-        );
-    }
-
-    /**
-     * @dataProvider getTestsForArray
-     */
-    public function testArrayExpression($template, $expected)
-    {
-        $env = new Twig_Environment($this->getMock('Twig_LoaderInterface'), array('cache' => false, 'autoescape' => false));
-        $stream = $env->tokenize($template, 'index');
-        $parser = new Twig_Parser($env);
-
-        $this->assertEquals($expected, $parser->parse($stream)->getNode('body')->getNode(0)->getNode('expr'));
-    }
-
-    /**
-     * @expectedException Twig_Error_Syntax
-     * @dataProvider getFailingTestsForArray
-     */
-    public function testArraySyntaxError($template)
-    {
-        $env = new Twig_Environment($this->getMock('Twig_LoaderInterface'), array('cache' => false, 'autoescape' => false));
-        $parser = new Twig_Parser($env);
-
-        $parser->parse($env->tokenize($template, 'index'));
-    }
-
-    public function getFailingTestsForArray()
-    {
-        return array(
-            array('{{ [1, "a": "b"] }}'),
-            array('{{ {"a": "b", 2} }}'),
-        );
-    }
-
-    public function getTestsForArray()
-    {
-        return array(
-            // simple array
-            array('{{ [1, 2] }}', new Twig_Node_Expression_Array(array(
-                  new Twig_Node_Expression_Constant(0, 1),
-                  new Twig_Node_Expression_Constant(1, 1),
-
-                  new Twig_Node_Expression_Constant(1, 1),
-                  new Twig_Node_Expression_Constant(2, 1),
-                ), 1),
-            ),
-
-            // array with trailing ,
-            array('{{ [1, 2, ] }}', new Twig_Node_Expression_Array(array(
-                  new Twig_Node_Expression_Constant(0, 1),
-                  new Twig_Node_Expression_Constant(1, 1),
-
-                  new Twig_Node_Expression_Constant(1, 1),
-                  new Twig_Node_Expression_Constant(2, 1),
-                ), 1),
-            ),
-
-            // simple hash
-            array('{{ {"a": "b", "b": "c"} }}', new Twig_Node_Expression_Array(array(
-                  new Twig_Node_Expression_Constant('a', 1),
-                  new Twig_Node_Expression_Constant('b', 1),
-
-                  new Twig_Node_Expression_Constant('b', 1),
-                  new Twig_Node_Expression_Constant('c', 1),
-                ), 1),
-            ),
-
-            // hash with trailing ,
-            array('{{ {"a": "b", "b": "c", } }}', new Twig_Node_Expression_Array(array(
-                  new Twig_Node_Expression_Constant('a', 1),
-                  new Twig_Node_Expression_Constant('b', 1),
-
-                  new Twig_Node_Expression_Constant('b', 1),
-                  new Twig_Node_Expression_Constant('c', 1),
-                ), 1),
-            ),
-
-            // hash in an array
-            array('{{ [1, {"a": "b", "b": "c"}] }}', new Twig_Node_Expression_Array(array(
-                  new Twig_Node_Expression_Constant(0, 1),
-                  new Twig_Node_Expression_Constant(1, 1),
-
-                  new Twig_Node_Expression_Constant(1, 1),
-                  new Twig_Node_Expression_Array(array(
-                        new Twig_Node_Expression_Constant('a', 1),
-                        new Twig_Node_Expression_Constant('b', 1),
-
-                        new Twig_Node_Expression_Constant('b', 1),
-                        new Twig_Node_Expression_Constant('c', 1),
-                      ), 1),
-                ), 1),
-            ),
-
-            // array in a hash
-            array('{{ {"a": [1, 2], "b": "c"} }}', new Twig_Node_Expression_Array(array(
-                  new Twig_Node_Expression_Constant('a', 1),
-                  new Twig_Node_Expression_Array(array(
-                        new Twig_Node_Expression_Constant(0, 1),
-                        new Twig_Node_Expression_Constant(1, 1),
-
-                        new Twig_Node_Expression_Constant(1, 1),
-                        new Twig_Node_Expression_Constant(2, 1),
-                      ), 1),
-                  new Twig_Node_Expression_Constant('b', 1),
-                  new Twig_Node_Expression_Constant('c', 1),
-                ), 1),
-            ),
-        );
-    }
-
-    /**
-     * @expectedException Twig_Error_Syntax
-     */
-    public function testStringExpressionDoesNotConcatenateTwoConsecutiveStrings()
-    {
-        $env = new Twig_Environment($this->getMock('Twig_LoaderInterface'), array('cache' => false, 'autoescape' => false, 'optimizations' => 0));
-        $stream = $env->tokenize('{{ "a" "b" }}', 'index');
-        $parser = new Twig_Parser($env);
-
-        $parser->parse($stream);
-    }
-
-    /**
-     * @dataProvider getTestsForString
-     */
-    public function testStringExpression($template, $expected)
-    {
-        $env = new Twig_Environment($this->getMock('Twig_LoaderInterface'), array('cache' => false, 'autoescape' => false, 'optimizations' => 0));
-        $stream = $env->tokenize($template, 'index');
-        $parser = new Twig_Parser($env);
-
-        $this->assertEquals($expected, $parser->parse($stream)->getNode('body')->getNode(0)->getNode('expr'));
-    }
-
-    public function getTestsForString()
-    {
-        return array(
-            array(
-                '{{ "foo" }}', new Twig_Node_Expression_Constant('foo', 1),
-            ),
-            array(
-                '{{ "foo #{bar}" }}', new Twig_Node_Expression_Binary_Concat(
-                    new Twig_Node_Expression_Constant('foo ', 1),
-                    new Twig_Node_Expression_Name('bar', 1),
-                    1
-                ),
-            ),
-            array(
-                '{{ "foo #{bar} baz" }}', new Twig_Node_Expression_Binary_Concat(
-                    new Twig_Node_Expression_Binary_Concat(
-                        new Twig_Node_Expression_Constant('foo ', 1),
-                        new Twig_Node_Expression_Name('bar', 1),
-                        1
-                    ),
-                    new Twig_Node_Expression_Constant(' baz', 1),
-                    1
-                ),
-            ),
-
-            array(
-                '{{ "foo #{"foo #{bar} baz"} baz" }}', new Twig_Node_Expression_Binary_Concat(
-                    new Twig_Node_Expression_Binary_Concat(
-                        new Twig_Node_Expression_Constant('foo ', 1),
-                        new Twig_Node_Expression_Binary_Concat(
-                            new Twig_Node_Expression_Binary_Concat(
-                                new Twig_Node_Expression_Constant('foo ', 1),
-                                new Twig_Node_Expression_Name('bar', 1),
-                                1
-                            ),
-                            new Twig_Node_Expression_Constant(' baz', 1),
-                            1
-                        ),
-                        1
-                    ),
-                    new Twig_Node_Expression_Constant(' baz', 1),
-                    1
-                ),
-            ),
-        );
-    }
-
-    /**
-     * @expectedException Twig_Error_Syntax
-     */
-    public function testAttributeCallDoesNotSupportNamedArguments()
-    {
-        $env = new Twig_Environment($this->getMock('Twig_LoaderInterface'), array('cache' => false, 'autoescape' => false));
-        $parser = new Twig_Parser($env);
-
-        $parser->parse($env->tokenize('{{ foo.bar(name="Foo") }}', 'index'));
-    }
-
-    /**
-     * @expectedException Twig_Error_Syntax
-     */
-    public function testMacroCallDoesNotSupportNamedArguments()
-    {
-        $env = new Twig_Environment($this->getMock('Twig_LoaderInterface'), array('cache' => false, 'autoescape' => false));
-        $parser = new Twig_Parser($env);
-
-        $parser->parse($env->tokenize('{% from _self import foo %}{% macro foo() %}{% endmacro %}{{ foo(name="Foo") }}', 'index'));
-    }
-
-    /**
-     * @expectedException        Twig_Error_Syntax
-     * @expectedExceptionMessage An argument must be a name. Unexpected token "string" of value "a" ("name" expected) in "index" at line 1
-     */
-    public function testMacroDefinitionDoesNotSupportNonNameVariableName()
-    {
-        $env = new Twig_Environment($this->getMock('Twig_LoaderInterface'), array('cache' => false, 'autoescape' => false));
-        $parser = new Twig_Parser($env);
-
-        $parser->parse($env->tokenize('{% macro foo("a") %}{% endmacro %}', 'index'));
-    }
-
-    /**
-     * @expectedException        Twig_Error_Syntax
-     * @expectedExceptionMessage A default value for an argument must be a constant (a boolean, a string, a number, or an array) in "index" at line 1
-     * @dataProvider             getMacroDefinitionDoesNotSupportNonConstantDefaultValues
-     */
-    public function testMacroDefinitionDoesNotSupportNonConstantDefaultValues($template)
-    {
-        $env = new Twig_Environment($this->getMock('Twig_LoaderInterface'), array('cache' => false, 'autoescape' => false));
-        $parser = new Twig_Parser($env);
-
-        $parser->parse($env->tokenize($template, 'index'));
-    }
-
-    public function getMacroDefinitionDoesNotSupportNonConstantDefaultValues()
-    {
-        return array(
-            array('{% macro foo(name = "a #{foo} a") %}{% endmacro %}'),
-            array('{% macro foo(name = [["b", "a #{foo} a"]]) %}{% endmacro %}'),
-        );
-    }
-
-    /**
-     * @dataProvider getMacroDefinitionSupportsConstantDefaultValues
-     */
-    public function testMacroDefinitionSupportsConstantDefaultValues($template)
-    {
-        $env = new Twig_Environment($this->getMock('Twig_LoaderInterface'), array('cache' => false, 'autoescape' => false));
-        $parser = new Twig_Parser($env);
-
-        $parser->parse($env->tokenize($template, 'index'));
-    }
-
-    public function getMacroDefinitionSupportsConstantDefaultValues()
-    {
-        return array(
-            array('{% macro foo(name = "aa") %}{% endmacro %}'),
-            array('{% macro foo(name = 12) %}{% endmacro %}'),
-            array('{% macro foo(name = true) %}{% endmacro %}'),
-            array('{% macro foo(name = ["a"]) %}{% endmacro %}'),
-            array('{% macro foo(name = [["a"]]) %}{% endmacro %}'),
-            array('{% macro foo(name = {a: "a"}) %}{% endmacro %}'),
-            array('{% macro foo(name = {a: {b: "a"}}) %}{% endmacro %}'),
-        );
-    }
-
-    /**
-     * @expectedException        Twig_Error_Syntax
-     * @expectedExceptionMessage The function "cycl" does not exist. Did you mean "cycle" in "index" at line 1
-     */
-    public function testUnknownFunction()
-    {
-        $env = new Twig_Environment($this->getMock('Twig_LoaderInterface'), array('cache' => false, 'autoescape' => false));
-        $parser = new Twig_Parser($env);
-
-        $parser->parse($env->tokenize('{{ cycl() }}', 'index'));
-    }
-
-    /**
-     * @expectedException        Twig_Error_Syntax
-     * @expectedExceptionMessage The filter "lowe" does not exist. Did you mean "lower" in "index" at line 1
-     */
-    public function testUnknownFilter()
-    {
-        $env = new Twig_Environment($this->getMock('Twig_LoaderInterface'), array('cache' => false, 'autoescape' => false));
-        $parser = new Twig_Parser($env);
-
-        $parser->parse($env->tokenize('{{ 1|lowe }}', 'index'));
-    }
-
-    /**
-     * @expectedException        Twig_Error_Syntax
-     * @expectedExceptionMessage The test "nul" does not exist. Did you mean "null" in "index" at line 1
-     */
-    public function testUnknownTest()
-    {
-        $env = new Twig_Environment($this->getMock('Twig_LoaderInterface'), array('cache' => false, 'autoescape' => false));
-        $parser = new Twig_Parser($env);
-
-        $parser->parse($env->tokenize('{{ 1 is nul }}', 'index'));
-    }
-}
diff --git a/vendor/twig/twig/test/Twig/Tests/Extension/CoreTest.php b/vendor/twig/twig/test/Twig/Tests/Extension/CoreTest.php
deleted file mode 100644
index a4692c2..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Extension/CoreTest.php
+++ /dev/null
@@ -1,156 +0,0 @@
-<?php
-
-/*
- * This file is part of Twig.
- *
- * (c) Fabien Potencier
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-class Twig_Tests_Extension_CoreTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @dataProvider getRandomFunctionTestData
-     */
-    public function testRandomFunction($value, $expectedInArray)
-    {
-        $env = new Twig_Environment($this->getMock('Twig_LoaderInterface'));
-
-        for ($i = 0; $i < 100; ++$i) {
-            $this->assertTrue(in_array(twig_random($env, $value), $expectedInArray, true)); // assertContains() would not consider the type
-        }
-    }
-
-    public function getRandomFunctionTestData()
-    {
-        return array(
-            array(// array
-                array('apple', 'orange', 'citrus'),
-                array('apple', 'orange', 'citrus'),
-            ),
-            array(// Traversable
-                new ArrayObject(array('apple', 'orange', 'citrus')),
-                array('apple', 'orange', 'citrus'),
-            ),
-            array(// unicode string
-                'Ä€é',
-                array('Ä', '€', 'é'),
-            ),
-            array(// numeric but string
-                '123',
-                array('1', '2', '3'),
-            ),
-            array(// integer
-                5,
-                range(0, 5, 1),
-            ),
-            array(// float
-                5.9,
-                range(0, 5, 1),
-            ),
-            array(// negative
-                -2,
-                array(0, -1, -2),
-            ),
-        );
-    }
-
-    public function testRandomFunctionWithoutParameter()
-    {
-        $max = mt_getrandmax();
-
-        for ($i = 0; $i < 100; ++$i) {
-            $val = twig_random(new Twig_Environment($this->getMock('Twig_LoaderInterface')));
-            $this->assertTrue(is_int($val) && $val >= 0 && $val <= $max);
-        }
-    }
-
-    public function testRandomFunctionReturnsAsIs()
-    {
-        $this->assertSame('', twig_random(new Twig_Environment($this->getMock('Twig_LoaderInterface')), ''));
-        $this->assertSame('', twig_random(new Twig_Environment($this->getMock('Twig_LoaderInterface'), array('charset' => null)), ''));
-
-        $instance = new stdClass();
-        $this->assertSame($instance, twig_random(new Twig_Environment($this->getMock('Twig_LoaderInterface')), $instance));
-    }
-
-    /**
-     * @expectedException Twig_Error_Runtime
-     */
-    public function testRandomFunctionOfEmptyArrayThrowsException()
-    {
-        twig_random(new Twig_Environment($this->getMock('Twig_LoaderInterface')), array());
-    }
-
-    public function testRandomFunctionOnNonUTF8String()
-    {
-        if (!function_exists('iconv') && !function_exists('mb_convert_encoding')) {
-            $this->markTestSkipped('needs iconv or mbstring');
-        }
-
-        $twig = new Twig_Environment($this->getMock('Twig_LoaderInterface'));
-        $twig->setCharset('ISO-8859-1');
-
-        $text = twig_convert_encoding('Äé', 'ISO-8859-1', 'UTF-8');
-        for ($i = 0; $i < 30; ++$i) {
-            $rand = twig_random($twig, $text);
-            $this->assertTrue(in_array(twig_convert_encoding($rand, 'UTF-8', 'ISO-8859-1'), array('Ä', 'é'), true));
-        }
-    }
-
-    public function testReverseFilterOnNonUTF8String()
-    {
-        if (!function_exists('iconv') && !function_exists('mb_convert_encoding')) {
-            $this->markTestSkipped('needs iconv or mbstring');
-        }
-
-        $twig = new Twig_Environment($this->getMock('Twig_LoaderInterface'));
-        $twig->setCharset('ISO-8859-1');
-
-        $input = twig_convert_encoding('Äé', 'ISO-8859-1', 'UTF-8');
-        $output = twig_convert_encoding(twig_reverse_filter($twig, $input), 'UTF-8', 'ISO-8859-1');
-
-        $this->assertEquals($output, 'éÄ');
-    }
-
-    public function testCustomEscaper()
-    {
-        $twig = new Twig_Environment($this->getMock('Twig_LoaderInterface'));
-        $twig->getExtension('core')->setEscaper('foo', 'foo_escaper_for_test');
-
-        $this->assertEquals('fooUTF-8', twig_escape_filter($twig, 'foo', 'foo'));
-    }
-
-    /**
-     * @expectedException Twig_Error_Runtime
-     */
-    public function testUnknownCustomEscaper()
-    {
-        twig_escape_filter(new Twig_Environment($this->getMock('Twig_LoaderInterface')), 'foo', 'bar');
-    }
-
-    public function testTwigFirst()
-    {
-        $twig = new Twig_Environment($this->getMock('Twig_LoaderInterface'));
-        $this->assertEquals('a', twig_first($twig, 'abc'));
-        $this->assertEquals(1, twig_first($twig, array(1, 2, 3)));
-        $this->assertSame('', twig_first($twig, null));
-        $this->assertSame('', twig_first($twig, ''));
-    }
-
-    public function testTwigLast()
-    {
-        $twig = new Twig_Environment($this->getMock('Twig_LoaderInterface'));
-        $this->assertEquals('c', twig_last($twig, 'abc'));
-        $this->assertEquals(3, twig_last($twig, array(1, 2, 3)));
-        $this->assertSame('', twig_last($twig, null));
-        $this->assertSame('', twig_last($twig, ''));
-    }
-}
-
-function foo_escaper_for_test(Twig_Environment $env, $string, $charset)
-{
-    return $string.$charset;
-}
diff --git a/vendor/twig/twig/test/Twig/Tests/Extension/SandboxTest.php b/vendor/twig/twig/test/Twig/Tests/Extension/SandboxTest.php
deleted file mode 100644
index d21fb23..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Extension/SandboxTest.php
+++ /dev/null
@@ -1,220 +0,0 @@
-<?php
-
-/*
- * This file is part of Twig.
- *
- * (c) Fabien Potencier
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-class Twig_Tests_Extension_SandboxTest extends PHPUnit_Framework_TestCase
-{
-    protected static $params, $templates;
-
-    public function setUp()
-    {
-        self::$params = array(
-            'name' => 'Fabien',
-            'obj' => new FooObject(),
-            'arr' => array('obj' => new FooObject()),
-        );
-
-        self::$templates = array(
-            '1_basic1' => '{{ obj.foo }}',
-            '1_basic2' => '{{ name|upper }}',
-            '1_basic3' => '{% if name %}foo{% endif %}',
-            '1_basic4' => '{{ obj.bar }}',
-            '1_basic5' => '{{ obj }}',
-            '1_basic6' => '{{ arr.obj }}',
-            '1_basic7' => '{{ cycle(["foo","bar"], 1) }}',
-            '1_basic8' => '{{ obj.getfoobar }}{{ obj.getFooBar }}',
-            '1_basic9' => '{{ obj.foobar }}{{ obj.fooBar }}',
-            '1_basic' => '{% if obj.foo %}{{ obj.foo|upper }}{% endif %}',
-            '1_layout' => '{% block content %}{% endblock %}',
-            '1_child' => "{% extends \"1_layout\" %}\n{% block content %}\n{{ \"a\"|json_encode }}\n{% endblock %}",
-        );
-    }
-
-    /**
-     * @expectedException        Twig_Sandbox_SecurityError
-     * @expectedExceptionMessage Filter "json_encode" is not allowed in "1_child" at line 3.
-     */
-    public function testSandboxWithInheritance()
-    {
-        $twig = $this->getEnvironment(true, array(), self::$templates, array('block'));
-        $twig->loadTemplate('1_child')->render(array());
-    }
-
-    public function testSandboxGloballySet()
-    {
-        $twig = $this->getEnvironment(false, array(), self::$templates);
-        $this->assertEquals('FOO', $twig->loadTemplate('1_basic')->render(self::$params), 'Sandbox does nothing if it is disabled globally');
-
-        $twig = $this->getEnvironment(true, array(), self::$templates);
-        try {
-            $twig->loadTemplate('1_basic1')->render(self::$params);
-            $this->fail('Sandbox throws a SecurityError exception if an unallowed method is called');
-        } catch (Twig_Sandbox_SecurityError $e) {
-        }
-
-        $twig = $this->getEnvironment(true, array(), self::$templates);
-        try {
-            $twig->loadTemplate('1_basic2')->render(self::$params);
-            $this->fail('Sandbox throws a SecurityError exception if an unallowed filter is called');
-        } catch (Twig_Sandbox_SecurityError $e) {
-        }
-
-        $twig = $this->getEnvironment(true, array(), self::$templates);
-        try {
-            $twig->loadTemplate('1_basic3')->render(self::$params);
-            $this->fail('Sandbox throws a SecurityError exception if an unallowed tag is used in the template');
-        } catch (Twig_Sandbox_SecurityError $e) {
-        }
-
-        $twig = $this->getEnvironment(true, array(), self::$templates);
-        try {
-            $twig->loadTemplate('1_basic4')->render(self::$params);
-            $this->fail('Sandbox throws a SecurityError exception if an unallowed property is called in the template');
-        } catch (Twig_Sandbox_SecurityError $e) {
-        }
-
-        $twig = $this->getEnvironment(true, array(), self::$templates);
-        try {
-            $twig->loadTemplate('1_basic5')->render(self::$params);
-            $this->fail('Sandbox throws a SecurityError exception if an unallowed method (__toString()) is called in the template');
-        } catch (Twig_Sandbox_SecurityError $e) {
-        }
-
-        $twig = $this->getEnvironment(true, array(), self::$templates);
-        try {
-            $twig->loadTemplate('1_basic6')->render(self::$params);
-            $this->fail('Sandbox throws a SecurityError exception if an unallowed method (__toString()) is called in the template');
-        } catch (Twig_Sandbox_SecurityError $e) {
-        }
-
-        $twig = $this->getEnvironment(true, array(), self::$templates);
-        try {
-            $twig->loadTemplate('1_basic7')->render(self::$params);
-            $this->fail('Sandbox throws a SecurityError exception if an unallowed function is called in the template');
-        } catch (Twig_Sandbox_SecurityError $e) {
-        }
-
-        $twig = $this->getEnvironment(true, array(), self::$templates, array(), array(), array('FooObject' => 'foo'));
-        FooObject::reset();
-        $this->assertEquals('foo', $twig->loadTemplate('1_basic1')->render(self::$params), 'Sandbox allow some methods');
-        $this->assertEquals(1, FooObject::$called['foo'], 'Sandbox only calls method once');
-
-        $twig = $this->getEnvironment(true, array(), self::$templates, array(), array(), array('FooObject' => '__toString'));
-        FooObject::reset();
-        $this->assertEquals('foo', $twig->loadTemplate('1_basic5')->render(self::$params), 'Sandbox allow some methods');
-        $this->assertEquals(1, FooObject::$called['__toString'], 'Sandbox only calls method once');
-
-        $twig = $this->getEnvironment(false, array(), self::$templates);
-        FooObject::reset();
-        $this->assertEquals('foo', $twig->loadTemplate('1_basic5')->render(self::$params), 'Sandbox allows __toString when sandbox disabled');
-        $this->assertEquals(1, FooObject::$called['__toString'], 'Sandbox only calls method once');
-
-        $twig = $this->getEnvironment(true, array(), self::$templates, array(), array('upper'));
-        $this->assertEquals('FABIEN', $twig->loadTemplate('1_basic2')->render(self::$params), 'Sandbox allow some filters');
-
-        $twig = $this->getEnvironment(true, array(), self::$templates, array('if'));
-        $this->assertEquals('foo', $twig->loadTemplate('1_basic3')->render(self::$params), 'Sandbox allow some tags');
-
-        $twig = $this->getEnvironment(true, array(), self::$templates, array(), array(), array(), array('FooObject' => 'bar'));
-        $this->assertEquals('bar', $twig->loadTemplate('1_basic4')->render(self::$params), 'Sandbox allow some properties');
-
-        $twig = $this->getEnvironment(true, array(), self::$templates, array(), array(), array(), array(), array('cycle'));
-        $this->assertEquals('bar', $twig->loadTemplate('1_basic7')->render(self::$params), 'Sandbox allow some functions');
-
-        foreach (array('getfoobar', 'getFoobar', 'getFooBar') as $name) {
-            $twig = $this->getEnvironment(true, array(), self::$templates, array(), array(), array('FooObject' => $name));
-            FooObject::reset();
-            $this->assertEquals('foobarfoobar', $twig->loadTemplate('1_basic8')->render(self::$params), 'Sandbox allow methods in a case-insensitive way');
-            $this->assertEquals(2, FooObject::$called['getFooBar'], 'Sandbox only calls method once');
-
-            $this->assertEquals('foobarfoobar', $twig->loadTemplate('1_basic9')->render(self::$params), 'Sandbox allow methods via shortcut names (ie. without get/set)');
-        }
-    }
-
-    public function testSandboxLocallySetForAnInclude()
-    {
-        self::$templates = array(
-            '2_basic' => '{{ obj.foo }}{% include "2_included" %}{{ obj.foo }}',
-            '2_included' => '{% if obj.foo %}{{ obj.foo|upper }}{% endif %}',
-        );
-
-        $twig = $this->getEnvironment(false, array(), self::$templates);
-        $this->assertEquals('fooFOOfoo', $twig->loadTemplate('2_basic')->render(self::$params), 'Sandbox does nothing if disabled globally and sandboxed not used for the include');
-
-        self::$templates = array(
-            '3_basic' => '{{ obj.foo }}{% sandbox %}{% include "3_included" %}{% endsandbox %}{{ obj.foo }}',
-            '3_included' => '{% if obj.foo %}{{ obj.foo|upper }}{% endif %}',
-        );
-
-        $twig = $this->getEnvironment(true, array(), self::$templates);
-        try {
-            $twig->loadTemplate('3_basic')->render(self::$params);
-            $this->fail('Sandbox throws a SecurityError exception when the included file is sandboxed');
-        } catch (Twig_Sandbox_SecurityError $e) {
-        }
-    }
-
-    public function testMacrosInASandbox()
-    {
-        $twig = $this->getEnvironment(true, array('autoescape' => 'html'), array('index' => <<<EOF
-{%- import _self as macros %}
-
-{%- macro test(text) %}<p>{{ text }}</p>{% endmacro %}
-
-{{- macros.test('username') }}
-EOF
-        ), array('macro', 'import'), array('escape'));
-
-        $this->assertEquals('<p>username</p>', $twig->loadTemplate('index')->render(array()));
-    }
-
-    protected function getEnvironment($sandboxed, $options, $templates, $tags = array(), $filters = array(), $methods = array(), $properties = array(), $functions = array())
-    {
-        $loader = new Twig_Loader_Array($templates);
-        $twig = new Twig_Environment($loader, array_merge(array('debug' => true, 'cache' => false, 'autoescape' => false), $options));
-        $policy = new Twig_Sandbox_SecurityPolicy($tags, $filters, $methods, $properties, $functions);
-        $twig->addExtension(new Twig_Extension_Sandbox($policy, $sandboxed));
-
-        return $twig;
-    }
-}
-
-class FooObject
-{
-    public static $called = array('__toString' => 0, 'foo' => 0, 'getFooBar' => 0);
-
-    public $bar = 'bar';
-
-    public static function reset()
-    {
-        self::$called = array('__toString' => 0, 'foo' => 0, 'getFooBar' => 0);
-    }
-
-    public function __toString()
-    {
-        ++self::$called['__toString'];
-
-        return 'foo';
-    }
-
-    public function foo()
-    {
-        ++self::$called['foo'];
-
-        return 'foo';
-    }
-
-    public function getFooBar()
-    {
-        ++self::$called['getFooBar'];
-
-        return 'foobar';
-    }
-}
diff --git a/vendor/twig/twig/test/Twig/Tests/FileCachingTest.php b/vendor/twig/twig/test/Twig/Tests/FileCachingTest.php
deleted file mode 100644
index 14e0144..0000000
--- a/vendor/twig/twig/test/Twig/Tests/FileCachingTest.php
+++ /dev/null
@@ -1,85 +0,0 @@
-<?php
-
-/*
- * This file is part of Twig.
- *
- * (c) Fabien Potencier
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-class Twig_Tests_FileCachingTest extends PHPUnit_Framework_TestCase
-{
-    protected $fileName;
-    protected $env;
-    protected $tmpDir;
-
-    public function setUp()
-    {
-        $this->tmpDir = sys_get_temp_dir().'/TwigTests';
-        if (!file_exists($this->tmpDir)) {
-            @mkdir($this->tmpDir, 0777, true);
-        }
-
-        if (!is_writable($this->tmpDir)) {
-            $this->markTestSkipped(sprintf('Unable to run the tests as "%s" is not writable.', $this->tmpDir));
-        }
-
-        $this->env = new Twig_Environment(new Twig_Loader_Array(array('index' => 'index', 'index2' => 'index2')), array('cache' => $this->tmpDir));
-    }
-
-    public function tearDown()
-    {
-        if ($this->fileName) {
-            unlink($this->fileName);
-        }
-
-        $this->removeDir($this->tmpDir);
-    }
-
-    /**
-     * @group legacy
-     */
-    public function testWritingCacheFiles()
-    {
-        $name = 'index';
-        $this->env->loadTemplate($name);
-        $cacheFileName = $this->env->getCacheFilename($name);
-
-        $this->assertTrue(file_exists($cacheFileName), 'Cache file does not exist.');
-        $this->fileName = $cacheFileName;
-    }
-
-    /**
-     * @group legacy
-     */
-    public function testClearingCacheFiles()
-    {
-        $name = 'index2';
-        $this->env->loadTemplate($name);
-        $cacheFileName = $this->env->getCacheFilename($name);
-
-        $this->assertTrue(file_exists($cacheFileName), 'Cache file does not exist.');
-        $this->env->clearCacheFiles();
-        $this->assertFalse(file_exists($cacheFileName), 'Cache file was not cleared.');
-    }
-
-    private function removeDir($target)
-    {
-        $fp = opendir($target);
-        while (false !== $file = readdir($fp)) {
-            if (in_array($file, array('.', '..'))) {
-                continue;
-            }
-
-            if (is_dir($target.'/'.$file)) {
-                self::removeDir($target.'/'.$file);
-            } else {
-                unlink($target.'/'.$file);
-            }
-        }
-        closedir($fp);
-        rmdir($target);
-    }
-}
diff --git a/vendor/twig/twig/test/Twig/Tests/FileExtensionEscapingStrategyTest.php b/vendor/twig/twig/test/Twig/Tests/FileExtensionEscapingStrategyTest.php
deleted file mode 100644
index b310a5b..0000000
--- a/vendor/twig/twig/test/Twig/Tests/FileExtensionEscapingStrategyTest.php
+++ /dev/null
@@ -1,51 +0,0 @@
-<?php
-
-/*
- * This file is part of Twig.
- *
- * (c) Fabien Potencier
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-class Twig_Tests_FileExtensionEscapingStrategyTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @dataProvider getGuessData
-     */
-    public function testGuess($strategy, $filename)
-    {
-        $this->assertSame($strategy, Twig_FileExtensionEscapingStrategy::guess($filename));
-    }
-
-    public function getGuessData()
-    {
-        return array(
-            // default
-            array('html', 'foo.html'),
-            array('html', 'foo.html.twig'),
-            array('html', 'foo'),
-            array('html', 'foo.bar.twig'),
-            array('html', 'foo.txt/foo'),
-            array('html', 'foo.txt/foo.js/'),
-
-            // css
-            array('css', 'foo.css'),
-            array('css', 'foo.css.twig'),
-            array('css', 'foo.twig.css'),
-            array('css', 'foo.js.css'),
-            array('css', 'foo.js.css.twig'),
-
-            // js
-            array('js', 'foo.js'),
-            array('js', 'foo.js.twig'),
-            array('js', 'foo.txt/foo.js'),
-            array('js', 'foo.txt.twig/foo.js'),
-
-            // txt
-            array(false, 'foo.txt'),
-            array(false, 'foo.txt.twig'),
-        );
-    }
-}
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/autoescape/filename.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/autoescape/filename.test
deleted file mode 100644
index b091ad3..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/autoescape/filename.test
+++ /dev/null
@@ -1,18 +0,0 @@
---TEST--
-"filename" autoescape strategy
---TEMPLATE--
-{{ br -}}
-{{ include('index.html.twig') -}}
-{{ include('index.txt.twig') -}}
---TEMPLATE(index.html.twig)--
-{{ br -}}
---TEMPLATE(index.txt.twig)--
-{{ br -}}
---DATA--
-return array('br' => '<br />')
---CONFIG--
-return array('autoescape' => 'filename')
---EXPECT--
-&lt;br /&gt;
-&lt;br /&gt;
-<br />
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/errors/base.html b/vendor/twig/twig/test/Twig/Tests/Fixtures/errors/base.html
deleted file mode 100644
index cb0dbe4..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/errors/base.html
+++ /dev/null
@@ -1 +0,0 @@
-{% block content %}{% endblock %}
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/errors/index.html b/vendor/twig/twig/test/Twig/Tests/Fixtures/errors/index.html
deleted file mode 100644
index df57c82..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/errors/index.html
+++ /dev/null
@@ -1,7 +0,0 @@
-{% extends 'base.html' %}
-{% block content %}
-    {{ foo.bar }}
-{% endblock %}
-{% block foo %}
-    {{ foo.bar }}
-{% endblock %}
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/exceptions/multiline_array_with_undefined_variable.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/exceptions/multiline_array_with_undefined_variable.test
deleted file mode 100644
index ce49165..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/exceptions/multiline_array_with_undefined_variable.test
+++ /dev/null
@@ -1,18 +0,0 @@
---TEST--
-Exception for multiline array with undefined variable
---TEMPLATE--
-{% set foo = {
-   foo: 'foo',
-   bar: 'bar',
-
-
-   foobar: foobar,
-
-
-
-   foo2: foo2,
-} %}
---DATA--
-return array('foobar' => 'foobar')
---EXCEPTION--
-Twig_Error_Runtime: Variable "foo2" does not exist in "index.twig" at line 11
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/exceptions/multiline_array_with_undefined_variable_again.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/exceptions/multiline_array_with_undefined_variable_again.test
deleted file mode 100644
index e3c040f..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/exceptions/multiline_array_with_undefined_variable_again.test
+++ /dev/null
@@ -1,18 +0,0 @@
---TEST--
-Exception for multiline array with undefined variable
---TEMPLATE--
-{% set foo = {
-   foo: 'foo',
-   bar: 'bar',
-
-
-   foobar: foobar,
-
-
-
-   foo2: foo2,
-} %}
---DATA--
-return array()
---EXCEPTION--
-Twig_Error_Runtime: Variable "foobar" does not exist in "index.twig" at line 7
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/exceptions/multiline_function_with_undefined_variable.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/exceptions/multiline_function_with_undefined_variable.test
deleted file mode 100644
index d799a39..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/exceptions/multiline_function_with_undefined_variable.test
+++ /dev/null
@@ -1,12 +0,0 @@
---TEST--
-Exception for multile function with undefined variable
---TEMPLATE--
-{{ include('foo',
-   with_context=with_context
-) }}
---TEMPLATE(foo)--
-Foo
---DATA--
-return array()
---EXCEPTION--
-Twig_Error_Runtime: Variable "with_context" does not exist in "index.twig" at line 3
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/exceptions/multiline_function_with_unknown_argument.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/exceptions/multiline_function_with_unknown_argument.test
deleted file mode 100644
index 64761fc..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/exceptions/multiline_function_with_unknown_argument.test
+++ /dev/null
@@ -1,9 +0,0 @@
---TEST--
-Exception for multiline function with unknown argument
---TEMPLATE--
-{{ include('foo',
-   with_context=True,
-   invalid=False
-) }}
---EXCEPTION--
-Twig_Error_Syntax: Unknown argument "invalid" for function "include(template, variables, with_context, ignore_missing, sandboxed)" in "index.twig" at line 4.
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/exceptions/multiline_tag_with_undefined_variable.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/exceptions/multiline_tag_with_undefined_variable.test
deleted file mode 100644
index 096a5db..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/exceptions/multiline_tag_with_undefined_variable.test
+++ /dev/null
@@ -1,12 +0,0 @@
---TEST--
-Exception for multiline tag with undefined variable
---TEMPLATE--
-{% include 'foo'
-   with vars
-%}
---TEMPLATE(foo)--
-Foo
---DATA--
-return array()
---EXCEPTION--
-Twig_Error_Runtime: Variable "vars" does not exist in "index.twig" at line 3
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/exceptions/syntax_error_in_reused_template.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/exceptions/syntax_error_in_reused_template.test
deleted file mode 100644
index 5dd9f38..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/exceptions/syntax_error_in_reused_template.test
+++ /dev/null
@@ -1,10 +0,0 @@
---TEST--
-Exception for syntax error in reused template
---TEMPLATE--
-{% use 'foo.twig' %}
---TEMPLATE(foo.twig)--
-{% block bar %}
-    {% do node.data = 5 %}
-{% endblock %}
---EXCEPTION--
-Twig_Error_Syntax: Unexpected token "operator" of value "=" ("end of statement block" expected) in "foo.twig" at line 3
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/exceptions/unclosed_tag.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/exceptions/unclosed_tag.test
deleted file mode 100644
index 02245e9..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/exceptions/unclosed_tag.test
+++ /dev/null
@@ -1,20 +0,0 @@
---TEST--
-Exception for an unclosed tag
---TEMPLATE--
-{% block foo %}
-     {% if foo %}
-
-
-
-
-         {% for i in fo %}
-
-
-
-         {% endfor %}
-
-
-
-{% endblock %}
---EXCEPTION--
-Twig_Error_Syntax: Unexpected tag name "endblock" (expecting closing tag for the "if" tag defined near line 4) in "index.twig" at line 16
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/exceptions/undefined_parent.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/exceptions/undefined_parent.test
deleted file mode 100644
index c8e7a09..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/exceptions/undefined_parent.test
+++ /dev/null
@@ -1,8 +0,0 @@
---TEST--
-Exception for an undefined parent
---TEMPLATE--
-{% extends 'foo.html' %}
-
-{% set foo = "foo" %}
---EXCEPTION--
-Twig_Error_Loader: Template "foo.html" is not defined in "index.twig" at line 2.
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/exceptions/undefined_template_in_child_template.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/exceptions/undefined_template_in_child_template.test
deleted file mode 100644
index 1992510..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/exceptions/undefined_template_in_child_template.test
+++ /dev/null
@@ -1,15 +0,0 @@
---TEST--
-Exception for an undefined template in a child template
---TEMPLATE--
-{% extends 'base.twig' %}
-
-{% block sidebar %}
-    {{ include('include.twig') }}
-{% endblock %}
---TEMPLATE(base.twig)--
-{% block sidebar %}
-{% endblock %}
---DATA--
-return array()
---EXCEPTION--
-Twig_Error_Loader: Template "include.twig" is not defined in "index.twig" at line 5.
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/exceptions/undefined_trait.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/exceptions/undefined_trait.test
deleted file mode 100644
index 6679fbe..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/exceptions/undefined_trait.test
+++ /dev/null
@@ -1,9 +0,0 @@
---TEST--
-Exception for an undefined trait
---TEMPLATE--
-{% use 'foo' with foobar as bar %}
---TEMPLATE(foo)--
-{% block bar %}
-{% endblock %}
---EXCEPTION--
-Twig_Error_Runtime: Block "foobar" is not defined in trait "foo" in "index.twig" at line 2.
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/array.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/array.test
deleted file mode 100644
index c69b119..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/array.test
+++ /dev/null
@@ -1,61 +0,0 @@
---TEST--
-Twig supports array notation
---TEMPLATE--
-{# empty array #}
-{{ []|join(',') }}
-
-{{ [1, 2]|join(',') }}
-{{ ['foo', "bar"]|join(',') }}
-{{ {0: 1, 'foo': 'bar'}|join(',') }}
-{{ {0: 1, 'foo': 'bar'}|keys|join(',') }}
-
-{{ {0: 1, foo: 'bar'}|join(',') }}
-{{ {0: 1, foo: 'bar'}|keys|join(',') }}
-
-{# nested arrays #}
-{% set a = [1, 2, [1, 2], {'foo': {'foo': 'bar'}}] %}
-{{ a[2]|join(',') }}
-{{ a[3]["foo"]|join(',') }}
-
-{# works even if [] is used inside the array #}
-{{ [foo[bar]]|join(',') }}
-
-{# elements can be any expression #}
-{{ ['foo'|upper, bar|upper, bar == foo]|join(',') }}
-
-{# arrays can have a trailing , like in PHP #}
-{{
-  [
-    1,
-    2,
-  ]|join(',')
-}}
-
-{# keys can be any expression #}
-{% set a = 1 %}
-{% set b = "foo" %}
-{% set ary = { (a): 'a', (b): 'b', 'c': 'c', (a ~ b): 'd' } %}
-{{ ary|keys|join(',') }}
-{{ ary|join(',') }}
---DATA--
-return array('bar' => 'bar', 'foo' => array('bar' => 'bar'))
---EXPECT--
-1,2
-foo,bar
-1,bar
-0,foo
-
-1,bar
-0,foo
-
-1,2
-bar
-
-bar
-
-FOO,BAR,
-
-1,2
-
-1,foo,c,1foo
-a,b,c,d
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/array_call.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/array_call.test
deleted file mode 100644
index f3df328..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/array_call.test
+++ /dev/null
@@ -1,14 +0,0 @@
---TEST--
-Twig supports method calls
---TEMPLATE--
-{{ items.foo }}
-{{ items['foo'] }}
-{{ items[foo] }}
-{{ items[items[foo]] }}
---DATA--
-return array('foo' => 'bar', 'items' => array('foo' => 'bar', 'bar' => 'foo'))
---EXPECT--
-bar
-bar
-foo
-bar
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/binary.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/binary.test
deleted file mode 100644
index f5e6845..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/binary.test
+++ /dev/null
@@ -1,46 +0,0 @@
---TEST--
-Twig supports binary operations (+, -, *, /, ~, %, and, or)
---TEMPLATE--
-{{ 1 + 1 }}
-{{ 2 - 1 }}
-{{ 2 * 2 }}
-{{ 2 / 2 }}
-{{ 3 % 2 }}
-{{ 1 and 1 }}
-{{ 1 and 0 }}
-{{ 0 and 1 }}
-{{ 0 and 0 }}
-{{ 1 or 1 }}
-{{ 1 or 0 }}
-{{ 0 or 1 }}
-{{ 0 or 0 }}
-{{ 0 or 1 and 0 }}
-{{ 1 or 0 and 1 }}
-{{ "foo" ~ "bar" }}
-{{ foo ~ "bar" }}
-{{ "foo" ~ bar }}
-{{ foo ~ bar }}
-{{ 20 // 7 }}
---DATA--
-return array('foo' => 'bar', 'bar' => 'foo')
---EXPECT--
-2
-1
-4
-1
-1
-1
-
-
-
-1
-1
-1
-
-
-1
-foobar
-barbar
-foofoo
-barfoo
-2
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/bitwise.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/bitwise.test
deleted file mode 100644
index 74fe6ca..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/bitwise.test
+++ /dev/null
@@ -1,14 +0,0 @@
---TEST--
-Twig supports bitwise operations
---TEMPLATE--
-{{ 1 b-and 5 }}
-{{ 1 b-or 5 }}
-{{ 1 b-xor 5 }}
-{{ (1 and 0 b-or 0) is same as(1 and (0 b-or 0)) ? 'ok' : 'ko' }}
---DATA--
-return array()
---EXPECT--
-1
-5
-4
-ok
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/comparison.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/comparison.test
deleted file mode 100644
index 726b850..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/comparison.test
+++ /dev/null
@@ -1,14 +0,0 @@
---TEST--
-Twig supports comparison operators (==, !=, <, >, >=, <=)
---TEMPLATE--
-{{ 1 > 2 }}/{{ 1 > 1 }}/{{ 1 >= 2 }}/{{ 1 >= 1 }}
-{{ 1 < 2 }}/{{ 1 < 1 }}/{{ 1 <= 2 }}/{{ 1 <= 1 }}
-{{ 1 == 1 }}/{{ 1 == 2 }}
-{{ 1 != 1 }}/{{ 1 != 2 }}
---DATA--
-return array()
---EXPECT--
-///1
-1//1/1
-1/
-/1
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/divisibleby.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/divisibleby.test
deleted file mode 100644
index 238dd27..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/divisibleby.test
+++ /dev/null
@@ -1,17 +0,0 @@
---TEST--
-Twig supports the "divisible by" operator
---TEMPLATE--
-{{ 8 is divisible by(2) ? 'OK' }}
-{{ 8 is not divisible by(3) ? 'OK' }}
-{{ 8 is    divisible   by   (2) ? 'OK' }}
-{{ 8 is not
-   divisible
-   by
-   (3) ? 'OK' }}
---DATA--
-return array()
---EXPECT--
-OK
-OK
-OK
-OK
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/dotdot.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/dotdot.test
deleted file mode 100644
index 9cd0676..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/dotdot.test
+++ /dev/null
@@ -1,20 +0,0 @@
---TEST--
-Twig supports the .. operator
---TEMPLATE--
-{% for i in 0..10 %}{{ i }} {% endfor %}
-
-{% for letter in 'a'..'z' %}{{ letter }} {% endfor %}
-
-{% for letter in 'a'|upper..'z'|upper %}{{ letter }} {% endfor %}
-
-{% for i in foo[0]..foo[1] %}{{ i }} {% endfor %}
-
-{% for i in 0 + 1 .. 10 - 1 %}{{ i }} {% endfor %}
---DATA--
-return array('foo' => array(1, 10))
---EXPECT--
-0 1 2 3 4 5 6 7 8 9 10 
-a b c d e f g h i j k l m n o p q r s t u v w x y z 
-A B C D E F G H I J K L M N O P Q R S T U V W X Y Z 
-1 2 3 4 5 6 7 8 9 10 
-1 2 3 4 5 6 7 8 9
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/ends_with.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/ends_with.test
deleted file mode 100644
index 9ad5e5e..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/ends_with.test
+++ /dev/null
@@ -1,26 +0,0 @@
---TEST--
-Twig supports the "ends with" operator
---TEMPLATE--
-{{ 'foo' ends with 'o' ? 'OK' : 'KO' }}
-{{ not ('foo' ends with 'f') ? 'OK' : 'KO' }}
-{{ not ('foo' ends with 'foowaytoolong') ? 'OK' : 'KO' }}
-{{ 'foo' ends with '' ? 'OK' : 'KO' }}
-{{ '1' ends with true ? 'OK' : 'KO' }}
-{{ 1 ends with true ? 'OK' : 'KO' }}
-{{ 0 ends with false ? 'OK' : 'KO' }}
-{{ '' ends with false ? 'OK' : 'KO' }}
-{{ false ends with false ? 'OK' : 'KO' }}
-{{ false ends with '' ? 'OK' : 'KO' }}
---DATA--
-return array()
---EXPECT--
-OK
-OK
-OK
-OK
-KO
-KO
-KO
-KO
-KO
-KO
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/grouping.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/grouping.test
deleted file mode 100644
index 79f8e0b..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/grouping.test
+++ /dev/null
@@ -1,8 +0,0 @@
---TEST--
-Twig supports grouping of expressions
---TEMPLATE--
-{{ (2 + 2) / 2 }}
---DATA--
-return array()
---EXPECT--
-2
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/literals.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/literals.test
deleted file mode 100644
index 7ae3bae..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/literals.test
+++ /dev/null
@@ -1,22 +0,0 @@
---TEST--
-Twig supports literals
---TEMPLATE--
-1 {{ true }}
-2 {{ TRUE }}
-3 {{ false }}
-4 {{ FALSE }}
-5 {{ none }}
-6 {{ NONE }}
-7 {{ null }}
-8 {{ NULL }}
---DATA--
-return array()
---EXPECT--
-1 1
-2 1
-3 
-4 
-5 
-6 
-7 
-8 
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/magic_call.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/magic_call.test
deleted file mode 100644
index 159db96..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/magic_call.test
+++ /dev/null
@@ -1,27 +0,0 @@
---TEST--
-Twig supports __call() for attributes
---TEMPLATE--
-{{ foo.foo }}
-{{ foo.bar }}
---DATA--
-class TestClassForMagicCallAttributes
-{
-  public function getBar()
-  {
-    return 'bar_from_getbar';
-  }
-
-  public function __call($method, $arguments)
-  {
-    if ('foo' === $method)
-    {
-      return 'foo_from_call';
-    }
-
-    return false;
-  }
-}
-return array('foo' => new TestClassForMagicCallAttributes())
---EXPECT--
-foo_from_call
-bar_from_getbar
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/matches.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/matches.test
deleted file mode 100644
index b6c7716..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/matches.test
+++ /dev/null
@@ -1,12 +0,0 @@
---TEST--
-Twig supports the "matches" operator
---TEMPLATE--
-{{ 'foo' matches '/o/' ? 'OK' : 'KO' }}
-{{ 'foo' matches '/^fo/' ? 'OK' : 'KO' }}
-{{ 'foo' matches '/O/i' ? 'OK' : 'KO' }}
---DATA--
-return array()
---EXPECT--
-OK
-OK
-OK
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/method_call.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/method_call.test
deleted file mode 100644
index 5f801e6..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/method_call.test
+++ /dev/null
@@ -1,28 +0,0 @@
---TEST--
-Twig supports method calls
---TEMPLATE--
-{{ items.foo.foo }}
-{{ items.foo.getFoo() }}
-{{ items.foo.bar }}
-{{ items.foo['bar'] }}
-{{ items.foo.bar('a', 43) }}
-{{ items.foo.bar(foo) }}
-{{ items.foo.self.foo() }}
-{{ items.foo.is }}
-{{ items.foo.in }}
-{{ items.foo.not }}
---DATA--
-return array('foo' => 'bar', 'items' => array('foo' => new TwigTestFoo(), 'bar' => 'foo'))
---CONFIG--
-return array('strict_variables' => false)
---EXPECT--
-foo
-foo
-bar
-
-bar_a-43
-bar_bar
-foo
-is
-in
-not
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/negative_numbers.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/negative_numbers.test
deleted file mode 100644
index 1853b1b..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/negative_numbers.test
+++ /dev/null
@@ -1,18 +0,0 @@
---TEST--
-Twig manages negative numbers correctly
---TEMPLATE--
-{{ -1 }}
-{{ - 1 }}
-{{ 5 - 1 }}
-{{ 5-1 }}
-{{ 5 + -1 }}
-{{ 5 + - 1 }}
---DATA--
-return array()
---EXPECT--
--1
--1
-4
-4
-4
-4
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/operators_as_variables.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/operators_as_variables.test
deleted file mode 100644
index fe29d08..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/operators_as_variables.test
+++ /dev/null
@@ -1,16 +0,0 @@
---TEST--
-Twig allows to use named operators as variable names
---TEMPLATE--
-{% for match in matches %}
-    {{- match }}
-{% endfor %}
-{{ in }}
-{{ is }}
---DATA--
-return array('matches' => array(1, 2, 3), 'in' => 'in', 'is' => 'is')
---EXPECT--
-1
-2
-3
-in
-is
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/postfix.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/postfix.test
deleted file mode 100644
index 542c350..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/postfix.test
+++ /dev/null
@@ -1,22 +0,0 @@
---TEST--
-Twig parses postfix expressions
---TEMPLATE--
-{% import _self as macros %}
-
-{% macro foo() %}foo{% endmacro %}
-
-{{ 'a' }}
-{{ 'a'|upper }}
-{{ ('a')|upper }}
-{{ -1|upper }}
-{{ macros.foo() }}
-{{ (macros).foo() }}
---DATA--
-return array();
---EXPECT--
-a
-A
-A
--1
-foo
-foo
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/sameas.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/sameas.test
deleted file mode 100644
index 601201d..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/sameas.test
+++ /dev/null
@@ -1,21 +0,0 @@
---TEST--
-Twig supports the "same as" operator
---TEMPLATE--
-{{ 1 is same as(1) ? 'OK' }}
-{{ 1 is not same as(true) ? 'OK' }}
-{{ 1 is same as(1) ? 'OK' }}
-{{ 1 is not same as(true) ? 'OK' }}
-{{ 1 is   same    as   (1) ? 'OK' }}
-{{ 1 is not
-    same
-    as
-    (true) ? 'OK' }}
---DATA--
-return array()
---EXPECT--
-OK
-OK
-OK
-OK
-OK
-OK
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/starts_with.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/starts_with.test
deleted file mode 100644
index 75d331e..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/starts_with.test
+++ /dev/null
@@ -1,27 +0,0 @@
---TEST--
-Twig supports the "starts with" operator
---TEMPLATE--
-{{ 'foo' starts with 'f' ? 'OK' : 'KO' }}
-{{ not ('foo' starts with 'oo') ? 'OK' : 'KO' }}
-{{ not ('foo' starts with 'foowaytoolong') ? 'OK' : 'KO' }}
-{{ 'foo' starts      with 'f' ? 'OK' : 'KO' }}
-{{ 'foo' starts
-with 'f' ? 'OK' : 'KO' }}
-{{ 'foo' starts with '' ? 'OK' : 'KO' }}
-{{ '1' starts with true ? 'OK' : 'KO' }}
-{{ '' starts with false ? 'OK' : 'KO' }}
-{{ 'a' starts with false ? 'OK' : 'KO' }}
-{{ false starts with '' ? 'OK' : 'KO' }}
---DATA--
-return array()
---EXPECT--
-OK
-OK
-OK
-OK
-OK
-OK
-KO
-KO
-KO
-KO
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/strings.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/strings.test
deleted file mode 100644
index a911661..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/strings.test
+++ /dev/null
@@ -1,10 +0,0 @@
---TEST--
-Twig supports string interpolation
---TEMPLATE--
-{{ "foo #{"foo #{bar} baz"} baz" }}
-{{ "foo #{bar}#{bar} baz" }}
---DATA--
-return array('bar' => 'BAR');
---EXPECT--
-foo foo BAR baz baz
-foo BARBAR baz
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/ternary_operator.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/ternary_operator.test
deleted file mode 100644
index 0e6fa96..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/ternary_operator.test
+++ /dev/null
@@ -1,18 +0,0 @@
---TEST--
-Twig supports the ternary operator
---TEMPLATE--
-{{ 1 ? 'YES' : 'NO' }}
-{{ 0 ? 'YES' : 'NO' }}
-{{ 0 ? 'YES' : (1 ? 'YES1' : 'NO1') }}
-{{ 0 ? 'YES' : (0 ? 'YES1' : 'NO1') }}
-{{ 1 == 1 ? 'foo<br />':'' }}
-{{ foo ~ (bar ? ('-' ~ bar) : '') }}
---DATA--
-return array('foo' => 'foo', 'bar' => 'bar')
---EXPECT--
-YES
-NO
-YES1
-NO1
-foo<br />
-foo-bar
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/ternary_operator_noelse.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/ternary_operator_noelse.test
deleted file mode 100644
index fdc660f..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/ternary_operator_noelse.test
+++ /dev/null
@@ -1,10 +0,0 @@
---TEST--
-Twig supports the ternary operator
---TEMPLATE--
-{{ 1 ? 'YES' }}
-{{ 0 ? 'YES' }}
---DATA--
-return array()
---EXPECT--
-YES
-
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/ternary_operator_nothen.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/ternary_operator_nothen.test
deleted file mode 100644
index 9057e83..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/ternary_operator_nothen.test
+++ /dev/null
@@ -1,10 +0,0 @@
---TEST--
-Twig supports the ternary operator
---TEMPLATE--
-{{ 'YES' ?: 'NO' }}
-{{ 0 ?: 'NO' }}
---DATA--
-return array()
---EXPECT--
-YES
-NO
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/two_word_operators_as_variables.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/two_word_operators_as_variables.test
deleted file mode 100644
index 47f37e4..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/two_word_operators_as_variables.test
+++ /dev/null
@@ -1,8 +0,0 @@
---TEST--
-Twig does not allow to use two-word named operators as variable names
---TEMPLATE--
-{{ starts with }}
---DATA--
-return array()
---EXCEPTION--
-Twig_Error_Syntax: Unexpected token "operator" of value "starts with" in "index.twig" at line 2
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/unary.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/unary.test
deleted file mode 100644
index b79219a..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/unary.test
+++ /dev/null
@@ -1,12 +0,0 @@
---TEST--
-Twig supports unary operators (not, -, +)
---TEMPLATE--
-{{ not 1 }}/{{ not 0 }}
-{{ +1 + 1 }}/{{ -1 - 1 }}
-{{ not (false or true) }}
---DATA--
-return array()
---EXPECT--
-/1
-2/-2
-
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/unary_macro_arguments.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/unary_macro_arguments.test
deleted file mode 100644
index ad84a9c..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/unary_macro_arguments.test
+++ /dev/null
@@ -1,22 +0,0 @@
---TEST--
-Twig manages negative numbers as default parameters
---TEMPLATE--
-{% import _self as macros %}
-{{ macros.negative_number1() }}
-{{ macros.negative_number2() }}
-{{ macros.negative_number3() }}
-{{ macros.positive_number1() }}
-{{ macros.positive_number2() }}
-{% macro negative_number1(nb=-1) %}{{ nb }}{% endmacro %}
-{% macro negative_number2(nb = --1) %}{{ nb }}{% endmacro %}
-{% macro negative_number3(nb = - 1) %}{{ nb }}{% endmacro %}
-{% macro positive_number1(nb = +1) %}{{ nb }}{% endmacro %}
-{% macro positive_number2(nb = ++1) %}{{ nb }}{% endmacro %}
---DATA--
-return array()
---EXPECT--
--1
-1
--1
-1
-1
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/unary_precedence.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/unary_precedence.test
deleted file mode 100644
index cc6eef8..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/unary_precedence.test
+++ /dev/null
@@ -1,14 +0,0 @@
---TEST--
-Twig unary operators precedence
---TEMPLATE--
-{{ -1 - 1 }}
-{{ -1 - -1 }}
-{{ -1 * -1 }}
-{{ 4 / -1 * 5 }}
---DATA--
-return array()
---EXPECT--
--2
-0
-1
--20
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/abs.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/abs.test
deleted file mode 100644
index 27e93fd..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/abs.test
+++ /dev/null
@@ -1,30 +0,0 @@
---TEST--
-"abs" filter
---TEMPLATE--
-{{ (-5.5)|abs }}
-{{ (-5)|abs }}
-{{ (-0)|abs }}
-{{ 0|abs }}
-{{ 5|abs }}
-{{ 5.5|abs }}
-{{ number1|abs }}
-{{ number2|abs }}
-{{ number3|abs }}
-{{ number4|abs }}
-{{ number5|abs }}
-{{ number6|abs }}
---DATA--
-return array('number1' => -5.5, 'number2' => -5, 'number3' => -0, 'number4' => 0, 'number5' => 5, 'number6' => 5.5)
---EXPECT--
-5.5
-5
-0
-0
-5
-5.5
-5.5
-5
-0
-0
-5
-5.5
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/batch.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/batch.test
deleted file mode 100644
index cb6de7f..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/batch.test
+++ /dev/null
@@ -1,31 +0,0 @@
---TEST--
-"batch" filter
---TEMPLATE--
-{% for row in items|batch(3) %}
-  <div class=row>
-  {% for column in row %}
-    <div class=item>{{ column }}</div>
-  {% endfor %}
-  </div>
-{% endfor %}
---DATA--
-return array('items' => array('a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j'))
---EXPECT--
-<div class=row>
-      <div class=item>a</div>
-      <div class=item>b</div>
-      <div class=item>c</div>
-    </div>
-  <div class=row>
-      <div class=item>d</div>
-      <div class=item>e</div>
-      <div class=item>f</div>
-    </div>
-  <div class=row>
-      <div class=item>g</div>
-      <div class=item>h</div>
-      <div class=item>i</div>
-    </div>
-  <div class=row>
-      <div class=item>j</div>
-    </div>
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/batch_float.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/batch_float.test
deleted file mode 100644
index e2ec4be..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/batch_float.test
+++ /dev/null
@@ -1,29 +0,0 @@
---TEST--
-"batch" filter
---TEMPLATE--
-{% for row in items|batch(3.1) %}
-  <div class=row>
-  {% for column in row %}
-    <div class=item>{{ column }}</div>
-  {% endfor %}
-  </div>
-{% endfor %}
---DATA--
-return array('items' => array('a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j'))
---EXPECT--
-<div class=row>
-      <div class=item>a</div>
-      <div class=item>b</div>
-      <div class=item>c</div>
-      <div class=item>d</div>
-    </div>
-  <div class=row>
-      <div class=item>e</div>
-      <div class=item>f</div>
-      <div class=item>g</div>
-      <div class=item>h</div>
-    </div>
-  <div class=row>
-      <div class=item>i</div>
-      <div class=item>j</div>
-    </div>
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/batch_with_empty_fill.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/batch_with_empty_fill.test
deleted file mode 100644
index af996f2..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/batch_with_empty_fill.test
+++ /dev/null
@@ -1,37 +0,0 @@
---TEST--
-"batch" filter
---TEMPLATE--
-<table>
-{% for row in items|batch(3, '') %}
-  <tr>
-  {% for column in row %}
-    <td>{{ column }}</td>
-  {% endfor %}
-  </tr>
-{% endfor %}
-</table>
---DATA--
-return array('items' => array('a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j'))
---EXPECT--
-<table>
-  <tr>
-      <td>a</td>
-      <td>b</td>
-      <td>c</td>
-    </tr>
-  <tr>
-      <td>d</td>
-      <td>e</td>
-      <td>f</td>
-    </tr>
-  <tr>
-      <td>g</td>
-      <td>h</td>
-      <td>i</td>
-    </tr>
-  <tr>
-      <td>j</td>
-      <td></td>
-      <td></td>
-    </tr>
-</table>
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/batch_with_exact_elements.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/batch_with_exact_elements.test
deleted file mode 100644
index 72483f4..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/batch_with_exact_elements.test
+++ /dev/null
@@ -1,33 +0,0 @@
---TEST--
-"batch" filter
---TEMPLATE--
-{% for row in items|batch(3, 'fill') %}
-  <div class=row>
-  {% for column in row %}
-    <div class=item>{{ column }}</div>
-  {% endfor %}
-  </div>
-{% endfor %}
---DATA--
-return array('items' => array('a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l'))
---EXPECT--
-<div class=row>
-      <div class=item>a</div>
-      <div class=item>b</div>
-      <div class=item>c</div>
-    </div>
-  <div class=row>
-      <div class=item>d</div>
-      <div class=item>e</div>
-      <div class=item>f</div>
-    </div>
-  <div class=row>
-      <div class=item>g</div>
-      <div class=item>h</div>
-      <div class=item>i</div>
-    </div>
-  <div class=row>
-      <div class=item>j</div>
-      <div class=item>k</div>
-      <div class=item>l</div>
-    </div>
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/batch_with_fill.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/batch_with_fill.test
deleted file mode 100644
index 746295f..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/batch_with_fill.test
+++ /dev/null
@@ -1,37 +0,0 @@
---TEST--
-"batch" filter
---TEMPLATE--
-<table>
-{% for row in items|batch(3, 'fill') %}
-  <tr>
-  {% for column in row %}
-    <td>{{ column }}</td>
-  {% endfor %}
-  </tr>
-{% endfor %}
-</table>
---DATA--
-return array('items' => array('a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j'))
---EXPECT--
-<table>
-  <tr>
-      <td>a</td>
-      <td>b</td>
-      <td>c</td>
-    </tr>
-  <tr>
-      <td>d</td>
-      <td>e</td>
-      <td>f</td>
-    </tr>
-  <tr>
-      <td>g</td>
-      <td>h</td>
-      <td>i</td>
-    </tr>
-  <tr>
-      <td>j</td>
-      <td>fill</td>
-      <td>fill</td>
-    </tr>
-</table>
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/batch_with_keys.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/batch_with_keys.test
deleted file mode 100644
index 6015380..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/batch_with_keys.test
+++ /dev/null
@@ -1,10 +0,0 @@
---TEST--
-"batch" filter preserves array keys
---TEMPLATE--
-{{ {'foo': 'bar', 'key': 'value'}|batch(4)|first|keys|join(',')  }}
-{{ {'foo': 'bar', 'key': 'value'}|batch(4, 'fill')|first|keys|join(',')  }}
---DATA--
-return array()
---EXPECT--
-foo,key
-foo,key,0,1
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/batch_with_zero_elements.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/batch_with_zero_elements.test
deleted file mode 100644
index b9c058d..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/batch_with_zero_elements.test
+++ /dev/null
@@ -1,10 +0,0 @@
---TEST--
-"batch" filter with zero elements
---TEMPLATE--
-{{ []|batch(3)|length }}
-{{ []|batch(3, 'fill')|length }}
---DATA--
-return array()
---EXPECT--
-0
-0
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/convert_encoding.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/convert_encoding.test
deleted file mode 100644
index 380b04b..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/convert_encoding.test
+++ /dev/null
@@ -1,10 +0,0 @@
---TEST--
-"convert_encoding" filter
---CONDITION--
-function_exists('iconv') || function_exists('mb_convert_encoding')
---TEMPLATE--
-{{ "愛していますか？"|convert_encoding('ISO-2022-JP', 'UTF-8')|convert_encoding('UTF-8', 'ISO-2022-JP') }}
---DATA--
-return array()
---EXPECT--
-愛していますか？
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/date.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/date.test
deleted file mode 100644
index d17e5e2..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/date.test
+++ /dev/null
@@ -1,90 +0,0 @@
---TEST--
-"date" filter
---TEMPLATE--
-{{ date1|date }}
-{{ date1|date('d/m/Y') }}
-{{ date1|date('d/m/Y H:i:s', 'Asia/Hong_Kong') }}
-{{ date1|date('d/m/Y H:i:s P', 'Asia/Hong_Kong') }}
-{{ date1|date('d/m/Y H:i:s P', 'America/Chicago') }}
-{{ date1|date('e') }}
-{{ date1|date('d/m/Y H:i:s') }}
-
-{{ date2|date }}
-{{ date2|date('d/m/Y') }}
-{{ date2|date('d/m/Y H:i:s', 'Asia/Hong_Kong') }}
-{{ date2|date('d/m/Y H:i:s', timezone1) }}
-{{ date2|date('d/m/Y H:i:s') }}
-
-{{ date3|date }}
-{{ date3|date('d/m/Y') }}
-
-{{ date4|date }}
-{{ date4|date('d/m/Y') }}
-
-{{ date5|date }}
-{{ date5|date('d/m/Y') }}
-
-{{ date6|date('d/m/Y H:i:s P', 'Europe/Paris') }}
-{{ date6|date('d/m/Y H:i:s P', 'Asia/Hong_Kong') }}
-{{ date6|date('d/m/Y H:i:s P', false) }}
-{{ date6|date('e', 'Europe/Paris') }}
-{{ date6|date('e', false) }}
-
-{{ date7|date }}
-{{ date7|date(timezone='Europe/Paris') }}
-{{ date7|date(timezone='Asia/Hong_Kong') }}
-{{ date7|date(timezone=false) }}
-{{ date7|date(timezone='Indian/Mauritius') }}
-
-{{ '2010-01-28 15:00:00'|date(timezone="Europe/Paris") }}
-{{ '2010-01-28 15:00:00'|date(timezone="Asia/Hong_Kong") }}
---DATA--
-date_default_timezone_set('Europe/Paris');
-return array(
-    'date1' => mktime(13, 45, 0, 10, 4, 2010),
-    'date2' => new DateTime('2010-10-04 13:45'),
-    'date3' => '2010-10-04 13:45',
-    'date4' => 1286199900, // DateTime::createFromFormat('Y-m-d H:i', '2010-10-04 13:45', new DateTimeZone('UTC'))->getTimestamp() -- A unixtimestamp is always GMT
-    'date5' => -189291360, // DateTime::createFromFormat('Y-m-d H:i', '1964-01-02 03:04', new DateTimeZone('UTC'))->getTimestamp(),
-    'date6' => new DateTime('2010-10-04 13:45', new DateTimeZone('America/New_York')),
-    'date7' => '2010-01-28T15:00:00+04:00',
-    'timezone1' => new DateTimeZone('America/New_York'),
-)
---EXPECT--
-October 4, 2010 13:45
-04/10/2010
-04/10/2010 19:45:00
-04/10/2010 19:45:00 +08:00
-04/10/2010 06:45:00 -05:00
-Europe/Paris
-04/10/2010 13:45:00
-
-October 4, 2010 13:45
-04/10/2010
-04/10/2010 19:45:00
-04/10/2010 07:45:00
-04/10/2010 13:45:00
-
-October 4, 2010 13:45
-04/10/2010
-
-October 4, 2010 15:45
-04/10/2010
-
-January 2, 1964 04:04
-02/01/1964
-
-04/10/2010 19:45:00 +02:00
-05/10/2010 01:45:00 +08:00
-04/10/2010 13:45:00 -04:00
-Europe/Paris
-America/New_York
-
-January 28, 2010 12:00
-January 28, 2010 12:00
-January 28, 2010 19:00
-January 28, 2010 15:00
-January 28, 2010 15:00
-
-January 28, 2010 15:00
-January 28, 2010 22:00
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/date_default_format.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/date_default_format.test
deleted file mode 100644
index 11a1ef4..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/date_default_format.test
+++ /dev/null
@@ -1,14 +0,0 @@
---TEST--
-"date" filter
---TEMPLATE--
-{{ date1|date }}
-{{ date1|date('d/m/Y') }}
---DATA--
-date_default_timezone_set('UTC');
-$twig->getExtension('core')->setDateFormat('Y-m-d', '%d days %h hours');
-return array(
-    'date1' => mktime(13, 45, 0, 10, 4, 2010),
-)
---EXPECT--
-2010-10-04
-04/10/2010
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/date_default_format_interval.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/date_default_format_interval.test
deleted file mode 100644
index e6d3707..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/date_default_format_interval.test
+++ /dev/null
@@ -1,16 +0,0 @@
---TEST--
-"date" filter (interval support as of PHP 5.3)
---CONDITION--
-version_compare(phpversion(), '5.3.0', '>=')
---TEMPLATE--
-{{ date2|date }}
-{{ date2|date('%d days') }}
---DATA--
-date_default_timezone_set('UTC');
-$twig->getExtension('core')->setDateFormat('Y-m-d', '%d days %h hours');
-return array(
-    'date2' => new DateInterval('P2D'),
-)
---EXPECT--
-2 days 0 hours
-2 days
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/date_immutable.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/date_immutable.test
deleted file mode 100644
index 4e18325..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/date_immutable.test
+++ /dev/null
@@ -1,37 +0,0 @@
---TEST--
-"date" filter
---CONDITION--
-version_compare(phpversion(), '5.5.0', '>=')
---TEMPLATE--
-{{ date1|date }}
-{{ date1|date('d/m/Y') }}
-{{ date1|date('d/m/Y H:i:s', 'Asia/Hong_Kong') }}
-{{ date1|date('d/m/Y H:i:s', timezone1) }}
-{{ date1|date('d/m/Y H:i:s') }}
-{{ date1|date_modify('+1 hour')|date('d/m/Y H:i:s') }}
-
-{{ date2|date('d/m/Y H:i:s P', 'Europe/Paris') }}
-{{ date2|date('d/m/Y H:i:s P', 'Asia/Hong_Kong') }}
-{{ date2|date('d/m/Y H:i:s P', false) }}
-{{ date2|date('e', 'Europe/Paris') }}
-{{ date2|date('e', false) }}
---DATA--
-date_default_timezone_set('Europe/Paris');
-return array(
-    'date1' => new DateTimeImmutable('2010-10-04 13:45'),
-    'date2' => new DateTimeImmutable('2010-10-04 13:45', new DateTimeZone('America/New_York')),
-    'timezone1' => new DateTimeZone('America/New_York'),
-)
---EXPECT--
-October 4, 2010 13:45
-04/10/2010
-04/10/2010 19:45:00
-04/10/2010 07:45:00
-04/10/2010 13:45:00
-04/10/2010 14:45:00
-
-04/10/2010 19:45:00 +02:00
-05/10/2010 01:45:00 +08:00
-04/10/2010 13:45:00 -04:00
-Europe/Paris
-America/New_York
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/date_interval.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/date_interval.test
deleted file mode 100644
index 0c8c6f1..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/date_interval.test
+++ /dev/null
@@ -1,19 +0,0 @@
---TEST--
-"date" filter (interval support as of PHP 5.3)
---CONDITION--
-version_compare(phpversion(), '5.3.0', '>=')
---TEMPLATE--
-{{ date1|date }}
-{{ date1|date('%d days %h hours') }}
-{{ date1|date('%d days %h hours', timezone1) }}
---DATA--
-date_default_timezone_set('UTC');
-return array(
-    'date1' => new DateInterval('P2D'),
-    // This should have no effect on DateInterval formatting
-    'timezone1' => new DateTimeZone('America/New_York'),
-)
---EXPECT--
-2 days
-2 days 0 hours
-2 days 0 hours
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/date_modify.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/date_modify.test
deleted file mode 100644
index 53d3a69..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/date_modify.test
+++ /dev/null
@@ -1,14 +0,0 @@
---TEST--
-"date_modify" filter
---TEMPLATE--
-{{ date1|date_modify('-1day')|date('Y-m-d H:i:s') }}
-{{ date2|date_modify('-1day')|date('Y-m-d H:i:s') }}
---DATA--
-date_default_timezone_set('UTC');
-return array(
-    'date1' => '2010-10-04 13:45',
-    'date2' => new DateTime('2010-10-04 13:45'),
-)
---EXPECT--
-2010-10-03 13:45:00
-2010-10-03 13:45:00
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/date_namedargs.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/date_namedargs.test
deleted file mode 100644
index 4ecde8a..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/date_namedargs.test
+++ /dev/null
@@ -1,13 +0,0 @@
---TEST--
-"date" filter
---TEMPLATE--
-{{ date|date(format='d/m/Y H:i:s P', timezone='America/Chicago') }}
-{{ date|date(timezone='America/Chicago', format='d/m/Y H:i:s P') }}
-{{ date|date('d/m/Y H:i:s P', timezone='America/Chicago') }}
---DATA--
-date_default_timezone_set('UTC');
-return array('date' => mktime(13, 45, 0, 10, 4, 2010))
---EXPECT--
-04/10/2010 08:45:00 -05:00
-04/10/2010 08:45:00 -05:00
-04/10/2010 08:45:00 -05:00
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/default.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/default.test
deleted file mode 100644
index b8d1d66..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/default.test
+++ /dev/null
@@ -1,150 +0,0 @@
---TEST--
-"default" filter
---TEMPLATE--
-Variable:
-{{ definedVar                  |default('default') is same as('default') ? 'ko' : 'ok' }}
-{{ zeroVar                     |default('default') is same as('default') ? 'ko' : 'ok' }}
-{{ emptyVar                    |default('default') is same as('default') ? 'ok' : 'ko' }}
-{{ nullVar                     |default('default') is same as('default') ? 'ok' : 'ko' }}
-{{ undefinedVar                |default('default') is same as('default') ? 'ok' : 'ko' }}
-Array access:
-{{ nested.definedVar           |default('default') is same as('default') ? 'ko' : 'ok' }}
-{{ nested['definedVar']        |default('default') is same as('default') ? 'ko' : 'ok' }}
-{{ nested.zeroVar              |default('default') is same as('default') ? 'ko' : 'ok' }}
-{{ nested.emptyVar             |default('default') is same as('default') ? 'ok' : 'ko' }}
-{{ nested.nullVar              |default('default') is same as('default') ? 'ok' : 'ko' }}
-{{ nested.undefinedVar         |default('default') is same as('default') ? 'ok' : 'ko' }}
-{{ nested['undefinedVar']      |default('default') is same as('default') ? 'ok' : 'ko' }}
-{{ undefinedVar.foo            |default('default') is same as('default') ? 'ok' : 'ko' }}
-Plain values:
-{{ 'defined'                   |default('default') is same as('default') ? 'ko' : 'ok' }}
-{{ 0                           |default('default') is same as('default') ? 'ko' : 'ok' }}
-{{ ''                          |default('default') is same as('default') ? 'ok' : 'ko' }}
-{{ null                        |default('default') is same as('default') ? 'ok' : 'ko' }}
-Precedence:
-{{ 'o' ~ nullVar               |default('k') }}
-{{ 'o' ~ nested.nullVar        |default('k') }}
-Object methods:
-{{ object.foo                  |default('default') is same as('default') ? 'ko' : 'ok' }}
-{{ object.undefinedMethod      |default('default') is same as('default') ? 'ok' : 'ko' }}
-{{ object.getFoo()             |default('default') is same as('default') ? 'ko' : 'ok' }}
-{{ object.getFoo('a')          |default('default') is same as('default') ? 'ko' : 'ok' }}
-{{ object.undefinedMethod()    |default('default') is same as('default') ? 'ok' : 'ko' }}
-{{ object.undefinedMethod('a') |default('default') is same as('default') ? 'ok' : 'ko' }}
-Deep nested:
-{{ nested.undefinedVar.foo.bar |default('default') is same as('default') ? 'ok' : 'ko' }}
-{{ nested.definedArray.0       |default('default') is same as('default') ? 'ko' : 'ok' }}
-{{ nested['definedArray'][0]   |default('default') is same as('default') ? 'ko' : 'ok' }}
-{{ object.self.foo             |default('default') is same as('default') ? 'ko' : 'ok' }}
-{{ object.self.undefinedMethod |default('default') is same as('default') ? 'ok' : 'ko' }}
-{{ object.undefinedMethod.self |default('default') is same as('default') ? 'ok' : 'ko' }}
---DATA--
-return array(
-    'definedVar' => 'defined',
-    'zeroVar'    => 0,
-    'emptyVar'   => '',
-    'nullVar'    => null,
-    'nested'     => array(
-        'definedVar'   => 'defined',
-        'zeroVar'      => 0,
-        'emptyVar'     => '',
-        'nullVar'      => null,
-        'definedArray' => array(0),
-    ),
-    'object' => new TwigTestFoo(),
-)
---CONFIG--
-return array('strict_variables' => false)
---EXPECT--
-Variable:
-ok
-ok
-ok
-ok
-ok
-Array access:
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-Plain values:
-ok
-ok
-ok
-ok
-Precedence:
-ok
-ok
-Object methods:
-ok
-ok
-ok
-ok
-ok
-ok
-Deep nested:
-ok
-ok
-ok
-ok
-ok
-ok
---DATA--
-return array(
-    'definedVar' => 'defined',
-    'zeroVar'    => 0,
-    'emptyVar'   => '',
-    'nullVar'    => null,
-    'nested'     => array(
-        'definedVar'   => 'defined',
-        'zeroVar'      => 0,
-        'emptyVar'     => '',
-        'nullVar'      => null,
-        'definedArray' => array(0),
-    ),
-    'object' => new TwigTestFoo(),
-)
---CONFIG--
-return array('strict_variables' => true)
---EXPECT--
-Variable:
-ok
-ok
-ok
-ok
-ok
-Array access:
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-Plain values:
-ok
-ok
-ok
-ok
-Precedence:
-ok
-ok
-Object methods:
-ok
-ok
-ok
-ok
-ok
-ok
-Deep nested:
-ok
-ok
-ok
-ok
-ok
-ok
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/dynamic_filter.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/dynamic_filter.test
deleted file mode 100644
index 93c5913..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/dynamic_filter.test
+++ /dev/null
@@ -1,10 +0,0 @@
---TEST--
-dynamic filter
---TEMPLATE--
-{{ 'bar'|foo_path }}
-{{ 'bar'|a_foo_b_bar }}
---DATA--
-return array()
---EXPECT--
-foo/bar
-a/b/bar
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/escape.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/escape.test
deleted file mode 100644
index a606c10..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/escape.test
+++ /dev/null
@@ -1,8 +0,0 @@
---TEST--
-"escape" filter
---TEMPLATE--
-{{ "foo <br />"|e }}
---DATA--
-return array()
---EXPECT--
-foo &lt;br /&gt;
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/escape_html_attr.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/escape_html_attr.test
deleted file mode 100644
index 009a245..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/escape_html_attr.test
+++ /dev/null
@@ -1,8 +0,0 @@
---TEST--
-"escape" filter does not escape with the html strategy when using the html_attr strategy
---TEMPLATE--
-{{ '<br />'|escape('html_attr') }}
---DATA--
-return array()
---EXPECT--
-&lt;br&#x20;&#x2F;&gt;
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/escape_non_supported_charset.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/escape_non_supported_charset.test
deleted file mode 100644
index bba26a0..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/escape_non_supported_charset.test
+++ /dev/null
@@ -1,8 +0,0 @@
---TEST--
-"escape" filter
---TEMPLATE--
-{{ "愛していますか？ <br />"|e }}
---DATA--
-return array()
---EXPECT--
-愛していますか？ &lt;br /&gt;
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/first.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/first.test
deleted file mode 100644
index aa54645..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/first.test
+++ /dev/null
@@ -1,17 +0,0 @@
---TEST--
-"first" filter
---TEMPLATE--
-{{ [1, 2, 3, 4]|first }}
-{{ {a: 1, b: 2, c: 3, d: 4}|first }}
-{{ '1234'|first }}
-{{ arr|first }}
-{{ 'Ä€é'|first }}
-{{ ''|first }}
---DATA--
-return array('arr' => new ArrayObject(array(1, 2, 3, 4)))
---EXPECT--
-1
-1
-1
-1
-Ä
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/force_escape.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/force_escape.test
deleted file mode 100644
index 85a9b71..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/force_escape.test
+++ /dev/null
@@ -1,18 +0,0 @@
---TEST--
-"escape" filter
---TEMPLATE--
-{% set foo %}
-    foo<br />
-{% endset %}
-
-{{ foo|e('html') -}}
-{{ foo|e('js') }}
-{% autoescape true %}
-    {{ foo }}
-{% endautoescape %}
---DATA--
-return array()
---EXPECT--
-    foo&lt;br /&gt;
-\x20\x20\x20\x20foo\x3Cbr\x20\x2F\x3E\x0A
-        foo<br />
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/format.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/format.test
deleted file mode 100644
index 97221ff..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/format.test
+++ /dev/null
@@ -1,8 +0,0 @@
---TEST--
-"format" filter
---TEMPLATE--
-{{ string|format(foo, 3) }}
---DATA--
-return array('string' => '%s/%d', 'foo' => 'bar')
---EXPECT--
-bar/3
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/join.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/join.test
deleted file mode 100644
index b342c17..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/join.test
+++ /dev/null
@@ -1,12 +0,0 @@
---TEST--
-"join" filter
---TEMPLATE--
-{{ ["foo", "bar"]|join(', ') }}
-{{ foo|join(', ') }}
-{{ bar|join(', ') }}
---DATA--
-return array('foo' => new TwigTestFoo(), 'bar' => new ArrayObject(array(3, 4)))
---EXPECT--
-foo, bar
-1, 2
-3, 4
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/json_encode.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/json_encode.test
deleted file mode 100644
index 1738d40..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/json_encode.test
+++ /dev/null
@@ -1,12 +0,0 @@
---TEST--
-"json_encode" filter
---TEMPLATE--
-{{ "foo"|json_encode|raw }}
-{{ foo|json_encode|raw }}
-{{ [foo, "foo"]|json_encode|raw }}
---DATA--
-return array('foo' => new Twig_Markup('foo', 'UTF-8'))
---EXPECT--
-"foo"
-"foo"
-["foo","foo"]
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/last.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/last.test
deleted file mode 100644
index 1b8031e..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/last.test
+++ /dev/null
@@ -1,17 +0,0 @@
---TEST--
-"last" filter
---TEMPLATE--
-{{ [1, 2, 3, 4]|last }}
-{{ {a: 1, b: 2, c: 3, d: 4}|last }}
-{{ '1234'|last }}
-{{ arr|last }}
-{{ 'Ä€é'|last }}
-{{ ''|last }}
---DATA--
-return array('arr' => new ArrayObject(array(1, 2, 3, 4)))
---EXPECT--
-4
-4
-4
-4
-é
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/length.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/length.test
deleted file mode 100644
index 3347474..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/length.test
+++ /dev/null
@@ -1,14 +0,0 @@
---TEST--
-"length" filter
---TEMPLATE--
-{{ array|length }}
-{{ string|length }}
-{{ number|length }}
-{{ markup|length }}
---DATA--
-return array('array' => array(1, 4), 'string' => 'foo', 'number' => 1000, 'markup' => new Twig_Markup('foo', 'UTF-8'))
---EXPECT--
-2
-3
-4
-3
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/length_utf8.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/length_utf8.test
deleted file mode 100644
index 5d5e243..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/length_utf8.test
+++ /dev/null
@@ -1,12 +0,0 @@
---TEST--
-"length" filter
---CONDITION--
-function_exists('mb_get_info')
---TEMPLATE--
-{{ string|length }}
-{{ markup|length }}
---DATA--
-return array('string' => 'été', 'markup' => new Twig_Markup('foo', 'UTF-8'))
---EXPECT--
-3
-3
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/merge.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/merge.test
deleted file mode 100644
index 81371a4..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/merge.test
+++ /dev/null
@@ -1,18 +0,0 @@
---TEST--
-"merge" filter
---TEMPLATE--
-{{ items|merge({'bar': 'foo'})|join }}
-{{ items|merge({'bar': 'foo'})|keys|join }}
-{{ {'bar': 'foo'}|merge(items)|join }}
-{{ {'bar': 'foo'}|merge(items)|keys|join }}
-{{ numerics|merge([4, 5, 6])|join }}
-{{ traversable.a|merge(traversable.b)|join }}
---DATA--
-return array('items' => array('foo' => 'bar'), 'numerics' => array(1, 2, 3), 'traversable' => array('a' => new ArrayObject(array(0 => 1, 1 => 2, 2 => 3)), 'b' => new ArrayObject(array('a' => 'b'))))
---EXPECT--
-barfoo
-foobar
-foobar
-barfoo
-123456
-123b
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/nl2br.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/nl2br.test
deleted file mode 100644
index 6545a9b..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/nl2br.test
+++ /dev/null
@@ -1,14 +0,0 @@
---TEST--
-"nl2br" filter
---TEMPLATE--
-{{ "I like Twig.\nYou will like it too.\n\nEverybody like it!"|nl2br }}
-{{ text|nl2br }}
---DATA--
-return array('text' => "If you have some <strong>HTML</strong>\nit will be escaped.")
---EXPECT--
-I like Twig.<br />
-You will like it too.<br />
-<br />
-Everybody like it!
-If you have some &lt;strong&gt;HTML&lt;/strong&gt;<br />
-it will be escaped.
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/number_format.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/number_format.test
deleted file mode 100644
index 639a865..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/number_format.test
+++ /dev/null
@@ -1,18 +0,0 @@
---TEST--
-"number_format" filter
---TEMPLATE--
-{{ 20|number_format }}
-{{ 20.25|number_format }}
-{{ 20.25|number_format(2) }}
-{{ 20.25|number_format(2, ',') }}
-{{ 1020.25|number_format(2, ',') }}
-{{ 1020.25|number_format(2, ',', '.') }}
---DATA--
-return array();
---EXPECT--
-20
-20
-20.25
-20,25
-1,020,25
-1.020,25
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/number_format_default.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/number_format_default.test
deleted file mode 100644
index c6903cc..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/number_format_default.test
+++ /dev/null
@@ -1,21 +0,0 @@
---TEST--
-"number_format" filter with defaults.
---TEMPLATE--
-{{ 20|number_format }}
-{{ 20.25|number_format }}
-{{ 20.25|number_format(1) }}
-{{ 20.25|number_format(2, ',') }}
-{{ 1020.25|number_format }}
-{{ 1020.25|number_format(2, ',') }}
-{{ 1020.25|number_format(2, ',', '.') }}
---DATA--
-$twig->getExtension('core')->setNumberFormat(2, '!', '=');
-return array();
---EXPECT--
-20!00
-20!25
-20!3
-20,25
-1=020!25
-1=020,25
-1.020,25
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/replace.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/replace.test
deleted file mode 100644
index 06be7e2..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/replace.test
+++ /dev/null
@@ -1,12 +0,0 @@
---TEST--
-"replace" filter
---TEMPLATE--
-{{ "I liké %this% and %that%."|replace({'%this%': "foo", '%that%': "bar"}) }}
-{{ 'I like single replace operation only %that%'|replace({'%that%' : '%that%1'}) }}
-{{ 'I like %this% and %that%.'|replace(traversable) }}
---DATA--
-return array('traversable' => new ArrayObject(array('%this%' => 'foo', '%that%' => 'bar')))
---EXPECT--
-I liké foo and bar.
-I like single replace operation only %that%1
-I like foo and bar.
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/replace_invalid_arg.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/replace_invalid_arg.test
deleted file mode 100644
index 2143a86..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/replace_invalid_arg.test
+++ /dev/null
@@ -1,8 +0,0 @@
---TEST--
-Exception for invalid argument type in replace call
---TEMPLATE--
-{{ 'test %foo%'|replace(stdClass) }}
---DATA--
-return array('stdClass' => new stdClass())
---EXCEPTION--
-Twig_Error_Runtime: The "replace" filter expects an array or "Traversable" as replace values, got "stdClass" in "index.twig" at line 2.
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/reverse.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/reverse.test
deleted file mode 100644
index 7948ac4..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/reverse.test
+++ /dev/null
@@ -1,18 +0,0 @@
---TEST--
-"reverse" filter
---TEMPLATE--
-{{ [1, 2, 3, 4]|reverse|join('') }}
-{{ '1234évènement'|reverse }}
-{{ arr|reverse|join('') }}
-{{ {'a': 'c', 'b': 'a'}|reverse()|join(',') }}
-{{ {'a': 'c', 'b': 'a'}|reverse(preserveKeys=true)|join(glue=',') }}
-{{ {'a': 'c', 'b': 'a'}|reverse(preserve_keys=true)|join(glue=',') }}
---DATA--
-return array('arr' => new ArrayObject(array(1, 2, 3, 4)))
---EXPECT--
-4321
-tnemenèvé4321
-4321
-a,c
-a,c
-a,c
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/round.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/round.test
deleted file mode 100644
index 57806b6..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/round.test
+++ /dev/null
@@ -1,22 +0,0 @@
---TEST--
-"round" filter
---TEMPLATE--
-{{ 2.7|round }}
-{{ 2.1|round }}
-{{ 2.1234|round(3, 'floor') }}
-{{ 2.1|round(0, 'ceil') }}
-
-{{ 21.3|round(-1)}}
-{{ 21.3|round(-1, 'ceil')}}
-{{ 21.3|round(-1, 'floor')}}
---DATA--
-return array()
---EXPECT--
-3
-2
-2.123
-3
-
-20
-30
-20
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/slice.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/slice.test
deleted file mode 100644
index b49b89f..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/slice.test
+++ /dev/null
@@ -1,54 +0,0 @@
---TEST--
-"slice" filter
---TEMPLATE--
-{{ [1, 2, 3, 4][1:2]|join('') }}
-{{ {a: 1, b: 2, c: 3, d: 4}[1:2]|join('') }}
-{{ [1, 2, 3, 4][start:length]|join('') }}
-{{ [1, 2, 3, 4]|slice(1, 2)|join('') }}
-{{ [1, 2, 3, 4]|slice(1, 2)|keys|join('') }}
-{{ [1, 2, 3, 4]|slice(1, 2, true)|keys|join('') }}
-{{ {a: 1, b: 2, c: 3, d: 4}|slice(1, 2)|join('') }}
-{{ {a: 1, b: 2, c: 3, d: 4}|slice(1, 2)|keys|join('') }}
-{{ '1234'|slice(1, 2) }}
-{{ '1234'[1:2] }}
-{{ arr|slice(1, 2)|join('') }}
-{{ arr[1:2]|join('') }}
-{{ arr[4:1]|join('') }}
-{{ arr[3:2]|join('') }}
-
-{{ [1, 2, 3, 4]|slice(1)|join('') }}
-{{ [1, 2, 3, 4][1:]|join('') }}
-{{ '1234'|slice(1) }}
-{{ '1234'[1:] }}
-{{ '1234'[:1] }}
-
-{{ arr|slice(3)|join('') }}
-{{ arr[2:]|join('') }}
-{{ xml|slice(1)|join('')}}
---DATA--
-return array('start' => 1, 'length' => 2, 'arr' => new ArrayObject(array(1, 2, 3, 4)), 'xml' => new SimpleXMLElement('<items><item>1</item><item>2</item></items>'))
---EXPECT--
-23
-23
-23
-23
-01
-12
-23
-bc
-23
-23
-23
-23
-
-4
-
-234
-234
-234
-234
-1
-
-4
-34
-2
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/sort.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/sort.test
deleted file mode 100644
index c67c18e..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/sort.test
+++ /dev/null
@@ -1,12 +0,0 @@
---TEST--
-"sort" filter
---TEMPLATE--
-{{ array1|sort|join }}
-{{ array2|sort|join }}
-{{ traversable|sort|join }}
---DATA--
-return array('array1' => array(4, 1), 'array2' => array('foo', 'bar'), 'traversable' => new ArrayObject(array(0 => 3, 1 => 2, 2 => 1)))
---EXPECT--
-14
-barfoo
-123
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/special_chars.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/special_chars.test
deleted file mode 100644
index dbaf7dc..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/special_chars.test
+++ /dev/null
@@ -1,8 +0,0 @@
---TEST--
-"§" custom filter
---TEMPLATE--
-{{ 'foo'|§ }}
---DATA--
-return array()
---EXPECT--
-§foo§
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/split.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/split.test
deleted file mode 100644
index a093ed7..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/split.test
+++ /dev/null
@@ -1,20 +0,0 @@
---TEST--
-"split" filter
---TEMPLATE--
-{{ "one,two,three,four,five"|split(',')|join('-') }}
-{{ foo|split(',')|join('-') }}
-{{ foo|split(',', 3)|join('-') }}
-{{ baz|split('')|join('-') }}
-{{ baz|split('', 1)|join('-') }}
-{{ baz|split('', 2)|join('-') }}
-{{ foo|split(',', -2)|join('-') }}
---DATA--
-return array('foo' => "one,two,three,four,five", 'baz' => '12345',)
---EXPECT--
-one-two-three-four-five
-one-two-three-four-five
-one-two-three,four,five
-1-2-3-4-5
-1-2-3-4-5
-12-34-5
-one-two-three
\ No newline at end of file
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/split_utf8.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/split_utf8.test
deleted file mode 100644
index 305e162..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/split_utf8.test
+++ /dev/null
@@ -1,24 +0,0 @@
---TEST--
-"split" filter
---CONDITION--
-function_exists('mb_get_info')
---TEMPLATE--
-{{ "é"|split('', 10)|join('-') }}
-{{ foo|split(',')|join('-') }}
-{{ foo|split(',', 1)|join('-') }}
-{{ foo|split(',', 2)|join('-') }}
-{{ foo|split(',', 3)|join('-') }}
-{{ baz|split('')|join('-') }}
-{{ baz|split('', 1)|join('-') }}
-{{ baz|split('', 2)|join('-') }}
---DATA--
-return array('foo' => 'Ä,é,Äほ', 'baz' => 'éÄßごa',)
---EXPECT--
-é
-Ä-é-Äほ
-Ä,é,Äほ
-Ä-é,Äほ
-Ä-é-Äほ
-é-Ä-ß-ご-a
-é-Ä-ß-ご-a
-éÄ-ßご-a
\ No newline at end of file
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/trim.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/trim.test
deleted file mode 100644
index 3192062..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/trim.test
+++ /dev/null
@@ -1,12 +0,0 @@
---TEST--
-"trim" filter
---TEMPLATE--
-{{ "  I like Twig.  "|trim }}
-{{ text|trim }}
-{{ "  foo/"|trim("/") }}
---DATA--
-return array('text' => "  If you have some <strong>HTML</strong> it will be escaped.  ")
---EXPECT--
-I like Twig.
-If you have some &lt;strong&gt;HTML&lt;/strong&gt; it will be escaped.
-  foo
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/urlencode.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/urlencode.test
deleted file mode 100644
index 8726159..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/urlencode.test
+++ /dev/null
@@ -1,16 +0,0 @@
---TEST--
-"url_encode" filter
---CONDITION--
-defined('PHP_QUERY_RFC3986')
---TEMPLATE--
-{{ {foo: "bar", number: 3, "spéßi%l": "e%c0d@d", "spa ce": ""}|url_encode }}
-{{ {foo: "bar", number: 3, "spéßi%l": "e%c0d@d", "spa ce": ""}|url_encode|raw }}
-{{ {}|url_encode|default("default") }}
-{{ 'spéßi%le%c0d@dspa ce'|url_encode }}
---DATA--
-return array()
---EXPECT--
-foo=bar&amp;number=3&amp;sp%C3%A9%C3%9Fi%25l=e%25c0d%40d&amp;spa%20ce=
-foo=bar&number=3&sp%C3%A9%C3%9Fi%25l=e%25c0d%40d&spa%20ce=
-default
-sp%C3%A9%C3%9Fi%25le%25c0d%40dspa%20ce
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/urlencode_deprecated.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/urlencode_deprecated.test
deleted file mode 100644
index 11800e9..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/urlencode_deprecated.test
+++ /dev/null
@@ -1,16 +0,0 @@
---TEST--
-"url_encode" filter for PHP < 5.4 and HHVM
---CONDITION--
-defined('PHP_QUERY_RFC3986')
---TEMPLATE--
-{{ {foo: "bar", number: 3, "spéßi%l": "e%c0d@d", "spa ce": ""}|url_encode }}
-{{ {foo: "bar", number: 3, "spéßi%l": "e%c0d@d", "spa ce": ""}|url_encode|raw }}
-{{ {}|url_encode|default("default") }}
-{{ 'spéßi%le%c0d@dspa ce'|url_encode }}
---DATA--
-return array()
---EXPECT--
-foo=bar&amp;number=3&amp;sp%C3%A9%C3%9Fi%25l=e%25c0d%40d&amp;spa%20ce=
-foo=bar&number=3&sp%C3%A9%C3%9Fi%25l=e%25c0d%40d&spa%20ce=
-default
-sp%C3%A9%C3%9Fi%25le%25c0d%40dspa%20ce
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/attribute.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/attribute.test
deleted file mode 100644
index 71b2038..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/attribute.test
+++ /dev/null
@@ -1,18 +0,0 @@
---TEST--
-"attribute" function
---TEMPLATE--
-{{ attribute(obj, method) }}
-{{ attribute(array, item) }}
-{{ attribute(obj, "bar", ["a", "b"]) }}
-{{ attribute(obj, "bar", arguments) }}
-{{ attribute(obj, method) is defined ? 'ok' : 'ko' }}
-{{ attribute(obj, nonmethod) is defined ? 'ok' : 'ko' }}
---DATA--
-return array('obj' => new TwigTestFoo(), 'method' => 'foo', 'array' => array('foo' => 'bar'), 'item' => 'foo', 'nonmethod' => 'xxx', 'arguments' => array('a', 'b'))
---EXPECT--
-foo
-bar
-bar_a-b
-bar_a-b
-ok
-ko
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/block.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/block.test
deleted file mode 100644
index 8e54059..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/block.test
+++ /dev/null
@@ -1,12 +0,0 @@
---TEST--
-"block" function
---TEMPLATE--
-{% extends 'base.twig' %}
-{% block bar %}BAR{% endblock %}
---TEMPLATE(base.twig)--
-{% block foo %}{{ block('bar') }}{% endblock %}
-{% block bar %}BAR_BASE{% endblock %}
---DATA--
-return array()
---EXPECT--
-BARBAR
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/constant.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/constant.test
deleted file mode 100644
index 6312879..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/constant.test
+++ /dev/null
@@ -1,10 +0,0 @@
---TEST--
-"constant" function
---TEMPLATE--
-{{ constant('DATE_W3C') == expect ? 'true' : 'false' }}
-{{ constant('ARRAY_AS_PROPS', object) }}
---DATA--
-return array('expect' => DATE_W3C, 'object' => new ArrayObject(array('hi')));
---EXPECT--
-true
-2
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/cycle.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/cycle.test
deleted file mode 100644
index 522a63b..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/cycle.test
+++ /dev/null
@@ -1,16 +0,0 @@
---TEST--
-"cycle" function
---TEMPLATE--
-{% for i in 0..6 %}
-{{ cycle(array1, i) }}-{{ cycle(array2, i) }}
-{% endfor %}
---DATA--
-return array('array1' => array('odd', 'even'), 'array2' => array('apple', 'orange', 'citrus'))
---EXPECT--
-odd-apple
-even-orange
-odd-citrus
-even-apple
-odd-orange
-even-citrus
-odd-apple
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/date.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/date.test
deleted file mode 100644
index 8be9c0c..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/date.test
+++ /dev/null
@@ -1,25 +0,0 @@
---TEST--
-"date" function
---TEMPLATE--
-{{ date() == date('now') ? 'OK' : 'KO' }}
-{{ date(date1) == date('2010-10-04 13:45') ? 'OK' : 'KO' }}
-{{ date(date2) == date('2010-10-04 13:45') ? 'OK' : 'KO' }}
-{{ date(date3) == date('2010-10-04 13:45') ? 'OK' : 'KO' }}
-{{ date(date4) == date('2010-10-04 13:45') ? 'OK' : 'KO' }}
-{{ date(date5) == date('1964-01-02 03:04') ? 'OK' : 'KO' }}
---DATA--
-date_default_timezone_set('UTC');
-return array(
-    'date1' => mktime(13, 45, 0, 10, 4, 2010),
-    'date2' => new DateTime('2010-10-04 13:45'),
-    'date3' => '2010-10-04 13:45',
-    'date4' => 1286199900, // DateTime::createFromFormat('Y-m-d H:i', '2010-10-04 13:45', new DateTimeZone('UTC'))->getTimestamp() -- A unixtimestamp is always GMT
-    'date5' => -189291360, // DateTime::createFromFormat('Y-m-d H:i', '1964-01-02 03:04', new DateTimeZone('UTC'))->getTimestamp(),
-)
---EXPECT--
-OK
-OK
-OK
-OK
-OK
-OK
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/date_namedargs.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/date_namedargs.test
deleted file mode 100644
index b9dd9e3..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/date_namedargs.test
+++ /dev/null
@@ -1,11 +0,0 @@
---TEST--
-"date" function
---TEMPLATE--
-{{ date(date, "America/New_York")|date('d/m/Y H:i:s P', false) }}
-{{ date(timezone="America/New_York", date=date)|date('d/m/Y H:i:s P', false) }}
---DATA--
-date_default_timezone_set('UTC');
-return array('date' => mktime(13, 45, 0, 10, 4, 2010))
---EXPECT--
-04/10/2010 09:45:00 -04:00
-04/10/2010 09:45:00 -04:00
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/dump.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/dump.test
deleted file mode 100644
index f407237..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/dump.test
+++ /dev/null
@@ -1,16 +0,0 @@
---TEST--
-"dump" function
---CONDITION--
-!extension_loaded('xdebug')
---TEMPLATE--
-{{ dump('foo') }}
-{{ dump('foo', 'bar') }}
---DATA--
-return array('foo' => 'foo', 'bar' => 'bar')
---CONFIG--
-return array('debug' => true, 'autoescape' => false);
---EXPECT--
-string(3) "foo"
-
-string(3) "foo"
-string(3) "bar"
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/dump_array.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/dump_array.test
deleted file mode 100644
index 889b7a9..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/dump_array.test
+++ /dev/null
@@ -1,19 +0,0 @@
---TEST--
-"dump" function, xdebug is not loaded or xdebug <2.2-dev is loaded
---CONDITION--
-!extension_loaded('xdebug') || (($r = new ReflectionExtension('xdebug')) && version_compare($r->getVersion(), '2.2-dev', '<'))
---TEMPLATE--
-{{ dump() }}
---DATA--
-return array('foo' => 'foo', 'bar' => 'bar')
---CONFIG--
-return array('debug' => true, 'autoescape' => false);
---EXPECT--
-array(3) {
-  ["foo"]=>
-  string(3) "foo"
-  ["bar"]=>
-  string(3) "bar"
-  ["global"]=>
-  string(6) "global"
-}
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/dynamic_function.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/dynamic_function.test
deleted file mode 100644
index 913fbc9..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/dynamic_function.test
+++ /dev/null
@@ -1,10 +0,0 @@
---TEST--
-dynamic function
---TEMPLATE--
-{{ foo_path('bar') }}
-{{ a_foo_b_bar('bar') }}
---DATA--
-return array()
---EXPECT--
-foo/bar
-a/b/bar
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/include/assignment.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/include/assignment.test
deleted file mode 100644
index b7653b4..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/include/assignment.test
+++ /dev/null
@@ -1,13 +0,0 @@
---TEST--
-"include" function
---TEMPLATE--
-{% set tmp = include("foo.twig") %}
-
-FOO{{ tmp }}BAR
---TEMPLATE(foo.twig)--
-FOOBAR
---DATA--
-return array()
---EXPECT--
-FOO
-FOOBARBAR
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/include/autoescaping.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/include/autoescaping.test
deleted file mode 100644
index 56f8f3b..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/include/autoescaping.test
+++ /dev/null
@@ -1,10 +0,0 @@
---TEST--
-"include" function is safe for auto-escaping
---TEMPLATE--
-{{ include("foo.twig") }}
---TEMPLATE(foo.twig)--
-<p>Test</p>
---DATA--
-return array()
---EXPECT--
-<p>Test</p>
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/include/basic.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/include/basic.test
deleted file mode 100644
index a434182..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/include/basic.test
+++ /dev/null
@@ -1,17 +0,0 @@
---TEST--
-"include" function
---TEMPLATE--
-FOO
-{{ include("foo.twig") }}
-
-BAR
---TEMPLATE(foo.twig)--
-FOOBAR
---DATA--
-return array()
---EXPECT--
-FOO
-
-FOOBAR
-
-BAR
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/include/expression.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/include/expression.test
deleted file mode 100644
index aba30ce..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/include/expression.test
+++ /dev/null
@@ -1,17 +0,0 @@
---TEST--
-"include" function allows expressions for the template to include
---TEMPLATE--
-FOO
-{{ include(foo) }}
-
-BAR
---TEMPLATE(foo.twig)--
-FOOBAR
---DATA--
-return array('foo' => 'foo.twig')
---EXPECT--
-FOO
-
-FOOBAR
-
-BAR
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/include/ignore_missing.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/include/ignore_missing.test
deleted file mode 100644
index 43a2ccc..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/include/ignore_missing.test
+++ /dev/null
@@ -1,10 +0,0 @@
---TEST--
-"include" function
---TEMPLATE--
-{{ include(["foo.twig", "bar.twig"], ignore_missing = true) }}
-{{ include("foo.twig", ignore_missing = true) }}
-{{ include("foo.twig", ignore_missing = true, variables = {}) }}
-{{ include("foo.twig", ignore_missing = true, variables = {}, with_context = true) }}
---DATA--
-return array()
---EXPECT--
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/include/missing.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/include/missing.test
deleted file mode 100644
index 4d2f6cf..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/include/missing.test
+++ /dev/null
@@ -1,8 +0,0 @@
---TEST--
-"include" function
---TEMPLATE--
-{{ include("foo.twig") }}
---DATA--
-return array();
---EXCEPTION--
-Twig_Error_Loader: Template "foo.twig" is not defined in "index.twig" at line 2.
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/include/missing_nested.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/include/missing_nested.test
deleted file mode 100644
index 78fddc7..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/include/missing_nested.test
+++ /dev/null
@@ -1,16 +0,0 @@
---TEST--
-"include" function
---TEMPLATE--
-{% extends "base.twig" %}
-
-{% block content %}
-    {{ parent() }}
-{% endblock %}
---TEMPLATE(base.twig)--
-{% block content %}
-    {{ include("foo.twig") }}
-{% endblock %}
---DATA--
-return array();
---EXCEPTION--
-Twig_Error_Loader: Template "foo.twig" is not defined in "base.twig" at line 3.
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/include/sandbox.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/include/sandbox.test
deleted file mode 100644
index 7b9ccac..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/include/sandbox.test
+++ /dev/null
@@ -1,13 +0,0 @@
---TEST--
-"include" tag sandboxed
---TEMPLATE--
-{{ include("foo.twig", sandboxed = true) }}
---TEMPLATE(foo.twig)--
-
-
-{{ foo|e }}
-{{ foo|e }}
---DATA--
-return array()
---EXCEPTION--
-Twig_Sandbox_SecurityNotAllowedFilterError: Filter "e" is not allowed in "foo.twig" at line 4.
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/include/sandbox_disabling.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/include/sandbox_disabling.test
deleted file mode 100644
index 8ffc492..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/include/sandbox_disabling.test
+++ /dev/null
@@ -1,16 +0,0 @@
---TEST--
-"include" tag sandboxed
---TEMPLATE--
-{{ include("foo.twig", sandboxed = true) }}
-{{ include("bar.twig") }}
---TEMPLATE(foo.twig)--
-foo
---TEMPLATE(bar.twig)--
-{{ foo|e }}
---DATA--
-return array('foo' => 'bar<br />')
---EXPECT--
-foo
-
-
-bar&lt;br /&gt;
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/include/sandbox_disabling_ignore_missing.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/include/sandbox_disabling_ignore_missing.test
deleted file mode 100644
index 8bf6e10..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/include/sandbox_disabling_ignore_missing.test
+++ /dev/null
@@ -1,13 +0,0 @@
---TEST--
-"include" tag sandboxed
---TEMPLATE--
-{{ include("unknown.twig", sandboxed = true, ignore_missing = true) }}
-{{ include("bar.twig") }}
---TEMPLATE(bar.twig)--
-{{ foo|e }}
---DATA--
-return array('foo' => 'bar<br />')
---EXPECT--
-
-
-bar&lt;br /&gt;
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/include/template_instance.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/include/template_instance.test
deleted file mode 100644
index 18d405a..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/include/template_instance.test
+++ /dev/null
@@ -1,10 +0,0 @@
---TEST--
-"include" function accepts Twig_Template instance
---TEMPLATE--
-{{ include(foo) }} FOO
---TEMPLATE(foo.twig)--
-BAR
---DATA--
-return array('foo' => $twig->loadTemplate('foo.twig'))
---EXPECT--
-BAR FOO
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/include/templates_as_array.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/include/templates_as_array.test
deleted file mode 100644
index 1a81006..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/include/templates_as_array.test
+++ /dev/null
@@ -1,12 +0,0 @@
---TEST--
-"include" function
---TEMPLATE--
-{{ include(["foo.twig", "bar.twig"]) }}
-{{- include(["bar.twig", "foo.twig"]) }}
---TEMPLATE(foo.twig)--
-foo
---DATA--
-return array()
---EXPECT--
-foo
-foo
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/include/with_context.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/include/with_context.test
deleted file mode 100644
index 35611fb..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/include/with_context.test
+++ /dev/null
@@ -1,16 +0,0 @@
---TEST--
-"include" function accept variables and with_context
---TEMPLATE--
-{{ include("foo.twig") }}
-{{- include("foo.twig", with_context = false) }}
-{{- include("foo.twig", {'foo1': 'bar'}) }}
-{{- include("foo.twig", {'foo1': 'bar'}, with_context = false) }}
---TEMPLATE(foo.twig)--
-{% for k, v in _context %}{{ k }},{% endfor %}
---DATA--
-return array('foo' => 'bar')
---EXPECT--
-foo,global,_parent,
-global,_parent,
-foo,global,foo1,_parent,
-foo1,global,_parent,
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/include/with_variables.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/include/with_variables.test
deleted file mode 100644
index b2ace94..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/include/with_variables.test
+++ /dev/null
@@ -1,12 +0,0 @@
---TEST--
-"include" function accept variables
---TEMPLATE--
-{{ include("foo.twig", {'foo': 'bar'}) }}
-{{- include("foo.twig", vars) }}
---TEMPLATE(foo.twig)--
-{{ foo }}
---DATA--
-return array('vars' => array('foo' => 'bar'))
---EXPECT--
-bar
-bar
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/max.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/max.test
deleted file mode 100644
index e6c94af..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/max.test
+++ /dev/null
@@ -1,12 +0,0 @@
---TEST--
-"max" function
---TEMPLATE--
-{{ max([2, 1, 3, 5, 4]) }}
-{{ max(2, 1, 3, 5, 4) }}
-{{ max({2:"two", 1:"one", 3:"three", 5:"five", 4:"for"}) }}
---DATA--
-return array()
---EXPECT--
-5
-5
-two
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/min.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/min.test
deleted file mode 100644
index 660471c..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/min.test
+++ /dev/null
@@ -1,12 +0,0 @@
---TEST--
-"min" function
---TEMPLATE--
-{{ min(2, 1, 3, 5, 4) }}
-{{ min([2, 1, 3, 5, 4]) }}
-{{ min({2:"two", 1:"one", 3:"three", 5:"five", 4:"for"}) }}
---DATA--
-return array()
---EXPECT--
-1
-1
-five
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/range.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/range.test
deleted file mode 100644
index e0377c8..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/range.test
+++ /dev/null
@@ -1,8 +0,0 @@
---TEST--
-"range" function
---TEMPLATE--
-{{ range(low=0+1, high=10+0, step=2)|join(',') }}
---DATA--
-return array()
---EXPECT--
-1,3,5,7,9
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/recursive_block_with_inheritance.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/recursive_block_with_inheritance.test
deleted file mode 100644
index f39712d..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/recursive_block_with_inheritance.test
+++ /dev/null
@@ -1,21 +0,0 @@
---TEST--
-"block" function recursively called in a parent template
---TEMPLATE--
-{% extends "ordered_menu.twig" %}
-{% block label %}"{{ parent() }}"{% endblock %}
-{% block list %}{% set class = 'b' %}{{ parent() }}{% endblock %}
---TEMPLATE(ordered_menu.twig)--
-{% extends "menu.twig" %}
-{% block list %}{% set class = class|default('a') %}<ol class="{{ class }}">{{ block('children') }}</ol>{% endblock %}
---TEMPLATE(menu.twig)--
-{% extends "base.twig" %}
-{% block list %}<ul>{{ block('children') }}</ul>{% endblock %}
-{% block children %}{% set currentItem = item %}{% for item in currentItem %}{{ block('item') }}{% endfor %}{% set item = currentItem %}{% endblock %}
-{% block item %}<li>{% if item is not iterable %}{{ block('label') }}{% else %}{{ block('list') }}{% endif %}</li>{% endblock %}
-{% block label %}{{ item }}{{ block('unknown') }}{% endblock %}
---TEMPLATE(base.twig)--
-{{ block('list') }}
---DATA--
-return array('item' => array('1', '2', array('3.1', array('3.2.1', '3.2.2'), '3.4')))
---EXPECT--
-<ol class="b"><li>"1"</li><li>"2"</li><li><ol class="b"><li>"3.1"</li><li><ol class="b"><li>"3.2.1"</li><li>"3.2.2"</li></ol></li><li>"3.4"</li></ol></li></ol>
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/source.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/source.test
deleted file mode 100644
index 0e094c3..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/source.test
+++ /dev/null
@@ -1,17 +0,0 @@
---TEST--
-"source" function
---TEMPLATE--
-FOO
-{{ source("foo.twig") }}
-
-BAR
---TEMPLATE(foo.twig)--
-{{ foo }}<br />
---DATA--
-return array()
---EXPECT--
-FOO
-
-{{ foo }}<br />
-
-BAR
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/special_chars.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/special_chars.test
deleted file mode 100644
index 30c3df5..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/special_chars.test
+++ /dev/null
@@ -1,8 +0,0 @@
---TEST--
-"§" custom function
---TEMPLATE--
-{{ §('foo') }}
---DATA--
-return array()
---EXPECT--
-§foo§
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/template_from_string.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/template_from_string.test
deleted file mode 100644
index 3d3b958..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/template_from_string.test
+++ /dev/null
@@ -1,15 +0,0 @@
---TEST--
-"template_from_string" function
---TEMPLATE--
-{% include template_from_string(template) %}
-
-{% include template_from_string("Hello {{ name }}") %}
-{% include template_from_string('{% extends "parent.twig" %}{% block content %}Hello {{ name }}{% endblock %}') %}
---TEMPLATE(parent.twig)--
-{% block content %}{% endblock %}
---DATA--
-return array('name' => 'Fabien', 'template' => "Hello {{ name }}")
---EXPECT--
-Hello Fabien
-Hello Fabien
-Hello Fabien
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/macros/default_values.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/macros/default_values.test
deleted file mode 100644
index 4ccff7b..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/macros/default_values.test
+++ /dev/null
@@ -1,16 +0,0 @@
---TEST--
-macro
---TEMPLATE--
-{% from _self import test %}
-
-{% macro test(a, b = 'bar') -%}
-{{ a }}{{ b }}
-{%- endmacro %}
-
-{{ test('foo') }}
-{{ test('bar', 'foo') }}
---DATA--
-return array();
---EXPECT--
-foobar
-barfoo
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/macros/nested_calls.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/macros/nested_calls.test
deleted file mode 100644
index cd25428..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/macros/nested_calls.test
+++ /dev/null
@@ -1,18 +0,0 @@
---TEST--
-macro
---TEMPLATE--
-{% import _self as macros %}
-
-{% macro foo(data) %}
-    {{ data }}
-{% endmacro %}
-
-{% macro bar() %}
-    <br />
-{% endmacro %}
-
-{{ macros.foo(macros.bar()) }}
---DATA--
-return array();
---EXPECT--
-<br />
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/macros/reserved_variables.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/macros/reserved_variables.test
deleted file mode 100644
index cbfb921..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/macros/reserved_variables.test
+++ /dev/null
@@ -1,14 +0,0 @@
---TEST--
-macro
---TEMPLATE--
-{% from _self import test %}
-
-{% macro test(this) -%}
-    {{ this }}
-{%- endmacro %}
-
-{{ test(this) }}
---DATA--
-return array('this' => 'foo');
---EXPECT--
-foo
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/macros/simple.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/macros/simple.test
deleted file mode 100644
index 6a366cd..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/macros/simple.test
+++ /dev/null
@@ -1,22 +0,0 @@
---TEST--
-macro
---TEMPLATE--
-{% import _self as test %}
-{% from _self import test %}
-
-{% macro test(a, b) -%}
-    {{ a|default('a') }}<br />
-    {{- b|default('b') }}<br />
-{%- endmacro %}
-
-{{ test.test() }}
-{{ test() }}
-{{ test.test(1, "c") }}
-{{ test(1, "c") }}
---DATA--
-return array();
---EXPECT--
-a<br />b<br />
-a<br />b<br />
-1<br />c<br />
-1<br />c<br />
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/macros/varargs.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/macros/varargs.test
deleted file mode 100644
index 412c90f..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/macros/varargs.test
+++ /dev/null
@@ -1,21 +0,0 @@
---TEST--
-macro with arbitrary arguments
---TEMPLATE--
-{% from _self import test1, test2 %}
-
-{% macro test1(var) %}
-    {{- var }}: {{ varargs|join(", ") }}
-{% endmacro %}
-
-{% macro test2() %}
-    {{- varargs|join(", ") }}
-{% endmacro %}
-
-{{ test1("foo", "bar", "foobar") }}
-{{ test2("foo", "bar", "foobar") }}
---DATA--
-return array();
---EXPECT--
-foo: bar, foobar
-
-foo, bar, foobar
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/macros/varargs_argument.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/macros/varargs_argument.test
deleted file mode 100644
index b08c8ec..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/macros/varargs_argument.test
+++ /dev/null
@@ -1,8 +0,0 @@
---TEST--
-macro with varargs argument
---TEMPLATE--
-{% macro test(varargs) %}
-{% endmacro %}
---EXCEPTION--
-Twig_Error_Syntax: The argument "varargs" in macro "test" cannot be defined because the variable "varargs" is reserved for arbitrary arguments in "index.twig" at line 2
-
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/macros/with_filters.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/macros/with_filters.test
deleted file mode 100644
index 685626f..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/macros/with_filters.test
+++ /dev/null
@@ -1,14 +0,0 @@
---TEST--
-macro with a filter
---TEMPLATE--
-{% import _self as test %}
-
-{% macro test() %}
-    {% filter escape %}foo<br />{% endfilter %}
-{% endmacro %}
-
-{{ test.test() }}
---DATA--
-return array();
---EXPECT--
-foo&lt;br /&gt;
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/regression/combined_debug_info.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/regression/combined_debug_info.test
deleted file mode 100644
index df48578..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/regression/combined_debug_info.test
+++ /dev/null
@@ -1,15 +0,0 @@
---TEST--
-Exception with bad line number
---TEMPLATE--
-{% block content %}
-    {{ foo }}
-    {{ include("foo") }}
-{% endblock %}
-index
---TEMPLATE(foo)--
-foo
-{{ foo.bar }}
---DATA--
-return array('foo' => 'foo');
---EXCEPTION--
-Twig_Error_Runtime: Impossible to access an attribute ("bar") on a string variable ("foo") in "foo" at line 3
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/regression/empty_token.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/regression/empty_token.test
deleted file mode 100644
index 65f6cd2..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/regression/empty_token.test
+++ /dev/null
@@ -1,8 +0,0 @@
---TEST--
-Twig outputs 0 nodes correctly
---TEMPLATE--
-{{ foo }}0{{ foo }}
---DATA--
-return array('foo' => 'foo')
---EXPECT--
-foo0foo
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/regression/issue_1143.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/regression/issue_1143.test
deleted file mode 100644
index ff7c8bb..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/regression/issue_1143.test
+++ /dev/null
@@ -1,23 +0,0 @@
---TEST--
-error in twig extension
---TEMPLATE--
-{{ object.region is not null ? object.regionChoices[object.region] }}
---DATA--
-class House
-{
-    const REGION_S = 1;
-    const REGION_P = 2;
-
-    public static $regionChoices = array(self::REGION_S => 'house.region.s', self::REGION_P => 'house.region.p');
-
-    public function getRegionChoices()
-    {
-        return self::$regionChoices;
-    }
-}
-
-$object = new House();
-$object->region = 1;
-return array('object' => $object)
---EXPECT--
-house.region.s
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/regression/multi_word_tests.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/regression/multi_word_tests.test
deleted file mode 100644
index 269a305..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/regression/multi_word_tests.test
+++ /dev/null
@@ -1,10 +0,0 @@
---TEST--
-Twig allows multi-word tests without a custom node class
---TEMPLATE--
-{{ 'foo' is multi word ? 'yes' : 'no' }}
-{{ 'foo bar' is multi word ? 'yes' : 'no' }}
---DATA--
-return array()
---EXPECT--
-no
-yes
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/regression/simple_xml_element.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/regression/simple_xml_element.test
deleted file mode 100644
index 60c3c51..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/regression/simple_xml_element.test
+++ /dev/null
@@ -1,19 +0,0 @@
---TEST--
-Twig is able to deal with SimpleXMLElement instances as variables
---CONDITION--
-version_compare(phpversion(), '5.3.0', '>=')
---TEMPLATE--
-Hello '{{ images.image.0.group }}'!
-{{ images.image.0.group.attributes.myattr }}
-{{ images.children().image.count() }}
-{% for image in images %}
-    - {{ image.group }}
-{% endfor %}
---DATA--
-return array('images' => new SimpleXMLElement('<images><image><group myattr="example">foo</group></image><image><group>bar</group></image></images>'))
---EXPECT--
-Hello 'foo'!
-example
-2
-    - foo
-    - bar
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/regression/strings_like_numbers.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/regression/strings_like_numbers.test
deleted file mode 100644
index e18e110..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/regression/strings_like_numbers.test
+++ /dev/null
@@ -1,8 +0,0 @@
---TEST--
-Twig does not confuse strings with integers in getAttribute()
---TEMPLATE--
-{{ hash['2e2'] }}
---DATA--
-return array('hash' => array('2e2' => 'works'))
---EXPECT--
-works
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/autoescape/basic.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/autoescape/basic.test
deleted file mode 100644
index 2f6a3e1..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/autoescape/basic.test
+++ /dev/null
@@ -1,26 +0,0 @@
---TEST--
-"autoescape" tag applies escaping on its children
---TEMPLATE--
-{% autoescape %}
-{{ var }}<br />
-{% endautoescape %}
-{% autoescape 'html' %}
-{{ var }}<br />
-{% endautoescape %}
-{% autoescape false %}
-{{ var }}<br />
-{% endautoescape %}
-{% autoescape true %}
-{{ var }}<br />
-{% endautoescape %}
-{% autoescape false %}
-{{ var }}<br />
-{% endautoescape %}
---DATA--
-return array('var' => '<br />')
---EXPECT--
-&lt;br /&gt;<br />
-&lt;br /&gt;<br />
-<br /><br />
-&lt;br /&gt;<br />
-<br /><br />
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/autoescape/blocks.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/autoescape/blocks.test
deleted file mode 100644
index 05ab83c..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/autoescape/blocks.test
+++ /dev/null
@@ -1,12 +0,0 @@
---TEST--
-"autoescape" tag applies escaping on embedded blocks
---TEMPLATE--
-{% autoescape 'html' %}
-  {% block foo %}
-    {{ var }}
-  {% endblock %}
-{% endautoescape %}
---DATA--
-return array('var' => '<br />')
---EXPECT--
-&lt;br /&gt;
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/autoescape/double_escaping.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/autoescape/double_escaping.test
deleted file mode 100644
index 9c09724..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/autoescape/double_escaping.test
+++ /dev/null
@@ -1,10 +0,0 @@
---TEST--
-"autoescape" tag does not double-escape
---TEMPLATE--
-{% autoescape 'html' %}
-{{ var|escape }}
-{% endautoescape %}
---DATA--
-return array('var' => '<br />')
---EXPECT--
-&lt;br /&gt;
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/autoescape/functions.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/autoescape/functions.test
deleted file mode 100644
index ce7ea78..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/autoescape/functions.test
+++ /dev/null
@@ -1,83 +0,0 @@
---TEST--
-"autoescape" tag applies escaping after calling functions
---TEMPLATE--
-
-autoescape false
-{% autoescape false %}
-
-safe_br
-{{ safe_br() }}
-
-unsafe_br
-{{ unsafe_br() }}
-
-{% endautoescape %}
-
-autoescape 'html'
-{% autoescape 'html' %}
-
-safe_br
-{{ safe_br() }}
-
-unsafe_br
-{{ unsafe_br() }}
-
-unsafe_br()|raw
-{{ (unsafe_br())|raw }}
-
-safe_br()|escape
-{{ (safe_br())|escape }}
-
-safe_br()|raw
-{{ (safe_br())|raw }}
-
-unsafe_br()|escape
-{{ (unsafe_br())|escape }}
-
-{% endautoescape %}
-
-autoescape js
-{% autoescape 'js' %}
-
-safe_br
-{{ safe_br() }}
-
-{% endautoescape %}
---DATA--
-return array()
---EXPECT--
-
-autoescape false
-
-safe_br
-<br />
-
-unsafe_br
-<br />
-
-
-autoescape 'html'
-
-safe_br
-<br />
-
-unsafe_br
-&lt;br /&gt;
-
-unsafe_br()|raw
-<br />
-
-safe_br()|escape
-&lt;br /&gt;
-
-safe_br()|raw
-<br />
-
-unsafe_br()|escape
-&lt;br /&gt;
-
-
-autoescape js
-
-safe_br
-\x3Cbr\x20\x2F\x3E
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/autoescape/literal.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/autoescape/literal.test
deleted file mode 100644
index e389d4d..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/autoescape/literal.test
+++ /dev/null
@@ -1,45 +0,0 @@
---TEST--
-"autoescape" tag does not apply escaping on literals
---TEMPLATE--
-{% autoescape 'html' %}
-
-1. Simple literal
-{{ "<br />" }}
-
-2. Conditional expression with only literals
-{{ true ? "<br />" : "<br>" }}
-
-3. Conditional expression with a variable
-{{ true ? "<br />" : someVar }}
-
-4. Nested conditionals with only literals
-{{ true ? (true ? "<br />" : "<br>") : "\n" }}
-
-5. Nested conditionals with a variable
-{{ true ? (true ? "<br />" : someVar) : "\n" }}
-
-6. Nested conditionals with a variable marked safe
-{{ true ? (true ? "<br />" : someVar|raw) : "\n" }}
-
-{% endautoescape %}
---DATA--
-return array()
---EXPECT--
-
-1. Simple literal
-<br />
-
-2. Conditional expression with only literals
-<br />
-
-3. Conditional expression with a variable
-&lt;br /&gt;
-
-4. Nested conditionals with only literals
-<br />
-
-5. Nested conditionals with a variable
-&lt;br /&gt;
-
-6. Nested conditionals with a variable marked safe
-<br />
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/autoescape/nested.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/autoescape/nested.test
deleted file mode 100644
index 798e6fe..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/autoescape/nested.test
+++ /dev/null
@@ -1,26 +0,0 @@
---TEST--
-"autoescape" tags can be nested at will
---TEMPLATE--
-{{ var }}
-{% autoescape 'html' %}
-  {{ var }}
-  {% autoescape false %}
-    {{ var }}
-    {% autoescape 'html' %}
-      {{ var }}
-    {% endautoescape %}
-    {{ var }}
-  {% endautoescape %}
-  {{ var }}
-{% endautoescape %}
-{{ var }}
---DATA--
-return array('var' => '<br />')
---EXPECT--
-&lt;br /&gt;
-  &lt;br /&gt;
-      <br />
-          &lt;br /&gt;
-        <br />
-    &lt;br /&gt;
-&lt;br /&gt;
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/autoescape/objects.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/autoescape/objects.test
deleted file mode 100644
index e896aa4..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/autoescape/objects.test
+++ /dev/null
@@ -1,26 +0,0 @@
---TEST--
-"autoescape" tag applies escaping to object method calls
---TEMPLATE--
-{% autoescape 'html' %}
-{{ user.name }}
-{{ user.name|lower }}
-{{ user }}
-{% endautoescape %}
---DATA--
-class UserForAutoEscapeTest
-{
-  public function getName()
-  {
-    return 'Fabien<br />';
-  }
-
-  public function __toString()
-  {
-     return 'Fabien<br />';
-  }
-}
-return array('user' => new UserForAutoEscapeTest())
---EXPECT--
-Fabien&lt;br /&gt;
-fabien&lt;br /&gt;
-Fabien&lt;br /&gt;
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/autoescape/raw.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/autoescape/raw.test
deleted file mode 100644
index 9f1cedd..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/autoescape/raw.test
+++ /dev/null
@@ -1,10 +0,0 @@
---TEST--
-"autoescape" tag does not escape when raw is used as a filter
---TEMPLATE--
-{% autoescape 'html' %}
-{{ var|raw }}
-{% endautoescape %}
---DATA--
-return array('var' => '<br />')
---EXPECT--
-<br />
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/autoescape/strategy.legacy.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/autoescape/strategy.legacy.test
deleted file mode 100644
index bbf1356..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/autoescape/strategy.legacy.test
+++ /dev/null
@@ -1,11 +0,0 @@
---TEST--
-"autoescape" tag accepts an escaping strategy
---TEMPLATE--
-{% autoescape true js %}{{ var }}{% endautoescape %}
-
-{% autoescape true html %}{{ var }}{% endautoescape %}
---DATA--
-return array('var' => '<br />"')
---EXPECT--
-\x3Cbr\x20\x2F\x3E\x22
-&lt;br /&gt;&quot;
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/autoescape/strategy.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/autoescape/strategy.test
deleted file mode 100644
index e496f60..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/autoescape/strategy.test
+++ /dev/null
@@ -1,11 +0,0 @@
---TEST--
-"autoescape" tag accepts an escaping strategy
---TEMPLATE--
-{% autoescape 'js' %}{{ var }}{% endautoescape %}
-
-{% autoescape 'html' %}{{ var }}{% endautoescape %}
---DATA--
-return array('var' => '<br />"')
---EXPECT--
-\x3Cbr\x20\x2F\x3E\x22
-&lt;br /&gt;&quot;
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/autoescape/type.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/autoescape/type.test
deleted file mode 100644
index 4f41520..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/autoescape/type.test
+++ /dev/null
@@ -1,69 +0,0 @@
---TEST--
-escape types
---TEMPLATE--
-
-1. autoescape 'html' |escape('js')
-
-{% autoescape 'html' %}
-<a onclick="alert(&quot;{{ msg|escape('js') }}&quot;)"></a>
-{% endautoescape %}
-
-2. autoescape 'html' |escape('js')
-
-{% autoescape 'html' %}
-<a onclick="alert(&quot;{{ msg|escape('js') }}&quot;)"></a>
-{% endautoescape %}
-
-3. autoescape 'js' |escape('js')
-
-{% autoescape 'js' %}
-<a onclick="alert(&quot;{{ msg|escape('js') }}&quot;)"></a>
-{% endautoescape %}
-
-4. no escape
-
-{% autoescape false %}
-<a onclick="alert(&quot;{{ msg }}&quot;)"></a>
-{% endautoescape %}
-
-5. |escape('js')|escape('html')
-
-{% autoescape false %}
-<a onclick="alert(&quot;{{ msg|escape('js')|escape('html') }}&quot;)"></a>
-{% endautoescape %}
-
-6. autoescape 'html' |escape('js')|escape('html')
-
-{% autoescape 'html' %}
-<a onclick="alert(&quot;{{ msg|escape('js')|escape('html') }}&quot;)"></a>
-{% endautoescape %}
-
---DATA--
-return array('msg' => "<>\n'\"")
---EXPECT--
-
-1. autoescape 'html' |escape('js')
-
-<a onclick="alert(&quot;\x3C\x3E\x0A\x27\x22&quot;)"></a>
-
-2. autoescape 'html' |escape('js')
-
-<a onclick="alert(&quot;\x3C\x3E\x0A\x27\x22&quot;)"></a>
-
-3. autoescape 'js' |escape('js')
-
-<a onclick="alert(&quot;\x3C\x3E\x0A\x27\x22&quot;)"></a>
-
-4. no escape
-
-<a onclick="alert(&quot;<>
-'"&quot;)"></a>
-
-5. |escape('js')|escape('html')
-
-<a onclick="alert(&quot;\x3C\x3E\x0A\x27\x22&quot;)"></a>
-
-6. autoescape 'html' |escape('js')|escape('html')
-
-<a onclick="alert(&quot;\x3C\x3E\x0A\x27\x22&quot;)"></a>
-
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/autoescape/with_filters.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/autoescape/with_filters.test
deleted file mode 100644
index 7821a9a..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/autoescape/with_filters.test
+++ /dev/null
@@ -1,131 +0,0 @@
---TEST--
-"autoescape" tag applies escaping after calling filters
---TEMPLATE--
-{% autoescape 'html' %}
-
-(escape_and_nl2br is an escaper filter)
-
-1. Don't escape escaper filter output
-( var is escaped by |escape_and_nl2br, line-breaks are added, 
-  the output is not escaped )
-{{ var|escape_and_nl2br }}
-
-2. Don't escape escaper filter output
-( var is escaped by |escape_and_nl2br, line-breaks are added, 
-  the output is not escaped, |raw is redundant )
-{{ var|escape_and_nl2br|raw }}
-
-3. Explicit escape
-( var is escaped by |escape_and_nl2br, line-breaks are added,
-  the output is explicitly escaped by |escape )
-{{ var|escape_and_nl2br|escape }}
-
-4. Escape non-escaper filter output
-( var is upper-cased by |upper,
-  the output is auto-escaped )
-{{ var|upper }}
-
-5. Escape if last filter is not an escaper
-( var is escaped by |escape_and_nl2br, line-breaks are added,
-  the output is upper-cased by |upper,
-  the output is auto-escaped as |upper is not an escaper )
-{{ var|escape_and_nl2br|upper }}
-
-6. Don't escape escaper filter output
-( var is upper cased by upper,
-  the output is escaped by |escape_and_nl2br, line-breaks are added,
-  the output is not escaped as |escape_and_nl2br is an escaper )
-{{ var|upper|escape_and_nl2br }}
-
-7. Escape if last filter is not an escaper
-( the output of |format is "<b>" ~ var ~ "</b>",
-  the output is auto-escaped )
-{{ "<b>%s</b>"|format(var) }}
-
-8. Escape if last filter is not an escaper
-( the output of |format is "<b>" ~ var ~ "</b>",
-  |raw is redundant,
-  the output is auto-escaped )
-{{ "<b>%s</b>"|raw|format(var) }}
-
-9. Don't escape escaper filter output
-( the output of |format is "<b>" ~ var ~ "</b>",
-  the output is not escaped due to |raw filter at the end )
-{{ "<b>%s</b>"|format(var)|raw }}
-
-10. Don't escape escaper filter output
-( the output of |format is "<b>" ~ var ~ "</b>",
-  the output is not escaped due to |raw filter at the end,
-  the |raw filter on var is redundant )
-{{ "<b>%s</b>"|format(var|raw)|raw }}
-
-{% endautoescape %}
---DATA--
-return array('var' => "<Fabien>\nTwig")
---EXPECT--
-
-(escape_and_nl2br is an escaper filter)
-
-1. Don't escape escaper filter output
-( var is escaped by |escape_and_nl2br, line-breaks are added, 
-  the output is not escaped )
-&lt;Fabien&gt;<br />
-Twig
-
-2. Don't escape escaper filter output
-( var is escaped by |escape_and_nl2br, line-breaks are added, 
-  the output is not escaped, |raw is redundant )
-&lt;Fabien&gt;<br />
-Twig
-
-3. Explicit escape
-( var is escaped by |escape_and_nl2br, line-breaks are added,
-  the output is explicitly escaped by |escape )
-&amp;lt;Fabien&amp;gt;&lt;br /&gt;
-Twig
-
-4. Escape non-escaper filter output
-( var is upper-cased by |upper,
-  the output is auto-escaped )
-&lt;FABIEN&gt;
-TWIG
-
-5. Escape if last filter is not an escaper
-( var is escaped by |escape_and_nl2br, line-breaks are added,
-  the output is upper-cased by |upper,
-  the output is auto-escaped as |upper is not an escaper )
-&amp;LT;FABIEN&amp;GT;&lt;BR /&gt;
-TWIG
-
-6. Don't escape escaper filter output
-( var is upper cased by upper,
-  the output is escaped by |escape_and_nl2br, line-breaks are added,
-  the output is not escaped as |escape_and_nl2br is an escaper )
-&lt;FABIEN&gt;<br />
-TWIG
-
-7. Escape if last filter is not an escaper
-( the output of |format is "<b>" ~ var ~ "</b>",
-  the output is auto-escaped )
-&lt;b&gt;&lt;Fabien&gt;
-Twig&lt;/b&gt;
-
-8. Escape if last filter is not an escaper
-( the output of |format is "<b>" ~ var ~ "</b>",
-  |raw is redundant,
-  the output is auto-escaped )
-&lt;b&gt;&lt;Fabien&gt;
-Twig&lt;/b&gt;
-
-9. Don't escape escaper filter output
-( the output of |format is "<b>" ~ var ~ "</b>",
-  the output is not escaped due to |raw filter at the end )
-<b><Fabien>
-Twig</b>
-
-10. Don't escape escaper filter output
-( the output of |format is "<b>" ~ var ~ "</b>",
-  the output is not escaped due to |raw filter at the end,
-  the |raw filter on var is redundant )
-<b><Fabien>
-Twig</b>
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/autoescape/with_filters_arguments.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/autoescape/with_filters_arguments.test
deleted file mode 100644
index f58a1e0..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/autoescape/with_filters_arguments.test
+++ /dev/null
@@ -1,23 +0,0 @@
---TEST--
-"autoescape" tag do not applies escaping on filter arguments
---TEMPLATE--
-{% autoescape 'html' %}
-{{ var|nl2br("<br />") }}
-{{ var|nl2br("<br />"|escape) }}
-{{ var|nl2br(sep) }}
-{{ var|nl2br(sep|raw) }}
-{{ var|nl2br(sep|escape) }}
-{% endautoescape %}
---DATA--
-return array('var' => "<Fabien>\nTwig", 'sep' => '<br />')
---EXPECT--
-&lt;Fabien&gt;<br />
-Twig
-&lt;Fabien&gt;&lt;br /&gt;
-Twig
-&lt;Fabien&gt;<br />
-Twig
-&lt;Fabien&gt;<br />
-Twig
-&lt;Fabien&gt;&lt;br /&gt;
-Twig
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/autoescape/with_pre_escape_filters.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/autoescape/with_pre_escape_filters.test
deleted file mode 100644
index 134c77e..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/autoescape/with_pre_escape_filters.test
+++ /dev/null
@@ -1,68 +0,0 @@
---TEST--
-"autoescape" tag applies escaping after calling filters, and before calling pre_escape filters
---TEMPLATE--
-{% autoescape 'html' %}
-
-(nl2br is pre_escaped for "html" and declared safe for "html")
-
-1. Pre-escape and don't post-escape
-( var|escape|nl2br )
-{{ var|nl2br }}
-
-2. Don't double-pre-escape
-( var|escape|nl2br )
-{{ var|escape|nl2br }}
-
-3. Don't escape safe values
-( var|raw|nl2br )
-{{ var|raw|nl2br }}
-
-4. Don't escape safe values
-( var|escape|nl2br|nl2br )
-{{ var|nl2br|nl2br }}
-
-5. Re-escape values that are escaped for an other contexts
-( var|escape_something|escape|nl2br )
-{{ var|escape_something|nl2br }}
-
-6. Still escape when using filters not declared safe
-( var|escape|nl2br|upper|escape )
-{{ var|nl2br|upper }}
-
-{% endautoescape %}
---DATA--
-return array('var' => "<Fabien>\nTwig")
---EXPECT--
-
-(nl2br is pre_escaped for "html" and declared safe for "html")
-
-1. Pre-escape and don't post-escape
-( var|escape|nl2br )
-&lt;Fabien&gt;<br />
-Twig
-
-2. Don't double-pre-escape
-( var|escape|nl2br )
-&lt;Fabien&gt;<br />
-Twig
-
-3. Don't escape safe values
-( var|raw|nl2br )
-<Fabien><br />
-Twig
-
-4. Don't escape safe values
-( var|escape|nl2br|nl2br )
-&lt;Fabien&gt;<br /><br />
-Twig
-
-5. Re-escape values that are escaped for an other contexts
-( var|escape_something|escape|nl2br )
-&lt;FABIEN&gt;<br />
-TWIG
-
-6. Still escape when using filters not declared safe
-( var|escape|nl2br|upper|escape )
-&amp;LT;FABIEN&amp;GT;&lt;BR /&gt;
-TWIG
-
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/autoescape/with_preserves_safety_filters.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/autoescape/with_preserves_safety_filters.test
deleted file mode 100644
index 32d3943..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/autoescape/with_preserves_safety_filters.test
+++ /dev/null
@@ -1,50 +0,0 @@
---TEST--
-"autoescape" tag handles filters preserving the safety
---TEMPLATE--
-{% autoescape 'html' %}
-
-(preserves_safety is preserving safety for "html")
-
-1. Unsafe values are still unsafe
-( var|preserves_safety|escape )
-{{ var|preserves_safety }}
-
-2. Safe values are still safe
-( var|escape|preserves_safety )
-{{ var|escape|preserves_safety }}
-
-3. Re-escape values that are escaped for an other contexts
-( var|escape_something|preserves_safety|escape )
-{{ var|escape_something|preserves_safety }}
-
-4. Still escape when using filters not declared safe
-( var|escape|preserves_safety|replace({'FABIEN': 'FABPOT'})|escape )
-{{ var|escape|preserves_safety|replace({'FABIEN': 'FABPOT'}) }}
-
-{% endautoescape %}
---DATA--
-return array('var' => "<Fabien>\nTwig")
---EXPECT--
-
-(preserves_safety is preserving safety for "html")
-
-1. Unsafe values are still unsafe
-( var|preserves_safety|escape )
-&lt;FABIEN&gt;
-TWIG
-
-2. Safe values are still safe
-( var|escape|preserves_safety )
-&LT;FABIEN&GT;
-TWIG
-
-3. Re-escape values that are escaped for an other contexts
-( var|escape_something|preserves_safety|escape )
-&lt;FABIEN&gt;
-TWIG
-
-4. Still escape when using filters not declared safe
-( var|escape|preserves_safety|replace({'FABIEN': 'FABPOT'})|escape )
-&amp;LT;FABPOT&amp;GT;
-TWIG
-
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/block/basic.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/block/basic.test
deleted file mode 100644
index 360dcf0..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/block/basic.test
+++ /dev/null
@@ -1,11 +0,0 @@
---TEST--
-"block" tag
---TEMPLATE--
-{% block title1 %}FOO{% endblock %}
-{% block title2 foo|lower %}
---TEMPLATE(foo.twig)--
-{% block content %}{% endblock %}
---DATA--
-return array('foo' => 'bar')
---EXPECT--
-FOObar
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/block/block_unique_name.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/block/block_unique_name.test
deleted file mode 100644
index 5c205c0..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/block/block_unique_name.test
+++ /dev/null
@@ -1,11 +0,0 @@
---TEST--
-"block" tag
---TEMPLATE--
-{% block content %}
-    {% block content %}
-    {% endblock %}
-{% endblock %}
---DATA--
-return array()
---EXCEPTION--
-Twig_Error_Syntax: The block 'content' has already been defined line 2 in "index.twig" at line 3
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/block/special_chars.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/block/special_chars.test
deleted file mode 100644
index be17fed..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/block/special_chars.test
+++ /dev/null
@@ -1,10 +0,0 @@
---TEST--
-"§" special chars in a block name
---TEMPLATE--
-{% block § %}
-§
-{% endblock § %}
---DATA--
-return array()
---EXPECT--
-§
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/embed/basic.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/embed/basic.test
deleted file mode 100644
index f44296e..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/embed/basic.test
+++ /dev/null
@@ -1,35 +0,0 @@
---TEST--
-"embed" tag
---TEMPLATE--
-FOO
-{% embed "foo.twig" %}
-    {% block c1 %}
-        {{ parent() }}
-        block1extended
-    {% endblock %}
-{% endembed %}
-
-BAR
---TEMPLATE(foo.twig)--
-A
-{% block c1 %}
-    block1
-{% endblock %}
-B
-{% block c2 %}
-    block2
-{% endblock %}
-C
---DATA--
-return array()
---EXPECT--
-FOO
-
-A
-            block1
-
-        block1extended
-    B
-    block2
-C
-BAR
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/embed/error_line.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/embed/error_line.test
deleted file mode 100644
index 71ab2e0..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/embed/error_line.test
+++ /dev/null
@@ -1,16 +0,0 @@
---TEST--
-"embed" tag
---TEMPLATE(index.twig)--
-FOO
-{% embed "foo.twig" %}
-    {% block c1 %}
-        {{ nothing }}
-    {% endblock %}
-{% endembed %}
-BAR
---TEMPLATE(foo.twig)--
-{% block c1 %}{% endblock %}
---DATA--
-return array()
---EXCEPTION--
-Twig_Error_Runtime: Variable "nothing" does not exist in "index.twig" at line 5
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/embed/multiple.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/embed/multiple.test
deleted file mode 100644
index da161e6..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/embed/multiple.test
+++ /dev/null
@@ -1,50 +0,0 @@
---TEST--
-"embed" tag
---TEMPLATE--
-FOO
-{% embed "foo.twig" %}
-    {% block c1 %}
-        {{ parent() }}
-        block1extended
-    {% endblock %}
-{% endembed %}
-
-{% embed "foo.twig" %}
-    {% block c1 %}
-        {{ parent() }}
-        block1extended
-    {% endblock %}
-{% endembed %}
-
-BAR
---TEMPLATE(foo.twig)--
-A
-{% block c1 %}
-    block1
-{% endblock %}
-B
-{% block c2 %}
-    block2
-{% endblock %}
-C
---DATA--
-return array()
---EXPECT--
-FOO
-
-A
-            block1
-
-        block1extended
-    B
-    block2
-C
-
-A
-            block1
-
-        block1extended
-    B
-    block2
-C
-BAR
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/embed/nested.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/embed/nested.test
deleted file mode 100644
index 81563dc..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/embed/nested.test
+++ /dev/null
@@ -1,42 +0,0 @@
---TEST--
-"embed" tag
---TEMPLATE--
-{% embed "foo.twig" %}
-    {% block c1 %}
-        {{ parent() }}
-        {% embed "foo.twig" %}
-            {% block c1 %}
-                {{ parent() }}
-                block1extended
-            {% endblock %}
-        {% endembed %}
-
-    {% endblock %}
-{% endembed %}
---TEMPLATE(foo.twig)--
-A
-{% block c1 %}
-    block1
-{% endblock %}
-B
-{% block c2 %}
-    block2
-{% endblock %}
-C
---DATA--
-return array()
---EXPECT--
-A
-            block1
-
-        
-A
-                    block1
-
-                block1extended
-            B
-    block2
-C
-    B
-    block2
-C
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/embed/with_extends.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/embed/with_extends.test
deleted file mode 100644
index cf7953d..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/embed/with_extends.test
+++ /dev/null
@@ -1,57 +0,0 @@
---TEST--
-"embed" tag
---TEMPLATE--
-{% extends "base.twig" %}
-
-{% block c1 %}
-    {{ parent() }}
-    blockc1baseextended
-{% endblock %}
-
-{% block c2 %}
-    {{ parent() }}
-
-    {% embed "foo.twig" %}
-        {% block c1 %}
-            {{ parent() }}
-            block1extended
-        {% endblock %}
-    {% endembed %}
-{% endblock %}
---TEMPLATE(base.twig)--
-A
-{% block c1 %}
-    blockc1base
-{% endblock %}
-{% block c2 %}
-    blockc2base
-{% endblock %}
-B
---TEMPLATE(foo.twig)--
-A
-{% block c1 %}
-    block1
-{% endblock %}
-B
-{% block c2 %}
-    block2
-{% endblock %}
-C
---DATA--
-return array()
---EXPECT--
-A
-        blockc1base
-
-    blockc1baseextended
-        blockc2base
-
-
-    
-A
-                block1
-
-            block1extended
-        B
-    block2
-CB
\ No newline at end of file
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/filter/basic.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/filter/basic.test
deleted file mode 100644
index 82094f2..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/filter/basic.test
+++ /dev/null
@@ -1,10 +0,0 @@
---TEST--
-"filter" tag applies a filter on its children
---TEMPLATE--
-{% filter upper %}
-Some text with a {{ var }}
-{% endfilter %}
---DATA--
-return array('var' => 'var')
---EXPECT--
-SOME TEXT WITH A VAR
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/filter/json_encode.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/filter/json_encode.test
deleted file mode 100644
index 3e7148b..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/filter/json_encode.test
+++ /dev/null
@@ -1,8 +0,0 @@
---TEST--
-"filter" tag applies a filter on its children
---TEMPLATE--
-{% filter json_encode|raw %}test{% endfilter %}
---DATA--
-return array()
---EXPECT--
-"test"
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/filter/multiple.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/filter/multiple.test
deleted file mode 100644
index 75512ef..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/filter/multiple.test
+++ /dev/null
@@ -1,10 +0,0 @@
---TEST--
-"filter" tags accept multiple chained filters
---TEMPLATE--
-{% filter lower|title %}
-  {{ var }}
-{% endfilter %}
---DATA--
-return array('var' => 'VAR')
---EXPECT--
-    Var
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/filter/nested.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/filter/nested.test
deleted file mode 100644
index 7e4e4eb..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/filter/nested.test
+++ /dev/null
@@ -1,16 +0,0 @@
---TEST--
-"filter" tags can be nested at will
---TEMPLATE--
-{% filter lower|title %}
-  {{ var }}
-  {% filter upper %}
-    {{ var }}
-  {% endfilter %}
-  {{ var }}
-{% endfilter %}
---DATA--
-return array('var' => 'var')
---EXPECT--
-  Var
-      Var
-    Var
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/filter/with_for_tag.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/filter/with_for_tag.test
deleted file mode 100644
index 22745ea..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/filter/with_for_tag.test
+++ /dev/null
@@ -1,13 +0,0 @@
---TEST--
-"filter" tag applies the filter on "for" tags
---TEMPLATE--
-{% filter upper %}
-{% for item in items %}
-{{ item }}
-{% endfor %}
-{% endfilter %}
---DATA--
-return array('items' => array('a', 'b'))
---EXPECT--
-A
-B
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/filter/with_if_tag.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/filter/with_if_tag.test
deleted file mode 100644
index afd95b2..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/filter/with_if_tag.test
+++ /dev/null
@@ -1,29 +0,0 @@
---TEST--
-"filter" tag applies the filter on "if" tags
---TEMPLATE--
-{% filter upper %}
-{% if items %}
-{{ items|join(', ') }}
-{% endif %}
-
-{% if items.3 is defined %}
-FOO
-{% else %}
-{{ items.1 }}
-{% endif %}
-
-{% if items.3 is defined %}
-FOO
-{% elseif items.1 %}
-{{ items.0 }}
-{% endif %}
-
-{% endfilter %}
---DATA--
-return array('items' => array('a', 'b'))
---EXPECT--
-A, B
-
-B
-
-A
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/for/condition.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/for/condition.test
deleted file mode 100644
index 380531f..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/for/condition.test
+++ /dev/null
@@ -1,14 +0,0 @@
---TEST--
-"for" tag takes a condition
---TEMPLATE--
-{% for i in 1..5 if i is odd -%}
-    {{ loop.index }}.{{ i }}{{ foo.bar }}
-{% endfor %}
---DATA--
-return array('foo' => array('bar' => 'X'))
---CONFIG--
-return array('strict_variables' => false)
---EXPECT--
-1.1X
-2.3X
-3.5X
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/for/context.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/for/context.test
deleted file mode 100644
index ddc6930..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/for/context.test
+++ /dev/null
@@ -1,18 +0,0 @@
---TEST--
-"for" tag keeps the context safe
---TEMPLATE--
-{% for item in items %}
-  {% for item in items %}
-    * {{ item }}
-  {% endfor %}
-  * {{ item }}
-{% endfor %}
---DATA--
-return array('items' => array('a', 'b'))
---EXPECT--
-      * a
-      * b
-    * a
-      * a
-      * b
-    * b
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/for/else.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/for/else.test
deleted file mode 100644
index 20ccc88..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/for/else.test
+++ /dev/null
@@ -1,23 +0,0 @@
---TEST--
-"for" tag can use an "else" clause
---TEMPLATE--
-{% for item in items %}
-  * {{ item }}
-{% else %}
-  no item
-{% endfor %}
---DATA--
-return array('items' => array('a', 'b'))
---EXPECT--
-  * a
-  * b
---DATA--
-return array('items' => array())
---EXPECT--
-  no item
---DATA--
-return array()
---CONFIG--
-return array('strict_variables' => false)
---EXPECT--
-  no item
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/for/inner_variables.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/for/inner_variables.test
deleted file mode 100644
index 49fb9ca..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/for/inner_variables.test
+++ /dev/null
@@ -1,17 +0,0 @@
---TEST--
-"for" tag does not reset inner variables
---TEMPLATE--
-{% for i in 1..2 %}
-  {% for j in 0..2 %}
-    {{k}}{% set k = k+1 %} {{ loop.parent.loop.index }}
-  {% endfor %}
-{% endfor %}
---DATA--
-return array('k' => 0)
---EXPECT--
-      0 1
-      1 1
-      2 1
-        3 2
-      4 2
-      5 2
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/for/keys.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/for/keys.test
deleted file mode 100644
index 4e22cb4..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/for/keys.test
+++ /dev/null
@@ -1,11 +0,0 @@
---TEST--
-"for" tag can iterate over keys
---TEMPLATE--
-{% for key in items|keys %}
-  * {{ key }}
-{% endfor %}
---DATA--
-return array('items' => array('a', 'b'))
---EXPECT--
-  * 0
-  * 1
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/for/keys_and_values.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/for/keys_and_values.test
deleted file mode 100644
index 4c21168..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/for/keys_and_values.test
+++ /dev/null
@@ -1,11 +0,0 @@
---TEST--
-"for" tag can iterate over keys and values
---TEMPLATE--
-{% for key, item in items %}
-  * {{ key }}/{{ item }}
-{% endfor %}
---DATA--
-return array('items' => array('a', 'b'))
---EXPECT--
-  * 0/a
-  * 1/b
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/for/loop_context.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/for/loop_context.test
deleted file mode 100644
index 93bc76a..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/for/loop_context.test
+++ /dev/null
@@ -1,19 +0,0 @@
---TEST--
-"for" tag adds a loop variable to the context
---TEMPLATE--
-{% for item in items %}
-  * {{ loop.index }}/{{ loop.index0 }}
-  * {{ loop.revindex }}/{{ loop.revindex0 }}
-  * {{ loop.first }}/{{ loop.last }}/{{ loop.length }}
-
-{% endfor %}
---DATA--
-return array('items' => array('a', 'b'))
---EXPECT--
-  * 1/0
-  * 2/1
-  * 1//2
-
-  * 2/1
-  * 1/0
-  * /1/2
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/for/loop_context_local.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/for/loop_context_local.test
deleted file mode 100644
index 58af2c3..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/for/loop_context_local.test
+++ /dev/null
@@ -1,10 +0,0 @@
---TEST--
-"for" tag adds a loop variable to the context locally
---TEMPLATE--
-{% for item in items %}
-{% endfor %}
-{% if loop is not defined %}WORKS{% endif %}
---DATA--
-return array('items' => array())
---EXPECT--
-WORKS
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/for/loop_not_defined.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/for/loop_not_defined.test
deleted file mode 100644
index 4301ef2..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/for/loop_not_defined.test
+++ /dev/null
@@ -1,10 +0,0 @@
---TEST--
-"for" tag
---TEMPLATE--
-{% for i, item in items if i > 0 %}
-    {{ loop.last }}
-{% endfor %}
---DATA--
-return array('items' => array('a', 'b'))
---EXCEPTION--
-Twig_Error_Syntax: The "loop.last" variable is not defined when looping with a condition in "index.twig" at line 3
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/for/loop_not_defined_cond.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/for/loop_not_defined_cond.test
deleted file mode 100644
index c7e723a..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/for/loop_not_defined_cond.test
+++ /dev/null
@@ -1,9 +0,0 @@
---TEST--
-"for" tag
---TEMPLATE--
-{% for i, item in items if loop.last > 0 %}
-{% endfor %}
---DATA--
-return array('items' => array('a', 'b'))
---EXCEPTION--
-Twig_Error_Syntax: The "loop" variable cannot be used in a looping condition in "index.twig" at line 2
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/for/nested_else.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/for/nested_else.test
deleted file mode 100644
index f8b9f6b..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/for/nested_else.test
+++ /dev/null
@@ -1,17 +0,0 @@
---TEST--
-"for" tag can use an "else" clause
---TEMPLATE--
-{% for item in items %}
-  {% for item in items1 %}
-    * {{ item }}
-  {% else %}
-    no {{ item }}
-  {% endfor %}
-{% else %}
-  no item1
-{% endfor %}
---DATA--
-return array('items' => array('a', 'b'), 'items1' => array())
---EXPECT--
-no a
-        no b
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/for/objects.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/for/objects.test
deleted file mode 100644
index 5034437..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/for/objects.test
+++ /dev/null
@@ -1,43 +0,0 @@
---TEST--
-"for" tag iterates over iterable objects
---TEMPLATE--
-{% for item in items %}
-  * {{ item }}
-  * {{ loop.index }}/{{ loop.index0 }}
-  * {{ loop.first }}
-
-{% endfor %}
-
-{% for key, value in items %}
-  * {{ key }}/{{ value }}
-{% endfor %}
-
-{% for key in items|keys %}
-  * {{ key }}
-{% endfor %}
---DATA--
-class ItemsIterator implements Iterator
-{
-  protected $values = array('foo' => 'bar', 'bar' => 'foo');
-  public function current() { return current($this->values); }
-  public function key() { return key($this->values); }
-  public function next() { return next($this->values); }
-  public function rewind() { return reset($this->values); }
-  public function valid() { return false !== current($this->values); }
-}
-return array('items' => new ItemsIterator())
---EXPECT--
-  * bar
-  * 1/0
-  * 1
-
-  * foo
-  * 2/1
-  * 
-
-
-  * foo/bar
-  * bar/foo
-
-  * foo
-  * bar
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/for/objects_countable.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/for/objects_countable.test
deleted file mode 100644
index 4a1ff61..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/for/objects_countable.test
+++ /dev/null
@@ -1,47 +0,0 @@
---TEST--
-"for" tag iterates over iterable and countable objects
---TEMPLATE--
-{% for item in items %}
-  * {{ item }}
-  * {{ loop.index }}/{{ loop.index0 }}
-  * {{ loop.revindex }}/{{ loop.revindex0 }}
-  * {{ loop.first }}/{{ loop.last }}/{{ loop.length }}
-
-{% endfor %}
-
-{% for key, value in items %}
-  * {{ key }}/{{ value }}
-{% endfor %}
-
-{% for key in items|keys %}
-  * {{ key }}
-{% endfor %}
---DATA--
-class ItemsIteratorCountable implements Iterator, Countable
-{
-  protected $values = array('foo' => 'bar', 'bar' => 'foo');
-  public function current() { return current($this->values); }
-  public function key() { return key($this->values); }
-  public function next() { return next($this->values); }
-  public function rewind() { return reset($this->values); }
-  public function valid() { return false !== current($this->values); }
-  public function count() { return count($this->values); }
-}
-return array('items' => new ItemsIteratorCountable())
---EXPECT--
-  * bar
-  * 1/0
-  * 2/1
-  * 1//2
-
-  * foo
-  * 2/1
-  * 1/0
-  * /1/2
-
-
-  * foo/bar
-  * bar/foo
-
-  * foo
-  * bar
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/for/recursive.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/for/recursive.test
deleted file mode 100644
index 17b2e22..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/for/recursive.test
+++ /dev/null
@@ -1,18 +0,0 @@
---TEST--
-"for" tags can be nested
---TEMPLATE--
-{% for key, item in items %}
-* {{ key }} ({{ loop.length }}):
-{% for value in item %}
-  * {{ value }} ({{ loop.length }})
-{% endfor %}
-{% endfor %}
---DATA--
-return array('items' => array('a' => array('a1', 'a2', 'a3'), 'b' => array('b1')))
---EXPECT--
-* a (2):
-  * a1 (3)
-  * a2 (3)
-  * a3 (3)
-* b (2):
-  * b1 (1)
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/for/values.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/for/values.test
deleted file mode 100644
index 82f2ae8..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/for/values.test
+++ /dev/null
@@ -1,11 +0,0 @@
---TEST--
-"for" tag iterates over item values
---TEMPLATE--
-{% for item in items %}
-  * {{ item }}
-{% endfor %}
---DATA--
-return array('items' => array('a', 'b'))
---EXPECT--
-  * a
-  * b
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/from.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/from.test
deleted file mode 100644
index 5f5da0e..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/from.test
+++ /dev/null
@@ -1,14 +0,0 @@
---TEST--
-global variables
---TEMPLATE--
-{% include "included.twig" %}
-{% from "included.twig" import foobar %}
-{{ foobar() }}
---TEMPLATE(included.twig)--
-{% macro foobar() %}
-called foobar
-{% endmacro %}
---DATA--
-return array();
---EXPECT--
-called foobar
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/if/basic.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/if/basic.test
deleted file mode 100644
index c1c3d27..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/if/basic.test
+++ /dev/null
@@ -1,22 +0,0 @@
---TEST--
-"if" creates a condition
---TEMPLATE--
-{% if a is defined %}
-  {{ a }}
-{% elseif b is defined %}
-  {{ b }}
-{% else %}
-  NOTHING
-{% endif %}
---DATA--
-return array('a' => 'a')
---EXPECT--
-  a
---DATA--
-return array('b' => 'b')
---EXPECT--
-  b
---DATA--
-return array()
---EXPECT--
-  NOTHING
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/if/expression.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/if/expression.test
deleted file mode 100644
index edfb73d..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/if/expression.test
+++ /dev/null
@@ -1,22 +0,0 @@
---TEST--
-"if" takes an expression as a test
---TEMPLATE--
-{% if a < 2 %}
-  A1
-{% elseif a > 10 %}
-  A2
-{% else %}
-  A3
-{% endif %}
---DATA--
-return array('a' => 1)
---EXPECT--
-  A1
---DATA--
-return array('a' => 12)
---EXPECT--
-  A2
---DATA--
-return array('a' => 7)
---EXPECT--
-  A3
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/include/basic.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/include/basic.test
deleted file mode 100644
index 8fe1a6c..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/include/basic.test
+++ /dev/null
@@ -1,16 +0,0 @@
---TEST--
-"include" tag
---TEMPLATE--
-FOO
-{% include "foo.twig" %}
-
-BAR
---TEMPLATE(foo.twig)--
-FOOBAR
---DATA--
-return array()
---EXPECT--
-FOO
-
-FOOBAR
-BAR
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/include/expression.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/include/expression.test
deleted file mode 100644
index eaeeb11..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/include/expression.test
+++ /dev/null
@@ -1,16 +0,0 @@
---TEST--
-"include" tag allows expressions for the template to include
---TEMPLATE--
-FOO
-{% include foo %}
-
-BAR
---TEMPLATE(foo.twig)--
-FOOBAR
---DATA--
-return array('foo' => 'foo.twig')
---EXPECT--
-FOO
-
-FOOBAR
-BAR
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/include/ignore_missing.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/include/ignore_missing.test
deleted file mode 100644
index 24aed06..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/include/ignore_missing.test
+++ /dev/null
@@ -1,10 +0,0 @@
---TEST--
-"include" tag
---TEMPLATE--
-{% include ["foo.twig", "bar.twig"] ignore missing %}
-{% include "foo.twig" ignore missing %}
-{% include "foo.twig" ignore missing with {} %}
-{% include "foo.twig" ignore missing with {} only %}
---DATA--
-return array()
---EXPECT--
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/include/missing.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/include/missing.test
deleted file mode 100644
index f25e871..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/include/missing.test
+++ /dev/null
@@ -1,8 +0,0 @@
---TEST--
-"include" tag
---TEMPLATE--
-{% include "foo.twig" %}
---DATA--
-return array();
---EXCEPTION--
-Twig_Error_Loader: Template "foo.twig" is not defined in "index.twig" at line 2.
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/include/missing_nested.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/include/missing_nested.test
deleted file mode 100644
index 86c1864..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/include/missing_nested.test
+++ /dev/null
@@ -1,16 +0,0 @@
---TEST--
-"include" tag
---TEMPLATE--
-{% extends "base.twig" %}
-
-{% block content %}
-    {{ parent() }}
-{% endblock %}
---TEMPLATE(base.twig)--
-{% block content %}
-    {% include "foo.twig" %}
-{% endblock %}
---DATA--
-return array();
---EXCEPTION--
-Twig_Error_Loader: Template "foo.twig" is not defined in "base.twig" at line 3.
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/include/only.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/include/only.test
deleted file mode 100644
index 77760a0..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/include/only.test
+++ /dev/null
@@ -1,16 +0,0 @@
---TEST--
-"include" tag accept variables and only
---TEMPLATE--
-{% include "foo.twig" %}
-{% include "foo.twig" only %}
-{% include "foo.twig" with {'foo1': 'bar'} %}
-{% include "foo.twig" with {'foo1': 'bar'} only %}
---TEMPLATE(foo.twig)--
-{% for k, v in _context %}{{ k }},{% endfor %}
---DATA--
-return array('foo' => 'bar')
---EXPECT--
-foo,global,_parent,
-global,_parent,
-foo,global,foo1,_parent,
-foo1,global,_parent,
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/include/template_instance.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/include/template_instance.test
deleted file mode 100644
index 6ba064a..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/include/template_instance.test
+++ /dev/null
@@ -1,10 +0,0 @@
---TEST--
-"include" tag accepts Twig_Template instance
---TEMPLATE--
-{% include foo %} FOO
---TEMPLATE(foo.twig)--
-BAR
---DATA--
-return array('foo' => $twig->loadTemplate('foo.twig'))
---EXPECT--
-BAR FOO
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/include/templates_as_array.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/include/templates_as_array.test
deleted file mode 100644
index ab670ee..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/include/templates_as_array.test
+++ /dev/null
@@ -1,12 +0,0 @@
---TEST--
-"include" tag
---TEMPLATE--
-{% include ["foo.twig", "bar.twig"] %}
-{% include ["bar.twig", "foo.twig"] %}
---TEMPLATE(foo.twig)--
-foo
---DATA--
-return array()
---EXPECT--
-foo
-foo
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/include/with_variables.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/include/with_variables.test
deleted file mode 100644
index 41384ac..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/include/with_variables.test
+++ /dev/null
@@ -1,12 +0,0 @@
---TEST--
-"include" tag accept variables
---TEMPLATE--
-{% include "foo.twig" with {'foo': 'bar'} %}
-{% include "foo.twig" with vars %}
---TEMPLATE(foo.twig)--
-{{ foo }}
---DATA--
-return array('vars' => array('foo' => 'bar'))
---EXPECT--
-bar
-bar
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/basic.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/basic.test
deleted file mode 100644
index 0778a4b..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/basic.test
+++ /dev/null
@@ -1,14 +0,0 @@
---TEST--
-"extends" tag
---TEMPLATE--
-{% extends "foo.twig" %}
-
-{% block content %}
-FOO
-{% endblock %}
---TEMPLATE(foo.twig)--
-{% block content %}{% endblock %}
---DATA--
-return array()
---EXPECT--
-FOO
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/block_expr.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/block_expr.test
deleted file mode 100644
index 9a81499..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/block_expr.test
+++ /dev/null
@@ -1,32 +0,0 @@
---TEST--
-block_expr
---TEMPLATE--
-{% extends "base.twig" %}
-
-{% block element -%}
-    Element:
-    {{- parent() -}}
-{% endblock %}
---TEMPLATE(base.twig)--
-{% spaceless %}
-{% block element -%}
-    <div>
-        {%- if item.children is defined %}
-            {%- for item in item.children %}
-                {{- block('element') -}}
-            {% endfor %}
-        {%- endif -%}
-    </div>
-{%- endblock %}
-{% endspaceless %}
---DATA--
-return array(
-    'item' => array(
-        'children' => array(
-            null,
-            null,
-        )
-    )
-)
---EXPECT--
-Element:<div>Element:<div></div>Element:<div></div></div>
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/block_expr2.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/block_expr2.test
deleted file mode 100644
index 3e868c0..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/block_expr2.test
+++ /dev/null
@@ -1,34 +0,0 @@
---TEST--
-block_expr2
---TEMPLATE--
-{% extends "base2.twig" %}
-
-{% block element -%}
-    Element:
-    {{- parent() -}}
-{% endblock %}
---TEMPLATE(base2.twig)--
-{% extends "base.twig" %}
---TEMPLATE(base.twig)--
-{% spaceless %}
-{% block element -%}
-    <div>
-        {%- if item.children is defined %}
-            {%- for item in item.children %}
-                {{- block('element') -}}
-            {% endfor %}
-        {%- endif -%}
-    </div>
-{%- endblock %}
-{% endspaceless %}
---DATA--
-return array(
-    'item' => array(
-        'children' => array(
-            null,
-            null,
-        )
-    )
-)
---EXPECT--
-Element:<div>Element:<div></div>Element:<div></div></div>
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/conditional.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/conditional.test
deleted file mode 100644
index 8576e77..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/conditional.test
+++ /dev/null
@@ -1,14 +0,0 @@
---TEST--
-"extends" tag
---TEMPLATE--
-{% extends standalone ? foo : 'bar.twig' %}
-
-{% block content %}{{ parent() }}FOO{% endblock %}
---TEMPLATE(foo.twig)--
-{% block content %}FOO{% endblock %}
---TEMPLATE(bar.twig)--
-{% block content %}BAR{% endblock %}
---DATA--
-return array('foo' => 'foo.twig', 'standalone' => true)
---EXPECT--
-FOOFOO
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/dynamic.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/dynamic.test
deleted file mode 100644
index ee06ddc..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/dynamic.test
+++ /dev/null
@@ -1,14 +0,0 @@
---TEST--
-"extends" tag
---TEMPLATE--
-{% extends foo %}
-
-{% block content %}
-FOO
-{% endblock %}
---TEMPLATE(foo.twig)--
-{% block content %}{% endblock %}
---DATA--
-return array('foo' => 'foo.twig')
---EXPECT--
-FOO
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/empty.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/empty.test
deleted file mode 100644
index 784f357..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/empty.test
+++ /dev/null
@@ -1,10 +0,0 @@
---TEST--
-"extends" tag
---TEMPLATE--
-{% extends "foo.twig" %}
---TEMPLATE(foo.twig)--
-{% block content %}FOO{% endblock %}
---DATA--
-return array()
---EXPECT--
-FOO
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/extends_as_array.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/extends_as_array.test
deleted file mode 100644
index a1cb1ce..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/extends_as_array.test
+++ /dev/null
@@ -1,12 +0,0 @@
---TEST--
-"extends" tag
---TEMPLATE--
-{% extends ["foo.twig", "bar.twig"] %}
---TEMPLATE(bar.twig)--
-{% block content %}
-foo
-{% endblock %}
---DATA--
-return array()
---EXPECT--
-foo
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/extends_as_array_with_empty_name.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/extends_as_array_with_empty_name.test
deleted file mode 100644
index acc74f6..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/extends_as_array_with_empty_name.test
+++ /dev/null
@@ -1,12 +0,0 @@
---TEST--
-"extends" tag
---TEMPLATE--
-{% extends ["", "bar.twig"] %}
---TEMPLATE(bar.twig)--
-{% block content %}
-foo
-{% endblock %}
---DATA--
-return array()
---EXPECT--
-foo
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/extends_as_array_with_null_name.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/extends_as_array_with_null_name.test
deleted file mode 100644
index cfa648d..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/extends_as_array_with_null_name.test
+++ /dev/null
@@ -1,12 +0,0 @@
---TEST--
-"extends" tag
---TEMPLATE--
-{% extends [null, "bar.twig"] %}
---TEMPLATE(bar.twig)--
-{% block content %}
-foo
-{% endblock %}
---DATA--
-return array()
---EXPECT--
-foo
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/multiple.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/multiple.test
deleted file mode 100644
index dfc2b6c..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/multiple.test
+++ /dev/null
@@ -1,12 +0,0 @@
---TEST--
-"extends" tag
---TEMPLATE--
-{% extends "layout.twig" %}{% block content %}{{ parent() }}index {% endblock %}
---TEMPLATE(layout.twig)--
-{% extends "base.twig" %}{% block content %}{{ parent() }}layout {% endblock %}
---TEMPLATE(base.twig)--
-{% block content %}base {% endblock %}
---DATA--
-return array()
---EXPECT--
-base layout index
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/multiple_dynamic.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/multiple_dynamic.test
deleted file mode 100644
index 1d3e639..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/multiple_dynamic.test
+++ /dev/null
@@ -1,22 +0,0 @@
---TEST--
-"extends" tag
---TEMPLATE--
-{% set foo = 1 %}
-{{ include('parent.twig') }}
-{{ include('parent.twig') }}
-{% set foo = 2 %}
-{{ include('parent.twig') }}
---TEMPLATE(parent.twig)--
-{% extends foo~'_parent.twig' %}{% block content %}{{ parent() }} parent{% endblock %}
---TEMPLATE(1_parent.twig)--
-{% block content %}1{% endblock %}
---TEMPLATE(2_parent.twig)--
-{% block content %}2{% endblock %}
---DATA--
-return array()
---EXPECT--
-1 parent
-
-1 parent
-
-2 parent
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/nested_blocks.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/nested_blocks.test
deleted file mode 100644
index faca925..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/nested_blocks.test
+++ /dev/null
@@ -1,22 +0,0 @@
---TEST--
-"block" tag
---TEMPLATE--
-{% extends "foo.twig" %}
-
-{% block content %}
-    {% block subcontent %}
-        {% block subsubcontent %}
-            SUBSUBCONTENT
-        {% endblock %}
-    {% endblock %}
-{% endblock %}
---TEMPLATE(foo.twig)--
-{% block content %}
-    {% block subcontent %}
-        SUBCONTENT
-    {% endblock %}
-{% endblock %}
---DATA--
-return array()
---EXPECT--
-SUBSUBCONTENT
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/nested_blocks_parent_only.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/nested_blocks_parent_only.test
deleted file mode 100644
index 0ad11d0..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/nested_blocks_parent_only.test
+++ /dev/null
@@ -1,15 +0,0 @@
---TEST--
-"block" tag
---TEMPLATE--
-{% block content %}
-    CONTENT
-    {%- block subcontent -%}
-        SUBCONTENT
-    {%- endblock -%}
-    ENDCONTENT
-{% endblock %}
---TEMPLATE(foo.twig)--
---DATA--
-return array()
---EXPECT--
-CONTENTSUBCONTENTENDCONTENT
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/nested_inheritance.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/nested_inheritance.test
deleted file mode 100644
index 71e3cdf..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/nested_inheritance.test
+++ /dev/null
@@ -1,16 +0,0 @@
---TEST--
-"extends" tag
---TEMPLATE--
-{% extends "layout.twig" %}
-{% block inside %}INSIDE{% endblock inside %}
---TEMPLATE(layout.twig)--
-{% extends "base.twig" %}
-{% block body %}
-    {% block inside '' %}
-{% endblock body %}
---TEMPLATE(base.twig)--
-{% block body '' %}
---DATA--
-return array()
---EXPECT--
-INSIDE
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/parent.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/parent.test
deleted file mode 100644
index 4f975db..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/parent.test
+++ /dev/null
@@ -1,12 +0,0 @@
---TEST--
-"extends" tag
---TEMPLATE--
-{% extends "foo.twig" %}
-
-{% block content %}{{ parent() }}FOO{{ parent() }}{% endblock %}
---TEMPLATE(foo.twig)--
-{% block content %}BAR{% endblock %}
---DATA--
-return array()
---EXPECT--
-BARFOOBAR
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/parent_change.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/parent_change.test
deleted file mode 100644
index a8bc90c..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/parent_change.test
+++ /dev/null
@@ -1,16 +0,0 @@
---TEST--
-"extends" tag
---TEMPLATE--
-{% extends foo ? 'foo.twig' : 'bar.twig' %}
---TEMPLATE(foo.twig)--
-FOO
---TEMPLATE(bar.twig)--
-BAR
---DATA--
-return array('foo' => true)
---EXPECT--
-FOO
---DATA--
-return array('foo' => false)
---EXPECT--
-BAR
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/parent_in_a_block.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/parent_in_a_block.test
deleted file mode 100644
index c9e86b1..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/parent_in_a_block.test
+++ /dev/null
@@ -1,8 +0,0 @@
---TEST--
-"extends" tag
---TEMPLATE--
-{% block content %}
-    {% extends "foo.twig" %}
-{% endblock %}
---EXCEPTION--
-Twig_Error_Syntax: Cannot extend from a block in "index.twig" at line 3
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/parent_isolation.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/parent_isolation.test
deleted file mode 100644
index 6281671..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/parent_isolation.test
+++ /dev/null
@@ -1,20 +0,0 @@
---TEST--
-"extends" tag
---TEMPLATE--
-{% extends "base.twig" %}
-{% block content %}{% include "included.twig" %}{% endblock %}
-
-{% block footer %}Footer{% endblock %}
---TEMPLATE(included.twig)--
-{% extends "base.twig" %}
-{% block content %}Included Content{% endblock %}
---TEMPLATE(base.twig)--
-{% block content %}Default Content{% endblock %}
-
-{% block footer %}Default Footer{% endblock %}
---DATA--
-return array()
---EXPECT--
-Included Content
-Default Footer
-Footer
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/parent_nested.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/parent_nested.test
deleted file mode 100644
index 71e7c20..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/parent_nested.test
+++ /dev/null
@@ -1,28 +0,0 @@
---TEST--
-"extends" tag
---TEMPLATE--
-{% extends "foo.twig" %}
-
-{% block content %}
-  {% block inside %}
-    INSIDE OVERRIDDEN
-  {% endblock %}
-
-  BEFORE
-  {{ parent() }}
-  AFTER
-{% endblock %}
---TEMPLATE(foo.twig)--
-{% block content %}
-  BAR
-{% endblock %}
---DATA--
-return array()
---EXPECT--
-
-INSIDE OVERRIDDEN
-  
-  BEFORE
-    BAR
-
-  AFTER
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/parent_without_extends.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/parent_without_extends.test
deleted file mode 100644
index a9eaa4c..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/parent_without_extends.test
+++ /dev/null
@@ -1,8 +0,0 @@
---TEST--
-"parent" tag
---TEMPLATE--
-{% block content %}
-    {{ parent() }}
-{% endblock %}
---EXCEPTION--
-Twig_Error_Syntax: Calling "parent" on a template that does not extend nor "use" another template is forbidden in "index.twig" at line 3
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/parent_without_extends_but_traits.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/parent_without_extends_but_traits.test
deleted file mode 100644
index 63c7305..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/parent_without_extends_but_traits.test
+++ /dev/null
@@ -1,14 +0,0 @@
---TEST--
-"parent" tag
---TEMPLATE--
-{% use 'foo.twig' %}
-
-{% block content %}
-    {{ parent() }}
-{% endblock %}
---TEMPLATE(foo.twig)--
-{% block content %}BAR{% endblock %}
---DATA--
-return array()
---EXPECT--
-BAR
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/template_instance.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/template_instance.test
deleted file mode 100644
index d1876a5..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/template_instance.test
+++ /dev/null
@@ -1,14 +0,0 @@
---TEST--
-"extends" tag accepts Twig_Template instance
---TEMPLATE--
-{% extends foo %}
-
-{% block content %}
-{{ parent() }}FOO
-{% endblock %}
---TEMPLATE(foo.twig)--
-{% block content %}BAR{% endblock %}
---DATA--
-return array('foo' => $twig->loadTemplate('foo.twig'))
---EXPECT--
-BARFOO
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/use.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/use.test
deleted file mode 100644
index 8f9ece7..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/use.test
+++ /dev/null
@@ -1,44 +0,0 @@
---TEST--
-"parent" function
---TEMPLATE--
-{% extends "parent.twig" %}
-
-{% use "use1.twig" %}
-{% use "use2.twig" %}
-
-{% block content_parent %}
-    {{ parent() }}
-{% endblock %}
-
-{% block content_use1 %}
-    {{ parent() }}
-{% endblock %}
-
-{% block content_use2 %}
-    {{ parent() }}
-{% endblock %}
-
-{% block content %}
-    {{ block('content_use1_only') }}
-    {{ block('content_use2_only') }}
-{% endblock %}
---TEMPLATE(parent.twig)--
-{% block content_parent 'content_parent' %}
-{% block content_use1 'content_parent' %}
-{% block content_use2 'content_parent' %}
-{% block content '' %}
---TEMPLATE(use1.twig)--
-{% block content_use1 'content_use1' %}
-{% block content_use2 'content_use1' %}
-{% block content_use1_only 'content_use1_only' %}
---TEMPLATE(use2.twig)--
-{% block content_use2 'content_use2' %}
-{% block content_use2_only 'content_use2_only' %}
---DATA--
-return array()
---EXPECT--
-    content_parent
-    content_use1
-    content_use2
-    content_use1_only
-    content_use2_only
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/macro/basic.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/macro/basic.test
deleted file mode 100644
index eef0c10..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/macro/basic.test
+++ /dev/null
@@ -1,17 +0,0 @@
---TEST--
-"macro" tag
---TEMPLATE--
-{% import _self as macros %}
-
-{{ macros.input('username') }}
-{{ macros.input('password', null, 'password', 1) }}
-
-{% macro input(name, value, type, size) %}
-  <input type="{{ type|default("text") }}" name="{{ name }}" value="{{ value|e|default('') }}" size="{{ size|default(20) }}">
-{% endmacro %}
---DATA--
-return array()
---EXPECT--
-  <input type="text" name="username" value="" size="20">
-
-  <input type="password" name="password" value="" size="1">
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/macro/endmacro_name.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/macro/endmacro_name.test
deleted file mode 100644
index ae6203b..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/macro/endmacro_name.test
+++ /dev/null
@@ -1,16 +0,0 @@
---TEST--
-"macro" tag supports name for endmacro
---TEMPLATE--
-{% import _self as macros %}
-
-{{ macros.foo() }}
-{{ macros.bar() }}
-
-{% macro foo() %}foo{% endmacro %}
-{% macro bar() %}bar{% endmacro bar %}
---DATA--
-return array()
---EXPECT--
-foo
-bar
-
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/macro/external.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/macro/external.test
deleted file mode 100644
index 5cd3dae..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/macro/external.test
+++ /dev/null
@@ -1,17 +0,0 @@
---TEST--
-"macro" tag
---TEMPLATE--
-{% import 'forms.twig' as forms %}
-
-{{ forms.input('username') }}
-{{ forms.input('password', null, 'password', 1) }}
---TEMPLATE(forms.twig)--
-{% macro input(name, value, type, size) %}
-  <input type="{{ type|default("text") }}" name="{{ name }}" value="{{ value|e|default('') }}" size="{{ size|default(20) }}">
-{% endmacro %}
---DATA--
-return array()
---EXPECT--
-  <input type="text" name="username" value="" size="20">
-
-  <input type="password" name="password" value="" size="1">
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/macro/from.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/macro/from.test
deleted file mode 100644
index 205f591..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/macro/from.test
+++ /dev/null
@@ -1,18 +0,0 @@
---TEST--
-"macro" tag
---TEMPLATE--
-{% from 'forms.twig' import foo %}
-{% from 'forms.twig' import foo as foobar, bar %}
-
-{{ foo('foo') }}
-{{ foobar('foo') }}
-{{ bar('foo') }}
---TEMPLATE(forms.twig)--
-{% macro foo(name) %}foo{{ name }}{% endmacro %}
-{% macro bar(name) %}bar{{ name }}{% endmacro %}
---DATA--
-return array()
---EXPECT--
-foofoo
-foofoo
-barfoo
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/macro/from_with_reserved_name.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/macro/from_with_reserved_name.test
deleted file mode 100644
index 6df4f5d..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/macro/from_with_reserved_name.test
+++ /dev/null
@@ -1,9 +0,0 @@
---TEST--
-"from" tag with reserved name
---TEMPLATE--
-{% from 'forms.twig' import templateName %}
---TEMPLATE(forms.twig)--
---DATA--
-return array()
---EXCEPTION--
-Twig_Error_Syntax: "templateName" cannot be an imported macro as it is a reserved keyword in "index.twig" at line 2
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/macro/global.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/macro/global.test
deleted file mode 100644
index 6b37176..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/macro/global.test
+++ /dev/null
@@ -1,14 +0,0 @@
---TEST--
-"macro" tag
---TEMPLATE--
-{% from 'forms.twig' import foo %}
-
-{{ foo('foo') }}
-{{ foo() }}
---TEMPLATE(forms.twig)--
-{% macro foo(name) %}{{ name|default('foo') }}{{ global }}{% endmacro %}
---DATA--
-return array()
---EXPECT--
-fooglobal
-fooglobal
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/macro/import_with_reserved_nam.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/macro/import_with_reserved_nam.test
deleted file mode 100644
index e5aa749..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/macro/import_with_reserved_nam.test
+++ /dev/null
@@ -1,11 +0,0 @@
---TEST--
-"from" tag with reserved name
---TEMPLATE--
-{% import 'forms.twig' as macros %}
-
-{{ macros.parent() }}
---TEMPLATE(forms.twig)--
---DATA--
-return array()
---EXCEPTION--
-Twig_Error_Syntax: "parent" cannot be called as macro as it is a reserved keyword in "index.twig" at line 4
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/macro/reserved_name.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/macro/reserved_name.test
deleted file mode 100644
index a2dde5a..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/macro/reserved_name.test
+++ /dev/null
@@ -1,10 +0,0 @@
---TEST--
-"macro" tag with reserved name
---TEMPLATE--
-{% macro parent(arg1, arg2) %}
-    parent
-{% endmacro %}
---DATA--
-return array()
---EXCEPTION--
-Twig_Error_Syntax: "parent" cannot be used as a macro name as it is a reserved keyword in "index.twig" at line 2
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/macro/self_import.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/macro/self_import.test
deleted file mode 100644
index 17756cb..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/macro/self_import.test
+++ /dev/null
@@ -1,17 +0,0 @@
---TEST--
-"macro" tag
---TEMPLATE--
-{% import _self as forms %}
-
-{{ forms.input('username') }}
-{{ forms.input('password', null, 'password', 1) }}
-
-{% macro input(name, value, type, size) %}
-  <input type="{{ type|default("text") }}" name="{{ name }}" value="{{ value|e|default('') }}" size="{{ size|default(20) }}">
-{% endmacro %}
---DATA--
-return array()
---EXPECT--
-  <input type="text" name="username" value="" size="20">
-
-  <input type="password" name="password" value="" size="1">
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/macro/special_chars.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/macro/special_chars.test
deleted file mode 100644
index 3721770..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/macro/special_chars.test
+++ /dev/null
@@ -1,14 +0,0 @@
---TEST--
-"§" as a macro name
---TEMPLATE--
-{% import _self as macros %}
-
-{{ macros.§('foo') }}
-
-{% macro §(foo) %}
-  §{{ foo }}§
-{% endmacro %}
---DATA--
-return array()
---EXPECT--
-§foo§
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/macro/super_globals.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/macro/super_globals.test
deleted file mode 100644
index 5679462..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/macro/super_globals.test
+++ /dev/null
@@ -1,14 +0,0 @@
---TEST--
-Super globals as macro arguments
---TEMPLATE--
-{% import _self as macros %}
-
-{{ macros.foo('foo') }}
-
-{% macro foo(GET) %}
-    {{ GET }}
-{% endmacro %}
---DATA--
-return array()
---EXPECT--
-foo
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/raw/basic.legacy.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/raw/basic.legacy.test
deleted file mode 100644
index 0445e85..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/raw/basic.legacy.test
+++ /dev/null
@@ -1,10 +0,0 @@
---TEST--
-"raw" tag
---TEMPLATE--
-{% raw %}
-{{ foo }}
-{% endraw %}
---DATA--
-return array()
---EXPECT--
-{{ foo }}
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/raw/mixed_usage_with_raw.legacy.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/raw/mixed_usage_with_raw.legacy.test
deleted file mode 100644
index 2fd9fb2..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/raw/mixed_usage_with_raw.legacy.test
+++ /dev/null
@@ -1,10 +0,0 @@
---TEST--
-"raw" tag
---TEMPLATE--
-{% raw %}
-{{ foo }}
-{% endverbatim %}
---DATA--
-return array()
---EXCEPTION--
-Twig_Error_Syntax: Unexpected end of file: Unclosed "raw" block in "index.twig" at line 2
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/raw/whitespace_control.legacy.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/raw/whitespace_control.legacy.test
deleted file mode 100644
index 352bb18..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/raw/whitespace_control.legacy.test
+++ /dev/null
@@ -1,56 +0,0 @@
---TEST--
-"raw" tag
---TEMPLATE--
-1***
-
-{%- raw %}
-    {{ 'bla' }}
-{% endraw %}
-
-1***
-2***
-
-{%- raw -%}
-    {{ 'bla' }}
-{% endraw %}
-
-2***
-3***
-
-{%- raw -%}
-    {{ 'bla' }}
-{% endraw -%}
-
-3***
-4***
-
-{%- raw -%}
-    {{ 'bla' }}
-{%- endraw %}
-
-4***
-5***
-
-{%- raw -%}
-    {{ 'bla' }}
-{%- endraw -%}
-
-5***
---DATA--
-return array()
---EXPECT--
-1***
-    {{ 'bla' }}
-
-
-1***
-2***{{ 'bla' }}
-
-
-2***
-3***{{ 'bla' }}
-3***
-4***{{ 'bla' }}
-
-4***
-5***{{ 'bla' }}5***
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/sandbox/not_valid1.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/sandbox/not_valid1.test
deleted file mode 100644
index 683c59a..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/sandbox/not_valid1.test
+++ /dev/null
@@ -1,11 +0,0 @@
---TEST--
-sandbox tag
---TEMPLATE--
-{%- sandbox %}
-    {%- include "foo.twig" %}
-    a
-{%- endsandbox %}
---TEMPLATE(foo.twig)--
-foo
---EXCEPTION--
-Twig_Error_Syntax: Only "include" tags are allowed within a "sandbox" section in "index.twig" at line 4
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/sandbox/not_valid2.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/sandbox/not_valid2.test
deleted file mode 100644
index 3dcfa88..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/sandbox/not_valid2.test
+++ /dev/null
@@ -1,14 +0,0 @@
---TEST--
-sandbox tag
---TEMPLATE--
-{%- sandbox %}
-    {%- include "foo.twig" %}
-
-    {% if 1 %}
-        {%- include "foo.twig" %}
-    {% endif %}
-{%- endsandbox %}
---TEMPLATE(foo.twig)--
-foo
---EXCEPTION--
-Twig_Error_Syntax: Only "include" tags are allowed within a "sandbox" section in "index.twig" at line 5
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/sandbox/simple.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/sandbox/simple.test
deleted file mode 100644
index de20f3d..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/sandbox/simple.test
+++ /dev/null
@@ -1,22 +0,0 @@
---TEST--
-sandbox tag
---TEMPLATE--
-{%- sandbox %}
-    {%- include "foo.twig" %}
-{%- endsandbox %}
-
-{%- sandbox %}
-    {%- include "foo.twig" %}
-    {%- include "foo.twig" %}
-{%- endsandbox %}
-
-{%- sandbox %}{% include "foo.twig" %}{% endsandbox %}
---TEMPLATE(foo.twig)--
-foo
---DATA--
-return array()
---EXPECT--
-foo
-foo
-foo
-foo
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/set/basic.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/set/basic.test
deleted file mode 100644
index a5a9f83..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/set/basic.test
+++ /dev/null
@@ -1,20 +0,0 @@
---TEST--
-"set" tag
---TEMPLATE--
-{% set foo = 'foo' %}
-{% set bar = 'foo<br />' %}
-
-{{ foo }}
-{{ bar }}
-
-{% set foo, bar = 'foo', 'bar' %}
-
-{{ foo }}{{ bar }}
---DATA--
-return array()
---EXPECT--
-foo
-foo&lt;br /&gt;
-
-
-foobar
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/set/capture-empty.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/set/capture-empty.test
deleted file mode 100644
index ec657f0..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/set/capture-empty.test
+++ /dev/null
@@ -1,9 +0,0 @@
---TEST--
-"set" tag block empty capture
---TEMPLATE--
-{% set foo %}{% endset %}
-
-{% if foo %}FAIL{% endif %}
---DATA--
-return array()
---EXPECT--
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/set/capture.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/set/capture.test
deleted file mode 100644
index f156a1a..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/set/capture.test
+++ /dev/null
@@ -1,10 +0,0 @@
---TEST--
-"set" tag block capture
---TEMPLATE--
-{% set foo %}f<br />o<br />o{% endset %}
-
-{{ foo }}
---DATA--
-return array()
---EXPECT--
-f<br />o<br />o
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/set/expression.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/set/expression.test
deleted file mode 100644
index 8ff434a..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/set/expression.test
+++ /dev/null
@@ -1,12 +0,0 @@
---TEST--
-"set" tag
---TEMPLATE--
-{% set foo, bar = 'foo' ~ 'bar', 'bar' ~ 'foo' %}
-
-{{ foo }}
-{{ bar }}
---DATA--
-return array()
---EXPECT--
-foobar
-barfoo
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/spaceless/simple.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/spaceless/simple.test
deleted file mode 100644
index dd06dec..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/spaceless/simple.test
+++ /dev/null
@@ -1,12 +0,0 @@
---TEST--
-"spaceless" tag removes whites between HTML tags
---TEMPLATE--
-{% spaceless %}
-
-    <div>   <div>   foo   </div>   </div>
-
-{% endspaceless %}
---DATA--
-return array()
---EXPECT--
-<div><div>   foo   </div></div>
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/special_chars.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/special_chars.test
deleted file mode 100644
index 789b4ba..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/special_chars.test
+++ /dev/null
@@ -1,8 +0,0 @@
---TEST--
-"§" custom tag
---TEMPLATE--
-{% § %}
---DATA--
-return array()
---EXPECT--
-§
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/trim_block.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/trim_block.test
deleted file mode 100644
index 1d2273f..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/trim_block.test
+++ /dev/null
@@ -1,74 +0,0 @@
---TEST--
-Whitespace trimming on tags.
---TEMPLATE--
-{{ 5 * '{#-'|length }}
-{{ '{{-'|length * 5 + '{%-'|length }}
-
-Trim on control tag:
-{% for i in range(1, 9) -%}
-	{{ i }}
-{%- endfor %}
-
-
-Trim on output tag:
-{% for i in range(1, 9) %}
-	{{- i -}}
-{% endfor %}
-
-
-Trim comments:
-      
-{#- Invisible -#}
-       
-After the comment.
-
-Trim leading space:
-{% if leading %}
-
-		{{- leading }}
-{% endif %}
-
-{%- if leading %}
-	{{- leading }}
-
-{%- endif %}
-
-
-Trim trailing space:
-{% if trailing -%}          
-	{{ trailing -}}
-
-{% endif -%}
-
-Combined:
-
-{%- if both -%}
-<ul>
-	<li>    {{- both -}}   </li>
-</ul>
-
-{%- endif -%}
-
-end
---DATA--
-return array('leading' => 'leading space', 'trailing' => 'trailing space', 'both' => 'both')
---EXPECT--
-15
-18
-
-Trim on control tag:
-123456789
-
-Trim on output tag:
-123456789
-
-Trim comments:After the comment.
-
-Trim leading space:
-leading space
-leading space
-
-Trim trailing space:
-trailing spaceCombined:<ul>
-	<li>both</li>
-</ul>end
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/use/aliases.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/use/aliases.test
deleted file mode 100644
index f887006..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/use/aliases.test
+++ /dev/null
@@ -1,12 +0,0 @@
---TEST--
-"use" tag
---TEMPLATE--
-{% use "blocks.twig" with content as foo %}
-
-{{ block('foo') }}
---TEMPLATE(blocks.twig)--
-{% block content 'foo' %}
---DATA--
-return array()
---EXPECT--
-foo
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/use/basic.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/use/basic.test
deleted file mode 100644
index 7364d76..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/use/basic.test
+++ /dev/null
@@ -1,12 +0,0 @@
---TEST--
-"use" tag
---TEMPLATE--
-{% use "blocks.twig" %}
-
-{{ block('content') }}
---TEMPLATE(blocks.twig)--
-{% block content 'foo' %}
---DATA--
-return array()
---EXPECT--
-foo
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/use/deep.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/use/deep.test
deleted file mode 100644
index b551a1e..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/use/deep.test
+++ /dev/null
@@ -1,22 +0,0 @@
---TEST--
-"use" tag
---TEMPLATE--
-{% use "foo.twig" %}
-
-{{ block('content') }}
-{{ block('foo') }}
-{{ block('bar') }}
---TEMPLATE(foo.twig)--
-{% use "bar.twig" %}
-
-{% block content 'foo' %}
-{% block foo 'foo' %}
---TEMPLATE(bar.twig)--
-{% block content 'bar' %}
-{% block bar 'bar' %}
---DATA--
-return array()
---EXPECT--
-foo
-foo
-bar
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/use/deep_empty.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/use/deep_empty.test
deleted file mode 100644
index 05cca68..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/use/deep_empty.test
+++ /dev/null
@@ -1,10 +0,0 @@
---TEST--
-"use" tag
---TEMPLATE--
-{% use "foo.twig" %}
---TEMPLATE(foo.twig)--
-{% use "bar.twig" %}
---TEMPLATE(bar.twig)--
---DATA--
-return array()
---EXPECT--
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/use/inheritance.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/use/inheritance.test
deleted file mode 100644
index 6368b08d..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/use/inheritance.test
+++ /dev/null
@@ -1,25 +0,0 @@
---TEST--
-"use" tag
---TEMPLATE--
-{% use "parent.twig" %}
-
-{{ block('container') }}
---TEMPLATE(parent.twig)--
-{% use "ancestor.twig" %}
-
-{% block sub_container %}
-    <div class="overriden_sub_container">overriden sub_container</div>
-{% endblock %}
---TEMPLATE(ancestor.twig)--
-{% block container %}
-    <div class="container">{{ block('sub_container') }}</div>
-{% endblock %}
-
-{% block sub_container %}
-    <div class="sub_container">sub_container</div>
-{% endblock %}
---DATA--
-return array()
---EXPECT--
-<div class="container">    <div class="overriden_sub_container">overriden sub_container</div>
-</div>
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/use/inheritance2.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/use/inheritance2.test
deleted file mode 100644
index 114e301..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/use/inheritance2.test
+++ /dev/null
@@ -1,24 +0,0 @@
---TEST--
-"use" tag
---TEMPLATE--
-{% use "ancestor.twig" %}
-{% use "parent.twig" %}
-
-{{ block('container') }}
---TEMPLATE(parent.twig)--
-{% block sub_container %}
-    <div class="overriden_sub_container">overriden sub_container</div>
-{% endblock %}
---TEMPLATE(ancestor.twig)--
-{% block container %}
-    <div class="container">{{ block('sub_container') }}</div>
-{% endblock %}
-
-{% block sub_container %}
-    <div class="sub_container">sub_container</div>
-{% endblock %}
---DATA--
-return array()
---EXPECT--
-<div class="container">    <div class="overriden_sub_container">overriden sub_container</div>
-</div>
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/use/multiple.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/use/multiple.test
deleted file mode 100644
index 198be0c..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/use/multiple.test
+++ /dev/null
@@ -1,21 +0,0 @@
---TEST--
-"use" tag
---TEMPLATE--
-{% use "foo.twig" %}
-{% use "bar.twig" %}
-
-{{ block('content') }}
-{{ block('foo') }}
-{{ block('bar') }}
---TEMPLATE(foo.twig)--
-{% block content 'foo' %}
-{% block foo 'foo' %}
---TEMPLATE(bar.twig)--
-{% block content 'bar' %}
-{% block bar 'bar' %}
---DATA--
-return array()
---EXPECT--
-bar
-foo
-bar
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/use/multiple_aliases.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/use/multiple_aliases.test
deleted file mode 100644
index 8de871a..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/use/multiple_aliases.test
+++ /dev/null
@@ -1,23 +0,0 @@
---TEST--
-"use" tag
---TEMPLATE--
-{% use "foo.twig" with content as foo_content %}
-{% use "bar.twig" %}
-
-{{ block('content') }}
-{{ block('foo') }}
-{{ block('bar') }}
-{{ block('foo_content') }}
---TEMPLATE(foo.twig)--
-{% block content 'foo' %}
-{% block foo 'foo' %}
---TEMPLATE(bar.twig)--
-{% block content 'bar' %}
-{% block bar 'bar' %}
---DATA--
-return array()
---EXPECT--
-bar
-foo
-bar
-foo
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/use/parent_block.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/use/parent_block.test
deleted file mode 100644
index 59db23d..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/use/parent_block.test
+++ /dev/null
@@ -1,24 +0,0 @@
---TEST--
-"use" tag
---TEMPLATE--
-{% use 'file2.html.twig' with foobar as base_base_foobar %}
-{% block foobar %}
-    {{- block('base_base_foobar') -}}
-    Content of block (second override)
-{% endblock foobar %}
---TEMPLATE(file2.html.twig)--
-{% use 'file1.html.twig' with foobar as base_foobar %}
-{% block foobar %}
-    {{- block('base_foobar') -}}
-    Content of block (first override)
-{% endblock foobar %}
---TEMPLATE(file1.html.twig)--
-{% block foobar -%}
-    Content of block
-{% endblock foobar %}
---DATA--
-return array()
---EXPECT--
-Content of block
-Content of block (first override)
-Content of block (second override)
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/use/parent_block2.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/use/parent_block2.test
deleted file mode 100644
index d3f302d..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/use/parent_block2.test
+++ /dev/null
@@ -1,24 +0,0 @@
---TEST--
-"use" tag
---TEMPLATE--
-{% use 'file2.html.twig'%}
-{% block foobar %}
-    {{- parent() -}}
-    Content of block (second override)
-{% endblock foobar %}
---TEMPLATE(file2.html.twig)--
-{% use 'file1.html.twig' %}
-{% block foobar %}
-    {{- parent() -}}
-    Content of block (first override)
-{% endblock foobar %}
---TEMPLATE(file1.html.twig)--
-{% block foobar -%}
-    Content of block
-{% endblock foobar %}
---DATA--
-return array()
---EXPECT--
-Content of block
-Content of block (first override)
-Content of block (second override)
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/use/parent_block3.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/use/parent_block3.test
deleted file mode 100644
index 95b55a4..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/use/parent_block3.test
+++ /dev/null
@@ -1,38 +0,0 @@
---TEST--
-"use" tag
---TEMPLATE--
-{% use 'file2.html.twig' %}
-{% use 'file1.html.twig' with foo %}
-{% block foo %}
-    {{- parent() -}}
-    Content of foo (second override)
-{% endblock foo %}
-{% block bar %}
-    {{- parent() -}}
-    Content of bar (second override)
-{% endblock bar %}
---TEMPLATE(file2.html.twig)--
-{% use 'file1.html.twig' %}
-{% block foo %}
-    {{- parent() -}}
-    Content of foo (first override)
-{% endblock foo %}
-{% block bar %}
-    {{- parent() -}}
-    Content of bar (first override)
-{% endblock bar %}
---TEMPLATE(file1.html.twig)--
-{% block foo -%}
-    Content of foo
-{% endblock foo %}
-{% block bar -%}
-    Content of bar
-{% endblock bar %}
---DATA--
-return array()
---EXPECT--
-Content of foo
-Content of foo (first override)
-Content of foo (second override)
-Content of bar
-Content of bar (second override)
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/verbatim/basic.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/verbatim/basic.test
deleted file mode 100644
index a95be55..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/verbatim/basic.test
+++ /dev/null
@@ -1,10 +0,0 @@
---TEST--
-"verbatim" tag
---TEMPLATE--
-{% verbatim %}
-{{ foo }}
-{% endverbatim %}
---DATA--
-return array()
---EXPECT--
-{{ foo }}
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/verbatim/mixed_usage_with_raw.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/verbatim/mixed_usage_with_raw.test
deleted file mode 100644
index 941dddc..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/verbatim/mixed_usage_with_raw.test
+++ /dev/null
@@ -1,10 +0,0 @@
---TEST--
-"verbatim" tag
---TEMPLATE--
-{% verbatim %}
-{{ foo }}
-{% endraw %}
---DATA--
-return array()
---EXCEPTION--
-Twig_Error_Syntax: Unexpected end of file: Unclosed "verbatim" block in "index.twig" at line 2
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/verbatim/whitespace_control.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/verbatim/whitespace_control.test
deleted file mode 100644
index eb61044..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/verbatim/whitespace_control.test
+++ /dev/null
@@ -1,56 +0,0 @@
---TEST--
-"verbatim" tag
---TEMPLATE--
-1***
-
-{%- verbatim %}
-    {{ 'bla' }}
-{% endverbatim %}
-
-1***
-2***
-
-{%- verbatim -%}
-    {{ 'bla' }}
-{% endverbatim %}
-
-2***
-3***
-
-{%- verbatim -%}
-    {{ 'bla' }}
-{% endverbatim -%}
-
-3***
-4***
-
-{%- verbatim -%}
-    {{ 'bla' }}
-{%- endverbatim %}
-
-4***
-5***
-
-{%- verbatim -%}
-    {{ 'bla' }}
-{%- endverbatim -%}
-
-5***
---DATA--
-return array()
---EXPECT--
-1***
-    {{ 'bla' }}
-
-
-1***
-2***{{ 'bla' }}
-
-
-2***
-3***{{ 'bla' }}
-3***
-4***{{ 'bla' }}
-
-4***
-5***{{ 'bla' }}5***
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tests/array.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tests/array.test
deleted file mode 100644
index 1429d37..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tests/array.test
+++ /dev/null
@@ -1,24 +0,0 @@
---TEST--
-array index test
---TEMPLATE--
-{% for key, value in days %}
-{{ key }}
-{% endfor %}
---DATA--
-return array('days' => array(
-    1  => array('money' => 9),
-    2  => array('money' => 21),
-    3  => array('money' => 38),
-    4  => array('money' => 6),
-    18 => array('money' => 6),
-    19 => array('money' => 3),
-    31 => array('money' => 11),
-));
---EXPECT--
-1
-2
-3
-4
-18
-19
-31
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tests/constant.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tests/constant.test
deleted file mode 100644
index 60218ac..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tests/constant.test
+++ /dev/null
@@ -1,14 +0,0 @@
---TEST--
-"const" test
---TEMPLATE--
-{{ 8 is constant('E_NOTICE') ? 'ok' : 'no' }}
-{{ 'bar' is constant('TwigTestFoo::BAR_NAME') ? 'ok' : 'no' }}
-{{ value is constant('TwigTestFoo::BAR_NAME') ? 'ok' : 'no' }}
-{{ 2 is constant('ARRAY_AS_PROPS', object) ? 'ok' : 'no' }}
---DATA--
-return array('value' => 'bar', 'object' => new ArrayObject(array('hi')));
---EXPECT--
-ok
-ok
-ok
-ok
\ No newline at end of file
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tests/defined.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tests/defined.test
deleted file mode 100644
index cbfe03d..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tests/defined.test
+++ /dev/null
@@ -1,108 +0,0 @@
---TEST--
-"defined" test
---TEMPLATE--
-{{ definedVar                     is     defined ? 'ok' : 'ko' }}
-{{ definedVar                     is not defined ? 'ko' : 'ok' }}
-{{ undefinedVar                   is     defined ? 'ko' : 'ok' }}
-{{ undefinedVar                   is not defined ? 'ok' : 'ko' }}
-{{ zeroVar                        is     defined ? 'ok' : 'ko' }}
-{{ nullVar                        is     defined ? 'ok' : 'ko' }}
-{{ nested.definedVar              is     defined ? 'ok' : 'ko' }}
-{{ nested['definedVar']           is     defined ? 'ok' : 'ko' }}
-{{ nested.definedVar              is not defined ? 'ko' : 'ok' }}
-{{ nested.undefinedVar            is     defined ? 'ko' : 'ok' }}
-{{ nested['undefinedVar']         is     defined ? 'ko' : 'ok' }}
-{{ nested.undefinedVar            is not defined ? 'ok' : 'ko' }}
-{{ nested.zeroVar                 is     defined ? 'ok' : 'ko' }}
-{{ nested.nullVar                 is     defined ? 'ok' : 'ko' }}
-{{ nested.definedArray.0          is     defined ? 'ok' : 'ko' }}
-{{ nested['definedArray'][0]      is     defined ? 'ok' : 'ko' }}
-{{ object.foo                     is     defined ? 'ok' : 'ko' }}
-{{ object.undefinedMethod         is     defined ? 'ko' : 'ok' }}
-{{ object.getFoo()                is     defined ? 'ok' : 'ko' }}
-{{ object.getFoo('a')             is     defined ? 'ok' : 'ko' }}
-{{ object.undefinedMethod()       is     defined ? 'ko' : 'ok' }}
-{{ object.undefinedMethod('a')    is     defined ? 'ko' : 'ok' }}
-{{ object.self.foo                is     defined ? 'ok' : 'ko' }}
-{{ object.self.undefinedMethod    is     defined ? 'ko' : 'ok' }}
-{{ object.undefinedMethod.self    is     defined ? 'ko' : 'ok' }}
---DATA--
-return array(
-    'definedVar' => 'defined',
-    'zeroVar'    => 0,
-    'nullVar'    => null,
-    'nested'      => array(
-        'definedVar'   => 'defined',
-        'zeroVar'      => 0,
-        'nullVar'      => null,
-        'definedArray' => array(0),
-    ),
-    'object' => new TwigTestFoo(),
-);
---EXPECT--
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
---DATA--
-return array(
-    'definedVar' => 'defined',
-    'zeroVar'    => 0,
-    'nullVar'    => null,
-    'nested'      => array(
-        'definedVar'   => 'defined',
-        'zeroVar'      => 0,
-        'nullVar'      => null,
-        'definedArray' => array(0),
-    ),
-    'object' => new TwigTestFoo(),
-);
---CONFIG--
-return array('strict_variables' => false)
---EXPECT--
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tests/empty.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tests/empty.test
deleted file mode 100644
index a776d03..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tests/empty.test
+++ /dev/null
@@ -1,45 +0,0 @@
---TEST--
-"empty" test
---TEMPLATE--
-{{ foo is empty ? 'ok' : 'ko' }}
-{{ bar is empty ? 'ok' : 'ko' }}
-{{ foobar is empty ? 'ok' : 'ko' }}
-{{ array is empty ? 'ok' : 'ko' }}
-{{ zero is empty ? 'ok' : 'ko' }}
-{{ string is empty ? 'ok' : 'ko' }}
-{{ countable_empty is empty ? 'ok' : 'ko' }}
-{{ countable_not_empty is empty ? 'ok' : 'ko' }}
-{{ markup_empty is empty ? 'ok' : 'ko' }}
-{{ markup_not_empty is empty ? 'ok' : 'ko' }}
---DATA--
-
-class CountableStub implements Countable
-{
-    private $items;
-
-    public function __construct(array $items)
-    {
-        $this->items = $items;
-    }
-
-    public function count()
-    {
-        return count($this->items);
-    }
-}
-return array(
-    'foo' => '', 'bar' => null, 'foobar' => false, 'array' => array(), 'zero' => 0, 'string' => '0',
-    'countable_empty' => new CountableStub(array()), 'countable_not_empty' => new CountableStub(array(1, 2)),
-    'markup_empty' => new Twig_Markup('', 'UTF-8'), 'markup_not_empty' => new Twig_Markup('test', 'UTF-8'),
-);
---EXPECT--
-ok
-ok
-ok
-ok
-ko
-ko
-ok
-ko
-ok
-ko
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tests/even.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tests/even.test
deleted file mode 100644
index 695b4c2..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tests/even.test
+++ /dev/null
@@ -1,14 +0,0 @@
---TEST--
-"even" test
---TEMPLATE--
-{{ 1 is even ? 'ko' : 'ok' }}
-{{ 2 is even ? 'ok' : 'ko' }}
-{{ 1 is not even ? 'ok' : 'ko' }}
-{{ 2 is not even ? 'ko' : 'ok' }}
---DATA--
-return array()
---EXPECT--
-ok
-ok
-ok
-ok
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tests/in.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tests/in.test
deleted file mode 100644
index 545f51f..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tests/in.test
+++ /dev/null
@@ -1,128 +0,0 @@
---TEST--
-Twig supports the in operator
---TEMPLATE--
-{% if bar in foo %}
-TRUE
-{% endif %}
-{% if not (bar in foo) %}
-{% else %}
-TRUE
-{% endif %}
-{% if bar not in foo %}
-{% else %}
-TRUE
-{% endif %}
-{% if 'a' in bar %}
-TRUE
-{% endif %}
-{% if 'c' not in bar %}
-TRUE
-{% endif %}
-{% if '' in bar %}
-TRUE
-{% endif %}
-{% if '' in '' %}
-TRUE
-{% endif %}
-{% if '0' not in '' %}
-TRUE
-{% endif %}
-{% if 'a' not in '0' %}
-TRUE
-{% endif %}
-{% if '0' in '0' %}
-TRUE
-{% endif %}
-
-{{ false in [0, 1] ? 'TRUE' : 'FALSE' }}
-{{ true in [0, 1] ? 'TRUE' : 'FALSE' }}
-{{ '0' in [0, 1] ? 'TRUE' : 'FALSE' }}
-{{ '' in [0, 1] ? 'TRUE' : 'FALSE' }}
-{{ 0 in ['', 1] ? 'TRUE' : 'FALSE' }}
-
-{{ '' in 'foo' ? 'TRUE' : 'FALSE' }}
-{{ 0 in 'foo' ? 'TRUE' : 'FALSE' }}
-{{ false in 'foo' ? 'TRUE' : 'FALSE' }}
-{{ false in '100' ? 'TRUE' : 'FALSE' }}
-{{ true in '100' ? 'TRUE' : 'FALSE' }}
-
-{{ [] in [true, false] ? 'TRUE' : 'FALSE' }}
-{{ [] in [true, ''] ? 'TRUE' : 'FALSE' }}
-{{ [] in [true, []] ? 'TRUE' : 'FALSE' }}
-
-{{ resource ? 'TRUE' : 'FALSE' }}
-{{ resource in 'foo'~resource ? 'TRUE' : 'FALSE' }}
-{{ object in 'stdClass' ? 'TRUE' : 'FALSE' }}
-{{ [] in 'Array' ? 'TRUE' : 'FALSE' }}
-{{ dir_object in 'foo'~dir_object ? 'TRUE' : 'FALSE' }}
-
-{{ ''~resource in resource ? 'TRUE' : 'FALSE' }}
-{{ 'stdClass' in object ? 'TRUE' : 'FALSE' }}
-{{ 'Array' in [] ? 'TRUE' : 'FALSE' }}
-{{ ''~dir_object in dir_object ? 'TRUE' : 'FALSE' }}
-
-{{ resource in [''~resource] ? 'TRUE' : 'FALSE' }}
-{{ resource in [resource + 1 - 1] ? 'TRUE' : 'FALSE' }}
-{{ dir_object in [''~dir_object] ? 'TRUE' : 'FALSE' }}
-
-{{ 5 in 125 ? 'TRUE' : 'FALSE' }}
-{{ 5 in '125' ? 'TRUE' : 'FALSE' }}
-{{ '5' in 125 ? 'TRUE' : 'FALSE' }}
-{{ '5' in '125' ? 'TRUE' : 'FALSE' }}
-
-{{ 5.5 in 125.5 ? 'TRUE' : 'FALSE' }}
-{{ 5.5 in '125.5' ? 'TRUE' : 'FALSE' }}
-{{ '5.5' in 125.5 ? 'TRUE' : 'FALSE' }}
---DATA--
-return array('bar' => 'bar', 'foo' => array('bar' => 'bar'), 'dir_object' => new SplFileInfo(dirname(__FILE__)), 'object' => new stdClass(), 'resource' => opendir(dirname(__FILE__)))
---EXPECT--
-TRUE
-TRUE
-TRUE
-TRUE
-TRUE
-TRUE
-TRUE
-TRUE
-TRUE
-TRUE
-
-TRUE
-TRUE
-TRUE
-TRUE
-TRUE
-
-TRUE
-FALSE
-FALSE
-FALSE
-FALSE
-
-TRUE
-FALSE
-TRUE
-
-TRUE
-FALSE
-FALSE
-FALSE
-FALSE
-
-FALSE
-FALSE
-FALSE
-FALSE
-
-FALSE
-FALSE
-FALSE
-
-FALSE
-TRUE
-FALSE
-TRUE
-
-FALSE
-TRUE
-FALSE
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tests/in_with_objects.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tests/in_with_objects.test
deleted file mode 100644
index 8e08061..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tests/in_with_objects.test
+++ /dev/null
@@ -1,19 +0,0 @@
---TEST--
-Twig supports the in operator when using objects
---TEMPLATE--
-{% if object in object_list %}
-TRUE
-{% endif %}
---DATA--
-$foo = new TwigTestFoo();
-$foo1 = new TwigTestFoo();
-
-$foo->position = $foo1;
-$foo1->position = $foo;
-
-return array(
-    'object'      => $foo,
-    'object_list' => array($foo1, $foo),
-);
---EXPECT--
-TRUE
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tests/iterable.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tests/iterable.test
deleted file mode 100644
index ec52550..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tests/iterable.test
+++ /dev/null
@@ -1,19 +0,0 @@
---TEST--
-"iterable" test
---TEMPLATE--
-{{ foo is iterable ? 'ok' : 'ko' }}
-{{ traversable is iterable ? 'ok' : 'ko' }}
-{{ obj is iterable ? 'ok' : 'ko' }}
-{{ val is iterable ? 'ok' : 'ko' }}
---DATA--
-return array(
-    'foo' => array(),
-    'traversable' => new ArrayIterator(array()),
-    'obj' => new stdClass(),
-    'val' => 'test',
-);
---EXPECT--
-ok
-ok
-ko
-ko
\ No newline at end of file
diff --git a/vendor/twig/twig/test/Twig/Tests/Fixtures/tests/odd.test b/vendor/twig/twig/test/Twig/Tests/Fixtures/tests/odd.test
deleted file mode 100644
index 1b8311e..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Fixtures/tests/odd.test
+++ /dev/null
@@ -1,10 +0,0 @@
---TEST--
-"odd" test
---TEMPLATE--
-{{ 1 is odd ? 'ok' : 'ko' }}
-{{ 2 is odd ? 'ko' : 'ok' }}
---DATA--
-return array()
---EXPECT--
-ok
-ok
\ No newline at end of file
diff --git a/vendor/twig/twig/test/Twig/Tests/IntegrationTest.php b/vendor/twig/twig/test/Twig/Tests/IntegrationTest.php
deleted file mode 100644
index 1908bcd..0000000
--- a/vendor/twig/twig/test/Twig/Tests/IntegrationTest.php
+++ /dev/null
@@ -1,229 +0,0 @@
-<?php
-
-/*
- * This file is part of Twig.
- *
- * (c) Fabien Potencier
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-// This function is defined to check that escaping strategies
-// like html works even if a function with the same name is defined.
-function html()
-{
-    return 'foo';
-}
-
-class Twig_Tests_IntegrationTest extends Twig_Test_IntegrationTestCase
-{
-    public function getExtensions()
-    {
-        $policy = new Twig_Sandbox_SecurityPolicy(array(), array(), array(), array(), array());
-
-        return array(
-            new Twig_Extension_Debug(),
-            new Twig_Extension_Sandbox($policy, false),
-            new Twig_Extension_StringLoader(),
-            new TwigTestExtension(),
-        );
-    }
-
-    public function getFixturesDir()
-    {
-        return dirname(__FILE__).'/Fixtures/';
-    }
-}
-
-function test_foo($value = 'foo')
-{
-    return $value;
-}
-
-class TwigTestFoo implements Iterator
-{
-    const BAR_NAME = 'bar';
-
-    public $position = 0;
-    public $array = array(1, 2);
-
-    public function bar($param1 = null, $param2 = null)
-    {
-        return 'bar'.($param1 ? '_'.$param1 : '').($param2 ? '-'.$param2 : '');
-    }
-
-    public function getFoo()
-    {
-        return 'foo';
-    }
-
-    public function getSelf()
-    {
-        return $this;
-    }
-
-    public function is()
-    {
-        return 'is';
-    }
-
-    public function in()
-    {
-        return 'in';
-    }
-
-    public function not()
-    {
-        return 'not';
-    }
-
-    public function strToLower($value)
-    {
-        return strtolower($value);
-    }
-
-    public function rewind()
-    {
-        $this->position = 0;
-    }
-
-    public function current()
-    {
-        return $this->array[$this->position];
-    }
-
-    public function key()
-    {
-        return 'a';
-    }
-
-    public function next()
-    {
-        ++$this->position;
-    }
-
-    public function valid()
-    {
-        return isset($this->array[$this->position]);
-    }
-}
-
-class TwigTestTokenParser_§ extends Twig_TokenParser
-{
-    public function parse(Twig_Token $token)
-    {
-        $this->parser->getStream()->expect(Twig_Token::BLOCK_END_TYPE);
-
-        return new Twig_Node_Print(new Twig_Node_Expression_Constant('§', -1), -1);
-    }
-
-    public function getTag()
-    {
-        return '§';
-    }
-}
-
-class TwigTestExtension extends Twig_Extension
-{
-    public function getTokenParsers()
-    {
-        return array(
-            new TwigTestTokenParser_§(),
-        );
-    }
-
-    public function getFilters()
-    {
-        return array(
-            new Twig_SimpleFilter('§', array($this, '§Filter')),
-            new Twig_SimpleFilter('escape_and_nl2br', array($this, 'escape_and_nl2br'), array('needs_environment' => true, 'is_safe' => array('html'))),
-            new Twig_SimpleFilter('nl2br', array($this, 'nl2br'), array('pre_escape' => 'html', 'is_safe' => array('html'))),
-            new Twig_SimpleFilter('escape_something', array($this, 'escape_something'), array('is_safe' => array('something'))),
-            new Twig_SimpleFilter('preserves_safety', array($this, 'preserves_safety'), array('preserves_safety' => array('html'))),
-            new Twig_SimpleFilter('*_path', array($this, 'dynamic_path')),
-            new Twig_SimpleFilter('*_foo_*_bar', array($this, 'dynamic_foo')),
-        );
-    }
-
-    public function getFunctions()
-    {
-        return array(
-            new Twig_SimpleFunction('§', array($this, '§Function')),
-            new Twig_SimpleFunction('safe_br', array($this, 'br'), array('is_safe' => array('html'))),
-            new Twig_SimpleFunction('unsafe_br', array($this, 'br')),
-            new Twig_SimpleFunction('*_path', array($this, 'dynamic_path')),
-            new Twig_SimpleFunction('*_foo_*_bar', array($this, 'dynamic_foo')),
-        );
-    }
-
-    public function getTests()
-    {
-        return array(
-            new Twig_SimpleTest('multi word', array($this, 'is_multi_word')),
-        );
-    }
-
-    public function §Filter($value)
-    {
-        return "§{$value}§";
-    }
-
-    public function §Function($value)
-    {
-        return "§{$value}§";
-    }
-
-    /**
-     * nl2br which also escapes, for testing escaper filters.
-     */
-    public function escape_and_nl2br($env, $value, $sep = '<br />')
-    {
-        return $this->nl2br(twig_escape_filter($env, $value, 'html'), $sep);
-    }
-
-    /**
-     * nl2br only, for testing filters with pre_escape.
-     */
-    public function nl2br($value, $sep = '<br />')
-    {
-        // not secure if $value contains html tags (not only entities)
-        // don't use
-        return str_replace("\n", "$sep\n", $value);
-    }
-
-    public function dynamic_path($element, $item)
-    {
-        return $element.'/'.$item;
-    }
-
-    public function dynamic_foo($foo, $bar, $item)
-    {
-        return $foo.'/'.$bar.'/'.$item;
-    }
-
-    public function escape_something($value)
-    {
-        return strtoupper($value);
-    }
-
-    public function preserves_safety($value)
-    {
-        return strtoupper($value);
-    }
-
-    public function br()
-    {
-        return '<br />';
-    }
-
-    public function is_multi_word($value)
-    {
-        return false !== strpos($value, ' ');
-    }
-
-    public function getName()
-    {
-        return 'integration_test';
-    }
-}
diff --git a/vendor/twig/twig/test/Twig/Tests/LegacyFixtures/test.legacy.test b/vendor/twig/twig/test/Twig/Tests/LegacyFixtures/test.legacy.test
deleted file mode 100644
index d9c1d50..0000000
--- a/vendor/twig/twig/test/Twig/Tests/LegacyFixtures/test.legacy.test
+++ /dev/null
@@ -1,8 +0,0 @@
---TEST--
-Old test classes usage
---TEMPLATE--
-{{ 'foo' is multi word ? 'yes' : 'no' }}
---DATA--
-return array()
---EXPECT--
-no
diff --git a/vendor/twig/twig/test/Twig/Tests/LegacyIntegrationTest.php b/vendor/twig/twig/test/Twig/Tests/LegacyIntegrationTest.php
deleted file mode 100644
index 055a617..0000000
--- a/vendor/twig/twig/test/Twig/Tests/LegacyIntegrationTest.php
+++ /dev/null
@@ -1,54 +0,0 @@
-<?php
-
-/*
- * This file is part of Twig.
- *
- * (c) Fabien Potencier
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-class Twig_Tests_LegacyIntegrationTest extends Twig_Test_IntegrationTestCase
-{
-    public function getExtensions()
-    {
-        return array(
-            new LegacyTwigTestExtension(),
-        );
-    }
-
-    public function getFixturesDir()
-    {
-        return dirname(__FILE__).'/LegacyFixtures/';
-    }
-
-    public function getTests($name, $legacyTests = false)
-    {
-        if (!$legacyTests) {
-            return array(array('not', '-', '', array(), '', array()));
-        }
-
-        return parent::getTests($name, true);
-    }
-}
-
-class LegacyTwigTestExtension extends Twig_Extension
-{
-    public function getTests()
-    {
-        return array(
-            'multi word' => new Twig_Test_Method($this, 'is_multi_word'),
-        );
-    }
-
-    public function is_multi_word($value)
-    {
-        return false !== strpos($value, ' ');
-    }
-
-    public function getName()
-    {
-        return 'legacy_integration_test';
-    }
-}
diff --git a/vendor/twig/twig/test/Twig/Tests/LexerTest.php b/vendor/twig/twig/test/Twig/Tests/LexerTest.php
deleted file mode 100644
index 4945d22..0000000
--- a/vendor/twig/twig/test/Twig/Tests/LexerTest.php
+++ /dev/null
@@ -1,300 +0,0 @@
-<?php
-
-/*
- * This file is part of Twig.
- *
- * (c) Fabien Potencier
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-class Twig_Tests_LexerTest extends PHPUnit_Framework_TestCase
-{
-    public function testNameLabelForTag()
-    {
-        $template = '{% § %}';
-
-        $lexer = new Twig_Lexer(new Twig_Environment($this->getMock('Twig_LoaderInterface')));
-        $stream = $lexer->tokenize($template);
-
-        $stream->expect(Twig_Token::BLOCK_START_TYPE);
-        $this->assertSame('§', $stream->expect(Twig_Token::NAME_TYPE)->getValue());
-    }
-
-    public function testNameLabelForFunction()
-    {
-        $template = '{{ §() }}';
-
-        $lexer = new Twig_Lexer(new Twig_Environment($this->getMock('Twig_LoaderInterface')));
-        $stream = $lexer->tokenize($template);
-
-        $stream->expect(Twig_Token::VAR_START_TYPE);
-        $this->assertSame('§', $stream->expect(Twig_Token::NAME_TYPE)->getValue());
-    }
-
-    public function testBracketsNesting()
-    {
-        $template = '{{ {"a":{"b":"c"}} }}';
-
-        $this->assertEquals(2, $this->countToken($template, Twig_Token::PUNCTUATION_TYPE, '{'));
-        $this->assertEquals(2, $this->countToken($template, Twig_Token::PUNCTUATION_TYPE, '}'));
-    }
-
-    protected function countToken($template, $type, $value = null)
-    {
-        $lexer = new Twig_Lexer(new Twig_Environment($this->getMock('Twig_LoaderInterface')));
-        $stream = $lexer->tokenize($template);
-
-        $count = 0;
-        while (!$stream->isEOF()) {
-            $token = $stream->next();
-            if ($type === $token->getType()) {
-                if (null === $value || $value === $token->getValue()) {
-                    ++$count;
-                }
-            }
-        }
-
-        return $count;
-    }
-
-    public function testLineDirective()
-    {
-        $template = "foo\n"
-            ."bar\n"
-            ."{% line 10 %}\n"
-            ."{{\n"
-            ."baz\n"
-            ."}}\n";
-
-        $lexer = new Twig_Lexer(new Twig_Environment($this->getMock('Twig_LoaderInterface')));
-        $stream = $lexer->tokenize($template);
-
-        // foo\nbar\n
-        $this->assertSame(1, $stream->expect(Twig_Token::TEXT_TYPE)->getLine());
-        // \n (after {% line %})
-        $this->assertSame(10, $stream->expect(Twig_Token::TEXT_TYPE)->getLine());
-        // {{
-        $this->assertSame(11, $stream->expect(Twig_Token::VAR_START_TYPE)->getLine());
-        // baz
-        $this->assertSame(12, $stream->expect(Twig_Token::NAME_TYPE)->getLine());
-    }
-
-    public function testLineDirectiveInline()
-    {
-        $template = "foo\n"
-            ."bar{% line 10 %}{{\n"
-            ."baz\n"
-            ."}}\n";
-
-        $lexer = new Twig_Lexer(new Twig_Environment($this->getMock('Twig_LoaderInterface')));
-        $stream = $lexer->tokenize($template);
-
-        // foo\nbar
-        $this->assertSame(1, $stream->expect(Twig_Token::TEXT_TYPE)->getLine());
-        // {{
-        $this->assertSame(10, $stream->expect(Twig_Token::VAR_START_TYPE)->getLine());
-        // baz
-        $this->assertSame(11, $stream->expect(Twig_Token::NAME_TYPE)->getLine());
-    }
-
-    public function testLongComments()
-    {
-        $template = '{# '.str_repeat('*', 100000).' #}';
-
-        $lexer = new Twig_Lexer(new Twig_Environment($this->getMock('Twig_LoaderInterface')));
-        $lexer->tokenize($template);
-
-        // should not throw an exception
-    }
-
-    public function testLongVerbatim()
-    {
-        $template = '{% verbatim %}'.str_repeat('*', 100000).'{% endverbatim %}';
-
-        $lexer = new Twig_Lexer(new Twig_Environment($this->getMock('Twig_LoaderInterface')));
-        $lexer->tokenize($template);
-
-        // should not throw an exception
-    }
-
-    public function testLongVar()
-    {
-        $template = '{{ '.str_repeat('x', 100000).' }}';
-
-        $lexer = new Twig_Lexer(new Twig_Environment($this->getMock('Twig_LoaderInterface')));
-        $lexer->tokenize($template);
-
-        // should not throw an exception
-    }
-
-    public function testLongBlock()
-    {
-        $template = '{% '.str_repeat('x', 100000).' %}';
-
-        $lexer = new Twig_Lexer(new Twig_Environment($this->getMock('Twig_LoaderInterface')));
-        $lexer->tokenize($template);
-
-        // should not throw an exception
-    }
-
-    public function testBigNumbers()
-    {
-        $template = '{{ 922337203685477580700 }}';
-
-        $lexer = new Twig_Lexer(new Twig_Environment($this->getMock('Twig_LoaderInterface')));
-        $stream = $lexer->tokenize($template);
-        $stream->next();
-        $node = $stream->next();
-        $this->assertEquals('922337203685477580700', $node->getValue());
-    }
-
-    public function testStringWithEscapedDelimiter()
-    {
-        $tests = array(
-            "{{ 'foo \' bar' }}" => 'foo \' bar',
-            '{{ "foo \" bar" }}' => 'foo " bar',
-        );
-        $lexer = new Twig_Lexer(new Twig_Environment($this->getMock('Twig_LoaderInterface')));
-        foreach ($tests as $template => $expected) {
-            $stream = $lexer->tokenize($template);
-            $stream->expect(Twig_Token::VAR_START_TYPE);
-            $stream->expect(Twig_Token::STRING_TYPE, $expected);
-        }
-    }
-
-    public function testStringWithInterpolation()
-    {
-        $template = 'foo {{ "bar #{ baz + 1 }" }}';
-
-        $lexer = new Twig_Lexer(new Twig_Environment($this->getMock('Twig_LoaderInterface')));
-        $stream = $lexer->tokenize($template);
-        $stream->expect(Twig_Token::TEXT_TYPE, 'foo ');
-        $stream->expect(Twig_Token::VAR_START_TYPE);
-        $stream->expect(Twig_Token::STRING_TYPE, 'bar ');
-        $stream->expect(Twig_Token::INTERPOLATION_START_TYPE);
-        $stream->expect(Twig_Token::NAME_TYPE, 'baz');
-        $stream->expect(Twig_Token::OPERATOR_TYPE, '+');
-        $stream->expect(Twig_Token::NUMBER_TYPE, '1');
-        $stream->expect(Twig_Token::INTERPOLATION_END_TYPE);
-        $stream->expect(Twig_Token::VAR_END_TYPE);
-    }
-
-    public function testStringWithEscapedInterpolation()
-    {
-        $template = '{{ "bar \#{baz+1}" }}';
-
-        $lexer = new Twig_Lexer(new Twig_Environment($this->getMock('Twig_LoaderInterface')));
-        $stream = $lexer->tokenize($template);
-        $stream->expect(Twig_Token::VAR_START_TYPE);
-        $stream->expect(Twig_Token::STRING_TYPE, 'bar #{baz+1}');
-        $stream->expect(Twig_Token::VAR_END_TYPE);
-    }
-
-    public function testStringWithHash()
-    {
-        $template = '{{ "bar # baz" }}';
-
-        $lexer = new Twig_Lexer(new Twig_Environment($this->getMock('Twig_LoaderInterface')));
-        $stream = $lexer->tokenize($template);
-        $stream->expect(Twig_Token::VAR_START_TYPE);
-        $stream->expect(Twig_Token::STRING_TYPE, 'bar # baz');
-        $stream->expect(Twig_Token::VAR_END_TYPE);
-    }
-
-    /**
-     * @expectedException Twig_Error_Syntax
-     * @expectedExceptionMessage Unclosed """
-     */
-    public function testStringWithUnterminatedInterpolation()
-    {
-        $template = '{{ "bar #{x" }}';
-
-        $lexer = new Twig_Lexer(new Twig_Environment($this->getMock('Twig_LoaderInterface')));
-        $lexer->tokenize($template);
-    }
-
-    public function testStringWithNestedInterpolations()
-    {
-        $template = '{{ "bar #{ "foo#{bar}" }" }}';
-
-        $lexer = new Twig_Lexer(new Twig_Environment($this->getMock('Twig_LoaderInterface')));
-        $stream = $lexer->tokenize($template);
-        $stream->expect(Twig_Token::VAR_START_TYPE);
-        $stream->expect(Twig_Token::STRING_TYPE, 'bar ');
-        $stream->expect(Twig_Token::INTERPOLATION_START_TYPE);
-        $stream->expect(Twig_Token::STRING_TYPE, 'foo');
-        $stream->expect(Twig_Token::INTERPOLATION_START_TYPE);
-        $stream->expect(Twig_Token::NAME_TYPE, 'bar');
-        $stream->expect(Twig_Token::INTERPOLATION_END_TYPE);
-        $stream->expect(Twig_Token::INTERPOLATION_END_TYPE);
-        $stream->expect(Twig_Token::VAR_END_TYPE);
-    }
-
-    public function testStringWithNestedInterpolationsInBlock()
-    {
-        $template = '{% foo "bar #{ "foo#{bar}" }" %}';
-
-        $lexer = new Twig_Lexer(new Twig_Environment($this->getMock('Twig_LoaderInterface')));
-        $stream = $lexer->tokenize($template);
-        $stream->expect(Twig_Token::BLOCK_START_TYPE);
-        $stream->expect(Twig_Token::NAME_TYPE, 'foo');
-        $stream->expect(Twig_Token::STRING_TYPE, 'bar ');
-        $stream->expect(Twig_Token::INTERPOLATION_START_TYPE);
-        $stream->expect(Twig_Token::STRING_TYPE, 'foo');
-        $stream->expect(Twig_Token::INTERPOLATION_START_TYPE);
-        $stream->expect(Twig_Token::NAME_TYPE, 'bar');
-        $stream->expect(Twig_Token::INTERPOLATION_END_TYPE);
-        $stream->expect(Twig_Token::INTERPOLATION_END_TYPE);
-        $stream->expect(Twig_Token::BLOCK_END_TYPE);
-    }
-
-    public function testOperatorEndingWithALetterAtTheEndOfALine()
-    {
-        $template = "{{ 1 and\n0}}";
-
-        $lexer = new Twig_Lexer(new Twig_Environment($this->getMock('Twig_LoaderInterface')));
-        $stream = $lexer->tokenize($template);
-        $stream->expect(Twig_Token::VAR_START_TYPE);
-        $stream->expect(Twig_Token::NUMBER_TYPE, 1);
-        $stream->expect(Twig_Token::OPERATOR_TYPE, 'and');
-    }
-
-    /**
-     * @expectedException Twig_Error_Syntax
-     * @expectedExceptionMessage Unclosed "variable" at line 3
-     */
-    public function testUnterminatedVariable()
-    {
-        $template = '
-
-{{
-
-bar
-
-
-';
-
-        $lexer = new Twig_Lexer(new Twig_Environment($this->getMock('Twig_LoaderInterface')));
-        $lexer->tokenize($template);
-    }
-
-    /**
-     * @expectedException Twig_Error_Syntax
-     * @expectedExceptionMessage Unclosed "block" at line 3
-     */
-    public function testUnterminatedBlock()
-    {
-        $template = '
-
-{%
-
-bar
-
-
-';
-
-        $lexer = new Twig_Lexer(new Twig_Environment($this->getMock('Twig_LoaderInterface')));
-        $lexer->tokenize($template);
-    }
-}
diff --git a/vendor/twig/twig/test/Twig/Tests/Loader/ArrayTest.php b/vendor/twig/twig/test/Twig/Tests/Loader/ArrayTest.php
deleted file mode 100644
index 1369a6b..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Loader/ArrayTest.php
+++ /dev/null
@@ -1,97 +0,0 @@
-<?php
-
-/*
- * This file is part of Twig.
- *
- * (c) Fabien Potencier
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-class Twig_Tests_Loader_ArrayTest extends PHPUnit_Framework_TestCase
-{
-    public function testGetSource()
-    {
-        $loader = new Twig_Loader_Array(array('foo' => 'bar'));
-
-        $this->assertEquals('bar', $loader->getSource('foo'));
-    }
-
-    /**
-     * @expectedException Twig_Error_Loader
-     */
-    public function testGetSourceWhenTemplateDoesNotExist()
-    {
-        $loader = new Twig_Loader_Array(array());
-
-        $loader->getSource('foo');
-    }
-
-    public function testGetCacheKey()
-    {
-        $loader = new Twig_Loader_Array(array('foo' => 'bar'));
-
-        $this->assertEquals('bar', $loader->getCacheKey('foo'));
-    }
-
-    /**
-     * @expectedException Twig_Error_Loader
-     */
-    public function testGetCacheKeyWhenTemplateDoesNotExist()
-    {
-        $loader = new Twig_Loader_Array(array());
-
-        $loader->getCacheKey('foo');
-    }
-
-    public function testSetTemplate()
-    {
-        $loader = new Twig_Loader_Array(array());
-        $loader->setTemplate('foo', 'bar');
-
-        $this->assertEquals('bar', $loader->getSource('foo'));
-    }
-
-    public function testIsFresh()
-    {
-        $loader = new Twig_Loader_Array(array('foo' => 'bar'));
-        $this->assertTrue($loader->isFresh('foo', time()));
-    }
-
-    /**
-     * @expectedException Twig_Error_Loader
-     */
-    public function testIsFreshWhenTemplateDoesNotExist()
-    {
-        $loader = new Twig_Loader_Array(array());
-
-        $loader->isFresh('foo', time());
-    }
-
-    public function testTemplateReference()
-    {
-        $name = new Twig_Test_Loader_TemplateReference('foo');
-        $loader = new Twig_Loader_Array(array('foo' => 'bar'));
-
-        $loader->getCacheKey($name);
-        $loader->getSource($name);
-        $loader->isFresh($name, time());
-        $loader->setTemplate($name, 'foobar');
-    }
-}
-
-class Twig_Test_Loader_TemplateReference
-{
-    private $name;
-
-    public function __construct($name)
-    {
-        $this->name = $name;
-    }
-
-    public function __toString()
-    {
-        return $this->name;
-    }
-}
diff --git a/vendor/twig/twig/test/Twig/Tests/Loader/ChainTest.php b/vendor/twig/twig/test/Twig/Tests/Loader/ChainTest.php
deleted file mode 100644
index 4fe0db9..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Loader/ChainTest.php
+++ /dev/null
@@ -1,79 +0,0 @@
-<?php
-
-/*
- * This file is part of Twig.
- *
- * (c) Fabien Potencier
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-class Twig_Tests_Loader_ChainTest extends PHPUnit_Framework_TestCase
-{
-    public function testGetSource()
-    {
-        $loader = new Twig_Loader_Chain(array(
-            new Twig_Loader_Array(array('foo' => 'bar')),
-            new Twig_Loader_Array(array('foo' => 'foobar', 'bar' => 'foo')),
-        ));
-
-        $this->assertEquals('bar', $loader->getSource('foo'));
-        $this->assertEquals('foo', $loader->getSource('bar'));
-    }
-
-    /**
-     * @expectedException Twig_Error_Loader
-     */
-    public function testGetSourceWhenTemplateDoesNotExist()
-    {
-        $loader = new Twig_Loader_Chain(array());
-
-        $loader->getSource('foo');
-    }
-
-    public function testGetCacheKey()
-    {
-        $loader = new Twig_Loader_Chain(array(
-            new Twig_Loader_Array(array('foo' => 'bar')),
-            new Twig_Loader_Array(array('foo' => 'foobar', 'bar' => 'foo')),
-        ));
-
-        $this->assertEquals('bar', $loader->getCacheKey('foo'));
-        $this->assertEquals('foo', $loader->getCacheKey('bar'));
-    }
-
-    /**
-     * @expectedException Twig_Error_Loader
-     */
-    public function testGetCacheKeyWhenTemplateDoesNotExist()
-    {
-        $loader = new Twig_Loader_Chain(array());
-
-        $loader->getCacheKey('foo');
-    }
-
-    public function testAddLoader()
-    {
-        $loader = new Twig_Loader_Chain();
-        $loader->addLoader(new Twig_Loader_Array(array('foo' => 'bar')));
-
-        $this->assertEquals('bar', $loader->getSource('foo'));
-    }
-
-    public function testExists()
-    {
-        $loader1 = $this->getMock('Twig_Loader_Array', array('exists', 'getSource'), array(), '', false);
-        $loader1->expects($this->once())->method('exists')->will($this->returnValue(false));
-        $loader1->expects($this->never())->method('getSource');
-
-        $loader2 = $this->getMock('Twig_LoaderInterface');
-        $loader2->expects($this->once())->method('getSource')->will($this->returnValue('content'));
-
-        $loader = new Twig_Loader_Chain();
-        $loader->addLoader($loader1);
-        $loader->addLoader($loader2);
-
-        $this->assertTrue($loader->exists('foo'));
-    }
-}
diff --git a/vendor/twig/twig/test/Twig/Tests/Loader/FilesystemTest.php b/vendor/twig/twig/test/Twig/Tests/Loader/FilesystemTest.php
deleted file mode 100644
index e07f374..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Loader/FilesystemTest.php
+++ /dev/null
@@ -1,175 +0,0 @@
-<?php
-
-/*
- * This file is part of Twig.
- *
- * (c) Fabien Potencier
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-class Twig_Tests_Loader_FilesystemTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @dataProvider getSecurityTests
-     */
-    public function testSecurity($template)
-    {
-        $loader = new Twig_Loader_Filesystem(array(dirname(__FILE__).'/../Fixtures'));
-
-        try {
-            $loader->getCacheKey($template);
-            $this->fail();
-        } catch (Twig_Error_Loader $e) {
-            $this->assertNotContains('Unable to find template', $e->getMessage());
-        }
-    }
-
-    public function getSecurityTests()
-    {
-        return array(
-            array("AutoloaderTest\0.php"),
-            array('..\\AutoloaderTest.php'),
-            array('..\\\\\\AutoloaderTest.php'),
-            array('../AutoloaderTest.php'),
-            array('..////AutoloaderTest.php'),
-            array('./../AutoloaderTest.php'),
-            array('.\\..\\AutoloaderTest.php'),
-            array('././././././../AutoloaderTest.php'),
-            array('.\\./.\\./.\\./../AutoloaderTest.php'),
-            array('foo/../../AutoloaderTest.php'),
-            array('foo\\..\\..\\AutoloaderTest.php'),
-            array('foo/../bar/../../AutoloaderTest.php'),
-            array('foo/bar/../../../AutoloaderTest.php'),
-            array('filters/../../AutoloaderTest.php'),
-            array('filters//..//..//AutoloaderTest.php'),
-            array('filters\\..\\..\\AutoloaderTest.php'),
-            array('filters\\\\..\\\\..\\\\AutoloaderTest.php'),
-            array('filters\\//../\\/\\..\\AutoloaderTest.php'),
-            array('/../AutoloaderTest.php'),
-        );
-    }
-
-    public function testPaths()
-    {
-        $basePath = dirname(__FILE__).'/Fixtures';
-
-        $loader = new Twig_Loader_Filesystem(array($basePath.'/normal', $basePath.'/normal_bis'));
-        $loader->setPaths(array($basePath.'/named', $basePath.'/named_bis'), 'named');
-        $loader->addPath($basePath.'/named_ter', 'named');
-        $loader->addPath($basePath.'/normal_ter');
-        $loader->prependPath($basePath.'/normal_final');
-        $loader->prependPath($basePath.'/named/../named_quater', 'named');
-        $loader->prependPath($basePath.'/named_final', 'named');
-
-        $this->assertEquals(array(
-            $basePath.'/normal_final',
-            $basePath.'/normal',
-            $basePath.'/normal_bis',
-            $basePath.'/normal_ter',
-        ), $loader->getPaths());
-        $this->assertEquals(array(
-            $basePath.'/named_final',
-            $basePath.'/named/../named_quater',
-            $basePath.'/named',
-            $basePath.'/named_bis',
-            $basePath.'/named_ter',
-        ), $loader->getPaths('named'));
-
-        $this->assertEquals(
-            realpath($basePath.'/named_quater/named_absolute.html'),
-            realpath($loader->getCacheKey('@named/named_absolute.html'))
-        );
-        $this->assertEquals("path (final)\n", $loader->getSource('index.html'));
-        $this->assertEquals("path (final)\n", $loader->getSource('@__main__/index.html'));
-        $this->assertEquals("named path (final)\n", $loader->getSource('@named/index.html'));
-    }
-
-    public function testEmptyConstructor()
-    {
-        $loader = new Twig_Loader_Filesystem();
-        $this->assertEquals(array(), $loader->getPaths());
-    }
-
-    public function testGetNamespaces()
-    {
-        $loader = new Twig_Loader_Filesystem(sys_get_temp_dir());
-        $this->assertEquals(array(Twig_Loader_Filesystem::MAIN_NAMESPACE), $loader->getNamespaces());
-
-        $loader->addPath(sys_get_temp_dir(), 'named');
-        $this->assertEquals(array(Twig_Loader_Filesystem::MAIN_NAMESPACE, 'named'), $loader->getNamespaces());
-    }
-
-    public function testFindTemplateExceptionNamespace()
-    {
-        $basePath = dirname(__FILE__).'/Fixtures';
-
-        $loader = new Twig_Loader_Filesystem(array($basePath.'/normal'));
-        $loader->addPath($basePath.'/named', 'named');
-
-        try {
-            $loader->getSource('@named/nowhere.html');
-        } catch (Exception $e) {
-            $this->assertInstanceof('Twig_Error_Loader', $e);
-            $this->assertContains('Unable to find template "@named/nowhere.html"', $e->getMessage());
-        }
-    }
-
-    public function testFindTemplateWithCache()
-    {
-        $basePath = dirname(__FILE__).'/Fixtures';
-
-        $loader = new Twig_Loader_Filesystem(array($basePath.'/normal'));
-        $loader->addPath($basePath.'/named', 'named');
-
-        // prime the cache for index.html in the named namespace
-        $namedSource = $loader->getSource('@named/index.html');
-        $this->assertEquals("named path\n", $namedSource);
-
-        // get index.html from the main namespace
-        $this->assertEquals("path\n", $loader->getSource('index.html'));
-    }
-
-    public function testLoadTemplateAndRenderBlockWithCache()
-    {
-        $loader = new Twig_Loader_Filesystem(array());
-        $loader->addPath(dirname(__FILE__).'/Fixtures/themes/theme2');
-        $loader->addPath(dirname(__FILE__).'/Fixtures/themes/theme1');
-        $loader->addPath(dirname(__FILE__).'/Fixtures/themes/theme1', 'default_theme');
-
-        $twig = new Twig_Environment($loader);
-
-        $template = $twig->loadTemplate('blocks.html.twig');
-        $this->assertSame('block from theme 1', $template->renderBlock('b1', array()));
-
-        $template = $twig->loadTemplate('blocks.html.twig');
-        $this->assertSame('block from theme 2', $template->renderBlock('b2', array()));
-    }
-
-    public function getArrayInheritanceTests()
-    {
-        return array(
-            'valid array inheritance' => array('array_inheritance_valid_parent.html.twig'),
-            'array inheritance with null first template' => array('array_inheritance_null_parent.html.twig'),
-            'array inheritance with empty first template' => array('array_inheritance_empty_parent.html.twig'),
-            'array inheritance with non-existent first template' => array('array_inheritance_nonexistent_parent.html.twig'),
-        );
-    }
-
-    /**
-     * @dataProvider getArrayInheritanceTests
-     *
-     * @param $templateName string Template name with array inheritance
-     */
-    public function testArrayInheritance($templateName)
-    {
-        $loader = new Twig_Loader_Filesystem(array());
-        $loader->addPath(dirname(__FILE__).'/Fixtures/inheritance');
-
-        $twig = new Twig_Environment($loader);
-
-        $template = $twig->loadTemplate($templateName);
-        $this->assertSame('VALID Child', $template->renderBlock('body', array()));
-    }
-}
diff --git a/vendor/twig/twig/test/Twig/Tests/Loader/Fixtures/inheritance/array_inheritance_empty_parent.html.twig b/vendor/twig/twig/test/Twig/Tests/Loader/Fixtures/inheritance/array_inheritance_empty_parent.html.twig
deleted file mode 100644
index 6977ebf..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Loader/Fixtures/inheritance/array_inheritance_empty_parent.html.twig
+++ /dev/null
@@ -1,3 +0,0 @@
-{% extends ['','parent.html.twig'] %}
-
-{% block body %}{{ parent() }} Child{% endblock %}
diff --git a/vendor/twig/twig/test/Twig/Tests/Loader/Fixtures/inheritance/array_inheritance_nonexistent_parent.html.twig b/vendor/twig/twig/test/Twig/Tests/Loader/Fixtures/inheritance/array_inheritance_nonexistent_parent.html.twig
deleted file mode 100644
index 5b50a8b..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Loader/Fixtures/inheritance/array_inheritance_nonexistent_parent.html.twig
+++ /dev/null
@@ -1,3 +0,0 @@
-{% extends ['nonexistent.html.twig','parent.html.twig'] %}
-
-{% block body %}{{ parent() }} Child{% endblock %}
diff --git a/vendor/twig/twig/test/Twig/Tests/Loader/Fixtures/inheritance/array_inheritance_null_parent.html.twig b/vendor/twig/twig/test/Twig/Tests/Loader/Fixtures/inheritance/array_inheritance_null_parent.html.twig
deleted file mode 100644
index a16b3ad..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Loader/Fixtures/inheritance/array_inheritance_null_parent.html.twig
+++ /dev/null
@@ -1,3 +0,0 @@
-{% extends [null,'parent.html.twig'] %}
-
-{% block body %}{{ parent() }} Child{% endblock %}
diff --git a/vendor/twig/twig/test/Twig/Tests/Loader/Fixtures/inheritance/array_inheritance_valid_parent.html.twig b/vendor/twig/twig/test/Twig/Tests/Loader/Fixtures/inheritance/array_inheritance_valid_parent.html.twig
deleted file mode 100644
index 4940dad..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Loader/Fixtures/inheritance/array_inheritance_valid_parent.html.twig
+++ /dev/null
@@ -1,3 +0,0 @@
-{% extends ['parent.html.twig','spare_parent.html.twig'] %}
-
-{% block body %}{{ parent() }} Child{% endblock %}
diff --git a/vendor/twig/twig/test/Twig/Tests/Loader/Fixtures/inheritance/parent.html.twig b/vendor/twig/twig/test/Twig/Tests/Loader/Fixtures/inheritance/parent.html.twig
deleted file mode 100644
index d594c0e..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Loader/Fixtures/inheritance/parent.html.twig
+++ /dev/null
@@ -1 +0,0 @@
-{% block body %}VALID{% endblock %}
diff --git a/vendor/twig/twig/test/Twig/Tests/Loader/Fixtures/inheritance/spare_parent.html.twig b/vendor/twig/twig/test/Twig/Tests/Loader/Fixtures/inheritance/spare_parent.html.twig
deleted file mode 100644
index 70b7360..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Loader/Fixtures/inheritance/spare_parent.html.twig
+++ /dev/null
@@ -1 +0,0 @@
-{% block body %}SPARE PARENT{% endblock %}
diff --git a/vendor/twig/twig/test/Twig/Tests/Loader/Fixtures/named/index.html b/vendor/twig/twig/test/Twig/Tests/Loader/Fixtures/named/index.html
deleted file mode 100644
index 9e5449c..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Loader/Fixtures/named/index.html
+++ /dev/null
@@ -1 +0,0 @@
-named path
diff --git a/vendor/twig/twig/test/Twig/Tests/Loader/Fixtures/named_bis/index.html b/vendor/twig/twig/test/Twig/Tests/Loader/Fixtures/named_bis/index.html
deleted file mode 100644
index d3a272b..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Loader/Fixtures/named_bis/index.html
+++ /dev/null
@@ -1 +0,0 @@
-named path (bis)
diff --git a/vendor/twig/twig/test/Twig/Tests/Loader/Fixtures/named_final/index.html b/vendor/twig/twig/test/Twig/Tests/Loader/Fixtures/named_final/index.html
deleted file mode 100644
index 9f05d15..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Loader/Fixtures/named_final/index.html
+++ /dev/null
@@ -1 +0,0 @@
-named path (final)
diff --git a/vendor/twig/twig/test/Twig/Tests/Loader/Fixtures/named_quater/named_absolute.html b/vendor/twig/twig/test/Twig/Tests/Loader/Fixtures/named_quater/named_absolute.html
deleted file mode 100644
index b1fb5f5..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Loader/Fixtures/named_quater/named_absolute.html
+++ /dev/null
@@ -1 +0,0 @@
-named path (quater)
diff --git a/vendor/twig/twig/test/Twig/Tests/Loader/Fixtures/named_ter/index.html b/vendor/twig/twig/test/Twig/Tests/Loader/Fixtures/named_ter/index.html
deleted file mode 100644
index 24fb68a..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Loader/Fixtures/named_ter/index.html
+++ /dev/null
@@ -1 +0,0 @@
-named path (ter)
diff --git a/vendor/twig/twig/test/Twig/Tests/Loader/Fixtures/normal/index.html b/vendor/twig/twig/test/Twig/Tests/Loader/Fixtures/normal/index.html
deleted file mode 100644
index e7a8fd4..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Loader/Fixtures/normal/index.html
+++ /dev/null
@@ -1 +0,0 @@
-path
diff --git a/vendor/twig/twig/test/Twig/Tests/Loader/Fixtures/normal_bis/index.html b/vendor/twig/twig/test/Twig/Tests/Loader/Fixtures/normal_bis/index.html
deleted file mode 100644
index bfa9160..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Loader/Fixtures/normal_bis/index.html
+++ /dev/null
@@ -1 +0,0 @@
-path (bis)
diff --git a/vendor/twig/twig/test/Twig/Tests/Loader/Fixtures/normal_final/index.html b/vendor/twig/twig/test/Twig/Tests/Loader/Fixtures/normal_final/index.html
deleted file mode 100644
index 73a089b..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Loader/Fixtures/normal_final/index.html
+++ /dev/null
@@ -1 +0,0 @@
-path (final)
diff --git a/vendor/twig/twig/test/Twig/Tests/Loader/Fixtures/normal_ter/index.html b/vendor/twig/twig/test/Twig/Tests/Loader/Fixtures/normal_ter/index.html
deleted file mode 100644
index b7ad97d..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Loader/Fixtures/normal_ter/index.html
+++ /dev/null
@@ -1 +0,0 @@
-path (ter)
diff --git a/vendor/twig/twig/test/Twig/Tests/Loader/Fixtures/themes/theme1/blocks.html.twig b/vendor/twig/twig/test/Twig/Tests/Loader/Fixtures/themes/theme1/blocks.html.twig
deleted file mode 100644
index dd0cbc2..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Loader/Fixtures/themes/theme1/blocks.html.twig
+++ /dev/null
@@ -1,3 +0,0 @@
-{% block b1 %}block from theme 1{% endblock %}
-
-{% block b2 %}block from theme 1{% endblock %}
diff --git a/vendor/twig/twig/test/Twig/Tests/Loader/Fixtures/themes/theme2/blocks.html.twig b/vendor/twig/twig/test/Twig/Tests/Loader/Fixtures/themes/theme2/blocks.html.twig
deleted file mode 100644
index 07cf9db..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Loader/Fixtures/themes/theme2/blocks.html.twig
+++ /dev/null
@@ -1,3 +0,0 @@
-{% use '@default_theme/blocks.html.twig' %}
-
-{% block b2 %}block from theme 2{% endblock %}
diff --git a/vendor/twig/twig/test/Twig/Tests/NativeExtensionTest.php b/vendor/twig/twig/test/Twig/Tests/NativeExtensionTest.php
deleted file mode 100644
index 942aff9..0000000
--- a/vendor/twig/twig/test/Twig/Tests/NativeExtensionTest.php
+++ /dev/null
@@ -1,33 +0,0 @@
-<?php
-
-/*
- * This file is part of Twig.
- *
- * (c) Fabien Potencier
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-class Twig_Tests_NativeExtensionTest extends PHPUnit_Framework_TestCase
-{
-    public function testGetProperties()
-    {
-        if (defined('HHVM_VERSION')) {
-            $this->markTestSkipped('Skip under HHVM as the behavior is not the same as plain PHP (which is an edge case anyway)');
-        }
-
-        $twig = new Twig_Environment(new Twig_Loader_Array(array('index' => '{{ d1.date }}{{ d2.date }}')), array(
-            'debug' => true,
-            'cache' => false,
-            'autoescape' => false,
-        ));
-
-        $d1 = new DateTime();
-        $d2 = new DateTime();
-        $output = $twig->render('index', compact('d1', 'd2'));
-
-        // If it fails, PHP will crash.
-        $this->assertEquals($output, $d1->date.$d2->date);
-    }
-}
diff --git a/vendor/twig/twig/test/Twig/Tests/Node/AutoEscapeTest.php b/vendor/twig/twig/test/Twig/Tests/Node/AutoEscapeTest.php
deleted file mode 100644
index 25d1602..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Node/AutoEscapeTest.php
+++ /dev/null
@@ -1,32 +0,0 @@
-<?php
-
-/*
- * This file is part of Twig.
- *
- * (c) Fabien Potencier
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-class Twig_Tests_Node_AutoEscapeTest extends Twig_Test_NodeTestCase
-{
-    public function testConstructor()
-    {
-        $body = new Twig_Node(array(new Twig_Node_Text('foo', 1)));
-        $node = new Twig_Node_AutoEscape(true, $body, 1);
-
-        $this->assertEquals($body, $node->getNode('body'));
-        $this->assertTrue($node->getAttribute('value'));
-    }
-
-    public function getTests()
-    {
-        $body = new Twig_Node(array(new Twig_Node_Text('foo', 1)));
-        $node = new Twig_Node_AutoEscape(true, $body, 1);
-
-        return array(
-            array($node, "// line 1\necho \"foo\";"),
-        );
-    }
-}
diff --git a/vendor/twig/twig/test/Twig/Tests/Node/BlockReferenceTest.php b/vendor/twig/twig/test/Twig/Tests/Node/BlockReferenceTest.php
deleted file mode 100644
index 84dac9b..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Node/BlockReferenceTest.php
+++ /dev/null
@@ -1,31 +0,0 @@
-<?php
-
-/*
- * This file is part of Twig.
- *
- * (c) Fabien Potencier
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-class Twig_Tests_Node_BlockReferenceTest extends Twig_Test_NodeTestCase
-{
-    public function testConstructor()
-    {
-        $node = new Twig_Node_BlockReference('foo', 1);
-
-        $this->assertEquals('foo', $node->getAttribute('name'));
-    }
-
-    public function getTests()
-    {
-        return array(
-            array(new Twig_Node_BlockReference('foo', 1), <<<EOF
-// line 1
-\$this->displayBlock('foo', \$context, \$blocks);
-EOF
-            ),
-        );
-    }
-}
diff --git a/vendor/twig/twig/test/Twig/Tests/Node/BlockTest.php b/vendor/twig/twig/test/Twig/Tests/Node/BlockTest.php
deleted file mode 100644
index e7246dc..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Node/BlockTest.php
+++ /dev/null
@@ -1,39 +0,0 @@
-<?php
-
-/*
- * This file is part of Twig.
- *
- * (c) Fabien Potencier
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-class Twig_Tests_Node_BlockTest extends Twig_Test_NodeTestCase
-{
-    public function testConstructor()
-    {
-        $body = new Twig_Node_Text('foo', 1);
-        $node = new Twig_Node_Block('foo', $body, 1);
-
-        $this->assertEquals($body, $node->getNode('body'));
-        $this->assertEquals('foo', $node->getAttribute('name'));
-    }
-
-    public function getTests()
-    {
-        $body = new Twig_Node_Text('foo', 1);
-        $node = new Twig_Node_Block('foo', $body, 1);
-
-        return array(
-            array($node, <<<EOF
-// line 1
-public function block_foo(\$context, array \$blocks = array())
-{
-    echo "foo";
-}
-EOF
-            ),
-        );
-    }
-}
diff --git a/vendor/twig/twig/test/Twig/Tests/Node/DoTest.php b/vendor/twig/twig/test/Twig/Tests/Node/DoTest.php
deleted file mode 100644
index aa33d1a..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Node/DoTest.php
+++ /dev/null
@@ -1,32 +0,0 @@
-<?php
-
-/*
- * This file is part of Twig.
- *
- * (c) Fabien Potencier
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-class Twig_Tests_Node_DoTest extends Twig_Test_NodeTestCase
-{
-    public function testConstructor()
-    {
-        $expr = new Twig_Node_Expression_Constant('foo', 1);
-        $node = new Twig_Node_Do($expr, 1);
-
-        $this->assertEquals($expr, $node->getNode('expr'));
-    }
-
-    public function getTests()
-    {
-        $tests = array();
-
-        $expr = new Twig_Node_Expression_Constant('foo', 1);
-        $node = new Twig_Node_Do($expr, 1);
-        $tests[] = array($node, "// line 1\n\"foo\";");
-
-        return $tests;
-    }
-}
diff --git a/vendor/twig/twig/test/Twig/Tests/Node/Expression/ArrayTest.php b/vendor/twig/twig/test/Twig/Tests/Node/Expression/ArrayTest.php
deleted file mode 100644
index 4f83ab1..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Node/Expression/ArrayTest.php
+++ /dev/null
@@ -1,37 +0,0 @@
-<?php
-
-/*
- * This file is part of Twig.
- *
- * (c) Fabien Potencier
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-class Twig_Tests_Node_Expression_ArrayTest extends Twig_Test_NodeTestCase
-{
-    public function testConstructor()
-    {
-        $elements = array(new Twig_Node_Expression_Constant('foo', 1), $foo = new Twig_Node_Expression_Constant('bar', 1));
-        $node = new Twig_Node_Expression_Array($elements, 1);
-
-        $this->assertEquals($foo, $node->getNode(1));
-    }
-
-    public function getTests()
-    {
-        $elements = array(
-            new Twig_Node_Expression_Constant('foo', 1),
-            new Twig_Node_Expression_Constant('bar', 1),
-
-            new Twig_Node_Expression_Constant('bar', 1),
-            new Twig_Node_Expression_Constant('foo', 1),
-        );
-        $node = new Twig_Node_Expression_Array($elements, 1);
-
-        return array(
-            array($node, 'array("foo" => "bar", "bar" => "foo")'),
-        );
-    }
-}
diff --git a/vendor/twig/twig/test/Twig/Tests/Node/Expression/AssignNameTest.php b/vendor/twig/twig/test/Twig/Tests/Node/Expression/AssignNameTest.php
deleted file mode 100644
index bf365de..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Node/Expression/AssignNameTest.php
+++ /dev/null
@@ -1,29 +0,0 @@
-<?php
-
-/*
- * This file is part of Twig.
- *
- * (c) Fabien Potencier
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-class Twig_Tests_Node_Expression_AssignNameTest extends Twig_Test_NodeTestCase
-{
-    public function testConstructor()
-    {
-        $node = new Twig_Node_Expression_AssignName('foo', 1);
-
-        $this->assertEquals('foo', $node->getAttribute('name'));
-    }
-
-    public function getTests()
-    {
-        $node = new Twig_Node_Expression_AssignName('foo', 1);
-
-        return array(
-            array($node, '$context["foo"]'),
-        );
-    }
-}
diff --git a/vendor/twig/twig/test/Twig/Tests/Node/Expression/Binary/AddTest.php b/vendor/twig/twig/test/Twig/Tests/Node/Expression/Binary/AddTest.php
deleted file mode 100644
index 02310a1..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Node/Expression/Binary/AddTest.php
+++ /dev/null
@@ -1,34 +0,0 @@
-<?php
-
-/*
- * This file is part of Twig.
- *
- * (c) Fabien Potencier
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-class Twig_Tests_Node_Expression_Binary_AddTest extends Twig_Test_NodeTestCase
-{
-    public function testConstructor()
-    {
-        $left = new Twig_Node_Expression_Constant(1, 1);
-        $right = new Twig_Node_Expression_Constant(2, 1);
-        $node = new Twig_Node_Expression_Binary_Add($left, $right, 1);
-
-        $this->assertEquals($left, $node->getNode('left'));
-        $this->assertEquals($right, $node->getNode('right'));
-    }
-
-    public function getTests()
-    {
-        $left = new Twig_Node_Expression_Constant(1, 1);
-        $right = new Twig_Node_Expression_Constant(2, 1);
-        $node = new Twig_Node_Expression_Binary_Add($left, $right, 1);
-
-        return array(
-            array($node, '(1 + 2)'),
-        );
-    }
-}
diff --git a/vendor/twig/twig/test/Twig/Tests/Node/Expression/Binary/AndTest.php b/vendor/twig/twig/test/Twig/Tests/Node/Expression/Binary/AndTest.php
deleted file mode 100644
index 2df3c8e..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Node/Expression/Binary/AndTest.php
+++ /dev/null
@@ -1,34 +0,0 @@
-<?php
-
-/*
- * This file is part of Twig.
- *
- * (c) Fabien Potencier
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-class Twig_Tests_Node_Expression_Binary_AndTest extends Twig_Test_NodeTestCase
-{
-    public function testConstructor()
-    {
-        $left = new Twig_Node_Expression_Constant(1, 1);
-        $right = new Twig_Node_Expression_Constant(2, 1);
-        $node = new Twig_Node_Expression_Binary_And($left, $right, 1);
-
-        $this->assertEquals($left, $node->getNode('left'));
-        $this->assertEquals($right, $node->getNode('right'));
-    }
-
-    public function getTests()
-    {
-        $left = new Twig_Node_Expression_Constant(1, 1);
-        $right = new Twig_Node_Expression_Constant(2, 1);
-        $node = new Twig_Node_Expression_Binary_And($left, $right, 1);
-
-        return array(
-            array($node, '(1 && 2)'),
-        );
-    }
-}
diff --git a/vendor/twig/twig/test/Twig/Tests/Node/Expression/Binary/ConcatTest.php b/vendor/twig/twig/test/Twig/Tests/Node/Expression/Binary/ConcatTest.php
deleted file mode 100644
index 759e482..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Node/Expression/Binary/ConcatTest.php
+++ /dev/null
@@ -1,34 +0,0 @@
-<?php
-
-/*
- * This file is part of Twig.
- *
- * (c) Fabien Potencier
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-class Twig_Tests_Node_Expression_Binary_ConcatTest extends Twig_Test_NodeTestCase
-{
-    public function testConstructor()
-    {
-        $left = new Twig_Node_Expression_Constant(1, 1);
-        $right = new Twig_Node_Expression_Constant(2, 1);
-        $node = new Twig_Node_Expression_Binary_Concat($left, $right, 1);
-
-        $this->assertEquals($left, $node->getNode('left'));
-        $this->assertEquals($right, $node->getNode('right'));
-    }
-
-    public function getTests()
-    {
-        $left = new Twig_Node_Expression_Constant(1, 1);
-        $right = new Twig_Node_Expression_Constant(2, 1);
-        $node = new Twig_Node_Expression_Binary_Concat($left, $right, 1);
-
-        return array(
-            array($node, '(1 . 2)'),
-        );
-    }
-}
diff --git a/vendor/twig/twig/test/Twig/Tests/Node/Expression/Binary/DivTest.php b/vendor/twig/twig/test/Twig/Tests/Node/Expression/Binary/DivTest.php
deleted file mode 100644
index 0e54b10..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Node/Expression/Binary/DivTest.php
+++ /dev/null
@@ -1,34 +0,0 @@
-<?php
-
-/*
- * This file is part of Twig.
- *
- * (c) Fabien Potencier
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-class Twig_Tests_Node_Expression_Binary_DivTest extends Twig_Test_NodeTestCase
-{
-    public function testConstructor()
-    {
-        $left = new Twig_Node_Expression_Constant(1, 1);
-        $right = new Twig_Node_Expression_Constant(2, 1);
-        $node = new Twig_Node_Expression_Binary_Div($left, $right, 1);
-
-        $this->assertEquals($left, $node->getNode('left'));
-        $this->assertEquals($right, $node->getNode('right'));
-    }
-
-    public function getTests()
-    {
-        $left = new Twig_Node_Expression_Constant(1, 1);
-        $right = new Twig_Node_Expression_Constant(2, 1);
-        $node = new Twig_Node_Expression_Binary_Div($left, $right, 1);
-
-        return array(
-            array($node, '(1 / 2)'),
-        );
-    }
-}
diff --git a/vendor/twig/twig/test/Twig/Tests/Node/Expression/Binary/FloorDivTest.php b/vendor/twig/twig/test/Twig/Tests/Node/Expression/Binary/FloorDivTest.php
deleted file mode 100644
index 602888f..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Node/Expression/Binary/FloorDivTest.php
+++ /dev/null
@@ -1,34 +0,0 @@
-<?php
-
-/*
- * This file is part of Twig.
- *
- * (c) Fabien Potencier
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-class Twig_Tests_Node_Expression_Binary_FloorDivTest extends Twig_Test_NodeTestCase
-{
-    public function testConstructor()
-    {
-        $left = new Twig_Node_Expression_Constant(1, 1);
-        $right = new Twig_Node_Expression_Constant(2, 1);
-        $node = new Twig_Node_Expression_Binary_FloorDiv($left, $right, 1);
-
-        $this->assertEquals($left, $node->getNode('left'));
-        $this->assertEquals($right, $node->getNode('right'));
-    }
-
-    public function getTests()
-    {
-        $left = new Twig_Node_Expression_Constant(1, 1);
-        $right = new Twig_Node_Expression_Constant(2, 1);
-        $node = new Twig_Node_Expression_Binary_FloorDiv($left, $right, 1);
-
-        return array(
-            array($node, 'intval(floor((1 / 2)))'),
-        );
-    }
-}
diff --git a/vendor/twig/twig/test/Twig/Tests/Node/Expression/Binary/ModTest.php b/vendor/twig/twig/test/Twig/Tests/Node/Expression/Binary/ModTest.php
deleted file mode 100644
index 4c663c7..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Node/Expression/Binary/ModTest.php
+++ /dev/null
@@ -1,34 +0,0 @@
-<?php
-
-/*
- * This file is part of Twig.
- *
- * (c) Fabien Potencier
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-class Twig_Tests_Node_Expression_Binary_ModTest extends Twig_Test_NodeTestCase
-{
-    public function testConstructor()
-    {
-        $left = new Twig_Node_Expression_Constant(1, 1);
-        $right = new Twig_Node_Expression_Constant(2, 1);
-        $node = new Twig_Node_Expression_Binary_Mod($left, $right, 1);
-
-        $this->assertEquals($left, $node->getNode('left'));
-        $this->assertEquals($right, $node->getNode('right'));
-    }
-
-    public function getTests()
-    {
-        $left = new Twig_Node_Expression_Constant(1, 1);
-        $right = new Twig_Node_Expression_Constant(2, 1);
-        $node = new Twig_Node_Expression_Binary_Mod($left, $right, 1);
-
-        return array(
-            array($node, '(1 % 2)'),
-        );
-    }
-}
diff --git a/vendor/twig/twig/test/Twig/Tests/Node/Expression/Binary/MulTest.php b/vendor/twig/twig/test/Twig/Tests/Node/Expression/Binary/MulTest.php
deleted file mode 100644
index e92c95e..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Node/Expression/Binary/MulTest.php
+++ /dev/null
@@ -1,34 +0,0 @@
-<?php
-
-/*
- * This file is part of Twig.
- *
- * (c) Fabien Potencier
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-class Twig_Tests_Node_Expression_Binary_MulTest extends Twig_Test_NodeTestCase
-{
-    public function testConstructor()
-    {
-        $left = new Twig_Node_Expression_Constant(1, 1);
-        $right = new Twig_Node_Expression_Constant(2, 1);
-        $node = new Twig_Node_Expression_Binary_Mul($left, $right, 1);
-
-        $this->assertEquals($left, $node->getNode('left'));
-        $this->assertEquals($right, $node->getNode('right'));
-    }
-
-    public function getTests()
-    {
-        $left = new Twig_Node_Expression_Constant(1, 1);
-        $right = new Twig_Node_Expression_Constant(2, 1);
-        $node = new Twig_Node_Expression_Binary_Mul($left, $right, 1);
-
-        return array(
-            array($node, '(1 * 2)'),
-        );
-    }
-}
diff --git a/vendor/twig/twig/test/Twig/Tests/Node/Expression/Binary/OrTest.php b/vendor/twig/twig/test/Twig/Tests/Node/Expression/Binary/OrTest.php
deleted file mode 100644
index ec37c83..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Node/Expression/Binary/OrTest.php
+++ /dev/null
@@ -1,34 +0,0 @@
-<?php
-
-/*
- * This file is part of Twig.
- *
- * (c) Fabien Potencier
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-class Twig_Tests_Node_Expression_Binary_OrTest extends Twig_Test_NodeTestCase
-{
-    public function testConstructor()
-    {
-        $left = new Twig_Node_Expression_Constant(1, 1);
-        $right = new Twig_Node_Expression_Constant(2, 1);
-        $node = new Twig_Node_Expression_Binary_Or($left, $right, 1);
-
-        $this->assertEquals($left, $node->getNode('left'));
-        $this->assertEquals($right, $node->getNode('right'));
-    }
-
-    public function getTests()
-    {
-        $left = new Twig_Node_Expression_Constant(1, 1);
-        $right = new Twig_Node_Expression_Constant(2, 1);
-        $node = new Twig_Node_Expression_Binary_Or($left, $right, 1);
-
-        return array(
-            array($node, '(1 || 2)'),
-        );
-    }
-}
diff --git a/vendor/twig/twig/test/Twig/Tests/Node/Expression/Binary/SubTest.php b/vendor/twig/twig/test/Twig/Tests/Node/Expression/Binary/SubTest.php
deleted file mode 100644
index 061cb27..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Node/Expression/Binary/SubTest.php
+++ /dev/null
@@ -1,34 +0,0 @@
-<?php
-
-/*
- * This file is part of Twig.
- *
- * (c) Fabien Potencier
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-class Twig_Tests_Node_Expression_Binary_SubTest extends Twig_Test_NodeTestCase
-{
-    public function testConstructor()
-    {
-        $left = new Twig_Node_Expression_Constant(1, 1);
-        $right = new Twig_Node_Expression_Constant(2, 1);
-        $node = new Twig_Node_Expression_Binary_Sub($left, $right, 1);
-
-        $this->assertEquals($left, $node->getNode('left'));
-        $this->assertEquals($right, $node->getNode('right'));
-    }
-
-    public function getTests()
-    {
-        $left = new Twig_Node_Expression_Constant(1, 1);
-        $right = new Twig_Node_Expression_Constant(2, 1);
-        $node = new Twig_Node_Expression_Binary_Sub($left, $right, 1);
-
-        return array(
-            array($node, '(1 - 2)'),
-        );
-    }
-}
diff --git a/vendor/twig/twig/test/Twig/Tests/Node/Expression/CallTest.php b/vendor/twig/twig/test/Twig/Tests/Node/Expression/CallTest.php
deleted file mode 100644
index 43afcd2..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Node/Expression/CallTest.php
+++ /dev/null
@@ -1,116 +0,0 @@
-<?php
-
-/*
- * This file is part of Twig.
- *
- * (c) Fabien Potencier
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-class Twig_Tests_Node_Expression_CallTest extends PHPUnit_Framework_TestCase
-{
-    public function testGetArguments()
-    {
-        $node = new Twig_Tests_Node_Expression_Call(array(), array('type' => 'function', 'name' => 'date'));
-        $this->assertEquals(array('U', null), $node->getArguments('date', array('format' => 'U', 'timestamp' => null)));
-    }
-
-    /**
-     * @expectedException        Twig_Error_Syntax
-     * @expectedExceptionMessage Positional arguments cannot be used after named arguments for function "date".
-     */
-    public function testGetArgumentsWhenPositionalArgumentsAfterNamedArguments()
-    {
-        $node = new Twig_Tests_Node_Expression_Call(array(), array('type' => 'function', 'name' => 'date'));
-        $node->getArguments('date', array('timestamp' => 123456, 'Y-m-d'));
-    }
-
-    /**
-     * @expectedException        Twig_Error_Syntax
-     * @expectedExceptionMessage Argument "format" is defined twice for function "date".
-     */
-    public function testGetArgumentsWhenArgumentIsDefinedTwice()
-    {
-        $node = new Twig_Tests_Node_Expression_Call(array(), array('type' => 'function', 'name' => 'date'));
-        $node->getArguments('date', array('Y-m-d', 'format' => 'U'));
-    }
-
-    /**
-     * @expectedException        Twig_Error_Syntax
-     * @expectedExceptionMessage Unknown argument "unknown" for function "date(format, timestamp)".
-     */
-    public function testGetArgumentsWithWrongNamedArgumentName()
-    {
-        $node = new Twig_Tests_Node_Expression_Call(array(), array('type' => 'function', 'name' => 'date'));
-        $node->getArguments('date', array('Y-m-d', 'timestamp' => null, 'unknown' => ''));
-    }
-
-    /**
-     * @expectedException        Twig_Error_Syntax
-     * @expectedExceptionMessage Unknown arguments "unknown1", "unknown2" for function "date(format, timestamp)".
-     */
-    public function testGetArgumentsWithWrongNamedArgumentNames()
-    {
-        $node = new Twig_Tests_Node_Expression_Call(array(), array('type' => 'function', 'name' => 'date'));
-        $node->getArguments('date', array('Y-m-d', 'timestamp' => null, 'unknown1' => '', 'unknown2' => ''));
-    }
-
-    /**
-     * @expectedException        Twig_Error_Syntax
-     * @expectedExceptionMessage Argument "case_sensitivity" could not be assigned for function "substr_compare(main_str, str, offset, length, case_sensitivity)" because it is mapped to an internal PHP function which cannot determine default value for optional argument "length".
-     */
-    public function testResolveArgumentsWithMissingValueForOptionalArgument()
-    {
-        if (defined('HHVM_VERSION')) {
-            $this->markTestSkipped('Skip under HHVM as the behavior is not the same as plain PHP (which is an edge case anyway)');
-        }
-
-        $node = new Twig_Tests_Node_Expression_Call(array(), array('type' => 'function', 'name' => 'substr_compare'));
-        $node->getArguments('substr_compare', array('abcd', 'bc', 'offset' => 1, 'case_sensitivity' => true));
-    }
-
-    public function testResolveArgumentsOnlyNecessaryArgumentsForCustomFunction()
-    {
-        $node = new Twig_Tests_Node_Expression_Call(array(), array('type' => 'function', 'name' => 'custom_function'));
-
-        $this->assertEquals(array('arg1'), $node->getArguments(array($this, 'customFunction'), array('arg1' => 'arg1')));
-    }
-
-    public function testGetArgumentsForStaticMethod()
-    {
-        $node = new Twig_Tests_Node_Expression_Call(array(), array('type' => 'function', 'name' => 'custom_static_function'));
-        $this->assertEquals(array('arg1'), $node->getArguments(__CLASS__.'::customStaticFunction', array('arg1' => 'arg1')));
-    }
-
-    /**
-     * @expectedException        LogicException
-     * @expectedExceptionMessage The last parameter of "Twig_Tests_Node_Expression_CallTest::customFunctionWithArbitraryArguments" for function "foo" must be an array with default value, eg. "array $arg = array()".
-     */
-    public function testResolveArgumentsWithMissingParameterForArbitraryArguments()
-    {
-        $node = new Twig_Tests_Node_Expression_Call(array(), array('type' => 'function', 'name' => 'foo', 'is_variadic' => true));
-        $node->getArguments(array($this, 'customFunctionWithArbitraryArguments'), array());
-    }
-
-    public static function customStaticFunction($arg1, $arg2 = 'default', $arg3 = array())
-    {
-    }
-
-    public function customFunction($arg1, $arg2 = 'default', $arg3 = array())
-    {
-    }
-
-    public function customFunctionWithArbitraryArguments()
-    {
-    }
-}
-
-class Twig_Tests_Node_Expression_Call extends Twig_Node_Expression_Call
-{
-    public function getArguments($callable, $arguments)
-    {
-        return parent::getArguments($callable, $arguments);
-    }
-}
diff --git a/vendor/twig/twig/test/Twig/Tests/Node/Expression/ConditionalTest.php b/vendor/twig/twig/test/Twig/Tests/Node/Expression/ConditionalTest.php
deleted file mode 100644
index a3e8bad..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Node/Expression/ConditionalTest.php
+++ /dev/null
@@ -1,38 +0,0 @@
-<?php
-
-/*
- * This file is part of Twig.
- *
- * (c) Fabien Potencier
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-class Twig_Tests_Node_Expression_ConditionalTest extends Twig_Test_NodeTestCase
-{
-    public function testConstructor()
-    {
-        $expr1 = new Twig_Node_Expression_Constant(1, 1);
-        $expr2 = new Twig_Node_Expression_Constant(2, 1);
-        $expr3 = new Twig_Node_Expression_Constant(3, 1);
-        $node = new Twig_Node_Expression_Conditional($expr1, $expr2, $expr3, 1);
-
-        $this->assertEquals($expr1, $node->getNode('expr1'));
-        $this->assertEquals($expr2, $node->getNode('expr2'));
-        $this->assertEquals($expr3, $node->getNode('expr3'));
-    }
-
-    public function getTests()
-    {
-        $tests = array();
-
-        $expr1 = new Twig_Node_Expression_Constant(1, 1);
-        $expr2 = new Twig_Node_Expression_Constant(2, 1);
-        $expr3 = new Twig_Node_Expression_Constant(3, 1);
-        $node = new Twig_Node_Expression_Conditional($expr1, $expr2, $expr3, 1);
-        $tests[] = array($node, '((1) ? (2) : (3))');
-
-        return $tests;
-    }
-}
diff --git a/vendor/twig/twig/test/Twig/Tests/Node/Expression/ConstantTest.php b/vendor/twig/twig/test/Twig/Tests/Node/Expression/ConstantTest.php
deleted file mode 100644
index 2ff9318..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Node/Expression/ConstantTest.php
+++ /dev/null
@@ -1,30 +0,0 @@
-<?php
-
-/*
- * This file is part of Twig.
- *
- * (c) Fabien Potencier
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-class Twig_Tests_Node_Expression_ConstantTest extends Twig_Test_NodeTestCase
-{
-    public function testConstructor()
-    {
-        $node = new Twig_Node_Expression_Constant('foo', 1);
-
-        $this->assertEquals('foo', $node->getAttribute('value'));
-    }
-
-    public function getTests()
-    {
-        $tests = array();
-
-        $node = new Twig_Node_Expression_Constant('foo', 1);
-        $tests[] = array($node, '"foo"');
-
-        return $tests;
-    }
-}
diff --git a/vendor/twig/twig/test/Twig/Tests/Node/Expression/FilterTest.php b/vendor/twig/twig/test/Twig/Tests/Node/Expression/FilterTest.php
deleted file mode 100644
index d5ffb24..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Node/Expression/FilterTest.php
+++ /dev/null
@@ -1,154 +0,0 @@
-<?php
-
-/*
- * This file is part of Twig.
- *
- * (c) Fabien Potencier
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-class Twig_Tests_Node_Expression_FilterTest extends Twig_Test_NodeTestCase
-{
-    public function testConstructor()
-    {
-        $expr = new Twig_Node_Expression_Constant('foo', 1);
-        $name = new Twig_Node_Expression_Constant('upper', 1);
-        $args = new Twig_Node();
-        $node = new Twig_Node_Expression_Filter($expr, $name, $args, 1);
-
-        $this->assertEquals($expr, $node->getNode('node'));
-        $this->assertEquals($name, $node->getNode('filter'));
-        $this->assertEquals($args, $node->getNode('arguments'));
-    }
-
-    public function getTests()
-    {
-        $environment = new Twig_Environment($this->getMock('Twig_LoaderInterface'));
-        $environment->addFilter(new Twig_SimpleFilter('bar', 'bar', array('needs_environment' => true)));
-        $environment->addFilter(new Twig_SimpleFilter('barbar', 'twig_tests_filter_barbar', array('needs_context' => true, 'is_variadic' => true)));
-
-        $tests = array();
-
-        $expr = new Twig_Node_Expression_Constant('foo', 1);
-        $node = $this->createFilter($expr, 'upper');
-        $node = $this->createFilter($node, 'number_format', array(new Twig_Node_Expression_Constant(2, 1), new Twig_Node_Expression_Constant('.', 1), new Twig_Node_Expression_Constant(',', 1)));
-
-        if (function_exists('mb_get_info')) {
-            $tests[] = array($node, 'twig_number_format_filter($this->env, twig_upper_filter($this->env, "foo"), 2, ".", ",")');
-        } else {
-            $tests[] = array($node, 'twig_number_format_filter($this->env, strtoupper("foo"), 2, ".", ",")');
-        }
-
-        // named arguments
-        $date = new Twig_Node_Expression_Constant(0, 1);
-        $node = $this->createFilter($date, 'date', array(
-            'timezone' => new Twig_Node_Expression_Constant('America/Chicago', 1),
-            'format' => new Twig_Node_Expression_Constant('d/m/Y H:i:s P', 1),
-        ));
-        $tests[] = array($node, 'twig_date_format_filter($this->env, 0, "d/m/Y H:i:s P", "America/Chicago")');
-
-        // skip an optional argument
-        $date = new Twig_Node_Expression_Constant(0, 1);
-        $node = $this->createFilter($date, 'date', array(
-            'timezone' => new Twig_Node_Expression_Constant('America/Chicago', 1),
-        ));
-        $tests[] = array($node, 'twig_date_format_filter($this->env, 0, null, "America/Chicago")');
-
-        // underscores vs camelCase for named arguments
-        $string = new Twig_Node_Expression_Constant('abc', 1);
-        $node = $this->createFilter($string, 'reverse', array(
-            'preserve_keys' => new Twig_Node_Expression_Constant(true, 1),
-        ));
-        $tests[] = array($node, 'twig_reverse_filter($this->env, "abc", true)');
-        $node = $this->createFilter($string, 'reverse', array(
-            'preserveKeys' => new Twig_Node_Expression_Constant(true, 1),
-        ));
-        $tests[] = array($node, 'twig_reverse_filter($this->env, "abc", true)');
-
-        // filter as an anonymous function
-        if (PHP_VERSION_ID >= 50300) {
-            $node = $this->createFilter(new Twig_Node_Expression_Constant('foo', 1), 'anonymous');
-            $tests[] = array($node, 'call_user_func_array($this->env->getFilter(\'anonymous\')->getCallable(), array("foo"))');
-        }
-
-        // needs environment
-        $node = $this->createFilter($string, 'bar');
-        $tests[] = array($node, 'bar($this->env, "abc")', $environment);
-
-        $node = $this->createFilter($string, 'bar', array(new Twig_Node_Expression_Constant('bar', 1)));
-        $tests[] = array($node, 'bar($this->env, "abc", "bar")', $environment);
-
-        // arbitrary named arguments
-        $node = $this->createFilter($string, 'barbar');
-        $tests[] = array($node, 'twig_tests_filter_barbar($context, "abc")', $environment);
-
-        $node = $this->createFilter($string, 'barbar', array('foo' => new Twig_Node_Expression_Constant('bar', 1)));
-        $tests[] = array($node, 'twig_tests_filter_barbar($context, "abc", null, null, array("foo" => "bar"))', $environment);
-
-        $node = $this->createFilter($string, 'barbar', array('arg2' => new Twig_Node_Expression_Constant('bar', 1)));
-        $tests[] = array($node, 'twig_tests_filter_barbar($context, "abc", null, "bar")', $environment);
-
-        $node = $this->createFilter($string, 'barbar', array(
-            new Twig_Node_Expression_Constant('1', 1),
-            new Twig_Node_Expression_Constant('2', 1),
-            new Twig_Node_Expression_Constant('3', 1),
-            'foo' => new Twig_Node_Expression_Constant('bar', 1),
-        ));
-        $tests[] = array($node, 'twig_tests_filter_barbar($context, "abc", "1", "2", array(0 => "3", "foo" => "bar"))', $environment);
-
-        return $tests;
-    }
-
-    /**
-     * @expectedException        Twig_Error_Syntax
-     * @expectedExceptionMessage Unknown argument "foobar" for filter "date(format, timezone)" at line 1.
-     */
-    public function testCompileWithWrongNamedArgumentName()
-    {
-        $date = new Twig_Node_Expression_Constant(0, 1);
-        $node = $this->createFilter($date, 'date', array(
-            'foobar' => new Twig_Node_Expression_Constant('America/Chicago', 1),
-        ));
-
-        $compiler = $this->getCompiler();
-        $compiler->compile($node);
-    }
-
-    /**
-     * @expectedException        Twig_Error_Syntax
-     * @expectedExceptionMessage Value for argument "from" is required for filter "replace".
-     */
-    public function testCompileWithMissingNamedArgument()
-    {
-        $value = new Twig_Node_Expression_Constant(0, 1);
-        $node = $this->createFilter($value, 'replace', array(
-            'to' => new Twig_Node_Expression_Constant('foo', 1),
-        ));
-
-        $compiler = $this->getCompiler();
-        $compiler->compile($node);
-    }
-
-    protected function createFilter($node, $name, array $arguments = array())
-    {
-        $name = new Twig_Node_Expression_Constant($name, 1);
-        $arguments = new Twig_Node($arguments);
-
-        return new Twig_Node_Expression_Filter($node, $name, $arguments, 1);
-    }
-
-    protected function getEnvironment()
-    {
-        if (PHP_VERSION_ID >= 50300) {
-            return include 'PHP53/FilterInclude.php';
-        }
-
-        return parent::getEnvironment();
-    }
-}
-
-function twig_tests_filter_barbar($context, $string, $arg1 = null, $arg2 = null, array $args = array())
-{
-}
diff --git a/vendor/twig/twig/test/Twig/Tests/Node/Expression/FunctionTest.php b/vendor/twig/twig/test/Twig/Tests/Node/Expression/FunctionTest.php
deleted file mode 100644
index de2e0f8..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Node/Expression/FunctionTest.php
+++ /dev/null
@@ -1,110 +0,0 @@
-<?php
-
-/*
- * This file is part of Twig.
- *
- * (c) Fabien Potencier
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-class Twig_Tests_Node_Expression_FunctionTest extends Twig_Test_NodeTestCase
-{
-    public function testConstructor()
-    {
-        $name = 'function';
-        $args = new Twig_Node();
-        $node = new Twig_Node_Expression_Function($name, $args, 1);
-
-        $this->assertEquals($name, $node->getAttribute('name'));
-        $this->assertEquals($args, $node->getNode('arguments'));
-    }
-
-    public function getTests()
-    {
-        $environment = new Twig_Environment($this->getMock('Twig_LoaderInterface'));
-        $environment->addFunction(new Twig_SimpleFunction('foo', 'foo', array()));
-        $environment->addFunction(new Twig_SimpleFunction('bar', 'bar', array('needs_environment' => true)));
-        $environment->addFunction(new Twig_SimpleFunction('foofoo', 'foofoo', array('needs_context' => true)));
-        $environment->addFunction(new Twig_SimpleFunction('foobar', 'foobar', array('needs_environment' => true, 'needs_context' => true)));
-        $environment->addFunction(new Twig_SimpleFunction('barbar', 'twig_tests_function_barbar', array('is_variadic' => true)));
-
-        $tests = array();
-
-        $node = $this->createFunction('foo');
-        $tests[] = array($node, 'foo()', $environment);
-
-        $node = $this->createFunction('foo', array(new Twig_Node_Expression_Constant('bar', 1), new Twig_Node_Expression_Constant('foobar', 1)));
-        $tests[] = array($node, 'foo("bar", "foobar")', $environment);
-
-        $node = $this->createFunction('bar');
-        $tests[] = array($node, 'bar($this->env)', $environment);
-
-        $node = $this->createFunction('bar', array(new Twig_Node_Expression_Constant('bar', 1)));
-        $tests[] = array($node, 'bar($this->env, "bar")', $environment);
-
-        $node = $this->createFunction('foofoo');
-        $tests[] = array($node, 'foofoo($context)', $environment);
-
-        $node = $this->createFunction('foofoo', array(new Twig_Node_Expression_Constant('bar', 1)));
-        $tests[] = array($node, 'foofoo($context, "bar")', $environment);
-
-        $node = $this->createFunction('foobar');
-        $tests[] = array($node, 'foobar($this->env, $context)', $environment);
-
-        $node = $this->createFunction('foobar', array(new Twig_Node_Expression_Constant('bar', 1)));
-        $tests[] = array($node, 'foobar($this->env, $context, "bar")', $environment);
-
-        // named arguments
-        $node = $this->createFunction('date', array(
-            'timezone' => new Twig_Node_Expression_Constant('America/Chicago', 1),
-            'date' => new Twig_Node_Expression_Constant(0, 1),
-        ));
-        $tests[] = array($node, 'twig_date_converter($this->env, 0, "America/Chicago")');
-
-        // arbitrary named arguments
-        $node = $this->createFunction('barbar');
-        $tests[] = array($node, 'twig_tests_function_barbar()', $environment);
-
-        $node = $this->createFunction('barbar', array('foo' => new Twig_Node_Expression_Constant('bar', 1)));
-        $tests[] = array($node, 'twig_tests_function_barbar(null, null, array("foo" => "bar"))', $environment);
-
-        $node = $this->createFunction('barbar', array('arg2' => new Twig_Node_Expression_Constant('bar', 1)));
-        $tests[] = array($node, 'twig_tests_function_barbar(null, "bar")', $environment);
-
-        $node = $this->createFunction('barbar', array(
-            new Twig_Node_Expression_Constant('1', 1),
-            new Twig_Node_Expression_Constant('2', 1),
-            new Twig_Node_Expression_Constant('3', 1),
-            'foo' => new Twig_Node_Expression_Constant('bar', 1),
-        ));
-        $tests[] = array($node, 'twig_tests_function_barbar("1", "2", array(0 => "3", "foo" => "bar"))', $environment);
-
-        // function as an anonymous function
-        if (PHP_VERSION_ID >= 50300) {
-            $node = $this->createFunction('anonymous', array(new Twig_Node_Expression_Constant('foo', 1)));
-            $tests[] = array($node, 'call_user_func_array($this->env->getFunction(\'anonymous\')->getCallable(), array("foo"))');
-        }
-
-        return $tests;
-    }
-
-    protected function createFunction($name, array $arguments = array())
-    {
-        return new Twig_Node_Expression_Function($name, new Twig_Node($arguments), 1);
-    }
-
-    protected function getEnvironment()
-    {
-        if (PHP_VERSION_ID >= 50300) {
-            return include 'PHP53/FunctionInclude.php';
-        }
-
-        return parent::getEnvironment();
-    }
-}
-
-function twig_tests_function_barbar($arg1 = null, $arg2 = null, array $args = array())
-{
-}
diff --git a/vendor/twig/twig/test/Twig/Tests/Node/Expression/GetAttrTest.php b/vendor/twig/twig/test/Twig/Tests/Node/Expression/GetAttrTest.php
deleted file mode 100644
index 2764478..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Node/Expression/GetAttrTest.php
+++ /dev/null
@@ -1,50 +0,0 @@
-<?php
-
-/*
- * This file is part of Twig.
- *
- * (c) Fabien Potencier
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-class Twig_Tests_Node_Expression_GetAttrTest extends Twig_Test_NodeTestCase
-{
-    public function testConstructor()
-    {
-        $expr = new Twig_Node_Expression_Name('foo', 1);
-        $attr = new Twig_Node_Expression_Constant('bar', 1);
-        $args = new Twig_Node_Expression_Array(array(), 1);
-        $args->addElement(new Twig_Node_Expression_Name('foo', 1));
-        $args->addElement(new Twig_Node_Expression_Constant('bar', 1));
-        $node = new Twig_Node_Expression_GetAttr($expr, $attr, $args, Twig_Template::ARRAY_CALL, 1);
-
-        $this->assertEquals($expr, $node->getNode('node'));
-        $this->assertEquals($attr, $node->getNode('attribute'));
-        $this->assertEquals($args, $node->getNode('arguments'));
-        $this->assertEquals(Twig_Template::ARRAY_CALL, $node->getAttribute('type'));
-    }
-
-    public function getTests()
-    {
-        $tests = array();
-
-        $expr = new Twig_Node_Expression_Name('foo', 1);
-        $attr = new Twig_Node_Expression_Constant('bar', 1);
-        $args = new Twig_Node_Expression_Array(array(), 1);
-        $node = new Twig_Node_Expression_GetAttr($expr, $attr, $args, Twig_Template::ANY_CALL, 1);
-        $tests[] = array($node, sprintf('%s%s, "bar", array())', $this->getAttributeGetter(), $this->getVariableGetter('foo', 1)));
-
-        $node = new Twig_Node_Expression_GetAttr($expr, $attr, $args, Twig_Template::ARRAY_CALL, 1);
-        $tests[] = array($node, sprintf('%s%s, "bar", array(), "array")', $this->getAttributeGetter(), $this->getVariableGetter('foo', 1)));
-
-        $args = new Twig_Node_Expression_Array(array(), 1);
-        $args->addElement(new Twig_Node_Expression_Name('foo', 1));
-        $args->addElement(new Twig_Node_Expression_Constant('bar', 1));
-        $node = new Twig_Node_Expression_GetAttr($expr, $attr, $args, Twig_Template::METHOD_CALL, 1);
-        $tests[] = array($node, sprintf('%s%s, "bar", array(0 => %s, 1 => "bar"), "method")', $this->getAttributeGetter(), $this->getVariableGetter('foo', 1), $this->getVariableGetter('foo')));
-
-        return $tests;
-    }
-}
diff --git a/vendor/twig/twig/test/Twig/Tests/Node/Expression/NameTest.php b/vendor/twig/twig/test/Twig/Tests/Node/Expression/NameTest.php
deleted file mode 100644
index 8cbb2f7..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Node/Expression/NameTest.php
+++ /dev/null
@@ -1,35 +0,0 @@
-<?php
-
-/*
- * This file is part of Twig.
- *
- * (c) Fabien Potencier
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-class Twig_Tests_Node_Expression_NameTest extends Twig_Test_NodeTestCase
-{
-    public function testConstructor()
-    {
-        $node = new Twig_Node_Expression_Name('foo', 1);
-
-        $this->assertEquals('foo', $node->getAttribute('name'));
-    }
-
-    public function getTests()
-    {
-        $node = new Twig_Node_Expression_Name('foo', 1);
-        $context = new Twig_Node_Expression_Name('_context', 1);
-
-        $env = new Twig_Environment($this->getMock('Twig_LoaderInterface'), array('strict_variables' => true));
-        $env1 = new Twig_Environment($this->getMock('Twig_LoaderInterface'), array('strict_variables' => false));
-
-        return array(
-            array($node, "// line 1\n".(PHP_VERSION_ID >= 50400 ? '(isset($context["foo"]) ? $context["foo"] : $this->getContext($context, "foo"))' : '$this->getContext($context, "foo")'), $env),
-            array($node, $this->getVariableGetter('foo', 1), $env1),
-            array($context, "// line 1\n\$context"),
-        );
-    }
-}
diff --git a/vendor/twig/twig/test/Twig/Tests/Node/Expression/PHP53/FilterInclude.php b/vendor/twig/twig/test/Twig/Tests/Node/Expression/PHP53/FilterInclude.php
deleted file mode 100644
index b5394bc..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Node/Expression/PHP53/FilterInclude.php
+++ /dev/null
@@ -1,6 +0,0 @@
-<?php
-
-$env = new Twig_Environment(new Twig_Loader_Array(array()));
-$env->addFilter(new Twig_SimpleFilter('anonymous', function () {}));
-
-return $env;
diff --git a/vendor/twig/twig/test/Twig/Tests/Node/Expression/PHP53/FunctionInclude.php b/vendor/twig/twig/test/Twig/Tests/Node/Expression/PHP53/FunctionInclude.php
deleted file mode 100644
index e8f68c7..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Node/Expression/PHP53/FunctionInclude.php
+++ /dev/null
@@ -1,6 +0,0 @@
-<?php
-
-$env = new Twig_Environment(new Twig_Loader_Array(array()));
-$env->addFunction(new Twig_SimpleFunction('anonymous', function () {}));
-
-return $env;
diff --git a/vendor/twig/twig/test/Twig/Tests/Node/Expression/PHP53/TestInclude.php b/vendor/twig/twig/test/Twig/Tests/Node/Expression/PHP53/TestInclude.php
deleted file mode 100644
index 9f818bc..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Node/Expression/PHP53/TestInclude.php
+++ /dev/null
@@ -1,6 +0,0 @@
-<?php
-
-$env = new Twig_Environment(new Twig_Loader_Array(array()));
-$env->addTest(new Twig_SimpleTest('anonymous', function () {}));
-
-return $env;
diff --git a/vendor/twig/twig/test/Twig/Tests/Node/Expression/ParentTest.php b/vendor/twig/twig/test/Twig/Tests/Node/Expression/ParentTest.php
deleted file mode 100644
index ab2bbe0..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Node/Expression/ParentTest.php
+++ /dev/null
@@ -1,28 +0,0 @@
-<?php
-
-/*
- * This file is part of Twig.
- *
- * (c) Fabien Potencier
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-class Twig_Tests_Node_Expression_ParentTest extends Twig_Test_NodeTestCase
-{
-    public function testConstructor()
-    {
-        $node = new Twig_Node_Expression_Parent('foo', 1);
-
-        $this->assertEquals('foo', $node->getAttribute('name'));
-    }
-
-    public function getTests()
-    {
-        $tests = array();
-        $tests[] = array(new Twig_Node_Expression_Parent('foo', 1), '$this->renderParentBlock("foo", $context, $blocks)');
-
-        return $tests;
-    }
-}
diff --git a/vendor/twig/twig/test/Twig/Tests/Node/Expression/TestTest.php b/vendor/twig/twig/test/Twig/Tests/Node/Expression/TestTest.php
deleted file mode 100644
index 55d3fcb..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Node/Expression/TestTest.php
+++ /dev/null
@@ -1,82 +0,0 @@
-<?php
-
-/*
- * This file is part of Twig.
- *
- * (c) Fabien Potencier
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-class Twig_Tests_Node_Expression_TestTest extends Twig_Test_NodeTestCase
-{
-    public function testConstructor()
-    {
-        $expr = new Twig_Node_Expression_Constant('foo', 1);
-        $name = new Twig_Node_Expression_Constant('null', 1);
-        $args = new Twig_Node();
-        $node = new Twig_Node_Expression_Test($expr, $name, $args, 1);
-
-        $this->assertEquals($expr, $node->getNode('node'));
-        $this->assertEquals($args, $node->getNode('arguments'));
-        $this->assertEquals($name, $node->getAttribute('name'));
-    }
-
-    public function getTests()
-    {
-        $environment = new Twig_Environment($this->getMock('Twig_LoaderInterface'));
-        $environment->addTest(new Twig_SimpleTest('barbar', 'twig_tests_test_barbar', array('is_variadic' => true, 'need_context' => true)));
-
-        $tests = array();
-
-        $expr = new Twig_Node_Expression_Constant('foo', 1);
-        $node = new Twig_Node_Expression_Test_Null($expr, 'null', new Twig_Node(array()), 1);
-        $tests[] = array($node, '(null === "foo")');
-
-        // test as an anonymous function
-        if (PHP_VERSION_ID >= 50300) {
-            $node = $this->createTest(new Twig_Node_Expression_Constant('foo', 1), 'anonymous', array(new Twig_Node_Expression_Constant('foo', 1)));
-            $tests[] = array($node, 'call_user_func_array($this->env->getTest(\'anonymous\')->getCallable(), array("foo", "foo"))');
-        }
-
-        // arbitrary named arguments
-        $string = new Twig_Node_Expression_Constant('abc', 1);
-        $node = $this->createTest($string, 'barbar');
-        $tests[] = array($node, 'twig_tests_test_barbar("abc")', $environment);
-
-        $node = $this->createTest($string, 'barbar', array('foo' => new Twig_Node_Expression_Constant('bar', 1)));
-        $tests[] = array($node, 'twig_tests_test_barbar("abc", null, null, array("foo" => "bar"))', $environment);
-
-        $node = $this->createTest($string, 'barbar', array('arg2' => new Twig_Node_Expression_Constant('bar', 1)));
-        $tests[] = array($node, 'twig_tests_test_barbar("abc", null, "bar")', $environment);
-
-        $node = $this->createTest($string, 'barbar', array(
-            new Twig_Node_Expression_Constant('1', 1),
-            new Twig_Node_Expression_Constant('2', 1),
-            new Twig_Node_Expression_Constant('3', 1),
-            'foo' => new Twig_Node_Expression_Constant('bar', 1),
-        ));
-        $tests[] = array($node, 'twig_tests_test_barbar("abc", "1", "2", array(0 => "3", "foo" => "bar"))', $environment);
-
-        return $tests;
-    }
-
-    protected function createTest($node, $name, array $arguments = array())
-    {
-        return new Twig_Node_Expression_Test($node, $name, new Twig_Node($arguments), 1);
-    }
-
-    protected function getEnvironment()
-    {
-        if (PHP_VERSION_ID >= 50300) {
-            return include 'PHP53/TestInclude.php';
-        }
-
-        return parent::getEnvironment();
-    }
-}
-
-function twig_tests_test_barbar($string, $arg1 = null, $arg2 = null, array $args = array())
-{
-}
diff --git a/vendor/twig/twig/test/Twig/Tests/Node/Expression/Unary/NegTest.php b/vendor/twig/twig/test/Twig/Tests/Node/Expression/Unary/NegTest.php
deleted file mode 100644
index b633371..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Node/Expression/Unary/NegTest.php
+++ /dev/null
@@ -1,32 +0,0 @@
-<?php
-
-/*
- * This file is part of Twig.
- *
- * (c) Fabien Potencier
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-class Twig_Tests_Node_Expression_Unary_NegTest extends Twig_Test_NodeTestCase
-{
-    public function testConstructor()
-    {
-        $expr = new Twig_Node_Expression_Constant(1, 1);
-        $node = new Twig_Node_Expression_Unary_Neg($expr, 1);
-
-        $this->assertEquals($expr, $node->getNode('node'));
-    }
-
-    public function getTests()
-    {
-        $node = new Twig_Node_Expression_Constant(1, 1);
-        $node = new Twig_Node_Expression_Unary_Neg($node, 1);
-
-        return array(
-            array($node, '-1'),
-            array(new Twig_Node_Expression_Unary_Neg($node, 1), '- -1'),
-        );
-    }
-}
diff --git a/vendor/twig/twig/test/Twig/Tests/Node/Expression/Unary/NotTest.php b/vendor/twig/twig/test/Twig/Tests/Node/Expression/Unary/NotTest.php
deleted file mode 100644
index d7c6f85..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Node/Expression/Unary/NotTest.php
+++ /dev/null
@@ -1,31 +0,0 @@
-<?php
-
-/*
- * This file is part of Twig.
- *
- * (c) Fabien Potencier
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-class Twig_Tests_Node_Expression_Unary_NotTest extends Twig_Test_NodeTestCase
-{
-    public function testConstructor()
-    {
-        $expr = new Twig_Node_Expression_Constant(1, 1);
-        $node = new Twig_Node_Expression_Unary_Not($expr, 1);
-
-        $this->assertEquals($expr, $node->getNode('node'));
-    }
-
-    public function getTests()
-    {
-        $node = new Twig_Node_Expression_Constant(1, 1);
-        $node = new Twig_Node_Expression_Unary_Not($node, 1);
-
-        return array(
-            array($node, '!1'),
-        );
-    }
-}
diff --git a/vendor/twig/twig/test/Twig/Tests/Node/Expression/Unary/PosTest.php b/vendor/twig/twig/test/Twig/Tests/Node/Expression/Unary/PosTest.php
deleted file mode 100644
index 057250f..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Node/Expression/Unary/PosTest.php
+++ /dev/null
@@ -1,31 +0,0 @@
-<?php
-
-/*
- * This file is part of Twig.
- *
- * (c) Fabien Potencier
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-class Twig_Tests_Node_Expression_Unary_PosTest extends Twig_Test_NodeTestCase
-{
-    public function testConstructor()
-    {
-        $expr = new Twig_Node_Expression_Constant(1, 1);
-        $node = new Twig_Node_Expression_Unary_Pos($expr, 1);
-
-        $this->assertEquals($expr, $node->getNode('node'));
-    }
-
-    public function getTests()
-    {
-        $node = new Twig_Node_Expression_Constant(1, 1);
-        $node = new Twig_Node_Expression_Unary_Pos($node, 1);
-
-        return array(
-            array($node, '+1'),
-        );
-    }
-}
diff --git a/vendor/twig/twig/test/Twig/Tests/Node/ForTest.php b/vendor/twig/twig/test/Twig/Tests/Node/ForTest.php
deleted file mode 100644
index b2c6fa4..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Node/ForTest.php
+++ /dev/null
@@ -1,191 +0,0 @@
-<?php
-
-/*
- * This file is part of Twig.
- *
- * (c) Fabien Potencier
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-class Twig_Tests_Node_ForTest extends Twig_Test_NodeTestCase
-{
-    public function testConstructor()
-    {
-        $keyTarget = new Twig_Node_Expression_AssignName('key', 1);
-        $valueTarget = new Twig_Node_Expression_AssignName('item', 1);
-        $seq = new Twig_Node_Expression_Name('items', 1);
-        $ifexpr = new Twig_Node_Expression_Constant(true, 1);
-        $body = new Twig_Node(array(new Twig_Node_Print(new Twig_Node_Expression_Name('foo', 1), 1)), array(), 1);
-        $else = null;
-        $node = new Twig_Node_For($keyTarget, $valueTarget, $seq, $ifexpr, $body, $else, 1);
-        $node->setAttribute('with_loop', false);
-
-        $this->assertEquals($keyTarget, $node->getNode('key_target'));
-        $this->assertEquals($valueTarget, $node->getNode('value_target'));
-        $this->assertEquals($seq, $node->getNode('seq'));
-        $this->assertTrue($node->getAttribute('ifexpr'));
-        $this->assertEquals('Twig_Node_If', get_class($node->getNode('body')));
-        $this->assertEquals($body, $node->getNode('body')->getNode('tests')->getNode(1)->getNode(0));
-        $this->assertNull($node->getNode('else'));
-
-        $else = new Twig_Node_Print(new Twig_Node_Expression_Name('foo', 1), 1);
-        $node = new Twig_Node_For($keyTarget, $valueTarget, $seq, $ifexpr, $body, $else, 1);
-        $node->setAttribute('with_loop', false);
-        $this->assertEquals($else, $node->getNode('else'));
-    }
-
-    public function getTests()
-    {
-        $tests = array();
-
-        $keyTarget = new Twig_Node_Expression_AssignName('key', 1);
-        $valueTarget = new Twig_Node_Expression_AssignName('item', 1);
-        $seq = new Twig_Node_Expression_Name('items', 1);
-        $ifexpr = null;
-        $body = new Twig_Node(array(new Twig_Node_Print(new Twig_Node_Expression_Name('foo', 1), 1)), array(), 1);
-        $else = null;
-        $node = new Twig_Node_For($keyTarget, $valueTarget, $seq, $ifexpr, $body, $else, 1);
-        $node->setAttribute('with_loop', false);
-
-        $tests[] = array($node, <<<EOF
-// line 1
-\$context['_parent'] = \$context;
-\$context['_seq'] = twig_ensure_traversable({$this->getVariableGetter('items')});
-foreach (\$context['_seq'] as \$context["key"] => \$context["item"]) {
-    echo {$this->getVariableGetter('foo')};
-}
-\$_parent = \$context['_parent'];
-unset(\$context['_seq'], \$context['_iterated'], \$context['key'], \$context['item'], \$context['_parent'], \$context['loop']);
-\$context = array_intersect_key(\$context, \$_parent) + \$_parent;
-EOF
-        );
-
-        $keyTarget = new Twig_Node_Expression_AssignName('k', 1);
-        $valueTarget = new Twig_Node_Expression_AssignName('v', 1);
-        $seq = new Twig_Node_Expression_Name('values', 1);
-        $ifexpr = null;
-        $body = new Twig_Node(array(new Twig_Node_Print(new Twig_Node_Expression_Name('foo', 1), 1)), array(), 1);
-        $else = null;
-        $node = new Twig_Node_For($keyTarget, $valueTarget, $seq, $ifexpr, $body, $else, 1);
-        $node->setAttribute('with_loop', true);
-
-        $tests[] = array($node, <<<EOF
-// line 1
-\$context['_parent'] = \$context;
-\$context['_seq'] = twig_ensure_traversable({$this->getVariableGetter('values')});
-\$context['loop'] = array(
-  'parent' => \$context['_parent'],
-  'index0' => 0,
-  'index'  => 1,
-  'first'  => true,
-);
-if (is_array(\$context['_seq']) || (is_object(\$context['_seq']) && \$context['_seq'] instanceof Countable)) {
-    \$length = count(\$context['_seq']);
-    \$context['loop']['revindex0'] = \$length - 1;
-    \$context['loop']['revindex'] = \$length;
-    \$context['loop']['length'] = \$length;
-    \$context['loop']['last'] = 1 === \$length;
-}
-foreach (\$context['_seq'] as \$context["k"] => \$context["v"]) {
-    echo {$this->getVariableGetter('foo')};
-    ++\$context['loop']['index0'];
-    ++\$context['loop']['index'];
-    \$context['loop']['first'] = false;
-    if (isset(\$context['loop']['length'])) {
-        --\$context['loop']['revindex0'];
-        --\$context['loop']['revindex'];
-        \$context['loop']['last'] = 0 === \$context['loop']['revindex0'];
-    }
-}
-\$_parent = \$context['_parent'];
-unset(\$context['_seq'], \$context['_iterated'], \$context['k'], \$context['v'], \$context['_parent'], \$context['loop']);
-\$context = array_intersect_key(\$context, \$_parent) + \$_parent;
-EOF
-        );
-
-        $keyTarget = new Twig_Node_Expression_AssignName('k', 1);
-        $valueTarget = new Twig_Node_Expression_AssignName('v', 1);
-        $seq = new Twig_Node_Expression_Name('values', 1);
-        $ifexpr = new Twig_Node_Expression_Constant(true, 1);
-        $body = new Twig_Node(array(new Twig_Node_Print(new Twig_Node_Expression_Name('foo', 1), 1)), array(), 1);
-        $else = null;
-        $node = new Twig_Node_For($keyTarget, $valueTarget, $seq, $ifexpr, $body, $else, 1);
-        $node->setAttribute('with_loop', true);
-
-        $tests[] = array($node, <<<EOF
-// line 1
-\$context['_parent'] = \$context;
-\$context['_seq'] = twig_ensure_traversable({$this->getVariableGetter('values')});
-\$context['loop'] = array(
-  'parent' => \$context['_parent'],
-  'index0' => 0,
-  'index'  => 1,
-  'first'  => true,
-);
-foreach (\$context['_seq'] as \$context["k"] => \$context["v"]) {
-    if (true) {
-        echo {$this->getVariableGetter('foo')};
-        ++\$context['loop']['index0'];
-        ++\$context['loop']['index'];
-        \$context['loop']['first'] = false;
-    }
-}
-\$_parent = \$context['_parent'];
-unset(\$context['_seq'], \$context['_iterated'], \$context['k'], \$context['v'], \$context['_parent'], \$context['loop']);
-\$context = array_intersect_key(\$context, \$_parent) + \$_parent;
-EOF
-        );
-
-        $keyTarget = new Twig_Node_Expression_AssignName('k', 1);
-        $valueTarget = new Twig_Node_Expression_AssignName('v', 1);
-        $seq = new Twig_Node_Expression_Name('values', 1);
-        $ifexpr = null;
-        $body = new Twig_Node(array(new Twig_Node_Print(new Twig_Node_Expression_Name('foo', 1), 1)), array(), 1);
-        $else = new Twig_Node_Print(new Twig_Node_Expression_Name('foo', 1), 1);
-        $node = new Twig_Node_For($keyTarget, $valueTarget, $seq, $ifexpr, $body, $else, 1);
-        $node->setAttribute('with_loop', true);
-
-        $tests[] = array($node, <<<EOF
-// line 1
-\$context['_parent'] = \$context;
-\$context['_seq'] = twig_ensure_traversable({$this->getVariableGetter('values')});
-\$context['_iterated'] = false;
-\$context['loop'] = array(
-  'parent' => \$context['_parent'],
-  'index0' => 0,
-  'index'  => 1,
-  'first'  => true,
-);
-if (is_array(\$context['_seq']) || (is_object(\$context['_seq']) && \$context['_seq'] instanceof Countable)) {
-    \$length = count(\$context['_seq']);
-    \$context['loop']['revindex0'] = \$length - 1;
-    \$context['loop']['revindex'] = \$length;
-    \$context['loop']['length'] = \$length;
-    \$context['loop']['last'] = 1 === \$length;
-}
-foreach (\$context['_seq'] as \$context["k"] => \$context["v"]) {
-    echo {$this->getVariableGetter('foo')};
-    \$context['_iterated'] = true;
-    ++\$context['loop']['index0'];
-    ++\$context['loop']['index'];
-    \$context['loop']['first'] = false;
-    if (isset(\$context['loop']['length'])) {
-        --\$context['loop']['revindex0'];
-        --\$context['loop']['revindex'];
-        \$context['loop']['last'] = 0 === \$context['loop']['revindex0'];
-    }
-}
-if (!\$context['_iterated']) {
-    echo {$this->getVariableGetter('foo')};
-}
-\$_parent = \$context['_parent'];
-unset(\$context['_seq'], \$context['_iterated'], \$context['k'], \$context['v'], \$context['_parent'], \$context['loop']);
-\$context = array_intersect_key(\$context, \$_parent) + \$_parent;
-EOF
-        );
-
-        return $tests;
-    }
-}
diff --git a/vendor/twig/twig/test/Twig/Tests/Node/IfTest.php b/vendor/twig/twig/test/Twig/Tests/Node/IfTest.php
deleted file mode 100644
index e47dd65..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Node/IfTest.php
+++ /dev/null
@@ -1,88 +0,0 @@
-<?php
-
-/*
- * This file is part of Twig.
- *
- * (c) Fabien Potencier
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-class Twig_Tests_Node_IfTest extends Twig_Test_NodeTestCase
-{
-    public function testConstructor()
-    {
-        $t = new Twig_Node(array(
-            new Twig_Node_Expression_Constant(true, 1),
-            new Twig_Node_Print(new Twig_Node_Expression_Name('foo', 1), 1),
-        ), array(), 1);
-        $else = null;
-        $node = new Twig_Node_If($t, $else, 1);
-
-        $this->assertEquals($t, $node->getNode('tests'));
-        $this->assertNull($node->getNode('else'));
-
-        $else = new Twig_Node_Print(new Twig_Node_Expression_Name('bar', 1), 1);
-        $node = new Twig_Node_If($t, $else, 1);
-        $this->assertEquals($else, $node->getNode('else'));
-    }
-
-    public function getTests()
-    {
-        $tests = array();
-
-        $t = new Twig_Node(array(
-            new Twig_Node_Expression_Constant(true, 1),
-            new Twig_Node_Print(new Twig_Node_Expression_Name('foo', 1), 1),
-        ), array(), 1);
-        $else = null;
-        $node = new Twig_Node_If($t, $else, 1);
-
-        $tests[] = array($node, <<<EOF
-// line 1
-if (true) {
-    echo {$this->getVariableGetter('foo')};
-}
-EOF
-        );
-
-        $t = new Twig_Node(array(
-            new Twig_Node_Expression_Constant(true, 1),
-            new Twig_Node_Print(new Twig_Node_Expression_Name('foo', 1), 1),
-            new Twig_Node_Expression_Constant(false, 1),
-            new Twig_Node_Print(new Twig_Node_Expression_Name('bar', 1), 1),
-        ), array(), 1);
-        $else = null;
-        $node = new Twig_Node_If($t, $else, 1);
-
-        $tests[] = array($node, <<<EOF
-// line 1
-if (true) {
-    echo {$this->getVariableGetter('foo')};
-} elseif (false) {
-    echo {$this->getVariableGetter('bar')};
-}
-EOF
-        );
-
-        $t = new Twig_Node(array(
-            new Twig_Node_Expression_Constant(true, 1),
-            new Twig_Node_Print(new Twig_Node_Expression_Name('foo', 1), 1),
-        ), array(), 1);
-        $else = new Twig_Node_Print(new Twig_Node_Expression_Name('bar', 1), 1);
-        $node = new Twig_Node_If($t, $else, 1);
-
-        $tests[] = array($node, <<<EOF
-// line 1
-if (true) {
-    echo {$this->getVariableGetter('foo')};
-} else {
-    echo {$this->getVariableGetter('bar')};
-}
-EOF
-        );
-
-        return $tests;
-    }
-}
diff --git a/vendor/twig/twig/test/Twig/Tests/Node/ImportTest.php b/vendor/twig/twig/test/Twig/Tests/Node/ImportTest.php
deleted file mode 100644
index 36525b2..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Node/ImportTest.php
+++ /dev/null
@@ -1,40 +0,0 @@
-<?php
-
-/*
- * This file is part of Twig.
- *
- * (c) Fabien Potencier
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-class Twig_Tests_Node_ImportTest extends Twig_Test_NodeTestCase
-{
-    public function testConstructor()
-    {
-        $macro = new Twig_Node_Expression_Constant('foo.twig', 1);
-        $var = new Twig_Node_Expression_AssignName('macro', 1);
-        $node = new Twig_Node_Import($macro, $var, 1);
-
-        $this->assertEquals($macro, $node->getNode('expr'));
-        $this->assertEquals($var, $node->getNode('var'));
-    }
-
-    public function getTests()
-    {
-        $tests = array();
-
-        $macro = new Twig_Node_Expression_Constant('foo.twig', 1);
-        $var = new Twig_Node_Expression_AssignName('macro', 1);
-        $node = new Twig_Node_Import($macro, $var, 1);
-
-        $tests[] = array($node, <<<EOF
-// line 1
-\$context["macro"] = \$this->loadTemplate("foo.twig", null, 1);
-EOF
-        );
-
-        return $tests;
-    }
-}
diff --git a/vendor/twig/twig/test/Twig/Tests/Node/IncludeTest.php b/vendor/twig/twig/test/Twig/Tests/Node/IncludeTest.php
deleted file mode 100644
index 6fe5c17..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Node/IncludeTest.php
+++ /dev/null
@@ -1,83 +0,0 @@
-<?php
-
-/*
- * This file is part of Twig.
- *
- * (c) Fabien Potencier
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-class Twig_Tests_Node_IncludeTest extends Twig_Test_NodeTestCase
-{
-    public function testConstructor()
-    {
-        $expr = new Twig_Node_Expression_Constant('foo.twig', 1);
-        $node = new Twig_Node_Include($expr, null, false, false, 1);
-
-        $this->assertNull($node->getNode('variables'));
-        $this->assertEquals($expr, $node->getNode('expr'));
-        $this->assertFalse($node->getAttribute('only'));
-
-        $vars = new Twig_Node_Expression_Array(array(new Twig_Node_Expression_Constant('foo', 1), new Twig_Node_Expression_Constant(true, 1)), 1);
-        $node = new Twig_Node_Include($expr, $vars, true, false, 1);
-        $this->assertEquals($vars, $node->getNode('variables'));
-        $this->assertTrue($node->getAttribute('only'));
-    }
-
-    public function getTests()
-    {
-        $tests = array();
-
-        $expr = new Twig_Node_Expression_Constant('foo.twig', 1);
-        $node = new Twig_Node_Include($expr, null, false, false, 1);
-        $tests[] = array($node, <<<EOF
-// line 1
-\$this->loadTemplate("foo.twig", null, 1)->display(\$context);
-EOF
-        );
-
-        $expr = new Twig_Node_Expression_Conditional(
-                        new Twig_Node_Expression_Constant(true, 1),
-                        new Twig_Node_Expression_Constant('foo', 1),
-                        new Twig_Node_Expression_Constant('foo', 1),
-                        0
-                    );
-        $node = new Twig_Node_Include($expr, null, false, false, 1);
-        $tests[] = array($node, <<<EOF
-// line 1
-\$this->loadTemplate(((true) ? ("foo") : ("foo")), null, 1)->display(\$context);
-EOF
-        );
-
-        $expr = new Twig_Node_Expression_Constant('foo.twig', 1);
-        $vars = new Twig_Node_Expression_Array(array(new Twig_Node_Expression_Constant('foo', 1), new Twig_Node_Expression_Constant(true, 1)), 1);
-        $node = new Twig_Node_Include($expr, $vars, false, false, 1);
-        $tests[] = array($node, <<<EOF
-// line 1
-\$this->loadTemplate("foo.twig", null, 1)->display(array_merge(\$context, array("foo" => true)));
-EOF
-        );
-
-        $node = new Twig_Node_Include($expr, $vars, true, false, 1);
-        $tests[] = array($node, <<<EOF
-// line 1
-\$this->loadTemplate("foo.twig", null, 1)->display(array("foo" => true));
-EOF
-        );
-
-        $node = new Twig_Node_Include($expr, $vars, true, true, 1);
-        $tests[] = array($node, <<<EOF
-// line 1
-try {
-    \$this->loadTemplate("foo.twig", null, 1)->display(array("foo" => true));
-} catch (Twig_Error_Loader \$e) {
-    // ignore missing template
-}
-EOF
-        );
-
-        return $tests;
-    }
-}
diff --git a/vendor/twig/twig/test/Twig/Tests/Node/MacroTest.php b/vendor/twig/twig/test/Twig/Tests/Node/MacroTest.php
deleted file mode 100644
index 901e57b..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Node/MacroTest.php
+++ /dev/null
@@ -1,70 +0,0 @@
-<?php
-
-/*
- * This file is part of Twig.
- *
- * (c) Fabien Potencier
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-class Twig_Tests_Node_MacroTest extends Twig_Test_NodeTestCase
-{
-    public function testConstructor()
-    {
-        $body = new Twig_Node_Text('foo', 1);
-        $arguments = new Twig_Node(array(new Twig_Node_Expression_Name('foo', 1)), array(), 1);
-        $node = new Twig_Node_Macro('foo', $body, $arguments, 1);
-
-        $this->assertEquals($body, $node->getNode('body'));
-        $this->assertEquals($arguments, $node->getNode('arguments'));
-        $this->assertEquals('foo', $node->getAttribute('name'));
-    }
-
-    public function getTests()
-    {
-        $body = new Twig_Node_Text('foo', 1);
-        $arguments = new Twig_Node(array(
-            'foo' => new Twig_Node_Expression_Constant(null, 1),
-            'bar' => new Twig_Node_Expression_Constant('Foo', 1),
-        ), array(), 1);
-        $node = new Twig_Node_Macro('foo', $body, $arguments, 1);
-
-        if (PHP_VERSION_ID >= 50600) {
-            $declaration = ', ...$__varargs__';
-            $varargs = '$__varargs__';
-        } else {
-            $declaration = '';
-            $varargs = 'func_num_args() > 2 ? array_slice(func_get_args(), 2) : array()';
-        }
-
-        return array(
-            array($node, <<<EOF
-// line 1
-public function getfoo(\$__foo__ = null, \$__bar__ = "Foo"$declaration)
-{
-    \$context = \$this->env->mergeGlobals(array(
-        "foo" => \$__foo__,
-        "bar" => \$__bar__,
-        "varargs" => $varargs,
-    ));
-
-    \$blocks = array();
-
-    ob_start();
-    try {
-        echo "foo";
-    } catch (Exception \$e) {
-        ob_end_clean();
-
-        throw \$e;
-    }
-
-    return ('' === \$tmp = ob_get_clean()) ? '' : new Twig_Markup(\$tmp, \$this->env->getCharset());
-}
-EOF
-            ),
-        );
-    }
-}
diff --git a/vendor/twig/twig/test/Twig/Tests/Node/ModuleTest.php b/vendor/twig/twig/test/Twig/Tests/Node/ModuleTest.php
deleted file mode 100644
index 19a4be9..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Node/ModuleTest.php
+++ /dev/null
@@ -1,183 +0,0 @@
-<?php
-
-/*
- * This file is part of Twig.
- *
- * (c) Fabien Potencier
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-class Twig_Tests_Node_ModuleTest extends Twig_Test_NodeTestCase
-{
-    public function testConstructor()
-    {
-        $body = new Twig_Node_Text('foo', 1);
-        $parent = new Twig_Node_Expression_Constant('layout.twig', 1);
-        $blocks = new Twig_Node();
-        $macros = new Twig_Node();
-        $traits = new Twig_Node();
-        $filename = 'foo.twig';
-        $node = new Twig_Node_Module($body, $parent, $blocks, $macros, $traits, new Twig_Node(array()), $filename);
-
-        $this->assertEquals($body, $node->getNode('body'));
-        $this->assertEquals($blocks, $node->getNode('blocks'));
-        $this->assertEquals($macros, $node->getNode('macros'));
-        $this->assertEquals($parent, $node->getNode('parent'));
-        $this->assertEquals($filename, $node->getAttribute('filename'));
-    }
-
-    public function getTests()
-    {
-        $twig = new Twig_Environment($this->getMock('Twig_LoaderInterface'));
-
-        $tests = array();
-
-        $body = new Twig_Node_Text('foo', 1);
-        $extends = null;
-        $blocks = new Twig_Node();
-        $macros = new Twig_Node();
-        $traits = new Twig_Node();
-        $filename = 'foo.twig';
-
-        $node = new Twig_Node_Module($body, $extends, $blocks, $macros, $traits, new Twig_Node(array()), $filename);
-        $tests[] = array($node, <<<EOF
-<?php
-
-/* foo.twig */
-class __TwigTemplate_5b706c6f89df245f237e41d0b65b7019c02dcd93c31ba69e652ac1da78575a09 extends Twig_Template
-{
-    public function __construct(Twig_Environment \$env)
-    {
-        parent::__construct(\$env);
-
-        \$this->parent = false;
-
-        \$this->blocks = array(
-        );
-    }
-
-    protected function doDisplay(array \$context, array \$blocks = array())
-    {
-        // line 1
-        echo "foo";
-    }
-
-    public function getTemplateName()
-    {
-        return "foo.twig";
-    }
-
-    public function getDebugInfo()
-    {
-        return array (  19 => 1,);
-    }
-}
-EOF
-        , $twig);
-
-        $import = new Twig_Node_Import(new Twig_Node_Expression_Constant('foo.twig', 1), new Twig_Node_Expression_AssignName('macro', 1), 2);
-
-        $body = new Twig_Node(array($import));
-        $extends = new Twig_Node_Expression_Constant('layout.twig', 1);
-
-        $node = new Twig_Node_Module($body, $extends, $blocks, $macros, $traits, new Twig_Node(array()), $filename);
-        $tests[] = array($node, <<<EOF
-<?php
-
-/* foo.twig */
-class __TwigTemplate_5b706c6f89df245f237e41d0b65b7019c02dcd93c31ba69e652ac1da78575a09 extends Twig_Template
-{
-    public function __construct(Twig_Environment \$env)
-    {
-        parent::__construct(\$env);
-
-        // line 1
-        \$this->parent = \$this->loadTemplate("layout.twig", "foo.twig", 1);
-        \$this->blocks = array(
-        );
-    }
-
-    protected function doGetParent(array \$context)
-    {
-        return "layout.twig";
-    }
-
-    protected function doDisplay(array \$context, array \$blocks = array())
-    {
-        // line 2
-        \$context["macro"] = \$this->loadTemplate("foo.twig", "foo.twig", 2);
-        // line 1
-        \$this->parent->display(\$context, array_merge(\$this->blocks, \$blocks));
-    }
-
-    public function getTemplateName()
-    {
-        return "foo.twig";
-    }
-
-    public function isTraitable()
-    {
-        return false;
-    }
-
-    public function getDebugInfo()
-    {
-        return array (  26 => 1,  24 => 2,  11 => 1,);
-    }
-}
-EOF
-        , $twig);
-
-        $set = new Twig_Node_Set(false, new Twig_Node(array(new Twig_Node_Expression_AssignName('foo', 4))), new Twig_Node(array(new Twig_Node_Expression_Constant('foo', 4))), 4);
-        $body = new Twig_Node(array($set));
-        $extends = new Twig_Node_Expression_Conditional(
-                        new Twig_Node_Expression_Constant(true, 2),
-                        new Twig_Node_Expression_Constant('foo', 2),
-                        new Twig_Node_Expression_Constant('foo', 2),
-                        2
-                    );
-
-        $node = new Twig_Node_Module($body, $extends, $blocks, $macros, $traits, new Twig_Node(array()), $filename);
-        $tests[] = array($node, <<<EOF
-<?php
-
-/* foo.twig */
-class __TwigTemplate_5b706c6f89df245f237e41d0b65b7019c02dcd93c31ba69e652ac1da78575a09 extends Twig_Template
-{
-    protected function doGetParent(array \$context)
-    {
-        // line 2
-        return \$this->loadTemplate(((true) ? ("foo") : ("foo")), "foo.twig", 2);
-    }
-
-    protected function doDisplay(array \$context, array \$blocks = array())
-    {
-        // line 4
-        \$context["foo"] = "foo";
-        // line 2
-        \$this->getParent(\$context)->display(\$context, array_merge(\$this->blocks, \$blocks));
-    }
-
-    public function getTemplateName()
-    {
-        return "foo.twig";
-    }
-
-    public function isTraitable()
-    {
-        return false;
-    }
-
-    public function getDebugInfo()
-    {
-        return array (  17 => 2,  15 => 4,  9 => 2,);
-    }
-}
-EOF
-        , $twig);
-
-        return $tests;
-    }
-}
diff --git a/vendor/twig/twig/test/Twig/Tests/Node/PrintTest.php b/vendor/twig/twig/test/Twig/Tests/Node/PrintTest.php
deleted file mode 100644
index 4e0990f..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Node/PrintTest.php
+++ /dev/null
@@ -1,29 +0,0 @@
-<?php
-
-/*
- * This file is part of Twig.
- *
- * (c) Fabien Potencier
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-class Twig_Tests_Node_PrintTest extends Twig_Test_NodeTestCase
-{
-    public function testConstructor()
-    {
-        $expr = new Twig_Node_Expression_Constant('foo', 1);
-        $node = new Twig_Node_Print($expr, 1);
-
-        $this->assertEquals($expr, $node->getNode('expr'));
-    }
-
-    public function getTests()
-    {
-        $tests = array();
-        $tests[] = array(new Twig_Node_Print(new Twig_Node_Expression_Constant('foo', 1), 1), "// line 1\necho \"foo\";");
-
-        return $tests;
-    }
-}
diff --git a/vendor/twig/twig/test/Twig/Tests/Node/SandboxTest.php b/vendor/twig/twig/test/Twig/Tests/Node/SandboxTest.php
deleted file mode 100644
index 46ecf97..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Node/SandboxTest.php
+++ /dev/null
@@ -1,44 +0,0 @@
-<?php
-
-/*
- * This file is part of Twig.
- *
- * (c) Fabien Potencier
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-class Twig_Tests_Node_SandboxTest extends Twig_Test_NodeTestCase
-{
-    public function testConstructor()
-    {
-        $body = new Twig_Node_Text('foo', 1);
-        $node = new Twig_Node_Sandbox($body, 1);
-
-        $this->assertEquals($body, $node->getNode('body'));
-    }
-
-    public function getTests()
-    {
-        $tests = array();
-
-        $body = new Twig_Node_Text('foo', 1);
-        $node = new Twig_Node_Sandbox($body, 1);
-
-        $tests[] = array($node, <<<EOF
-// line 1
-\$sandbox = \$this->env->getExtension('sandbox');
-if (!\$alreadySandboxed = \$sandbox->isSandboxed()) {
-    \$sandbox->enableSandbox();
-}
-echo "foo";
-if (!\$alreadySandboxed) {
-    \$sandbox->disableSandbox();
-}
-EOF
-        );
-
-        return $tests;
-    }
-}
diff --git a/vendor/twig/twig/test/Twig/Tests/Node/SandboxedPrintTest.php b/vendor/twig/twig/test/Twig/Tests/Node/SandboxedPrintTest.php
deleted file mode 100644
index 05e1854..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Node/SandboxedPrintTest.php
+++ /dev/null
@@ -1,33 +0,0 @@
-<?php
-
-/*
- * This file is part of Twig.
- *
- * (c) Fabien Potencier
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-class Twig_Tests_Node_SandboxedPrintTest extends Twig_Test_NodeTestCase
-{
-    public function testConstructor()
-    {
-        $node = new Twig_Node_SandboxedPrint($expr = new Twig_Node_Expression_Constant('foo', 1), 1);
-
-        $this->assertEquals($expr, $node->getNode('expr'));
-    }
-
-    public function getTests()
-    {
-        $tests = array();
-
-        $tests[] = array(new Twig_Node_SandboxedPrint(new Twig_Node_Expression_Constant('foo', 1), 1), <<<EOF
-// line 1
-echo \$this->env->getExtension('sandbox')->ensureToStringAllowed("foo");
-EOF
-        );
-
-        return $tests;
-    }
-}
diff --git a/vendor/twig/twig/test/Twig/Tests/Node/SetTest.php b/vendor/twig/twig/test/Twig/Tests/Node/SetTest.php
deleted file mode 100644
index 62ad280..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Node/SetTest.php
+++ /dev/null
@@ -1,69 +0,0 @@
-<?php
-
-/*
- * This file is part of Twig.
- *
- * (c) Fabien Potencier
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-class Twig_Tests_Node_SetTest extends Twig_Test_NodeTestCase
-{
-    public function testConstructor()
-    {
-        $names = new Twig_Node(array(new Twig_Node_Expression_AssignName('foo', 1)), array(), 1);
-        $values = new Twig_Node(array(new Twig_Node_Expression_Constant('foo', 1)), array(), 1);
-        $node = new Twig_Node_Set(false, $names, $values, 1);
-
-        $this->assertEquals($names, $node->getNode('names'));
-        $this->assertEquals($values, $node->getNode('values'));
-        $this->assertFalse($node->getAttribute('capture'));
-    }
-
-    public function getTests()
-    {
-        $tests = array();
-
-        $names = new Twig_Node(array(new Twig_Node_Expression_AssignName('foo', 1)), array(), 1);
-        $values = new Twig_Node(array(new Twig_Node_Expression_Constant('foo', 1)), array(), 1);
-        $node = new Twig_Node_Set(false, $names, $values, 1);
-        $tests[] = array($node, <<<EOF
-// line 1
-\$context["foo"] = "foo";
-EOF
-        );
-
-        $names = new Twig_Node(array(new Twig_Node_Expression_AssignName('foo', 1)), array(), 1);
-        $values = new Twig_Node(array(new Twig_Node_Print(new Twig_Node_Expression_Constant('foo', 1), 1)), array(), 1);
-        $node = new Twig_Node_Set(true, $names, $values, 1);
-        $tests[] = array($node, <<<EOF
-// line 1
-ob_start();
-echo "foo";
-\$context["foo"] = ('' === \$tmp = ob_get_clean()) ? '' : new Twig_Markup(\$tmp, \$this->env->getCharset());
-EOF
-        );
-
-        $names = new Twig_Node(array(new Twig_Node_Expression_AssignName('foo', 1)), array(), 1);
-        $values = new Twig_Node_Text('foo', 1);
-        $node = new Twig_Node_Set(true, $names, $values, 1);
-        $tests[] = array($node, <<<EOF
-// line 1
-\$context["foo"] = ('' === \$tmp = "foo") ? '' : new Twig_Markup(\$tmp, \$this->env->getCharset());
-EOF
-        );
-
-        $names = new Twig_Node(array(new Twig_Node_Expression_AssignName('foo', 1), new Twig_Node_Expression_AssignName('bar', 1)), array(), 1);
-        $values = new Twig_Node(array(new Twig_Node_Expression_Constant('foo', 1), new Twig_Node_Expression_Name('bar', 1)), array(), 1);
-        $node = new Twig_Node_Set(false, $names, $values, 1);
-        $tests[] = array($node, <<<EOF
-// line 1
-list(\$context["foo"], \$context["bar"]) = array("foo", {$this->getVariableGetter('bar')});
-EOF
-        );
-
-        return $tests;
-    }
-}
diff --git a/vendor/twig/twig/test/Twig/Tests/Node/SpacelessTest.php b/vendor/twig/twig/test/Twig/Tests/Node/SpacelessTest.php
deleted file mode 100644
index 222ca09..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Node/SpacelessTest.php
+++ /dev/null
@@ -1,37 +0,0 @@
-<?php
-
-/*
- * This file is part of Twig.
- *
- * (c) Fabien Potencier
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-class Twig_Tests_Node_SpacelessTest extends Twig_Test_NodeTestCase
-{
-    public function testConstructor()
-    {
-        $body = new Twig_Node(array(new Twig_Node_Text('<div>   <div>   foo   </div>   </div>', 1)));
-        $node = new Twig_Node_Spaceless($body, 1);
-
-        $this->assertEquals($body, $node->getNode('body'));
-    }
-
-    public function getTests()
-    {
-        $body = new Twig_Node(array(new Twig_Node_Text('<div>   <div>   foo   </div>   </div>', 1)));
-        $node = new Twig_Node_Spaceless($body, 1);
-
-        return array(
-            array($node, <<<EOF
-// line 1
-ob_start();
-echo "<div>   <div>   foo   </div>   </div>";
-echo trim(preg_replace('/>\s+</', '><', ob_get_clean()));
-EOF
-            ),
-        );
-    }
-}
diff --git a/vendor/twig/twig/test/Twig/Tests/Node/TextTest.php b/vendor/twig/twig/test/Twig/Tests/Node/TextTest.php
deleted file mode 100644
index ceaf67f..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Node/TextTest.php
+++ /dev/null
@@ -1,28 +0,0 @@
-<?php
-
-/*
- * This file is part of Twig.
- *
- * (c) Fabien Potencier
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-class Twig_Tests_Node_TextTest extends Twig_Test_NodeTestCase
-{
-    public function testConstructor()
-    {
-        $node = new Twig_Node_Text('foo', 1);
-
-        $this->assertEquals('foo', $node->getAttribute('data'));
-    }
-
-    public function getTests()
-    {
-        $tests = array();
-        $tests[] = array(new Twig_Node_Text('foo', 1), "// line 1\necho \"foo\";");
-
-        return $tests;
-    }
-}
diff --git a/vendor/twig/twig/test/Twig/Tests/NodeVisitor/OptimizerTest.php b/vendor/twig/twig/test/Twig/Tests/NodeVisitor/OptimizerTest.php
deleted file mode 100644
index b5ea7aa..0000000
--- a/vendor/twig/twig/test/Twig/Tests/NodeVisitor/OptimizerTest.php
+++ /dev/null
@@ -1,124 +0,0 @@
-<?php
-
-/*
- * This file is part of Twig.
- *
- * (c) Fabien Potencier
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-class Twig_Tests_NodeVisitor_OptimizerTest extends PHPUnit_Framework_TestCase
-{
-    public function testRenderBlockOptimizer()
-    {
-        $env = new Twig_Environment($this->getMock('Twig_LoaderInterface'), array('cache' => false, 'autoescape' => false));
-
-        $stream = $env->parse($env->tokenize('{{ block("foo") }}', 'index'));
-
-        $node = $stream->getNode('body')->getNode(0);
-
-        $this->assertEquals('Twig_Node_Expression_BlockReference', get_class($node));
-        $this->assertTrue($node->getAttribute('output'));
-    }
-
-    public function testRenderParentBlockOptimizer()
-    {
-        $env = new Twig_Environment($this->getMock('Twig_LoaderInterface'), array('cache' => false, 'autoescape' => false));
-
-        $stream = $env->parse($env->tokenize('{% extends "foo" %}{% block content %}{{ parent() }}{% endblock %}', 'index'));
-
-        $node = $stream->getNode('blocks')->getNode('content')->getNode(0)->getNode('body');
-
-        $this->assertEquals('Twig_Node_Expression_Parent', get_class($node));
-        $this->assertTrue($node->getAttribute('output'));
-    }
-
-    public function testRenderVariableBlockOptimizer()
-    {
-        if (PHP_VERSION_ID >= 50400) {
-            return;
-        }
-
-        $env = new Twig_Environment($this->getMock('Twig_LoaderInterface'), array('cache' => false, 'autoescape' => false));
-        $stream = $env->parse($env->tokenize('{{ block(name|lower) }}', 'index'));
-
-        $node = $stream->getNode('body')->getNode(0)->getNode(1);
-
-        $this->assertEquals('Twig_Node_Expression_BlockReference', get_class($node));
-        $this->assertTrue($node->getAttribute('output'));
-    }
-
-    /**
-     * @dataProvider getTestsForForOptimizer
-     */
-    public function testForOptimizer($template, $expected)
-    {
-        $env = new Twig_Environment($this->getMock('Twig_LoaderInterface'), array('cache' => false));
-
-        $stream = $env->parse($env->tokenize($template, 'index'));
-
-        foreach ($expected as $target => $withLoop) {
-            $this->assertTrue($this->checkForConfiguration($stream, $target, $withLoop), sprintf('variable %s is %soptimized', $target, $withLoop ? 'not ' : ''));
-        }
-    }
-
-    public function getTestsForForOptimizer()
-    {
-        return array(
-            array('{% for i in foo %}{% endfor %}', array('i' => false)),
-
-            array('{% for i in foo %}{{ loop.index }}{% endfor %}', array('i' => true)),
-
-            array('{% for i in foo %}{% for j in foo %}{% endfor %}{% endfor %}', array('i' => false, 'j' => false)),
-
-            array('{% for i in foo %}{% include "foo" %}{% endfor %}', array('i' => true)),
-
-            array('{% for i in foo %}{% include "foo" only %}{% endfor %}', array('i' => false)),
-
-            array('{% for i in foo %}{% include "foo" with { "foo": "bar" } only %}{% endfor %}', array('i' => false)),
-
-            array('{% for i in foo %}{% include "foo" with { "foo": loop.index } only %}{% endfor %}', array('i' => true)),
-
-            array('{% for i in foo %}{% for j in foo %}{{ loop.index }}{% endfor %}{% endfor %}', array('i' => false, 'j' => true)),
-
-            array('{% for i in foo %}{% for j in foo %}{{ loop.parent.loop.index }}{% endfor %}{% endfor %}', array('i' => true, 'j' => true)),
-
-            array('{% for i in foo %}{% set l = loop %}{% for j in foo %}{{ l.index }}{% endfor %}{% endfor %}', array('i' => true, 'j' => false)),
-
-            array('{% for i in foo %}{% for j in foo %}{{ foo.parent.loop.index }}{% endfor %}{% endfor %}', array('i' => false, 'j' => false)),
-
-            array('{% for i in foo %}{% for j in foo %}{{ loop["parent"].loop.index }}{% endfor %}{% endfor %}', array('i' => true, 'j' => true)),
-
-            array('{% for i in foo %}{{ include("foo") }}{% endfor %}', array('i' => true)),
-
-            array('{% for i in foo %}{{ include("foo", with_context = false) }}{% endfor %}', array('i' => false)),
-
-            array('{% for i in foo %}{{ include("foo", with_context = true) }}{% endfor %}', array('i' => true)),
-
-            array('{% for i in foo %}{{ include("foo", { "foo": "bar" }, with_context = false) }}{% endfor %}', array('i' => false)),
-
-            array('{% for i in foo %}{{ include("foo", { "foo": loop.index }, with_context = false) }}{% endfor %}', array('i' => true)),
-        );
-    }
-
-    public function checkForConfiguration(Twig_NodeInterface $node = null, $target, $withLoop)
-    {
-        if (null === $node) {
-            return;
-        }
-
-        foreach ($node as $n) {
-            if ($n instanceof Twig_Node_For) {
-                if ($target === $n->getNode('value_target')->getAttribute('name')) {
-                    return $withLoop == $n->getAttribute('with_loop');
-                }
-            }
-
-            $ret = $this->checkForConfiguration($n, $target, $withLoop);
-            if (null !== $ret) {
-                return $ret;
-            }
-        }
-    }
-}
diff --git a/vendor/twig/twig/test/Twig/Tests/ParserTest.php b/vendor/twig/twig/test/Twig/Tests/ParserTest.php
deleted file mode 100644
index b29dac3..0000000
--- a/vendor/twig/twig/test/Twig/Tests/ParserTest.php
+++ /dev/null
@@ -1,180 +0,0 @@
-<?php
-
-/*
- * This file is part of Twig.
- *
- * (c) Fabien Potencier
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-class Twig_Tests_ParserTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @expectedException Twig_Error_Syntax
-     */
-    public function testSetMacroThrowsExceptionOnReservedMethods()
-    {
-        $parser = $this->getParser();
-        $parser->setMacro('parent', $this->getMock('Twig_Node_Macro', array(), array(), '', null));
-    }
-
-    /**
-     * @expectedException        Twig_Error_Syntax
-     * @expectedExceptionMessage Unknown tag name "foo". Did you mean "for" at line 1
-     */
-    public function testUnknownTag()
-    {
-        $stream = new Twig_TokenStream(array(
-            new Twig_Token(Twig_Token::BLOCK_START_TYPE, '', 1),
-            new Twig_Token(Twig_Token::NAME_TYPE, 'foo', 1),
-            new Twig_Token(Twig_Token::BLOCK_END_TYPE, '', 1),
-            new Twig_Token(Twig_Token::EOF_TYPE, '', 1),
-        ));
-        $parser = new Twig_Parser(new Twig_Environment($this->getMock('Twig_LoaderInterface')));
-        $parser->parse($stream);
-    }
-
-    /**
-     * @dataProvider getFilterBodyNodesData
-     */
-    public function testFilterBodyNodes($input, $expected)
-    {
-        $parser = $this->getParser();
-
-        $this->assertEquals($expected, $parser->filterBodyNodes($input));
-    }
-
-    public function getFilterBodyNodesData()
-    {
-        return array(
-            array(
-                new Twig_Node(array(new Twig_Node_Text('   ', 1))),
-                new Twig_Node(array()),
-            ),
-            array(
-                $input = new Twig_Node(array(new Twig_Node_Set(false, new Twig_Node(), new Twig_Node(), 1))),
-                $input,
-            ),
-            array(
-                $input = new Twig_Node(array(new Twig_Node_Set(true, new Twig_Node(), new Twig_Node(array(new Twig_Node(array(new Twig_Node_Text('foo', 1))))), 1))),
-                $input,
-            ),
-        );
-    }
-
-    /**
-     * @dataProvider getFilterBodyNodesDataThrowsException
-     * @expectedException Twig_Error_Syntax
-     */
-    public function testFilterBodyNodesThrowsException($input)
-    {
-        $parser = $this->getParser();
-
-        $parser->filterBodyNodes($input);
-    }
-
-    public function getFilterBodyNodesDataThrowsException()
-    {
-        return array(
-            array(new Twig_Node_Text('foo', 1)),
-            array(new Twig_Node(array(new Twig_Node(array(new Twig_Node_Text('foo', 1)))))),
-        );
-    }
-
-    /**
-     * @expectedException Twig_Error_Syntax
-     * @expectedExceptionMessage A template that extends another one cannot have a body but a byte order mark (BOM) has been detected; it must be removed at line 1.
-     */
-    public function testFilterBodyNodesWithBOM()
-    {
-        $parser = $this->getParser();
-        $parser->filterBodyNodes(new Twig_Node_Text(chr(0xEF).chr(0xBB).chr(0xBF), 1));
-    }
-
-    public function testParseIsReentrant()
-    {
-        $twig = new Twig_Environment($this->getMock('Twig_LoaderInterface'), array(
-            'autoescape' => false,
-            'optimizations' => 0,
-        ));
-        $twig->addTokenParser(new TestTokenParser());
-
-        $parser = new Twig_Parser($twig);
-
-        $parser->parse(new Twig_TokenStream(array(
-            new Twig_Token(Twig_Token::BLOCK_START_TYPE, '', 1),
-            new Twig_Token(Twig_Token::NAME_TYPE, 'test', 1),
-            new Twig_Token(Twig_Token::BLOCK_END_TYPE, '', 1),
-            new Twig_Token(Twig_Token::VAR_START_TYPE, '', 1),
-            new Twig_Token(Twig_Token::NAME_TYPE, 'foo', 1),
-            new Twig_Token(Twig_Token::VAR_END_TYPE, '', 1),
-            new Twig_Token(Twig_Token::EOF_TYPE, '', 1),
-        )));
-
-        $this->assertNull($parser->getParent());
-    }
-
-    // The getVarName() must not depend on the template loaders,
-    // If this test does not throw any exception, that's good.
-    // see https://github.com/symfony/symfony/issues/4218
-    public function testGetVarName()
-    {
-        $twig = new Twig_Environment($this->getMock('Twig_LoaderInterface'), array(
-            'autoescape' => false,
-            'optimizations' => 0,
-        ));
-
-        $twig->parse($twig->tokenize(<<<EOF
-{% from _self import foo %}
-
-{% macro foo() %}
-    {{ foo }}
-{% endmacro %}
-EOF
-        ));
-    }
-
-    protected function getParser()
-    {
-        $parser = new TestParser(new Twig_Environment($this->getMock('Twig_LoaderInterface')));
-        $parser->setParent(new Twig_Node());
-        $parser->stream = $this->getMockBuilder('Twig_TokenStream')->disableOriginalConstructor()->getMock();
-
-        return $parser;
-    }
-}
-
-class TestParser extends Twig_Parser
-{
-    public $stream;
-
-    public function filterBodyNodes(Twig_NodeInterface $node)
-    {
-        return parent::filterBodyNodes($node);
-    }
-}
-
-class TestTokenParser extends Twig_TokenParser
-{
-    public function parse(Twig_Token $token)
-    {
-        // simulate the parsing of another template right in the middle of the parsing of the current template
-        $this->parser->parse(new Twig_TokenStream(array(
-            new Twig_Token(Twig_Token::BLOCK_START_TYPE, '', 1),
-            new Twig_Token(Twig_Token::NAME_TYPE, 'extends', 1),
-            new Twig_Token(Twig_Token::STRING_TYPE, 'base', 1),
-            new Twig_Token(Twig_Token::BLOCK_END_TYPE, '', 1),
-            new Twig_Token(Twig_Token::EOF_TYPE, '', 1),
-        )));
-
-        $this->parser->getStream()->expect(Twig_Token::BLOCK_END_TYPE);
-
-        return new Twig_Node(array());
-    }
-
-    public function getTag()
-    {
-        return 'test';
-    }
-}
diff --git a/vendor/twig/twig/test/Twig/Tests/Profiler/Dumper/AbstractTest.php b/vendor/twig/twig/test/Twig/Tests/Profiler/Dumper/AbstractTest.php
deleted file mode 100644
index da97f47..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Profiler/Dumper/AbstractTest.php
+++ /dev/null
@@ -1,101 +0,0 @@
-<?php
-
-/*
- * This file is part of Twig.
- *
- * (c) Fabien Potencier
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-abstract class Twig_Tests_Profiler_Dumper_AbstractTest extends PHPUnit_Framework_TestCase
-{
-    protected function getProfile()
-    {
-        $profile = $this->getMockBuilder('Twig_Profiler_Profile')->disableOriginalConstructor()->getMock();
-
-        $profile->expects($this->any())->method('isRoot')->will($this->returnValue(true));
-        $profile->expects($this->any())->method('getName')->will($this->returnValue('main'));
-        $profile->expects($this->any())->method('getDuration')->will($this->returnValue(1));
-        $profile->expects($this->any())->method('getMemoryUsage')->will($this->returnValue(0));
-        $profile->expects($this->any())->method('getPeakMemoryUsage')->will($this->returnValue(0));
-
-        $subProfiles = array(
-            $this->getIndexProfile(
-                array(
-                    $this->getEmbeddedBlockProfile(),
-                    $this->getEmbeddedTemplateProfile(
-                        array(
-                            $this->getIncludedTemplateProfile(),
-                        )
-                    ),
-                    $this->getMacroProfile(),
-                    $this->getEmbeddedTemplateProfile(
-                        array(
-                            $this->getIncludedTemplateProfile(),
-                        )
-                    ),
-                )
-            ),
-        );
-
-        $profile->expects($this->any())->method('getProfiles')->will($this->returnValue($subProfiles));
-        $profile->expects($this->any())->method('getIterator')->will($this->returnValue(new ArrayIterator($subProfiles)));
-
-        return $profile;
-    }
-
-    private function getIndexProfile(array $subProfiles = array())
-    {
-        return $this->generateProfile('main', 1, true, 'template', 'index.twig', $subProfiles);
-    }
-
-    private function getEmbeddedBlockProfile(array $subProfiles = array())
-    {
-        return $this->generateProfile('body', 0.0001, false, 'block', 'embedded.twig', $subProfiles);
-    }
-
-    private function getEmbeddedTemplateProfile(array $subProfiles = array())
-    {
-        return $this->generateProfile('main', 0.0001, true, 'template', 'embedded.twig', $subProfiles);
-    }
-
-    private function getIncludedTemplateProfile(array $subProfiles = array())
-    {
-        return $this->generateProfile('main', 0.0001, true, 'template', 'included.twig', $subProfiles);
-    }
-
-    private function getMacroProfile(array $subProfiles = array())
-    {
-        return $this->generateProfile('foo', 0.0001, false, 'macro', 'index.twig', $subProfiles);
-    }
-
-    /**
-     * @param string $name
-     * @param float  $duration
-     * @param bool   $isTemplate
-     * @param string $type
-     * @param string $templateName
-     * @param array  $subProfiles
-     *
-     * @return Twig_Profiler_Profile
-     */
-    private function generateProfile($name, $duration, $isTemplate, $type, $templateName, array $subProfiles = array())
-    {
-        $profile = $this->getMockBuilder('Twig_Profiler_Profile')->disableOriginalConstructor()->getMock();
-
-        $profile->expects($this->any())->method('isRoot')->will($this->returnValue(false));
-        $profile->expects($this->any())->method('getName')->will($this->returnValue($name));
-        $profile->expects($this->any())->method('getDuration')->will($this->returnValue($duration));
-        $profile->expects($this->any())->method('getMemoryUsage')->will($this->returnValue(0));
-        $profile->expects($this->any())->method('getPeakMemoryUsage')->will($this->returnValue(0));
-        $profile->expects($this->any())->method('isTemplate')->will($this->returnValue($isTemplate));
-        $profile->expects($this->any())->method('getType')->will($this->returnValue($type));
-        $profile->expects($this->any())->method('getTemplate')->will($this->returnValue($templateName));
-        $profile->expects($this->any())->method('getProfiles')->will($this->returnValue($subProfiles));
-        $profile->expects($this->any())->method('getIterator')->will($this->returnValue(new ArrayIterator($subProfiles)));
-
-        return $profile;
-    }
-}
diff --git a/vendor/twig/twig/test/Twig/Tests/Profiler/Dumper/BlackfireTest.php b/vendor/twig/twig/test/Twig/Tests/Profiler/Dumper/BlackfireTest.php
deleted file mode 100644
index 1a1b9d2..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Profiler/Dumper/BlackfireTest.php
+++ /dev/null
@@ -1,32 +0,0 @@
-<?php
-
-/*
- * This file is part of Twig.
- *
- * (c) Fabien Potencier
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-class Twig_Tests_Profiler_Dumper_BlackfireTest extends Twig_Tests_Profiler_Dumper_AbstractTest
-{
-    public function testDump()
-    {
-        $dumper = new Twig_Profiler_Dumper_Blackfire();
-
-        $this->assertStringMatchesFormat(<<<EOF
-file-format: BlackfireProbe
-cost-dimensions: wt mu pmu
-request-start: %d.%d
-
-main()//1 %d %d %d
-main()==>index.twig//1 %d %d %d
-index.twig==>embedded.twig::block(body)//1 %d %d 0
-index.twig==>embedded.twig//2 %d %d %d
-embedded.twig==>included.twig//2 %d %d %d
-index.twig==>index.twig::macro(foo)//1 %d %d %d
-EOF
-        , $dumper->dump($this->getProfile()));
-    }
-}
diff --git a/vendor/twig/twig/test/Twig/Tests/Profiler/Dumper/HtmlTest.php b/vendor/twig/twig/test/Twig/Tests/Profiler/Dumper/HtmlTest.php
deleted file mode 100644
index 66a68c4..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Profiler/Dumper/HtmlTest.php
+++ /dev/null
@@ -1,30 +0,0 @@
-<?php
-
-/*
- * This file is part of Twig.
- *
- * (c) Fabien Potencier
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-class Twig_Tests_Profiler_Dumper_HtmlTest extends Twig_Tests_Profiler_Dumper_AbstractTest
-{
-    public function testDump()
-    {
-        $dumper = new Twig_Profiler_Dumper_Html();
-        $this->assertStringMatchesFormat(<<<EOF
-<pre>main <span style="color: #d44">%d.%dms/%d%</span>
-└ <span style="background-color: #ffd">index.twig</span> <span style="color: #d44">%d.%dms/%d%</span>
-  └ embedded.twig::block(<span style="background-color: #dfd">body</span>)
-  └ <span style="background-color: #ffd">embedded.twig</span>
-  │ └ <span style="background-color: #ffd">included.twig</span>
-  └ index.twig::macro(<span style="background-color: #ddf">foo</span>)
-  └ <span style="background-color: #ffd">embedded.twig</span>
-    └ <span style="background-color: #ffd">included.twig</span>
-</pre>
-EOF
-        , $dumper->dump($this->getProfile()));
-    }
-}
diff --git a/vendor/twig/twig/test/Twig/Tests/Profiler/Dumper/TextTest.php b/vendor/twig/twig/test/Twig/Tests/Profiler/Dumper/TextTest.php
deleted file mode 100644
index e2ea165..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Profiler/Dumper/TextTest.php
+++ /dev/null
@@ -1,30 +0,0 @@
-<?php
-
-/*
- * This file is part of Twig.
- *
- * (c) Fabien Potencier
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-class Twig_Tests_Profiler_Dumper_TextTest extends Twig_Tests_Profiler_Dumper_AbstractTest
-{
-    public function testDump()
-    {
-        $dumper = new Twig_Profiler_Dumper_Text();
-        $this->assertStringMatchesFormat(<<<EOF
-main %d.%dms/%d%
-└ index.twig %d.%dms/%d%
-  └ embedded.twig::block(body)
-  └ embedded.twig
-  │ └ included.twig
-  └ index.twig::macro(foo)
-  └ embedded.twig
-    └ included.twig
-
-EOF
-        , $dumper->dump($this->getProfile()));
-    }
-}
diff --git a/vendor/twig/twig/test/Twig/Tests/Profiler/ProfileTest.php b/vendor/twig/twig/test/Twig/Tests/Profiler/ProfileTest.php
deleted file mode 100644
index f786f06..0000000
--- a/vendor/twig/twig/test/Twig/Tests/Profiler/ProfileTest.php
+++ /dev/null
@@ -1,100 +0,0 @@
-<?php
-
-/*
- * This file is part of Twig.
- *
- * (c) Fabien Potencier
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-class Twig_Tests_Profiler_ProfileTest extends PHPUnit_Framework_TestCase
-{
-    public function testConstructor()
-    {
-        $profile = new Twig_Profiler_Profile('template', 'type', 'name');
-
-        $this->assertEquals('template', $profile->getTemplate());
-        $this->assertEquals('type', $profile->getType());
-        $this->assertEquals('name', $profile->getName());
-    }
-
-    public function testIsRoot()
-    {
-        $profile = new Twig_Profiler_Profile('template', Twig_Profiler_Profile::ROOT);
-        $this->assertTrue($profile->isRoot());
-
-        $profile = new Twig_Profiler_Profile('template', Twig_Profiler_Profile::TEMPLATE);
-        $this->assertFalse($profile->isRoot());
-    }
-
-    public function testIsTemplate()
-    {
-        $profile = new Twig_Profiler_Profile('template', Twig_Profiler_Profile::TEMPLATE);
-        $this->assertTrue($profile->isTemplate());
-
-        $profile = new Twig_Profiler_Profile('template', Twig_Profiler_Profile::ROOT);
-        $this->assertFalse($profile->isTemplate());
-    }
-
-    public function testIsBlock()
-    {
-        $profile = new Twig_Profiler_Profile('template', Twig_Profiler_Profile::BLOCK);
-        $this->assertTrue($profile->isBlock());
-
-        $profile = new Twig_Profiler_Profile('template', Twig_Profiler_Profile::ROOT);
-        $this->assertFalse($profile->isBlock());
-    }
-
-    public function testIsMacro()
-    {
-        $profile = new Twig_Profiler_Profile('template', Twig_Profiler_Profile::MACRO);
-        $this->assertTrue($profile->isMacro());
-
-        $profile = new Twig_Profiler_Profile('template', Twig_Profiler_Profile::ROOT);
-        $this->assertFalse($profile->isMacro());
-    }
-
-    public function testGetAddProfile()
-    {
-        $profile = new Twig_Profiler_Profile();
-        $profile->addProfile($a = new Twig_Profiler_Profile());
-        $profile->addProfile($b = new Twig_Profiler_Profile());
-
-        $this->assertSame(array($a, $b), $profile->getProfiles());
-        $this->assertSame(array($a, $b), iterator_to_array($profile));
-    }
-
-    public function testGetDuration()
-    {
-        $profile = new Twig_Profiler_Profile();
-        usleep(1);
-        $profile->leave();
-
-        $this->assertTrue($profile->getDuration() > 0, sprintf('Expected duration > 0, got: %f', $profile->getDuration()));
-    }
-
-    public function testSerialize()
-    {
-        $profile = new Twig_Profiler_Profile('template', 'type', 'name');
-        $profile1 = new Twig_Profiler_Profile('template1', 'type1', 'name1');
-        $profile->addProfile($profile1);
-        $profile->leave();
-        $profile1->leave();
-
-        $profile2 = unserialize(serialize($profile));
-        $profiles = $profile->getProfiles();
-        $this->assertCount(1, $profiles);
-        $profile3 = $profiles[0];
-
-        $this->assertEquals($profile->getTemplate(), $profile2->getTemplate());
-        $this->assertEquals($profile->getType(), $profile2->getType());
-        $this->assertEquals($profile->getName(), $profile2->getName());
-        $this->assertEquals($profile->getDuration(), $profile2->getDuration());
-
-        $this->assertEquals($profile1->getTemplate(), $profile3->getTemplate());
-        $this->assertEquals($profile1->getType(), $profile3->getType());
-        $this->assertEquals($profile1->getName(), $profile3->getName());
-    }
-}
diff --git a/vendor/twig/twig/test/Twig/Tests/TemplateTest.php b/vendor/twig/twig/test/Twig/Tests/TemplateTest.php
deleted file mode 100644
index 37836fd..0000000
--- a/vendor/twig/twig/test/Twig/Tests/TemplateTest.php
+++ /dev/null
@@ -1,693 +0,0 @@
-<?php
-
-/*
- * This file is part of Twig.
- *
- * (c) Fabien Potencier
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-class Twig_Tests_TemplateTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @expectedException LogicException
-     */
-    public function testDisplayBlocksAcceptTemplateOnlyAsBlocks()
-    {
-        $template = $this->getMockForAbstractClass('Twig_Template', array(), '', false);
-        $template->displayBlock('foo', array(), array('foo' => array(new stdClass(), 'foo')));
-    }
-
-    /**
-     * @dataProvider getAttributeExceptions
-     */
-    public function testGetAttributeExceptions($template, $message, $useExt)
-    {
-        $name = 'index_'.($useExt ? 1 : 0);
-        $templates = array(
-            $name => $template.$useExt, // appending $useExt makes the template content unique
-        );
-
-        $env = new Twig_Environment(new Twig_Loader_Array($templates), array('strict_variables' => true));
-        if (!$useExt) {
-            $env->addNodeVisitor(new CExtDisablingNodeVisitor());
-        }
-        $template = $env->loadTemplate($name);
-
-        $context = array(
-            'string' => 'foo',
-            'null' => null,
-            'empty_array' => array(),
-            'array' => array('foo' => 'foo'),
-            'array_access' => new Twig_TemplateArrayAccessObject(),
-            'magic_exception' => new Twig_TemplateMagicPropertyObjectWithException(),
-            'object' => new stdClass(),
-        );
-
-        try {
-            $template->render($context);
-            $this->fail('Accessing an invalid attribute should throw an exception.');
-        } catch (Twig_Error_Runtime $e) {
-            $this->assertSame(sprintf($message, $name), $e->getMessage());
-        }
-    }
-
-    public function getAttributeExceptions()
-    {
-        $tests = array(
-            array('{{ string["a"] }}', 'Impossible to access a key ("a") on a string variable ("foo") in "%s" at line 1', false),
-            array('{{ null["a"] }}', 'Impossible to access a key ("a") on a null variable in "%s" at line 1', false),
-            array('{{ empty_array["a"] }}', 'Key "a" does not exist as the array is empty in "%s" at line 1', false),
-            array('{{ array["a"] }}', 'Key "a" for array with keys "foo" does not exist in "%s" at line 1', false),
-            array('{{ array_access["a"] }}', 'Key "a" in object with ArrayAccess of class "Twig_TemplateArrayAccessObject" does not exist in "%s" at line 1', false),
-            array('{{ string.a }}', 'Impossible to access an attribute ("a") on a string variable ("foo") in "%s" at line 1', false),
-            array('{{ string.a() }}', 'Impossible to invoke a method ("a") on a string variable ("foo") in "%s" at line 1', false),
-            array('{{ null.a }}', 'Impossible to access an attribute ("a") on a null variable in "%s" at line 1', false),
-            array('{{ null.a() }}', 'Impossible to invoke a method ("a") on a null variable in "%s" at line 1', false),
-            array('{{ empty_array.a }}', 'Key "a" does not exist as the array is empty in "%s" at line 1', false),
-            array('{{ array.a }}', 'Key "a" for array with keys "foo" does not exist in "%s" at line 1', false),
-            array('{{ attribute(array, -10) }}', 'Key "-10" for array with keys "foo" does not exist in "%s" at line 1', false),
-            array('{{ array_access.a }}', 'Method "a" for object "Twig_TemplateArrayAccessObject" does not exist in "%s" at line 1', false),
-            array('{% from _self import foo %}{% macro foo(obj) %}{{ obj.missing_method() }}{% endmacro %}{{ foo(array_access) }}', 'Method "missing_method" for object "Twig_TemplateArrayAccessObject" does not exist in "%s" at line 1', false),
-            array('{{ magic_exception.test }}', 'An exception has been thrown during the rendering of a template ("Hey! Don\'t try to isset me!") in "%s" at line 1.', false),
-            array('{{ object["a"] }}', 'Impossible to access a key "a" on an object of class "stdClass" that does not implement ArrayAccess interface in "%s" at line 1', false),
-        );
-
-        if (function_exists('twig_template_get_attributes')) {
-            foreach (array_slice($tests, 0) as $test) {
-                $test[2] = true;
-                $tests[] = $test;
-            }
-        }
-
-        return $tests;
-    }
-
-    public function testGetSource()
-    {
-        $template = new Twig_TemplateTest(new Twig_Environment($this->getMock('Twig_LoaderInterface')), false);
-
-        $this->assertSame("<? */*bar*/ ?>\n", $template->getSource());
-    }
-
-    /**
-     * @dataProvider getGetAttributeWithSandbox
-     */
-    public function testGetAttributeWithSandbox($object, $item, $allowed, $useExt)
-    {
-        $twig = new Twig_Environment($this->getMock('Twig_LoaderInterface'));
-        $policy = new Twig_Sandbox_SecurityPolicy(array(), array(), array(/*method*/), array(/*prop*/), array());
-        $twig->addExtension(new Twig_Extension_Sandbox($policy, !$allowed));
-        $template = new Twig_TemplateTest($twig, $useExt);
-
-        try {
-            $template->getAttribute($object, $item, array(), 'any');
-
-            if (!$allowed) {
-                $this->fail();
-            }
-        } catch (Twig_Sandbox_SecurityError $e) {
-            if ($allowed) {
-                $this->fail();
-            }
-
-            $this->assertContains('is not allowed', $e->getMessage());
-        }
-    }
-
-    public function getGetAttributeWithSandbox()
-    {
-        $tests = array(
-            array(new Twig_TemplatePropertyObject(), 'defined', false, false),
-            array(new Twig_TemplatePropertyObject(), 'defined', true, false),
-            array(new Twig_TemplateMethodObject(), 'defined', false, false),
-            array(new Twig_TemplateMethodObject(), 'defined', true, false),
-        );
-
-        if (function_exists('twig_template_get_attributes')) {
-            foreach (array_slice($tests, 0) as $test) {
-                $test[3] = true;
-                $tests[] = $test;
-            }
-        }
-
-        return $tests;
-    }
-
-    /**
-     * @dataProvider getGetAttributeWithTemplateAsObject
-     */
-    public function testGetAttributeWithTemplateAsObject($useExt)
-    {
-        $template = new Twig_TemplateTest(new Twig_Environment($this->getMock('Twig_LoaderInterface')), $useExt);
-        $template1 = new Twig_TemplateTest(new Twig_Environment($this->getMock('Twig_LoaderInterface')), false);
-
-        $this->assertInstanceof('Twig_Markup', $template->getAttribute($template1, 'string'));
-        $this->assertEquals('some_string', $template->getAttribute($template1, 'string'));
-
-        $this->assertInstanceof('Twig_Markup', $template->getAttribute($template1, 'true'));
-        $this->assertEquals('1', $template->getAttribute($template1, 'true'));
-
-        $this->assertInstanceof('Twig_Markup', $template->getAttribute($template1, 'zero'));
-        $this->assertEquals('0', $template->getAttribute($template1, 'zero'));
-
-        $this->assertNotInstanceof('Twig_Markup', $template->getAttribute($template1, 'empty'));
-        $this->assertSame('', $template->getAttribute($template1, 'empty'));
-
-        $this->assertFalse($template->getAttribute($template1, 'env', array(), Twig_Template::ANY_CALL, true));
-        $this->assertFalse($template->getAttribute($template1, 'environment', array(), Twig_Template::ANY_CALL, true));
-        $this->assertFalse($template->getAttribute($template1, 'getEnvironment', array(), Twig_Template::METHOD_CALL, true));
-        $this->assertFalse($template->getAttribute($template1, 'displayWithErrorHandling', array(), Twig_Template::METHOD_CALL, true));
-    }
-
-    public function getGetAttributeWithTemplateAsObject()
-    {
-        $bools = array(
-            array(false),
-        );
-
-        if (function_exists('twig_template_get_attributes')) {
-            $bools[] = array(true);
-        }
-
-        return $bools;
-    }
-
-    /**
-     * @dataProvider getTestsDependingOnExtensionAvailability
-     */
-    public function testGetAttributeOnArrayWithConfusableKey($useExt = false)
-    {
-        $template = new Twig_TemplateTest(
-            new Twig_Environment($this->getMock('Twig_LoaderInterface')),
-            $useExt
-        );
-
-        $array = array('Zero', 'One', -1 => 'MinusOne', '' => 'EmptyString', '1.5' => 'FloatButString', '01' => 'IntegerButStringWithLeadingZeros');
-
-        $this->assertSame('Zero', $array[false]);
-        $this->assertSame('One', $array[true]);
-        $this->assertSame('One', $array[1.5]);
-        $this->assertSame('One', $array['1']);
-        $this->assertSame('MinusOne', $array[-1.5]);
-        $this->assertSame('FloatButString', $array['1.5']);
-        $this->assertSame('IntegerButStringWithLeadingZeros', $array['01']);
-        $this->assertSame('EmptyString', $array[null]);
-
-        $this->assertSame('Zero', $template->getAttribute($array, false), 'false is treated as 0 when accessing an array (equals PHP behavior)');
-        $this->assertSame('One', $template->getAttribute($array, true), 'true is treated as 1 when accessing an array (equals PHP behavior)');
-        $this->assertSame('One', $template->getAttribute($array, 1.5), 'float is casted to int when accessing an array (equals PHP behavior)');
-        $this->assertSame('One', $template->getAttribute($array, '1'), '"1" is treated as integer 1 when accessing an array (equals PHP behavior)');
-        $this->assertSame('MinusOne', $template->getAttribute($array, -1.5), 'negative float is casted to int when accessing an array (equals PHP behavior)');
-        $this->assertSame('FloatButString', $template->getAttribute($array, '1.5'), '"1.5" is treated as-is when accessing an array (equals PHP behavior)');
-        $this->assertSame('IntegerButStringWithLeadingZeros', $template->getAttribute($array, '01'), '"01" is treated as-is when accessing an array (equals PHP behavior)');
-        $this->assertSame('EmptyString', $template->getAttribute($array, null), 'null is treated as "" when accessing an array (equals PHP behavior)');
-    }
-
-    public function getTestsDependingOnExtensionAvailability()
-    {
-        if (function_exists('twig_template_get_attributes')) {
-            return array(array(false), array(true));
-        }
-
-        return array(array(false));
-    }
-
-    /**
-     * @dataProvider getGetAttributeTests
-     */
-    public function testGetAttribute($defined, $value, $object, $item, $arguments, $type, $useExt = false)
-    {
-        $template = new Twig_TemplateTest(new Twig_Environment($this->getMock('Twig_LoaderInterface')), $useExt);
-
-        $this->assertEquals($value, $template->getAttribute($object, $item, $arguments, $type));
-    }
-
-    /**
-     * @dataProvider getGetAttributeTests
-     */
-    public function testGetAttributeStrict($defined, $value, $object, $item, $arguments, $type, $useExt = false, $exceptionMessage = null)
-    {
-        $template = new Twig_TemplateTest(new Twig_Environment($this->getMock('Twig_LoaderInterface'), array('strict_variables' => true)), $useExt);
-
-        if ($defined) {
-            $this->assertEquals($value, $template->getAttribute($object, $item, $arguments, $type));
-        } else {
-            try {
-                $this->assertEquals($value, $template->getAttribute($object, $item, $arguments, $type));
-
-                throw new Exception('Expected Twig_Error_Runtime exception.');
-            } catch (Twig_Error_Runtime $e) {
-                if (null !== $exceptionMessage) {
-                    $this->assertSame($exceptionMessage, $e->getMessage());
-                }
-            }
-        }
-    }
-
-    /**
-     * @dataProvider getGetAttributeTests
-     */
-    public function testGetAttributeDefined($defined, $value, $object, $item, $arguments, $type, $useExt = false)
-    {
-        $template = new Twig_TemplateTest(new Twig_Environment($this->getMock('Twig_LoaderInterface')), $useExt);
-
-        $this->assertEquals($defined, $template->getAttribute($object, $item, $arguments, $type, true));
-    }
-
-    /**
-     * @dataProvider getGetAttributeTests
-     */
-    public function testGetAttributeDefinedStrict($defined, $value, $object, $item, $arguments, $type, $useExt = false)
-    {
-        $template = new Twig_TemplateTest(new Twig_Environment($this->getMock('Twig_LoaderInterface'), array('strict_variables' => true)), $useExt);
-
-        $this->assertEquals($defined, $template->getAttribute($object, $item, $arguments, $type, true));
-    }
-
-    /**
-     * @dataProvider getTestsDependingOnExtensionAvailability
-     */
-    public function testGetAttributeCallExceptions($useExt = false)
-    {
-        $template = new Twig_TemplateTest(new Twig_Environment($this->getMock('Twig_LoaderInterface')), $useExt);
-
-        $object = new Twig_TemplateMagicMethodExceptionObject();
-
-        $this->assertNull($template->getAttribute($object, 'foo'));
-    }
-
-    public function getGetAttributeTests()
-    {
-        $array = array(
-            'defined' => 'defined',
-            'zero' => 0,
-            'null' => null,
-            '1' => 1,
-            'bar' => true,
-            '09' => '09',
-            '+4' => '+4',
-        );
-
-        $objectArray = new Twig_TemplateArrayAccessObject();
-        $stdObject = (object) $array;
-        $magicPropertyObject = new Twig_TemplateMagicPropertyObject();
-        $propertyObject = new Twig_TemplatePropertyObject();
-        $propertyObject1 = new Twig_TemplatePropertyObjectAndIterator();
-        $propertyObject2 = new Twig_TemplatePropertyObjectAndArrayAccess();
-        $propertyObject3 = new Twig_TemplatePropertyObjectDefinedWithUndefinedValue();
-        $methodObject = new Twig_TemplateMethodObject();
-        $magicMethodObject = new Twig_TemplateMagicMethodObject();
-
-        $anyType = Twig_Template::ANY_CALL;
-        $methodType = Twig_Template::METHOD_CALL;
-        $arrayType = Twig_Template::ARRAY_CALL;
-
-        $basicTests = array(
-            // array(defined, value, property to fetch)
-            array(true,  'defined', 'defined'),
-            array(false, null,      'undefined'),
-            array(false, null,      'protected'),
-            array(true,  0,         'zero'),
-            array(true,  1,         1),
-            array(true,  1,         1.0),
-            array(true,  null,      'null'),
-            array(true,  true,      'bar'),
-            array(true,  '09',      '09'),
-            array(true,  '+4',      '+4'),
-        );
-        $testObjects = array(
-            // array(object, type of fetch)
-            array($array,               $arrayType),
-            array($objectArray,         $arrayType),
-            array($stdObject,           $anyType),
-            array($magicPropertyObject, $anyType),
-            array($methodObject,        $methodType),
-            array($methodObject,        $anyType),
-            array($propertyObject,      $anyType),
-            array($propertyObject1,     $anyType),
-            array($propertyObject2,     $anyType),
-        );
-
-        $tests = array();
-        foreach ($testObjects as $testObject) {
-            foreach ($basicTests as $test) {
-                // properties cannot be numbers
-                if (($testObject[0] instanceof stdClass || $testObject[0] instanceof Twig_TemplatePropertyObject) && is_numeric($test[2])) {
-                    continue;
-                }
-
-                if ('+4' === $test[2] && $methodObject === $testObject[0]) {
-                    continue;
-                }
-
-                $tests[] = array($test[0], $test[1], $testObject[0], $test[2], array(), $testObject[1]);
-            }
-        }
-
-        // additional properties tests
-        $tests = array_merge($tests, array(
-            array(true, null, $propertyObject3, 'foo', array(), $anyType),
-        ));
-
-        // additional method tests
-        $tests = array_merge($tests, array(
-            array(true, 'defined', $methodObject, 'defined',    array(), $methodType),
-            array(true, 'defined', $methodObject, 'DEFINED',    array(), $methodType),
-            array(true, 'defined', $methodObject, 'getDefined', array(), $methodType),
-            array(true, 'defined', $methodObject, 'GETDEFINED', array(), $methodType),
-            array(true, 'static',  $methodObject, 'static',     array(), $methodType),
-            array(true, 'static',  $methodObject, 'getStatic',  array(), $methodType),
-
-            array(true, '__call_undefined', $magicMethodObject, 'undefined', array(), $methodType),
-            array(true, '__call_UNDEFINED', $magicMethodObject, 'UNDEFINED', array(), $methodType),
-        ));
-
-        // add the same tests for the any type
-        foreach ($tests as $test) {
-            if ($anyType !== $test[5]) {
-                $test[5] = $anyType;
-                $tests[] = $test;
-            }
-        }
-
-        $methodAndPropObject = new Twig_TemplateMethodAndPropObject();
-
-        // additional method tests
-        $tests = array_merge($tests, array(
-            array(true, 'a', $methodAndPropObject, 'a', array(), $anyType),
-            array(true, 'a', $methodAndPropObject, 'a', array(), $methodType),
-            array(false, null, $methodAndPropObject, 'a', array(), $arrayType),
-
-            array(true, 'b_prop', $methodAndPropObject, 'b', array(), $anyType),
-            array(true, 'b', $methodAndPropObject, 'B', array(), $anyType),
-            array(true, 'b', $methodAndPropObject, 'b', array(), $methodType),
-            array(true, 'b', $methodAndPropObject, 'B', array(), $methodType),
-            array(false, null, $methodAndPropObject, 'b', array(), $arrayType),
-
-            array(false, null, $methodAndPropObject, 'c', array(), $anyType),
-            array(false, null, $methodAndPropObject, 'c', array(), $methodType),
-            array(false, null, $methodAndPropObject, 'c', array(), $arrayType),
-
-        ));
-
-        // tests when input is not an array or object
-        $tests = array_merge($tests, array(
-            array(false, null, 42, 'a', array(), $anyType, false, 'Impossible to access an attribute ("a") on a integer variable ("42")'),
-            array(false, null, 'string', 'a', array(), $anyType, false, 'Impossible to access an attribute ("a") on a string variable ("string")'),
-            array(false, null, array(), 'a', array(), $anyType, false, 'Key "a" does not exist as the array is empty'),
-        ));
-
-        // add twig_template_get_attributes tests
-
-        if (function_exists('twig_template_get_attributes')) {
-            foreach (array_slice($tests, 0) as $test) {
-                $test = array_pad($test, 7, null);
-                $test[6] = true;
-                $tests[] = $test;
-            }
-        }
-
-        return $tests;
-    }
-}
-
-class Twig_TemplateTest extends Twig_Template
-{
-    protected $useExtGetAttribute = false;
-
-    public function __construct(Twig_Environment $env, $useExtGetAttribute = false)
-    {
-        parent::__construct($env);
-        $this->useExtGetAttribute = $useExtGetAttribute;
-        self::$cache = array();
-    }
-
-    public function getZero()
-    {
-        return 0;
-    }
-
-    public function getEmpty()
-    {
-        return '';
-    }
-
-    public function getString()
-    {
-        return 'some_string';
-    }
-
-    public function getTrue()
-    {
-        return true;
-    }
-
-    public function getTemplateName()
-    {
-    }
-
-    public function getDebugInfo()
-    {
-        return array();
-    }
-
-    protected function doGetParent(array $context)
-    {
-    }
-
-    protected function doDisplay(array $context, array $blocks = array())
-    {
-    }
-
-    public function getAttribute($object, $item, array $arguments = array(), $type = Twig_Template::ANY_CALL, $isDefinedTest = false, $ignoreStrictCheck = false)
-    {
-        if ($this->useExtGetAttribute) {
-            return twig_template_get_attributes($this, $object, $item, $arguments, $type, $isDefinedTest, $ignoreStrictCheck);
-        } else {
-            return parent::getAttribute($object, $item, $arguments, $type, $isDefinedTest, $ignoreStrictCheck);
-        }
-    }
-}
-/* <? *//* *bar*//*  ?>*/
-/* */
-
-class Twig_TemplateArrayAccessObject implements ArrayAccess
-{
-    protected $protected = 'protected';
-
-    public $attributes = array(
-        'defined' => 'defined',
-        'zero' => 0,
-        'null' => null,
-        '1' => 1,
-        'bar' => true,
-        '09' => '09',
-        '+4' => '+4',
-    );
-
-    public function offsetExists($name)
-    {
-        return array_key_exists($name, $this->attributes);
-    }
-
-    public function offsetGet($name)
-    {
-        return array_key_exists($name, $this->attributes) ? $this->attributes[$name] : null;
-    }
-
-    public function offsetSet($name, $value)
-    {
-    }
-
-    public function offsetUnset($name)
-    {
-    }
-}
-
-class Twig_TemplateMagicPropertyObject
-{
-    public $defined = 'defined';
-
-    public $attributes = array(
-        'zero' => 0,
-        'null' => null,
-        '1' => 1,
-        'bar' => true,
-        '09' => '09',
-        '+4' => '+4',
-    );
-
-    protected $protected = 'protected';
-
-    public function __isset($name)
-    {
-        return array_key_exists($name, $this->attributes);
-    }
-
-    public function __get($name)
-    {
-        return array_key_exists($name, $this->attributes) ? $this->attributes[$name] : null;
-    }
-}
-
-class Twig_TemplateMagicPropertyObjectWithException
-{
-    public function __isset($key)
-    {
-        throw new Exception('Hey! Don\'t try to isset me!');
-    }
-}
-
-class Twig_TemplatePropertyObject
-{
-    public $defined = 'defined';
-    public $zero = 0;
-    public $null = null;
-    public $bar = true;
-
-    protected $protected = 'protected';
-}
-
-class Twig_TemplatePropertyObjectAndIterator extends Twig_TemplatePropertyObject implements IteratorAggregate
-{
-    public function getIterator()
-    {
-        return new ArrayIterator(array('foo', 'bar'));
-    }
-}
-
-class Twig_TemplatePropertyObjectAndArrayAccess extends Twig_TemplatePropertyObject implements ArrayAccess
-{
-    private $data = array();
-
-    public function offsetExists($offset)
-    {
-        return array_key_exists($offset, $this->data);
-    }
-
-    public function offsetGet($offset)
-    {
-        return $this->offsetExists($offset) ? $this->data[$offset] : 'n/a';
-    }
-
-    public function offsetSet($offset, $value)
-    {
-    }
-
-    public function offsetUnset($offset)
-    {
-    }
-}
-
-class Twig_TemplatePropertyObjectDefinedWithUndefinedValue
-{
-    public $foo;
-
-    public function __construct()
-    {
-        $this->foo = @$notExist;
-    }
-}
-
-class Twig_TemplateMethodObject
-{
-    public function getDefined()
-    {
-        return 'defined';
-    }
-
-    public function get1()
-    {
-        return 1;
-    }
-
-    public function get09()
-    {
-        return '09';
-    }
-
-    public function getZero()
-    {
-        return 0;
-    }
-
-    public function getNull()
-    {
-    }
-
-    public function isBar()
-    {
-        return true;
-    }
-
-    protected function getProtected()
-    {
-        return 'protected';
-    }
-
-    public static function getStatic()
-    {
-        return 'static';
-    }
-}
-
-class Twig_TemplateMethodAndPropObject
-{
-    private $a = 'a_prop';
-    public function getA()
-    {
-        return 'a';
-    }
-
-    public $b = 'b_prop';
-    public function getB()
-    {
-        return 'b';
-    }
-
-    private $c = 'c_prop';
-    private function getC()
-    {
-        return 'c';
-    }
-}
-
-class Twig_TemplateMagicMethodObject
-{
-    public function __call($method, $arguments)
-    {
-        return '__call_'.$method;
-    }
-}
-
-class Twig_TemplateMagicMethodExceptionObject
-{
-    public function __call($method, $arguments)
-    {
-        throw new BadMethodCallException(sprintf('Unkown method %s', $method));
-    }
-}
-
-class CExtDisablingNodeVisitor implements Twig_NodeVisitorInterface
-{
-    public function enterNode(Twig_NodeInterface $node, Twig_Environment $env)
-    {
-        if ($node instanceof Twig_Node_Expression_GetAttr) {
-            $node->setAttribute('disable_c_ext', true);
-        }
-
-        return $node;
-    }
-
-    public function leaveNode(Twig_NodeInterface $node, Twig_Environment $env)
-    {
-        return $node;
-    }
-
-    public function getPriority()
-    {
-        return 0;
-    }
-}
diff --git a/vendor/twig/twig/test/Twig/Tests/TokenStreamTest.php b/vendor/twig/twig/test/Twig/Tests/TokenStreamTest.php
deleted file mode 100644
index fd4ec63..0000000
--- a/vendor/twig/twig/test/Twig/Tests/TokenStreamTest.php
+++ /dev/null
@@ -1,70 +0,0 @@
-<?php
-
-/*
- * This file is part of Twig.
- *
- * (c) Fabien Potencier
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-class Twig_Tests_TokenStreamTest extends PHPUnit_Framework_TestCase
-{
-    protected static $tokens;
-
-    public function setUp()
-    {
-        self::$tokens = array(
-            new Twig_Token(Twig_Token::TEXT_TYPE, 1, 1),
-            new Twig_Token(Twig_Token::TEXT_TYPE, 2, 1),
-            new Twig_Token(Twig_Token::TEXT_TYPE, 3, 1),
-            new Twig_Token(Twig_Token::TEXT_TYPE, 4, 1),
-            new Twig_Token(Twig_Token::TEXT_TYPE, 5, 1),
-            new Twig_Token(Twig_Token::TEXT_TYPE, 6, 1),
-            new Twig_Token(Twig_Token::TEXT_TYPE, 7, 1),
-            new Twig_Token(Twig_Token::EOF_TYPE, 0, 1),
-        );
-    }
-
-    public function testNext()
-    {
-        $stream = new Twig_TokenStream(self::$tokens);
-        $repr = array();
-        while (!$stream->isEOF()) {
-            $token = $stream->next();
-
-            $repr[] = $token->getValue();
-        }
-        $this->assertEquals('1, 2, 3, 4, 5, 6, 7', implode(', ', $repr), '->next() advances the pointer and returns the current token');
-    }
-
-    /**
-     * @expectedException Twig_Error_Syntax
-     * @expectedMessage   Unexpected end of template
-     */
-    public function testEndOfTemplateNext()
-    {
-        $stream = new Twig_TokenStream(array(
-            new Twig_Token(Twig_Token::BLOCK_START_TYPE, 1, 1),
-        ));
-        while (!$stream->isEOF()) {
-            $stream->next();
-        }
-    }
-
-    /**
-     * @expectedException Twig_Error_Syntax
-     * @expectedMessage   Unexpected end of template
-     */
-    public function testEndOfTemplateLook()
-    {
-        $stream = new Twig_TokenStream(array(
-            new Twig_Token(Twig_Token::BLOCK_START_TYPE, 1, 1),
-        ));
-        while (!$stream->isEOF()) {
-            $stream->look();
-            $stream->next();
-        }
-    }
-}
diff --git a/vendor/twig/twig/test/Twig/Tests/escapingTest.php b/vendor/twig/twig/test/Twig/Tests/escapingTest.php
deleted file mode 100644
index 7b765ca..0000000
--- a/vendor/twig/twig/test/Twig/Tests/escapingTest.php
+++ /dev/null
@@ -1,320 +0,0 @@
-<?php
-
-/**
- * This class is adapted from code coming from Zend Framework.
- *
- * @copyright Copyright (c) 2005-2012 Zend Technologies USA Inc. (http://www.zend.com)
- * @license   http://framework.zend.com/license/new-bsd New BSD License
- */
-class Twig_Test_EscapingTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * All character encodings supported by htmlspecialchars().
-     */
-    protected $htmlSpecialChars = array(
-        '\'' => '&#039;',
-        '"' => '&quot;',
-        '<' => '&lt;',
-        '>' => '&gt;',
-        '&' => '&amp;',
-    );
-
-    protected $htmlAttrSpecialChars = array(
-        '\'' => '&#x27;',
-        /* Characters beyond ASCII value 255 to unicode escape */
-        'Ā' => '&#x0100;',
-        /* Immune chars excluded */
-        ',' => ',',
-        '.' => '.',
-        '-' => '-',
-        '_' => '_',
-        /* Basic alnums excluded */
-        'a' => 'a',
-        'A' => 'A',
-        'z' => 'z',
-        'Z' => 'Z',
-        '0' => '0',
-        '9' => '9',
-        /* Basic control characters and null */
-        "\r" => '&#x0D;',
-        "\n" => '&#x0A;',
-        "\t" => '&#x09;',
-        "\0" => '&#xFFFD;', // should use Unicode replacement char
-        /* Encode chars as named entities where possible */
-        '<' => '&lt;',
-        '>' => '&gt;',
-        '&' => '&amp;',
-        '"' => '&quot;',
-        /* Encode spaces for quoteless attribute protection */
-        ' ' => '&#x20;',
-    );
-
-    protected $jsSpecialChars = array(
-        /* HTML special chars - escape without exception to hex */
-        '<' => '\\x3C',
-        '>' => '\\x3E',
-        '\'' => '\\x27',
-        '"' => '\\x22',
-        '&' => '\\x26',
-        /* Characters beyond ASCII value 255 to unicode escape */
-        'Ā' => '\\u0100',
-        /* Immune chars excluded */
-        ',' => ',',
-        '.' => '.',
-        '_' => '_',
-        /* Basic alnums excluded */
-        'a' => 'a',
-        'A' => 'A',
-        'z' => 'z',
-        'Z' => 'Z',
-        '0' => '0',
-        '9' => '9',
-        /* Basic control characters and null */
-        "\r" => '\\x0D',
-        "\n" => '\\x0A',
-        "\t" => '\\x09',
-        "\0" => '\\x00',
-        /* Encode spaces for quoteless attribute protection */
-        ' ' => '\\x20',
-    );
-
-    protected $urlSpecialChars = array(
-        /* HTML special chars - escape without exception to percent encoding */
-        '<' => '%3C',
-        '>' => '%3E',
-        '\'' => '%27',
-        '"' => '%22',
-        '&' => '%26',
-        /* Characters beyond ASCII value 255 to hex sequence */
-        'Ā' => '%C4%80',
-        /* Punctuation and unreserved check */
-        ',' => '%2C',
-        '.' => '.',
-        '_' => '_',
-        '-' => '-',
-        ':' => '%3A',
-        ';' => '%3B',
-        '!' => '%21',
-        /* Basic alnums excluded */
-        'a' => 'a',
-        'A' => 'A',
-        'z' => 'z',
-        'Z' => 'Z',
-        '0' => '0',
-        '9' => '9',
-        /* Basic control characters and null */
-        "\r" => '%0D',
-        "\n" => '%0A',
-        "\t" => '%09',
-        "\0" => '%00',
-        /* PHP quirks from the past */
-        ' ' => '%20',
-        '~' => '~',
-        '+' => '%2B',
-    );
-
-    protected $cssSpecialChars = array(
-        /* HTML special chars - escape without exception to hex */
-        '<' => '\\3C ',
-        '>' => '\\3E ',
-        '\'' => '\\27 ',
-        '"' => '\\22 ',
-        '&' => '\\26 ',
-        /* Characters beyond ASCII value 255 to unicode escape */
-        'Ā' => '\\100 ',
-        /* Immune chars excluded */
-        ',' => '\\2C ',
-        '.' => '\\2E ',
-        '_' => '\\5F ',
-        /* Basic alnums excluded */
-        'a' => 'a',
-        'A' => 'A',
-        'z' => 'z',
-        'Z' => 'Z',
-        '0' => '0',
-        '9' => '9',
-        /* Basic control characters and null */
-        "\r" => '\\D ',
-        "\n" => '\\A ',
-        "\t" => '\\9 ',
-        "\0" => '\\0 ',
-        /* Encode spaces for quoteless attribute protection */
-        ' ' => '\\20 ',
-    );
-
-    protected $env;
-
-    public function setUp()
-    {
-        $this->env = new Twig_Environment($this->getMock('Twig_LoaderInterface'));
-    }
-
-    public function testHtmlEscapingConvertsSpecialChars()
-    {
-        foreach ($this->htmlSpecialChars as $key => $value) {
-            $this->assertEquals($value, twig_escape_filter($this->env, $key, 'html'), 'Failed to escape: '.$key);
-        }
-    }
-
-    public function testHtmlAttributeEscapingConvertsSpecialChars()
-    {
-        foreach ($this->htmlAttrSpecialChars as $key => $value) {
-            $this->assertEquals($value, twig_escape_filter($this->env, $key, 'html_attr'), 'Failed to escape: '.$key);
-        }
-    }
-
-    public function testJavascriptEscapingConvertsSpecialChars()
-    {
-        foreach ($this->jsSpecialChars as $key => $value) {
-            $this->assertEquals($value, twig_escape_filter($this->env, $key, 'js'), 'Failed to escape: '.$key);
-        }
-    }
-
-    public function testJavascriptEscapingReturnsStringIfZeroLength()
-    {
-        $this->assertEquals('', twig_escape_filter($this->env, '', 'js'));
-    }
-
-    public function testJavascriptEscapingReturnsStringIfContainsOnlyDigits()
-    {
-        $this->assertEquals('123', twig_escape_filter($this->env, '123', 'js'));
-    }
-
-    public function testCssEscapingConvertsSpecialChars()
-    {
-        foreach ($this->cssSpecialChars as $key => $value) {
-            $this->assertEquals($value, twig_escape_filter($this->env, $key, 'css'), 'Failed to escape: '.$key);
-        }
-    }
-
-    public function testCssEscapingReturnsStringIfZeroLength()
-    {
-        $this->assertEquals('', twig_escape_filter($this->env, '', 'css'));
-    }
-
-    public function testCssEscapingReturnsStringIfContainsOnlyDigits()
-    {
-        $this->assertEquals('123', twig_escape_filter($this->env, '123', 'css'));
-    }
-
-    public function testUrlEscapingConvertsSpecialChars()
-    {
-        foreach ($this->urlSpecialChars as $key => $value) {
-            $this->assertEquals($value, twig_escape_filter($this->env, $key, 'url'), 'Failed to escape: '.$key);
-        }
-    }
-
-    /**
-     * Range tests to confirm escaped range of characters is within OWASP recommendation.
-     */
-
-    /**
-     * Only testing the first few 2 ranges on this prot. function as that's all these
-     * other range tests require.
-     */
-    public function testUnicodeCodepointConversionToUtf8()
-    {
-        $expected = ' ~ޙ';
-        $codepoints = array(0x20, 0x7e, 0x799);
-        $result = '';
-        foreach ($codepoints as $value) {
-            $result .= $this->codepointToUtf8($value);
-        }
-        $this->assertEquals($expected, $result);
-    }
-
-    /**
-     * Convert a Unicode Codepoint to a literal UTF-8 character.
-     *
-     * @param int $codepoint Unicode codepoint in hex notation
-     *
-     * @return string UTF-8 literal string
-     */
-    protected function codepointToUtf8($codepoint)
-    {
-        if ($codepoint < 0x80) {
-            return chr($codepoint);
-        }
-        if ($codepoint < 0x800) {
-            return chr($codepoint >> 6 & 0x3f | 0xc0)
-                .chr($codepoint & 0x3f | 0x80);
-        }
-        if ($codepoint < 0x10000) {
-            return chr($codepoint >> 12 & 0x0f | 0xe0)
-                .chr($codepoint >> 6 & 0x3f | 0x80)
-                .chr($codepoint & 0x3f | 0x80);
-        }
-        if ($codepoint < 0x110000) {
-            return chr($codepoint >> 18 & 0x07 | 0xf0)
-                .chr($codepoint >> 12 & 0x3f | 0x80)
-                .chr($codepoint >> 6 & 0x3f | 0x80)
-                .chr($codepoint & 0x3f | 0x80);
-        }
-        throw new Exception('Codepoint requested outside of Unicode range');
-    }
-
-    public function testJavascriptEscapingEscapesOwaspRecommendedRanges()
-    {
-        $immune = array(',', '.', '_'); // Exceptions to escaping ranges
-        for ($chr = 0; $chr < 0xFF; ++$chr) {
-            if ($chr >= 0x30 && $chr <= 0x39
-            || $chr >= 0x41 && $chr <= 0x5A
-            || $chr >= 0x61 && $chr <= 0x7A) {
-                $literal = $this->codepointToUtf8($chr);
-                $this->assertEquals($literal, twig_escape_filter($this->env, $literal, 'js'));
-            } else {
-                $literal = $this->codepointToUtf8($chr);
-                if (in_array($literal, $immune)) {
-                    $this->assertEquals($literal, twig_escape_filter($this->env, $literal, 'js'));
-                } else {
-                    $this->assertNotEquals(
-                        $literal,
-                        twig_escape_filter($this->env, $literal, 'js'),
-                        "$literal should be escaped!");
-                }
-            }
-        }
-    }
-
-    public function testHtmlAttributeEscapingEscapesOwaspRecommendedRanges()
-    {
-        $immune = array(',', '.', '-', '_'); // Exceptions to escaping ranges
-        for ($chr = 0; $chr < 0xFF; ++$chr) {
-            if ($chr >= 0x30 && $chr <= 0x39
-            || $chr >= 0x41 && $chr <= 0x5A
-            || $chr >= 0x61 && $chr <= 0x7A) {
-                $literal = $this->codepointToUtf8($chr);
-                $this->assertEquals($literal, twig_escape_filter($this->env, $literal, 'html_attr'));
-            } else {
-                $literal = $this->codepointToUtf8($chr);
-                if (in_array($literal, $immune)) {
-                    $this->assertEquals($literal, twig_escape_filter($this->env, $literal, 'html_attr'));
-                } else {
-                    $this->assertNotEquals(
-                        $literal,
-                        twig_escape_filter($this->env, $literal, 'html_attr'),
-                        "$literal should be escaped!");
-                }
-            }
-        }
-    }
-
-    public function testCssEscapingEscapesOwaspRecommendedRanges()
-    {
-        // CSS has no exceptions to escaping ranges
-        for ($chr = 0; $chr < 0xFF; ++$chr) {
-            if ($chr >= 0x30 && $chr <= 0x39
-            || $chr >= 0x41 && $chr <= 0x5A
-            || $chr >= 0x61 && $chr <= 0x7A) {
-                $literal = $this->codepointToUtf8($chr);
-                $this->assertEquals($literal, twig_escape_filter($this->env, $literal, 'css'));
-            } else {
-                $literal = $this->codepointToUtf8($chr);
-                $this->assertNotEquals(
-                    $literal,
-                    twig_escape_filter($this->env, $literal, 'css'),
-                    "$literal should be escaped!");
-            }
-        }
-    }
-}
diff --git a/vendor/twig/twig/test/bootstrap.php b/vendor/twig/twig/test/bootstrap.php
deleted file mode 100644
index aecb976..0000000
--- a/vendor/twig/twig/test/bootstrap.php
+++ /dev/null
@@ -1,13 +0,0 @@
-<?php
-
-/*
- * This file is part of Twig.
- *
- * (c) Fabien Potencier
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-require_once dirname(__FILE__).'/../lib/Twig/Autoloader.php';
-Twig_Autoloader::register(true);
